@clianta/sdk 1.6.5 → 1.6.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/angular.cjs.js +40 -20
- package/dist/angular.cjs.js.map +1 -1
- package/dist/angular.esm.js +40 -20
- package/dist/angular.esm.js.map +1 -1
- package/dist/clianta.cjs.js +40 -20
- package/dist/clianta.cjs.js.map +1 -1
- package/dist/clianta.esm.js +40 -20
- package/dist/clianta.esm.js.map +1 -1
- package/dist/clianta.umd.js +40 -20
- package/dist/clianta.umd.js.map +1 -1
- package/dist/clianta.umd.min.js +2 -2
- package/dist/clianta.umd.min.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/react.cjs.js +40 -20
- package/dist/react.cjs.js.map +1 -1
- package/dist/react.esm.js +40 -20
- package/dist/react.esm.js.map +1 -1
- package/dist/svelte.cjs.js +40 -20
- package/dist/svelte.cjs.js.map +1 -1
- package/dist/svelte.esm.js +40 -20
- package/dist/svelte.esm.js.map +1 -1
- package/dist/vue.cjs.js +40 -20
- package/dist/vue.cjs.js.map +1 -1
- package/dist/vue.esm.js +40 -20
- package/dist/vue.esm.js.map +1 -1
- package/package.json +117 -117
package/dist/clianta.umd.min.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Clianta SDK v1.6.
|
|
2
|
+
* Clianta SDK v1.6.6
|
|
3
3
|
* (c) 2026 Clianta
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
6
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Clianta={})}(this,function(e){"use strict";var t="undefined"!=typeof document?document.currentScript:null;const n="1.6.5",i={projectId:"",apiEndpoint:(()=>{if("undefined"!=typeof process&&process.env?.NEXT_PUBLIC_CLIANTA_API_ENDPOINT)return process.env.NEXT_PUBLIC_CLIANTA_API_ENDPOINT;try{"undefined"==typeof document&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:"undefined"==typeof document?location.href:t&&"SCRIPT"===t.tagName.toUpperCase()&&t.src||new URL("clianta.umd.min.js",document.baseURI).href,0}catch{}return"undefined"!=typeof process&&process.env?.REACT_APP_CLIANTA_API_ENDPOINT?process.env.REACT_APP_CLIANTA_API_ENDPOINT:"undefined"!=typeof process&&process.env?.CLIANTA_API_ENDPOINT?process.env.CLIANTA_API_ENDPOINT:"http://localhost:5000"})(),debug:!1,autoPageView:!0,plugins:["pageView","forms","scroll","clicks","engagement","downloads","exitIntent","errors","performance","autoIdentify"],sessionTimeout:18e5,batchSize:10,flushInterval:5e3,consent:{defaultConsent:{analytics:!0,marketing:!1,personalization:!1},waitForConsent:!1,storageKey:"mb_consent",anonymousMode:!1},cookieDomain:"",useCookies:!1,cookielessMode:!1,persistMode:"session"},s="mb_vid",o="mb_sid",r="mb_st",a="mb_consent",d="mb_queue",c=[25,50,75,100],l=[".pdf",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".zip",".rar",".tar",".gz",".7z",".csv",".txt",".json",".xml",".mp3",".mp4",".wav",".avi",".mov"];const u="[Clianta]",h={debug:"color: #6b7280; font-weight: normal;",info:"color: #3b82f6; font-weight: normal;",warn:"color: #f59e0b; font-weight: bold;",error:"color: #ef4444; font-weight: bold;"},p={debug:0,info:1,warn:2,error:3};const f=function(e=!1){let t="debug",n=e;const i=e=>!!n&&p[e]>=p[t],s=(e,t)=>"undefined"!=typeof console&&"undefined"!=typeof window?[`%c${u}`,h[e],...t]:[`${u} [${e.toUpperCase()}]`,...t];return{get enabled(){return n},set enabled(e){n=e},debug(...e){i("debug")&&"undefined"!=typeof console&&console.log(...s("debug",e))},info(...e){i("info")&&"undefined"!=typeof console&&console.info(...s("info",e))},warn(...e){i("warn")&&"undefined"!=typeof console&&console.warn(...s("warn",e))},error(...e){i("error")&&"undefined"!=typeof console&&console.error(...s("error",e))},setLevel(e){t=e}}}(!1);class m{constructor(e){this.config={apiEndpoint:e.apiEndpoint,maxRetries:e.maxRetries??3,retryDelay:e.retryDelay??1e3,timeout:e.timeout??1e4}}async sendEvents(e){const t=`${this.config.apiEndpoint}/api/public/track/event`,n=JSON.stringify({events:e});return this.send(t,n)}async sendIdentify(e){const t=`${this.config.apiEndpoint}/api/public/track/identify`;try{const n=await this.fetchWithTimeout(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e),keepalive:!0}),i=await n.json().catch(()=>({}));return n.ok?(f.debug("Identify successful, contactId:",i.contactId),{success:!0,status:n.status,contactId:i.contactId??void 0}):(n.status>=500?f.warn(`Identify server error (${n.status})`):f.error(`Identify failed with status ${n.status}:`,i.message),{success:!1,status:n.status})}catch(e){return f.error("Identify request failed:",e),{success:!1,error:e}}}sendBeacon(e){if("undefined"==typeof navigator||!navigator.sendBeacon)return f.warn("sendBeacon not available, events may be lost"),!1;const t=`${this.config.apiEndpoint}/api/public/track/event`,n=JSON.stringify({events:e}),i=new Blob([n],{type:"application/json"});try{const n=navigator.sendBeacon(t,i);return n?f.debug(`Beacon sent ${e.length} events`):f.warn("sendBeacon returned false"),n}catch(e){return f.error("sendBeacon error:",e),!1}}async fetchData(e,t){const n=new URL(`${this.config.apiEndpoint}${e}`);t&&Object.entries(t).forEach(([e,t])=>{null!=t&&n.searchParams.set(e,t)});try{const t=await this.fetchWithTimeout(n.toString(),{method:"GET",headers:{Accept:"application/json"}});if(t.ok){const n=await t.json();return f.debug("Fetch successful:",e),{success:!0,data:n.data??n,status:t.status}}return f.error(`Fetch failed with status ${t.status}`),{success:!1,status:t.status}}catch(e){return f.error("Fetch request failed:",e),{success:!1,error:e}}}async send(e,t,n=1){try{const i=await this.fetchWithTimeout(e,{method:"POST",headers:{"Content-Type":"application/json"},body:t,keepalive:!0});return i.ok?(f.debug("Request successful:",e),{success:!0,status:i.status}):i.status>=500&&n<this.config.maxRetries?(f.warn(`Server error (${i.status}), retrying...`),await this.delay(this.config.retryDelay*n),this.send(e,t,n+1)):(f.error(`Request failed with status ${i.status}`),{success:!1,status:i.status})}catch(i){return n<this.config.maxRetries?(f.warn(`Network error, retrying (${n}/${this.config.maxRetries})...`),await this.delay(this.config.retryDelay*n),this.send(e,t,n+1)):(f.error("Request failed after retries:",i),{success:!1,error:i})}}async fetchWithTimeout(e,t){const n=new AbortController,i=setTimeout(()=>n.abort(),this.config.timeout);try{return await fetch(e,{...t,signal:n.signal})}finally{clearTimeout(i)}}delay(e){return new Promise(t=>setTimeout(t,e))}}function g(){return"undefined"!=typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})}function w(e){try{if("undefined"!=typeof sessionStorage)return sessionStorage.getItem(e)}catch{}return null}function y(e,t){try{if("undefined"!=typeof sessionStorage)return sessionStorage.setItem(e,t),!0}catch{}return!1}function v(e,t,n){if("undefined"==typeof document)return null;if(void 0===t){const t=document.cookie.match(new RegExp("(^| )"+e+"=([^;]+)"));return t?t[2]:null}let i="";if(n){const e=new Date;e.setTime(e.getTime()+24*n*60*60*1e3),i="; expires="+e.toUTCString()}const s="undefined"!=typeof location&&"https:"===location.protocol?"; Secure":"";return document.cookie=e+"="+t+i+"; path=/; SameSite=Lax"+s,t}function b(e=!1){const t=s;let n=null;return n=e?v(t):function(e){try{if("undefined"!=typeof localStorage)return localStorage.getItem(e)}catch{}return null}(t),n||(n=g(),e?v(t,n,365):function(e,t){try{if("undefined"!=typeof localStorage)return localStorage.setItem(e,t),!0}catch{}}(t,n)),n}function k(e=!1){const t=s;if(e)v(t,"",-1);else try{localStorage.removeItem(t)}catch{}try{sessionStorage.removeItem(o),sessionStorage.removeItem(r)}catch{}}function I(){if("undefined"==typeof window)return{};try{const e=new URLSearchParams(window.location.search);return{utmSource:e.get("utm_source")||void 0,utmMedium:e.get("utm_medium")||void 0,utmCampaign:e.get("utm_campaign")||void 0,utmTerm:e.get("utm_term")||void 0,utmContent:e.get("utm_content")||void 0}}catch{return{}}}function x(e){try{return e.split("/").pop()?.split("?")[0]||"unknown"}catch{return"unknown"}}function E(e){const t=x(e).split(".");return t.length>1&&t.pop()||"unknown"}function S(e,t=100){return(e.innerText||e.textContent||e.value||"").trim().substring(0,t)}class T{constructor(e,t={}){this.queue=[],this.flushTimer=null,this.isFlushing=!1,this.eventTimestamps=[],this.boundBeforeUnload=null,this.boundVisibilityChange=null,this.boundPageHide=null,this.transport=e,this.config={batchSize:t.batchSize??10,flushInterval:t.flushInterval??5e3,maxQueueSize:t.maxQueueSize??1e3,storageKey:t.storageKey??d},this.persistMode=t.persistMode||"session",this.restoreQueue(),this.startFlushTimer(),this.setupUnloadHandlers()}push(e){this.checkRateLimit()?(this.queue.length>=this.config.maxQueueSize&&(f.warn("Queue full, dropping oldest event"),this.queue.shift()),this.queue.push(e),f.debug("Event queued:",e.eventName,`(${this.queue.length} in queue)`),this.queue.length>=this.config.batchSize&&this.flush()):f.warn("Rate limit exceeded, event dropped:",e.eventName)}checkRateLimit(){const e=Date.now();return this.eventTimestamps=this.eventTimestamps.filter(t=>e-t<6e4),!(this.eventTimestamps.length>=100)&&(this.eventTimestamps.push(e),!0)}async flush(){if(this.isFlushing||0===this.queue.length)return;this.isFlushing=!0;const e=this.queue.length,t=this.queue.splice(0,e);try{f.debug(`Flushing ${t.length} events`),this.persistQueue([]);(await this.transport.sendEvents(t)).success?f.debug("Flush successful"):(f.warn("Flush failed, re-queuing events"),this.queue.unshift(...t),this.persistQueue(this.queue))}catch(e){f.error("Flush error:",e)}finally{this.isFlushing=!1}}flushSync(){if(0===this.queue.length)return;const e=this.queue.splice(0,this.queue.length);f.debug(`Sync flushing ${e.length} events via beacon`);this.transport.sendBeacon(e)||(this.queue.unshift(...e),this.persistQueue(this.queue))}get length(){return this.queue.length}clear(){if(this.queue=[],this.persistQueue([]),"local"===this.persistMode&&"undefined"!=typeof localStorage)try{localStorage.removeItem(this.config.storageKey)}catch{}}destroy(){this.flushTimer&&(clearInterval(this.flushTimer),this.flushTimer=null),"undefined"!=typeof window&&(this.boundBeforeUnload&&window.removeEventListener("beforeunload",this.boundBeforeUnload),this.boundVisibilityChange&&window.removeEventListener("visibilitychange",this.boundVisibilityChange),this.boundPageHide&&window.removeEventListener("pagehide",this.boundPageHide))}startFlushTimer(){this.flushTimer&&clearInterval(this.flushTimer),this.flushTimer=setInterval(()=>{this.flush()},this.config.flushInterval)}setupUnloadHandlers(){"undefined"!=typeof window&&(this.boundBeforeUnload=()=>this.flushSync(),window.addEventListener("beforeunload",this.boundBeforeUnload),this.boundVisibilityChange=()=>{"hidden"===document.visibilityState&&this.flushSync()},window.addEventListener("visibilitychange",this.boundVisibilityChange),this.boundPageHide=()=>this.flushSync(),window.addEventListener("pagehide",this.boundPageHide))}persistQueue(e){if("none"!==this.persistMode)try{const t=JSON.stringify(e);if("local"===this.persistMode&&"undefined"!=typeof localStorage)try{localStorage.setItem(this.config.storageKey,t)}catch{y(this.config.storageKey,t)}else y(this.config.storageKey,t)}catch{}}restoreQueue(){try{let e=null;if("local"===this.persistMode&&"undefined"!=typeof localStorage&&(e=localStorage.getItem(this.config.storageKey)),e||(e=w(this.config.storageKey)),e){const t=JSON.parse(e);Array.isArray(t)&&t.length>0&&(this.queue=t,f.debug(`Restored ${t.length} events from storage`))}}catch{}}}class C{constructor(){this.tracker=null}init(e){this.tracker=e}destroy(){this.tracker=null}track(e,t,n){this.tracker&&this.tracker.track(e,t,n)}}class H extends C{constructor(){super(...arguments),this.name="pageView",this.originalPushState=null,this.originalReplaceState=null,this.popstateHandler=null}init(e){if(super.init(e),this.trackPageView(),"undefined"!=typeof window){this.originalPushState=history.pushState,this.originalReplaceState=history.replaceState;const e=this;history.pushState=function(...t){e.originalPushState.apply(history,t),e.trackPageView(),window.dispatchEvent(new Event("clianta:navigation"))},history.replaceState=function(...t){e.originalReplaceState.apply(history,t),e.trackPageView(),window.dispatchEvent(new Event("clianta:navigation"))},this.popstateHandler=()=>this.trackPageView(),window.addEventListener("popstate",this.popstateHandler)}}destroy(){this.originalPushState&&(history.pushState=this.originalPushState,this.originalPushState=null),this.originalReplaceState&&(history.replaceState=this.originalReplaceState,this.originalReplaceState=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}trackPageView(){"undefined"!=typeof window&&"undefined"!=typeof document&&this.track("page_view","Page Viewed",{title:document.title,path:window.location.pathname,search:window.location.search,hash:window.location.hash,referrer:document.referrer||"direct",viewport:`${window.innerWidth}x${window.innerHeight}`})}}class L extends C{constructor(){super(...arguments),this.name="scroll",this.milestonesReached=new Set,this.maxScrollDepth=0,this.pageLoadTime=0,this.scrollTimeout=null,this.boundHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),this.pageLoadTime=Date.now(),"undefined"!=typeof window&&(this.boundHandler=this.handleScroll.bind(this),window.addEventListener("scroll",this.boundHandler,{passive:!0}),this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler))}destroy(){this.boundHandler&&"undefined"!=typeof window&&window.removeEventListener("scroll",this.boundHandler),this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}resetForNavigation(){this.milestonesReached.clear(),this.maxScrollDepth=0,this.pageLoadTime=Date.now()}handleScroll(){this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.scrollTimeout=setTimeout(()=>this.trackScrollDepth(),150)}trackScrollDepth(){if("undefined"==typeof window||"undefined"==typeof document)return;const e=window.innerHeight,t=document.documentElement.scrollHeight,n=window.pageYOffset||document.documentElement.scrollTop,i=t-e;if(i<=0)return;const s=Math.floor(n/i*100),o=Math.max(0,Math.min(100,s));o>this.maxScrollDepth&&(this.maxScrollDepth=o);for(const e of c)o>=e&&!this.milestonesReached.has(e)&&(this.milestonesReached.add(e),this.track("scroll_depth",`Scrolled ${e}%`,{depth:e,maxDepth:this.maxScrollDepth,timeToReach:Date.now()-this.pageLoadTime}))}}class F extends C{constructor(){super(...arguments),this.name="forms",this.trackedForms=new WeakSet,this.formInteractions=new Set,this.observer=null,this.listeners=[]}init(e){super.init(e),"undefined"!=typeof document&&(this.trackAllForms(),"undefined"!=typeof MutationObserver&&(this.observer=new MutationObserver(()=>this.trackAllForms()),this.observer.observe(document.body,{childList:!0,subtree:!0})))}destroy(){this.observer&&(this.observer.disconnect(),this.observer=null);for(const{element:e,event:t,handler:n}of this.listeners)e.removeEventListener(t,n);this.listeners=[],super.destroy()}addListener(e,t,n){e.addEventListener(t,n),this.listeners.push({element:e,event:t,handler:n})}trackAllForms(){document.querySelectorAll("form").forEach(e=>{this.setupFormTracking(e)})}setupFormTracking(e){if(this.trackedForms.has(e))return;this.trackedForms.add(e);const t=e.id||e.name||`form-${Math.random().toString(36).substr(2,9)}`;this.track("form_view","Form Viewed",{formId:t,action:e.action,method:e.method,fieldCount:e.elements.length}),Array.from(e.elements).forEach(e=>{if(e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement){if(!e.name||"submit"===e.type||"button"===e.type)return;["focus","blur","change"].forEach(n=>{this.addListener(e,n,()=>{const i=`${t}-${e.name}-${n}`;this.formInteractions.has(i)||(this.formInteractions.add(i),this.track("form_interaction","Form Field Interaction",{formId:t,fieldName:e.name,fieldType:e.type,interactionType:n}))})})}});this.addListener(e,"submit",()=>{this.track("form_submit","Form Submitted",{formId:t,action:e.action,method:e.method}),this.autoIdentify(e)})}autoIdentify(e){const t=e.querySelector('input[type="email"], input[name*="email"]');if(!t?.value||!this.tracker)return;const n=t.value,i={},s=e.querySelector('[name*="first"], [name*="fname"]'),o=e.querySelector('[name*="last"], [name*="lname"]'),r=e.querySelector('[name*="company"], [name*="organization"]'),a=e.querySelector('[type="tel"], [name*="phone"]');s?.value&&(i.firstName=s.value),o?.value&&(i.lastName=o.value),r?.value&&(i.company=r.value),a?.value&&(i.phone=a.value),this.tracker.identify(n,i)}}class _ extends C{constructor(){super(...arguments),this.name="clicks",this.boundHandler=null}init(e){super.init(e),"undefined"!=typeof document&&(this.boundHandler=this.handleClick.bind(this),document.addEventListener("click",this.boundHandler,!0))}destroy(){this.boundHandler&&"undefined"!=typeof document&&document.removeEventListener("click",this.boundHandler,!0),super.destroy()}handleClick(e){const t=e.target;if(!(t&&(n=t,["BUTTON","A","INPUT"].includes(n.tagName)||n.hasAttribute("data-track-click")||n.classList.contains("track-click"))))return;var n;const i=S(t,100),s=function(e){return{tag:e.tagName?.toLowerCase()||"unknown",id:e.id||"",className:e.className||"",text:S(e,50)}}(t);this.track("button_click","Button Clicked",{buttonText:i,elementType:t.tagName.toLowerCase(),elementId:s.id,elementClass:s.className,href:t.href||void 0,x:Math.round(e.clientX/window.innerWidth*100),y:Math.round(e.clientY/window.innerHeight*100),viewportWidth:window.innerWidth,viewportHeight:window.innerHeight})}}class P extends C{constructor(){super(...arguments),this.name="engagement",this.pageLoadTime=0,this.engagementStartTime=0,this.isEngaged=!1,this.engagementTimeout=null,this.boundMarkEngaged=null,this.boundTrackTimeOnPage=null,this.boundVisibilityHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),this.pageLoadTime=Date.now(),this.engagementStartTime=Date.now(),"undefined"!=typeof document&&"undefined"!=typeof window&&(this.boundMarkEngaged=this.markEngaged.bind(this),this.boundTrackTimeOnPage=this.trackTimeOnPage.bind(this),this.boundVisibilityHandler=()=>{"hidden"===document.visibilityState?this.trackTimeOnPage():this.engagementStartTime=Date.now()},["mousemove","keydown","touchstart","scroll"].forEach(e=>{document.addEventListener(e,this.boundMarkEngaged,{passive:!0})}),window.addEventListener("beforeunload",this.boundTrackTimeOnPage),document.addEventListener("visibilitychange",this.boundVisibilityHandler),this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler))}destroy(){this.boundMarkEngaged&&"undefined"!=typeof document&&["mousemove","keydown","touchstart","scroll"].forEach(e=>{document.removeEventListener(e,this.boundMarkEngaged)}),this.boundTrackTimeOnPage&&"undefined"!=typeof window&&window.removeEventListener("beforeunload",this.boundTrackTimeOnPage),this.boundVisibilityHandler&&"undefined"!=typeof document&&document.removeEventListener("visibilitychange",this.boundVisibilityHandler),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),this.engagementTimeout&&clearTimeout(this.engagementTimeout),super.destroy()}resetForNavigation(){this.pageLoadTime=Date.now(),this.engagementStartTime=Date.now(),this.isEngaged=!1,this.engagementTimeout&&(clearTimeout(this.engagementTimeout),this.engagementTimeout=null)}markEngaged(){this.isEngaged||(this.isEngaged=!0,this.track("engagement","User Engaged",{timeToEngage:Date.now()-this.pageLoadTime})),this.engagementTimeout&&clearTimeout(this.engagementTimeout),this.engagementTimeout=setTimeout(()=>{this.isEngaged=!1},3e4)}trackTimeOnPage(){const e=Math.floor((Date.now()-this.engagementStartTime)/1e3);e>0&&this.track("time_on_page","Time Spent",{seconds:e,engaged:this.isEngaged})}}class M extends C{constructor(){super(...arguments),this.name="downloads",this.trackedDownloads=new Set,this.boundHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),"undefined"!=typeof document&&(this.boundHandler=this.handleClick.bind(this),document.addEventListener("click",this.boundHandler,!0)),"undefined"!=typeof window&&(this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler))}destroy(){this.boundHandler&&"undefined"!=typeof document&&document.removeEventListener("click",this.boundHandler,!0),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}resetForNavigation(){this.trackedDownloads.clear()}handleClick(e){const t=e.target.closest("a");if(!t||!t.href)return;const n=t.href;(function(e){const t=e.toLowerCase();return l.some(e=>t.includes(e))})(n)&&(this.trackedDownloads.has(n)||(this.trackedDownloads.add(n),this.track("download","File Download",{url:n,filename:x(n),fileType:E(n),linkText:S(t,100)})))}}class N extends C{constructor(){super(...arguments),this.name="exitIntent",this.exitIntentShown=!1,this.pageLoadTime=0,this.boundHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),this.pageLoadTime=Date.now(),"undefined"!=typeof navigator&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)||("undefined"!=typeof document&&(this.boundHandler=this.handleMouseLeave.bind(this),document.addEventListener("mouseleave",this.boundHandler)),"undefined"!=typeof window&&(this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler)))}destroy(){this.boundHandler&&"undefined"!=typeof document&&document.removeEventListener("mouseleave",this.boundHandler),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}resetForNavigation(){this.exitIntentShown=!1,this.pageLoadTime=Date.now()}handleMouseLeave(e){e.clientY>0||this.exitIntentShown||(this.exitIntentShown=!0,this.track("exit_intent","Exit Intent Detected",{timeOnPage:Date.now()-this.pageLoadTime}))}}class A extends C{constructor(){super(...arguments),this.name="errors",this.boundErrorHandler=null,this.boundRejectionHandler=null}init(e){super.init(e),"undefined"!=typeof window&&(this.boundErrorHandler=this.handleError.bind(this),this.boundRejectionHandler=this.handleRejection.bind(this),window.addEventListener("error",this.boundErrorHandler),window.addEventListener("unhandledrejection",this.boundRejectionHandler))}destroy(){"undefined"!=typeof window&&(this.boundErrorHandler&&window.removeEventListener("error",this.boundErrorHandler),this.boundRejectionHandler&&window.removeEventListener("unhandledrejection",this.boundRejectionHandler)),super.destroy()}handleError(e){this.track("error","JavaScript Error",{message:e.message,filename:e.filename,line:e.lineno,column:e.colno,stack:e.error?.stack?.substring(0,500)})}handleRejection(e){this.track("error","Unhandled Promise Rejection",{reason:String(e.reason).substring(0,200)})}}class q extends C{constructor(){super(...arguments),this.name="performance",this.boundLoadHandler=null,this.observers=[],this.boundClsVisibilityHandler=null}init(e){super.init(e),"undefined"!=typeof window&&(this.boundLoadHandler=()=>{setTimeout(()=>this.trackPerformance(),100)},window.addEventListener("load",this.boundLoadHandler))}destroy(){this.boundLoadHandler&&"undefined"!=typeof window&&window.removeEventListener("load",this.boundLoadHandler);for(const e of this.observers)e.disconnect();this.observers=[],this.boundClsVisibilityHandler&&"undefined"!=typeof window&&window.removeEventListener("visibilitychange",this.boundClsVisibilityHandler),super.destroy()}trackPerformance(){if("undefined"==typeof performance)return;const e=performance.getEntriesByType("navigation");if(e.length>0){const t=e[0],n=Math.round(t.loadEventEnd-t.startTime),i=Math.round(t.domContentLoadedEventEnd-t.startTime),s=Math.round(t.responseStart-t.requestStart),o=Math.round(t.domInteractive-t.startTime);this.track("performance","Page Performance",{loadTime:n,domReady:i,ttfb:s,domInteractive:o,dns:Math.round(t.domainLookupEnd-t.domainLookupStart),connection:Math.round(t.connectEnd-t.connectStart),transferSize:t.transferSize})}else{const e=performance.timing;if(!e)return;const t=e.loadEventEnd-e.navigationStart,n=e.domContentLoadedEventEnd-e.navigationStart,i=e.responseStart-e.navigationStart,s=e.domInteractive-e.navigationStart;this.track("performance","Page Performance",{loadTime:t,domReady:n,ttfb:i,domInteractive:s})}this.trackWebVitals()}trackWebVitals(){if("PerformanceObserver"in window){try{const e=new PerformanceObserver(e=>{const t=e.getEntries(),n=t[t.length-1];n&&this.track("performance","Web Vital - LCP",{metric:"LCP",value:Math.round(n.startTime)})});e.observe({type:"largest-contentful-paint",buffered:!0}),this.observers.push(e)}catch{}try{const e=new PerformanceObserver(e=>{const t=e.getEntries()[0];t&&this.track("performance","Web Vital - FID",{metric:"FID",value:Math.round(t.processingStart-t.startTime)})});e.observe({type:"first-input",buffered:!0}),this.observers.push(e)}catch{}try{let e=0;const t=new PerformanceObserver(t=>{t.getEntries().forEach(t=>{t.hadRecentInput||(e+=t.value||0)})});t.observe({type:"layout-shift",buffered:!0}),this.observers.push(t),this.boundClsVisibilityHandler=()=>{"hidden"===document.visibilityState&&e>0&&this.track("performance","Web Vital - CLS",{metric:"CLS",value:Math.round(1e3*e)/1e3})},window.addEventListener("visibilitychange",this.boundClsVisibilityHandler,{once:!0})}catch{}}}}class $ extends C{constructor(){super(...arguments),this.name="popupForms",this.forms=[],this.shownForms=new Set,this.scrollHandler=null,this.exitHandler=null,this.delayTimers=[],this.clickTriggerListeners=[]}async init(e){super.init(e),"undefined"!=typeof window&&(this.loadShownForms(),await this.fetchForms(),this.setupTriggers())}destroy(){this.removeTriggers();for(const e of this.delayTimers)clearTimeout(e);this.delayTimers=[];for(const{element:e,handler:t}of this.clickTriggerListeners)e.removeEventListener("click",t);this.clickTriggerListeners=[],super.destroy()}loadShownForms(){try{const e=localStorage.getItem("clianta_shown_forms");if(e){const t=JSON.parse(e);this.shownForms=new Set(t.forms||[])}}catch(e){}}saveShownForms(){try{localStorage.setItem("clianta_shown_forms",JSON.stringify({forms:Array.from(this.shownForms),timestamp:Date.now()}))}catch(e){}}async fetchForms(){if(!this.tracker)return;const e=this.tracker.getConfig(),t=this.tracker.getWorkspaceId(),n=e.apiEndpoint||"http://localhost:5000";try{const e=encodeURIComponent(window.location.href),i=await fetch(`${n}/api/public/lead-forms/${t}?url=${e}`);if(!i.ok)return;const s=await i.json();s.success&&Array.isArray(s.data)&&(this.forms=s.data.filter(e=>this.shouldShowForm(e)))}catch(e){console.error("[Clianta] Failed to fetch forms:",e)}}shouldShowForm(e){if("once_per_visitor"===e.showFrequency){if(this.shownForms.has(e._id))return!1}else if("once_per_session"===e.showFrequency){const t=`clianta_form_${e._id}_shown`;if(sessionStorage.getItem(t))return!1}return!0}setupTriggers(){this.forms.forEach(e=>{switch(e.trigger.type){case"delay":this.delayTimers.push(setTimeout(()=>this.showForm(e),1e3*(e.trigger.value||5)));break;case"scroll":this.setupScrollTrigger(e);break;case"exit_intent":this.setupExitIntentTrigger(e);break;case"click":this.setupClickTrigger(e)}})}setupScrollTrigger(e){const t=e.trigger.value||50;this.scrollHandler=()=>{window.scrollY/(document.documentElement.scrollHeight-window.innerHeight)*100>=t&&(this.showForm(e),this.scrollHandler&&window.removeEventListener("scroll",this.scrollHandler))},window.addEventListener("scroll",this.scrollHandler,{passive:!0})}setupExitIntentTrigger(e){this.exitHandler=t=>{t.clientY<=0&&(this.showForm(e),this.exitHandler&&document.removeEventListener("mouseout",this.exitHandler))},document.addEventListener("mouseout",this.exitHandler)}setupClickTrigger(e){if(!e.trigger.selector)return;document.querySelectorAll(e.trigger.selector).forEach(t=>{const n=()=>this.showForm(e);t.addEventListener("click",n),this.clickTriggerListeners.push({element:t,handler:n})})}removeTriggers(){this.scrollHandler&&window.removeEventListener("scroll",this.scrollHandler),this.exitHandler&&document.removeEventListener("mouseout",this.exitHandler)}async showForm(e){this.shouldShowForm(e)&&(this.shownForms.add(e._id),this.saveShownForms(),sessionStorage.setItem(`clianta_form_${e._id}_shown`,"true"),await this.trackFormView(e._id),this.renderForm(e))}async trackFormView(e){if(!this.tracker)return;const t=this.tracker.getConfig().apiEndpoint||"http://localhost:5000";try{await fetch(`${t}/api/public/lead-forms/${e}/view`,{method:"POST",headers:{"Content-Type":"application/json"}})}catch(e){}}renderForm(e){const t=document.createElement("div");t.id=`clianta-form-overlay-${e._id}`,t.style.cssText="\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.5);\n z-index: 999998;\n display: flex;\n align-items: center;\n justify-content: center;\n opacity: 0;\n transition: opacity 0.3s ease;\n ";const n=document.createElement("div");n.id=`clianta-form-${e._id}`;const i=e.style||{};n.style.cssText=`\n background: ${i.backgroundColor||"#FFFFFF"};\n border-radius: ${i.borderRadius||12}px;\n padding: 24px;\n max-width: 400px;\n width: 90%;\n box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);\n transform: translateY(20px);\n opacity: 0;\n transition: all 0.3s ease;\n `,this.buildFormDOM(e,n),t.appendChild(n),document.body.appendChild(t),requestAnimationFrame(()=>{t.style.opacity="1",n.style.transform="translateY(0)",n.style.opacity="1"}),this.setupFormEvents(e,t,n)}escapeHTML(e){const t=document.createElement("div");return t.textContent=e,t.innerHTML}buildFormDOM(e,t){const n=e.style||{},i=n.primaryColor||"#10B981",s=n.textColor||"#18181B",o=document.createElement("button");o.id="clianta-form-close",o.style.cssText="\n position: absolute;\n top: 12px;\n right: 12px;\n background: none;\n border: none;\n font-size: 20px;\n cursor: pointer;\n color: #71717A;\n padding: 4px;\n ",o.textContent="×",t.appendChild(o);const r=document.createElement("h2");r.style.cssText=`font-size: 20px; font-weight: 700; margin-bottom: 8px; color: ${this.escapeHTML(s)};`,r.textContent=e.headline||"Stay in touch",t.appendChild(r);const a=document.createElement("p");a.style.cssText="font-size: 14px; color: #71717A; margin-bottom: 16px;",a.textContent=e.subheadline||"Get the latest updates",t.appendChild(a);const d=document.createElement("form");d.id="clianta-form-element",e.fields.forEach(e=>{const t=document.createElement("div");if(t.style.marginBottom="12px","checkbox"===e.type){const n=document.createElement("label");n.style.cssText=`display: flex; align-items: center; gap: 8px; font-size: 14px; color: ${this.escapeHTML(s)}; cursor: pointer;`;const i=document.createElement("input");i.type="checkbox",i.name=e.name,e.required&&(i.required=!0),i.style.cssText="width: 16px; height: 16px;",n.appendChild(i);const o=document.createTextNode(e.label+" ");if(n.appendChild(o),e.required){const e=document.createElement("span");e.style.color="#EF4444",e.textContent="*",n.appendChild(e)}t.appendChild(n)}else{const n=document.createElement("label");if(n.style.cssText=`display: block; font-size: 14px; font-weight: 500; margin-bottom: 4px; color: ${this.escapeHTML(s)};`,n.textContent=e.label+" ",e.required){const e=document.createElement("span");e.style.color="#EF4444",e.textContent="*",n.appendChild(e)}if(t.appendChild(n),"textarea"===e.type){const n=document.createElement("textarea");n.name=e.name,e.placeholder&&(n.placeholder=e.placeholder),e.required&&(n.required=!0),n.style.cssText="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; resize: vertical; min-height: 80px; box-sizing: border-box;",t.appendChild(n)}else if("select"===e.type){const n=document.createElement("select");if(n.name=e.name,e.required&&(n.required=!0),n.style.cssText="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; box-sizing: border-box; background: white; cursor: pointer;",e.placeholder){const t=document.createElement("option");t.value="",t.textContent=e.placeholder,t.disabled=!0,t.selected=!0,n.appendChild(t)}e.options&&Array.isArray(e.options)&&e.options.forEach(e=>{const t=document.createElement("option");"string"==typeof e?(t.value=e,t.textContent=e):(t.value=e.value,t.textContent=e.label),n.appendChild(t)}),t.appendChild(n)}else{const n=document.createElement("input");n.type=e.type,n.name=e.name,e.placeholder&&(n.placeholder=e.placeholder),e.required&&(n.required=!0),n.style.cssText="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; box-sizing: border-box;",t.appendChild(n)}}d.appendChild(t)});const c=document.createElement("button");c.type="submit",c.style.cssText=`\n width: 100%;\n padding: 10px 16px;\n background: ${this.escapeHTML(i)};\n color: white;\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n margin-top: 8px;\n `,c.textContent=e.submitButtonText||"Subscribe",d.appendChild(c),t.appendChild(d)}setupFormEvents(e,t,n){const i=n.querySelector("#clianta-form-close");i&&i.addEventListener("click",()=>this.closeForm(e._id,t,n)),t.addEventListener("click",i=>{i.target===t&&this.closeForm(e._id,t,n)});const s=n.querySelector("#clianta-form-element");s&&s.addEventListener("submit",async t=>{t.preventDefault(),await this.handleSubmit(e,s,n)})}closeForm(e,t,n){n.style.transform="translateY(20px)",n.style.opacity="0",t.style.opacity="0",setTimeout(()=>{t.remove()},300)}async handleSubmit(e,t,n){if(!this.tracker)return;const i=this.tracker.getConfig().apiEndpoint||"http://localhost:5000",s=this.tracker.getVisitorId(),o=new FormData(t),r={};o.forEach((e,t)=>{r[t]=e});const a=t.querySelector('button[type="submit"]');a&&(a.disabled=!0,a.textContent="Submitting...");try{const t=await fetch(`${i}/api/public/lead-forms/${e._id}/submit`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({visitorId:s,data:r,url:window.location.href})});if((await t.json()).success){n.innerHTML="";const t=document.createElement("div");t.style.cssText="text-align: center; padding: 20px;";const i=document.createElement("div");i.style.cssText="width: 48px; height: 48px; background: #10B981; border-radius: 50%; margin: 0 auto 16px; display: flex; align-items: center; justify-content: center;";const s=document.createElementNS("http://www.w3.org/2000/svg","svg");s.setAttribute("width","24"),s.setAttribute("height","24"),s.setAttribute("viewBox","0 0 24 24"),s.setAttribute("fill","none"),s.setAttribute("stroke","white"),s.setAttribute("stroke-width","2");const o=document.createElementNS("http://www.w3.org/2000/svg","polyline");o.setAttribute("points","20 6 9 17 4 12"),s.appendChild(o),i.appendChild(s);const a=document.createElement("p");if(a.style.cssText="font-size: 16px; font-weight: 500; color: #18181B;",a.textContent=e.successMessage||"Thank you!",t.appendChild(i),t.appendChild(a),n.appendChild(t),r.email&&this.tracker?.identify(r.email,r),e.redirectUrl)try{const t=new URL(e.redirectUrl,window.location.origin),n=t.origin===window.location.origin,i="https:"===t.protocol||"http:"===t.protocol;n||i?setTimeout(()=>{window.location.href=t.href},1500):console.warn("[Clianta] Blocked unsafe redirect URL:",e.redirectUrl)}catch{console.warn("[Clianta] Invalid redirect URL:",e.redirectUrl)}setTimeout(()=>{const t=document.getElementById(`clianta-form-overlay-${e._id}`);t&&this.closeForm(e._id,t,n)},2e3)}}catch(t){console.error("[Clianta] Form submit error:",t),a&&(a.disabled=!1,a.textContent=e.submitButtonText||"Subscribe")}}}const D=["__session","__clerk_db_jwt","next-auth.session-token","__Secure-next-auth.session-token","sb-access-token","auth0.is.authenticated","token","jwt","access_token","session_token","auth_token","id_token"],R=["sb-","supabase.auth.","firebase:authUser:","auth0spajs","@@auth0spajs@@","token","jwt","auth","user","session"],U=["email","sub","preferred_username","user_email","mail"],O=["name","full_name","display_name","given_name"],V=["given_name","first_name","firstName"],j=["family_name","last_name","lastName"];class z extends C{constructor(){super(...arguments),this.name="autoIdentify",this.checkInterval=null,this.identifiedEmail=null,this.checkCount=0,this.MAX_CHECKS=30,this.CHECK_INTERVAL_MS=1e4}init(e){super.init(e),"undefined"!=typeof window&&(setTimeout(()=>this.checkForAuthUser(),2e3),this.checkInterval=setInterval(()=>{this.checkCount++,this.checkCount>=this.MAX_CHECKS?this.checkInterval&&(clearInterval(this.checkInterval),this.checkInterval=null):this.checkForAuthUser()},this.CHECK_INTERVAL_MS))}destroy(){this.checkInterval&&(clearInterval(this.checkInterval),this.checkInterval=null),super.destroy()}checkForAuthUser(){if(!this.tracker||this.identifiedEmail)return;const e=this.checkCookies();if(e)return void this.identifyUser(e);const t=this.checkStorage(localStorage);if(t)return void this.identifyUser(t);const n=this.checkStorage(sessionStorage);n&&this.identifyUser(n)}identifyUser(e){this.tracker&&this.identifiedEmail!==e.email&&(this.identifiedEmail=e.email,this.tracker.identify(e.email,{firstName:e.firstName,lastName:e.lastName}),this.checkInterval&&(clearInterval(this.checkInterval),this.checkInterval=null))}checkCookies(){if("undefined"==typeof document)return null;try{const e=document.cookie.split(";").map(e=>e.trim());for(const t of e){const[e,...n]=t.split("="),i=n.join("="),s=e.trim().toLowerCase();if(D.some(e=>s.includes(e.toLowerCase()))&&i){const e=this.extractUserFromToken(decodeURIComponent(i));if(e)return e}}}catch{}return null}checkStorage(e){try{for(let t=0;t<e.length;t++){const n=e.key(t);if(!n)continue;const i=n.toLowerCase();if(R.some(e=>i.includes(e.toLowerCase()))){const t=e.getItem(n);if(!t)continue;const i=this.extractUserFromToken(t);if(i)return i;try{const e=JSON.parse(t),n=this.extractUserFromJson(e);if(n)return n}catch{}}}}catch{}return null}extractUserFromToken(e){const t=e.split(".");if(3!==t.length)return null;try{const e=JSON.parse(atob(t[1].replace(/-/g,"+").replace(/_/g,"/")));return this.extractUserFromClaims(e)}catch{return null}}extractUserFromJson(e){if(!e||"object"!=typeof e)return null;const t=this.extractUserFromClaims(e);if(t)return t;for(const t of["user","data","session","currentUser","authUser","access_token","token"])if(e[t])if("string"==typeof e[t]){const n=this.extractUserFromToken(e[t]);if(n)return n}else if("object"==typeof e[t]){const n=this.extractUserFromClaims(e[t]);if(n)return n}return null}extractUserFromClaims(e){if(!e||"object"!=typeof e)return null;let t,n,i=null;for(const t of U){const n=e[t];if(n&&"string"==typeof n&&n.includes("@")&&n.includes(".")){i=n;break}}if(!i)return null;for(const n of V)if(e[n]&&"string"==typeof e[n]){t=e[n];break}for(const t of j)if(e[t]&&"string"==typeof e[t]){n=e[t];break}if(!t)for(const i of O)if(e[i]&&"string"==typeof e[i]){const s=e[i].split(" ");t=s[0],n=n||s.slice(1).join(" ")||void 0;break}return{email:i,firstName:t,lastName:n}}}function B(e){switch(e){case"pageView":return new H;case"scroll":return new L;case"forms":return new F;case"clicks":return new _;case"engagement":return new P;case"downloads":return new M;case"exitIntent":return new N;case"errors":return new A;case"performance":return new q;case"popupForms":return new $;case"autoIdentify":return new z;default:throw new Error(`Unknown plugin: ${e}`)}}function W(e){try{if("undefined"==typeof localStorage)return!1;const t={state:e,timestamp:Date.now(),version:1};return localStorage.setItem(a,JSON.stringify(t)),!0}catch{return!1}}function K(){try{if("undefined"==typeof localStorage)return null;const e=localStorage.getItem(a);if(!e)return null;const t=JSON.parse(e);return 1!==t.version?(J(),null):t}catch{return null}}function J(){try{return"undefined"!=typeof localStorage&&(localStorage.removeItem(a),!0)}catch{return!1}}class Q{constructor(e={}){this.eventBuffer=[],this.callbacks=[],this.hasExplicitConsent=!1,this.config={defaultConsent:{analytics:!0,marketing:!1,personalization:!1},waitForConsent:!1,storageKey:"mb_consent",...e};const t=K();t?(this.state=t.state,this.hasExplicitConsent=!0,f.debug("Loaded stored consent:",this.state)):(this.state=this.config.defaultConsent||{analytics:!0},this.hasExplicitConsent=!1,f.debug("Using default consent:",this.state)),e.onConsentChange&&this.callbacks.push(e.onConsentChange)}grant(e){const t={...this.state};this.state={...this.state,...e},this.hasExplicitConsent=!0,W(this.state),f.info("Consent granted:",e),this.notifyChange(t)}revoke(e){const t={...this.state};for(const t of e)this.state[t]=!1;this.hasExplicitConsent=!0,W(this.state),f.info("Consent revoked:",e),this.notifyChange(t)}update(e){const t={...this.state};this.state={...e},this.hasExplicitConsent=!0,W(this.state),f.info("Consent updated:",this.state),this.notifyChange(t)}reset(){const e={...this.state};this.state=this.config.defaultConsent||{analytics:!0},this.hasExplicitConsent=!1,this.eventBuffer=[],J(),f.info("Consent reset to defaults"),this.notifyChange(e)}getState(){return{...this.state}}hasConsent(e){return!0===this.state[e]}canTrack(){return!(this.config.waitForConsent&&!this.hasExplicitConsent)&&!0===this.state.analytics}hasExplicit(){return this.hasExplicitConsent}hasStored(){return null!==K()}bufferEvent(e){this.eventBuffer.length>=100&&(f.warn("Consent event buffer full, dropping oldest event"),this.eventBuffer.shift()),this.eventBuffer.push(e),f.debug("Event buffered (waiting for consent):",e.eventName)}flushBuffer(){const e=[...this.eventBuffer];return this.eventBuffer=[],e.length>0&&f.debug(`Flushing ${e.length} buffered events`),e}getBufferSize(){return this.eventBuffer.length}onChange(e){return this.callbacks.push(e),()=>{const t=this.callbacks.indexOf(e);t>-1&&this.callbacks.splice(t,1)}}notifyChange(e){for(const t of this.callbacks)try{t(this.state,e)}catch(e){f.error("Consent change callback error:",e)}}}class Y{constructor(e,t={}){if(this.plugins=[],this.isInitialized=!1,this.contactId=null,this.groupId=null,this.pendingIdentify=null,this.eventSchemas=new Map,this.middlewares=[],this.readyCallbacks=[],!e)throw new Error("[Clianta] Workspace ID is required");this.workspaceId=e,this.config=function(e={}){return{...i,...e,consent:{...i.consent,...e.consent}}}(t),f.enabled=this.config.debug,f.info(`Initializing SDK v${n}`,{workspaceId:e}),this.consentManager=new Q({...this.config.consent,onConsentChange:(e,t)=>{this.onConsentChange(e,t)}}),this.transport=new m({apiEndpoint:this.config.apiEndpoint}),this.queue=new T(this.transport,{batchSize:this.config.batchSize,flushInterval:this.config.flushInterval}),this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),f.debug("IDs created",{visitorId:this.visitorId,sessionId:this.sessionId}),!this.config.apiEndpoint.startsWith("http://")||"undefined"==typeof window||window.location.hostname.includes("localhost")||window.location.hostname.includes("127.0.0.1")||f.warn("apiEndpoint uses HTTP — events will be sent unencrypted. Use HTTPS in production."),this.initPlugins(),this.isInitialized=!0,f.info("SDK initialized successfully");for(const e of this.readyCallbacks)try{e()}catch(e){f.error("onReady callback error:",e)}this.readyCallbacks=[]}createVisitorId(){if(this.config.consent.anonymousMode&&!this.consentManager.hasExplicit()){const e=s+"_anon";let t=w(e);return t||(t="anon_"+g(),y(e,t)),t}if(this.config.cookielessMode){let e=w(s);return e||(e=g(),y(s,e)),e}return b(this.config.useCookies)}createSessionId(){return function(e){const t=o,n=r;let i=w(t);const s=parseInt(w(n)||"0",10),a=Date.now();return(!i||a-s>e)&&(i=g(),y(t,i)),y(n,a.toString()),i}(this.config.sessionTimeout)}onConsentChange(e,t){if(f.debug("Consent changed:",{from:t,to:e}),e.analytics&&!t.analytics){this.config.consent.anonymousMode&&(this.visitorId=b(this.config.useCookies),f.info("Upgraded from anonymous to persistent visitor ID"));const e=this.consentManager.flushBuffer();for(const t of e)t.visitorId=this.visitorId,this.queue.push(t)}}initPlugins(){const e=this.config.plugins,t=this.config.autoPageView?e:e.filter(e=>"pageView"!==e);for(const e of t)try{const t=B(e),n=t.init(this);n instanceof Promise&&n.catch(t=>{f.error(`Async plugin init failed: ${e}`,t)}),this.plugins.push(t),f.debug(`Plugin loaded: ${e}`)}catch(t){f.error(`Failed to load plugin: ${e}`,t)}}track(e,t,i={}){if(!this.isInitialized)return void f.warn("SDK not initialized, event dropped");const s={workspaceId:this.workspaceId,visitorId:this.visitorId,sessionId:this.sessionId,eventType:e,eventName:t,url:"undefined"!=typeof window?window.location.href:"",referrer:"undefined"!=typeof document&&document.referrer||void 0,properties:{...i,eventId:g(),websiteDomain:"undefined"!=typeof window?window.location.hostname:void 0},device:"undefined"==typeof window||"undefined"==typeof navigator?{userAgent:"unknown",screen:"unknown",language:"unknown",timezone:"unknown"}:{userAgent:navigator.userAgent,screen:`${screen.width}x${screen.height}`,language:navigator.language,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone||"unknown"},...I(),timestamp:(new Date).toISOString(),sdkVersion:n};if(this.contactId&&(s.contactId=this.contactId),this.groupId&&(s.groupId=this.groupId),this.validateEventSchema(e,i),!this.consentManager.canTrack())return this.config.consent.waitForConsent?void this.consentManager.bufferEvent(s):void f.debug("Event dropped (no consent):",t);this.runMiddleware(s,()=>{this.queue.push(s),f.debug("Event tracked:",t,i)})}page(e,t={}){const n=e||("undefined"!=typeof document?document.title:"Page View");this.track("page_view",n,{...t,path:"undefined"!=typeof window?window.location.pathname:""})}async identify(e,t={}){if(!e)return f.warn("Email is required for identification"),null;if(!function(e){return!("string"!=typeof e||!e)&&/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e)}(e))return f.warn("Invalid email format, identification skipped:",e),null;f.info("Identifying visitor:",e);const n=await this.transport.sendIdentify({workspaceId:this.workspaceId,visitorId:this.visitorId,email:e,properties:t});return n.success?(f.info("Visitor identified successfully, contactId:",n.contactId),this.contactId=n.contactId??null,this.pendingIdentify=null,this.contactId):(f.error("Failed to identify visitor:",n.error),this.pendingIdentify={email:e,traits:t},null)}async retryPendingIdentify(){if(!this.pendingIdentify)return;const{email:e,traits:t}=this.pendingIdentify;this.pendingIdentify=null,await this.identify(e,t)}consent(e){this.consentManager.update(e)}getConsentState(){return this.consentManager.getState()}debug(e){f.enabled=e,f.info("Debug mode "+(e?"enabled":"disabled"))}group(e,t={}){e?(this.groupId=e,f.info("Visitor grouped:",e),this.track("group","Group Identified",{groupId:e,...t})):f.warn("groupId is required for group()")}async alias(e,t){if(!e)return f.warn("newId is required for alias()"),!1;const n=t||this.visitorId;f.info("Aliasing visitor:",{from:n,to:e});try{const t=`${this.config.apiEndpoint}/api/public/track/alias`,i=await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workspaceId:this.workspaceId,previousId:n,newId:e})});return i.ok?(f.info("Alias successful"),!0):(f.error("Alias failed:",i.status),!1)}catch(e){return f.error("Alias request failed:",e),!1}}screen(e,t={}){this.track("screen_view",e,{...t,screenName:e})}use(e){this.middlewares.push(e),f.debug("Middleware registered")}runMiddleware(e,t){if(0===this.middlewares.length)return void t();let n=0;const i=this.middlewares,s=()=>{if(n++,n<i.length)try{i[n](e,s)}catch(e){f.error("Middleware error:",e),t()}else t()};try{i[0](e,s)}catch(e){f.error("Middleware error:",e),t()}}onReady(e){if(this.isInitialized)try{e()}catch(e){f.error("onReady callback error:",e)}else this.readyCallbacks.push(e)}isReady(){return this.isInitialized}registerEventSchema(e,t){this.eventSchemas.set(e,t),f.debug("Event schema registered:",e)}validateEventSchema(e,t){if(!this.config.debug)return;const n=this.eventSchemas.get(e);if(n)for(const[i,s]of Object.entries(n)){const n=t[i];if(void 0===n){f.warn(`[Schema] Missing property "${i}" for event type "${e}"`);continue}let o=!1;switch(s){case"string":o="string"==typeof n;break;case"number":o="number"==typeof n;break;case"boolean":o="boolean"==typeof n;break;case"object":o="object"==typeof n&&!Array.isArray(n);break;case"array":o=Array.isArray(n)}o||f.warn(`[Schema] Property "${i}" for event "${e}" expected ${s}, got ${typeof n}`)}}getVisitorId(){return this.visitorId}getSessionId(){return this.sessionId}getWorkspaceId(){return this.workspaceId}getConfig(){return{...this.config}}async flush(){await this.retryPendingIdentify(),await this.queue.flush()}reset(){f.info("Resetting visitor data"),k(this.config.useCookies),this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),this.contactId=null,this.pendingIdentify=null,this.queue.clear()}deleteData(){if(f.info("Deleting all user data (GDPR request)"),this.queue.clear(),this.consentManager.reset(),k(this.config.useCookies),"undefined"!=typeof sessionStorage)try{sessionStorage.removeItem(s),sessionStorage.removeItem(s+"_anon"),sessionStorage.removeItem(o),sessionStorage.removeItem(r)}catch{}if("undefined"!=typeof localStorage)try{localStorage.removeItem(s),localStorage.removeItem(a),localStorage.removeItem(d)}catch{}this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),f.info("All user data deleted")}async createContact(e){return this.publicCrmRequest("/api/public/crm/contacts","POST",{workspaceId:this.workspaceId,...e})}async updateContact(e,t){return this.publicCrmRequest(`/api/public/crm/contacts/${e}`,"PUT",{workspaceId:this.workspaceId,...t})}async submitForm(e,t){const n={...t,metadata:{...t.metadata,visitorId:this.visitorId,sessionId:this.sessionId,pageUrl:"undefined"!=typeof window?window.location.href:void 0,referrer:"undefined"!=typeof document&&document.referrer||void 0}};return this.publicCrmRequest(`/api/public/crm/forms/${e}/submit`,"POST",n)}async logActivity(e){return this.publicCrmRequest("/api/public/crm/activities","POST",{workspaceId:this.workspaceId,...e})}async createOpportunity(e){return this.publicCrmRequest("/api/public/crm/opportunities","POST",{workspaceId:this.workspaceId,...e})}async publicCrmRequest(e,t,n){const i=`${this.config.apiEndpoint}${e}`;try{const s=await fetch(i,{method:t,headers:{"Content-Type":"application/json"},body:JSON.stringify(n)}),o=await s.json().catch(()=>({}));return s.ok?(f.debug(`Public CRM ${t} ${e} succeeded`),{success:!0,data:o.data??o,status:s.status}):(f.error(`Public CRM ${t} ${e} failed (${s.status}):`,o.message),{success:!1,error:o.message,status:s.status})}catch(n){return f.error(`Public CRM ${t} ${e} error:`,n),{success:!1,error:n.message}}}async destroy(){f.info("Destroying tracker"),await this.queue.flush();for(const e of this.plugins)e.destroy&&e.destroy();this.plugins=[],this.queue.destroy(),this.isInitialized=!1}}let X=null;function G(e,t){return X&&X.getWorkspaceId()===e||(X&&X.destroy(),X=new Y(e,t)),X}if("undefined"!=typeof window){window.clianta=G,window.Clianta={clianta:G,Tracker:Y,ConsentManager:Q};const e=()=>{const e=document.querySelectorAll("script[data-project-id]"),t=e[e.length-1];if(!t)return;const n=t.getAttribute("data-project-id");if(!n)return;const i=G(n,{debug:t.hasAttribute("data-debug")});window.__clianta=i};"loading"===document.readyState?document.addEventListener("DOMContentLoaded",e):e()}e.ConsentManager=Q,e.SDK_VERSION=n,e.Tracker=Y,e.clianta=G,e.default=G,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
6
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Clianta={})}(this,function(e){"use strict";var t="undefined"!=typeof document?document.currentScript:null;const n="1.6.6",i={projectId:"",apiEndpoint:(()=>{if("undefined"!=typeof process&&process.env?.NEXT_PUBLIC_CLIANTA_API_ENDPOINT)return process.env.NEXT_PUBLIC_CLIANTA_API_ENDPOINT;try{"undefined"==typeof document&&"undefined"==typeof location?require("url").pathToFileURL(__filename).href:"undefined"==typeof document?location.href:t&&"SCRIPT"===t.tagName.toUpperCase()&&t.src||new URL("clianta.umd.min.js",document.baseURI).href,0}catch{}return"undefined"!=typeof process&&process.env?.REACT_APP_CLIANTA_API_ENDPOINT?process.env.REACT_APP_CLIANTA_API_ENDPOINT:"undefined"!=typeof process&&process.env?.CLIANTA_API_ENDPOINT?process.env.CLIANTA_API_ENDPOINT:"http://localhost:5000"})(),debug:!1,autoPageView:!0,plugins:["pageView","forms","scroll","clicks","engagement","downloads","exitIntent","errors","performance","autoIdentify"],sessionTimeout:18e5,batchSize:10,flushInterval:5e3,consent:{defaultConsent:{analytics:!0,marketing:!1,personalization:!1},waitForConsent:!1,storageKey:"mb_consent",anonymousMode:!1},cookieDomain:"",useCookies:!1,cookielessMode:!1,persistMode:"session"},s="mb_vid",o="mb_sid",r="mb_st",a="mb_consent",d="mb_queue",c=[25,50,75,100],l=[".pdf",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".zip",".rar",".tar",".gz",".7z",".csv",".txt",".json",".xml",".mp3",".mp4",".wav",".avi",".mov"];const u="[Clianta]",h={debug:"color: #6b7280; font-weight: normal;",info:"color: #3b82f6; font-weight: normal;",warn:"color: #f59e0b; font-weight: bold;",error:"color: #ef4444; font-weight: bold;"},p={debug:0,info:1,warn:2,error:3};const f=function(e=!1){let t="debug",n=e;const i=e=>!!n&&p[e]>=p[t],s=(e,t)=>"undefined"!=typeof console&&"undefined"!=typeof window?[`%c${u}`,h[e],...t]:[`${u} [${e.toUpperCase()}]`,...t];return{get enabled(){return n},set enabled(e){n=e},debug(...e){i("debug")&&"undefined"!=typeof console&&console.log(...s("debug",e))},info(...e){i("info")&&"undefined"!=typeof console&&console.info(...s("info",e))},warn(...e){i("warn")&&"undefined"!=typeof console&&console.warn(...s("warn",e))},error(...e){i("error")&&"undefined"!=typeof console&&console.error(...s("error",e))},setLevel(e){t=e}}}(!1);class m{constructor(e){this.config={apiEndpoint:e.apiEndpoint,maxRetries:e.maxRetries??3,retryDelay:e.retryDelay??1e3,timeout:e.timeout??1e4}}async sendEvents(e){const t=`${this.config.apiEndpoint}/api/public/track/event`,n=JSON.stringify({events:e});return this.send(t,n)}async sendIdentify(e){const t=`${this.config.apiEndpoint}/api/public/track/identify`;try{const n=await this.fetchWithTimeout(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e),keepalive:!0}),i=await n.json().catch(()=>({}));return n.ok?(f.debug("Identify successful, contactId:",i.contactId),{success:!0,status:n.status,contactId:i.contactId??void 0}):(n.status>=500?f.warn(`Identify server error (${n.status})`):f.error(`Identify failed with status ${n.status}:`,i.message),{success:!1,status:n.status})}catch(e){return f.error("Identify request failed:",e),{success:!1,error:e}}}sendBeacon(e){if("undefined"==typeof navigator||!navigator.sendBeacon)return f.warn("sendBeacon not available, events may be lost"),!1;const t=`${this.config.apiEndpoint}/api/public/track/event`,n=JSON.stringify({events:e}),i=new Blob([n],{type:"application/json"});try{const n=navigator.sendBeacon(t,i);return n?f.debug(`Beacon sent ${e.length} events`):f.warn("sendBeacon returned false"),n}catch(e){return f.error("sendBeacon error:",e),!1}}async fetchData(e,t){const n=new URL(`${this.config.apiEndpoint}${e}`);t&&Object.entries(t).forEach(([e,t])=>{null!=t&&n.searchParams.set(e,t)});try{const t=await this.fetchWithTimeout(n.toString(),{method:"GET",headers:{Accept:"application/json"}});if(t.ok){const n=await t.json();return f.debug("Fetch successful:",e),{success:!0,data:n.data??n,status:t.status}}return f.error(`Fetch failed with status ${t.status}`),{success:!1,status:t.status}}catch(e){return f.error("Fetch request failed:",e),{success:!1,error:e}}}async send(e,t,n=1){try{const i=await this.fetchWithTimeout(e,{method:"POST",headers:{"Content-Type":"application/json"},body:t,keepalive:!0});return i.ok?(f.debug("Request successful:",e),{success:!0,status:i.status}):i.status>=500&&n<this.config.maxRetries?(f.warn(`Server error (${i.status}), retrying...`),await this.delay(this.config.retryDelay*n),this.send(e,t,n+1)):(f.error(`Request failed with status ${i.status}`),{success:!1,status:i.status})}catch(i){return n<this.config.maxRetries?(f.warn(`Network error, retrying (${n}/${this.config.maxRetries})...`),await this.delay(this.config.retryDelay*n),this.send(e,t,n+1)):(f.error("Request failed after retries:",i),{success:!1,error:i})}}async fetchWithTimeout(e,t){const n=new AbortController,i=setTimeout(()=>n.abort(),this.config.timeout);try{return await fetch(e,{...t,signal:n.signal})}finally{clearTimeout(i)}}delay(e){return new Promise(t=>setTimeout(t,e))}}function g(){return"undefined"!=typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})}function y(e){try{if("undefined"!=typeof sessionStorage)return sessionStorage.getItem(e)}catch{}return null}function w(e,t){try{if("undefined"!=typeof sessionStorage)return sessionStorage.setItem(e,t),!0}catch{}return!1}function v(e,t,n){if("undefined"==typeof document)return null;if(void 0===t){const t=document.cookie.match(new RegExp("(^| )"+e+"=([^;]+)"));return t?t[2]:null}let i="";if(n){const e=new Date;e.setTime(e.getTime()+24*n*60*60*1e3),i="; expires="+e.toUTCString()}const s="undefined"!=typeof location&&"https:"===location.protocol?"; Secure":"";return document.cookie=e+"="+t+i+"; path=/; SameSite=Lax"+s,t}function b(e=!1){const t=s;let n=null;return n=e?v(t):function(e){try{if("undefined"!=typeof localStorage)return localStorage.getItem(e)}catch{}return null}(t),n||(n=g(),e?v(t,n,365):function(e,t){try{if("undefined"!=typeof localStorage)return localStorage.setItem(e,t),!0}catch{}}(t,n)),n}function k(e=!1){const t=s;if(e)v(t,"",-1);else try{localStorage.removeItem(t)}catch{}try{sessionStorage.removeItem(o),sessionStorage.removeItem(r)}catch{}}function I(){if("undefined"==typeof window)return{};try{const e=new URLSearchParams(window.location.search);return{utmSource:e.get("utm_source")||void 0,utmMedium:e.get("utm_medium")||void 0,utmCampaign:e.get("utm_campaign")||void 0,utmTerm:e.get("utm_term")||void 0,utmContent:e.get("utm_content")||void 0}}catch{return{}}}function x(e){try{return e.split("/").pop()?.split("?")[0]||"unknown"}catch{return"unknown"}}function E(e){const t=x(e).split(".");return t.length>1&&t.pop()||"unknown"}function S(e,t=100){return(e.innerText||e.textContent||e.value||"").trim().substring(0,t)}class T{constructor(e,t={}){this.queue=[],this.flushTimer=null,this.isFlushing=!1,this.eventTimestamps=[],this.boundBeforeUnload=null,this.boundVisibilityChange=null,this.boundPageHide=null,this.transport=e,this.config={batchSize:t.batchSize??10,flushInterval:t.flushInterval??5e3,maxQueueSize:t.maxQueueSize??1e3,storageKey:t.storageKey??d},this.persistMode=t.persistMode||"session",this.restoreQueue(),this.startFlushTimer(),this.setupUnloadHandlers()}push(e){this.checkRateLimit()?(this.queue.length>=this.config.maxQueueSize&&(f.warn("Queue full, dropping oldest event"),this.queue.shift()),this.queue.push(e),f.debug("Event queued:",e.eventName,`(${this.queue.length} in queue)`),this.queue.length>=this.config.batchSize&&this.flush()):f.warn("Rate limit exceeded, event dropped:",e.eventName)}checkRateLimit(){const e=Date.now();return this.eventTimestamps=this.eventTimestamps.filter(t=>e-t<6e4),!(this.eventTimestamps.length>=100)&&(this.eventTimestamps.push(e),!0)}async flush(){if(this.isFlushing||0===this.queue.length)return;this.isFlushing=!0;const e=this.queue.length,t=this.queue.splice(0,e);try{f.debug(`Flushing ${t.length} events`),this.persistQueue([]);(await this.transport.sendEvents(t)).success?f.debug("Flush successful"):(f.warn("Flush failed, re-queuing events"),this.queue.unshift(...t),this.persistQueue(this.queue))}catch(e){f.error("Flush error:",e)}finally{this.isFlushing=!1}}flushSync(){if(0===this.queue.length)return;const e=this.queue.splice(0,this.queue.length);f.debug(`Sync flushing ${e.length} events via beacon`);this.transport.sendBeacon(e)||(this.queue.unshift(...e),this.persistQueue(this.queue))}get length(){return this.queue.length}clear(){if(this.queue=[],this.persistQueue([]),"local"===this.persistMode&&"undefined"!=typeof localStorage)try{localStorage.removeItem(this.config.storageKey)}catch{}}destroy(){this.flushTimer&&(clearInterval(this.flushTimer),this.flushTimer=null),"undefined"!=typeof window&&(this.boundBeforeUnload&&window.removeEventListener("beforeunload",this.boundBeforeUnload),this.boundVisibilityChange&&window.removeEventListener("visibilitychange",this.boundVisibilityChange),this.boundPageHide&&window.removeEventListener("pagehide",this.boundPageHide))}startFlushTimer(){this.flushTimer&&clearInterval(this.flushTimer),this.flushTimer=setInterval(()=>{this.flush()},this.config.flushInterval)}setupUnloadHandlers(){"undefined"!=typeof window&&(this.boundBeforeUnload=()=>this.flushSync(),window.addEventListener("beforeunload",this.boundBeforeUnload),this.boundVisibilityChange=()=>{"hidden"===document.visibilityState&&this.flushSync()},window.addEventListener("visibilitychange",this.boundVisibilityChange),this.boundPageHide=()=>this.flushSync(),window.addEventListener("pagehide",this.boundPageHide))}persistQueue(e){if("none"!==this.persistMode)try{const t=JSON.stringify(e);if("local"===this.persistMode&&"undefined"!=typeof localStorage)try{localStorage.setItem(this.config.storageKey,t)}catch{w(this.config.storageKey,t)}else w(this.config.storageKey,t)}catch{}}restoreQueue(){try{let e=null;if("local"===this.persistMode&&"undefined"!=typeof localStorage&&(e=localStorage.getItem(this.config.storageKey)),e||(e=y(this.config.storageKey)),e){const t=JSON.parse(e);Array.isArray(t)&&t.length>0&&(this.queue=t,f.debug(`Restored ${t.length} events from storage`))}}catch{}}}class C{constructor(){this.tracker=null}init(e){this.tracker=e}destroy(){this.tracker=null}track(e,t,n){this.tracker&&this.tracker.track(e,t,n)}}class H extends C{constructor(){super(...arguments),this.name="pageView",this.originalPushState=null,this.originalReplaceState=null,this.popstateHandler=null}init(e){if(super.init(e),this.trackPageView(),"undefined"!=typeof window){this.originalPushState=history.pushState,this.originalReplaceState=history.replaceState;const e=this;history.pushState=function(...t){e.originalPushState.apply(history,t),e.trackPageView(),window.dispatchEvent(new Event("clianta:navigation"))},history.replaceState=function(...t){e.originalReplaceState.apply(history,t),e.trackPageView(),window.dispatchEvent(new Event("clianta:navigation"))},this.popstateHandler=()=>this.trackPageView(),window.addEventListener("popstate",this.popstateHandler)}}destroy(){this.originalPushState&&(history.pushState=this.originalPushState,this.originalPushState=null),this.originalReplaceState&&(history.replaceState=this.originalReplaceState,this.originalReplaceState=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}trackPageView(){"undefined"!=typeof window&&"undefined"!=typeof document&&this.track("page_view","Page Viewed",{title:document.title,path:window.location.pathname,search:window.location.search,hash:window.location.hash,referrer:document.referrer||"direct",viewport:`${window.innerWidth}x${window.innerHeight}`})}}class L extends C{constructor(){super(...arguments),this.name="scroll",this.milestonesReached=new Set,this.maxScrollDepth=0,this.pageLoadTime=0,this.scrollTimeout=null,this.boundHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),this.pageLoadTime=Date.now(),"undefined"!=typeof window&&(this.boundHandler=this.handleScroll.bind(this),window.addEventListener("scroll",this.boundHandler,{passive:!0}),this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler))}destroy(){this.boundHandler&&"undefined"!=typeof window&&window.removeEventListener("scroll",this.boundHandler),this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}resetForNavigation(){this.milestonesReached.clear(),this.maxScrollDepth=0,this.pageLoadTime=Date.now()}handleScroll(){this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.scrollTimeout=setTimeout(()=>this.trackScrollDepth(),150)}trackScrollDepth(){if("undefined"==typeof window||"undefined"==typeof document)return;const e=window.innerHeight,t=document.documentElement.scrollHeight,n=window.pageYOffset||document.documentElement.scrollTop,i=t-e;if(i<=0)return;const s=Math.floor(n/i*100),o=Math.max(0,Math.min(100,s));o>this.maxScrollDepth&&(this.maxScrollDepth=o);for(const e of c)o>=e&&!this.milestonesReached.has(e)&&(this.milestonesReached.add(e),this.track("scroll_depth",`Scrolled ${e}%`,{depth:e,maxDepth:this.maxScrollDepth,timeToReach:Date.now()-this.pageLoadTime}))}}class F extends C{constructor(){super(...arguments),this.name="forms",this.trackedForms=new WeakSet,this.formInteractions=new Set,this.observer=null,this.listeners=[]}init(e){super.init(e),"undefined"!=typeof document&&(this.trackAllForms(),"undefined"!=typeof MutationObserver&&(this.observer=new MutationObserver(()=>this.trackAllForms()),this.observer.observe(document.body,{childList:!0,subtree:!0})))}destroy(){this.observer&&(this.observer.disconnect(),this.observer=null);for(const{element:e,event:t,handler:n}of this.listeners)e.removeEventListener(t,n);this.listeners=[],super.destroy()}addListener(e,t,n){e.addEventListener(t,n),this.listeners.push({element:e,event:t,handler:n})}trackAllForms(){document.querySelectorAll("form").forEach(e=>{this.setupFormTracking(e)})}setupFormTracking(e){if(this.trackedForms.has(e))return;this.trackedForms.add(e);const t=e.id||e.name||`form-${Math.random().toString(36).substr(2,9)}`;this.track("form_view","Form Viewed",{formId:t,action:e.action,method:e.method,fieldCount:e.elements.length}),Array.from(e.elements).forEach(e=>{if(e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement){if(!e.name||"submit"===e.type||"button"===e.type)return;["focus","blur","change"].forEach(n=>{this.addListener(e,n,()=>{const i=`${t}-${e.name}-${n}`;this.formInteractions.has(i)||(this.formInteractions.add(i),this.track("form_interaction","Form Field Interaction",{formId:t,fieldName:e.name,fieldType:e.type,interactionType:n}))})})}});this.addListener(e,"submit",()=>{this.track("form_submit","Form Submitted",{formId:t,action:e.action,method:e.method}),this.autoIdentify(e)})}autoIdentify(e){const t=e.querySelector('input[type="email"], input[name*="email"]');if(!t?.value||!this.tracker)return;const n=t.value,i={},s=e.querySelector('[name*="first"], [name*="fname"]'),o=e.querySelector('[name*="last"], [name*="lname"]'),r=e.querySelector('[name*="company"], [name*="organization"]'),a=e.querySelector('[type="tel"], [name*="phone"]');s?.value&&(i.firstName=s.value),o?.value&&(i.lastName=o.value),r?.value&&(i.company=r.value),a?.value&&(i.phone=a.value),this.tracker.identify(n,i)}}class _ extends C{constructor(){super(...arguments),this.name="clicks",this.boundHandler=null}init(e){super.init(e),"undefined"!=typeof document&&(this.boundHandler=this.handleClick.bind(this),document.addEventListener("click",this.boundHandler,!0))}destroy(){this.boundHandler&&"undefined"!=typeof document&&document.removeEventListener("click",this.boundHandler,!0),super.destroy()}handleClick(e){const t=e.target;if(!(t&&(n=t,["BUTTON","A","INPUT"].includes(n.tagName)||n.hasAttribute("data-track-click")||n.classList.contains("track-click"))))return;var n;const i=S(t,100),s=function(e){return{tag:e.tagName?.toLowerCase()||"unknown",id:e.id||"",className:e.className||"",text:S(e,50)}}(t);this.track("button_click","Button Clicked",{buttonText:i,elementType:t.tagName.toLowerCase(),elementId:s.id,elementClass:s.className,href:t.href||void 0,x:Math.round(e.clientX/window.innerWidth*100),y:Math.round(e.clientY/window.innerHeight*100),viewportWidth:window.innerWidth,viewportHeight:window.innerHeight})}}class P extends C{constructor(){super(...arguments),this.name="engagement",this.pageLoadTime=0,this.engagementStartTime=0,this.isEngaged=!1,this.engagementTimeout=null,this.boundMarkEngaged=null,this.boundTrackTimeOnPage=null,this.boundVisibilityHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),this.pageLoadTime=Date.now(),this.engagementStartTime=Date.now(),"undefined"!=typeof document&&"undefined"!=typeof window&&(this.boundMarkEngaged=this.markEngaged.bind(this),this.boundTrackTimeOnPage=this.trackTimeOnPage.bind(this),this.boundVisibilityHandler=()=>{"hidden"===document.visibilityState?this.trackTimeOnPage():this.engagementStartTime=Date.now()},["mousemove","keydown","touchstart","scroll"].forEach(e=>{document.addEventListener(e,this.boundMarkEngaged,{passive:!0})}),window.addEventListener("beforeunload",this.boundTrackTimeOnPage),document.addEventListener("visibilitychange",this.boundVisibilityHandler),this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler))}destroy(){this.boundMarkEngaged&&"undefined"!=typeof document&&["mousemove","keydown","touchstart","scroll"].forEach(e=>{document.removeEventListener(e,this.boundMarkEngaged)}),this.boundTrackTimeOnPage&&"undefined"!=typeof window&&window.removeEventListener("beforeunload",this.boundTrackTimeOnPage),this.boundVisibilityHandler&&"undefined"!=typeof document&&document.removeEventListener("visibilitychange",this.boundVisibilityHandler),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),this.engagementTimeout&&clearTimeout(this.engagementTimeout),super.destroy()}resetForNavigation(){this.pageLoadTime=Date.now(),this.engagementStartTime=Date.now(),this.isEngaged=!1,this.engagementTimeout&&(clearTimeout(this.engagementTimeout),this.engagementTimeout=null)}markEngaged(){this.isEngaged||(this.isEngaged=!0,this.track("engagement","User Engaged",{timeToEngage:Date.now()-this.pageLoadTime})),this.engagementTimeout&&clearTimeout(this.engagementTimeout),this.engagementTimeout=setTimeout(()=>{this.isEngaged=!1},3e4)}trackTimeOnPage(){const e=Math.floor((Date.now()-this.engagementStartTime)/1e3);e>0&&this.track("time_on_page","Time Spent",{seconds:e,engaged:this.isEngaged})}}class M extends C{constructor(){super(...arguments),this.name="downloads",this.trackedDownloads=new Set,this.boundHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),"undefined"!=typeof document&&(this.boundHandler=this.handleClick.bind(this),document.addEventListener("click",this.boundHandler,!0)),"undefined"!=typeof window&&(this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler))}destroy(){this.boundHandler&&"undefined"!=typeof document&&document.removeEventListener("click",this.boundHandler,!0),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}resetForNavigation(){this.trackedDownloads.clear()}handleClick(e){const t=e.target.closest("a");if(!t||!t.href)return;const n=t.href;(function(e){const t=e.toLowerCase();return l.some(e=>t.includes(e))})(n)&&(this.trackedDownloads.has(n)||(this.trackedDownloads.add(n),this.track("download","File Download",{url:n,filename:x(n),fileType:E(n),linkText:S(t,100)})))}}class N extends C{constructor(){super(...arguments),this.name="exitIntent",this.exitIntentShown=!1,this.pageLoadTime=0,this.boundHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),this.pageLoadTime=Date.now(),"undefined"!=typeof navigator&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)||("undefined"!=typeof document&&(this.boundHandler=this.handleMouseLeave.bind(this),document.addEventListener("mouseleave",this.boundHandler)),"undefined"!=typeof window&&(this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler)))}destroy(){this.boundHandler&&"undefined"!=typeof document&&document.removeEventListener("mouseleave",this.boundHandler),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}resetForNavigation(){this.exitIntentShown=!1,this.pageLoadTime=Date.now()}handleMouseLeave(e){e.clientY>0||this.exitIntentShown||(this.exitIntentShown=!0,this.track("exit_intent","Exit Intent Detected",{timeOnPage:Date.now()-this.pageLoadTime}))}}class A extends C{constructor(){super(...arguments),this.name="errors",this.boundErrorHandler=null,this.boundRejectionHandler=null}init(e){super.init(e),"undefined"!=typeof window&&(this.boundErrorHandler=this.handleError.bind(this),this.boundRejectionHandler=this.handleRejection.bind(this),window.addEventListener("error",this.boundErrorHandler),window.addEventListener("unhandledrejection",this.boundRejectionHandler))}destroy(){"undefined"!=typeof window&&(this.boundErrorHandler&&window.removeEventListener("error",this.boundErrorHandler),this.boundRejectionHandler&&window.removeEventListener("unhandledrejection",this.boundRejectionHandler)),super.destroy()}handleError(e){this.track("error","JavaScript Error",{message:e.message,filename:e.filename,line:e.lineno,column:e.colno,stack:e.error?.stack?.substring(0,500)})}handleRejection(e){this.track("error","Unhandled Promise Rejection",{reason:String(e.reason).substring(0,200)})}}class q extends C{constructor(){super(...arguments),this.name="performance",this.boundLoadHandler=null,this.observers=[],this.boundClsVisibilityHandler=null}init(e){super.init(e),"undefined"!=typeof window&&(this.boundLoadHandler=()=>{setTimeout(()=>this.trackPerformance(),100)},window.addEventListener("load",this.boundLoadHandler))}destroy(){this.boundLoadHandler&&"undefined"!=typeof window&&window.removeEventListener("load",this.boundLoadHandler);for(const e of this.observers)e.disconnect();this.observers=[],this.boundClsVisibilityHandler&&"undefined"!=typeof window&&window.removeEventListener("visibilitychange",this.boundClsVisibilityHandler),super.destroy()}trackPerformance(){if("undefined"==typeof performance)return;const e=performance.getEntriesByType("navigation");if(e.length>0){const t=e[0],n=Math.round(t.loadEventEnd-t.startTime),i=Math.round(t.domContentLoadedEventEnd-t.startTime),s=Math.round(t.responseStart-t.requestStart),o=Math.round(t.domInteractive-t.startTime);this.track("performance","Page Performance",{loadTime:n,domReady:i,ttfb:s,domInteractive:o,dns:Math.round(t.domainLookupEnd-t.domainLookupStart),connection:Math.round(t.connectEnd-t.connectStart),transferSize:t.transferSize})}else{const e=performance.timing;if(!e)return;const t=e.loadEventEnd-e.navigationStart,n=e.domContentLoadedEventEnd-e.navigationStart,i=e.responseStart-e.navigationStart,s=e.domInteractive-e.navigationStart;this.track("performance","Page Performance",{loadTime:t,domReady:n,ttfb:i,domInteractive:s})}this.trackWebVitals()}trackWebVitals(){if("PerformanceObserver"in window){try{const e=new PerformanceObserver(e=>{const t=e.getEntries(),n=t[t.length-1];n&&this.track("performance","Web Vital - LCP",{metric:"LCP",value:Math.round(n.startTime)})});e.observe({type:"largest-contentful-paint",buffered:!0}),this.observers.push(e)}catch{}try{const e=new PerformanceObserver(e=>{const t=e.getEntries()[0];t&&this.track("performance","Web Vital - FID",{metric:"FID",value:Math.round(t.processingStart-t.startTime)})});e.observe({type:"first-input",buffered:!0}),this.observers.push(e)}catch{}try{let e=0;const t=new PerformanceObserver(t=>{t.getEntries().forEach(t=>{t.hadRecentInput||(e+=t.value||0)})});t.observe({type:"layout-shift",buffered:!0}),this.observers.push(t),this.boundClsVisibilityHandler=()=>{"hidden"===document.visibilityState&&e>0&&this.track("performance","Web Vital - CLS",{metric:"CLS",value:Math.round(1e3*e)/1e3})},window.addEventListener("visibilitychange",this.boundClsVisibilityHandler,{once:!0})}catch{}}}}class $ extends C{constructor(){super(...arguments),this.name="popupForms",this.forms=[],this.shownForms=new Set,this.scrollHandler=null,this.exitHandler=null,this.delayTimers=[],this.clickTriggerListeners=[]}async init(e){super.init(e),"undefined"!=typeof window&&(this.loadShownForms(),await this.fetchForms(),this.setupTriggers())}destroy(){this.removeTriggers();for(const e of this.delayTimers)clearTimeout(e);this.delayTimers=[];for(const{element:e,handler:t}of this.clickTriggerListeners)e.removeEventListener("click",t);this.clickTriggerListeners=[],super.destroy()}loadShownForms(){try{const e=localStorage.getItem("clianta_shown_forms");if(e){const t=JSON.parse(e);this.shownForms=new Set(t.forms||[])}}catch(e){}}saveShownForms(){try{localStorage.setItem("clianta_shown_forms",JSON.stringify({forms:Array.from(this.shownForms),timestamp:Date.now()}))}catch(e){}}async fetchForms(){if(!this.tracker)return;const e=this.tracker.getConfig(),t=this.tracker.getWorkspaceId(),n=e.apiEndpoint||"http://localhost:5000";try{const e=encodeURIComponent(window.location.href),i=await fetch(`${n}/api/public/lead-forms/${t}?url=${e}`);if(!i.ok)return;const s=await i.json();s.success&&Array.isArray(s.data)&&(this.forms=s.data.filter(e=>this.shouldShowForm(e)))}catch(e){console.error("[Clianta] Failed to fetch forms:",e)}}shouldShowForm(e){if("once_per_visitor"===e.showFrequency){if(this.shownForms.has(e._id))return!1}else if("once_per_session"===e.showFrequency){const t=`clianta_form_${e._id}_shown`;if(sessionStorage.getItem(t))return!1}return!0}setupTriggers(){this.forms.forEach(e=>{switch(e.trigger.type){case"delay":this.delayTimers.push(setTimeout(()=>this.showForm(e),1e3*(e.trigger.value||5)));break;case"scroll":this.setupScrollTrigger(e);break;case"exit_intent":this.setupExitIntentTrigger(e);break;case"click":this.setupClickTrigger(e)}})}setupScrollTrigger(e){const t=e.trigger.value||50;this.scrollHandler=()=>{window.scrollY/(document.documentElement.scrollHeight-window.innerHeight)*100>=t&&(this.showForm(e),this.scrollHandler&&window.removeEventListener("scroll",this.scrollHandler))},window.addEventListener("scroll",this.scrollHandler,{passive:!0})}setupExitIntentTrigger(e){this.exitHandler=t=>{t.clientY<=0&&(this.showForm(e),this.exitHandler&&document.removeEventListener("mouseout",this.exitHandler))},document.addEventListener("mouseout",this.exitHandler)}setupClickTrigger(e){if(!e.trigger.selector)return;document.querySelectorAll(e.trigger.selector).forEach(t=>{const n=()=>this.showForm(e);t.addEventListener("click",n),this.clickTriggerListeners.push({element:t,handler:n})})}removeTriggers(){this.scrollHandler&&window.removeEventListener("scroll",this.scrollHandler),this.exitHandler&&document.removeEventListener("mouseout",this.exitHandler)}async showForm(e){this.shouldShowForm(e)&&(this.shownForms.add(e._id),this.saveShownForms(),sessionStorage.setItem(`clianta_form_${e._id}_shown`,"true"),await this.trackFormView(e._id),this.renderForm(e))}async trackFormView(e){if(!this.tracker)return;const t=this.tracker.getConfig().apiEndpoint||"http://localhost:5000";try{await fetch(`${t}/api/public/lead-forms/${e}/view`,{method:"POST",headers:{"Content-Type":"application/json"}})}catch(e){}}renderForm(e){const t=document.createElement("div");t.id=`clianta-form-overlay-${e._id}`,t.style.cssText="\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.5);\n z-index: 999998;\n display: flex;\n align-items: center;\n justify-content: center;\n opacity: 0;\n transition: opacity 0.3s ease;\n ";const n=document.createElement("div");n.id=`clianta-form-${e._id}`;const i=e.style||{};n.style.cssText=`\n background: ${i.backgroundColor||"#FFFFFF"};\n border-radius: ${i.borderRadius||12}px;\n padding: 24px;\n max-width: 400px;\n width: 90%;\n box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);\n transform: translateY(20px);\n opacity: 0;\n transition: all 0.3s ease;\n `,this.buildFormDOM(e,n),t.appendChild(n),document.body.appendChild(t),requestAnimationFrame(()=>{t.style.opacity="1",n.style.transform="translateY(0)",n.style.opacity="1"}),this.setupFormEvents(e,t,n)}escapeHTML(e){const t=document.createElement("div");return t.textContent=e,t.innerHTML}buildFormDOM(e,t){const n=e.style||{},i=n.primaryColor||"#10B981",s=n.textColor||"#18181B",o=document.createElement("button");o.id="clianta-form-close",o.style.cssText="\n position: absolute;\n top: 12px;\n right: 12px;\n background: none;\n border: none;\n font-size: 20px;\n cursor: pointer;\n color: #71717A;\n padding: 4px;\n ",o.textContent="×",t.appendChild(o);const r=document.createElement("h2");r.style.cssText=`font-size: 20px; font-weight: 700; margin-bottom: 8px; color: ${this.escapeHTML(s)};`,r.textContent=e.headline||"Stay in touch",t.appendChild(r);const a=document.createElement("p");a.style.cssText="font-size: 14px; color: #71717A; margin-bottom: 16px;",a.textContent=e.subheadline||"Get the latest updates",t.appendChild(a);const d=document.createElement("form");d.id="clianta-form-element",e.fields.forEach(e=>{const t=document.createElement("div");if(t.style.marginBottom="12px","checkbox"===e.type){const n=document.createElement("label");n.style.cssText=`display: flex; align-items: center; gap: 8px; font-size: 14px; color: ${this.escapeHTML(s)}; cursor: pointer;`;const i=document.createElement("input");i.type="checkbox",i.name=e.name,e.required&&(i.required=!0),i.style.cssText="width: 16px; height: 16px;",n.appendChild(i);const o=document.createTextNode(e.label+" ");if(n.appendChild(o),e.required){const e=document.createElement("span");e.style.color="#EF4444",e.textContent="*",n.appendChild(e)}t.appendChild(n)}else{const n=document.createElement("label");if(n.style.cssText=`display: block; font-size: 14px; font-weight: 500; margin-bottom: 4px; color: ${this.escapeHTML(s)};`,n.textContent=e.label+" ",e.required){const e=document.createElement("span");e.style.color="#EF4444",e.textContent="*",n.appendChild(e)}if(t.appendChild(n),"textarea"===e.type){const n=document.createElement("textarea");n.name=e.name,e.placeholder&&(n.placeholder=e.placeholder),e.required&&(n.required=!0),n.style.cssText="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; resize: vertical; min-height: 80px; box-sizing: border-box;",t.appendChild(n)}else if("select"===e.type){const n=document.createElement("select");if(n.name=e.name,e.required&&(n.required=!0),n.style.cssText="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; box-sizing: border-box; background: white; cursor: pointer;",e.placeholder){const t=document.createElement("option");t.value="",t.textContent=e.placeholder,t.disabled=!0,t.selected=!0,n.appendChild(t)}e.options&&Array.isArray(e.options)&&e.options.forEach(e=>{const t=document.createElement("option");"string"==typeof e?(t.value=e,t.textContent=e):(t.value=e.value,t.textContent=e.label),n.appendChild(t)}),t.appendChild(n)}else{const n=document.createElement("input");n.type=e.type,n.name=e.name,e.placeholder&&(n.placeholder=e.placeholder),e.required&&(n.required=!0),n.style.cssText="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; box-sizing: border-box;",t.appendChild(n)}}d.appendChild(t)});const c=document.createElement("button");c.type="submit",c.style.cssText=`\n width: 100%;\n padding: 10px 16px;\n background: ${this.escapeHTML(i)};\n color: white;\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n margin-top: 8px;\n `,c.textContent=e.submitButtonText||"Subscribe",d.appendChild(c),t.appendChild(d)}setupFormEvents(e,t,n){const i=n.querySelector("#clianta-form-close");i&&i.addEventListener("click",()=>this.closeForm(e._id,t,n)),t.addEventListener("click",i=>{i.target===t&&this.closeForm(e._id,t,n)});const s=n.querySelector("#clianta-form-element");s&&s.addEventListener("submit",async t=>{t.preventDefault(),await this.handleSubmit(e,s,n)})}closeForm(e,t,n){n.style.transform="translateY(20px)",n.style.opacity="0",t.style.opacity="0",setTimeout(()=>{t.remove()},300)}async handleSubmit(e,t,n){if(!this.tracker)return;const i=this.tracker.getConfig().apiEndpoint||"http://localhost:5000",s=this.tracker.getVisitorId(),o=new FormData(t),r={};o.forEach((e,t)=>{r[t]=e});const a=t.querySelector('button[type="submit"]');a&&(a.disabled=!0,a.textContent="Submitting...");try{const t=await fetch(`${i}/api/public/lead-forms/${e._id}/submit`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({visitorId:s,data:r,url:window.location.href})});if((await t.json()).success){n.innerHTML="";const t=document.createElement("div");t.style.cssText="text-align: center; padding: 20px;";const i=document.createElement("div");i.style.cssText="width: 48px; height: 48px; background: #10B981; border-radius: 50%; margin: 0 auto 16px; display: flex; align-items: center; justify-content: center;";const s=document.createElementNS("http://www.w3.org/2000/svg","svg");s.setAttribute("width","24"),s.setAttribute("height","24"),s.setAttribute("viewBox","0 0 24 24"),s.setAttribute("fill","none"),s.setAttribute("stroke","white"),s.setAttribute("stroke-width","2");const o=document.createElementNS("http://www.w3.org/2000/svg","polyline");o.setAttribute("points","20 6 9 17 4 12"),s.appendChild(o),i.appendChild(s);const a=document.createElement("p");if(a.style.cssText="font-size: 16px; font-weight: 500; color: #18181B;",a.textContent=e.successMessage||"Thank you!",t.appendChild(i),t.appendChild(a),n.appendChild(t),r.email&&this.tracker?.identify(r.email,r),e.redirectUrl)try{const t=new URL(e.redirectUrl,window.location.origin),n=t.origin===window.location.origin,i="https:"===t.protocol||"http:"===t.protocol;n||i?setTimeout(()=>{window.location.href=t.href},1500):console.warn("[Clianta] Blocked unsafe redirect URL:",e.redirectUrl)}catch{console.warn("[Clianta] Invalid redirect URL:",e.redirectUrl)}setTimeout(()=>{const t=document.getElementById(`clianta-form-overlay-${e._id}`);t&&this.closeForm(e._id,t,n)},2e3)}}catch(t){console.error("[Clianta] Form submit error:",t),a&&(a.disabled=!1,a.textContent=e.submitButtonText||"Subscribe")}}}const D=["__session","__clerk_db_jwt","next-auth.session-token","__Secure-next-auth.session-token","sb-access-token","auth0.is.authenticated","token","jwt","access_token","session_token","auth_token","id_token"],R=["sb-","supabase.auth.","firebase:authUser:","auth0spajs","@@auth0spajs@@","token","jwt","auth","user","session"],U=["email","sub","preferred_username","user_email","mail"],O=["name","full_name","display_name","given_name"],V=["given_name","first_name","firstName"],j=["family_name","last_name","lastName"];class z extends C{constructor(){super(...arguments),this.name="autoIdentify",this.checkInterval=null,this.identifiedEmail=null,this.checkCount=0,this.MAX_CHECKS=30,this.CHECK_INTERVAL_MS=1e4}init(e){super.init(e),"undefined"!=typeof window&&(setTimeout(()=>{try{this.checkForAuthUser()}catch{}},2e3),this.checkInterval=setInterval(()=>{if(this.checkCount++,this.checkCount>=this.MAX_CHECKS)this.checkInterval&&(clearInterval(this.checkInterval),this.checkInterval=null);else try{this.checkForAuthUser()}catch{}},this.CHECK_INTERVAL_MS))}destroy(){this.checkInterval&&(clearInterval(this.checkInterval),this.checkInterval=null),super.destroy()}checkForAuthUser(){if(this.tracker&&!this.identifiedEmail){try{const e=this.checkCookies();if(e)return void this.identifyUser(e)}catch{}try{if("undefined"!=typeof localStorage){const e=this.checkStorage(localStorage);if(e)return void this.identifyUser(e)}}catch{}try{if("undefined"!=typeof sessionStorage){const e=this.checkStorage(sessionStorage);if(e)return void this.identifyUser(e)}}catch{}}}identifyUser(e){this.tracker&&this.identifiedEmail!==e.email&&(this.identifiedEmail=e.email,this.tracker.identify(e.email,{firstName:e.firstName,lastName:e.lastName}),this.checkInterval&&(clearInterval(this.checkInterval),this.checkInterval=null))}checkCookies(){if("undefined"==typeof document)return null;try{const e=document.cookie.split(";").map(e=>e.trim());for(const t of e){const[e,...n]=t.split("="),i=n.join("="),s=e.trim().toLowerCase();if(D.some(e=>s.includes(e.toLowerCase()))&&i){const e=this.extractUserFromToken(decodeURIComponent(i));if(e)return e}}}catch{}return null}checkStorage(e){try{for(let t=0;t<e.length;t++){const n=e.key(t);if(!n)continue;const i=n.toLowerCase();if(R.some(e=>i.includes(e.toLowerCase()))){const t=e.getItem(n);if(!t)continue;const i=this.extractUserFromToken(t);if(i)return i;try{const e=JSON.parse(t),n=this.extractUserFromJson(e);if(n)return n}catch{}}}}catch{}return null}extractUserFromToken(e){const t=e.split(".");if(3!==t.length)return null;try{const e=JSON.parse(atob(t[1].replace(/-/g,"+").replace(/_/g,"/")));return this.extractUserFromClaims(e)}catch{return null}}extractUserFromJson(e){if(!e||"object"!=typeof e)return null;const t=this.extractUserFromClaims(e);if(t)return t;for(const t of["user","data","session","currentUser","authUser","access_token","token"])if(e[t])if("string"==typeof e[t]){const n=this.extractUserFromToken(e[t]);if(n)return n}else if("object"==typeof e[t]){const n=this.extractUserFromClaims(e[t]);if(n)return n}return null}extractUserFromClaims(e){if(!e||"object"!=typeof e)return null;let t,n,i=null;for(const t of U){const n=e[t];if(n&&"string"==typeof n&&n.includes("@")&&n.includes(".")){i=n;break}}if(!i)return null;for(const n of V)if(e[n]&&"string"==typeof e[n]){t=e[n];break}for(const t of j)if(e[t]&&"string"==typeof e[t]){n=e[t];break}if(!t)for(const i of O)if(e[i]&&"string"==typeof e[i]){const s=e[i].split(" ");t=s[0],n=n||s.slice(1).join(" ")||void 0;break}return{email:i,firstName:t,lastName:n}}}function B(e){switch(e){case"pageView":return new H;case"scroll":return new L;case"forms":return new F;case"clicks":return new _;case"engagement":return new P;case"downloads":return new M;case"exitIntent":return new N;case"errors":return new A;case"performance":return new q;case"popupForms":return new $;case"autoIdentify":return new z;default:throw new Error(`Unknown plugin: ${e}`)}}function W(e){try{if("undefined"==typeof localStorage)return!1;const t={state:e,timestamp:Date.now(),version:1};return localStorage.setItem(a,JSON.stringify(t)),!0}catch{return!1}}function K(){try{if("undefined"==typeof localStorage)return null;const e=localStorage.getItem(a);if(!e)return null;const t=JSON.parse(e);return 1!==t.version?(J(),null):t}catch{return null}}function J(){try{return"undefined"!=typeof localStorage&&(localStorage.removeItem(a),!0)}catch{return!1}}class Q{constructor(e={}){this.eventBuffer=[],this.callbacks=[],this.hasExplicitConsent=!1,this.config={defaultConsent:{analytics:!0,marketing:!1,personalization:!1},waitForConsent:!1,storageKey:"mb_consent",...e};const t=K();t?(this.state=t.state,this.hasExplicitConsent=!0,f.debug("Loaded stored consent:",this.state)):(this.state=this.config.defaultConsent||{analytics:!0},this.hasExplicitConsent=!1,f.debug("Using default consent:",this.state)),e.onConsentChange&&this.callbacks.push(e.onConsentChange)}grant(e){const t={...this.state};this.state={...this.state,...e},this.hasExplicitConsent=!0,W(this.state),f.info("Consent granted:",e),this.notifyChange(t)}revoke(e){const t={...this.state};for(const t of e)this.state[t]=!1;this.hasExplicitConsent=!0,W(this.state),f.info("Consent revoked:",e),this.notifyChange(t)}update(e){const t={...this.state};this.state={...e},this.hasExplicitConsent=!0,W(this.state),f.info("Consent updated:",this.state),this.notifyChange(t)}reset(){const e={...this.state};this.state=this.config.defaultConsent||{analytics:!0},this.hasExplicitConsent=!1,this.eventBuffer=[],J(),f.info("Consent reset to defaults"),this.notifyChange(e)}getState(){return{...this.state}}hasConsent(e){return!0===this.state[e]}canTrack(){return!(this.config.waitForConsent&&!this.hasExplicitConsent)&&!0===this.state.analytics}hasExplicit(){return this.hasExplicitConsent}hasStored(){return null!==K()}bufferEvent(e){this.eventBuffer.length>=100&&(f.warn("Consent event buffer full, dropping oldest event"),this.eventBuffer.shift()),this.eventBuffer.push(e),f.debug("Event buffered (waiting for consent):",e.eventName)}flushBuffer(){const e=[...this.eventBuffer];return this.eventBuffer=[],e.length>0&&f.debug(`Flushing ${e.length} buffered events`),e}getBufferSize(){return this.eventBuffer.length}onChange(e){return this.callbacks.push(e),()=>{const t=this.callbacks.indexOf(e);t>-1&&this.callbacks.splice(t,1)}}notifyChange(e){for(const t of this.callbacks)try{t(this.state,e)}catch(e){f.error("Consent change callback error:",e)}}}class Y{constructor(e,t={}){if(this.plugins=[],this.isInitialized=!1,this.contactId=null,this.groupId=null,this.pendingIdentify=null,this.eventSchemas=new Map,this.middlewares=[],this.readyCallbacks=[],!e)throw new Error("[Clianta] Workspace ID is required");this.workspaceId=e,this.config=function(e={}){return{...i,...e,consent:{...i.consent,...e.consent}}}(t),f.enabled=this.config.debug,f.info(`Initializing SDK v${n}`,{workspaceId:e}),this.consentManager=new Q({...this.config.consent,onConsentChange:(e,t)=>{this.onConsentChange(e,t)}}),this.transport=new m({apiEndpoint:this.config.apiEndpoint}),this.queue=new T(this.transport,{batchSize:this.config.batchSize,flushInterval:this.config.flushInterval}),this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),f.debug("IDs created",{visitorId:this.visitorId,sessionId:this.sessionId}),!this.config.apiEndpoint.startsWith("http://")||"undefined"==typeof window||window.location.hostname.includes("localhost")||window.location.hostname.includes("127.0.0.1")||f.warn("apiEndpoint uses HTTP — events will be sent unencrypted. Use HTTPS in production."),this.initPlugins(),this.isInitialized=!0,f.info("SDK initialized successfully");for(const e of this.readyCallbacks)try{e()}catch(e){f.error("onReady callback error:",e)}this.readyCallbacks=[]}createVisitorId(){if(this.config.consent.anonymousMode&&!this.consentManager.hasExplicit()){const e=s+"_anon";let t=y(e);return t||(t="anon_"+g(),w(e,t)),t}if(this.config.cookielessMode){let e=y(s);return e||(e=g(),w(s,e)),e}return b(this.config.useCookies)}createSessionId(){return function(e){const t=o,n=r;let i=y(t);const s=parseInt(y(n)||"0",10),a=Date.now();return(!i||a-s>e)&&(i=g(),w(t,i)),w(n,a.toString()),i}(this.config.sessionTimeout)}onConsentChange(e,t){if(f.debug("Consent changed:",{from:t,to:e}),e.analytics&&!t.analytics){this.config.consent.anonymousMode&&(this.visitorId=b(this.config.useCookies),f.info("Upgraded from anonymous to persistent visitor ID"));const e=this.consentManager.flushBuffer();for(const t of e)t.visitorId=this.visitorId,this.queue.push(t)}}initPlugins(){const e=this.config.plugins,t=this.config.autoPageView?e:e.filter(e=>"pageView"!==e);for(const e of t)try{const t=B(e),n=t.init(this);n instanceof Promise&&n.catch(t=>{f.error(`Async plugin init failed: ${e}`,t)}),this.plugins.push(t),f.debug(`Plugin loaded: ${e}`)}catch(t){f.error(`Failed to load plugin: ${e}`,t)}}track(e,t,i={}){if(!this.isInitialized)return void f.warn("SDK not initialized, event dropped");const s={workspaceId:this.workspaceId,visitorId:this.visitorId,sessionId:this.sessionId,eventType:e,eventName:t,url:"undefined"!=typeof window?window.location.href:"",referrer:"undefined"!=typeof document&&document.referrer||void 0,properties:{...i,eventId:g(),websiteDomain:"undefined"!=typeof window?window.location.hostname:void 0},device:"undefined"==typeof window||"undefined"==typeof navigator?{userAgent:"unknown",screen:"unknown",language:"unknown",timezone:"unknown"}:{userAgent:navigator.userAgent,screen:`${screen.width}x${screen.height}`,language:navigator.language,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone||"unknown"},...I(),timestamp:(new Date).toISOString(),sdkVersion:n};if(this.contactId&&(s.contactId=this.contactId),this.groupId&&(s.groupId=this.groupId),this.validateEventSchema(e,i),!this.consentManager.canTrack())return this.config.consent.waitForConsent?void this.consentManager.bufferEvent(s):void f.debug("Event dropped (no consent):",t);this.runMiddleware(s,()=>{this.queue.push(s),f.debug("Event tracked:",t,i)})}page(e,t={}){const n=e||("undefined"!=typeof document?document.title:"Page View");this.track("page_view",n,{...t,path:"undefined"!=typeof window?window.location.pathname:""})}async identify(e,t={}){if(!e)return f.warn("Email is required for identification"),null;if(!function(e){return!("string"!=typeof e||!e)&&/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e)}(e))return f.warn("Invalid email format, identification skipped:",e),null;f.info("Identifying visitor:",e);const n=await this.transport.sendIdentify({workspaceId:this.workspaceId,visitorId:this.visitorId,email:e,properties:t});return n.success?(f.info("Visitor identified successfully, contactId:",n.contactId),this.contactId=n.contactId??null,this.pendingIdentify=null,this.contactId):(f.error("Failed to identify visitor:",n.error),this.pendingIdentify={email:e,traits:t},null)}async retryPendingIdentify(){if(!this.pendingIdentify)return;const{email:e,traits:t}=this.pendingIdentify;this.pendingIdentify=null,await this.identify(e,t)}consent(e){this.consentManager.update(e)}getConsentState(){return this.consentManager.getState()}debug(e){f.enabled=e,f.info("Debug mode "+(e?"enabled":"disabled"))}group(e,t={}){e?(this.groupId=e,f.info("Visitor grouped:",e),this.track("group","Group Identified",{groupId:e,...t})):f.warn("groupId is required for group()")}async alias(e,t){if(!e)return f.warn("newId is required for alias()"),!1;const n=t||this.visitorId;f.info("Aliasing visitor:",{from:n,to:e});try{const t=`${this.config.apiEndpoint}/api/public/track/alias`,i=await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workspaceId:this.workspaceId,previousId:n,newId:e})});return i.ok?(f.info("Alias successful"),!0):(f.error("Alias failed:",i.status),!1)}catch(e){return f.error("Alias request failed:",e),!1}}screen(e,t={}){this.track("screen_view",e,{...t,screenName:e})}use(e){this.middlewares.push(e),f.debug("Middleware registered")}runMiddleware(e,t){if(0===this.middlewares.length)return void t();let n=0;const i=this.middlewares,s=()=>{if(n++,n<i.length)try{i[n](e,s)}catch(e){f.error("Middleware error:",e),t()}else t()};try{i[0](e,s)}catch(e){f.error("Middleware error:",e),t()}}onReady(e){if(this.isInitialized)try{e()}catch(e){f.error("onReady callback error:",e)}else this.readyCallbacks.push(e)}isReady(){return this.isInitialized}registerEventSchema(e,t){this.eventSchemas.set(e,t),f.debug("Event schema registered:",e)}validateEventSchema(e,t){if(!this.config.debug)return;const n=this.eventSchemas.get(e);if(n)for(const[i,s]of Object.entries(n)){const n=t[i];if(void 0===n){f.warn(`[Schema] Missing property "${i}" for event type "${e}"`);continue}let o=!1;switch(s){case"string":o="string"==typeof n;break;case"number":o="number"==typeof n;break;case"boolean":o="boolean"==typeof n;break;case"object":o="object"==typeof n&&!Array.isArray(n);break;case"array":o=Array.isArray(n)}o||f.warn(`[Schema] Property "${i}" for event "${e}" expected ${s}, got ${typeof n}`)}}getVisitorId(){return this.visitorId}getSessionId(){return this.sessionId}getWorkspaceId(){return this.workspaceId}getConfig(){return{...this.config}}async flush(){await this.retryPendingIdentify(),await this.queue.flush()}reset(){f.info("Resetting visitor data"),k(this.config.useCookies),this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),this.contactId=null,this.pendingIdentify=null,this.queue.clear()}deleteData(){if(f.info("Deleting all user data (GDPR request)"),this.queue.clear(),this.consentManager.reset(),k(this.config.useCookies),"undefined"!=typeof sessionStorage)try{sessionStorage.removeItem(s),sessionStorage.removeItem(s+"_anon"),sessionStorage.removeItem(o),sessionStorage.removeItem(r)}catch{}if("undefined"!=typeof localStorage)try{localStorage.removeItem(s),localStorage.removeItem(a),localStorage.removeItem(d)}catch{}this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),f.info("All user data deleted")}async createContact(e){return this.publicCrmRequest("/api/public/crm/contacts","POST",{workspaceId:this.workspaceId,...e})}async updateContact(e,t){return this.publicCrmRequest(`/api/public/crm/contacts/${e}`,"PUT",{workspaceId:this.workspaceId,...t})}async submitForm(e,t){const n={...t,metadata:{...t.metadata,visitorId:this.visitorId,sessionId:this.sessionId,pageUrl:"undefined"!=typeof window?window.location.href:void 0,referrer:"undefined"!=typeof document&&document.referrer||void 0}};return this.publicCrmRequest(`/api/public/crm/forms/${e}/submit`,"POST",n)}async logActivity(e){return this.publicCrmRequest("/api/public/crm/activities","POST",{workspaceId:this.workspaceId,...e})}async createOpportunity(e){return this.publicCrmRequest("/api/public/crm/opportunities","POST",{workspaceId:this.workspaceId,...e})}async publicCrmRequest(e,t,n){const i=`${this.config.apiEndpoint}${e}`;try{const s=await fetch(i,{method:t,headers:{"Content-Type":"application/json"},body:JSON.stringify(n)}),o=await s.json().catch(()=>({}));return s.ok?(f.debug(`Public CRM ${t} ${e} succeeded`),{success:!0,data:o.data??o,status:s.status}):(f.error(`Public CRM ${t} ${e} failed (${s.status}):`,o.message),{success:!1,error:o.message,status:s.status})}catch(n){return f.error(`Public CRM ${t} ${e} error:`,n),{success:!1,error:n.message}}}async destroy(){f.info("Destroying tracker"),await this.queue.flush();for(const e of this.plugins)e.destroy&&e.destroy();this.plugins=[],this.queue.destroy(),this.isInitialized=!1}}let X=null;function G(e,t){return X&&X.getWorkspaceId()===e||(X&&X.destroy(),X=new Y(e,t)),X}if("undefined"!=typeof window){window.clianta=G,window.Clianta={clianta:G,Tracker:Y,ConsentManager:Q};const e=()=>{const e=document.querySelectorAll("script[data-project-id]"),t=e[e.length-1];if(!t)return;const n=t.getAttribute("data-project-id");if(!n)return;const i=G(n,{debug:t.hasAttribute("data-debug")});window.__clianta=i};"loading"===document.readyState?document.addEventListener("DOMContentLoaded",e):e()}e.ConsentManager=Q,e.SDK_VERSION=n,e.Tracker=Y,e.clianta=G,e.default=G,Object.defineProperty(e,"__esModule",{value:!0})});
|
|
7
7
|
//# sourceMappingURL=clianta.umd.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clianta.umd.min.js","sources":["../src/core/config.ts","../src/core/logger.ts","../src/core/transport.ts","../src/utils/index.ts","../src/core/queue.ts","../src/plugins/base.ts","../src/plugins/pageView.ts","../src/plugins/scroll.ts","../src/plugins/forms.ts","../src/plugins/clicks.ts","../src/plugins/engagement.ts","../src/plugins/downloads.ts","../src/plugins/exitIntent.ts","../src/plugins/errors.ts","../src/plugins/performance.ts","../src/plugins/popupForms.ts","../src/plugins/autoIdentify.ts","../src/plugins/index.ts","../src/consent/storage.ts","../src/consent/manager.ts","../src/core/tracker.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["SDK_VERSION","DEFAULT_CONFIG","projectId","apiEndpoint","process","env","NEXT_PUBLIC_CLIANTA_API_ENDPOINT","document","location","require","pathToFileURL","__filename","href","_documentCurrentScript","tagName","toUpperCase","src","URL","baseURI","REACT_APP_CLIANTA_API_ENDPOINT","CLIANTA_API_ENDPOINT","getDefaultApiEndpoint","debug","autoPageView","plugins","sessionTimeout","batchSize","flushInterval","consent","defaultConsent","analytics","marketing","personalization","waitForConsent","storageKey","anonymousMode","cookieDomain","useCookies","cookielessMode","persistMode","STORAGE_KEYS","SCROLL_MILESTONES","DOWNLOAD_EXTENSIONS","LOG_PREFIX","LOG_STYLES","info","warn","error","LOG_LEVELS","logger","enabled","currentLevel","isEnabled","shouldLog","level","formatArgs","args","console","window","value","log","setLevel","createLogger","Transport","constructor","config","this","maxRetries","retryDelay","timeout","sendEvents","events","url","payload","JSON","stringify","send","sendIdentify","data","response","fetchWithTimeout","method","headers","body","keepalive","json","catch","ok","contactId","success","status","undefined","message","sendBeacon","navigator","blob","Blob","type","length","fetchData","path","params","Object","entries","forEach","key","searchParams","set","toString","Accept","attempt","delay","options","controller","AbortController","setTimeout","abort","fetch","signal","clearTimeout","ms","Promise","resolve","generateUUID","crypto","randomUUID","replace","c","r","Math","random","getSessionStorage","sessionStorage","getItem","setSessionStorage","setItem","cookie","name","days","match","RegExp","expires","date","Date","setTime","getTime","toUTCString","secure","protocol","getOrCreateVisitorId","visitorId","localStorage","getLocalStorage","setLocalStorage","resetIds","visitorKey","removeItem","getUTMParams","URLSearchParams","search","utmSource","get","utmMedium","utmCampaign","utmTerm","utmContent","getFilenameFromUrl","split","pop","getFileExtension","parts","getElementText","element","maxLength","innerText","textContent","trim","substring","EventQueue","transport","queue","flushTimer","isFlushing","eventTimestamps","boundBeforeUnload","boundVisibilityChange","boundPageHide","maxQueueSize","restoreQueue","startFlushTimer","setupUnloadHandlers","push","event","checkRateLimit","shift","eventName","flush","now","filter","ts","count","splice","persistQueue","unshift","flushSync","clear","destroy","clearInterval","removeEventListener","setInterval","addEventListener","visibilityState","serialized","stored","parse","Array","isArray","BasePlugin","tracker","init","track","eventType","properties","PageViewPlugin","originalPushState","originalReplaceState","popstateHandler","super","trackPageView","history","pushState","replaceState","self","apply","dispatchEvent","Event","title","pathname","hash","referrer","viewport","innerWidth","innerHeight","ScrollPlugin","milestonesReached","Set","maxScrollDepth","pageLoadTime","scrollTimeout","boundHandler","navigationHandler","handleScroll","bind","passive","resetForNavigation","trackScrollDepth","windowHeight","documentHeight","documentElement","scrollHeight","scrollTop","pageYOffset","scrollableHeight","scrollPercent","floor","clampedPercent","max","min","milestone","has","add","depth","maxDepth","timeToReach","FormsPlugin","trackedForms","WeakSet","formInteractions","observer","listeners","trackAllForms","MutationObserver","observe","childList","subtree","disconnect","handler","addListener","querySelectorAll","form","setupFormTracking","formId","id","substr","action","fieldCount","elements","from","field","HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","fieldName","fieldType","interactionType","autoIdentify","emailField","querySelector","email","traits","firstNameField","lastNameField","companyField","phoneField","firstName","lastName","company","phone","identify","ClicksPlugin","handleClick","e","target","includes","hasAttribute","classList","contains","buttonText","elementInfo","tag","toLowerCase","className","text","getElementInfo","elementType","elementId","elementClass","x","round","clientX","y","clientY","viewportWidth","viewportHeight","EngagementPlugin","engagementStartTime","isEngaged","engagementTimeout","boundMarkEngaged","boundTrackTimeOnPage","boundVisibilityHandler","markEngaged","trackTimeOnPage","timeToEngage","timeSpent","seconds","engaged","DownloadsPlugin","trackedDownloads","link","closest","lowerUrl","some","ext","isDownloadUrl","filename","fileType","linkText","ExitIntentPlugin","exitIntentShown","test","userAgent","handleMouseLeave","timeOnPage","ErrorsPlugin","boundErrorHandler","boundRejectionHandler","handleError","handleRejection","line","lineno","column","colno","stack","reason","String","PerformancePlugin","boundLoadHandler","observers","boundClsVisibilityHandler","trackPerformance","performance","getEntriesByType","navTiming","loadTime","loadEventEnd","startTime","domReady","domContentLoadedEventEnd","ttfb","responseStart","requestStart","domInteractive","dns","domainLookupEnd","domainLookupStart","connection","connectEnd","connectStart","transferSize","timing","navigationStart","trackWebVitals","lcpObserver","PerformanceObserver","entryList","getEntries","lastEntry","metric","buffered","fidObserver","firstEntry","processingStart","clsValue","clsObserver","entry","hadRecentInput","once","PopupFormsPlugin","forms","shownForms","scrollHandler","exitHandler","delayTimers","clickTriggerListeners","loadShownForms","fetchForms","setupTriggers","removeTriggers","timer","saveShownForms","timestamp","getConfig","workspaceId","getWorkspaceId","encodeURIComponent","shouldShowForm","showFrequency","_id","sessionKey","trigger","showForm","setupScrollTrigger","setupExitIntentTrigger","setupClickTrigger","threshold","scrollY","selector","el","trackFormView","renderForm","overlay","createElement","style","cssText","container","backgroundColor","borderRadius","buildFormDOM","appendChild","requestAnimationFrame","opacity","transform","setupFormEvents","escapeHTML","str","div","innerHTML","primaryColor","textColor","closeBtn","headline","subheadline","formElement","fields","fieldWrapper","marginBottom","label","input","required","labelText","createTextNode","requiredMark","color","textarea","placeholder","select","placeholderOption","disabled","selected","opt","option","submitBtn","submitButtonText","closeForm","async","preventDefault","handleSubmit","remove","getVisitorId","formData","FormData","successWrapper","iconWrapper","svg","createElementNS","setAttribute","polyline","successMessage","redirectUrl","redirect","origin","isSameOrigin","isSafeProtocol","getElementById","AUTH_COOKIE_PATTERNS","STORAGE_KEY_PATTERNS","EMAIL_CLAIMS","NAME_CLAIMS","FIRST_NAME_CLAIMS","LAST_NAME_CLAIMS","AutoIdentifyPlugin","checkInterval","identifiedEmail","checkCount","MAX_CHECKS","CHECK_INTERVAL_MS","checkForAuthUser","cookieUser","checkCookies","identifyUser","localUser","checkStorage","sessionUser","user","cookies","map","valueParts","join","cookieName","pattern","extractUserFromToken","decodeURIComponent","storage","i","keyLower","extractUserFromJson","token","atob","extractUserFromClaims","tokenUser","nestedUser","claims","claim","slice","getPlugin","Error","saveConsent","state","version","loadConsent","parsed","clearConsent","ConsentManager","eventBuffer","callbacks","hasExplicitConsent","onConsentChange","grant","categories","previous","notifyChange","revoke","category","update","reset","getState","hasConsent","canTrack","hasExplicit","hasStored","bufferEvent","flushBuffer","getBufferSize","onChange","callback","index","indexOf","Tracker","userConfig","isInitialized","groupId","pendingIdentify","eventSchemas","Map","middlewares","readyCallbacks","mergeConfig","consentManager","createVisitorId","sessionId","createSessionId","startsWith","hostname","initPlugins","cb","anonId","sidKey","tsKey","lastActivity","parseInt","getOrCreateSessionId","to","pluginsToLoad","filteredPlugins","p","pluginName","plugin","result","eventId","websiteDomain","device","screen","language","timezone","width","height","Intl","DateTimeFormat","resolvedOptions","timeZone","toISOString","sdkVersion","validateEventSchema","runMiddleware","page","pageName","isValidEmail","retryPendingIdentify","getConsentState","group","alias","newId","previousId","prevId","screenName","use","middleware","finalCallback","next","onReady","isReady","registerEventSchema","schema","expectedType","valid","getSessionId","deleteData","createContact","publicCrmRequest","updateContact","submitForm","metadata","pageUrl","logActivity","createOpportunity","globalInstance","clianta","Clianta","autoInit","scripts","script","getAttribute","instance","__clianta","readyState"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"clianta.umd.min.js","sources":["../src/core/config.ts","../src/core/logger.ts","../src/core/transport.ts","../src/utils/index.ts","../src/core/queue.ts","../src/plugins/base.ts","../src/plugins/pageView.ts","../src/plugins/scroll.ts","../src/plugins/forms.ts","../src/plugins/clicks.ts","../src/plugins/engagement.ts","../src/plugins/downloads.ts","../src/plugins/exitIntent.ts","../src/plugins/errors.ts","../src/plugins/performance.ts","../src/plugins/popupForms.ts","../src/plugins/autoIdentify.ts","../src/plugins/index.ts","../src/consent/storage.ts","../src/consent/manager.ts","../src/core/tracker.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["SDK_VERSION","DEFAULT_CONFIG","projectId","apiEndpoint","process","env","NEXT_PUBLIC_CLIANTA_API_ENDPOINT","document","location","require","pathToFileURL","__filename","href","_documentCurrentScript","tagName","toUpperCase","src","URL","baseURI","REACT_APP_CLIANTA_API_ENDPOINT","CLIANTA_API_ENDPOINT","getDefaultApiEndpoint","debug","autoPageView","plugins","sessionTimeout","batchSize","flushInterval","consent","defaultConsent","analytics","marketing","personalization","waitForConsent","storageKey","anonymousMode","cookieDomain","useCookies","cookielessMode","persistMode","STORAGE_KEYS","SCROLL_MILESTONES","DOWNLOAD_EXTENSIONS","LOG_PREFIX","LOG_STYLES","info","warn","error","LOG_LEVELS","logger","enabled","currentLevel","isEnabled","shouldLog","level","formatArgs","args","console","window","value","log","setLevel","createLogger","Transport","constructor","config","this","maxRetries","retryDelay","timeout","sendEvents","events","url","payload","JSON","stringify","send","sendIdentify","data","response","fetchWithTimeout","method","headers","body","keepalive","json","catch","ok","contactId","success","status","undefined","message","sendBeacon","navigator","blob","Blob","type","length","fetchData","path","params","Object","entries","forEach","key","searchParams","set","toString","Accept","attempt","delay","options","controller","AbortController","setTimeout","abort","fetch","signal","clearTimeout","ms","Promise","resolve","generateUUID","crypto","randomUUID","replace","c","r","Math","random","getSessionStorage","sessionStorage","getItem","setSessionStorage","setItem","cookie","name","days","match","RegExp","expires","date","Date","setTime","getTime","toUTCString","secure","protocol","getOrCreateVisitorId","visitorId","localStorage","getLocalStorage","setLocalStorage","resetIds","visitorKey","removeItem","getUTMParams","URLSearchParams","search","utmSource","get","utmMedium","utmCampaign","utmTerm","utmContent","getFilenameFromUrl","split","pop","getFileExtension","parts","getElementText","element","maxLength","innerText","textContent","trim","substring","EventQueue","transport","queue","flushTimer","isFlushing","eventTimestamps","boundBeforeUnload","boundVisibilityChange","boundPageHide","maxQueueSize","restoreQueue","startFlushTimer","setupUnloadHandlers","push","event","checkRateLimit","shift","eventName","flush","now","filter","ts","count","splice","persistQueue","unshift","flushSync","clear","destroy","clearInterval","removeEventListener","setInterval","addEventListener","visibilityState","serialized","stored","parse","Array","isArray","BasePlugin","tracker","init","track","eventType","properties","PageViewPlugin","originalPushState","originalReplaceState","popstateHandler","super","trackPageView","history","pushState","replaceState","self","apply","dispatchEvent","Event","title","pathname","hash","referrer","viewport","innerWidth","innerHeight","ScrollPlugin","milestonesReached","Set","maxScrollDepth","pageLoadTime","scrollTimeout","boundHandler","navigationHandler","handleScroll","bind","passive","resetForNavigation","trackScrollDepth","windowHeight","documentHeight","documentElement","scrollHeight","scrollTop","pageYOffset","scrollableHeight","scrollPercent","floor","clampedPercent","max","min","milestone","has","add","depth","maxDepth","timeToReach","FormsPlugin","trackedForms","WeakSet","formInteractions","observer","listeners","trackAllForms","MutationObserver","observe","childList","subtree","disconnect","handler","addListener","querySelectorAll","form","setupFormTracking","formId","id","substr","action","fieldCount","elements","from","field","HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","fieldName","fieldType","interactionType","autoIdentify","emailField","querySelector","email","traits","firstNameField","lastNameField","companyField","phoneField","firstName","lastName","company","phone","identify","ClicksPlugin","handleClick","e","target","includes","hasAttribute","classList","contains","buttonText","elementInfo","tag","toLowerCase","className","text","getElementInfo","elementType","elementId","elementClass","x","round","clientX","y","clientY","viewportWidth","viewportHeight","EngagementPlugin","engagementStartTime","isEngaged","engagementTimeout","boundMarkEngaged","boundTrackTimeOnPage","boundVisibilityHandler","markEngaged","trackTimeOnPage","timeToEngage","timeSpent","seconds","engaged","DownloadsPlugin","trackedDownloads","link","closest","lowerUrl","some","ext","isDownloadUrl","filename","fileType","linkText","ExitIntentPlugin","exitIntentShown","test","userAgent","handleMouseLeave","timeOnPage","ErrorsPlugin","boundErrorHandler","boundRejectionHandler","handleError","handleRejection","line","lineno","column","colno","stack","reason","String","PerformancePlugin","boundLoadHandler","observers","boundClsVisibilityHandler","trackPerformance","performance","getEntriesByType","navTiming","loadTime","loadEventEnd","startTime","domReady","domContentLoadedEventEnd","ttfb","responseStart","requestStart","domInteractive","dns","domainLookupEnd","domainLookupStart","connection","connectEnd","connectStart","transferSize","timing","navigationStart","trackWebVitals","lcpObserver","PerformanceObserver","entryList","getEntries","lastEntry","metric","buffered","fidObserver","firstEntry","processingStart","clsValue","clsObserver","entry","hadRecentInput","once","PopupFormsPlugin","forms","shownForms","scrollHandler","exitHandler","delayTimers","clickTriggerListeners","loadShownForms","fetchForms","setupTriggers","removeTriggers","timer","saveShownForms","timestamp","getConfig","workspaceId","getWorkspaceId","encodeURIComponent","shouldShowForm","showFrequency","_id","sessionKey","trigger","showForm","setupScrollTrigger","setupExitIntentTrigger","setupClickTrigger","threshold","scrollY","selector","el","trackFormView","renderForm","overlay","createElement","style","cssText","container","backgroundColor","borderRadius","buildFormDOM","appendChild","requestAnimationFrame","opacity","transform","setupFormEvents","escapeHTML","str","div","innerHTML","primaryColor","textColor","closeBtn","headline","subheadline","formElement","fields","fieldWrapper","marginBottom","label","input","required","labelText","createTextNode","requiredMark","color","textarea","placeholder","select","placeholderOption","disabled","selected","opt","option","submitBtn","submitButtonText","closeForm","async","preventDefault","handleSubmit","remove","getVisitorId","formData","FormData","successWrapper","iconWrapper","svg","createElementNS","setAttribute","polyline","successMessage","redirectUrl","redirect","origin","isSameOrigin","isSafeProtocol","getElementById","AUTH_COOKIE_PATTERNS","STORAGE_KEY_PATTERNS","EMAIL_CLAIMS","NAME_CLAIMS","FIRST_NAME_CLAIMS","LAST_NAME_CLAIMS","AutoIdentifyPlugin","checkInterval","identifiedEmail","checkCount","MAX_CHECKS","CHECK_INTERVAL_MS","checkForAuthUser","cookieUser","checkCookies","identifyUser","localUser","checkStorage","sessionUser","user","cookies","map","valueParts","join","cookieName","pattern","extractUserFromToken","decodeURIComponent","storage","i","keyLower","extractUserFromJson","token","atob","extractUserFromClaims","tokenUser","nestedUser","claims","claim","slice","getPlugin","Error","saveConsent","state","version","loadConsent","parsed","clearConsent","ConsentManager","eventBuffer","callbacks","hasExplicitConsent","onConsentChange","grant","categories","previous","notifyChange","revoke","category","update","reset","getState","hasConsent","canTrack","hasExplicit","hasStored","bufferEvent","flushBuffer","getBufferSize","onChange","callback","index","indexOf","Tracker","userConfig","isInitialized","groupId","pendingIdentify","eventSchemas","Map","middlewares","readyCallbacks","mergeConfig","consentManager","createVisitorId","sessionId","createSessionId","startsWith","hostname","initPlugins","cb","anonId","sidKey","tsKey","lastActivity","parseInt","getOrCreateSessionId","to","pluginsToLoad","filteredPlugins","p","pluginName","plugin","result","eventId","websiteDomain","device","screen","language","timezone","width","height","Intl","DateTimeFormat","resolvedOptions","timeZone","toISOString","sdkVersion","validateEventSchema","runMiddleware","page","pageName","isValidEmail","retryPendingIdentify","getConsentState","group","alias","newId","previousId","prevId","screenName","use","middleware","finalCallback","next","onReady","isReady","registerEventSchema","schema","expectedType","valid","getSessionId","deleteData","createContact","publicCrmRequest","updateContact","submitForm","metadata","pageUrl","logActivity","createOpportunity","globalInstance","clianta","Clianta","autoInit","scripts","script","getAttribute","instance","__clianta","readyState"],"mappings":"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"}
|