@clianta/sdk 1.2.0 → 1.3.0

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.
@@ -1,7 +1,7 @@
1
1
  /*!
2
- * Clianta SDK v1.2.0
2
+ * Clianta SDK v1.3.0
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";const t="1.2.0",n={projectId:"",apiEndpoint:(()=>{if("undefined"==typeof window)return"https://api.clianta.online";const e=window.location.hostname;return e.includes("localhost")||e.includes("127.0.0.1")?"http://localhost:5000":"https://api.clianta.online"})(),authToken:"",debug:!1,autoPageView:!0,plugins:["pageView","forms","scroll","clicks","engagement","downloads","exitIntent","popupForms"],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},i="mb_vid",s="mb_sid",o="mb_st",r="mb_consent",a="mb_queue",c=[25,50,75,100],d=[".pdf",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".zip",".rar",".tar",".gz",".7z",".csv",".txt",".json",".xml",".mp3",".mp4",".wav",".avi",".mov"];const u="[Clianta]",l={debug:"color: #6b7280; font-weight: normal;",info:"color: #3b82f6; font-weight: normal;",warn:"color: #f59e0b; font-weight: bold;",error:"color: #ef4444; font-weight: bold;"},h={debug:0,info:1,warn:2,error:3};const p=function(e=!1){let t="debug",n=e;const i=e=>!!n&&h[e]>=h[t],s=(e,t)=>"undefined"!=typeof console&&"undefined"!=typeof window?[`%c${u}`,l[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`,n=JSON.stringify(e);return this.send(t,n)}sendBeacon(e){if("undefined"==typeof navigator||!navigator.sendBeacon)return p.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?p.debug(`Beacon sent ${e.length} events`):p.warn("sendBeacon returned false"),n}catch(e){return p.error("sendBeacon error:",e),!1}}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?(p.debug("Request successful:",e),{success:!0,status:i.status}):i.status>=500&&n<this.config.maxRetries?(p.warn(`Server error (${i.status}), retrying...`),await this.delay(this.config.retryDelay*n),this.send(e,t,n+1)):(p.error(`Request failed with status ${i.status}`),{success:!1,status:i.status})}catch(i){return n<this.config.maxRetries?(p.warn(`Network error, retrying (${n}/${this.config.maxRetries})...`),await this.delay(this.config.retryDelay*n),this.send(e,t,n+1)):(p.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 f(e){try{if("undefined"!=typeof localStorage)return localStorage.getItem(e)}catch{}return null}function y(e,t){try{if("undefined"!=typeof localStorage)return localStorage.setItem(e,t),!0}catch{}return!1}function w(e){try{if("undefined"!=typeof sessionStorage)return sessionStorage.getItem(e)}catch{}return null}function b(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()}return document.cookie=e+"="+t+i+"; path=/; SameSite=Lax",t}function k(e=!1){const t=i;let n=null;return n=e?v(t):f(t),n||(n=g(),e?v(t,n,365):y(t,n)),n}function x(e=!1){const t=i;if(e)v(t,"",-1);else try{localStorage.removeItem(t)}catch{}try{sessionStorage.removeItem(s),sessionStorage.removeItem(o)}catch{}}function S(){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 I(e){try{return e.split("/").pop()?.split("?")[0]||"unknown"}catch{return"unknown"}}function T(e){const t=I(e).split(".");return t.length>1&&t.pop()||"unknown"}function E(e,t=100){return(e.innerText||e.textContent||e.value||"").trim().substring(0,t)}class ${constructor(e,t={}){this.queue=[],this.flushTimer=null,this.isFlushing=!1,this.eventTimestamps=[],this.transport=e,this.config={batchSize:t.batchSize??10,flushInterval:t.flushInterval??5e3,maxQueueSize:t.maxQueueSize??1e3,storageKey:t.storageKey??a},this.restoreQueue(),this.startFlushTimer(),this.setupUnloadHandlers()}push(e){this.checkRateLimit()?(this.queue.length>=this.config.maxQueueSize&&(p.warn("Queue full, dropping oldest event"),this.queue.shift()),this.queue.push(e),p.debug("Event queued:",e.eventName,`(${this.queue.length} in queue)`),this.queue.length>=this.config.batchSize&&this.flush()):p.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{p.debug(`Flushing ${t.length} events`),this.persistQueue([]);(await this.transport.sendEvents(t)).success?p.debug("Flush successful"):(p.warn("Flush failed, re-queuing events"),this.queue.unshift(...t),this.persistQueue(this.queue))}catch(e){p.error("Flush error:",e)}finally{this.isFlushing=!1}}flushSync(){if(0===this.queue.length)return;const e=this.queue.splice(0,this.queue.length);p.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(){this.queue=[],this.persistQueue([])}destroy(){this.flushTimer&&(clearInterval(this.flushTimer),this.flushTimer=null)}startFlushTimer(){this.flushTimer&&clearInterval(this.flushTimer),this.flushTimer=setInterval(()=>{this.flush()},this.config.flushInterval)}setupUnloadHandlers(){"undefined"!=typeof window&&(window.addEventListener("beforeunload",()=>{this.flushSync()}),window.addEventListener("visibilitychange",()=>{"hidden"===document.visibilityState&&this.flushSync()}),window.addEventListener("pagehide",()=>{this.flushSync()}))}persistQueue(e){try{y(this.config.storageKey,JSON.stringify(e))}catch{}}restoreQueue(){try{const e=f(this.config.storageKey);if(e){const t=JSON.parse(e);Array.isArray(t)&&t.length>0&&(this.queue=t,p.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 q 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()},history.replaceState=function(...t){e.originalReplaceState.apply(history,t),e.trackPageView()},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}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}))}destroy(){this.boundHandler&&"undefined"!=typeof window&&window.removeEventListener("scroll",this.boundHandler),this.scrollTimeout&&clearTimeout(this.scrollTimeout),super.destroy()}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}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),super.destroy()}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=>{e.addEventListener(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}))})})}}),e.addEventListener("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 P 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=E(t,100),s=function(e){return{tag:e.tagName?.toLowerCase()||"unknown",id:e.id||"",className:e.className||"",text:E(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})}}class H 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}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),["mousemove","keydown","touchstart","scroll"].forEach(e=>{document.addEventListener(e,this.boundMarkEngaged,{passive:!0})}),window.addEventListener("beforeunload",this.boundTrackTimeOnPage),window.addEventListener("visibilitychange",()=>{"hidden"===document.visibilityState?this.trackTimeOnPage():this.engagementStartTime=Date.now()}))}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.engagementTimeout&&clearTimeout(this.engagementTimeout),super.destroy()}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 O extends C{constructor(){super(...arguments),this.name="downloads",this.trackedDownloads=new Set,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.closest("a");if(!t||!t.href)return;const n=t.href;(function(e){const t=e.toLowerCase();return d.some(e=>t.includes(e))})(n)&&(this.trackedDownloads.has(n)||(this.trackedDownloads.add(n),this.track("download","File Download",{url:n,filename:I(n),fileType:T(n),linkText:E(t,100)})))}}class M extends C{constructor(){super(...arguments),this.name="exitIntent",this.exitIntentShown=!1,this.pageLoadTime=0,this.boundHandler=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))}destroy(){this.boundHandler&&"undefined"!=typeof document&&document.removeEventListener("mouseleave",this.boundHandler),super.destroy()}handleMouseLeave(e){e.clientY>0||this.exitIntentShown||(this.exitIntentShown=!0,this.track("exit_intent","Exit Intent Detected",{timeOnPage:Date.now()-this.pageLoadTime}))}}class D 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 _ extends C{constructor(){super(...arguments),this.name="performance"}init(e){super.init(e),"undefined"!=typeof window&&window.addEventListener("load",()=>{setTimeout(()=>this.trackPerformance(),100)})}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{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)})}).observe({type:"largest-contentful-paint",buffered:!0})}catch{}try{new PerformanceObserver(e=>{const t=e.getEntries()[0];t&&this.track("performance","Web Vital - FID",{metric:"FID",value:Math.round(t.processingStart-t.startTime)})}).observe({type:"first-input",buffered:!0})}catch{}try{let e=0;new PerformanceObserver(t=>{t.getEntries().forEach(t=>{t.hadRecentInput||(e+=t.value||0)})}).observe({type:"layout-shift",buffered:!0}),window.addEventListener("visibilitychange",()=>{"hidden"===document.visibilityState&&e>0&&this.track("performance","Web Vital - CLS",{metric:"CLS",value:Math.round(1e3*e)/1e3})},{once:!0})}catch{}}}}class z extends C{constructor(){super(...arguments),this.name="popupForms",this.forms=[],this.shownForms=new Set,this.scrollHandler=null,this.exitHandler=null}async init(e){super.init(e),"undefined"!=typeof window&&(this.loadShownForms(),await this.fetchForms(),this.setupTriggers())}destroy(){this.removeTriggers(),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||"https://api.clianta.online";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":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=>{t.addEventListener("click",()=>this.showForm(e))})}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||"https://api.clianta.online";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 c=document.createElement("form");c.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{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)}}c.appendChild(t)});const d=document.createElement("button");d.type="submit",d.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 `,d.textContent=e.submitButtonText||"Subscribe",c.appendChild(d),t.appendChild(c)}buildFormHTML(e){const t=e.style||{},n=t.primaryColor||"#10B981",i=t.textColor||"#18181B";let s=e.fields.map(e=>{const t=e.required?'<span style="color: #EF4444;">*</span>':"";return"textarea"===e.type?`\n <div style="margin-bottom: 12px;">\n <label style="display: block; font-size: 14px; font-weight: 500; margin-bottom: 4px; color: ${i};">\n ${e.label} ${t}\n </label>\n <textarea\n name="${e.name}"\n placeholder="${e.placeholder||""}"\n ${e.required?"required":""}\n style="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; resize: vertical; min-height: 80px;"\n ></textarea>\n </div>\n `:"checkbox"===e.type?`\n <div style="margin-bottom: 12px;">\n <label style="display: flex; align-items: center; gap: 8px; font-size: 14px; color: ${i}; cursor: pointer;">\n <input\n type="checkbox"\n name="${e.name}"\n ${e.required?"required":""}\n style="width: 16px; height: 16px;"\n />\n ${e.label} ${t}\n </label>\n </div>\n `:`\n <div style="margin-bottom: 12px;">\n <label style="display: block; font-size: 14px; font-weight: 500; margin-bottom: 4px; color: ${i};">\n ${e.label} ${t}\n </label>\n <input\n type="${e.type}"\n name="${e.name}"\n placeholder="${e.placeholder||""}"\n ${e.required?"required":""}\n style="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; box-sizing: border-box;"\n />\n </div>\n `}).join("");return`\n <button id="clianta-form-close" style="\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 ">&times;</button>\n <h2 style="font-size: 20px; font-weight: 700; margin-bottom: 8px; color: ${i};">\n ${e.headline||"Stay in touch"}\n </h2>\n <p style="font-size: 14px; color: #71717A; margin-bottom: 16px;">\n ${e.subheadline||"Get the latest updates"}\n </p>\n <form id="clianta-form-element">\n ${s}\n <button type="submit" style="\n width: 100%;\n padding: 10px 16px;\n background: ${n};\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 ">\n ${e.submitButtonText||"Subscribe"}\n </button>\n </form>\n `}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||"https://api.clianta.online",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.innerHTML="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");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&&setTimeout(()=>{window.location.href=e.redirectUrl},1500),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.innerHTML=e.submitButtonText||"Subscribe")}}}function R(e){switch(e){case"pageView":return new q;case"scroll":return new L;case"forms":return new F;case"clicks":return new P;case"engagement":return new H;case"downloads":return new O;case"exitIntent":return new M;case"errors":return new D;case"performance":return new _;case"popupForms":return new z;default:throw new Error(`Unknown plugin: ${e}`)}}function A(e){try{if("undefined"==typeof localStorage)return!1;const t={state:e,timestamp:Date.now(),version:1};return localStorage.setItem(r,JSON.stringify(t)),!0}catch{return!1}}function N(){try{if("undefined"==typeof localStorage)return null;const e=localStorage.getItem(r);if(!e)return null;const t=JSON.parse(e);return 1!==t.version?(B(),null):t}catch{return null}}function B(){try{return"undefined"!=typeof localStorage&&(localStorage.removeItem(r),!0)}catch{return!1}}class U{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=N();t?(this.state=t.state,this.hasExplicitConsent=!0,p.debug("Loaded stored consent:",this.state)):(this.state=this.config.defaultConsent||{analytics:!0},this.hasExplicitConsent=!1,p.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,A(this.state),p.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,A(this.state),p.info("Consent revoked:",e),this.notifyChange(t)}update(e){const t={...this.state};this.state={...e},this.hasExplicitConsent=!0,A(this.state),p.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=[],B(),p.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!==N()}bufferEvent(e){this.eventBuffer.length>=100&&(p.warn("Consent event buffer full, dropping oldest event"),this.eventBuffer.shift()),this.eventBuffer.push(e),p.debug("Event buffered (waiting for consent):",e.eventName)}flushBuffer(){const e=[...this.eventBuffer];return this.eventBuffer=[],e.length>0&&p.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){p.error("Consent change callback error:",e)}}}class V{constructor(e,i={}){if(this.plugins=[],this.isInitialized=!1,!e)throw new Error("[Clianta] Workspace ID is required");this.workspaceId=e,this.config=function(e={}){return{...n,...e,consent:{...n.consent,...e.consent}}}(i),p.enabled=this.config.debug,p.info(`Initializing SDK v${t}`,{workspaceId:e}),this.consentManager=new U({...this.config.consent,onConsentChange:(e,t)=>{this.onConsentChange(e,t)}}),this.transport=new m({apiEndpoint:this.config.apiEndpoint}),this.queue=new $(this.transport,{batchSize:this.config.batchSize,flushInterval:this.config.flushInterval}),this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),p.debug("IDs created",{visitorId:this.visitorId,sessionId:this.sessionId}),this.initPlugins(),this.isInitialized=!0,p.info("SDK initialized successfully")}createVisitorId(){if(this.config.consent.anonymousMode&&!this.consentManager.hasExplicit()){const e=i+"_anon";let t=w(e);return t||(t="anon_"+g(),b(e,t)),t}if(this.config.cookielessMode){let e=w(i);return e||(e=g(),b(i,e)),e}return k(this.config.useCookies)}createSessionId(){return function(e){const t=s,n=o;let i=w(t);const r=parseInt(w(n)||"0",10),a=Date.now();return(!i||a-r>e)&&(i=g(),b(t,i)),b(n,a.toString()),i}(this.config.sessionTimeout)}onConsentChange(e,t){if(p.debug("Consent changed:",{from:t,to:e}),e.analytics&&!t.analytics){this.config.consent.anonymousMode&&(this.visitorId=k(this.config.useCookies),p.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=R(e),n=t.init(this);n instanceof Promise&&n.catch(t=>{p.error(`Async plugin init failed: ${e}`,t)}),this.plugins.push(t),p.debug(`Plugin loaded: ${e}`)}catch(t){p.error(`Failed to load plugin: ${e}`,t)}}track(e,n,i={}){if(!this.isInitialized)return void p.warn("SDK not initialized, event dropped");const s={workspaceId:this.workspaceId,visitorId:this.visitorId,sessionId:this.sessionId,eventType:e,eventName:n,url:"undefined"!=typeof window?window.location.href:"",referrer:"undefined"!=typeof document&&document.referrer||void 0,properties:i,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"},utm:S(),timestamp:(new Date).toISOString(),sdkVersion:t};if(!this.consentManager.canTrack())return this.config.consent.waitForConsent?void this.consentManager.bufferEvent(s):void p.debug("Event dropped (no consent):",n);this.queue.push(s),p.debug("Event tracked:",n,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 void p.warn("Email is required for identification");p.info("Identifying visitor:",e);const n=await this.transport.sendIdentify({workspaceId:this.workspaceId,visitorId:this.visitorId,email:e,properties:t});n.success?p.info("Visitor identified successfully"):p.error("Failed to identify visitor:",n.error)}consent(e){this.consentManager.update(e)}getConsentState(){return this.consentManager.getState()}debug(e){p.enabled=e,p.info("Debug mode "+(e?"enabled":"disabled"))}getVisitorId(){return this.visitorId}getSessionId(){return this.sessionId}getWorkspaceId(){return this.workspaceId}getConfig(){return{...this.config}}async flush(){await this.queue.flush()}reset(){p.info("Resetting visitor data"),x(this.config.useCookies),this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),this.queue.clear()}deleteData(){if(p.info("Deleting all user data (GDPR request)"),this.queue.clear(),this.consentManager.reset(),x(this.config.useCookies),"undefined"!=typeof sessionStorage)try{sessionStorage.removeItem(i),sessionStorage.removeItem(i+"_anon"),sessionStorage.removeItem(s),sessionStorage.removeItem(o)}catch{}if("undefined"!=typeof localStorage)try{localStorage.removeItem(i),localStorage.removeItem(r),localStorage.removeItem(a)}catch{}this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),p.info("All user data deleted")}async destroy(){p.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}}class j{constructor(e,t,n){this.apiEndpoint=e,this.workspaceId=t,this.authToken=n}setAuthToken(e){this.authToken=e}async request(e,t={}){const n=`${this.apiEndpoint}${e}`,i={"Content-Type":"application/json",...t.headers||{}};this.authToken&&(i.Authorization=`Bearer ${this.authToken}`);try{const e=await fetch(n,{...t,headers:i}),s=await e.json();return e.ok?{success:!0,data:s.data||s,status:e.status}:{success:!1,error:s.message||"Request failed",status:e.status}}catch(e){return{success:!1,error:e instanceof Error?e.message:"Network error",status:0}}}async getContacts(e){const t=new URLSearchParams;e?.page&&t.set("page",e.page.toString()),e?.limit&&t.set("limit",e.limit.toString()),e?.search&&t.set("search",e.search),e?.status&&t.set("status",e.status);const n=t.toString(),i=`/api/workspaces/${this.workspaceId}/contacts${n?`?${n}`:""}`;return this.request(i)}async getContact(e){return this.request(`/api/workspaces/${this.workspaceId}/contacts/${e}`)}async createContact(e){return this.request(`/api/workspaces/${this.workspaceId}/contacts`,{method:"POST",body:JSON.stringify(e)})}async updateContact(e,t){return this.request(`/api/workspaces/${this.workspaceId}/contacts/${e}`,{method:"PUT",body:JSON.stringify(t)})}async deleteContact(e){return this.request(`/api/workspaces/${this.workspaceId}/contacts/${e}`,{method:"DELETE"})}async getOpportunities(e){const t=new URLSearchParams;e?.page&&t.set("page",e.page.toString()),e?.limit&&t.set("limit",e.limit.toString()),e?.pipelineId&&t.set("pipelineId",e.pipelineId),e?.stageId&&t.set("stageId",e.stageId);const n=t.toString(),i=`/api/workspaces/${this.workspaceId}/opportunities${n?`?${n}`:""}`;return this.request(i)}async getOpportunity(e){return this.request(`/api/workspaces/${this.workspaceId}/opportunities/${e}`)}async createOpportunity(e){return this.request(`/api/workspaces/${this.workspaceId}/opportunities`,{method:"POST",body:JSON.stringify(e)})}async updateOpportunity(e,t){return this.request(`/api/workspaces/${this.workspaceId}/opportunities/${e}`,{method:"PUT",body:JSON.stringify(t)})}async deleteOpportunity(e){return this.request(`/api/workspaces/${this.workspaceId}/opportunities/${e}`,{method:"DELETE"})}async moveOpportunity(e,t){return this.request(`/api/workspaces/${this.workspaceId}/opportunities/${e}/move`,{method:"POST",body:JSON.stringify({stageId:t})})}async getCompanies(e){const t=new URLSearchParams;e?.page&&t.set("page",e.page.toString()),e?.limit&&t.set("limit",e.limit.toString()),e?.search&&t.set("search",e.search),e?.status&&t.set("status",e.status),e?.industry&&t.set("industry",e.industry);const n=t.toString(),i=`/api/workspaces/${this.workspaceId}/companies${n?`?${n}`:""}`;return this.request(i)}async getCompany(e){return this.request(`/api/workspaces/${this.workspaceId}/companies/${e}`)}async createCompany(e){return this.request(`/api/workspaces/${this.workspaceId}/companies`,{method:"POST",body:JSON.stringify(e)})}async updateCompany(e,t){return this.request(`/api/workspaces/${this.workspaceId}/companies/${e}`,{method:"PUT",body:JSON.stringify(t)})}async deleteCompany(e){return this.request(`/api/workspaces/${this.workspaceId}/companies/${e}`,{method:"DELETE"})}async getCompanyContacts(e,t){const n=new URLSearchParams;t?.page&&n.set("page",t.page.toString()),t?.limit&&n.set("limit",t.limit.toString());const i=n.toString(),s=`/api/workspaces/${this.workspaceId}/companies/${e}/contacts${i?`?${i}`:""}`;return this.request(s)}async getCompanyDeals(e,t){const n=new URLSearchParams;t?.page&&n.set("page",t.page.toString()),t?.limit&&n.set("limit",t.limit.toString());const i=n.toString(),s=`/api/workspaces/${this.workspaceId}/companies/${e}/deals${i?`?${i}`:""}`;return this.request(s)}async getPipelines(){return this.request(`/api/workspaces/${this.workspaceId}/pipelines`)}async getPipeline(e){return this.request(`/api/workspaces/${this.workspaceId}/pipelines/${e}`)}async createPipeline(e){return this.request(`/api/workspaces/${this.workspaceId}/pipelines`,{method:"POST",body:JSON.stringify(e)})}async updatePipeline(e,t){return this.request(`/api/workspaces/${this.workspaceId}/pipelines/${e}`,{method:"PUT",body:JSON.stringify(t)})}async deletePipeline(e){return this.request(`/api/workspaces/${this.workspaceId}/pipelines/${e}`,{method:"DELETE"})}async getTasks(e){const t=new URLSearchParams;e?.page&&t.set("page",e.page.toString()),e?.limit&&t.set("limit",e.limit.toString()),e?.status&&t.set("status",e.status),e?.priority&&t.set("priority",e.priority),e?.contactId&&t.set("contactId",e.contactId),e?.companyId&&t.set("companyId",e.companyId),e?.opportunityId&&t.set("opportunityId",e.opportunityId);const n=t.toString(),i=`/api/workspaces/${this.workspaceId}/tasks${n?`?${n}`:""}`;return this.request(i)}async getTask(e){return this.request(`/api/workspaces/${this.workspaceId}/tasks/${e}`)}async createTask(e){return this.request(`/api/workspaces/${this.workspaceId}/tasks`,{method:"POST",body:JSON.stringify(e)})}async updateTask(e,t){return this.request(`/api/workspaces/${this.workspaceId}/tasks/${e}`,{method:"PUT",body:JSON.stringify(t)})}async completeTask(e){return this.request(`/api/workspaces/${this.workspaceId}/tasks/${e}/complete`,{method:"PATCH"})}async deleteTask(e){return this.request(`/api/workspaces/${this.workspaceId}/tasks/${e}`,{method:"DELETE"})}async getContactActivities(e,t){const n=new URLSearchParams;t?.page&&n.set("page",t.page.toString()),t?.limit&&n.set("limit",t.limit.toString()),t?.type&&n.set("type",t.type);const i=n.toString(),s=`/api/workspaces/${this.workspaceId}/contacts/${e}/activities${i?`?${i}`:""}`;return this.request(s)}async getOpportunityActivities(e,t){const n=new URLSearchParams;t?.page&&n.set("page",t.page.toString()),t?.limit&&n.set("limit",t.limit.toString()),t?.type&&n.set("type",t.type);const i=n.toString(),s=`/api/workspaces/${this.workspaceId}/opportunities/${e}/activities${i?`?${i}`:""}`;return this.request(s)}async createActivity(e){let t;return t=e.opportunityId?`/api/workspaces/${this.workspaceId}/opportunities/${e.opportunityId}/activities`:e.contactId?`/api/workspaces/${this.workspaceId}/contacts/${e.contactId}/activities`:`/api/workspaces/${this.workspaceId}/activities`,this.request(t,{method:"POST",body:JSON.stringify(e)})}async updateActivity(e,t){return this.request(`/api/workspaces/${this.workspaceId}/activities/${e}`,{method:"PATCH",body:JSON.stringify(t)})}async deleteActivity(e){return this.request(`/api/workspaces/${this.workspaceId}/activities/${e}`,{method:"DELETE"})}async logCall(e){return this.createActivity({type:"call",title:("inbound"===e.direction?"Inbound":"Outbound")+" Call",direction:e.direction,duration:e.duration,outcome:e.outcome,description:e.notes,contactId:e.contactId,opportunityId:e.opportunityId})}async logMeeting(e){return this.createActivity({type:"meeting",title:e.title,duration:e.duration,outcome:e.outcome,description:e.notes,contactId:e.contactId,opportunityId:e.opportunityId})}async addNote(e){return this.createActivity({type:"note",title:"Note",description:e.content,contactId:e.contactId,opportunityId:e.opportunityId})}}let J=null;function W(e,t){return J&&J.getWorkspaceId()===e||(J&&J.destroy(),J=new V(e,t)),J}"undefined"!=typeof window&&(window.clianta=W,window.Clianta={clianta:W,Tracker:V,CRMClient:j,ConsentManager:U}),e.CRMClient=j,e.ConsentManager=U,e.SDK_VERSION=t,e.Tracker=V,e.clianta=W,e.default=W,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";const t="1.3.0",i={projectId:"",apiEndpoint:(()=>{if("undefined"==typeof window)return"https://api.clianta.online";const e=window.location.hostname;return e.includes("localhost")||e.includes("127.0.0.1")?"http://localhost:5000":"https://api.clianta.online"})(),authToken:"",debug:!1,autoPageView:!0,plugins:["pageView","forms","scroll","clicks","engagement","downloads","exitIntent"],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},n="mb_vid",s="mb_sid",r="mb_st",o="mb_consent",a="mb_queue",c=[25,50,75,100],d=[".pdf",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".zip",".rar",".tar",".gz",".7z",".csv",".txt",".json",".xml",".mp3",".mp4",".wav",".avi",".mov"];const l="[Clianta]",u={debug:"color: #6b7280; font-weight: normal;",info:"color: #3b82f6; font-weight: normal;",warn:"color: #f59e0b; font-weight: bold;",error:"color: #ef4444; font-weight: bold;"},h={debug:0,info:1,warn:2,error:3};const p=function(e=!1){let t="debug",i=e;const n=e=>!!i&&h[e]>=h[t],s=(e,t)=>"undefined"!=typeof console&&"undefined"!=typeof window?[`%c${l}`,u[e],...t]:[`${l} [${e.toUpperCase()}]`,...t];return{get enabled(){return i},set enabled(e){i=e},debug(...e){n("debug")&&"undefined"!=typeof console&&console.log(...s("debug",e))},info(...e){n("info")&&"undefined"!=typeof console&&console.info(...s("info",e))},warn(...e){n("warn")&&"undefined"!=typeof console&&console.warn(...s("warn",e))},error(...e){n("error")&&"undefined"!=typeof console&&console.error(...s("error",e))},setLevel(e){t=e}}}(!1);class g{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`,i=JSON.stringify({events:e});return this.send(t,i)}async sendIdentify(e){const t=`${this.config.apiEndpoint}/api/public/track/identify`,i=JSON.stringify(e);return this.send(t,i)}sendBeacon(e){if("undefined"==typeof navigator||!navigator.sendBeacon)return p.warn("sendBeacon not available, events may be lost"),!1;const t=`${this.config.apiEndpoint}/api/public/track/event`,i=JSON.stringify({events:e}),n=new Blob([i],{type:"application/json"});try{const i=navigator.sendBeacon(t,n);return i?p.debug(`Beacon sent ${e.length} events`):p.warn("sendBeacon returned false"),i}catch(e){return p.error("sendBeacon error:",e),!1}}async send(e,t,i=1){try{const n=await this.fetchWithTimeout(e,{method:"POST",headers:{"Content-Type":"application/json"},body:t,keepalive:!0});return n.ok?(p.debug("Request successful:",e),{success:!0,status:n.status}):n.status>=500&&i<this.config.maxRetries?(p.warn(`Server error (${n.status}), retrying...`),await this.delay(this.config.retryDelay*i),this.send(e,t,i+1)):(p.error(`Request failed with status ${n.status}`),{success:!1,status:n.status})}catch(n){return i<this.config.maxRetries?(p.warn(`Network error, retrying (${i}/${this.config.maxRetries})...`),await this.delay(this.config.retryDelay*i),this.send(e,t,i+1)):(p.error("Request failed after retries:",n),{success:!1,error:n})}}async fetchWithTimeout(e,t){const i=new AbortController,n=setTimeout(()=>i.abort(),this.config.timeout);try{return await fetch(e,{...t,signal:i.signal})}finally{clearTimeout(n)}}delay(e){return new Promise(t=>setTimeout(t,e))}}function m(){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 f(e){try{if("undefined"!=typeof localStorage)return localStorage.getItem(e)}catch{}return null}function y(e,t){try{if("undefined"!=typeof localStorage)return localStorage.setItem(e,t),!0}catch{}return!1}function w(e){try{if("undefined"!=typeof sessionStorage)return sessionStorage.getItem(e)}catch{}return null}function b(e,t){try{if("undefined"!=typeof sessionStorage)return sessionStorage.setItem(e,t),!0}catch{}return!1}function v(e,t,i){if("undefined"==typeof document)return null;if(void 0===t){const t=document.cookie.match(new RegExp("(^| )"+e+"=([^;]+)"));return t?t[2]:null}let n="";if(i){const e=new Date;e.setTime(e.getTime()+24*i*60*60*1e3),n="; expires="+e.toUTCString()}return document.cookie=e+"="+t+n+"; path=/; SameSite=Lax",t}function k(e=!1){const t=n;let i=null;return i=e?v(t):f(t),i||(i=m(),e?v(t,i,365):y(t,i)),i}function S(e=!1){const t=n;if(e)v(t,"",-1);else try{localStorage.removeItem(t)}catch{}try{sessionStorage.removeItem(s),sessionStorage.removeItem(r)}catch{}}function T(){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 E(e){try{return e.split("/").pop()?.split("?")[0]||"unknown"}catch{return"unknown"}}function I(e){const t=E(e).split(".");return t.length>1&&t.pop()||"unknown"}function x(e,t=100){return(e.innerText||e.textContent||e.value||"").trim().substring(0,t)}class C{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??a},this.restoreQueue(),this.startFlushTimer(),this.setupUnloadHandlers()}push(e){this.checkRateLimit()?(this.queue.length>=this.config.maxQueueSize&&(p.warn("Queue full, dropping oldest event"),this.queue.shift()),this.queue.push(e),p.debug("Event queued:",e.eventName,`(${this.queue.length} in queue)`),this.queue.length>=this.config.batchSize&&this.flush()):p.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{p.debug(`Flushing ${t.length} events`),this.persistQueue([]);(await this.transport.sendEvents(t)).success?p.debug("Flush successful"):(p.warn("Flush failed, re-queuing events"),this.queue.unshift(...t),this.persistQueue(this.queue))}catch(e){p.error("Flush error:",e)}finally{this.isFlushing=!1}}flushSync(){if(0===this.queue.length)return;const e=this.queue.splice(0,this.queue.length);p.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(){this.queue=[],this.persistQueue([])}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){try{y(this.config.storageKey,JSON.stringify(e))}catch{}}restoreQueue(){try{const e=f(this.config.storageKey);if(e){const t=JSON.parse(e);Array.isArray(t)&&t.length>0&&(this.queue=t,p.debug(`Restored ${t.length} events from storage`))}}catch{}}}class ${constructor(){this.tracker=null}init(e){this.tracker=e}destroy(){this.tracker=null}track(e,t,i){this.tracker&&this.tracker.track(e,t,i)}}class q extends ${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()},history.replaceState=function(...t){e.originalReplaceState.apply(history,t),e.trackPageView()},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 ${constructor(){super(...arguments),this.name="scroll",this.milestonesReached=new Set,this.maxScrollDepth=0,this.pageLoadTime=0,this.scrollTimeout=null,this.boundHandler=null,this.originalPushState=null,this.originalReplaceState=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.setupNavigationReset())}destroy(){this.boundHandler&&"undefined"!=typeof window&&window.removeEventListener("scroll",this.boundHandler),this.scrollTimeout&&clearTimeout(this.scrollTimeout),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()}resetForNavigation(){this.milestonesReached.clear(),this.maxScrollDepth=0,this.pageLoadTime=Date.now()}setupNavigationReset(){if("undefined"==typeof window)return;this.originalPushState=history.pushState,this.originalReplaceState=history.replaceState;const e=this;history.pushState=function(...t){e.originalPushState.apply(history,t),e.resetForNavigation()},history.replaceState=function(...t){e.originalReplaceState.apply(history,t),e.resetForNavigation()},this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler)}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,i=window.pageYOffset||document.documentElement.scrollTop,n=t-e;if(n<=0)return;const s=Math.floor(i/n*100),r=Math.max(0,Math.min(100,s));r>this.maxScrollDepth&&(this.maxScrollDepth=r);for(const e of c)r>=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 P extends ${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:i}of this.listeners)e.removeEventListener(t,i);this.listeners=[],super.destroy()}addListener(e,t,i){e.addEventListener(t,i),this.listeners.push({element:e,event:t,handler:i})}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(i=>{this.addListener(e,i,()=>{const n=`${t}-${e.name}-${i}`;this.formInteractions.has(n)||(this.formInteractions.add(n),this.track("form_interaction","Form Field Interaction",{formId:t,fieldName:e.name,fieldType:e.type,interactionType:i}))})})}});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 i=t.value,n={},s=e.querySelector('[name*="first"], [name*="fname"]'),r=e.querySelector('[name*="last"], [name*="lname"]'),o=e.querySelector('[name*="company"], [name*="organization"]'),a=e.querySelector('[type="tel"], [name*="phone"]');s?.value&&(n.firstName=s.value),r?.value&&(n.lastName=r.value),o?.value&&(n.company=o.value),a?.value&&(n.phone=a.value),this.tracker.identify(i,n)}}class H extends ${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&&(i=t,["BUTTON","A","INPUT"].includes(i.tagName)||i.hasAttribute("data-track-click")||i.classList.contains("track-click"))))return;var i;const n=x(t,100),s=function(e){return{tag:e.tagName?.toLowerCase()||"unknown",id:e.id||"",className:e.className||"",text:x(e,50)}}(t);this.track("button_click","Button Clicked",{buttonText:n,elementType:t.tagName.toLowerCase(),elementId:s.id,elementClass:s.className,href:t.href||void 0})}}class F extends ${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}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))}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.engagementTimeout&&clearTimeout(this.engagementTimeout),super.destroy()}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 O extends ${constructor(){super(...arguments),this.name="downloads",this.trackedDownloads=new Set,this.boundHandler=null,this.originalPushState=null,this.originalReplaceState=null,this.popstateHandler=null}init(e){super.init(e),"undefined"!=typeof document&&(this.boundHandler=this.handleClick.bind(this),document.addEventListener("click",this.boundHandler,!0),this.setupNavigationReset())}destroy(){this.boundHandler&&"undefined"!=typeof document&&document.removeEventListener("click",this.boundHandler,!0),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()}resetForNavigation(){this.trackedDownloads.clear()}setupNavigationReset(){if("undefined"==typeof window)return;this.originalPushState=history.pushState,this.originalReplaceState=history.replaceState;const e=this;history.pushState=function(...t){e.originalPushState.apply(history,t),e.resetForNavigation()},history.replaceState=function(...t){e.originalReplaceState.apply(history,t),e.resetForNavigation()},this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler)}handleClick(e){const t=e.target.closest("a");if(!t||!t.href)return;const i=t.href;(function(e){const t=e.toLowerCase();return d.some(e=>t.includes(e))})(i)&&(this.trackedDownloads.has(i)||(this.trackedDownloads.add(i),this.track("download","File Download",{url:i,filename:E(i),fileType:I(i),linkText:x(t,100)})))}}class N extends ${constructor(){super(...arguments),this.name="exitIntent",this.exitIntentShown=!1,this.pageLoadTime=0,this.boundHandler=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))}destroy(){this.boundHandler&&"undefined"!=typeof document&&document.removeEventListener("mouseleave",this.boundHandler),super.destroy()}handleMouseLeave(e){e.clientY>0||this.exitIntentShown||(this.exitIntentShown=!0,this.track("exit_intent","Exit Intent Detected",{timeOnPage:Date.now()-this.pageLoadTime}))}}class R extends ${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 D extends ${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],i=Math.round(t.loadEventEnd-t.startTime),n=Math.round(t.domContentLoadedEventEnd-t.startTime),s=Math.round(t.responseStart-t.requestStart),r=Math.round(t.domInteractive-t.startTime);this.track("performance","Page Performance",{loadTime:i,domReady:n,ttfb:s,domInteractive:r,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,i=e.domContentLoadedEventEnd-e.navigationStart,n=e.responseStart-e.navigationStart,s=e.domInteractive-e.navigationStart;this.track("performance","Page Performance",{loadTime:t,domReady:i,ttfb:n,domInteractive:s})}this.trackWebVitals()}trackWebVitals(){if("PerformanceObserver"in window){try{const e=new PerformanceObserver(e=>{const t=e.getEntries(),i=t[t.length-1];i&&this.track("performance","Web Vital - LCP",{metric:"LCP",value:Math.round(i.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 ${constructor(){super(...arguments),this.name="popupForms",this.forms=[],this.shownForms=new Set,this.scrollHandler=null,this.exitHandler=null}async init(e){super.init(e),"undefined"!=typeof window&&(this.loadShownForms(),await this.fetchForms(),this.setupTriggers())}destroy(){this.removeTriggers(),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(),i=e.apiEndpoint||"https://api.clianta.online";try{const e=encodeURIComponent(window.location.href),n=await fetch(`${i}/api/public/lead-forms/${t}?url=${e}`);if(!n.ok)return;const s=await n.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":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=>{t.addEventListener("click",()=>this.showForm(e))})}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||"https://api.clianta.online";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 i=document.createElement("div");i.id=`clianta-form-${e._id}`;const n=e.style||{};i.style.cssText=`\n background: ${n.backgroundColor||"#FFFFFF"};\n border-radius: ${n.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,i),t.appendChild(i),document.body.appendChild(t),requestAnimationFrame(()=>{t.style.opacity="1",i.style.transform="translateY(0)",i.style.opacity="1"}),this.setupFormEvents(e,t,i)}escapeHTML(e){const t=document.createElement("div");return t.textContent=e,t.innerHTML}buildFormDOM(e,t){const i=e.style||{},n=i.primaryColor||"#10B981",s=i.textColor||"#18181B",r=document.createElement("button");r.id="clianta-form-close",r.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 ",r.textContent="×",t.appendChild(r);const o=document.createElement("h2");o.style.cssText=`font-size: 20px; font-weight: 700; margin-bottom: 8px; color: ${this.escapeHTML(s)};`,o.textContent=e.headline||"Stay in touch",t.appendChild(o);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 c=document.createElement("form");c.id="clianta-form-element",e.fields.forEach(e=>{const t=document.createElement("div");if(t.style.marginBottom="12px","checkbox"===e.type){const i=document.createElement("label");i.style.cssText=`display: flex; align-items: center; gap: 8px; font-size: 14px; color: ${this.escapeHTML(s)}; cursor: pointer;`;const n=document.createElement("input");n.type="checkbox",n.name=e.name,e.required&&(n.required=!0),n.style.cssText="width: 16px; height: 16px;",i.appendChild(n);const r=document.createTextNode(e.label+" ");if(i.appendChild(r),e.required){const e=document.createElement("span");e.style.color="#EF4444",e.textContent="*",i.appendChild(e)}t.appendChild(i)}else{const i=document.createElement("label");if(i.style.cssText=`display: block; font-size: 14px; font-weight: 500; margin-bottom: 4px; color: ${this.escapeHTML(s)};`,i.textContent=e.label+" ",e.required){const e=document.createElement("span");e.style.color="#EF4444",e.textContent="*",i.appendChild(e)}if(t.appendChild(i),"textarea"===e.type){const i=document.createElement("textarea");i.name=e.name,e.placeholder&&(i.placeholder=e.placeholder),e.required&&(i.required=!0),i.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(i)}else if("select"===e.type){const i=document.createElement("select");if(i.name=e.name,e.required&&(i.required=!0),i.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,i.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),i.appendChild(t)}),t.appendChild(i)}else{const i=document.createElement("input");i.type=e.type,i.name=e.name,e.placeholder&&(i.placeholder=e.placeholder),e.required&&(i.required=!0),i.style.cssText="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; box-sizing: border-box;",t.appendChild(i)}}c.appendChild(t)});const d=document.createElement("button");d.type="submit",d.style.cssText=`\n width: 100%;\n padding: 10px 16px;\n background: ${this.escapeHTML(n)};\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 `,d.textContent=e.submitButtonText||"Subscribe",c.appendChild(d),t.appendChild(c)}setupFormEvents(e,t,i){const n=i.querySelector("#clianta-form-close");n&&n.addEventListener("click",()=>this.closeForm(e._id,t,i)),t.addEventListener("click",n=>{n.target===t&&this.closeForm(e._id,t,i)});const s=i.querySelector("#clianta-form-element");s&&s.addEventListener("submit",async t=>{t.preventDefault(),await this.handleSubmit(e,s,i)})}closeForm(e,t,i){i.style.transform="translateY(20px)",i.style.opacity="0",t.style.opacity="0",setTimeout(()=>{t.remove()},300)}async handleSubmit(e,t,i){if(!this.tracker)return;const n=this.tracker.getConfig().apiEndpoint||"https://api.clianta.online",s=this.tracker.getVisitorId(),r=new FormData(t),o={};r.forEach((e,t)=>{o[t]=e});const a=t.querySelector('button[type="submit"]');a&&(a.disabled=!0,a.innerHTML="Submitting...");try{const t=await fetch(`${n}/api/public/lead-forms/${e._id}/submit`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({visitorId:s,data:o,url:window.location.href})});if((await t.json()).success){i.innerHTML="";const t=document.createElement("div");t.style.cssText="text-align: center; padding: 20px;";const n=document.createElement("div");n.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 r=document.createElementNS("http://www.w3.org/2000/svg","polyline");r.setAttribute("points","20 6 9 17 4 12"),s.appendChild(r),n.appendChild(s);const a=document.createElement("p");a.style.cssText="font-size: 16px; font-weight: 500; color: #18181B;",a.textContent=e.successMessage||"Thank you!",t.appendChild(n),t.appendChild(a),i.appendChild(t),o.email&&this.tracker?.identify(o.email,o),e.redirectUrl&&setTimeout(()=>{window.location.href=e.redirectUrl},1500),setTimeout(()=>{const t=document.getElementById(`clianta-form-overlay-${e._id}`);t&&this.closeForm(e._id,t,i)},2e3)}}catch(t){console.error("[Clianta] Form submit error:",t),a&&(a.disabled=!1,a.innerHTML=e.submitButtonText||"Subscribe")}}}function M(e){switch(e){case"pageView":return new q;case"scroll":return new L;case"forms":return new P;case"clicks":return new H;case"engagement":return new F;case"downloads":return new O;case"exitIntent":return new N;case"errors":return new R;case"performance":return new D;case"popupForms":return new _;default:throw new Error(`Unknown plugin: ${e}`)}}function A(e){try{if("undefined"==typeof localStorage)return!1;const t={state:e,timestamp:Date.now(),version:1};return localStorage.setItem(o,JSON.stringify(t)),!0}catch{return!1}}function V(){try{if("undefined"==typeof localStorage)return null;const e=localStorage.getItem(o);if(!e)return null;const t=JSON.parse(e);return 1!==t.version?(U(),null):t}catch{return null}}function U(){try{return"undefined"!=typeof localStorage&&(localStorage.removeItem(o),!0)}catch{return!1}}class z{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=V();t?(this.state=t.state,this.hasExplicitConsent=!0,p.debug("Loaded stored consent:",this.state)):(this.state=this.config.defaultConsent||{analytics:!0},this.hasExplicitConsent=!1,p.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,A(this.state),p.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,A(this.state),p.info("Consent revoked:",e),this.notifyChange(t)}update(e){const t={...this.state};this.state={...e},this.hasExplicitConsent=!0,A(this.state),p.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=[],U(),p.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!==V()}bufferEvent(e){this.eventBuffer.length>=100&&(p.warn("Consent event buffer full, dropping oldest event"),this.eventBuffer.shift()),this.eventBuffer.push(e),p.debug("Event buffered (waiting for consent):",e.eventName)}flushBuffer(){const e=[...this.eventBuffer];return this.eventBuffer=[],e.length>0&&p.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){p.error("Consent change callback error:",e)}}}class B{constructor(e,n={}){if(this.plugins=[],this.isInitialized=!1,this.pendingIdentify=null,!e)throw new Error("[Clianta] Workspace ID is required");this.workspaceId=e,this.config=function(e={}){return{...i,...e,consent:{...i.consent,...e.consent}}}(n),p.enabled=this.config.debug,p.info(`Initializing SDK v${t}`,{workspaceId:e}),this.consentManager=new z({...this.config.consent,onConsentChange:(e,t)=>{this.onConsentChange(e,t)}}),this.transport=new g({apiEndpoint:this.config.apiEndpoint}),this.queue=new C(this.transport,{batchSize:this.config.batchSize,flushInterval:this.config.flushInterval}),this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),p.debug("IDs created",{visitorId:this.visitorId,sessionId:this.sessionId}),this.initPlugins(),this.isInitialized=!0,p.info("SDK initialized successfully")}createVisitorId(){if(this.config.consent.anonymousMode&&!this.consentManager.hasExplicit()){const e=n+"_anon";let t=w(e);return t||(t="anon_"+m(),b(e,t)),t}if(this.config.cookielessMode){let e=w(n);return e||(e=m(),b(n,e)),e}return k(this.config.useCookies)}createSessionId(){return function(e){const t=s,i=r;let n=w(t);const o=parseInt(w(i)||"0",10),a=Date.now();return(!n||a-o>e)&&(n=m(),b(t,n)),b(i,a.toString()),n}(this.config.sessionTimeout)}onConsentChange(e,t){if(p.debug("Consent changed:",{from:t,to:e}),e.analytics&&!t.analytics){this.config.consent.anonymousMode&&(this.visitorId=k(this.config.useCookies),p.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=M(e),i=t.init(this);i instanceof Promise&&i.catch(t=>{p.error(`Async plugin init failed: ${e}`,t)}),this.plugins.push(t),p.debug(`Plugin loaded: ${e}`)}catch(t){p.error(`Failed to load plugin: ${e}`,t)}}track(e,i,n={}){if(!this.isInitialized)return void p.warn("SDK not initialized, event dropped");const s={workspaceId:this.workspaceId,visitorId:this.visitorId,sessionId:this.sessionId,eventType:e,eventName:i,url:"undefined"!=typeof window?window.location.href:"",referrer:"undefined"!=typeof document&&document.referrer||void 0,properties:n,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"},...T(),timestamp:(new Date).toISOString(),sdkVersion:t};if(!this.consentManager.canTrack())return this.config.consent.waitForConsent?void this.consentManager.bufferEvent(s):void p.debug("Event dropped (no consent):",i);this.queue.push(s),p.debug("Event tracked:",i,n)}page(e,t={}){const i=e||("undefined"!=typeof document?document.title:"Page View");this.track("page_view",i,{...t,path:"undefined"!=typeof window?window.location.pathname:""})}async identify(e,t={}){if(!e)return void p.warn("Email is required for identification");p.info("Identifying visitor:",e);const i=await this.transport.sendIdentify({workspaceId:this.workspaceId,visitorId:this.visitorId,email:e,properties:t});i.success?(p.info("Visitor identified successfully"),this.pendingIdentify=null):(p.error("Failed to identify visitor:",i.error),this.pendingIdentify={email:e,traits:t})}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){p.enabled=e,p.info("Debug mode "+(e?"enabled":"disabled"))}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(){p.info("Resetting visitor data"),S(this.config.useCookies),this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),this.queue.clear()}deleteData(){if(p.info("Deleting all user data (GDPR request)"),this.queue.clear(),this.consentManager.reset(),S(this.config.useCookies),"undefined"!=typeof sessionStorage)try{sessionStorage.removeItem(n),sessionStorage.removeItem(n+"_anon"),sessionStorage.removeItem(s),sessionStorage.removeItem(r)}catch{}if("undefined"!=typeof localStorage)try{localStorage.removeItem(n),localStorage.removeItem(o),localStorage.removeItem(a)}catch{}this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),p.info("All user data deleted")}async destroy(){p.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}}class j{constructor(e,t,i){this.triggers=new Map,this.listeners=new Map,this.apiEndpoint=e,this.workspaceId=t,this.authToken=i}setAuthToken(e){this.authToken=e}async request(e,t={}){const i=`${this.apiEndpoint}${e}`,n={"Content-Type":"application/json",...t.headers||{}};this.authToken&&(n.Authorization=`Bearer ${this.authToken}`);try{const e=await fetch(i,{...t,headers:n}),s=await e.json();return e.ok?{success:!0,data:s.data||s,status:e.status}:{success:!1,error:s.message||"Request failed",status:e.status}}catch(e){return{success:!1,error:e instanceof Error?e.message:"Network error",status:0}}}async getTriggers(){return this.request(`/api/workspaces/${this.workspaceId}/triggers`)}async getTrigger(e){return this.request(`/api/workspaces/${this.workspaceId}/triggers/${e}`)}async createTrigger(e){const t=await this.request(`/api/workspaces/${this.workspaceId}/triggers`,{method:"POST",body:JSON.stringify(e)});return t.success&&t.data?._id&&this.triggers.set(t.data._id,t.data),t}async updateTrigger(e,t){const i=await this.request(`/api/workspaces/${this.workspaceId}/triggers/${e}`,{method:"PUT",body:JSON.stringify(t)});return i.success&&i.data?._id&&this.triggers.set(i.data._id,i.data),i}async deleteTrigger(e){const t=await this.request(`/api/workspaces/${this.workspaceId}/triggers/${e}`,{method:"DELETE"});return t.success&&this.triggers.delete(e),t}async activateTrigger(e){return this.updateTrigger(e,{isActive:!0})}async deactivateTrigger(e){return this.updateTrigger(e,{isActive:!1})}on(e,t){this.listeners.has(e)||this.listeners.set(e,new Set),this.listeners.get(e).add(t),p.debug(`Event listener registered: ${e}`)}off(e,t){const i=this.listeners.get(e);i&&i.delete(t)}emit(e,t){p.debug(`Event emitted: ${e}`,t);const i=this.listeners.get(e);i&&i.forEach(i=>{try{i(t)}catch(t){p.error(`Error in event listener for ${e}:`,t)}})}evaluateConditions(e,t){return!e||0===e.length||e.every(e=>{const i=e.field.includes(".")?this.getNestedValue(t,e.field):t[e.field],n=e.value;switch(e.operator){case"equals":return i===n;case"not_equals":return i!==n;case"contains":return String(i).includes(String(n));case"greater_than":return Number(i)>Number(n);case"less_than":return Number(i)<Number(n);case"in":return Array.isArray(n)&&n.includes(i);case"not_in":return Array.isArray(n)&&!n.includes(i);default:return!1}})}async executeActions(e,t){p.info(`Executing actions for trigger: ${e.name}`);for(const i of e.actions)try{await this.executeAction(i,t)}catch(e){p.error("Failed to execute action:",e)}}async executeAction(e,t){switch(e.type){case"send_email":await this.executeSendEmail(e,t);break;case"webhook":await this.executeWebhook(e,t);break;case"create_task":await this.executeCreateTask(e,t);break;case"update_contact":await this.executeUpdateContact(e,t);break;default:p.warn("Unknown action type:",e)}}async executeSendEmail(e,t){p.debug("Sending email:",e);const i={to:this.replaceVariables(e.to,t),subject:e.subject?this.replaceVariables(e.subject,t):void 0,body:e.body?this.replaceVariables(e.body,t):void 0,templateId:e.templateId,cc:e.cc,bcc:e.bcc,from:e.from,delayMinutes:e.delayMinutes};await this.request(`/api/workspaces/${this.workspaceId}/emails/send`,{method:"POST",body:JSON.stringify(i)})}async executeWebhook(e,t){p.debug("Calling webhook:",e.url);const i=e.body?this.replaceVariables(e.body,t):JSON.stringify(t);await fetch(e.url,{method:e.method,headers:{"Content-Type":"application/json",...e.headers},body:i})}async executeCreateTask(e,t){p.debug("Creating task:",e.title);const i=e.dueDays?new Date(Date.now()+24*e.dueDays*60*60*1e3).toISOString():void 0;await this.request(`/api/workspaces/${this.workspaceId}/tasks`,{method:"POST",body:JSON.stringify({title:this.replaceVariables(e.title,t),description:e.description?this.replaceVariables(e.description,t):void 0,priority:e.priority,dueDate:i,assignedTo:e.assignedTo,relatedContactId:"string"==typeof t.contactId?t.contactId:void 0})})}async executeUpdateContact(e,t){const i=t.contactId||t._id;i?(p.debug("Updating contact:",i),await this.request(`/api/workspaces/${this.workspaceId}/contacts/${i}`,{method:"PUT",body:JSON.stringify(e.updates)})):p.warn("Cannot update contact: no contactId in data")}replaceVariables(e,t){return e.replace(/\{\{([^}]+)\}\}/g,(e,i)=>{const n=this.getNestedValue(t,i.trim());return void 0!==n?String(n):e})}getNestedValue(e,t){return t.split(".").reduce((e,t)=>null!=e&&"object"==typeof e?e[t]:void 0,e)}extractAvailableFields(e,t="",i=3){if(i<=0)return[];const n=[];for(const s in e){if(!e.hasOwnProperty(s))continue;const r=e[s],o=t?`${t}.${s}`:s;if(n.push(o),null!==r&&"object"==typeof r&&!Array.isArray(r)){const e=this.extractAvailableFields(r,o,i-1);n.push(...e)}}return n}getAvailableFields(e){return this.extractAvailableFields(e)}async createEmailTrigger(e){return this.createTrigger({name:e.name,eventType:e.eventType,conditions:e.conditions,actions:[{type:"send_email",to:e.to,subject:e.subject,body:e.body}],isActive:!0})}async createTaskTrigger(e){return this.createTrigger({name:e.name,eventType:e.eventType,conditions:e.conditions,actions:[{type:"create_task",title:e.taskTitle,description:e.taskDescription,priority:e.priority,dueDays:e.dueDays}],isActive:!0})}async createWebhookTrigger(e){return this.createTrigger({name:e.name,eventType:e.eventType,conditions:e.conditions,actions:[{type:"webhook",url:e.webhookUrl,method:e.method||"POST"}],isActive:!0})}}class J{constructor(e,t,i){this.apiEndpoint=e,this.workspaceId=t,this.authToken=i,this.triggers=new j(e,t,i)}setAuthToken(e){this.authToken=e,this.triggers.setAuthToken(e)}validateRequired(e,t,i){if(null==t||""===t)throw new Error(`[CRMClient.${i}] ${e} is required`)}async request(e,t={}){const i=`${this.apiEndpoint}${e}`,n={"Content-Type":"application/json",...t.headers||{}};this.authToken&&(n.Authorization=`Bearer ${this.authToken}`);try{const e=await fetch(i,{...t,headers:n}),s=await e.json();return e.ok?{success:!0,data:s.data||s,status:e.status}:{success:!1,error:s.message||"Request failed",status:e.status}}catch(e){return{success:!1,error:e instanceof Error?e.message:"Network error",status:0}}}async getContacts(e){const t=new URLSearchParams;e?.page&&t.set("page",e.page.toString()),e?.limit&&t.set("limit",e.limit.toString()),e?.search&&t.set("search",e.search),e?.status&&t.set("status",e.status);const i=t.toString(),n=`/api/workspaces/${this.workspaceId}/contacts${i?`?${i}`:""}`;return this.request(n)}async getContact(e){return this.validateRequired("contactId",e,"getContact"),this.request(`/api/workspaces/${this.workspaceId}/contacts/${e}`)}async createContact(e){return this.request(`/api/workspaces/${this.workspaceId}/contacts`,{method:"POST",body:JSON.stringify(e)})}async updateContact(e,t){return this.validateRequired("contactId",e,"updateContact"),this.request(`/api/workspaces/${this.workspaceId}/contacts/${e}`,{method:"PUT",body:JSON.stringify(t)})}async deleteContact(e){return this.validateRequired("contactId",e,"deleteContact"),this.request(`/api/workspaces/${this.workspaceId}/contacts/${e}`,{method:"DELETE"})}async getOpportunities(e){const t=new URLSearchParams;e?.page&&t.set("page",e.page.toString()),e?.limit&&t.set("limit",e.limit.toString()),e?.pipelineId&&t.set("pipelineId",e.pipelineId),e?.stageId&&t.set("stageId",e.stageId);const i=t.toString(),n=`/api/workspaces/${this.workspaceId}/opportunities${i?`?${i}`:""}`;return this.request(n)}async getOpportunity(e){return this.request(`/api/workspaces/${this.workspaceId}/opportunities/${e}`)}async createOpportunity(e){return this.request(`/api/workspaces/${this.workspaceId}/opportunities`,{method:"POST",body:JSON.stringify(e)})}async updateOpportunity(e,t){return this.request(`/api/workspaces/${this.workspaceId}/opportunities/${e}`,{method:"PUT",body:JSON.stringify(t)})}async deleteOpportunity(e){return this.request(`/api/workspaces/${this.workspaceId}/opportunities/${e}`,{method:"DELETE"})}async moveOpportunity(e,t){return this.request(`/api/workspaces/${this.workspaceId}/opportunities/${e}/move`,{method:"POST",body:JSON.stringify({stageId:t})})}async getCompanies(e){const t=new URLSearchParams;e?.page&&t.set("page",e.page.toString()),e?.limit&&t.set("limit",e.limit.toString()),e?.search&&t.set("search",e.search),e?.status&&t.set("status",e.status),e?.industry&&t.set("industry",e.industry);const i=t.toString(),n=`/api/workspaces/${this.workspaceId}/companies${i?`?${i}`:""}`;return this.request(n)}async getCompany(e){return this.request(`/api/workspaces/${this.workspaceId}/companies/${e}`)}async createCompany(e){return this.request(`/api/workspaces/${this.workspaceId}/companies`,{method:"POST",body:JSON.stringify(e)})}async updateCompany(e,t){return this.request(`/api/workspaces/${this.workspaceId}/companies/${e}`,{method:"PUT",body:JSON.stringify(t)})}async deleteCompany(e){return this.request(`/api/workspaces/${this.workspaceId}/companies/${e}`,{method:"DELETE"})}async getCompanyContacts(e,t){const i=new URLSearchParams;t?.page&&i.set("page",t.page.toString()),t?.limit&&i.set("limit",t.limit.toString());const n=i.toString(),s=`/api/workspaces/${this.workspaceId}/companies/${e}/contacts${n?`?${n}`:""}`;return this.request(s)}async getCompanyDeals(e,t){const i=new URLSearchParams;t?.page&&i.set("page",t.page.toString()),t?.limit&&i.set("limit",t.limit.toString());const n=i.toString(),s=`/api/workspaces/${this.workspaceId}/companies/${e}/deals${n?`?${n}`:""}`;return this.request(s)}async getPipelines(){return this.request(`/api/workspaces/${this.workspaceId}/pipelines`)}async getPipeline(e){return this.request(`/api/workspaces/${this.workspaceId}/pipelines/${e}`)}async createPipeline(e){return this.request(`/api/workspaces/${this.workspaceId}/pipelines`,{method:"POST",body:JSON.stringify(e)})}async updatePipeline(e,t){return this.request(`/api/workspaces/${this.workspaceId}/pipelines/${e}`,{method:"PUT",body:JSON.stringify(t)})}async deletePipeline(e){return this.request(`/api/workspaces/${this.workspaceId}/pipelines/${e}`,{method:"DELETE"})}async getTasks(e){const t=new URLSearchParams;e?.page&&t.set("page",e.page.toString()),e?.limit&&t.set("limit",e.limit.toString()),e?.status&&t.set("status",e.status),e?.priority&&t.set("priority",e.priority),e?.contactId&&t.set("contactId",e.contactId),e?.companyId&&t.set("companyId",e.companyId),e?.opportunityId&&t.set("opportunityId",e.opportunityId);const i=t.toString(),n=`/api/workspaces/${this.workspaceId}/tasks${i?`?${i}`:""}`;return this.request(n)}async getTask(e){return this.request(`/api/workspaces/${this.workspaceId}/tasks/${e}`)}async createTask(e){return this.request(`/api/workspaces/${this.workspaceId}/tasks`,{method:"POST",body:JSON.stringify(e)})}async updateTask(e,t){return this.request(`/api/workspaces/${this.workspaceId}/tasks/${e}`,{method:"PUT",body:JSON.stringify(t)})}async completeTask(e){return this.request(`/api/workspaces/${this.workspaceId}/tasks/${e}/complete`,{method:"PATCH"})}async deleteTask(e){return this.request(`/api/workspaces/${this.workspaceId}/tasks/${e}`,{method:"DELETE"})}async getContactActivities(e,t){const i=new URLSearchParams;t?.page&&i.set("page",t.page.toString()),t?.limit&&i.set("limit",t.limit.toString()),t?.type&&i.set("type",t.type);const n=i.toString(),s=`/api/workspaces/${this.workspaceId}/contacts/${e}/activities${n?`?${n}`:""}`;return this.request(s)}async getOpportunityActivities(e,t){const i=new URLSearchParams;t?.page&&i.set("page",t.page.toString()),t?.limit&&i.set("limit",t.limit.toString()),t?.type&&i.set("type",t.type);const n=i.toString(),s=`/api/workspaces/${this.workspaceId}/opportunities/${e}/activities${n?`?${n}`:""}`;return this.request(s)}async createActivity(e){let t;return t=e.opportunityId?`/api/workspaces/${this.workspaceId}/opportunities/${e.opportunityId}/activities`:e.contactId?`/api/workspaces/${this.workspaceId}/contacts/${e.contactId}/activities`:`/api/workspaces/${this.workspaceId}/activities`,this.request(t,{method:"POST",body:JSON.stringify(e)})}async updateActivity(e,t){return this.request(`/api/workspaces/${this.workspaceId}/activities/${e}`,{method:"PATCH",body:JSON.stringify(t)})}async deleteActivity(e){return this.request(`/api/workspaces/${this.workspaceId}/activities/${e}`,{method:"DELETE"})}async logCall(e){return this.createActivity({type:"call",title:("inbound"===e.direction?"Inbound":"Outbound")+" Call",direction:e.direction,duration:e.duration,outcome:e.outcome,description:e.notes,contactId:e.contactId,opportunityId:e.opportunityId})}async logMeeting(e){return this.createActivity({type:"meeting",title:e.title,duration:e.duration,outcome:e.outcome,description:e.notes,contactId:e.contactId,opportunityId:e.opportunityId})}async addNote(e){return this.createActivity({type:"note",title:"Note",description:e.content,contactId:e.contactId,opportunityId:e.opportunityId})}async getEmailTemplates(e){const t=new URLSearchParams;e?.page&&t.set("page",e.page.toString()),e?.limit&&t.set("limit",e.limit.toString());const i=t.toString(),n=`/api/workspaces/${this.workspaceId}/email-templates${i?`?${i}`:""}`;return this.request(n)}async getEmailTemplate(e){return this.request(`/api/workspaces/${this.workspaceId}/email-templates/${e}`)}async createEmailTemplate(e){return this.request(`/api/workspaces/${this.workspaceId}/email-templates`,{method:"POST",body:JSON.stringify(e)})}async updateEmailTemplate(e,t){return this.request(`/api/workspaces/${this.workspaceId}/email-templates/${e}`,{method:"PUT",body:JSON.stringify(t)})}async deleteEmailTemplate(e){return this.request(`/api/workspaces/${this.workspaceId}/email-templates/${e}`,{method:"DELETE"})}async sendEmail(e){return this.request(`/api/workspaces/${this.workspaceId}/emails/send`,{method:"POST",body:JSON.stringify(e)})}async getEventTriggers(){return this.triggers.getTriggers()}async createEventTrigger(e){return this.triggers.createTrigger(e)}async updateEventTrigger(e,t){return this.triggers.updateTrigger(e,t)}async deleteEventTrigger(e){return this.triggers.deleteTrigger(e)}}let W=null;function Q(e,t){return W&&W.getWorkspaceId()===e||(W&&W.destroy(),W=new B(e,t)),W}"undefined"!=typeof window&&(window.clianta=Q,window.Clianta={clianta:Q,Tracker:B,CRMClient:J,ConsentManager:z,EventTriggersManager:j}),e.CRMClient=J,e.ConsentManager=z,e.EventTriggersManager=j,e.SDK_VERSION=t,e.Tracker=B,e.clianta=Q,e.default=Q,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/index.ts","../src/consent/storage.ts","../src/consent/manager.ts","../src/core/tracker.ts","../src/core/crm.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","window","hostname","location","includes","getDefaultApiEndpoint","authToken","debug","autoPageView","plugins","sessionTimeout","batchSize","flushInterval","consent","defaultConsent","analytics","marketing","personalization","waitForConsent","storageKey","anonymousMode","cookieDomain","useCookies","cookielessMode","STORAGE_KEYS","SCROLL_MILESTONES","DOWNLOAD_EXTENSIONS","LOG_PREFIX","LOG_STYLES","info","warn","error","LOG_LEVELS","logger","enabled","currentLevel","isEnabled","shouldLog","level","formatArgs","args","console","toUpperCase","value","log","setLevel","createLogger","Transport","constructor","config","this","maxRetries","retryDelay","timeout","sendEvents","events","url","payload","JSON","stringify","send","sendIdentify","data","sendBeacon","navigator","blob","Blob","type","success","length","attempt","response","fetchWithTimeout","method","headers","body","keepalive","ok","status","delay","options","controller","AbortController","setTimeout","abort","fetch","signal","clearTimeout","ms","Promise","resolve","generateUUID","crypto","randomUUID","replace","c","r","Math","random","toString","getLocalStorage","key","localStorage","getItem","setLocalStorage","setItem","getSessionStorage","sessionStorage","setSessionStorage","cookie","name","days","document","undefined","match","RegExp","expires","date","Date","setTime","getTime","toUTCString","getOrCreateVisitorId","visitorId","resetIds","visitorKey","removeItem","getUTMParams","params","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","maxQueueSize","restoreQueue","startFlushTimer","setupUnloadHandlers","push","event","checkRateLimit","shift","eventName","flush","now","filter","ts","count","splice","persistQueue","unshift","flushSync","clear","destroy","clearInterval","setInterval","addEventListener","visibilityState","stored","parse","Array","isArray","BasePlugin","tracker","init","track","eventType","properties","PageViewPlugin","originalPushState","originalReplaceState","popstateHandler","super","trackPageView","history","pushState","replaceState","self","apply","removeEventListener","title","path","pathname","hash","referrer","viewport","innerWidth","innerHeight","ScrollPlugin","milestonesReached","Set","maxScrollDepth","pageLoadTime","scrollTimeout","boundHandler","handleScroll","bind","passive","trackScrollDepth","windowHeight","documentHeight","documentElement","scrollHeight","scrollTop","pageYOffset","scrollableHeight","scrollPercent","floor","clampedPercent","max","min","milestone","has","add","depth","maxDepth","timeToReach","FormsPlugin","trackedForms","WeakSet","formInteractions","observer","trackAllForms","MutationObserver","observe","childList","subtree","disconnect","querySelectorAll","forEach","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","tagName","hasAttribute","classList","contains","buttonText","elementInfo","tag","toLowerCase","className","text","getElementInfo","elementType","elementId","elementClass","href","EngagementPlugin","engagementStartTime","isEngaged","engagementTimeout","boundMarkEngaged","boundTrackTimeOnPage","markEngaged","trackTimeOnPage","timeToEngage","timeSpent","seconds","engaged","DownloadsPlugin","trackedDownloads","link","closest","lowerUrl","some","ext","isDownloadUrl","filename","fileType","linkText","ExitIntentPlugin","exitIntentShown","test","userAgent","handleMouseLeave","clientY","timeOnPage","ErrorsPlugin","boundErrorHandler","boundRejectionHandler","handleError","handleRejection","message","line","lineno","column","colno","stack","reason","String","PerformancePlugin","trackPerformance","performance","entries","getEntriesByType","navTiming","loadTime","round","loadEventEnd","startTime","domReady","domContentLoadedEventEnd","ttfb","responseStart","requestStart","domInteractive","dns","domainLookupEnd","domainLookupStart","connection","connectEnd","connectStart","transferSize","timing","navigationStart","trackWebVitals","PerformanceObserver","entryList","getEntries","lastEntry","metric","buffered","firstEntry","processingStart","clsValue","entry","hadRecentInput","once","PopupFormsPlugin","forms","shownForms","scrollHandler","exitHandler","loadShownForms","fetchForms","setupTriggers","removeTriggers","saveShownForms","timestamp","getConfig","workspaceId","getWorkspaceId","encodeURIComponent","json","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","submitBtn","submitButtonText","buildFormHTML","fieldsHTML","map","join","closeForm","async","preventDefault","handleSubmit","remove","getVisitorId","formData","FormData","disabled","successWrapper","iconWrapper","svg","createElementNS","setAttribute","polyline","successMessage","redirectUrl","getElementById","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","mergeConfig","consentManager","createVisitorId","sessionId","createSessionId","initPlugins","anonId","sidKey","tsKey","lastActivity","parseInt","getOrCreateSessionId","to","pluginsToLoad","filteredPlugins","p","pluginName","plugin","result","catch","device","screen","language","timezone","width","height","Intl","DateTimeFormat","resolvedOptions","timeZone","utm","toISOString","sdkVersion","page","pageName","getConsentState","getSessionId","deleteData","CRMClient","setAuthToken","token","request","endpoint","getContacts","queryParams","set","limit","query","getContact","contactId","createContact","contact","updateContact","updates","deleteContact","getOpportunities","pipelineId","stageId","getOpportunity","opportunityId","createOpportunity","opportunity","updateOpportunity","deleteOpportunity","moveOpportunity","getCompanies","industry","getCompany","companyId","createCompany","updateCompany","deleteCompany","getCompanyContacts","getCompanyDeals","getPipelines","getPipeline","createPipeline","pipeline","updatePipeline","deletePipeline","getTasks","priority","getTask","taskId","createTask","task","updateTask","completeTask","deleteTask","getContactActivities","getOpportunityActivities","createActivity","activity","updateActivity","activityId","deleteActivity","logCall","direction","duration","outcome","description","notes","logMeeting","addNote","content","globalInstance","clianta","Clianta"],"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/index.ts","../src/consent/storage.ts","../src/consent/manager.ts","../src/core/tracker.ts","../src/core/triggers.ts","../src/core/crm.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,null],"names":["SDK_VERSION","DEFAULT_CONFIG","projectId","apiEndpoint","window","hostname","location","includes","getDefaultApiEndpoint","authToken","debug","autoPageView","plugins","sessionTimeout","batchSize","flushInterval","consent","defaultConsent","analytics","marketing","personalization","waitForConsent","storageKey","anonymousMode","cookieDomain","useCookies","cookielessMode","STORAGE_KEYS","SCROLL_MILESTONES","DOWNLOAD_EXTENSIONS","LOG_PREFIX","LOG_STYLES","info","warn","error","LOG_LEVELS","logger","enabled","currentLevel","isEnabled","shouldLog","level","formatArgs","args","console","toUpperCase","value","log","setLevel","createLogger","Transport","constructor","config","this","maxRetries","retryDelay","timeout","sendEvents","events","url","payload","JSON","stringify","send","sendIdentify","data","sendBeacon","navigator","blob","Blob","type","success","length","attempt","response","fetchWithTimeout","method","headers","body","keepalive","ok","status","delay","options","controller","AbortController","setTimeout","abort","fetch","signal","clearTimeout","ms","Promise","resolve","generateUUID","crypto","randomUUID","replace","c","r","Math","random","toString","getLocalStorage","key","localStorage","getItem","setLocalStorage","setItem","getSessionStorage","sessionStorage","setSessionStorage","cookie","name","days","document","undefined","match","RegExp","expires","date","Date","setTime","getTime","toUTCString","getOrCreateVisitorId","visitorId","resetIds","visitorKey","removeItem","getUTMParams","params","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","stored","parse","Array","isArray","BasePlugin","tracker","init","track","eventType","properties","PageViewPlugin","originalPushState","originalReplaceState","popstateHandler","super","trackPageView","history","pushState","replaceState","self","apply","title","path","pathname","hash","referrer","viewport","innerWidth","innerHeight","ScrollPlugin","milestonesReached","Set","maxScrollDepth","pageLoadTime","scrollTimeout","boundHandler","handleScroll","bind","passive","setupNavigationReset","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","forEach","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","tagName","hasAttribute","classList","contains","buttonText","elementInfo","tag","toLowerCase","className","text","getElementInfo","elementType","elementId","elementClass","href","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","clientY","timeOnPage","ErrorsPlugin","boundErrorHandler","boundRejectionHandler","handleError","handleRejection","message","line","lineno","column","colno","stack","reason","String","PerformancePlugin","boundLoadHandler","observers","boundClsVisibilityHandler","trackPerformance","performance","entries","getEntriesByType","navTiming","loadTime","round","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","loadShownForms","fetchForms","setupTriggers","removeTriggers","saveShownForms","timestamp","getConfig","workspaceId","getWorkspaceId","encodeURIComponent","json","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","getElementById","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","pendingIdentify","mergeConfig","consentManager","createVisitorId","sessionId","createSessionId","initPlugins","anonId","sidKey","tsKey","lastActivity","parseInt","getOrCreateSessionId","to","pluginsToLoad","filteredPlugins","p","pluginName","plugin","result","catch","device","screen","language","timezone","width","height","Intl","DateTimeFormat","resolvedOptions","timeZone","toISOString","sdkVersion","page","pageName","retryPendingIdentify","getConsentState","getSessionId","deleteData","EventTriggersManager","triggers","Map","setAuthToken","token","request","endpoint","getTriggers","getTrigger","triggerId","createTrigger","set","updateTrigger","updates","deleteTrigger","delete","activateTrigger","isActive","deactivateTrigger","on","off","emit","evaluateConditions","conditions","every","condition","fieldValue","getNestedValue","targetValue","operator","Number","executeActions","actions","executeAction","executeSendEmail","executeWebhook","executeCreateTask","executeUpdateContact","replaceVariables","subject","templateId","cc","bcc","delayMinutes","dueDate","dueDays","description","priority","assignedTo","relatedContactId","contactId","template","obj","reduce","current","extractAvailableFields","prefix","hasOwnProperty","fieldPath","nestedFields","getAvailableFields","sampleData","createEmailTrigger","createTaskTrigger","taskTitle","taskDescription","createWebhookTrigger","webhookUrl","CRMClient","validateRequired","param","methodName","getContacts","queryParams","limit","query","getContact","createContact","contact","updateContact","deleteContact","getOpportunities","pipelineId","stageId","getOpportunity","opportunityId","createOpportunity","opportunity","updateOpportunity","deleteOpportunity","moveOpportunity","getCompanies","industry","getCompany","companyId","createCompany","updateCompany","deleteCompany","getCompanyContacts","getCompanyDeals","getPipelines","getPipeline","createPipeline","pipeline","updatePipeline","deletePipeline","getTasks","getTask","taskId","createTask","task","updateTask","completeTask","deleteTask","getContactActivities","getOpportunityActivities","createActivity","activity","updateActivity","activityId","deleteActivity","logCall","direction","duration","outcome","notes","logMeeting","addNote","content","getEmailTemplates","getEmailTemplate","createEmailTemplate","updateEmailTemplate","deleteEmailTemplate","sendEmail","getEventTriggers","createEventTrigger","updateEventTrigger","deleteEventTrigger","globalInstance","clianta","Clianta"],"mappings":"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"}