@clianta/sdk 1.6.1 → 1.6.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +69 -319
- package/dist/angular.cjs.js +32 -7
- package/dist/angular.cjs.js.map +1 -1
- package/dist/angular.d.ts +2 -3
- package/dist/angular.esm.js +32 -7
- package/dist/angular.esm.js.map +1 -1
- package/dist/clianta.cjs.js +32 -4
- package/dist/clianta.cjs.js.map +1 -1
- package/dist/clianta.esm.js +32 -4
- package/dist/clianta.esm.js.map +1 -1
- package/dist/clianta.umd.js +32 -4
- package/dist/clianta.umd.js.map +1 -1
- package/dist/clianta.umd.min.js +2 -2
- package/dist/clianta.umd.min.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/react.cjs.js +51 -55
- package/dist/react.cjs.js.map +1 -1
- package/dist/react.d.ts +17 -39
- package/dist/react.esm.js +51 -55
- package/dist/react.esm.js.map +1 -1
- package/dist/svelte.cjs.js +32 -5
- package/dist/svelte.cjs.js.map +1 -1
- package/dist/svelte.d.ts +2 -1
- package/dist/svelte.esm.js +32 -5
- package/dist/svelte.esm.js.map +1 -1
- package/dist/vue.cjs.js +32 -6
- package/dist/vue.cjs.js.map +1 -1
- package/dist/vue.d.ts +2 -2
- package/dist/vue.esm.js +32 -6
- package/dist/vue.esm.js.map +1 -1
- package/package.json +1 -1
package/dist/clianta.umd.min.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Clianta SDK v1.6.
|
|
2
|
+
* Clianta SDK v1.6.2
|
|
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.6.1",n={projectId:"",apiEndpoint:"undefined"!=typeof process&&process.env?.NEXT_PUBLIC_CLIANTA_API_ENDPOINT?process.env.NEXT_PUBLIC_CLIANTA_API_ENDPOINT:"undefined"!=typeof process&&process.env?.VITE_CLIANTA_API_ENDPOINT?process.env.VITE_CLIANTA_API_ENDPOINT:"undefined"!=typeof process&&process.env?.REACT_APP_CLIANTA_API_ENDPOINT?process.env.REACT_APP_CLIANTA_API_ENDPOINT:"undefined"!=typeof process&&process.env?.CLIANTA_API_ENDPOINT?process.env.CLIANTA_API_ENDPOINT:"http://localhost:5000",debug:!1,autoPageView:!0,plugins:["pageView","forms","scroll","clicks","engagement","downloads","exitIntent"],sessionTimeout:18e5,batchSize:10,flushInterval:5e3,consent:{defaultConsent:{analytics:!0,marketing:!1,personalization:!1},waitForConsent:!1,storageKey:"mb_consent",anonymousMode:!1},cookieDomain:"",useCookies:!1,cookielessMode:!1,persistMode:"session"},i="mb_vid",s="mb_sid",o="mb_st",r="mb_consent",a="mb_queue",d=[25,50,75,100],c=[".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",n=e;const i=e=>!!n&&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 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 f{constructor(e){this.config={apiEndpoint:e.apiEndpoint,maxRetries:e.maxRetries??3,retryDelay:e.retryDelay??1e3,timeout:e.timeout??1e4}}async sendEvents(e){const t=`${this.config.apiEndpoint}/api/public/track/event`,n=JSON.stringify({events:e});return this.send(t,n)}async sendIdentify(e){const t=`${this.config.apiEndpoint}/api/public/track/identify`;try{const n=await this.fetchWithTimeout(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e),keepalive:!0}),i=await n.json().catch(()=>({}));return n.ok?(p.debug("Identify successful, contactId:",i.contactId),{success:!0,status:n.status,contactId:i.contactId??void 0}):(n.status>=500?p.warn(`Identify server error (${n.status})`):p.error(`Identify failed with status ${n.status}:`,i.message),{success:!1,status:n.status})}catch(e){return p.error("Identify request failed:",e),{success:!1,error:e}}}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 fetchData(e,t){const n=new URL(`${this.config.apiEndpoint}${e}`);t&&Object.entries(t).forEach(([e,t])=>{null!=t&&n.searchParams.set(e,t)});try{const t=await this.fetchWithTimeout(n.toString(),{method:"GET",headers:{Accept:"application/json"}});if(t.ok){const n=await t.json();return p.debug("Fetch successful:",e),{success:!0,data:n.data??n,status:t.status}}return p.error(`Fetch failed with status ${t.status}`),{success:!1,status:t.status}}catch(e){return p.error("Fetch request failed:",e),{success:!1,error:e}}}async send(e,t,n=1){try{const i=await this.fetchWithTimeout(e,{method:"POST",headers:{"Content-Type":"application/json"},body:t,keepalive:!0});return i.ok?(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 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 g(e){try{if("undefined"!=typeof sessionStorage)return sessionStorage.getItem(e)}catch{}return null}function w(e,t){try{if("undefined"!=typeof sessionStorage)return sessionStorage.setItem(e,t),!0}catch{}return!1}function y(e,t,n){if("undefined"==typeof document)return null;if(void 0===t){const t=document.cookie.match(new RegExp("(^| )"+e+"=([^;]+)"));return t?t[2]:null}let i="";if(n){const e=new Date;e.setTime(e.getTime()+24*n*60*60*1e3),i="; expires="+e.toUTCString()}const s="undefined"!=typeof location&&"https:"===location.protocol?"; Secure":"";return document.cookie=e+"="+t+i+"; path=/; SameSite=Lax"+s,t}function v(e=!1){const t=i;let n=null;return n=e?y(t):function(e){try{if("undefined"!=typeof localStorage)return localStorage.getItem(e)}catch{}return null}(t),n||(n=m(),e?y(t,n,365):function(e,t){try{if("undefined"!=typeof localStorage)return localStorage.setItem(e,t),!0}catch{}}(t,n)),n}function b(e=!1){const t=i;if(e)y(t,"",-1);else try{localStorage.removeItem(t)}catch{}try{sessionStorage.removeItem(s),sessionStorage.removeItem(o)}catch{}}function E(){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 k(e){try{return e.split("/").pop()?.split("?")[0]||"unknown"}catch{return"unknown"}}function x(e){const t=k(e).split(".");return t.length>1&&t.pop()||"unknown"}function I(e,t=100){return(e.innerText||e.textContent||e.value||"").trim().substring(0,t)}class T{constructor(e,t={}){this.queue=[],this.flushTimer=null,this.isFlushing=!1,this.eventTimestamps=[],this.boundBeforeUnload=null,this.boundVisibilityChange=null,this.boundPageHide=null,this.transport=e,this.config={batchSize:t.batchSize??10,flushInterval:t.flushInterval??5e3,maxQueueSize:t.maxQueueSize??1e3,storageKey:t.storageKey??a},this.persistMode=t.persistMode||"session",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(){if(this.queue=[],this.persistQueue([]),"local"===this.persistMode&&"undefined"!=typeof localStorage)try{localStorage.removeItem(this.config.storageKey)}catch{}}destroy(){this.flushTimer&&(clearInterval(this.flushTimer),this.flushTimer=null),"undefined"!=typeof window&&(this.boundBeforeUnload&&window.removeEventListener("beforeunload",this.boundBeforeUnload),this.boundVisibilityChange&&window.removeEventListener("visibilitychange",this.boundVisibilityChange),this.boundPageHide&&window.removeEventListener("pagehide",this.boundPageHide))}startFlushTimer(){this.flushTimer&&clearInterval(this.flushTimer),this.flushTimer=setInterval(()=>{this.flush()},this.config.flushInterval)}setupUnloadHandlers(){"undefined"!=typeof window&&(this.boundBeforeUnload=()=>this.flushSync(),window.addEventListener("beforeunload",this.boundBeforeUnload),this.boundVisibilityChange=()=>{"hidden"===document.visibilityState&&this.flushSync()},window.addEventListener("visibilitychange",this.boundVisibilityChange),this.boundPageHide=()=>this.flushSync(),window.addEventListener("pagehide",this.boundPageHide))}persistQueue(e){if("none"!==this.persistMode)try{const t=JSON.stringify(e);if("local"===this.persistMode&&"undefined"!=typeof localStorage)try{localStorage.setItem(this.config.storageKey,t)}catch{w(this.config.storageKey,t)}else w(this.config.storageKey,t)}catch{}}restoreQueue(){try{let e=null;if("local"===this.persistMode&&"undefined"!=typeof localStorage&&(e=localStorage.getItem(this.config.storageKey)),e||(e=g(this.config.storageKey)),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 S{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 C extends S{constructor(){super(...arguments),this.name="pageView",this.originalPushState=null,this.originalReplaceState=null,this.popstateHandler=null}init(e){if(super.init(e),this.trackPageView(),"undefined"!=typeof window){this.originalPushState=history.pushState,this.originalReplaceState=history.replaceState;const e=this;history.pushState=function(...t){e.originalPushState.apply(history,t),e.trackPageView(),window.dispatchEvent(new Event("clianta:navigation"))},history.replaceState=function(...t){e.originalReplaceState.apply(history,t),e.trackPageView(),window.dispatchEvent(new Event("clianta:navigation"))},this.popstateHandler=()=>this.trackPageView(),window.addEventListener("popstate",this.popstateHandler)}}destroy(){this.originalPushState&&(history.pushState=this.originalPushState,this.originalPushState=null),this.originalReplaceState&&(history.replaceState=this.originalReplaceState,this.originalReplaceState=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}trackPageView(){"undefined"!=typeof window&&"undefined"!=typeof document&&this.track("page_view","Page Viewed",{title:document.title,path:window.location.pathname,search:window.location.search,hash:window.location.hash,referrer:document.referrer||"direct",viewport:`${window.innerWidth}x${window.innerHeight}`})}}class H extends S{constructor(){super(...arguments),this.name="scroll",this.milestonesReached=new Set,this.maxScrollDepth=0,this.pageLoadTime=0,this.scrollTimeout=null,this.boundHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),this.pageLoadTime=Date.now(),"undefined"!=typeof window&&(this.boundHandler=this.handleScroll.bind(this),window.addEventListener("scroll",this.boundHandler,{passive:!0}),this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler))}destroy(){this.boundHandler&&"undefined"!=typeof window&&window.removeEventListener("scroll",this.boundHandler),this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}resetForNavigation(){this.milestonesReached.clear(),this.maxScrollDepth=0,this.pageLoadTime=Date.now()}handleScroll(){this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.scrollTimeout=setTimeout(()=>this.trackScrollDepth(),150)}trackScrollDepth(){if("undefined"==typeof window||"undefined"==typeof document)return;const e=window.innerHeight,t=document.documentElement.scrollHeight,n=window.pageYOffset||document.documentElement.scrollTop,i=t-e;if(i<=0)return;const s=Math.floor(n/i*100),o=Math.max(0,Math.min(100,s));o>this.maxScrollDepth&&(this.maxScrollDepth=o);for(const e of d)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 L extends S{constructor(){super(...arguments),this.name="forms",this.trackedForms=new WeakSet,this.formInteractions=new Set,this.observer=null,this.listeners=[]}init(e){super.init(e),"undefined"!=typeof document&&(this.trackAllForms(),"undefined"!=typeof MutationObserver&&(this.observer=new MutationObserver(()=>this.trackAllForms()),this.observer.observe(document.body,{childList:!0,subtree:!0})))}destroy(){this.observer&&(this.observer.disconnect(),this.observer=null);for(const{element:e,event:t,handler:n}of this.listeners)e.removeEventListener(t,n);this.listeners=[],super.destroy()}addListener(e,t,n){e.addEventListener(t,n),this.listeners.push({element:e,event:t,handler:n})}trackAllForms(){document.querySelectorAll("form").forEach(e=>{this.setupFormTracking(e)})}setupFormTracking(e){if(this.trackedForms.has(e))return;this.trackedForms.add(e);const t=e.id||e.name||`form-${Math.random().toString(36).substr(2,9)}`;this.track("form_view","Form Viewed",{formId:t,action:e.action,method:e.method,fieldCount:e.elements.length}),Array.from(e.elements).forEach(e=>{if(e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement){if(!e.name||"submit"===e.type||"button"===e.type)return;["focus","blur","change"].forEach(n=>{this.addListener(e,n,()=>{const i=`${t}-${e.name}-${n}`;this.formInteractions.has(i)||(this.formInteractions.add(i),this.track("form_interaction","Form Field Interaction",{formId:t,fieldName:e.name,fieldType:e.type,interactionType:n}))})})}});this.addListener(e,"submit",()=>{this.track("form_submit","Form Submitted",{formId:t,action:e.action,method:e.method}),this.autoIdentify(e)})}autoIdentify(e){const t=e.querySelector('input[type="email"], input[name*="email"]');if(!t?.value||!this.tracker)return;const n=t.value,i={},s=e.querySelector('[name*="first"], [name*="fname"]'),o=e.querySelector('[name*="last"], [name*="lname"]'),r=e.querySelector('[name*="company"], [name*="organization"]'),a=e.querySelector('[type="tel"], [name*="phone"]');s?.value&&(i.firstName=s.value),o?.value&&(i.lastName=o.value),r?.value&&(i.company=r.value),a?.value&&(i.phone=a.value),this.tracker.identify(n,i)}}class F extends S{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=I(t,100),s=function(e){return{tag:e.tagName?.toLowerCase()||"unknown",id:e.id||"",className:e.className||"",text:I(e,50)}}(t);this.track("button_click","Button Clicked",{buttonText:i,elementType:t.tagName.toLowerCase(),elementId:s.id,elementClass:s.className,href:t.href||void 0,x:Math.round(e.clientX/window.innerWidth*100),y:Math.round(e.clientY/window.innerHeight*100),viewportWidth:window.innerWidth,viewportHeight:window.innerHeight})}}class P extends S{constructor(){super(...arguments),this.name="engagement",this.pageLoadTime=0,this.engagementStartTime=0,this.isEngaged=!1,this.engagementTimeout=null,this.boundMarkEngaged=null,this.boundTrackTimeOnPage=null,this.boundVisibilityHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),this.pageLoadTime=Date.now(),this.engagementStartTime=Date.now(),"undefined"!=typeof document&&"undefined"!=typeof window&&(this.boundMarkEngaged=this.markEngaged.bind(this),this.boundTrackTimeOnPage=this.trackTimeOnPage.bind(this),this.boundVisibilityHandler=()=>{"hidden"===document.visibilityState?this.trackTimeOnPage():this.engagementStartTime=Date.now()},["mousemove","keydown","touchstart","scroll"].forEach(e=>{document.addEventListener(e,this.boundMarkEngaged,{passive:!0})}),window.addEventListener("beforeunload",this.boundTrackTimeOnPage),document.addEventListener("visibilitychange",this.boundVisibilityHandler),this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler))}destroy(){this.boundMarkEngaged&&"undefined"!=typeof document&&["mousemove","keydown","touchstart","scroll"].forEach(e=>{document.removeEventListener(e,this.boundMarkEngaged)}),this.boundTrackTimeOnPage&&"undefined"!=typeof window&&window.removeEventListener("beforeunload",this.boundTrackTimeOnPage),this.boundVisibilityHandler&&"undefined"!=typeof document&&document.removeEventListener("visibilitychange",this.boundVisibilityHandler),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),this.engagementTimeout&&clearTimeout(this.engagementTimeout),super.destroy()}resetForNavigation(){this.pageLoadTime=Date.now(),this.engagementStartTime=Date.now(),this.isEngaged=!1,this.engagementTimeout&&(clearTimeout(this.engagementTimeout),this.engagementTimeout=null)}markEngaged(){this.isEngaged||(this.isEngaged=!0,this.track("engagement","User Engaged",{timeToEngage:Date.now()-this.pageLoadTime})),this.engagementTimeout&&clearTimeout(this.engagementTimeout),this.engagementTimeout=setTimeout(()=>{this.isEngaged=!1},3e4)}trackTimeOnPage(){const e=Math.floor((Date.now()-this.engagementStartTime)/1e3);e>0&&this.track("time_on_page","Time Spent",{seconds:e,engaged:this.isEngaged})}}class _ extends S{constructor(){super(...arguments),this.name="downloads",this.trackedDownloads=new Set,this.boundHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),"undefined"!=typeof document&&(this.boundHandler=this.handleClick.bind(this),document.addEventListener("click",this.boundHandler,!0)),"undefined"!=typeof window&&(this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler))}destroy(){this.boundHandler&&"undefined"!=typeof document&&document.removeEventListener("click",this.boundHandler,!0),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}resetForNavigation(){this.trackedDownloads.clear()}handleClick(e){const t=e.target.closest("a");if(!t||!t.href)return;const n=t.href;(function(e){const t=e.toLowerCase();return c.some(e=>t.includes(e))})(n)&&(this.trackedDownloads.has(n)||(this.trackedDownloads.add(n),this.track("download","File Download",{url:n,filename:k(n),fileType:x(n),linkText:I(t,100)})))}}class M extends S{constructor(){super(...arguments),this.name="exitIntent",this.exitIntentShown=!1,this.pageLoadTime=0,this.boundHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),this.pageLoadTime=Date.now(),"undefined"!=typeof navigator&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)||("undefined"!=typeof document&&(this.boundHandler=this.handleMouseLeave.bind(this),document.addEventListener("mouseleave",this.boundHandler)),"undefined"!=typeof window&&(this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler)))}destroy(){this.boundHandler&&"undefined"!=typeof document&&document.removeEventListener("mouseleave",this.boundHandler),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}resetForNavigation(){this.exitIntentShown=!1,this.pageLoadTime=Date.now()}handleMouseLeave(e){e.clientY>0||this.exitIntentShown||(this.exitIntentShown=!0,this.track("exit_intent","Exit Intent Detected",{timeOnPage:Date.now()-this.pageLoadTime}))}}class q extends S{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 A extends S{constructor(){super(...arguments),this.name="performance",this.boundLoadHandler=null,this.observers=[],this.boundClsVisibilityHandler=null}init(e){super.init(e),"undefined"!=typeof window&&(this.boundLoadHandler=()=>{setTimeout(()=>this.trackPerformance(),100)},window.addEventListener("load",this.boundLoadHandler))}destroy(){this.boundLoadHandler&&"undefined"!=typeof window&&window.removeEventListener("load",this.boundLoadHandler);for(const e of this.observers)e.disconnect();this.observers=[],this.boundClsVisibilityHandler&&"undefined"!=typeof window&&window.removeEventListener("visibilitychange",this.boundClsVisibilityHandler),super.destroy()}trackPerformance(){if("undefined"==typeof performance)return;const e=performance.getEntriesByType("navigation");if(e.length>0){const t=e[0],n=Math.round(t.loadEventEnd-t.startTime),i=Math.round(t.domContentLoadedEventEnd-t.startTime),s=Math.round(t.responseStart-t.requestStart),o=Math.round(t.domInteractive-t.startTime);this.track("performance","Page Performance",{loadTime:n,domReady:i,ttfb:s,domInteractive:o,dns:Math.round(t.domainLookupEnd-t.domainLookupStart),connection:Math.round(t.connectEnd-t.connectStart),transferSize:t.transferSize})}else{const e=performance.timing;if(!e)return;const t=e.loadEventEnd-e.navigationStart,n=e.domContentLoadedEventEnd-e.navigationStart,i=e.responseStart-e.navigationStart,s=e.domInteractive-e.navigationStart;this.track("performance","Page Performance",{loadTime:t,domReady:n,ttfb:i,domInteractive:s})}this.trackWebVitals()}trackWebVitals(){if("PerformanceObserver"in window){try{const e=new PerformanceObserver(e=>{const t=e.getEntries(),n=t[t.length-1];n&&this.track("performance","Web Vital - LCP",{metric:"LCP",value:Math.round(n.startTime)})});e.observe({type:"largest-contentful-paint",buffered:!0}),this.observers.push(e)}catch{}try{const e=new PerformanceObserver(e=>{const t=e.getEntries()[0];t&&this.track("performance","Web Vital - FID",{metric:"FID",value:Math.round(t.processingStart-t.startTime)})});e.observe({type:"first-input",buffered:!0}),this.observers.push(e)}catch{}try{let e=0;const t=new PerformanceObserver(t=>{t.getEntries().forEach(t=>{t.hadRecentInput||(e+=t.value||0)})});t.observe({type:"layout-shift",buffered:!0}),this.observers.push(t),this.boundClsVisibilityHandler=()=>{"hidden"===document.visibilityState&&e>0&&this.track("performance","Web Vital - CLS",{metric:"CLS",value:Math.round(1e3*e)/1e3})},window.addEventListener("visibilitychange",this.boundClsVisibilityHandler,{once:!0})}catch{}}}}class $ extends S{constructor(){super(...arguments),this.name="popupForms",this.forms=[],this.shownForms=new Set,this.scrollHandler=null,this.exitHandler=null,this.delayTimers=[],this.clickTriggerListeners=[]}async init(e){super.init(e),"undefined"!=typeof window&&(this.loadShownForms(),await this.fetchForms(),this.setupTriggers())}destroy(){this.removeTriggers();for(const e of this.delayTimers)clearTimeout(e);this.delayTimers=[];for(const{element:e,handler:t}of this.clickTriggerListeners)e.removeEventListener("click",t);this.clickTriggerListeners=[],super.destroy()}loadShownForms(){try{const e=localStorage.getItem("clianta_shown_forms");if(e){const t=JSON.parse(e);this.shownForms=new Set(t.forms||[])}}catch(e){}}saveShownForms(){try{localStorage.setItem("clianta_shown_forms",JSON.stringify({forms:Array.from(this.shownForms),timestamp:Date.now()}))}catch(e){}}async fetchForms(){if(!this.tracker)return;const e=this.tracker.getConfig(),t=this.tracker.getWorkspaceId(),n=e.apiEndpoint||"http://localhost:5000";try{const e=encodeURIComponent(window.location.href),i=await fetch(`${n}/api/public/lead-forms/${t}?url=${e}`);if(!i.ok)return;const s=await i.json();s.success&&Array.isArray(s.data)&&(this.forms=s.data.filter(e=>this.shouldShowForm(e)))}catch(e){console.error("[Clianta] Failed to fetch forms:",e)}}shouldShowForm(e){if("once_per_visitor"===e.showFrequency){if(this.shownForms.has(e._id))return!1}else if("once_per_session"===e.showFrequency){const t=`clianta_form_${e._id}_shown`;if(sessionStorage.getItem(t))return!1}return!0}setupTriggers(){this.forms.forEach(e=>{switch(e.trigger.type){case"delay":this.delayTimers.push(setTimeout(()=>this.showForm(e),1e3*(e.trigger.value||5)));break;case"scroll":this.setupScrollTrigger(e);break;case"exit_intent":this.setupExitIntentTrigger(e);break;case"click":this.setupClickTrigger(e)}})}setupScrollTrigger(e){const t=e.trigger.value||50;this.scrollHandler=()=>{window.scrollY/(document.documentElement.scrollHeight-window.innerHeight)*100>=t&&(this.showForm(e),this.scrollHandler&&window.removeEventListener("scroll",this.scrollHandler))},window.addEventListener("scroll",this.scrollHandler,{passive:!0})}setupExitIntentTrigger(e){this.exitHandler=t=>{t.clientY<=0&&(this.showForm(e),this.exitHandler&&document.removeEventListener("mouseout",this.exitHandler))},document.addEventListener("mouseout",this.exitHandler)}setupClickTrigger(e){if(!e.trigger.selector)return;document.querySelectorAll(e.trigger.selector).forEach(t=>{const n=()=>this.showForm(e);t.addEventListener("click",n),this.clickTriggerListeners.push({element:t,handler:n})})}removeTriggers(){this.scrollHandler&&window.removeEventListener("scroll",this.scrollHandler),this.exitHandler&&document.removeEventListener("mouseout",this.exitHandler)}async showForm(e){this.shouldShowForm(e)&&(this.shownForms.add(e._id),this.saveShownForms(),sessionStorage.setItem(`clianta_form_${e._id}_shown`,"true"),await this.trackFormView(e._id),this.renderForm(e))}async trackFormView(e){if(!this.tracker)return;const t=this.tracker.getConfig().apiEndpoint||"http://localhost:5000";try{await fetch(`${t}/api/public/lead-forms/${e}/view`,{method:"POST",headers:{"Content-Type":"application/json"}})}catch(e){}}renderForm(e){const t=document.createElement("div");t.id=`clianta-form-overlay-${e._id}`,t.style.cssText="\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.5);\n z-index: 999998;\n display: flex;\n align-items: center;\n justify-content: center;\n opacity: 0;\n transition: opacity 0.3s ease;\n ";const n=document.createElement("div");n.id=`clianta-form-${e._id}`;const i=e.style||{};n.style.cssText=`\n background: ${i.backgroundColor||"#FFFFFF"};\n border-radius: ${i.borderRadius||12}px;\n padding: 24px;\n max-width: 400px;\n width: 90%;\n box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);\n transform: translateY(20px);\n opacity: 0;\n transition: all 0.3s ease;\n `,this.buildFormDOM(e,n),t.appendChild(n),document.body.appendChild(t),requestAnimationFrame(()=>{t.style.opacity="1",n.style.transform="translateY(0)",n.style.opacity="1"}),this.setupFormEvents(e,t,n)}escapeHTML(e){const t=document.createElement("div");return t.textContent=e,t.innerHTML}buildFormDOM(e,t){const n=e.style||{},i=n.primaryColor||"#10B981",s=n.textColor||"#18181B",o=document.createElement("button");o.id="clianta-form-close",o.style.cssText="\n position: absolute;\n top: 12px;\n right: 12px;\n background: none;\n border: none;\n font-size: 20px;\n cursor: pointer;\n color: #71717A;\n padding: 4px;\n ",o.textContent="×",t.appendChild(o);const r=document.createElement("h2");r.style.cssText=`font-size: 20px; font-weight: 700; margin-bottom: 8px; color: ${this.escapeHTML(s)};`,r.textContent=e.headline||"Stay in touch",t.appendChild(r);const a=document.createElement("p");a.style.cssText="font-size: 14px; color: #71717A; margin-bottom: 16px;",a.textContent=e.subheadline||"Get the latest updates",t.appendChild(a);const d=document.createElement("form");d.id="clianta-form-element",e.fields.forEach(e=>{const t=document.createElement("div");if(t.style.marginBottom="12px","checkbox"===e.type){const n=document.createElement("label");n.style.cssText=`display: flex; align-items: center; gap: 8px; font-size: 14px; color: ${this.escapeHTML(s)}; cursor: pointer;`;const i=document.createElement("input");i.type="checkbox",i.name=e.name,e.required&&(i.required=!0),i.style.cssText="width: 16px; height: 16px;",n.appendChild(i);const o=document.createTextNode(e.label+" ");if(n.appendChild(o),e.required){const e=document.createElement("span");e.style.color="#EF4444",e.textContent="*",n.appendChild(e)}t.appendChild(n)}else{const n=document.createElement("label");if(n.style.cssText=`display: block; font-size: 14px; font-weight: 500; margin-bottom: 4px; color: ${this.escapeHTML(s)};`,n.textContent=e.label+" ",e.required){const e=document.createElement("span");e.style.color="#EF4444",e.textContent="*",n.appendChild(e)}if(t.appendChild(n),"textarea"===e.type){const n=document.createElement("textarea");n.name=e.name,e.placeholder&&(n.placeholder=e.placeholder),e.required&&(n.required=!0),n.style.cssText="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; resize: vertical; min-height: 80px; box-sizing: border-box;",t.appendChild(n)}else if("select"===e.type){const n=document.createElement("select");if(n.name=e.name,e.required&&(n.required=!0),n.style.cssText="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; box-sizing: border-box; background: white; cursor: pointer;",e.placeholder){const t=document.createElement("option");t.value="",t.textContent=e.placeholder,t.disabled=!0,t.selected=!0,n.appendChild(t)}e.options&&Array.isArray(e.options)&&e.options.forEach(e=>{const t=document.createElement("option");"string"==typeof e?(t.value=e,t.textContent=e):(t.value=e.value,t.textContent=e.label),n.appendChild(t)}),t.appendChild(n)}else{const n=document.createElement("input");n.type=e.type,n.name=e.name,e.placeholder&&(n.placeholder=e.placeholder),e.required&&(n.required=!0),n.style.cssText="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; box-sizing: border-box;",t.appendChild(n)}}d.appendChild(t)});const c=document.createElement("button");c.type="submit",c.style.cssText=`\n width: 100%;\n padding: 10px 16px;\n background: ${this.escapeHTML(i)};\n color: white;\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n margin-top: 8px;\n `,c.textContent=e.submitButtonText||"Subscribe",d.appendChild(c),t.appendChild(d)}setupFormEvents(e,t,n){const i=n.querySelector("#clianta-form-close");i&&i.addEventListener("click",()=>this.closeForm(e._id,t,n)),t.addEventListener("click",i=>{i.target===t&&this.closeForm(e._id,t,n)});const s=n.querySelector("#clianta-form-element");s&&s.addEventListener("submit",async t=>{t.preventDefault(),await this.handleSubmit(e,s,n)})}closeForm(e,t,n){n.style.transform="translateY(20px)",n.style.opacity="0",t.style.opacity="0",setTimeout(()=>{t.remove()},300)}async handleSubmit(e,t,n){if(!this.tracker)return;const i=this.tracker.getConfig().apiEndpoint||"http://localhost:5000",s=this.tracker.getVisitorId(),o=new FormData(t),r={};o.forEach((e,t)=>{r[t]=e});const a=t.querySelector('button[type="submit"]');a&&(a.disabled=!0,a.textContent="Submitting...");try{const t=await fetch(`${i}/api/public/lead-forms/${e._id}/submit`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({visitorId:s,data:r,url:window.location.href})});if((await t.json()).success){n.innerHTML="";const t=document.createElement("div");t.style.cssText="text-align: center; padding: 20px;";const i=document.createElement("div");i.style.cssText="width: 48px; height: 48px; background: #10B981; border-radius: 50%; margin: 0 auto 16px; display: flex; align-items: center; justify-content: center;";const s=document.createElementNS("http://www.w3.org/2000/svg","svg");s.setAttribute("width","24"),s.setAttribute("height","24"),s.setAttribute("viewBox","0 0 24 24"),s.setAttribute("fill","none"),s.setAttribute("stroke","white"),s.setAttribute("stroke-width","2");const o=document.createElementNS("http://www.w3.org/2000/svg","polyline");o.setAttribute("points","20 6 9 17 4 12"),s.appendChild(o),i.appendChild(s);const a=document.createElement("p");if(a.style.cssText="font-size: 16px; font-weight: 500; color: #18181B;",a.textContent=e.successMessage||"Thank you!",t.appendChild(i),t.appendChild(a),n.appendChild(t),r.email&&this.tracker?.identify(r.email,r),e.redirectUrl)try{const t=new URL(e.redirectUrl,window.location.origin),n=t.origin===window.location.origin,i="https:"===t.protocol||"http:"===t.protocol;n||i?setTimeout(()=>{window.location.href=t.href},1500):console.warn("[Clianta] Blocked unsafe redirect URL:",e.redirectUrl)}catch{console.warn("[Clianta] Invalid redirect URL:",e.redirectUrl)}setTimeout(()=>{const t=document.getElementById(`clianta-form-overlay-${e._id}`);t&&this.closeForm(e._id,t,n)},2e3)}}catch(t){console.error("[Clianta] Form submit error:",t),a&&(a.disabled=!1,a.textContent=e.submitButtonText||"Subscribe")}}}function N(e){switch(e){case"pageView":return new C;case"scroll":return new H;case"forms":return new L;case"clicks":return new F;case"engagement":return new P;case"downloads":return new _;case"exitIntent":return new M;case"errors":return new q;case"performance":return new A;case"popupForms":return new $;default:throw new Error(`Unknown plugin: ${e}`)}}function D(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 R(){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?(O(),null):t}catch{return null}}function O(){try{return"undefined"!=typeof localStorage&&(localStorage.removeItem(r),!0)}catch{return!1}}class V{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=R();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,D(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,D(this.state),p.info("Consent revoked:",e),this.notifyChange(t)}update(e){const t={...this.state};this.state={...e},this.hasExplicitConsent=!0,D(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=[],O(),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!==R()}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 z{constructor(e,i={}){if(this.plugins=[],this.isInitialized=!1,this.contactId=null,this.groupId=null,this.pendingIdentify=null,this.eventSchemas=new Map,this.middlewares=[],this.readyCallbacks=[],!e)throw new Error("[Clianta] Workspace ID is required");this.workspaceId=e,this.config=function(e={}){return{...n,...e,consent:{...n.consent,...e.consent}}}(i),p.enabled=this.config.debug,p.info(`Initializing SDK v${t}`,{workspaceId:e}),this.consentManager=new V({...this.config.consent,onConsentChange:(e,t)=>{this.onConsentChange(e,t)}}),this.transport=new f({apiEndpoint:this.config.apiEndpoint}),this.queue=new T(this.transport,{batchSize:this.config.batchSize,flushInterval:this.config.flushInterval}),this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),p.debug("IDs created",{visitorId:this.visitorId,sessionId:this.sessionId}),!this.config.apiEndpoint.startsWith("http://")||"undefined"==typeof window||window.location.hostname.includes("localhost")||window.location.hostname.includes("127.0.0.1")||p.warn("apiEndpoint uses HTTP — events will be sent unencrypted. Use HTTPS in production."),this.initPlugins(),this.isInitialized=!0,p.info("SDK initialized successfully");for(const e of this.readyCallbacks)try{e()}catch(e){p.error("onReady callback error:",e)}this.readyCallbacks=[]}createVisitorId(){if(this.config.consent.anonymousMode&&!this.consentManager.hasExplicit()){const e=i+"_anon";let t=g(e);return t||(t="anon_"+m(),w(e,t)),t}if(this.config.cookielessMode){let e=g(i);return e||(e=m(),w(i,e)),e}return v(this.config.useCookies)}createSessionId(){return function(e){const t=s,n=o;let i=g(t);const r=parseInt(g(n)||"0",10),a=Date.now();return(!i||a-r>e)&&(i=m(),w(t,i)),w(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=v(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=N(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,eventId:m(),websiteDomain:"undefined"!=typeof window?window.location.hostname:void 0},device:"undefined"==typeof window||"undefined"==typeof navigator?{userAgent:"unknown",screen:"unknown",language:"unknown",timezone:"unknown"}:{userAgent:navigator.userAgent,screen:`${screen.width}x${screen.height}`,language:navigator.language,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone||"unknown"},...E(),timestamp:(new Date).toISOString(),sdkVersion:t};if(this.contactId&&(s.contactId=this.contactId),this.groupId&&(s.groupId=this.groupId),this.validateEventSchema(e,i),!this.consentManager.canTrack())return this.config.consent.waitForConsent?void this.consentManager.bufferEvent(s):void p.debug("Event dropped (no consent):",n);this.runMiddleware(s,()=>{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 p.warn("Email is required for identification"),null;if(!function(e){return!("string"!=typeof e||!e)&&/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e)}(e))return p.warn("Invalid email format, identification skipped:",e),null;p.info("Identifying visitor:",e);const n=await this.transport.sendIdentify({workspaceId:this.workspaceId,visitorId:this.visitorId,email:e,properties:t});return n.success?(p.info("Visitor identified successfully, contactId:",n.contactId),this.contactId=n.contactId??null,this.pendingIdentify=null,this.contactId):(p.error("Failed to identify visitor:",n.error),this.pendingIdentify={email:e,traits:t},null)}async retryPendingIdentify(){if(!this.pendingIdentify)return;const{email:e,traits:t}=this.pendingIdentify;this.pendingIdentify=null,await this.identify(e,t)}consent(e){this.consentManager.update(e)}getConsentState(){return this.consentManager.getState()}debug(e){p.enabled=e,p.info("Debug mode "+(e?"enabled":"disabled"))}group(e,t={}){e?(this.groupId=e,p.info("Visitor grouped:",e),this.track("group","Group Identified",{groupId:e,...t})):p.warn("groupId is required for group()")}async alias(e,t){if(!e)return p.warn("newId is required for alias()"),!1;const n=t||this.visitorId;p.info("Aliasing visitor:",{from:n,to:e});try{const t=`${this.config.apiEndpoint}/api/public/track/alias`,i=await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workspaceId:this.workspaceId,previousId:n,newId:e})});return i.ok?(p.info("Alias successful"),!0):(p.error("Alias failed:",i.status),!1)}catch(e){return p.error("Alias request failed:",e),!1}}screen(e,t={}){this.track("screen_view",e,{...t,screenName:e})}use(e){this.middlewares.push(e),p.debug("Middleware registered")}runMiddleware(e,t){if(0===this.middlewares.length)return void t();let n=0;const i=this.middlewares,s=()=>{if(n++,n<i.length)try{i[n](e,s)}catch(e){p.error("Middleware error:",e),t()}else t()};try{i[0](e,s)}catch(e){p.error("Middleware error:",e),t()}}onReady(e){if(this.isInitialized)try{e()}catch(e){p.error("onReady callback error:",e)}else this.readyCallbacks.push(e)}isReady(){return this.isInitialized}registerEventSchema(e,t){this.eventSchemas.set(e,t),p.debug("Event schema registered:",e)}validateEventSchema(e,t){if(!this.config.debug)return;const n=this.eventSchemas.get(e);if(n)for(const[i,s]of Object.entries(n)){const n=t[i];if(void 0===n){p.warn(`[Schema] Missing property "${i}" for event type "${e}"`);continue}let o=!1;switch(s){case"string":o="string"==typeof n;break;case"number":o="number"==typeof n;break;case"boolean":o="boolean"==typeof n;break;case"object":o="object"==typeof n&&!Array.isArray(n);break;case"array":o=Array.isArray(n)}o||p.warn(`[Schema] Property "${i}" for event "${e}" expected ${s}, got ${typeof n}`)}}getVisitorId(){return this.visitorId}getSessionId(){return this.sessionId}getWorkspaceId(){return this.workspaceId}getConfig(){return{...this.config}}async flush(){await this.retryPendingIdentify(),await this.queue.flush()}reset(){p.info("Resetting visitor data"),b(this.config.useCookies),this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),this.contactId=null,this.pendingIdentify=null,this.queue.clear()}deleteData(){if(p.info("Deleting all user data (GDPR request)"),this.queue.clear(),this.consentManager.reset(),b(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 createContact(e){return this.publicCrmRequest("/api/public/crm/contacts","POST",{workspaceId:this.workspaceId,...e})}async updateContact(e,t){return this.publicCrmRequest(`/api/public/crm/contacts/${e}`,"PUT",{workspaceId:this.workspaceId,...t})}async submitForm(e,t){const n={...t,metadata:{...t.metadata,visitorId:this.visitorId,sessionId:this.sessionId,pageUrl:"undefined"!=typeof window?window.location.href:void 0,referrer:"undefined"!=typeof document&&document.referrer||void 0}};return this.publicCrmRequest(`/api/public/crm/forms/${e}/submit`,"POST",n)}async logActivity(e){return this.publicCrmRequest("/api/public/crm/activities","POST",{workspaceId:this.workspaceId,...e})}async createOpportunity(e){return this.publicCrmRequest("/api/public/crm/opportunities","POST",{workspaceId:this.workspaceId,...e})}async publicCrmRequest(e,t,n){const i=`${this.config.apiEndpoint}${e}`;try{const s=await fetch(i,{method:t,headers:{"Content-Type":"application/json"},body:JSON.stringify(n)}),o=await s.json().catch(()=>({}));return s.ok?(p.debug(`Public CRM ${t} ${e} succeeded`),{success:!0,data:o.data??o,status:s.status}):(p.error(`Public CRM ${t} ${e} failed (${s.status}):`,o.message),{success:!1,error:o.message,status:s.status})}catch(n){return p.error(`Public CRM ${t} ${e} error:`,n),{success:!1,error:n.message}}}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}}let B=null;function U(e,t){return B&&B.getWorkspaceId()===e||(B&&B.destroy(),B=new z(e,t)),B}"undefined"!=typeof window&&(window.clianta=U,window.Clianta={clianta:U,Tracker:z,ConsentManager:V}),e.ConsentManager=V,e.SDK_VERSION=t,e.Tracker=z,e.clianta=U,e.default=U,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.6.2",n={projectId:"",apiEndpoint:"undefined"!=typeof process&&process.env?.NEXT_PUBLIC_CLIANTA_API_ENDPOINT?process.env.NEXT_PUBLIC_CLIANTA_API_ENDPOINT:"undefined"!=typeof process&&process.env?.VITE_CLIANTA_API_ENDPOINT?process.env.VITE_CLIANTA_API_ENDPOINT:"undefined"!=typeof process&&process.env?.REACT_APP_CLIANTA_API_ENDPOINT?process.env.REACT_APP_CLIANTA_API_ENDPOINT:"undefined"!=typeof process&&process.env?.CLIANTA_API_ENDPOINT?process.env.CLIANTA_API_ENDPOINT:"http://localhost:5000",debug:!1,autoPageView:!0,plugins:["pageView","forms","scroll","clicks","engagement","downloads","exitIntent","errors","performance"],sessionTimeout:18e5,batchSize:10,flushInterval:5e3,consent:{defaultConsent:{analytics:!0,marketing:!1,personalization:!1},waitForConsent:!1,storageKey:"mb_consent",anonymousMode:!1},cookieDomain:"",useCookies:!1,cookielessMode:!1,persistMode:"session"},i="mb_vid",s="mb_sid",o="mb_st",r="mb_consent",a="mb_queue",d=[25,50,75,100],c=[".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",n=e;const i=e=>!!n&&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 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 f{constructor(e){this.config={apiEndpoint:e.apiEndpoint,maxRetries:e.maxRetries??3,retryDelay:e.retryDelay??1e3,timeout:e.timeout??1e4}}async sendEvents(e){const t=`${this.config.apiEndpoint}/api/public/track/event`,n=JSON.stringify({events:e});return this.send(t,n)}async sendIdentify(e){const t=`${this.config.apiEndpoint}/api/public/track/identify`;try{const n=await this.fetchWithTimeout(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e),keepalive:!0}),i=await n.json().catch(()=>({}));return n.ok?(p.debug("Identify successful, contactId:",i.contactId),{success:!0,status:n.status,contactId:i.contactId??void 0}):(n.status>=500?p.warn(`Identify server error (${n.status})`):p.error(`Identify failed with status ${n.status}:`,i.message),{success:!1,status:n.status})}catch(e){return p.error("Identify request failed:",e),{success:!1,error:e}}}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 fetchData(e,t){const n=new URL(`${this.config.apiEndpoint}${e}`);t&&Object.entries(t).forEach(([e,t])=>{null!=t&&n.searchParams.set(e,t)});try{const t=await this.fetchWithTimeout(n.toString(),{method:"GET",headers:{Accept:"application/json"}});if(t.ok){const n=await t.json();return p.debug("Fetch successful:",e),{success:!0,data:n.data??n,status:t.status}}return p.error(`Fetch failed with status ${t.status}`),{success:!1,status:t.status}}catch(e){return p.error("Fetch request failed:",e),{success:!1,error:e}}}async send(e,t,n=1){try{const i=await this.fetchWithTimeout(e,{method:"POST",headers:{"Content-Type":"application/json"},body:t,keepalive:!0});return i.ok?(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 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 g(e){try{if("undefined"!=typeof sessionStorage)return sessionStorage.getItem(e)}catch{}return null}function w(e,t){try{if("undefined"!=typeof sessionStorage)return sessionStorage.setItem(e,t),!0}catch{}return!1}function y(e,t,n){if("undefined"==typeof document)return null;if(void 0===t){const t=document.cookie.match(new RegExp("(^| )"+e+"=([^;]+)"));return t?t[2]:null}let i="";if(n){const e=new Date;e.setTime(e.getTime()+24*n*60*60*1e3),i="; expires="+e.toUTCString()}const s="undefined"!=typeof location&&"https:"===location.protocol?"; Secure":"";return document.cookie=e+"="+t+i+"; path=/; SameSite=Lax"+s,t}function v(e=!1){const t=i;let n=null;return n=e?y(t):function(e){try{if("undefined"!=typeof localStorage)return localStorage.getItem(e)}catch{}return null}(t),n||(n=m(),e?y(t,n,365):function(e,t){try{if("undefined"!=typeof localStorage)return localStorage.setItem(e,t),!0}catch{}}(t,n)),n}function b(e=!1){const t=i;if(e)y(t,"",-1);else try{localStorage.removeItem(t)}catch{}try{sessionStorage.removeItem(s),sessionStorage.removeItem(o)}catch{}}function E(){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 k(e){try{return e.split("/").pop()?.split("?")[0]||"unknown"}catch{return"unknown"}}function x(e){const t=k(e).split(".");return t.length>1&&t.pop()||"unknown"}function I(e,t=100){return(e.innerText||e.textContent||e.value||"").trim().substring(0,t)}class T{constructor(e,t={}){this.queue=[],this.flushTimer=null,this.isFlushing=!1,this.eventTimestamps=[],this.boundBeforeUnload=null,this.boundVisibilityChange=null,this.boundPageHide=null,this.transport=e,this.config={batchSize:t.batchSize??10,flushInterval:t.flushInterval??5e3,maxQueueSize:t.maxQueueSize??1e3,storageKey:t.storageKey??a},this.persistMode=t.persistMode||"session",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(){if(this.queue=[],this.persistQueue([]),"local"===this.persistMode&&"undefined"!=typeof localStorage)try{localStorage.removeItem(this.config.storageKey)}catch{}}destroy(){this.flushTimer&&(clearInterval(this.flushTimer),this.flushTimer=null),"undefined"!=typeof window&&(this.boundBeforeUnload&&window.removeEventListener("beforeunload",this.boundBeforeUnload),this.boundVisibilityChange&&window.removeEventListener("visibilitychange",this.boundVisibilityChange),this.boundPageHide&&window.removeEventListener("pagehide",this.boundPageHide))}startFlushTimer(){this.flushTimer&&clearInterval(this.flushTimer),this.flushTimer=setInterval(()=>{this.flush()},this.config.flushInterval)}setupUnloadHandlers(){"undefined"!=typeof window&&(this.boundBeforeUnload=()=>this.flushSync(),window.addEventListener("beforeunload",this.boundBeforeUnload),this.boundVisibilityChange=()=>{"hidden"===document.visibilityState&&this.flushSync()},window.addEventListener("visibilitychange",this.boundVisibilityChange),this.boundPageHide=()=>this.flushSync(),window.addEventListener("pagehide",this.boundPageHide))}persistQueue(e){if("none"!==this.persistMode)try{const t=JSON.stringify(e);if("local"===this.persistMode&&"undefined"!=typeof localStorage)try{localStorage.setItem(this.config.storageKey,t)}catch{w(this.config.storageKey,t)}else w(this.config.storageKey,t)}catch{}}restoreQueue(){try{let e=null;if("local"===this.persistMode&&"undefined"!=typeof localStorage&&(e=localStorage.getItem(this.config.storageKey)),e||(e=g(this.config.storageKey)),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 S{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 C extends S{constructor(){super(...arguments),this.name="pageView",this.originalPushState=null,this.originalReplaceState=null,this.popstateHandler=null}init(e){if(super.init(e),this.trackPageView(),"undefined"!=typeof window){this.originalPushState=history.pushState,this.originalReplaceState=history.replaceState;const e=this;history.pushState=function(...t){e.originalPushState.apply(history,t),e.trackPageView(),window.dispatchEvent(new Event("clianta:navigation"))},history.replaceState=function(...t){e.originalReplaceState.apply(history,t),e.trackPageView(),window.dispatchEvent(new Event("clianta:navigation"))},this.popstateHandler=()=>this.trackPageView(),window.addEventListener("popstate",this.popstateHandler)}}destroy(){this.originalPushState&&(history.pushState=this.originalPushState,this.originalPushState=null),this.originalReplaceState&&(history.replaceState=this.originalReplaceState,this.originalReplaceState=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}trackPageView(){"undefined"!=typeof window&&"undefined"!=typeof document&&this.track("page_view","Page Viewed",{title:document.title,path:window.location.pathname,search:window.location.search,hash:window.location.hash,referrer:document.referrer||"direct",viewport:`${window.innerWidth}x${window.innerHeight}`})}}class H extends S{constructor(){super(...arguments),this.name="scroll",this.milestonesReached=new Set,this.maxScrollDepth=0,this.pageLoadTime=0,this.scrollTimeout=null,this.boundHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),this.pageLoadTime=Date.now(),"undefined"!=typeof window&&(this.boundHandler=this.handleScroll.bind(this),window.addEventListener("scroll",this.boundHandler,{passive:!0}),this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler))}destroy(){this.boundHandler&&"undefined"!=typeof window&&window.removeEventListener("scroll",this.boundHandler),this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}resetForNavigation(){this.milestonesReached.clear(),this.maxScrollDepth=0,this.pageLoadTime=Date.now()}handleScroll(){this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.scrollTimeout=setTimeout(()=>this.trackScrollDepth(),150)}trackScrollDepth(){if("undefined"==typeof window||"undefined"==typeof document)return;const e=window.innerHeight,t=document.documentElement.scrollHeight,n=window.pageYOffset||document.documentElement.scrollTop,i=t-e;if(i<=0)return;const s=Math.floor(n/i*100),o=Math.max(0,Math.min(100,s));o>this.maxScrollDepth&&(this.maxScrollDepth=o);for(const e of d)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 L extends S{constructor(){super(...arguments),this.name="forms",this.trackedForms=new WeakSet,this.formInteractions=new Set,this.observer=null,this.listeners=[]}init(e){super.init(e),"undefined"!=typeof document&&(this.trackAllForms(),"undefined"!=typeof MutationObserver&&(this.observer=new MutationObserver(()=>this.trackAllForms()),this.observer.observe(document.body,{childList:!0,subtree:!0})))}destroy(){this.observer&&(this.observer.disconnect(),this.observer=null);for(const{element:e,event:t,handler:n}of this.listeners)e.removeEventListener(t,n);this.listeners=[],super.destroy()}addListener(e,t,n){e.addEventListener(t,n),this.listeners.push({element:e,event:t,handler:n})}trackAllForms(){document.querySelectorAll("form").forEach(e=>{this.setupFormTracking(e)})}setupFormTracking(e){if(this.trackedForms.has(e))return;this.trackedForms.add(e);const t=e.id||e.name||`form-${Math.random().toString(36).substr(2,9)}`;this.track("form_view","Form Viewed",{formId:t,action:e.action,method:e.method,fieldCount:e.elements.length}),Array.from(e.elements).forEach(e=>{if(e instanceof HTMLInputElement||e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement){if(!e.name||"submit"===e.type||"button"===e.type)return;["focus","blur","change"].forEach(n=>{this.addListener(e,n,()=>{const i=`${t}-${e.name}-${n}`;this.formInteractions.has(i)||(this.formInteractions.add(i),this.track("form_interaction","Form Field Interaction",{formId:t,fieldName:e.name,fieldType:e.type,interactionType:n}))})})}});this.addListener(e,"submit",()=>{this.track("form_submit","Form Submitted",{formId:t,action:e.action,method:e.method}),this.autoIdentify(e)})}autoIdentify(e){const t=e.querySelector('input[type="email"], input[name*="email"]');if(!t?.value||!this.tracker)return;const n=t.value,i={},s=e.querySelector('[name*="first"], [name*="fname"]'),o=e.querySelector('[name*="last"], [name*="lname"]'),r=e.querySelector('[name*="company"], [name*="organization"]'),a=e.querySelector('[type="tel"], [name*="phone"]');s?.value&&(i.firstName=s.value),o?.value&&(i.lastName=o.value),r?.value&&(i.company=r.value),a?.value&&(i.phone=a.value),this.tracker.identify(n,i)}}class F extends S{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=I(t,100),s=function(e){return{tag:e.tagName?.toLowerCase()||"unknown",id:e.id||"",className:e.className||"",text:I(e,50)}}(t);this.track("button_click","Button Clicked",{buttonText:i,elementType:t.tagName.toLowerCase(),elementId:s.id,elementClass:s.className,href:t.href||void 0,x:Math.round(e.clientX/window.innerWidth*100),y:Math.round(e.clientY/window.innerHeight*100),viewportWidth:window.innerWidth,viewportHeight:window.innerHeight})}}class P extends S{constructor(){super(...arguments),this.name="engagement",this.pageLoadTime=0,this.engagementStartTime=0,this.isEngaged=!1,this.engagementTimeout=null,this.boundMarkEngaged=null,this.boundTrackTimeOnPage=null,this.boundVisibilityHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),this.pageLoadTime=Date.now(),this.engagementStartTime=Date.now(),"undefined"!=typeof document&&"undefined"!=typeof window&&(this.boundMarkEngaged=this.markEngaged.bind(this),this.boundTrackTimeOnPage=this.trackTimeOnPage.bind(this),this.boundVisibilityHandler=()=>{"hidden"===document.visibilityState?this.trackTimeOnPage():this.engagementStartTime=Date.now()},["mousemove","keydown","touchstart","scroll"].forEach(e=>{document.addEventListener(e,this.boundMarkEngaged,{passive:!0})}),window.addEventListener("beforeunload",this.boundTrackTimeOnPage),document.addEventListener("visibilitychange",this.boundVisibilityHandler),this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler))}destroy(){this.boundMarkEngaged&&"undefined"!=typeof document&&["mousemove","keydown","touchstart","scroll"].forEach(e=>{document.removeEventListener(e,this.boundMarkEngaged)}),this.boundTrackTimeOnPage&&"undefined"!=typeof window&&window.removeEventListener("beforeunload",this.boundTrackTimeOnPage),this.boundVisibilityHandler&&"undefined"!=typeof document&&document.removeEventListener("visibilitychange",this.boundVisibilityHandler),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),this.engagementTimeout&&clearTimeout(this.engagementTimeout),super.destroy()}resetForNavigation(){this.pageLoadTime=Date.now(),this.engagementStartTime=Date.now(),this.isEngaged=!1,this.engagementTimeout&&(clearTimeout(this.engagementTimeout),this.engagementTimeout=null)}markEngaged(){this.isEngaged||(this.isEngaged=!0,this.track("engagement","User Engaged",{timeToEngage:Date.now()-this.pageLoadTime})),this.engagementTimeout&&clearTimeout(this.engagementTimeout),this.engagementTimeout=setTimeout(()=>{this.isEngaged=!1},3e4)}trackTimeOnPage(){const e=Math.floor((Date.now()-this.engagementStartTime)/1e3);e>0&&this.track("time_on_page","Time Spent",{seconds:e,engaged:this.isEngaged})}}class _ extends S{constructor(){super(...arguments),this.name="downloads",this.trackedDownloads=new Set,this.boundHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),"undefined"!=typeof document&&(this.boundHandler=this.handleClick.bind(this),document.addEventListener("click",this.boundHandler,!0)),"undefined"!=typeof window&&(this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler))}destroy(){this.boundHandler&&"undefined"!=typeof document&&document.removeEventListener("click",this.boundHandler,!0),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}resetForNavigation(){this.trackedDownloads.clear()}handleClick(e){const t=e.target.closest("a");if(!t||!t.href)return;const n=t.href;(function(e){const t=e.toLowerCase();return c.some(e=>t.includes(e))})(n)&&(this.trackedDownloads.has(n)||(this.trackedDownloads.add(n),this.track("download","File Download",{url:n,filename:k(n),fileType:x(n),linkText:I(t,100)})))}}class M extends S{constructor(){super(...arguments),this.name="exitIntent",this.exitIntentShown=!1,this.pageLoadTime=0,this.boundHandler=null,this.navigationHandler=null,this.popstateHandler=null}init(e){super.init(e),this.pageLoadTime=Date.now(),"undefined"!=typeof navigator&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)||("undefined"!=typeof document&&(this.boundHandler=this.handleMouseLeave.bind(this),document.addEventListener("mouseleave",this.boundHandler)),"undefined"!=typeof window&&(this.navigationHandler=()=>this.resetForNavigation(),window.addEventListener("clianta:navigation",this.navigationHandler),this.popstateHandler=()=>this.resetForNavigation(),window.addEventListener("popstate",this.popstateHandler)))}destroy(){this.boundHandler&&"undefined"!=typeof document&&document.removeEventListener("mouseleave",this.boundHandler),this.navigationHandler&&"undefined"!=typeof window&&(window.removeEventListener("clianta:navigation",this.navigationHandler),this.navigationHandler=null),this.popstateHandler&&"undefined"!=typeof window&&(window.removeEventListener("popstate",this.popstateHandler),this.popstateHandler=null),super.destroy()}resetForNavigation(){this.exitIntentShown=!1,this.pageLoadTime=Date.now()}handleMouseLeave(e){e.clientY>0||this.exitIntentShown||(this.exitIntentShown=!0,this.track("exit_intent","Exit Intent Detected",{timeOnPage:Date.now()-this.pageLoadTime}))}}class A extends S{constructor(){super(...arguments),this.name="errors",this.boundErrorHandler=null,this.boundRejectionHandler=null}init(e){super.init(e),"undefined"!=typeof window&&(this.boundErrorHandler=this.handleError.bind(this),this.boundRejectionHandler=this.handleRejection.bind(this),window.addEventListener("error",this.boundErrorHandler),window.addEventListener("unhandledrejection",this.boundRejectionHandler))}destroy(){"undefined"!=typeof window&&(this.boundErrorHandler&&window.removeEventListener("error",this.boundErrorHandler),this.boundRejectionHandler&&window.removeEventListener("unhandledrejection",this.boundRejectionHandler)),super.destroy()}handleError(e){this.track("error","JavaScript Error",{message:e.message,filename:e.filename,line:e.lineno,column:e.colno,stack:e.error?.stack?.substring(0,500)})}handleRejection(e){this.track("error","Unhandled Promise Rejection",{reason:String(e.reason).substring(0,200)})}}class q extends S{constructor(){super(...arguments),this.name="performance",this.boundLoadHandler=null,this.observers=[],this.boundClsVisibilityHandler=null}init(e){super.init(e),"undefined"!=typeof window&&(this.boundLoadHandler=()=>{setTimeout(()=>this.trackPerformance(),100)},window.addEventListener("load",this.boundLoadHandler))}destroy(){this.boundLoadHandler&&"undefined"!=typeof window&&window.removeEventListener("load",this.boundLoadHandler);for(const e of this.observers)e.disconnect();this.observers=[],this.boundClsVisibilityHandler&&"undefined"!=typeof window&&window.removeEventListener("visibilitychange",this.boundClsVisibilityHandler),super.destroy()}trackPerformance(){if("undefined"==typeof performance)return;const e=performance.getEntriesByType("navigation");if(e.length>0){const t=e[0],n=Math.round(t.loadEventEnd-t.startTime),i=Math.round(t.domContentLoadedEventEnd-t.startTime),s=Math.round(t.responseStart-t.requestStart),o=Math.round(t.domInteractive-t.startTime);this.track("performance","Page Performance",{loadTime:n,domReady:i,ttfb:s,domInteractive:o,dns:Math.round(t.domainLookupEnd-t.domainLookupStart),connection:Math.round(t.connectEnd-t.connectStart),transferSize:t.transferSize})}else{const e=performance.timing;if(!e)return;const t=e.loadEventEnd-e.navigationStart,n=e.domContentLoadedEventEnd-e.navigationStart,i=e.responseStart-e.navigationStart,s=e.domInteractive-e.navigationStart;this.track("performance","Page Performance",{loadTime:t,domReady:n,ttfb:i,domInteractive:s})}this.trackWebVitals()}trackWebVitals(){if("PerformanceObserver"in window){try{const e=new PerformanceObserver(e=>{const t=e.getEntries(),n=t[t.length-1];n&&this.track("performance","Web Vital - LCP",{metric:"LCP",value:Math.round(n.startTime)})});e.observe({type:"largest-contentful-paint",buffered:!0}),this.observers.push(e)}catch{}try{const e=new PerformanceObserver(e=>{const t=e.getEntries()[0];t&&this.track("performance","Web Vital - FID",{metric:"FID",value:Math.round(t.processingStart-t.startTime)})});e.observe({type:"first-input",buffered:!0}),this.observers.push(e)}catch{}try{let e=0;const t=new PerformanceObserver(t=>{t.getEntries().forEach(t=>{t.hadRecentInput||(e+=t.value||0)})});t.observe({type:"layout-shift",buffered:!0}),this.observers.push(t),this.boundClsVisibilityHandler=()=>{"hidden"===document.visibilityState&&e>0&&this.track("performance","Web Vital - CLS",{metric:"CLS",value:Math.round(1e3*e)/1e3})},window.addEventListener("visibilitychange",this.boundClsVisibilityHandler,{once:!0})}catch{}}}}class $ extends S{constructor(){super(...arguments),this.name="popupForms",this.forms=[],this.shownForms=new Set,this.scrollHandler=null,this.exitHandler=null,this.delayTimers=[],this.clickTriggerListeners=[]}async init(e){super.init(e),"undefined"!=typeof window&&(this.loadShownForms(),await this.fetchForms(),this.setupTriggers())}destroy(){this.removeTriggers();for(const e of this.delayTimers)clearTimeout(e);this.delayTimers=[];for(const{element:e,handler:t}of this.clickTriggerListeners)e.removeEventListener("click",t);this.clickTriggerListeners=[],super.destroy()}loadShownForms(){try{const e=localStorage.getItem("clianta_shown_forms");if(e){const t=JSON.parse(e);this.shownForms=new Set(t.forms||[])}}catch(e){}}saveShownForms(){try{localStorage.setItem("clianta_shown_forms",JSON.stringify({forms:Array.from(this.shownForms),timestamp:Date.now()}))}catch(e){}}async fetchForms(){if(!this.tracker)return;const e=this.tracker.getConfig(),t=this.tracker.getWorkspaceId(),n=e.apiEndpoint||"http://localhost:5000";try{const e=encodeURIComponent(window.location.href),i=await fetch(`${n}/api/public/lead-forms/${t}?url=${e}`);if(!i.ok)return;const s=await i.json();s.success&&Array.isArray(s.data)&&(this.forms=s.data.filter(e=>this.shouldShowForm(e)))}catch(e){console.error("[Clianta] Failed to fetch forms:",e)}}shouldShowForm(e){if("once_per_visitor"===e.showFrequency){if(this.shownForms.has(e._id))return!1}else if("once_per_session"===e.showFrequency){const t=`clianta_form_${e._id}_shown`;if(sessionStorage.getItem(t))return!1}return!0}setupTriggers(){this.forms.forEach(e=>{switch(e.trigger.type){case"delay":this.delayTimers.push(setTimeout(()=>this.showForm(e),1e3*(e.trigger.value||5)));break;case"scroll":this.setupScrollTrigger(e);break;case"exit_intent":this.setupExitIntentTrigger(e);break;case"click":this.setupClickTrigger(e)}})}setupScrollTrigger(e){const t=e.trigger.value||50;this.scrollHandler=()=>{window.scrollY/(document.documentElement.scrollHeight-window.innerHeight)*100>=t&&(this.showForm(e),this.scrollHandler&&window.removeEventListener("scroll",this.scrollHandler))},window.addEventListener("scroll",this.scrollHandler,{passive:!0})}setupExitIntentTrigger(e){this.exitHandler=t=>{t.clientY<=0&&(this.showForm(e),this.exitHandler&&document.removeEventListener("mouseout",this.exitHandler))},document.addEventListener("mouseout",this.exitHandler)}setupClickTrigger(e){if(!e.trigger.selector)return;document.querySelectorAll(e.trigger.selector).forEach(t=>{const n=()=>this.showForm(e);t.addEventListener("click",n),this.clickTriggerListeners.push({element:t,handler:n})})}removeTriggers(){this.scrollHandler&&window.removeEventListener("scroll",this.scrollHandler),this.exitHandler&&document.removeEventListener("mouseout",this.exitHandler)}async showForm(e){this.shouldShowForm(e)&&(this.shownForms.add(e._id),this.saveShownForms(),sessionStorage.setItem(`clianta_form_${e._id}_shown`,"true"),await this.trackFormView(e._id),this.renderForm(e))}async trackFormView(e){if(!this.tracker)return;const t=this.tracker.getConfig().apiEndpoint||"http://localhost:5000";try{await fetch(`${t}/api/public/lead-forms/${e}/view`,{method:"POST",headers:{"Content-Type":"application/json"}})}catch(e){}}renderForm(e){const t=document.createElement("div");t.id=`clianta-form-overlay-${e._id}`,t.style.cssText="\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.5);\n z-index: 999998;\n display: flex;\n align-items: center;\n justify-content: center;\n opacity: 0;\n transition: opacity 0.3s ease;\n ";const n=document.createElement("div");n.id=`clianta-form-${e._id}`;const i=e.style||{};n.style.cssText=`\n background: ${i.backgroundColor||"#FFFFFF"};\n border-radius: ${i.borderRadius||12}px;\n padding: 24px;\n max-width: 400px;\n width: 90%;\n box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);\n transform: translateY(20px);\n opacity: 0;\n transition: all 0.3s ease;\n `,this.buildFormDOM(e,n),t.appendChild(n),document.body.appendChild(t),requestAnimationFrame(()=>{t.style.opacity="1",n.style.transform="translateY(0)",n.style.opacity="1"}),this.setupFormEvents(e,t,n)}escapeHTML(e){const t=document.createElement("div");return t.textContent=e,t.innerHTML}buildFormDOM(e,t){const n=e.style||{},i=n.primaryColor||"#10B981",s=n.textColor||"#18181B",o=document.createElement("button");o.id="clianta-form-close",o.style.cssText="\n position: absolute;\n top: 12px;\n right: 12px;\n background: none;\n border: none;\n font-size: 20px;\n cursor: pointer;\n color: #71717A;\n padding: 4px;\n ",o.textContent="×",t.appendChild(o);const r=document.createElement("h2");r.style.cssText=`font-size: 20px; font-weight: 700; margin-bottom: 8px; color: ${this.escapeHTML(s)};`,r.textContent=e.headline||"Stay in touch",t.appendChild(r);const a=document.createElement("p");a.style.cssText="font-size: 14px; color: #71717A; margin-bottom: 16px;",a.textContent=e.subheadline||"Get the latest updates",t.appendChild(a);const d=document.createElement("form");d.id="clianta-form-element",e.fields.forEach(e=>{const t=document.createElement("div");if(t.style.marginBottom="12px","checkbox"===e.type){const n=document.createElement("label");n.style.cssText=`display: flex; align-items: center; gap: 8px; font-size: 14px; color: ${this.escapeHTML(s)}; cursor: pointer;`;const i=document.createElement("input");i.type="checkbox",i.name=e.name,e.required&&(i.required=!0),i.style.cssText="width: 16px; height: 16px;",n.appendChild(i);const o=document.createTextNode(e.label+" ");if(n.appendChild(o),e.required){const e=document.createElement("span");e.style.color="#EF4444",e.textContent="*",n.appendChild(e)}t.appendChild(n)}else{const n=document.createElement("label");if(n.style.cssText=`display: block; font-size: 14px; font-weight: 500; margin-bottom: 4px; color: ${this.escapeHTML(s)};`,n.textContent=e.label+" ",e.required){const e=document.createElement("span");e.style.color="#EF4444",e.textContent="*",n.appendChild(e)}if(t.appendChild(n),"textarea"===e.type){const n=document.createElement("textarea");n.name=e.name,e.placeholder&&(n.placeholder=e.placeholder),e.required&&(n.required=!0),n.style.cssText="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; resize: vertical; min-height: 80px; box-sizing: border-box;",t.appendChild(n)}else if("select"===e.type){const n=document.createElement("select");if(n.name=e.name,e.required&&(n.required=!0),n.style.cssText="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; box-sizing: border-box; background: white; cursor: pointer;",e.placeholder){const t=document.createElement("option");t.value="",t.textContent=e.placeholder,t.disabled=!0,t.selected=!0,n.appendChild(t)}e.options&&Array.isArray(e.options)&&e.options.forEach(e=>{const t=document.createElement("option");"string"==typeof e?(t.value=e,t.textContent=e):(t.value=e.value,t.textContent=e.label),n.appendChild(t)}),t.appendChild(n)}else{const n=document.createElement("input");n.type=e.type,n.name=e.name,e.placeholder&&(n.placeholder=e.placeholder),e.required&&(n.required=!0),n.style.cssText="width: 100%; padding: 8px 12px; border: 1px solid #E4E4E7; border-radius: 6px; font-size: 14px; box-sizing: border-box;",t.appendChild(n)}}d.appendChild(t)});const c=document.createElement("button");c.type="submit",c.style.cssText=`\n width: 100%;\n padding: 10px 16px;\n background: ${this.escapeHTML(i)};\n color: white;\n border: none;\n border-radius: 6px;\n font-size: 14px;\n font-weight: 500;\n cursor: pointer;\n margin-top: 8px;\n `,c.textContent=e.submitButtonText||"Subscribe",d.appendChild(c),t.appendChild(d)}setupFormEvents(e,t,n){const i=n.querySelector("#clianta-form-close");i&&i.addEventListener("click",()=>this.closeForm(e._id,t,n)),t.addEventListener("click",i=>{i.target===t&&this.closeForm(e._id,t,n)});const s=n.querySelector("#clianta-form-element");s&&s.addEventListener("submit",async t=>{t.preventDefault(),await this.handleSubmit(e,s,n)})}closeForm(e,t,n){n.style.transform="translateY(20px)",n.style.opacity="0",t.style.opacity="0",setTimeout(()=>{t.remove()},300)}async handleSubmit(e,t,n){if(!this.tracker)return;const i=this.tracker.getConfig().apiEndpoint||"http://localhost:5000",s=this.tracker.getVisitorId(),o=new FormData(t),r={};o.forEach((e,t)=>{r[t]=e});const a=t.querySelector('button[type="submit"]');a&&(a.disabled=!0,a.textContent="Submitting...");try{const t=await fetch(`${i}/api/public/lead-forms/${e._id}/submit`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({visitorId:s,data:r,url:window.location.href})});if((await t.json()).success){n.innerHTML="";const t=document.createElement("div");t.style.cssText="text-align: center; padding: 20px;";const i=document.createElement("div");i.style.cssText="width: 48px; height: 48px; background: #10B981; border-radius: 50%; margin: 0 auto 16px; display: flex; align-items: center; justify-content: center;";const s=document.createElementNS("http://www.w3.org/2000/svg","svg");s.setAttribute("width","24"),s.setAttribute("height","24"),s.setAttribute("viewBox","0 0 24 24"),s.setAttribute("fill","none"),s.setAttribute("stroke","white"),s.setAttribute("stroke-width","2");const o=document.createElementNS("http://www.w3.org/2000/svg","polyline");o.setAttribute("points","20 6 9 17 4 12"),s.appendChild(o),i.appendChild(s);const a=document.createElement("p");if(a.style.cssText="font-size: 16px; font-weight: 500; color: #18181B;",a.textContent=e.successMessage||"Thank you!",t.appendChild(i),t.appendChild(a),n.appendChild(t),r.email&&this.tracker?.identify(r.email,r),e.redirectUrl)try{const t=new URL(e.redirectUrl,window.location.origin),n=t.origin===window.location.origin,i="https:"===t.protocol||"http:"===t.protocol;n||i?setTimeout(()=>{window.location.href=t.href},1500):console.warn("[Clianta] Blocked unsafe redirect URL:",e.redirectUrl)}catch{console.warn("[Clianta] Invalid redirect URL:",e.redirectUrl)}setTimeout(()=>{const t=document.getElementById(`clianta-form-overlay-${e._id}`);t&&this.closeForm(e._id,t,n)},2e3)}}catch(t){console.error("[Clianta] Form submit error:",t),a&&(a.disabled=!1,a.textContent=e.submitButtonText||"Subscribe")}}}function N(e){switch(e){case"pageView":return new C;case"scroll":return new H;case"forms":return new L;case"clicks":return new F;case"engagement":return new P;case"downloads":return new _;case"exitIntent":return new M;case"errors":return new A;case"performance":return new q;case"popupForms":return new $;default:throw new Error(`Unknown plugin: ${e}`)}}function D(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 R(){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?(O(),null):t}catch{return null}}function O(){try{return"undefined"!=typeof localStorage&&(localStorage.removeItem(r),!0)}catch{return!1}}class V{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=R();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,D(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,D(this.state),p.info("Consent revoked:",e),this.notifyChange(t)}update(e){const t={...this.state};this.state={...e},this.hasExplicitConsent=!0,D(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=[],O(),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!==R()}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 z{constructor(e,i={}){if(this.plugins=[],this.isInitialized=!1,this.contactId=null,this.groupId=null,this.pendingIdentify=null,this.eventSchemas=new Map,this.middlewares=[],this.readyCallbacks=[],!e)throw new Error("[Clianta] Workspace ID is required");this.workspaceId=e,this.config=function(e={}){return{...n,...e,consent:{...n.consent,...e.consent}}}(i),p.enabled=this.config.debug,p.info(`Initializing SDK v${t}`,{workspaceId:e}),this.consentManager=new V({...this.config.consent,onConsentChange:(e,t)=>{this.onConsentChange(e,t)}}),this.transport=new f({apiEndpoint:this.config.apiEndpoint}),this.queue=new T(this.transport,{batchSize:this.config.batchSize,flushInterval:this.config.flushInterval}),this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),p.debug("IDs created",{visitorId:this.visitorId,sessionId:this.sessionId}),!this.config.apiEndpoint.startsWith("http://")||"undefined"==typeof window||window.location.hostname.includes("localhost")||window.location.hostname.includes("127.0.0.1")||p.warn("apiEndpoint uses HTTP — events will be sent unencrypted. Use HTTPS in production."),this.initPlugins(),this.isInitialized=!0,p.info("SDK initialized successfully");for(const e of this.readyCallbacks)try{e()}catch(e){p.error("onReady callback error:",e)}this.readyCallbacks=[]}createVisitorId(){if(this.config.consent.anonymousMode&&!this.consentManager.hasExplicit()){const e=i+"_anon";let t=g(e);return t||(t="anon_"+m(),w(e,t)),t}if(this.config.cookielessMode){let e=g(i);return e||(e=m(),w(i,e)),e}return v(this.config.useCookies)}createSessionId(){return function(e){const t=s,n=o;let i=g(t);const r=parseInt(g(n)||"0",10),a=Date.now();return(!i||a-r>e)&&(i=m(),w(t,i)),w(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=v(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=N(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,eventId:m(),websiteDomain:"undefined"!=typeof window?window.location.hostname:void 0},device:"undefined"==typeof window||"undefined"==typeof navigator?{userAgent:"unknown",screen:"unknown",language:"unknown",timezone:"unknown"}:{userAgent:navigator.userAgent,screen:`${screen.width}x${screen.height}`,language:navigator.language,timezone:Intl.DateTimeFormat().resolvedOptions().timeZone||"unknown"},...E(),timestamp:(new Date).toISOString(),sdkVersion:t};if(this.contactId&&(s.contactId=this.contactId),this.groupId&&(s.groupId=this.groupId),this.validateEventSchema(e,i),!this.consentManager.canTrack())return this.config.consent.waitForConsent?void this.consentManager.bufferEvent(s):void p.debug("Event dropped (no consent):",n);this.runMiddleware(s,()=>{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 p.warn("Email is required for identification"),null;if(!function(e){return!("string"!=typeof e||!e)&&/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e)}(e))return p.warn("Invalid email format, identification skipped:",e),null;p.info("Identifying visitor:",e);const n=await this.transport.sendIdentify({workspaceId:this.workspaceId,visitorId:this.visitorId,email:e,properties:t});return n.success?(p.info("Visitor identified successfully, contactId:",n.contactId),this.contactId=n.contactId??null,this.pendingIdentify=null,this.contactId):(p.error("Failed to identify visitor:",n.error),this.pendingIdentify={email:e,traits:t},null)}async retryPendingIdentify(){if(!this.pendingIdentify)return;const{email:e,traits:t}=this.pendingIdentify;this.pendingIdentify=null,await this.identify(e,t)}consent(e){this.consentManager.update(e)}getConsentState(){return this.consentManager.getState()}debug(e){p.enabled=e,p.info("Debug mode "+(e?"enabled":"disabled"))}group(e,t={}){e?(this.groupId=e,p.info("Visitor grouped:",e),this.track("group","Group Identified",{groupId:e,...t})):p.warn("groupId is required for group()")}async alias(e,t){if(!e)return p.warn("newId is required for alias()"),!1;const n=t||this.visitorId;p.info("Aliasing visitor:",{from:n,to:e});try{const t=`${this.config.apiEndpoint}/api/public/track/alias`,i=await fetch(t,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({workspaceId:this.workspaceId,previousId:n,newId:e})});return i.ok?(p.info("Alias successful"),!0):(p.error("Alias failed:",i.status),!1)}catch(e){return p.error("Alias request failed:",e),!1}}screen(e,t={}){this.track("screen_view",e,{...t,screenName:e})}use(e){this.middlewares.push(e),p.debug("Middleware registered")}runMiddleware(e,t){if(0===this.middlewares.length)return void t();let n=0;const i=this.middlewares,s=()=>{if(n++,n<i.length)try{i[n](e,s)}catch(e){p.error("Middleware error:",e),t()}else t()};try{i[0](e,s)}catch(e){p.error("Middleware error:",e),t()}}onReady(e){if(this.isInitialized)try{e()}catch(e){p.error("onReady callback error:",e)}else this.readyCallbacks.push(e)}isReady(){return this.isInitialized}registerEventSchema(e,t){this.eventSchemas.set(e,t),p.debug("Event schema registered:",e)}validateEventSchema(e,t){if(!this.config.debug)return;const n=this.eventSchemas.get(e);if(n)for(const[i,s]of Object.entries(n)){const n=t[i];if(void 0===n){p.warn(`[Schema] Missing property "${i}" for event type "${e}"`);continue}let o=!1;switch(s){case"string":o="string"==typeof n;break;case"number":o="number"==typeof n;break;case"boolean":o="boolean"==typeof n;break;case"object":o="object"==typeof n&&!Array.isArray(n);break;case"array":o=Array.isArray(n)}o||p.warn(`[Schema] Property "${i}" for event "${e}" expected ${s}, got ${typeof n}`)}}getVisitorId(){return this.visitorId}getSessionId(){return this.sessionId}getWorkspaceId(){return this.workspaceId}getConfig(){return{...this.config}}async flush(){await this.retryPendingIdentify(),await this.queue.flush()}reset(){p.info("Resetting visitor data"),b(this.config.useCookies),this.visitorId=this.createVisitorId(),this.sessionId=this.createSessionId(),this.contactId=null,this.pendingIdentify=null,this.queue.clear()}deleteData(){if(p.info("Deleting all user data (GDPR request)"),this.queue.clear(),this.consentManager.reset(),b(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 createContact(e){return this.publicCrmRequest("/api/public/crm/contacts","POST",{workspaceId:this.workspaceId,...e})}async updateContact(e,t){return this.publicCrmRequest(`/api/public/crm/contacts/${e}`,"PUT",{workspaceId:this.workspaceId,...t})}async submitForm(e,t){const n={...t,metadata:{...t.metadata,visitorId:this.visitorId,sessionId:this.sessionId,pageUrl:"undefined"!=typeof window?window.location.href:void 0,referrer:"undefined"!=typeof document&&document.referrer||void 0}};return this.publicCrmRequest(`/api/public/crm/forms/${e}/submit`,"POST",n)}async logActivity(e){return this.publicCrmRequest("/api/public/crm/activities","POST",{workspaceId:this.workspaceId,...e})}async createOpportunity(e){return this.publicCrmRequest("/api/public/crm/opportunities","POST",{workspaceId:this.workspaceId,...e})}async publicCrmRequest(e,t,n){const i=`${this.config.apiEndpoint}${e}`;try{const s=await fetch(i,{method:t,headers:{"Content-Type":"application/json"},body:JSON.stringify(n)}),o=await s.json().catch(()=>({}));return s.ok?(p.debug(`Public CRM ${t} ${e} succeeded`),{success:!0,data:o.data??o,status:s.status}):(p.error(`Public CRM ${t} ${e} failed (${s.status}):`,o.message),{success:!1,error:o.message,status:s.status})}catch(n){return p.error(`Public CRM ${t} ${e} error:`,n),{success:!1,error:n.message}}}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}}let B=null;function j(e,t){return B&&B.getWorkspaceId()===e||(B&&B.destroy(),B=new z(e,t)),B}if("undefined"!=typeof window){window.clianta=j,window.Clianta={clianta:j,Tracker:z,ConsentManager:V};const e=()=>{const e=document.querySelectorAll("script[data-project-id]"),t=e[e.length-1];if(!t)return;const n=t.getAttribute("data-project-id");if(!n)return;const i=j(n,{debug:t.hasAttribute("data-debug")});window.__clianta=i};"loading"===document.readyState?document.addEventListener("DOMContentLoaded",e):e()}e.ConsentManager=V,e.SDK_VERSION=t,e.Tracker=z,e.clianta=j,e.default=j,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/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["SDK_VERSION","DEFAULT_CONFIG","projectId","apiEndpoint","process","env","NEXT_PUBLIC_CLIANTA_API_ENDPOINT","VITE_CLIANTA_API_ENDPOINT","REACT_APP_CLIANTA_API_ENDPOINT","CLIANTA_API_ENDPOINT","debug","autoPageView","plugins","sessionTimeout","batchSize","flushInterval","consent","defaultConsent","analytics","marketing","personalization","waitForConsent","storageKey","anonymousMode","cookieDomain","useCookies","cookielessMode","persistMode","STORAGE_KEYS","SCROLL_MILESTONES","DOWNLOAD_EXTENSIONS","LOG_PREFIX","LOG_STYLES","info","warn","error","LOG_LEVELS","logger","enabled","currentLevel","isEnabled","shouldLog","level","formatArgs","args","console","window","toUpperCase","value","log","setLevel","createLogger","Transport","constructor","config","this","maxRetries","retryDelay","timeout","sendEvents","events","url","payload","JSON","stringify","send","sendIdentify","data","response","fetchWithTimeout","method","headers","body","keepalive","json","catch","ok","contactId","success","status","undefined","message","sendBeacon","navigator","blob","Blob","type","length","fetchData","path","params","URL","Object","entries","forEach","key","searchParams","set","toString","Accept","attempt","delay","options","controller","AbortController","setTimeout","abort","fetch","signal","clearTimeout","ms","Promise","resolve","generateUUID","crypto","randomUUID","replace","c","r","Math","random","getSessionStorage","sessionStorage","getItem","setSessionStorage","setItem","cookie","name","days","document","match","RegExp","expires","date","Date","setTime","getTime","toUTCString","secure","location","protocol","getOrCreateVisitorId","visitorId","localStorage","getLocalStorage","setLocalStorage","resetIds","visitorKey","removeItem","getUTMParams","URLSearchParams","search","utmSource","get","utmMedium","utmCampaign","utmTerm","utmContent","getFilenameFromUrl","split","pop","getFileExtension","parts","getElementText","element","maxLength","innerText","textContent","trim","substring","EventQueue","transport","queue","flushTimer","isFlushing","eventTimestamps","boundBeforeUnload","boundVisibilityChange","boundPageHide","maxQueueSize","restoreQueue","startFlushTimer","setupUnloadHandlers","push","event","checkRateLimit","shift","eventName","flush","now","filter","ts","count","splice","persistQueue","unshift","flushSync","clear","destroy","clearInterval","removeEventListener","setInterval","addEventListener","visibilityState","serialized","stored","parse","Array","isArray","BasePlugin","tracker","init","track","eventType","properties","PageViewPlugin","originalPushState","originalReplaceState","popstateHandler","super","trackPageView","history","pushState","replaceState","self","apply","dispatchEvent","Event","title","pathname","hash","referrer","viewport","innerWidth","innerHeight","ScrollPlugin","milestonesReached","Set","maxScrollDepth","pageLoadTime","scrollTimeout","boundHandler","navigationHandler","handleScroll","bind","passive","resetForNavigation","trackScrollDepth","windowHeight","documentHeight","documentElement","scrollHeight","scrollTop","pageYOffset","scrollableHeight","scrollPercent","floor","clampedPercent","max","min","milestone","has","add","depth","maxDepth","timeToReach","FormsPlugin","trackedForms","WeakSet","formInteractions","observer","listeners","trackAllForms","MutationObserver","observe","childList","subtree","disconnect","handler","addListener","querySelectorAll","form","setupFormTracking","formId","id","substr","action","fieldCount","elements","from","field","HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","fieldName","fieldType","interactionType","autoIdentify","emailField","querySelector","email","traits","firstNameField","lastNameField","companyField","phoneField","firstName","lastName","company","phone","identify","ClicksPlugin","handleClick","e","target","includes","tagName","hasAttribute","classList","contains","buttonText","elementInfo","tag","toLowerCase","className","text","getElementInfo","elementType","elementId","elementClass","href","x","round","clientX","y","clientY","viewportWidth","viewportHeight","EngagementPlugin","engagementStartTime","isEngaged","engagementTimeout","boundMarkEngaged","boundTrackTimeOnPage","boundVisibilityHandler","markEngaged","trackTimeOnPage","timeToEngage","timeSpent","seconds","engaged","DownloadsPlugin","trackedDownloads","link","closest","lowerUrl","some","ext","isDownloadUrl","filename","fileType","linkText","ExitIntentPlugin","exitIntentShown","test","userAgent","handleMouseLeave","timeOnPage","ErrorsPlugin","boundErrorHandler","boundRejectionHandler","handleError","handleRejection","line","lineno","column","colno","stack","reason","String","PerformancePlugin","boundLoadHandler","observers","boundClsVisibilityHandler","trackPerformance","performance","getEntriesByType","navTiming","loadTime","loadEventEnd","startTime","domReady","domContentLoadedEventEnd","ttfb","responseStart","requestStart","domInteractive","dns","domainLookupEnd","domainLookupStart","connection","connectEnd","connectStart","transferSize","timing","navigationStart","trackWebVitals","lcpObserver","PerformanceObserver","entryList","getEntries","lastEntry","metric","buffered","fidObserver","firstEntry","processingStart","clsValue","clsObserver","entry","hadRecentInput","once","PopupFormsPlugin","forms","shownForms","scrollHandler","exitHandler","delayTimers","clickTriggerListeners","loadShownForms","fetchForms","setupTriggers","removeTriggers","timer","saveShownForms","timestamp","getConfig","workspaceId","getWorkspaceId","encodeURIComponent","shouldShowForm","showFrequency","_id","sessionKey","trigger","showForm","setupScrollTrigger","setupExitIntentTrigger","setupClickTrigger","threshold","scrollY","selector","el","trackFormView","renderForm","overlay","createElement","style","cssText","container","backgroundColor","borderRadius","buildFormDOM","appendChild","requestAnimationFrame","opacity","transform","setupFormEvents","escapeHTML","str","div","innerHTML","primaryColor","textColor","closeBtn","headline","subheadline","formElement","fields","fieldWrapper","marginBottom","label","input","required","labelText","createTextNode","requiredMark","color","textarea","placeholder","select","placeholderOption","disabled","selected","opt","option","submitBtn","submitButtonText","closeForm","async","preventDefault","handleSubmit","remove","getVisitorId","formData","FormData","successWrapper","iconWrapper","svg","createElementNS","setAttribute","polyline","successMessage","redirectUrl","redirect","origin","isSameOrigin","isSafeProtocol","getElementById","getPlugin","Error","saveConsent","state","version","loadConsent","parsed","clearConsent","ConsentManager","eventBuffer","callbacks","hasExplicitConsent","onConsentChange","grant","categories","previous","notifyChange","revoke","category","update","reset","getState","hasConsent","canTrack","hasExplicit","hasStored","bufferEvent","flushBuffer","getBufferSize","onChange","callback","index","indexOf","Tracker","userConfig","isInitialized","groupId","pendingIdentify","eventSchemas","Map","middlewares","readyCallbacks","mergeConfig","consentManager","createVisitorId","sessionId","createSessionId","startsWith","hostname","initPlugins","cb","anonId","sidKey","tsKey","lastActivity","parseInt","getOrCreateSessionId","to","pluginsToLoad","filteredPlugins","p","pluginName","plugin","result","eventId","websiteDomain","device","screen","language","timezone","width","height","Intl","DateTimeFormat","resolvedOptions","timeZone","toISOString","sdkVersion","validateEventSchema","runMiddleware","page","pageName","isValidEmail","retryPendingIdentify","getConsentState","group","alias","newId","previousId","prevId","screenName","use","middleware","finalCallback","next","onReady","isReady","registerEventSchema","schema","expectedType","valid","getSessionId","deleteData","createContact","publicCrmRequest","updateContact","submitForm","metadata","pageUrl","logActivity","createOpportunity","globalInstance","clianta","Clianta"],"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/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["SDK_VERSION","DEFAULT_CONFIG","projectId","apiEndpoint","process","env","NEXT_PUBLIC_CLIANTA_API_ENDPOINT","VITE_CLIANTA_API_ENDPOINT","REACT_APP_CLIANTA_API_ENDPOINT","CLIANTA_API_ENDPOINT","debug","autoPageView","plugins","sessionTimeout","batchSize","flushInterval","consent","defaultConsent","analytics","marketing","personalization","waitForConsent","storageKey","anonymousMode","cookieDomain","useCookies","cookielessMode","persistMode","STORAGE_KEYS","SCROLL_MILESTONES","DOWNLOAD_EXTENSIONS","LOG_PREFIX","LOG_STYLES","info","warn","error","LOG_LEVELS","logger","enabled","currentLevel","isEnabled","shouldLog","level","formatArgs","args","console","window","toUpperCase","value","log","setLevel","createLogger","Transport","constructor","config","this","maxRetries","retryDelay","timeout","sendEvents","events","url","payload","JSON","stringify","send","sendIdentify","data","response","fetchWithTimeout","method","headers","body","keepalive","json","catch","ok","contactId","success","status","undefined","message","sendBeacon","navigator","blob","Blob","type","length","fetchData","path","params","URL","Object","entries","forEach","key","searchParams","set","toString","Accept","attempt","delay","options","controller","AbortController","setTimeout","abort","fetch","signal","clearTimeout","ms","Promise","resolve","generateUUID","crypto","randomUUID","replace","c","r","Math","random","getSessionStorage","sessionStorage","getItem","setSessionStorage","setItem","cookie","name","days","document","match","RegExp","expires","date","Date","setTime","getTime","toUTCString","secure","location","protocol","getOrCreateVisitorId","visitorId","localStorage","getLocalStorage","setLocalStorage","resetIds","visitorKey","removeItem","getUTMParams","URLSearchParams","search","utmSource","get","utmMedium","utmCampaign","utmTerm","utmContent","getFilenameFromUrl","split","pop","getFileExtension","parts","getElementText","element","maxLength","innerText","textContent","trim","substring","EventQueue","transport","queue","flushTimer","isFlushing","eventTimestamps","boundBeforeUnload","boundVisibilityChange","boundPageHide","maxQueueSize","restoreQueue","startFlushTimer","setupUnloadHandlers","push","event","checkRateLimit","shift","eventName","flush","now","filter","ts","count","splice","persistQueue","unshift","flushSync","clear","destroy","clearInterval","removeEventListener","setInterval","addEventListener","visibilityState","serialized","stored","parse","Array","isArray","BasePlugin","tracker","init","track","eventType","properties","PageViewPlugin","originalPushState","originalReplaceState","popstateHandler","super","trackPageView","history","pushState","replaceState","self","apply","dispatchEvent","Event","title","pathname","hash","referrer","viewport","innerWidth","innerHeight","ScrollPlugin","milestonesReached","Set","maxScrollDepth","pageLoadTime","scrollTimeout","boundHandler","navigationHandler","handleScroll","bind","passive","resetForNavigation","trackScrollDepth","windowHeight","documentHeight","documentElement","scrollHeight","scrollTop","pageYOffset","scrollableHeight","scrollPercent","floor","clampedPercent","max","min","milestone","has","add","depth","maxDepth","timeToReach","FormsPlugin","trackedForms","WeakSet","formInteractions","observer","listeners","trackAllForms","MutationObserver","observe","childList","subtree","disconnect","handler","addListener","querySelectorAll","form","setupFormTracking","formId","id","substr","action","fieldCount","elements","from","field","HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","fieldName","fieldType","interactionType","autoIdentify","emailField","querySelector","email","traits","firstNameField","lastNameField","companyField","phoneField","firstName","lastName","company","phone","identify","ClicksPlugin","handleClick","e","target","includes","tagName","hasAttribute","classList","contains","buttonText","elementInfo","tag","toLowerCase","className","text","getElementInfo","elementType","elementId","elementClass","href","x","round","clientX","y","clientY","viewportWidth","viewportHeight","EngagementPlugin","engagementStartTime","isEngaged","engagementTimeout","boundMarkEngaged","boundTrackTimeOnPage","boundVisibilityHandler","markEngaged","trackTimeOnPage","timeToEngage","timeSpent","seconds","engaged","DownloadsPlugin","trackedDownloads","link","closest","lowerUrl","some","ext","isDownloadUrl","filename","fileType","linkText","ExitIntentPlugin","exitIntentShown","test","userAgent","handleMouseLeave","timeOnPage","ErrorsPlugin","boundErrorHandler","boundRejectionHandler","handleError","handleRejection","line","lineno","column","colno","stack","reason","String","PerformancePlugin","boundLoadHandler","observers","boundClsVisibilityHandler","trackPerformance","performance","getEntriesByType","navTiming","loadTime","loadEventEnd","startTime","domReady","domContentLoadedEventEnd","ttfb","responseStart","requestStart","domInteractive","dns","domainLookupEnd","domainLookupStart","connection","connectEnd","connectStart","transferSize","timing","navigationStart","trackWebVitals","lcpObserver","PerformanceObserver","entryList","getEntries","lastEntry","metric","buffered","fidObserver","firstEntry","processingStart","clsValue","clsObserver","entry","hadRecentInput","once","PopupFormsPlugin","forms","shownForms","scrollHandler","exitHandler","delayTimers","clickTriggerListeners","loadShownForms","fetchForms","setupTriggers","removeTriggers","timer","saveShownForms","timestamp","getConfig","workspaceId","getWorkspaceId","encodeURIComponent","shouldShowForm","showFrequency","_id","sessionKey","trigger","showForm","setupScrollTrigger","setupExitIntentTrigger","setupClickTrigger","threshold","scrollY","selector","el","trackFormView","renderForm","overlay","createElement","style","cssText","container","backgroundColor","borderRadius","buildFormDOM","appendChild","requestAnimationFrame","opacity","transform","setupFormEvents","escapeHTML","str","div","innerHTML","primaryColor","textColor","closeBtn","headline","subheadline","formElement","fields","fieldWrapper","marginBottom","label","input","required","labelText","createTextNode","requiredMark","color","textarea","placeholder","select","placeholderOption","disabled","selected","opt","option","submitBtn","submitButtonText","closeForm","async","preventDefault","handleSubmit","remove","getVisitorId","formData","FormData","successWrapper","iconWrapper","svg","createElementNS","setAttribute","polyline","successMessage","redirectUrl","redirect","origin","isSameOrigin","isSafeProtocol","getElementById","getPlugin","Error","saveConsent","state","version","loadConsent","parsed","clearConsent","ConsentManager","eventBuffer","callbacks","hasExplicitConsent","onConsentChange","grant","categories","previous","notifyChange","revoke","category","update","reset","getState","hasConsent","canTrack","hasExplicit","hasStored","bufferEvent","flushBuffer","getBufferSize","onChange","callback","index","indexOf","Tracker","userConfig","isInitialized","groupId","pendingIdentify","eventSchemas","Map","middlewares","readyCallbacks","mergeConfig","consentManager","createVisitorId","sessionId","createSessionId","startsWith","hostname","initPlugins","cb","anonId","sidKey","tsKey","lastActivity","parseInt","getOrCreateSessionId","to","pluginsToLoad","filteredPlugins","p","pluginName","plugin","result","eventId","websiteDomain","device","screen","language","timezone","width","height","Intl","DateTimeFormat","resolvedOptions","timeZone","toISOString","sdkVersion","validateEventSchema","runMiddleware","page","pageName","isValidEmail","retryPendingIdentify","getConsentState","group","alias","newId","previousId","prevId","screenName","use","middleware","finalCallback","next","onReady","isReady","registerEventSchema","schema","expectedType","valid","getSessionId","deleteData","createContact","publicCrmRequest","updateContact","submitForm","metadata","pageUrl","logActivity","createOpportunity","globalInstance","clianta","Clianta","autoInit","scripts","script","getAttribute","instance","__clianta","readyState"],"mappings":";;;;;8OAQO,MAAMA,EAAc,QAgDdC,EAA0C,CACnDC,UAAW,GACXC,YA7CuB,oBAAZC,SAA2BA,QAAQC,KAAKC,iCACxCF,QAAQC,IAAIC,iCAEA,oBAAZF,SAA2BA,QAAQC,KAAKE,0BACxCH,QAAQC,IAAIE,0BAEA,oBAAZH,SAA2BA,QAAQC,KAAKG,+BACxCJ,QAAQC,IAAIG,+BAEA,oBAAZJ,SAA2BA,QAAQC,KAAKI,qBACxCL,QAAQC,IAAII,qBAEhB,wBAkCPC,OAAO,EACPC,cAAc,EACdC,QAlByC,CACzC,WACA,QACA,SACA,SACA,aACA,YACA,aACA,SACA,eAUAC,eAAgB,KAChBC,UAAW,GACXC,cAAe,IACfC,QAAS,CACLC,eAAgB,CAAEC,WAAW,EAAMC,WAAW,EAAOC,iBAAiB,GACtEC,gBAAgB,EAChBC,WAAY,aACZC,eAAe,GAEnBC,aAAc,GACdC,YAAY,EACZC,gBAAgB,EAChBC,YAAa,WAIJC,EACG,SADHA,EAEG,SAFHA,EAGU,QAHVA,EAIA,aAJAA,EAKI,WAIJC,EAAoB,CAAC,GAAI,GAAI,GAAI,KAGjCC,EAAsB,CAC/B,OAAQ,OAAQ,QAAS,OAAQ,QAAS,OAAQ,QAClD,OAAQ,OAAQ,OAAQ,MAAO,MAC/B,OAAQ,OAAQ,QAAS,OACzB,OAAQ,OAAQ,OAAQ,OAAQ,QCvFpC,MAAMC,EAAa,YAEbC,EAAa,CACftB,MAAO,uCACPuB,KAAM,uCACNC,KAAM,qCACNC,MAAO,sCAGLC,EAAuC,CACzC1B,MAAO,EACPuB,KAAM,EACNC,KAAM,EACNC,MAAO,GA+DJ,MAAME,EAzDP,SAAuBC,GAAU,GACnC,IAAIC,EAAyB,QACzBC,EAAYF,EAEhB,MAAMG,EAAaC,KACVF,GACEJ,EAAWM,IAAUN,EAAWG,GAGrCI,EAAa,CAACD,EAAiBE,IACV,oBAAZC,SAA6C,oBAAXC,OAElC,CAAC,KAAKf,IAAcC,EAAWU,MAAWE,GAG9C,CAAC,GAAGb,MAAeW,EAAMK,oBAAqBH,GAGzD,MAAO,CACH,WAAIN,GACA,OAAOE,CACX,EACA,WAAIF,CAAQU,GACRR,EAAYQ,CAChB,EAEA,KAAAtC,IAASkC,GACDH,EAAU,UAA+B,oBAAZI,SAC7BA,QAAQI,OAAON,EAAW,QAASC,GAE3C,EAEA,IAAAX,IAAQW,GACAH,EAAU,SAA8B,oBAAZI,SAC5BA,QAAQZ,QAAQU,EAAW,OAAQC,GAE3C,EAEA,IAAAV,IAAQU,GACAH,EAAU,SAA8B,oBAAZI,SAC5BA,QAAQX,QAAQS,EAAW,OAAQC,GAE3C,EAEA,KAAAT,IAASS,GACDH,EAAU,UAA+B,oBAAZI,SAC7BA,QAAQV,SAASQ,EAAW,QAASC,GAE7C,EAEA,QAAAM,CAASR,GACLH,EAAeG,CACnB,EAER,CAGsBS,EAAa,SCnEtBC,EAGT,WAAAC,CAAYC,GACRC,KAAKD,OAAS,CACVnD,YAAamD,EAAOnD,YACpBqD,WAAYF,EAAOE,YAZH,EAahBC,WAAYH,EAAOG,YAZH,IAahBC,QAASJ,EAAOI,SAfJ,IAiBpB,CAKA,gBAAMC,CAAWC,GACb,MAAMC,EAAM,GAAGN,KAAKD,OAAOnD,qCACrB2D,EAAUC,KAAKC,UAAU,CAAEJ,WAEjC,OAAOL,KAAKU,KAAKJ,EAAKC,EAC1B,CAMA,kBAAMI,CAAaC,GACf,MAAMN,EAAM,GAAGN,KAAKD,OAAOnD,wCAC3B,IACI,MAAMiE,QAAiBb,KAAKc,iBAAiBR,EAAK,CAC9CS,OAAQ,OACRC,QAAS,CAAE,eAAgB,oBAC3BC,KAAMT,KAAKC,UAAUG,GACrBM,WAAW,IAGTD,QAAaJ,EAASM,OAAOC,MAAM,KAAA,CAAS,IAElD,OAAIP,EAASQ,IACTvC,EAAO3B,MAAM,kCAAmC8D,EAAKK,WAC9C,CACHC,SAAS,EACTC,OAAQX,EAASW,OACjBF,UAAWL,EAAKK,gBAAaG,KAIjCZ,EAASW,QAAU,IACnB1C,EAAOH,KAAK,0BAA0BkC,EAASW,WAE/C1C,EAAOF,MAAM,+BAA+BiC,EAASW,UAAWP,EAAKS,SAElE,CAAEH,SAAS,EAAOC,OAAQX,EAASW,QAC9C,CAAE,MAAO5C,GAEL,OADAE,EAAOF,MAAM,2BAA4BA,GAClC,CAAE2C,SAAS,EAAO3C,MAAOA,EACpC,CACJ,CAMA,UAAA+C,CAAWtB,GACP,GAAyB,oBAAduB,YAA8BA,UAAUD,WAE/C,OADA7C,EAAOH,KAAK,iDACL,EAGX,MAAM2B,EAAM,GAAGN,KAAKD,OAAOnD,qCACrB2D,EAAUC,KAAKC,UAAU,CAAEJ,WAC3BwB,EAAO,IAAIC,KAAK,CAACvB,GAAU,CAAEwB,KAAM,qBAEzC,IACI,MAAMR,EAAUK,UAAUD,WAAWrB,EAAKuB,GAM1C,OALIN,EACAzC,EAAO3B,MAAM,eAAekD,EAAO2B,iBAEnClD,EAAOH,KAAK,6BAET4C,CACX,CAAE,MAAO3C,GAEL,OADAE,EAAOF,MAAM,oBAAqBA,IAC3B,CACX,CACJ,CAMA,eAAMqD,CAAuBC,EAAcC,GACvC,MAAM7B,EAAM,IAAI8B,IAAI,GAAGpC,KAAKD,OAAOnD,cAAcsF,KAC7CC,GACAE,OAAOC,QAAQH,GAAQI,QAAQ,EAAEC,EAAK/C,MAC9BA,SACAa,EAAImC,aAAaC,IAAIF,EAAK/C,KAKtC,IACI,MAAMoB,QAAiBb,KAAKc,iBAAiBR,EAAIqC,WAAY,CACzD5B,OAAQ,MACRC,QAAS,CACL4B,OAAU,sBAIlB,GAAI/B,EAASQ,GAAI,CACb,MAAMJ,QAAaJ,EAASM,OAE5B,OADArC,EAAO3B,MAAM,oBAAqB+E,GAC3B,CAAEX,SAAS,EAAMX,KAAMK,EAAKL,MAAQK,EAAMO,OAAQX,EAASW,OACtE,CAGA,OADA1C,EAAOF,MAAM,4BAA4BiC,EAASW,UAC3C,CAAED,SAAS,EAAOC,OAAQX,EAASW,OAC9C,CAAE,MAAO5C,GAEL,OADAE,EAAOF,MAAM,wBAAyBA,GAC/B,CAAE2C,SAAS,EAAO3C,MAAOA,EACpC,CACJ,CAKQ,UAAM8B,CAAKJ,EAAaC,EAAiBsC,EAAU,GACvD,IACI,MAAMhC,QAAiBb,KAAKc,iBAAiBR,EAAK,CAC9CS,OAAQ,OACRC,QAAS,CACL,eAAgB,oBAEpBC,KAAMV,EACNW,WAAW,IAGf,OAAIL,EAASQ,IACTvC,EAAO3B,MAAM,sBAAuBmD,GAC7B,CAAEiB,SAAS,EAAMC,OAAQX,EAASW,SAIzCX,EAASW,QAAU,KAAOqB,EAAU7C,KAAKD,OAAOE,YAChDnB,EAAOH,KAAK,iBAAiBkC,EAASW,8BAChCxB,KAAK8C,MAAM9C,KAAKD,OAAOG,WAAa2C,GACnC7C,KAAKU,KAAKJ,EAAKC,EAASsC,EAAU,KAI7C/D,EAAOF,MAAM,8BAA8BiC,EAASW,UAC7C,CAAED,SAAS,EAAOC,OAAQX,EAASW,QAC9C,CAAE,MAAO5C,GAEL,OAAIiE,EAAU7C,KAAKD,OAAOE,YACtBnB,EAAOH,KAAK,4BAA4BkE,KAAW7C,KAAKD,OAAOE,wBACzDD,KAAK8C,MAAM9C,KAAKD,OAAOG,WAAa2C,GACnC7C,KAAKU,KAAKJ,EAAKC,EAASsC,EAAU,KAG7C/D,EAAOF,MAAM,gCAAiCA,GACvC,CAAE2C,SAAS,EAAO3C,MAAOA,GACpC,CACJ,CAKQ,sBAAMkC,CACVR,EACAyC,GAEA,MAAMC,EAAa,IAAIC,gBACjB9C,EAAU+C,WAAW,IAAMF,EAAWG,QAASnD,KAAKD,OAAOI,SAEjE,IAKI,aAJuBiD,MAAM9C,EAAK,IAC3ByC,EACHM,OAAQL,EAAWK,QAG3B,SACIC,aAAanD,EACjB,CACJ,CAKQ,KAAA2C,CAAMS,GACV,OAAO,IAAIC,QAASC,GAAYP,WAAWO,EAASF,GACxD,WCjMYG,IAEZ,MAAsB,oBAAXC,QAAuD,mBAAtBA,OAAOC,WACxCD,OAAOC,aAIX,uCAAuCC,QAAQ,QAAUC,IAC5D,MAAMC,EAAqB,GAAhBC,KAAKC,SAAiB,EAEjC,OADgB,MAANH,EAAYC,EAAS,EAAJA,EAAW,GAC7BpB,SAAS,KAE1B,CAsCM,SAAUuB,EAAkB1B,GAC9B,IACI,GAA8B,oBAAnB2B,eACP,OAAOA,eAAeC,QAAQ5B,EAEtC,CAAE,MAEF,CACA,OAAO,IACX,CAKM,SAAU6B,EAAkB7B,EAAa/C,GAC3C,IACI,GAA8B,oBAAnB0E,eAEP,OADAA,eAAeG,QAAQ9B,EAAK/C,IACrB,CAEf,CAAE,MAEF,CACA,OAAO,CACX,UAKgB8E,EAAOC,EAAc/E,EAAgBgF,GACjD,GAAwB,oBAAbC,SAA0B,OAAO,KAG5C,QAAcjD,IAAVhC,EAAqB,CACrB,MAAMkF,EAAQD,SAASH,OAAOI,MAAM,IAAIC,OAAO,QAAUJ,EAAO,aAChE,OAAOG,EAAQA,EAAM,GAAK,IAC9B,CAGA,IAAIE,EAAU,GACd,GAAIJ,EAAM,CACN,MAAMK,EAAO,IAAIC,KACjBD,EAAKE,QAAQF,EAAKG,UAAmB,GAAPR,EAAY,GAAK,GAAK,KACpDI,EAAU,aAAeC,EAAKI,aAClC,CAEA,MAAMC,EAA6B,oBAAbC,UAAkD,WAAtBA,SAASC,SAAwB,WAAa,GAEhG,OADAX,SAASH,OAASC,EAAO,IAAM/E,EAAQoF,EAAU,yBAA2BM,EACrE1F,CACX,CASM,SAAU6F,EAAqBpH,GAAa,GAC9C,MAAMsE,EAAMnE,EAGZ,IAAIkH,EAA2B,KAmB/B,OAhBIA,EADArH,EACYqG,EAAO/B,GA9FrB,SAA0BA,GAC5B,IACI,GAA4B,oBAAjBgD,aACP,OAAOA,aAAapB,QAAQ5B,EAEpC,CAAE,MAEF,CACA,OAAO,IACX,CAuFoBiD,CAAgBjD,GAI3B+C,IACDA,EAAY7B,IAERxF,EACAqG,EAAO/B,EAAK+C,EAAW,KA1F7B,SAA0B/C,EAAa/C,GACzC,IACI,GAA4B,oBAAjB+F,aAEP,OADAA,aAAalB,QAAQ9B,EAAK/C,IACnB,CAEf,CAAE,MAEF,CAEJ,CAkFYiG,CAAgBlD,EAAK+C,IAItBA,CACX,CA4BM,SAAUI,EAASzH,GAAa,GAClC,MAAM0H,EAAavH,EAEnB,GAAIH,EACAqG,EAAOqB,EAAY,IAAI,QAEvB,IACIJ,aAAaK,WAAWD,EAC5B,CAAE,MAEF,CAGJ,IACIzB,eAAe0B,WAAWxH,GAC1B8F,eAAe0B,WAAWxH,EAC9B,CAAE,MAEF,CACJ,UASgByH,IACZ,GAAsB,oBAAXvG,OAAwB,MAAO,CAAA,EAE1C,IACI,MAAM4C,EAAS,IAAI4D,gBAAgBxG,OAAO6F,SAASY,QACnD,MAAO,CACHC,UAAW9D,EAAO+D,IAAI,oBAAiBzE,EACvC0E,UAAWhE,EAAO+D,IAAI,oBAAiBzE,EACvC2E,YAAajE,EAAO+D,IAAI,sBAAmBzE,EAC3C4E,QAASlE,EAAO+D,IAAI,kBAAezE,EACnC6E,WAAYnE,EAAO+D,IAAI,qBAAkBzE,EAEjD,CAAE,MACE,MAAO,CAAA,CACX,CACJ,CAaM,SAAU8E,EAAmBjG,GAC/B,IACI,OAAOA,EAAIkG,MAAM,KAAKC,OAAOD,MAAM,KAAK,IAAM,SAClD,CAAE,MACE,MAAO,SACX,CACJ,CAKM,SAAUE,EAAiBpG,GAC7B,MACMqG,EADWJ,EAAmBjG,GACbkG,MAAM,KAC7B,OAAOG,EAAM3E,OAAS,GAAI2E,EAAMF,OAAqB,SACzD,UASgBG,EAAeC,EAAkBC,EAAY,KAKzD,OAJcD,EAAwBE,WAClCF,EAAQG,aACPH,EAA6BpH,OAC9B,IACQwH,OAAOC,UAAU,EAAGJ,EACpC,OC/OaK,EAcT,WAAArH,CAAYsH,EAAsBrH,EAA+B,IAbzDC,KAAAqH,MAAyB,GAGzBrH,KAAAsH,WAAoD,KACpDtH,KAAAuH,YAAa,EAEbvH,KAAAwH,gBAA4B,GAG5BxH,KAAAyH,kBAAyC,KACzCzH,KAAA0H,sBAA6C,KAC7C1H,KAAA2H,cAAqC,KAGzC3H,KAAKoH,UAAYA,EACjBpH,KAAKD,OAAS,CACVxC,UAAWwC,EAAOxC,WAAa,GAC/BC,cAAeuC,EAAOvC,eAAiB,IACvCoK,aAAc7H,EAAO6H,cA5BV,IA6BX7J,WAAYgC,EAAOhC,YAAcM,GAErC2B,KAAK5B,YAAe2B,EAAe3B,aAAe,UAGlD4B,KAAK6H,eAGL7H,KAAK8H,kBAGL9H,KAAK+H,qBACT,CAKA,IAAAC,CAAKC,GAEIjI,KAAKkI,kBAMNlI,KAAKqH,MAAMrF,QAAUhC,KAAKD,OAAO6H,eACjC9I,EAAOH,KAAK,qCACZqB,KAAKqH,MAAMc,SAGfnI,KAAKqH,MAAMW,KAAKC,GAChBnJ,EAAO3B,MAAM,gBAAiB8K,EAAMG,UAAW,IAAIpI,KAAKqH,MAAMrF,oBAG1DhC,KAAKqH,MAAMrF,QAAUhC,KAAKD,OAAOxC,WACjCyC,KAAKqI,SAfLvJ,EAAOH,KAAK,sCAAuCsJ,EAAMG,UAiBjE,CAMQ,cAAAF,GACJ,MAAMI,EAAMvD,KAAKuD,MAQjB,OALAtI,KAAKwH,gBAAkBxH,KAAKwH,gBAAgBe,OACxCC,GAAMF,EAAME,EAzEK,OA6EjBxI,KAAKwH,gBAAgBxF,QA/EH,OAoFtBhC,KAAKwH,gBAAgBQ,KAAKM,IACnB,EACX,CAKA,WAAMD,GACF,GAAIrI,KAAKuH,YAAoC,IAAtBvH,KAAKqH,MAAMrF,OAC9B,OAGJhC,KAAKuH,YAAa,EAGlB,MAAMkB,EAAQzI,KAAKqH,MAAMrF,OACnB3B,EAASL,KAAKqH,MAAMqB,OAAO,EAAGD,GAEpC,IACI3J,EAAO3B,MAAM,YAAYkD,EAAO2B,iBAGhChC,KAAK2I,aAAa,WAGG3I,KAAKoH,UAAUhH,WAAWC,IAEnCkB,QAMRzC,EAAO3B,MAAM,qBAJb2B,EAAOH,KAAK,mCACZqB,KAAKqH,MAAMuB,WAAWvI,GACtBL,KAAK2I,aAAa3I,KAAKqH,OAI/B,CAAE,MAAOzI,GACLE,EAAOF,MAAM,eAAgBA,EACjC,SACIoB,KAAKuH,YAAa,CACtB,CACJ,CAKA,SAAAsB,GACI,GAA0B,IAAtB7I,KAAKqH,MAAMrF,OAAc,OAE7B,MAAM3B,EAASL,KAAKqH,MAAMqB,OAAO,EAAG1I,KAAKqH,MAAMrF,QAC/ClD,EAAO3B,MAAM,iBAAiBkD,EAAO2B,4BAErBhC,KAAKoH,UAAUzF,WAAWtB,KAItCL,KAAKqH,MAAMuB,WAAWvI,GACtBL,KAAK2I,aAAa3I,KAAKqH,OAE/B,CAKA,UAAIrF,GACA,OAAOhC,KAAKqH,MAAMrF,MACtB,CAKA,KAAA8G,GAII,GAHA9I,KAAKqH,MAAQ,GACbrH,KAAK2I,aAAa,IAEO,UAArB3I,KAAK5B,aAAmD,oBAAjBoH,aACvC,IAAMA,aAAaK,WAAW7F,KAAKD,OAAOhC,WAAa,CAAE,MAAqB,CAEtF,CAKA,OAAAgL,GACQ/I,KAAKsH,aACL0B,cAAchJ,KAAKsH,YACnBtH,KAAKsH,WAAa,MAGA,oBAAX/H,SACHS,KAAKyH,mBACLlI,OAAO0J,oBAAoB,eAAgBjJ,KAAKyH,mBAEhDzH,KAAK0H,uBACLnI,OAAO0J,oBAAoB,mBAAoBjJ,KAAK0H,uBAEpD1H,KAAK2H,eACLpI,OAAO0J,oBAAoB,WAAYjJ,KAAK2H,eAGxD,CAKQ,eAAAG,GACA9H,KAAKsH,YACL0B,cAAchJ,KAAKsH,YAGvBtH,KAAKsH,WAAa4B,YAAY,KAC1BlJ,KAAKqI,SACNrI,KAAKD,OAAOvC,cACnB,CAKQ,mBAAAuK,GACkB,oBAAXxI,SAGXS,KAAKyH,kBAAoB,IAAMzH,KAAK6I,YACpCtJ,OAAO4J,iBAAiB,eAAgBnJ,KAAKyH,mBAG7CzH,KAAK0H,sBAAwB,KACQ,WAA7BhD,SAAS0E,iBACTpJ,KAAK6I,aAGbtJ,OAAO4J,iBAAiB,mBAAoBnJ,KAAK0H,uBAGjD1H,KAAK2H,cAAgB,IAAM3H,KAAK6I,YAChCtJ,OAAO4J,iBAAiB,WAAYnJ,KAAK2H,eAC7C,CAKQ,YAAAgB,CAAatI,GACjB,GAAyB,SAArBL,KAAK5B,YACT,IACI,MAAMiL,EAAa7I,KAAKC,UAAUJ,GAClC,GAAyB,UAArBL,KAAK5B,aAAmD,oBAAjBoH,aACvC,IACIA,aAAalB,QAAQtE,KAAKD,OAAOhC,WAAYsL,EACjD,CAAE,MAEEhF,EAAkBrE,KAAKD,OAAOhC,WAAYsL,EAC9C,MAEAhF,EAAkBrE,KAAKD,OAAOhC,WAAYsL,EAElD,CAAE,MAEF,CACJ,CAKQ,YAAAxB,GACJ,IACI,IAAIyB,EAAwB,KAY5B,GATyB,UAArBtJ,KAAK5B,aAAmD,oBAAjBoH,eACvC8D,EAAS9D,aAAapB,QAAQpE,KAAKD,OAAOhC,aAIzCuL,IACDA,EAASpF,EAAkBlE,KAAKD,OAAOhC,aAGvCuL,EAAQ,CACR,MAAMjJ,EAASG,KAAK+I,MAAMD,GACtBE,MAAMC,QAAQpJ,IAAWA,EAAO2B,OAAS,IACzChC,KAAKqH,MAAQhH,EACbvB,EAAO3B,MAAM,YAAYkD,EAAO2B,8BAExC,CACJ,CAAE,MAEF,CACJ,QClRkB0H,EAAtB,WAAA5J,GAEcE,KAAA2J,QAA8B,IAmB5C,CAjBI,IAAAC,CAAKD,GACD3J,KAAK2J,QAAUA,CACnB,CAEA,OAAAZ,GACI/I,KAAK2J,QAAU,IACnB,CAEU,KAAAE,CACNC,EACA1B,EACA2B,GAEI/J,KAAK2J,SACL3J,KAAK2J,QAAQE,MAAMC,EAAW1B,EAAW2B,EAEjD,ECnBE,MAAOC,UAAuBN,EAApC,WAAA5J,uBACIE,KAAAwE,KAAmB,WACXxE,KAAAiK,kBAAqD,KACrDjK,KAAAkK,qBAA2D,KAC3DlK,KAAAmK,gBAAuC,IAiEnD,CA/DI,IAAAP,CAAKD,GAOD,GANAS,MAAMR,KAAKD,GAGX3J,KAAKqK,gBAGiB,oBAAX9K,OAAwB,CAE/BS,KAAKiK,kBAAoBK,QAAQC,UACjCvK,KAAKkK,qBAAuBI,QAAQE,aAGpC,MAAMC,EAAOzK,KACbsK,QAAQC,UAAY,YAAalL,GAC7BoL,EAAKR,kBAAmBS,MAAMJ,QAASjL,GACvCoL,EAAKJ,gBAEL9K,OAAOoL,cAAc,IAAIC,MAAM,sBACnC,EAEAN,QAAQE,aAAe,YAAanL,GAChCoL,EAAKP,qBAAsBQ,MAAMJ,QAASjL,GAC1CoL,EAAKJ,gBACL9K,OAAOoL,cAAc,IAAIC,MAAM,sBACnC,EAGA5K,KAAKmK,gBAAkB,IAAMnK,KAAKqK,gBAClC9K,OAAO4J,iBAAiB,WAAYnJ,KAAKmK,gBAC7C,CACJ,CAEA,OAAApB,GAEQ/I,KAAKiK,oBACLK,QAAQC,UAAYvK,KAAKiK,kBACzBjK,KAAKiK,kBAAoB,MAEzBjK,KAAKkK,uBACLI,QAAQE,aAAexK,KAAKkK,qBAC5BlK,KAAKkK,qBAAuB,MAG5BlK,KAAKmK,iBAAqC,oBAAX5K,SAC/BA,OAAO0J,oBAAoB,WAAYjJ,KAAKmK,iBAC5CnK,KAAKmK,gBAAkB,MAE3BC,MAAMrB,SACV,CAEQ,aAAAsB,GACkB,oBAAX9K,QAA8C,oBAAbmF,UAE5C1E,KAAK6J,MAAM,YAAa,cAAe,CACnCgB,MAAOnG,SAASmG,MAChB3I,KAAM3C,OAAO6F,SAAS0F,SACtB9E,OAAQzG,OAAO6F,SAASY,OACxB+E,KAAMxL,OAAO6F,SAAS2F,KACtBC,SAAUtG,SAASsG,UAAY,SAC/BC,SAAU,GAAG1L,OAAO2L,cAAc3L,OAAO4L,eAEjD,ECnEE,MAAOC,UAAqB1B,EAAlC,WAAA5J,uBACIE,KAAAwE,KAAmB,SACXxE,KAAAqL,kBAAiC,IAAIC,IACrCtL,KAAAuL,eAAiB,EACjBvL,KAAAwL,aAAe,EACfxL,KAAAyL,cAAsD,KACtDzL,KAAA0L,aAAoC,KAEpC1L,KAAA2L,kBAAyC,KACzC3L,KAAAmK,gBAAuC,IAyFnD,CAvFI,IAAAP,CAAKD,GACDS,MAAMR,KAAKD,GACX3J,KAAKwL,aAAezG,KAAKuD,MAEH,oBAAX/I,SACPS,KAAK0L,aAAe1L,KAAK4L,aAAaC,KAAK7L,MAC3CT,OAAO4J,iBAAiB,SAAUnJ,KAAK0L,aAAc,CAAEI,SAAS,IAIhE9L,KAAK2L,kBAAoB,IAAM3L,KAAK+L,qBACpCxM,OAAO4J,iBAAiB,qBAAsBnJ,KAAK2L,mBAGnD3L,KAAKmK,gBAAkB,IAAMnK,KAAK+L,qBAClCxM,OAAO4J,iBAAiB,WAAYnJ,KAAKmK,iBAEjD,CAEA,OAAApB,GACQ/I,KAAK0L,cAAkC,oBAAXnM,QAC5BA,OAAO0J,oBAAoB,SAAUjJ,KAAK0L,cAE1C1L,KAAKyL,eACLnI,aAAatD,KAAKyL,eAElBzL,KAAK2L,mBAAuC,oBAAXpM,SACjCA,OAAO0J,oBAAoB,qBAAsBjJ,KAAK2L,mBACtD3L,KAAK2L,kBAAoB,MAEzB3L,KAAKmK,iBAAqC,oBAAX5K,SAC/BA,OAAO0J,oBAAoB,WAAYjJ,KAAKmK,iBAC5CnK,KAAKmK,gBAAkB,MAE3BC,MAAMrB,SACV,CAKQ,kBAAAgD,GACJ/L,KAAKqL,kBAAkBvC,QACvB9I,KAAKuL,eAAiB,EACtBvL,KAAKwL,aAAezG,KAAKuD,KAC7B,CAEQ,YAAAsD,GAEA5L,KAAKyL,eACLnI,aAAatD,KAAKyL,eAEtBzL,KAAKyL,cAAgBvI,WAAW,IAAMlD,KAAKgM,mBAAoB,IACnE,CAEQ,gBAAAA,GACJ,GAAsB,oBAAXzM,QAA8C,oBAAbmF,SAA0B,OAEtE,MAAMuH,EAAe1M,OAAO4L,YACtBe,EAAiBxH,SAASyH,gBAAgBC,aAC1CC,EAAY9M,OAAO+M,aAAe5H,SAASyH,gBAAgBE,UAC3DE,EAAmBL,EAAiBD,EAG1C,GAAIM,GAAoB,EAAG,OAE3B,MAAMC,EAAgBxI,KAAKyI,MAAOJ,EAAYE,EAAoB,KAG5DG,EAAiB1I,KAAK2I,IAAI,EAAG3I,KAAK4I,IAAI,IAAKJ,IAG7CE,EAAiB1M,KAAKuL,iBACtBvL,KAAKuL,eAAiBmB,GAI1B,IAAK,MAAMG,KAAavO,EAChBoO,GAAkBG,IAAc7M,KAAKqL,kBAAkByB,IAAID,KAC3D7M,KAAKqL,kBAAkB0B,IAAIF,GAC3B7M,KAAK6J,MAAM,eAAgB,YAAYgD,KAAc,CACjDG,MAAOH,EACPI,SAAUjN,KAAKuL,eACf2B,YAAanI,KAAKuD,MAAQtI,KAAKwL,eAI/C,EClGE,MAAO2B,UAAoBzD,EAAjC,WAAA5J,uBACIE,KAAAwE,KAAmB,QACXxE,KAAAoN,aAAyC,IAAIC,QAC7CrN,KAAAsN,iBAAgC,IAAIhC,IACpCtL,KAAAuN,SAAoC,KACpCvN,KAAAwN,UAA+E,EAwH3F,CAtHI,IAAA5D,CAAKD,GACDS,MAAMR,KAAKD,GAEa,oBAAbjF,WAGX1E,KAAKyN,gBAG2B,oBAArBC,mBACP1N,KAAKuN,SAAW,IAAIG,iBAAiB,IAAM1N,KAAKyN,iBAChDzN,KAAKuN,SAASI,QAAQjJ,SAASzD,KAAM,CAAE2M,WAAW,EAAMC,SAAS,KAEzE,CAEA,OAAA9E,GACQ/I,KAAKuN,WACLvN,KAAKuN,SAASO,aACd9N,KAAKuN,SAAW,MAGpB,IAAK,MAAM1G,QAAEA,EAAOoB,MAAEA,EAAK8F,QAAEA,KAAa/N,KAAKwN,UAC3C3G,EAAQoC,oBAAoBhB,EAAO8F,GAEvC/N,KAAKwN,UAAY,GACjBpD,MAAMrB,SACV,CAKQ,WAAAiF,CAAYnH,EAAsBoB,EAAe8F,GACrDlH,EAAQsC,iBAAiBlB,EAAO8F,GAChC/N,KAAKwN,UAAUxF,KAAK,CAAEnB,UAASoB,QAAO8F,WAC1C,CAEQ,aAAAN,GACJ/I,SAASuJ,iBAAiB,QAAQ1L,QAAS2L,IACvClO,KAAKmO,kBAAkBD,IAE/B,CAEQ,iBAAAC,CAAkBD,GACtB,GAAIlO,KAAKoN,aAAaN,IAAIoB,GAAO,OACjClO,KAAKoN,aAAaL,IAAImB,GAEtB,MAAME,EAASF,EAAKG,IAAMH,EAAK1J,MAAQ,QAAQR,KAAKC,SAAStB,SAAS,IAAI2L,OAAO,EAAG,KAGpFtO,KAAK6J,MAAM,YAAa,cAAe,CACnCuE,SACAG,OAAQL,EAAKK,OACbxN,OAAQmN,EAAKnN,OACbyN,WAAYN,EAAKO,SAASzM,SAI9BwH,MAAMkF,KAAKR,EAAKO,UAAUlM,QAASoM,IAC/B,GAAIA,aAAiBC,kBACjBD,aAAiBE,mBACjBF,aAAiBG,oBAAqB,CACtC,IAAKH,EAAMnK,MAAuB,WAAfmK,EAAM5M,MAAoC,WAAf4M,EAAM5M,KAAmB,OAEvE,CAAC,QAAS,OAAQ,UAAUQ,QAASuH,IAajC9J,KAAKgO,YAAYW,EAAO7E,EAZR,KACZ,MAAMtH,EAAM,GAAG4L,KAAUO,EAAMnK,QAAQsF,IAClC9J,KAAKsN,iBAAiBR,IAAItK,KAC3BxC,KAAKsN,iBAAiBP,IAAIvK,GAC1BxC,KAAK6J,MAAM,mBAAoB,yBAA0B,CACrDuE,SACAW,UAAWJ,EAAMnK,KACjBwK,UAAWL,EAAM5M,KACjBkN,gBAAiBnF,QAMrC,IAcJ9J,KAAKgO,YAAYE,EAAM,SAVD,KAClBlO,KAAK6J,MAAM,cAAe,iBAAkB,CACxCuE,SACAG,OAAQL,EAAKK,OACbxN,OAAQmN,EAAKnN,SAIjBf,KAAKkP,aAAahB,IAG1B,CAEQ,YAAAgB,CAAahB,GACjB,MAAMiB,EAAajB,EAAKkB,cACpB,6CAGJ,IAAKD,GAAY1P,QAAUO,KAAK2J,QAAS,OAEzC,MAAM0F,EAAQF,EAAW1P,MACnB6P,EAAqB,CAAA,EAGrBC,EAAiBrB,EAAKkB,cAAgC,oCACtDI,EAAgBtB,EAAKkB,cAAgC,mCACrDK,EAAevB,EAAKkB,cAAgC,6CACpDM,EAAaxB,EAAKkB,cAAgC,iCAEpDG,GAAgB9P,QAAO6P,EAAOK,UAAYJ,EAAe9P,OACzD+P,GAAe/P,QAAO6P,EAAOM,SAAWJ,EAAc/P,OACtDgQ,GAAchQ,QAAO6P,EAAOO,QAAUJ,EAAahQ,OACnDiQ,GAAYjQ,QAAO6P,EAAOQ,MAAQJ,EAAWjQ,OAEjDO,KAAK2J,QAAQoG,SAASV,EAAOC,EACjC,EC3HE,MAAOU,UAAqBtG,EAAlC,WAAA5J,uBACIE,KAAAwE,KAAmB,SACXxE,KAAA0L,aAAiD,IAqC7D,CAnCI,IAAA9B,CAAKD,GACDS,MAAMR,KAAKD,GAEa,oBAAbjF,WACP1E,KAAK0L,aAAe1L,KAAKiQ,YAAYpE,KAAK7L,MAC1C0E,SAASyE,iBAAiB,QAASnJ,KAAK0L,cAAc,GAE9D,CAEA,OAAA3C,GACQ/I,KAAK0L,cAAoC,oBAAbhH,UAC5BA,SAASuE,oBAAoB,QAASjJ,KAAK0L,cAAc,GAE7DtB,MAAMrB,SACV,CAEQ,WAAAkH,CAAYC,GAChB,MAAMC,EAASD,EAAEC,OACjB,KAAKA,INmP2BtJ,EMnPQsJ,ENoPtB,CAAC,SAAU,IAAK,SAEpBC,SAASvJ,EAAQwJ,UAC/BxJ,EAAQyJ,aAAa,qBACrBzJ,EAAQ0J,UAAUC,SAAS,iBMxPsB,ONmPnD,IAAkC3J,EMjPhC,MAAM4J,EAAa7J,EAAeuJ,EAAQ,KACpCO,ENoOR,SAAyB7J,GAC3B,MAAO,CACH8J,IAAK9J,EAAQwJ,SAASO,eAAiB,UACvCvC,GAAIxH,EAAQwH,IAAM,GAClBwC,UAAWhK,EAAQgK,WAAa,GAChCC,KAAMlK,EAAeC,EAAS,IAEtC,CM3O4BkK,CAAeZ,GAEnCnQ,KAAK6J,MAAM,eAAgB,iBAAkB,CACzC4G,aACAO,YAAab,EAAOE,QAAQO,cAC5BK,UAAWP,EAAYrC,GACvB6C,aAAcR,EAAYG,UAC1BM,KAAOhB,EAA6BgB,WAAQ1P,EAC5C2P,EAAGpN,KAAKqN,MAAOnB,EAAEoB,QAAU/R,OAAO2L,WAAc,KAChDqG,EAAGvN,KAAKqN,MAAOnB,EAAEsB,QAAUjS,OAAO4L,YAAe,KACjDsG,cAAelS,OAAO2L,WACtBwG,eAAgBnS,OAAO4L,aAE/B,ECvCE,MAAOwG,UAAyBjI,EAAtC,WAAA5J,uBACIE,KAAAwE,KAAmB,aACXxE,KAAAwL,aAAe,EACfxL,KAAA4R,oBAAsB,EACtB5R,KAAA6R,WAAY,EACZ7R,KAAA8R,kBAA0D,KAC1D9R,KAAA+R,iBAAwC,KACxC/R,KAAAgS,qBAA4C,KAC5ChS,KAAAiS,uBAA8C,KAE9CjS,KAAA2L,kBAAyC,KACzC3L,KAAAmK,gBAAuC,IAsGnD,CApGI,IAAAP,CAAKD,GACDS,MAAMR,KAAKD,GACX3J,KAAKwL,aAAezG,KAAKuD,MACzBtI,KAAK4R,oBAAsB7M,KAAKuD,MAER,oBAAb5D,UAA8C,oBAAXnF,SAG9CS,KAAK+R,iBAAmB/R,KAAKkS,YAAYrG,KAAK7L,MAC9CA,KAAKgS,qBAAuBhS,KAAKmS,gBAAgBtG,KAAK7L,MACtDA,KAAKiS,uBAAyB,KACO,WAA7BvN,SAAS0E,gBACTpJ,KAAKmS,kBAGLnS,KAAK4R,oBAAsB7M,KAAKuD,OAIxC,CAAC,YAAa,UAAW,aAAc,UAAU/F,QAAS0F,IACtDvD,SAASyE,iBAAiBlB,EAAOjI,KAAK+R,iBAAmB,CAAEjG,SAAS,MAIxEvM,OAAO4J,iBAAiB,eAAgBnJ,KAAKgS,sBAC7CtN,SAASyE,iBAAiB,mBAAoBnJ,KAAKiS,wBAInDjS,KAAK2L,kBAAoB,IAAM3L,KAAK+L,qBACpCxM,OAAO4J,iBAAiB,qBAAsBnJ,KAAK2L,mBAGnD3L,KAAKmK,gBAAkB,IAAMnK,KAAK+L,qBAClCxM,OAAO4J,iBAAiB,WAAYnJ,KAAKmK,iBAC7C,CAEA,OAAApB,GACQ/I,KAAK+R,kBAAwC,oBAAbrN,UAChC,CAAC,YAAa,UAAW,aAAc,UAAUnC,QAAS0F,IACtDvD,SAASuE,oBAAoBhB,EAAOjI,KAAK+R,oBAG7C/R,KAAKgS,sBAA0C,oBAAXzS,QACpCA,OAAO0J,oBAAoB,eAAgBjJ,KAAKgS,sBAEhDhS,KAAKiS,wBAA8C,oBAAbvN,UACtCA,SAASuE,oBAAoB,mBAAoBjJ,KAAKiS,wBAEtDjS,KAAK2L,mBAAuC,oBAAXpM,SACjCA,OAAO0J,oBAAoB,qBAAsBjJ,KAAK2L,mBACtD3L,KAAK2L,kBAAoB,MAEzB3L,KAAKmK,iBAAqC,oBAAX5K,SAC/BA,OAAO0J,oBAAoB,WAAYjJ,KAAKmK,iBAC5CnK,KAAKmK,gBAAkB,MAEvBnK,KAAK8R,mBACLxO,aAAatD,KAAK8R,mBAEtB1H,MAAMrB,SACV,CAEQ,kBAAAgD,GACJ/L,KAAKwL,aAAezG,KAAKuD,MACzBtI,KAAK4R,oBAAsB7M,KAAKuD,MAChCtI,KAAK6R,WAAY,EACb7R,KAAK8R,oBACLxO,aAAatD,KAAK8R,mBAClB9R,KAAK8R,kBAAoB,KAEjC,CAEQ,WAAAI,GACClS,KAAK6R,YACN7R,KAAK6R,WAAY,EACjB7R,KAAK6J,MAAM,aAAc,eAAgB,CACrCuI,aAAcrN,KAAKuD,MAAQtI,KAAKwL,gBAKpCxL,KAAK8R,mBACLxO,aAAatD,KAAK8R,mBAEtB9R,KAAK8R,kBAAoB5O,WAAW,KAChClD,KAAK6R,WAAY,GAClB,IACP,CAEQ,eAAAM,GACJ,MAAME,EAAYrO,KAAKyI,OAAO1H,KAAKuD,MAAQtI,KAAK4R,qBAAuB,KAEnES,EAAY,GACZrS,KAAK6J,MAAM,eAAgB,aAAc,CACrCyI,QAASD,EACTE,QAASvS,KAAK6R,WAG1B,EC/GE,MAAOW,UAAwB9I,EAArC,WAAA5J,uBACIE,KAAAwE,KAAmB,YACXxE,KAAAyS,iBAAgC,IAAInH,IACpCtL,KAAA0L,aAAiD,KAEjD1L,KAAA2L,kBAAyC,KACzC3L,KAAAmK,gBAAuC,IAgEnD,CA9DI,IAAAP,CAAKD,GACDS,MAAMR,KAAKD,GAEa,oBAAbjF,WACP1E,KAAK0L,aAAe1L,KAAKiQ,YAAYpE,KAAK7L,MAC1C0E,SAASyE,iBAAiB,QAASnJ,KAAK0L,cAAc,IAGpC,oBAAXnM,SAGPS,KAAK2L,kBAAoB,IAAM3L,KAAK+L,qBACpCxM,OAAO4J,iBAAiB,qBAAsBnJ,KAAK2L,mBAGnD3L,KAAKmK,gBAAkB,IAAMnK,KAAK+L,qBAClCxM,OAAO4J,iBAAiB,WAAYnJ,KAAKmK,iBAEjD,CAEA,OAAApB,GACQ/I,KAAK0L,cAAoC,oBAAbhH,UAC5BA,SAASuE,oBAAoB,QAASjJ,KAAK0L,cAAc,GAEzD1L,KAAK2L,mBAAuC,oBAAXpM,SACjCA,OAAO0J,oBAAoB,qBAAsBjJ,KAAK2L,mBACtD3L,KAAK2L,kBAAoB,MAEzB3L,KAAKmK,iBAAqC,oBAAX5K,SAC/BA,OAAO0J,oBAAoB,WAAYjJ,KAAKmK,iBAC5CnK,KAAKmK,gBAAkB,MAE3BC,MAAMrB,SACV,CAKQ,kBAAAgD,GACJ/L,KAAKyS,iBAAiB3J,OAC1B,CAEQ,WAAAmH,CAAYC,GAChB,MAAMwC,EAAQxC,EAAEC,OAAmBwC,QAAQ,KAC3C,IAAKD,IAASA,EAAKvB,KAAM,OAEzB,MAAM7Q,EAAMoS,EAAKvB,MR4JnB,SAAwB7Q,GAC1B,MAAMsS,EAAWtS,EAAIsQ,cACrB,OAAOrS,EAAoBsU,KAAMC,GAAQF,EAASxC,SAAS0C,GAC/D,EQ5JaC,CAAczS,KAGfN,KAAKyS,iBAAiB3F,IAAIxM,KAC9BN,KAAKyS,iBAAiB1F,IAAIzM,GAE1BN,KAAK6J,MAAM,WAAY,gBAAiB,CACpCvJ,MACA0S,SAAUzM,EAAmBjG,GAC7B2S,SAAUvM,EAAiBpG,GAC3B4S,SAAUtM,EAAe8L,EAAM,QAEvC,ECrEE,MAAOS,UAAyBzJ,EAAtC,WAAA5J,uBACIE,KAAAwE,KAAmB,aACXxE,KAAAoT,iBAAkB,EAClBpT,KAAAwL,aAAe,EACfxL,KAAA0L,aAAiD,KAEjD1L,KAAA2L,kBAAyC,KACzC3L,KAAAmK,gBAAuC,IAwDnD,CAtDI,IAAAP,CAAKD,GACDS,MAAMR,KAAKD,GACX3J,KAAKwL,aAAezG,KAAKuD,MT2QJ,oBAAd1G,WACJ,iEAAiEyR,KACpEzR,UAAU0R,aSxQc,oBAAb5O,WACP1E,KAAK0L,aAAe1L,KAAKuT,iBAAiB1H,KAAK7L,MAC/C0E,SAASyE,iBAAiB,aAAcnJ,KAAK0L,eAG3B,oBAAXnM,SAGPS,KAAK2L,kBAAoB,IAAM3L,KAAK+L,qBACpCxM,OAAO4J,iBAAiB,qBAAsBnJ,KAAK2L,mBAGnD3L,KAAKmK,gBAAkB,IAAMnK,KAAK+L,qBAClCxM,OAAO4J,iBAAiB,WAAYnJ,KAAKmK,kBAEjD,CAEA,OAAApB,GACQ/I,KAAK0L,cAAoC,oBAAbhH,UAC5BA,SAASuE,oBAAoB,aAAcjJ,KAAK0L,cAEhD1L,KAAK2L,mBAAuC,oBAAXpM,SACjCA,OAAO0J,oBAAoB,qBAAsBjJ,KAAK2L,mBACtD3L,KAAK2L,kBAAoB,MAEzB3L,KAAKmK,iBAAqC,oBAAX5K,SAC/BA,OAAO0J,oBAAoB,WAAYjJ,KAAKmK,iBAC5CnK,KAAKmK,gBAAkB,MAE3BC,MAAMrB,SACV,CAEQ,kBAAAgD,GACJ/L,KAAKoT,iBAAkB,EACvBpT,KAAKwL,aAAezG,KAAKuD,KAC7B,CAEQ,gBAAAiL,CAAiBrD,GAEjBA,EAAEsB,QAAU,GAAKxR,KAAKoT,kBAE1BpT,KAAKoT,iBAAkB,EAEvBpT,KAAK6J,MAAM,cAAe,uBAAwB,CAC9C2J,WAAYzO,KAAKuD,MAAQtI,KAAKwL,eAEtC,EC/DE,MAAOiI,UAAqB/J,EAAlC,WAAA5J,uBACIE,KAAAwE,KAAmB,SACXxE,KAAA0T,kBAAsD,KACtD1T,KAAA2T,sBAAqE,IAyCjF,CAvCI,IAAA/J,CAAKD,GACDS,MAAMR,KAAKD,GAEW,oBAAXpK,SACPS,KAAK0T,kBAAoB1T,KAAK4T,YAAY/H,KAAK7L,MAC/CA,KAAK2T,sBAAwB3T,KAAK6T,gBAAgBhI,KAAK7L,MAEvDT,OAAO4J,iBAAiB,QAASnJ,KAAK0T,mBACtCnU,OAAO4J,iBAAiB,qBAAsBnJ,KAAK2T,uBAE3D,CAEA,OAAA5K,GAC0B,oBAAXxJ,SACHS,KAAK0T,mBACLnU,OAAO0J,oBAAoB,QAASjJ,KAAK0T,mBAEzC1T,KAAK2T,uBACLpU,OAAO0J,oBAAoB,qBAAsBjJ,KAAK2T,wBAG9DvJ,MAAMrB,SACV,CAEQ,WAAA6K,CAAY1D,GAChBlQ,KAAK6J,MAAM,QAAS,mBAAoB,CACpCnI,QAASwO,EAAExO,QACXsR,SAAU9C,EAAE8C,SACZc,KAAM5D,EAAE6D,OACRC,OAAQ9D,EAAE+D,MACVC,MAAOhE,EAAEtR,OAAOsV,OAAOhN,UAAU,EAAG,MAE5C,CAEQ,eAAA2M,CAAgB3D,GACpBlQ,KAAK6J,MAAM,QAAS,8BAA+B,CAC/CsK,OAAQC,OAAOlE,EAAEiE,QAAQjN,UAAU,EAAG,MAE9C,EC3CE,MAAOmN,UAA0B3K,EAAvC,WAAA5J,uBACIE,KAAAwE,KAAmB,cACXxE,KAAAsU,iBAAwC,KACxCtU,KAAAuU,UAAmC,GACnCvU,KAAAwU,0BAAiD,IA8I7D,CA5II,IAAA5K,CAAKD,GACDS,MAAMR,KAAKD,GAEW,oBAAXpK,SAEPS,KAAKsU,iBAAmB,KAEpBpR,WAAW,IAAMlD,KAAKyU,mBAAoB,MAE9ClV,OAAO4J,iBAAiB,OAAQnJ,KAAKsU,kBAE7C,CAEA,OAAAvL,GACQ/I,KAAKsU,kBAAsC,oBAAX/U,QAChCA,OAAO0J,oBAAoB,OAAQjJ,KAAKsU,kBAE5C,IAAK,MAAM/G,KAAYvN,KAAKuU,UACxBhH,EAASO,aAEb9N,KAAKuU,UAAY,GACbvU,KAAKwU,2BAA+C,oBAAXjV,QACzCA,OAAO0J,oBAAoB,mBAAoBjJ,KAAKwU,2BAExDpK,MAAMrB,SACV,CAEQ,gBAAA0L,GACJ,GAA2B,oBAAhBC,YAA6B,OAGxC,MAAMpS,EAAUoS,YAAYC,iBAAiB,cAE7C,GAAIrS,EAAQN,OAAS,EAAG,CACpB,MAAM4S,EAAYtS,EAAQ,GAEpBuS,EAAW7Q,KAAKqN,MAAMuD,EAAUE,aAAeF,EAAUG,WACzDC,EAAWhR,KAAKqN,MAAMuD,EAAUK,yBAA2BL,EAAUG,WACrEG,EAAOlR,KAAKqN,MAAMuD,EAAUO,cAAgBP,EAAUQ,cACtDC,EAAiBrR,KAAKqN,MAAMuD,EAAUS,eAAiBT,EAAUG,WAEvE/U,KAAK6J,MAAM,cAAe,mBAAoB,CAC1CgL,WACAG,WACAE,OACAG,iBAEAC,IAAKtR,KAAKqN,MAAMuD,EAAUW,gBAAkBX,EAAUY,mBACtDC,WAAYzR,KAAKqN,MAAMuD,EAAUc,WAAad,EAAUe,cACxDC,aAAchB,EAAUgB,cAEhC,KAAO,CAEH,MAAMC,EAASnB,YAAYmB,OAC3B,IAAKA,EAAQ,OAEb,MAAMhB,EAAWgB,EAAOf,aAAee,EAAOC,gBACxCd,EAAWa,EAAOZ,yBAA2BY,EAAOC,gBACpDZ,EAAOW,EAAOV,cAAgBU,EAAOC,gBACrCT,EAAiBQ,EAAOR,eAAiBQ,EAAOC,gBAEtD9V,KAAK6J,MAAM,cAAe,mBAAoB,CAC1CgL,WACAG,WACAE,OACAG,kBAER,CAGArV,KAAK+V,gBACT,CAEQ,cAAAA,GAEJ,GAAI,wBAAyBxW,OAAQ,CACjC,IACI,MAAMyW,EAAc,IAAIC,oBAAqBC,IACzC,MAAM5T,EAAU4T,EAAUC,aACpBC,EAAY9T,EAAQA,EAAQN,OAAS,GACvCoU,GACApW,KAAK6J,MAAM,cAAe,kBAAmB,CACzCwM,OAAQ,MACR5W,MAAOuE,KAAKqN,MAAM+E,EAAUrB,eAIxCiB,EAAYrI,QAAQ,CAAE5L,KAAM,2BAA4BuU,UAAU,IAClEtW,KAAKuU,UAAUvM,KAAKgO,EACxB,CAAE,MAEF,CAGA,IACI,MAAMO,EAAc,IAAIN,oBAAqBC,IACzC,MACMM,EADUN,EAAUC,aACC,GACvBK,GACAxW,KAAK6J,MAAM,cAAe,kBAAmB,CACzCwM,OAAQ,MACR5W,MAAOuE,KAAKqN,MAAMmF,EAAWC,gBAAkBD,EAAWzB,eAItEwB,EAAY5I,QAAQ,CAAE5L,KAAM,cAAeuU,UAAU,IACrDtW,KAAKuU,UAAUvM,KAAKuO,EACxB,CAAE,MAEF,CAGA,IACI,IAAIG,EAAW,EACf,MAAMC,EAAc,IAAIV,oBAAqBC,IACzBA,EAAUC,aAClB5T,QAASqU,IACRA,EAAMC,iBACPH,GAAYE,EAAMnX,OAAS,OAIvCkX,EAAYhJ,QAAQ,CAAE5L,KAAM,eAAgBuU,UAAU,IACtDtW,KAAKuU,UAAUvM,KAAK2O,GAGpB3W,KAAKwU,0BAA4B,KACI,WAA7B9P,SAAS0E,iBAAgCsN,EAAW,GACpD1W,KAAK6J,MAAM,cAAe,kBAAmB,CACzCwM,OAAQ,MACR5W,MAAOuE,KAAKqN,MAAiB,IAAXqF,GAAmB,OAIjDnX,OAAO4J,iBAAiB,mBAAoBnJ,KAAKwU,0BAA2B,CAAEsC,MAAM,GACxF,CAAE,MAEF,CACJ,CACJ,ECvGE,MAAOC,UAAyBrN,EAAtC,WAAA5J,uBACIE,KAAAwE,KAAmB,aACXxE,KAAAgX,MAAoB,GACpBhX,KAAAiX,WAA0B,IAAI3L,IAC9BtL,KAAAkX,cAAqC,KACrClX,KAAAmX,YAAgD,KAChDnX,KAAAoX,YAA+C,GAC/CpX,KAAAqX,sBAAqE,EAsiBjF,CApiBI,UAAMzN,CAAKD,GACPS,MAAMR,KAAKD,GAEW,oBAAXpK,SAGXS,KAAKsX,uBAGCtX,KAAKuX,aAGXvX,KAAKwX,gBACT,CAEA,OAAAzO,GACI/I,KAAKyX,iBACL,IAAK,MAAMC,KAAS1X,KAAKoX,YACrB9T,aAAaoU,GAEjB1X,KAAKoX,YAAc,GACnB,IAAK,MAAMvQ,QAAEA,EAAOkH,QAAEA,KAAa/N,KAAKqX,sBACpCxQ,EAAQoC,oBAAoB,QAAS8E,GAEzC/N,KAAKqX,sBAAwB,GAC7BjN,MAAMrB,SACV,CAEQ,cAAAuO,GACJ,IACI,MAAMhO,EAAS9D,aAAapB,QAAQ,uBACpC,GAAIkF,EAAQ,CACR,MAAM1I,EAAOJ,KAAK+I,MAAMD,GACxBtJ,KAAKiX,WAAa,IAAI3L,IAAI1K,EAAKoW,OAAS,GAC5C,CACJ,CAAE,MAAO9G,GAET,CACJ,CAEQ,cAAAyH,GACJ,IACInS,aAAalB,QAAQ,sBAAuB9D,KAAKC,UAAU,CACvDuW,MAAOxN,MAAMkF,KAAK1O,KAAKiX,YACvBW,UAAW7S,KAAKuD,QAExB,CAAE,MAAO4H,GAET,CACJ,CAEQ,gBAAMqH,GACV,IAAKvX,KAAK2J,QAAS,OAEnB,MAAM5J,EAASC,KAAK2J,QAAQkO,YACtBC,EAAc9X,KAAK2J,QAAQoO,iBAC3Bnb,EAAcmD,EAAOnD,aAAe,wBAE1C,IACI,MAAM0D,EAAM0X,mBAAmBzY,OAAO6F,SAAS+L,MACzCtQ,QAAiBuC,MACnB,GAAGxG,2BAAqCkb,SAAmBxX,KAG/D,IAAKO,EAASQ,GAAI,OAElB,MAAMT,QAAaC,EAASM,OACxBP,EAAKW,SAAWiI,MAAMC,QAAQ7I,EAAKA,QACnCZ,KAAKgX,MAAQpW,EAAKA,KAAK2H,OAAQ2F,GAC3BlO,KAAKiY,eAAe/J,IAGhC,CAAE,MAAOtP,GACLU,QAAQV,MAAM,mCAAoCA,EACtD,CACJ,CAEQ,cAAAqZ,CAAe/J,GAEnB,GAA2B,qBAAvBA,EAAKgK,eACL,GAAIlY,KAAKiX,WAAWnK,IAAIoB,EAAKiK,KAAM,OAAO,OACvC,GAA2B,qBAAvBjK,EAAKgK,cAAsC,CAClD,MAAME,EAAa,gBAAgBlK,EAAKiK,YACxC,GAAIhU,eAAeC,QAAQgU,GAAa,OAAO,CACnD,CACA,OAAO,CACX,CAEQ,aAAAZ,GACJxX,KAAKgX,MAAMzU,QAAQ2L,IACf,OAAQA,EAAKmK,QAAQtW,MACjB,IAAK,QACD/B,KAAKoX,YAAYpP,KAAK9E,WAAW,IAAMlD,KAAKsY,SAASpK,GAAmC,KAA3BA,EAAKmK,QAAQ5Y,OAAS,KACnF,MACJ,IAAK,SACDO,KAAKuY,mBAAmBrK,GACxB,MACJ,IAAK,cACDlO,KAAKwY,uBAAuBtK,GAC5B,MACJ,IAAK,QACDlO,KAAKyY,kBAAkBvK,KAIvC,CAEQ,kBAAAqK,CAAmBrK,GACvB,MAAMwK,EAAYxK,EAAKmK,QAAQ5Y,OAAS,GAExCO,KAAKkX,cAAgB,KACM3X,OAAOoZ,SAAWjU,SAASyH,gBAAgBC,aAAe7M,OAAO4L,aAAgB,KACnFuN,IACjB1Y,KAAKsY,SAASpK,GACVlO,KAAKkX,eACL3X,OAAO0J,oBAAoB,SAAUjJ,KAAKkX,iBAKtD3X,OAAO4J,iBAAiB,SAAUnJ,KAAKkX,cAAe,CAAEpL,SAAS,GACrE,CAEQ,sBAAA0M,CAAuBtK,GAC3BlO,KAAKmX,YAAejH,IACZA,EAAEsB,SAAW,IACbxR,KAAKsY,SAASpK,GACVlO,KAAKmX,aACLzS,SAASuE,oBAAoB,WAAYjJ,KAAKmX,eAK1DzS,SAASyE,iBAAiB,WAAYnJ,KAAKmX,YAC/C,CAEQ,iBAAAsB,CAAkBvK,GACtB,IAAKA,EAAKmK,QAAQO,SAAU,OAEXlU,SAASuJ,iBAAiBC,EAAKmK,QAAQO,UAC/CrW,QAAQsW,IACb,MAAM9K,EAAU,IAAM/N,KAAKsY,SAASpK,GACpC2K,EAAG1P,iBAAiB,QAAS4E,GAC7B/N,KAAKqX,sBAAsBrP,KAAK,CAAEnB,QAASgS,EAAI9K,aAEvD,CAEQ,cAAA0J,GACAzX,KAAKkX,eACL3X,OAAO0J,oBAAoB,SAAUjJ,KAAKkX,eAE1ClX,KAAKmX,aACLzS,SAASuE,oBAAoB,WAAYjJ,KAAKmX,YAEtD,CAEQ,cAAMmB,CAASpK,GAEdlO,KAAKiY,eAAe/J,KAGzBlO,KAAKiX,WAAWlK,IAAImB,EAAKiK,KACzBnY,KAAK2X,iBACLxT,eAAeG,QAAQ,gBAAgB4J,EAAKiK,YAAa,cAGnDnY,KAAK8Y,cAAc5K,EAAKiK,KAG9BnY,KAAK+Y,WAAW7K,GACpB,CAEQ,mBAAM4K,CAAc1K,GACxB,IAAKpO,KAAK2J,QAAS,OAEnB,MACM/M,EADSoD,KAAK2J,QAAQkO,YACDjb,aAAe,wBAE1C,UACUwG,MAAM,GAAGxG,2BAAqCwR,SAAe,CAC/DrN,OAAQ,OACRC,QAAS,CAAE,eAAgB,qBAEnC,CAAE,MAAOkP,GAET,CACJ,CAEQ,UAAA6I,CAAW7K,GAEf,MAAM8K,EAAUtU,SAASuU,cAAc,OACvCD,EAAQ3K,GAAK,wBAAwBH,EAAKiK,MAC1Ca,EAAQE,MAAMC,QAAU,yXAgBxB,MAAMC,EAAY1U,SAASuU,cAAc,OACzCG,EAAU/K,GAAK,gBAAgBH,EAAKiK,MAEpC,MAAMe,EAAQhL,EAAKgL,OAAS,CAAA,EAC5BE,EAAUF,MAAMC,QAAU,6BACRD,EAAMG,iBAAmB,0CACtBH,EAAMI,cAAgB,iRAW3CtZ,KAAKuZ,aAAarL,EAAMkL,GAExBJ,EAAQQ,YAAYJ,GACpB1U,SAASzD,KAAKuY,YAAYR,GAG1BS,sBAAsB,KAClBT,EAAQE,MAAMQ,QAAU,IACxBN,EAAUF,MAAMS,UAAY,gBAC5BP,EAAUF,MAAMQ,QAAU,MAI9B1Z,KAAK4Z,gBAAgB1L,EAAM8K,EAASI,EACxC,CAKQ,UAAAS,CAAWC,GACf,MAAMC,EAAMrV,SAASuU,cAAc,OAEnC,OADAc,EAAI/S,YAAc8S,EACXC,EAAIC,SACf,CAKQ,YAAAT,CAAarL,EAAgBkL,GACjC,MAAMF,EAAQhL,EAAKgL,OAAS,CAAA,EACtBe,EAAef,EAAMe,cAAgB,UACrCC,EAAYhB,EAAMgB,WAAa,UAG/BC,EAAWzV,SAASuU,cAAc,UACxCkB,EAAS9L,GAAK,qBACd8L,EAASjB,MAAMC,QAAU,8QAWzBgB,EAASnT,YAAc,IACvBoS,EAAUI,YAAYW,GAGtB,MAAMC,EAAW1V,SAASuU,cAAc,MACxCmB,EAASlB,MAAMC,QAAU,iEAAiEnZ,KAAK6Z,WAAWK,MAC1GE,EAASpT,YAAckH,EAAKkM,UAAY,gBACxChB,EAAUI,YAAYY,GAGtB,MAAMC,EAAc3V,SAASuU,cAAc,KAC3CoB,EAAYnB,MAAMC,QAAU,wDAC5BkB,EAAYrT,YAAckH,EAAKmM,aAAe,yBAC9CjB,EAAUI,YAAYa,GAGtB,MAAMC,EAAc5V,SAASuU,cAAc,QAC3CqB,EAAYjM,GAAK,uBAGjBH,EAAKqM,OAAOhY,QAAQoM,IAChB,MAAM6L,EAAe9V,SAASuU,cAAc,OAG5C,GAFAuB,EAAatB,MAAMuB,aAAe,OAEf,aAAf9L,EAAM5M,KAAqB,CAE3B,MAAM2Y,EAAQhW,SAASuU,cAAc,SACrCyB,EAAMxB,MAAMC,QAAU,yEAAyEnZ,KAAK6Z,WAAWK,uBAE/G,MAAMS,EAAQjW,SAASuU,cAAc,SACrC0B,EAAM5Y,KAAO,WACb4Y,EAAMnW,KAAOmK,EAAMnK,KACfmK,EAAMiM,WAAUD,EAAMC,UAAW,GACrCD,EAAMzB,MAAMC,QAAU,6BAEtBuB,EAAMlB,YAAYmB,GAElB,MAAME,EAAYnW,SAASoW,eAAenM,EAAM+L,MAAQ,KAGxD,GAFAA,EAAMlB,YAAYqB,GAEdlM,EAAMiM,SAAU,CAChB,MAAMG,EAAerW,SAASuU,cAAc,QAC5C8B,EAAa7B,MAAM8B,MAAQ,UAC3BD,EAAa/T,YAAc,IAC3B0T,EAAMlB,YAAYuB,EACtB,CAEAP,EAAahB,YAAYkB,EAC7B,KAAO,CAEH,MAAMA,EAAQhW,SAASuU,cAAc,SAIrC,GAHAyB,EAAMxB,MAAMC,QAAU,iFAAiFnZ,KAAK6Z,WAAWK,MACvHQ,EAAM1T,YAAc2H,EAAM+L,MAAQ,IAE9B/L,EAAMiM,SAAU,CAChB,MAAMG,EAAerW,SAASuU,cAAc,QAC5C8B,EAAa7B,MAAM8B,MAAQ,UAC3BD,EAAa/T,YAAc,IAC3B0T,EAAMlB,YAAYuB,EACtB,CAKA,GAHAP,EAAahB,YAAYkB,GAGN,aAAf/L,EAAM5M,KAAqB,CAC3B,MAAMkZ,EAAWvW,SAASuU,cAAc,YACxCgC,EAASzW,KAAOmK,EAAMnK,KAClBmK,EAAMuM,cAAaD,EAASC,YAAcvM,EAAMuM,aAChDvM,EAAMiM,WAAUK,EAASL,UAAW,GACxCK,EAAS/B,MAAMC,QAAU,8JACzBqB,EAAahB,YAAYyB,EAC7B,MAAO,GAAmB,WAAftM,EAAM5M,KAAmB,CAChC,MAAMoZ,EAASzW,SAASuU,cAAc,UAMtC,GALAkC,EAAO3W,KAAOmK,EAAMnK,KAChBmK,EAAMiM,WAAUO,EAAOP,UAAW,GACtCO,EAAOjC,MAAMC,QAAU,8JAGnBxK,EAAMuM,YAAa,CACnB,MAAME,EAAoB1W,SAASuU,cAAc,UACjDmC,EAAkB3b,MAAQ,GAC1B2b,EAAkBpU,YAAc2H,EAAMuM,YACtCE,EAAkBC,UAAW,EAC7BD,EAAkBE,UAAW,EAC7BH,EAAO3B,YAAY4B,EACvB,CAGIzM,EAAM5L,SAAWyG,MAAMC,QAAQkF,EAAM5L,UACrC4L,EAAM5L,QAAQR,QAASgZ,IACnB,MAAMC,EAAS9W,SAASuU,cAAc,UACnB,iBAARsC,GACPC,EAAO/b,MAAQ8b,EACfC,EAAOxU,YAAcuU,IAErBC,EAAO/b,MAAQ8b,EAAI9b,MACnB+b,EAAOxU,YAAcuU,EAAIb,OAE7BS,EAAO3B,YAAYgC,KAI3BhB,EAAahB,YAAY2B,EAC7B,KAAO,CACH,MAAMR,EAAQjW,SAASuU,cAAc,SACrC0B,EAAM5Y,KAAO4M,EAAM5M,KACnB4Y,EAAMnW,KAAOmK,EAAMnK,KACfmK,EAAMuM,cAAaP,EAAMO,YAAcvM,EAAMuM,aAC7CvM,EAAMiM,WAAUD,EAAMC,UAAW,GACrCD,EAAMzB,MAAMC,QAAU,0HACtBqB,EAAahB,YAAYmB,EAC7B,CACJ,CAEAL,EAAYd,YAAYgB,KAI5B,MAAMiB,EAAY/W,SAASuU,cAAc,UACzCwC,EAAU1Z,KAAO,SACjB0Z,EAAUvC,MAAMC,QAAU,wFAGRnZ,KAAK6Z,WAAWI,gOASlCwB,EAAUzU,YAAckH,EAAKwN,kBAAoB,YACjDpB,EAAYd,YAAYiC,GAExBrC,EAAUI,YAAYc,EAC1B,CAEQ,eAAAV,CAAgB1L,EAAgB8K,EAAsBI,GAE1D,MAAMe,EAAWf,EAAUhK,cAAc,uBACrC+K,GACAA,EAAShR,iBAAiB,QAAS,IAAMnJ,KAAK2b,UAAUzN,EAAKiK,IAAKa,EAASI,IAI/EJ,EAAQ7P,iBAAiB,QAAU+G,IAC3BA,EAAEC,SAAW6I,GACbhZ,KAAK2b,UAAUzN,EAAKiK,IAAKa,EAASI,KAK1C,MAAMkB,EAAclB,EAAUhK,cAAc,yBACxCkL,GACAA,EAAYnR,iBAAiB,SAAUyS,MAAO1L,IAC1CA,EAAE2L,uBACI7b,KAAK8b,aAAa5N,EAAMoM,EAAalB,IAGvD,CAEQ,SAAAuC,CAAUvN,EAAgB4K,EAAsBI,GACpDA,EAAUF,MAAMS,UAAY,mBAC5BP,EAAUF,MAAMQ,QAAU,IAC1BV,EAAQE,MAAMQ,QAAU,IAExBxW,WAAW,KACP8V,EAAQ+C,UACT,IACP,CAEQ,kBAAMD,CAAa5N,EAAgBoM,EAA8BlB,GACrE,IAAKpZ,KAAK2J,QAAS,OAEnB,MACM/M,EADSoD,KAAK2J,QAAQkO,YACDjb,aAAe,wBACpC2I,EAAYvF,KAAK2J,QAAQqS,eAGzBC,EAAW,IAAIC,SAAS5B,GACxB1Z,EAA4B,CAAA,EAClCqb,EAAS1Z,QAAQ,CAAC9C,EAAO+C,KACrB5B,EAAK4B,GAAO/C,IAIhB,MAAMgc,EAAYnB,EAAYlL,cAAc,yBACxCqM,IACAA,EAAUJ,UAAW,EACrBI,EAAUzU,YAAc,iBAG5B,IACI,MAAMnG,QAAiBuC,MAAM,GAAGxG,2BAAqCsR,EAAKiK,aAAc,CACpFpX,OAAQ,OACRC,QAAS,CAAE,eAAgB,oBAC3BC,KAAMT,KAAKC,UAAU,CACjB8E,YACA3E,OACAN,IAAKf,OAAO6F,SAAS+L,SAM7B,UAFqBtQ,EAASM,QAEnBI,QAAS,CAEhB6X,EAAUY,UAAY,GAEtB,MAAMmC,EAAiBzX,SAASuU,cAAc,OAC9CkD,EAAejD,MAAMC,QAAU,qCAE/B,MAAMiD,EAAc1X,SAASuU,cAAc,OAC3CmD,EAAYlD,MAAMC,QAAU,wJAE5B,MAAMkD,EAAM3X,SAAS4X,gBAAgB,6BAA8B,OACnED,EAAIE,aAAa,QAAS,MAC1BF,EAAIE,aAAa,SAAU,MAC3BF,EAAIE,aAAa,UAAW,aAC5BF,EAAIE,aAAa,OAAQ,QACzBF,EAAIE,aAAa,SAAU,SAC3BF,EAAIE,aAAa,eAAgB,KAEjC,MAAMC,EAAW9X,SAAS4X,gBAAgB,6BAA8B,YACxEE,EAASD,aAAa,SAAU,kBAChCF,EAAI7C,YAAYgD,GAChBJ,EAAY5C,YAAY6C,GAExB,MAAM3a,EAAUgD,SAASuU,cAAc,KAcvC,GAbAvX,EAAQwX,MAAMC,QAAU,qDACxBzX,EAAQsF,YAAckH,EAAKuO,gBAAkB,aAE7CN,EAAe3C,YAAY4C,GAC3BD,EAAe3C,YAAY9X,GAC3B0X,EAAUI,YAAY2C,GAGlBvb,EAAKyO,OACLrP,KAAK2J,SAASoG,SAASnP,EAAKyO,MAAOzO,GAInCsN,EAAKwO,YACL,IACI,MAAMC,EAAW,IAAIva,IAAI8L,EAAKwO,YAAand,OAAO6F,SAASwX,QACrDC,EAAeF,EAASC,SAAWrd,OAAO6F,SAASwX,OACnDE,EAAuC,WAAtBH,EAAStX,UAA+C,UAAtBsX,EAAStX,SAC9DwX,GAAgBC,EAChB5Z,WAAW,KACP3D,OAAO6F,SAAS+L,KAAOwL,EAASxL,MACjC,MAEH7R,QAAQX,KAAK,yCAA0CuP,EAAKwO,YAEpE,CAAE,MACEpd,QAAQX,KAAK,kCAAmCuP,EAAKwO,YACzD,CAIJxZ,WAAW,KACP,MAAM8V,EAAUtU,SAASqY,eAAe,wBAAwB7O,EAAKiK,OACjEa,GACAhZ,KAAK2b,UAAUzN,EAAKiK,IAAKa,EAASI,IAEvC,IACP,CACJ,CAAE,MAAOxa,GACLU,QAAQV,MAAM,+BAAgCA,GAC1C6c,IACAA,EAAUJ,UAAW,EACrBI,EAAUzU,YAAckH,EAAKwN,kBAAoB,YAEzD,CACJ,ECjkBE,SAAUsB,EAAUxY,GACtB,OAAQA,GACJ,IAAK,WACD,OAAO,IAAIwF,EACf,IAAK,SACD,OAAO,IAAIoB,EACf,IAAK,QACD,OAAO,IAAI+B,EACf,IAAK,SACD,OAAO,IAAI6C,EACf,IAAK,aACD,OAAO,IAAI2B,EACf,IAAK,YACD,OAAO,IAAIa,EACf,IAAK,aACD,OAAO,IAAIW,EACf,IAAK,SACD,OAAO,IAAIM,EACf,IAAK,cACD,OAAO,IAAIY,EACf,IAAK,aACD,OAAO,IAAI0C,EACf,QACI,MAAM,IAAIkG,MAAM,mBAAmBzY,KAE/C,CCrCM,SAAU0Y,EAAYC,GACxB,IACI,GAA4B,oBAAjB3X,aAA8B,OAAO,EAEhD,MAAM8D,EAAwB,CAC1B6T,QACAvF,UAAW7S,KAAKuD,MAChB8U,QAZY,GAgBhB,OADA5X,aAAalB,QAAQjG,EAAsBmC,KAAKC,UAAU6I,KACnD,CACX,CAAE,MACE,OAAO,CACX,CACJ,UAKgB+T,IACZ,IACI,GAA4B,oBAAjB7X,aAA8B,OAAO,KAEhD,MAAM8D,EAAS9D,aAAapB,QAAQ/F,GACpC,IAAKiL,EAAQ,OAAO,KAEpB,MAAMgU,EAAS9c,KAAK+I,MAAMD,GAG1B,OAnCgB,IAmCZgU,EAAOF,SACPG,IACO,MAGJD,CACX,CAAE,MACE,OAAO,IACX,CACJ,UAKgBC,IACZ,IACI,MAA4B,oBAAjB/X,eACXA,aAAaK,WAAWxH,IACjB,EACX,CAAE,MACE,OAAO,CACX,CACJ,OClDamf,EAOT,WAAA1d,CAAYC,EAA+B,IAJnCC,KAAAyd,YAA+B,GAC/Bzd,KAAA0d,UAAqC,GACrC1d,KAAA2d,oBAAqB,EAGzB3d,KAAKD,OAAS,CACVrC,eAAgB,CAAEC,WAAW,EAAMC,WAAW,EAAOC,iBAAiB,GACtEC,gBAAgB,EAChBC,WAAY,gBACTgC,GAIP,MAAMuJ,EAAS+T,IACX/T,GACAtJ,KAAKmd,MAAQ7T,EAAO6T,MACpBnd,KAAK2d,oBAAqB,EAC1B7e,EAAO3B,MAAM,yBAA0B6C,KAAKmd,SAE5Cnd,KAAKmd,MAAQnd,KAAKD,OAAOrC,gBAAkB,CAAEC,WAAW,GACxDqC,KAAK2d,oBAAqB,EAC1B7e,EAAO3B,MAAM,yBAA0B6C,KAAKmd,QAI5Cpd,EAAO6d,iBACP5d,KAAK0d,UAAU1V,KAAKjI,EAAO6d,gBAEnC,CAKA,KAAAC,CAAMC,GACF,MAAMC,EAAW,IAAK/d,KAAKmd,OAC3Bnd,KAAKmd,MAAQ,IAAKnd,KAAKmd,SAAUW,GACjC9d,KAAK2d,oBAAqB,EAE1BT,EAAYld,KAAKmd,OACjBre,EAAOJ,KAAK,mBAAoBof,GAEhC9d,KAAKge,aAAaD,EACtB,CAKA,MAAAE,CAAOH,GACH,MAAMC,EAAW,IAAK/d,KAAKmd,OAE3B,IAAK,MAAMe,KAAYJ,EACnB9d,KAAKmd,MAAMe,IAAY,EAE3Ble,KAAK2d,oBAAqB,EAE1BT,EAAYld,KAAKmd,OACjBre,EAAOJ,KAAK,mBAAoBof,GAEhC9d,KAAKge,aAAaD,EACtB,CAKA,MAAAI,CAAOhB,GACH,MAAMY,EAAW,IAAK/d,KAAKmd,OAC3Bnd,KAAKmd,MAAQ,IAAKA,GAClBnd,KAAK2d,oBAAqB,EAE1BT,EAAYld,KAAKmd,OACjBre,EAAOJ,KAAK,mBAAoBsB,KAAKmd,OAErCnd,KAAKge,aAAaD,EACtB,CAKA,KAAAK,GACI,MAAML,EAAW,IAAK/d,KAAKmd,OAC3Bnd,KAAKmd,MAAQnd,KAAKD,OAAOrC,gBAAkB,CAAEC,WAAW,GACxDqC,KAAK2d,oBAAqB,EAC1B3d,KAAKyd,YAAc,GAEnBF,IACAze,EAAOJ,KAAK,6BAEZsB,KAAKge,aAAaD,EACtB,CAKA,QAAAM,GACI,MAAO,IAAKre,KAAKmd,MACrB,CAKA,UAAAmB,CAAWJ,GACP,OAAgC,IAAzBle,KAAKmd,MAAMe,EACtB,CAKA,QAAAK,GAEI,QAAIve,KAAKD,OAAOjC,iBAAmBkC,KAAK2d,sBAGR,IAAzB3d,KAAKmd,MAAMxf,SACtB,CAKA,WAAA6gB,GACI,OAAOxe,KAAK2d,kBAChB,CAKA,SAAAc,GACI,ODzEqB,OAAlBpB,GC0EP,CAKA,WAAAqB,CAAYzW,GAEJjI,KAAKyd,YAAYzb,QApJL,MAqJZlD,EAAOH,KAAK,oDACZqB,KAAKyd,YAAYtV,SAErBnI,KAAKyd,YAAYzV,KAAKC,GACtBnJ,EAAO3B,MAAM,wCAAyC8K,EAAMG,UAChE,CAKA,WAAAuW,GACI,MAAMte,EAAS,IAAIL,KAAKyd,aAKxB,OAJAzd,KAAKyd,YAAc,GACfpd,EAAO2B,OAAS,GAChBlD,EAAO3B,MAAM,YAAYkD,EAAO2B,0BAE7B3B,CACX,CAKA,aAAAue,GACI,OAAO5e,KAAKyd,YAAYzb,MAC5B,CAKA,QAAA6c,CAASC,GAGL,OAFA9e,KAAK0d,UAAU1V,KAAK8W,GAEb,KACH,MAAMC,EAAQ/e,KAAK0d,UAAUsB,QAAQF,GACjCC,GAAQ,GACR/e,KAAK0d,UAAUhV,OAAOqW,EAAO,GAGzC,CAKQ,YAAAf,CAAaD,GACjB,IAAK,MAAMe,KAAY9e,KAAK0d,UACxB,IACIoB,EAAS9e,KAAKmd,MAAOY,EACzB,CAAE,MAAOnf,GACLE,EAAOF,MAAM,iCAAkCA,EACnD,CAER,QCxKSqgB,EAuBT,WAAAnf,CAAYgY,EAAqBoH,EAA4B,IACzD,GAnBIlf,KAAA3C,QAAoB,GAGpB2C,KAAAmf,eAAgB,EAGhBnf,KAAAsB,UAA2B,KAE3BtB,KAAAof,QAAyB,KAEzBpf,KAAAqf,gBAAgE,KAEhErf,KAAAsf,aAAkG,IAAIC,IAEtGvf,KAAAwf,YAA8B,GAE9Bxf,KAAAyf,eAAiC,IAGhC3H,EACD,MAAM,IAAImF,MAAM,sCAGpBjd,KAAK8X,YAAcA,EACnB9X,KAAKD,OnB4BP,SAAsBmf,EAA4B,IACpD,MAAO,IACAxiB,KACAwiB,EACHzhB,QAAS,IACFf,EAAee,WACfyhB,EAAWzhB,SAG1B,CmBrCsBiiB,CAAYR,GAG1BpgB,EAAOC,QAAUiB,KAAKD,OAAO5C,MAC7B2B,EAAOJ,KAAK,qBAAqBjC,IAAe,CAAEqb,gBAGlD9X,KAAK2f,eAAiB,IAAInC,EAAe,IAClCxd,KAAKD,OAAOtC,QACfmgB,gBAAiB,CAACT,EAAOY,KACrB/d,KAAK4d,gBAAgBT,EAAOY,MAKpC/d,KAAKoH,UAAY,IAAIvH,EAAU,CAAEjD,YAAaoD,KAAKD,OAAOnD,cAC1DoD,KAAKqH,MAAQ,IAAIF,EAAWnH,KAAKoH,UAAW,CACxC7J,UAAWyC,KAAKD,OAAOxC,UACvBC,cAAewC,KAAKD,OAAOvC,gBAI/BwC,KAAKuF,UAAYvF,KAAK4f,kBACtB5f,KAAK6f,UAAY7f,KAAK8f,kBAEtBhhB,EAAO3B,MAAM,cAAe,CAAEoI,UAAWvF,KAAKuF,UAAWsa,UAAW7f,KAAK6f,aAGrE7f,KAAKD,OAAOnD,YAAYmjB,WAAW,YACjB,oBAAXxgB,QACNA,OAAO6F,SAAS4a,SAAS5P,SAAS,cAClC7Q,OAAO6F,SAAS4a,SAAS5P,SAAS,cACnCtR,EAAOH,KAAK,qFAIhBqB,KAAKigB,cAELjgB,KAAKmf,eAAgB,EACrBrgB,EAAOJ,KAAK,gCAGZ,IAAK,MAAMwhB,KAAMlgB,KAAKyf,eAClB,IAAMS,GAAM,CAAE,MAAOhQ,GAAKpR,EAAOF,MAAM,0BAA2BsR,EAAI,CAE1ElQ,KAAKyf,eAAiB,EAC1B,CAKQ,eAAAG,GAEJ,GAAI5f,KAAKD,OAAOtC,QAAQO,gBAAkBgC,KAAK2f,eAAenB,cAAe,CACzE,MAAMhc,EAAMnE,EAA0B,QACtC,IAAI8hB,EAASjc,EAAkB1B,GAK/B,OAJK2d,IACDA,EAAS,QAAUzc,IACnBW,EAAkB7B,EAAK2d,IAEpBA,CACX,CAGA,GAAIngB,KAAKD,OAAO5B,eAAgB,CAC5B,IAAIoH,EAAYrB,EAAkB7F,GAKlC,OAJKkH,IACDA,EAAY7B,IACZW,EAAkBhG,EAAyBkH,IAExCA,CACX,CAGA,OAAOD,EAAqBtF,KAAKD,OAAO7B,WAC5C,CAKQ,eAAA4hB,GACJ,OhBFF,SAA+B3f,GACjC,MAAMigB,EAAS/hB,EACTgiB,EAAQhiB,EAEd,IAAIwhB,EAAY3b,EAAkBkc,GAClC,MAAME,EAAeC,SAASrc,EAAkBmc,IAAU,IAAK,IACzD/X,EAAMvD,KAAKuD,MAWjB,QARKuX,GAAavX,EAAMgY,EAAengB,KACnC0f,EAAYnc,IACZW,EAAkB+b,EAAQP,IAI9Bxb,EAAkBgc,EAAO/X,EAAI3F,YAEtBkd,CACX,CgBhBeW,CAAqBxgB,KAAKD,OAAOzC,eAC5C,CAKQ,eAAAsgB,CAAgBT,EAAqBY,GAIzC,GAHAjf,EAAO3B,MAAM,mBAAoB,CAAEuR,KAAMqP,EAAU0C,GAAItD,IAGnDA,EAAMxf,YAAcogB,EAASpgB,UAAW,CAEpCqC,KAAKD,OAAOtC,QAAQO,gBACpBgC,KAAKuF,UAAYD,EAAqBtF,KAAKD,OAAO7B,YAClDY,EAAOJ,KAAK,qDAIhB,MAAM4X,EAAWtW,KAAK2f,eAAehB,cACrC,IAAK,MAAM1W,KAASqO,EAEhBrO,EAAM1C,UAAYvF,KAAKuF,UACvBvF,KAAKqH,MAAMW,KAAKC,EAExB,CACJ,CAMQ,WAAAgY,GACJ,MAAMS,EAAgB1gB,KAAKD,OAAO1C,QAG5BsjB,EAAkB3gB,KAAKD,OAAO3C,aAC9BsjB,EACAA,EAAcnY,OAAQqY,GAAY,aAANA,GAElC,IAAK,MAAMC,KAAcF,EACrB,IACI,MAAMG,EAAS9D,EAAU6D,GAEnBE,EAASD,EAAOlX,KAAK5J,MACvB+gB,aAAkBvd,SAClBud,EAAO3f,MAAOxC,IACVE,EAAOF,MAAM,6BAA6BiiB,IAAcjiB,KAGhEoB,KAAK3C,QAAQ2K,KAAK8Y,GAClBhiB,EAAO3B,MAAM,kBAAkB0jB,IACnC,CAAE,MAAOjiB,GACLE,EAAOF,MAAM,0BAA0BiiB,IAAcjiB,EACzD,CAER,CAKA,KAAAiL,CACIC,EACA1B,EACA2B,EAAsC,CAAA,GAEtC,IAAK/J,KAAKmf,cAEN,YADArgB,EAAOH,KAAK,sCAIhB,MAAMsJ,EAAuB,CACzB6P,YAAa9X,KAAK8X,YAClBvS,UAAWvF,KAAKuF,UAChBsa,UAAW7f,KAAK6f,UAChB/V,UAAWA,EACX1B,YACA9H,IAAuB,oBAAXf,OAAyBA,OAAO6F,SAAS+L,KAAO,GAC5DnG,SAA8B,oBAAbtG,UAA2BA,SAASsG,eAAwBvJ,EAC7EsI,WAAY,IACLA,EACHiX,QAAStd,IACTud,cAAiC,oBAAX1hB,OAAyBA,OAAO6F,SAAS4a,cAAWve,GAE9Eyf,OhBgFc,oBAAX3hB,QAA+C,oBAAdqC,UACjC,CACH0R,UAAW,UACX6N,OAAQ,UACRC,SAAU,UACVC,SAAU,WAIX,CACH/N,UAAW1R,UAAU0R,UACrB6N,OAAQ,GAAGA,OAAOG,SAASH,OAAOI,SAClCH,SAAUxf,UAAUwf,SACpBC,SAAUG,KAAKC,iBAAiBC,kBAAkBC,UAAY,cgB5FvD7b,IACH8R,WAAW,IAAI7S,MAAO6c,cACtBC,WAAYplB,GAiBhB,GAbIuD,KAAKsB,YACJ2G,EAAc3G,UAAYtB,KAAKsB,WAIhCtB,KAAKof,UACJnX,EAAcmX,QAAUpf,KAAKof,SAIlCpf,KAAK8hB,oBAAoBhY,EAAqBC,IAGzC/J,KAAK2f,eAAepB,WAErB,OAAIve,KAAKD,OAAOtC,QAAQK,oBACpBkC,KAAK2f,eAAejB,YAAYzW,QAIpCnJ,EAAO3B,MAAM,8BAA+BiL,GAKhDpI,KAAK+hB,cAAc9Z,EAAO,KACtBjI,KAAKqH,MAAMW,KAAKC,GAChBnJ,EAAO3B,MAAM,iBAAkBiL,EAAW2B,IAElD,CAKA,IAAAiY,CAAKxd,EAAeuF,EAAsC,IACtD,MAAMkY,EAAWzd,IAA6B,oBAAbE,SAA2BA,SAASmG,MAAQ,aAC7E7K,KAAK6J,MAAM,YAAaoY,EAAU,IAC3BlY,EACH7H,KAAwB,oBAAX3C,OAAyBA,OAAO6F,SAAS0F,SAAW,IAEzE,CAOA,cAAMiF,CAASV,EAAeC,EAAqB,IAC/C,IAAKD,EAED,OADAvQ,EAAOH,KAAK,wCACL,KAGX,IhBOF,SAAuB0Q,GACzB,QAAqB,iBAAVA,IAAuBA,IAC3B,6BAA6BgE,KAAKhE,EAC7C,CgBVa6S,CAAa7S,GAEd,OADAvQ,EAAOH,KAAK,gDAAiD0Q,GACtD,KAGXvQ,EAAOJ,KAAK,uBAAwB2Q,GAEpC,MAAM0R,QAAe/gB,KAAKoH,UAAUzG,aAAa,CAC7CmX,YAAa9X,KAAK8X,YAClBvS,UAAWvF,KAAKuF,UAChB8J,QACAtF,WAAYuF,IAGhB,OAAIyR,EAAOxf,SACPzC,EAAOJ,KAAK,8CAA+CqiB,EAAOzf,WAElEtB,KAAKsB,UAAYyf,EAAOzf,WAAa,KACrCtB,KAAKqf,gBAAkB,KAChBrf,KAAKsB,YAEZxC,EAAOF,MAAM,8BAA+BmiB,EAAOniB,OAEnDoB,KAAKqf,gBAAkB,CAAEhQ,QAAOC,UACzB,KAEf,CAOQ,0BAAM6S,GACV,IAAKniB,KAAKqf,gBAAiB,OAC3B,MAAMhQ,MAAEA,EAAKC,OAAEA,GAAWtP,KAAKqf,gBAC/Brf,KAAKqf,gBAAkB,WACjBrf,KAAK+P,SAASV,EAAOC,EAC/B,CAKA,OAAA7R,CAAQ0f,GACJnd,KAAK2f,eAAexB,OAAOhB,EAC/B,CAKA,eAAAiF,GACI,OAAOpiB,KAAK2f,eAAetB,UAC/B,CAKA,KAAAlhB,CAAM4B,GACFD,EAAOC,QAAUA,EACjBD,EAAOJ,KAAK,eAAcK,EAAU,UAAY,YACpD,CAUA,KAAAsjB,CAAMjD,EAAiB9P,EAAsB,IACpC8P,GAKLpf,KAAKof,QAAUA,EACftgB,EAAOJ,KAAK,mBAAoB0gB,GAEhCpf,KAAK6J,MAAM,QAAS,mBAAoB,CACpCuV,aACG9P,KATHxQ,EAAOH,KAAK,kCAWpB,CAOA,WAAM2jB,CAAMC,EAAeC,GACvB,IAAKD,EAED,OADAzjB,EAAOH,KAAK,kCACL,EAGX,MAAM8jB,EAASD,GAAcxiB,KAAKuF,UAClCzG,EAAOJ,KAAK,oBAAqB,CAAEgQ,KAAM+T,EAAQhC,GAAI8B,IAErD,IACI,MAAMjiB,EAAM,GAAGN,KAAKD,OAAOnD,qCACrBiE,QAAiBuC,MAAM9C,EAAK,CAC9BS,OAAQ,OACRC,QAAS,CAAE,eAAgB,oBAC3BC,KAAMT,KAAKC,UAAU,CACjBqX,YAAa9X,KAAK8X,YAClB0K,WAAYC,EACZF,YAIR,OAAI1hB,EAASQ,IACTvC,EAAOJ,KAAK,qBACL,IAEXI,EAAOF,MAAM,gBAAiBiC,EAASW,SAChC,EACX,CAAE,MAAO5C,GAEL,OADAE,EAAOF,MAAM,wBAAyBA,IAC/B,CACX,CACJ,CAMA,MAAAuiB,CAAO3c,EAAcuF,EAAsC,IACvD/J,KAAK6J,MAAM,cAAerF,EAAM,IACzBuF,EACH2Y,WAAYle,GAEpB,CAkBA,GAAAme,CAAIC,GACA5iB,KAAKwf,YAAYxX,KAAK4a,GACtB9jB,EAAO3B,MAAM,wBACjB,CAMQ,aAAA4kB,CAAc9Z,EAAsB4a,GACxC,GAAgC,IAA5B7iB,KAAKwf,YAAYxd,OAEjB,YADA6gB,IAIJ,IAAI9D,EAAQ,EACZ,MAAMS,EAAcxf,KAAKwf,YAEnBsD,EAAO,KAET,GADA/D,IACIA,EAAQS,EAAYxd,OACpB,IACIwd,EAAYT,GAAO9W,EAAO6a,EAC9B,CAAE,MAAO5S,GACLpR,EAAOF,MAAM,oBAAqBsR,GAClC2S,GACJ,MAEAA,KAIR,IACIrD,EAAY,GAAGvX,EAAO6a,EAC1B,CAAE,MAAO5S,GACLpR,EAAOF,MAAM,oBAAqBsR,GAClC2S,GACJ,CACJ,CAUA,OAAAE,CAAQjE,GACJ,GAAI9e,KAAKmf,cACL,IAAML,GAAY,CAAE,MAAO5O,GAAKpR,EAAOF,MAAM,0BAA2BsR,EAAI,MAE5ElQ,KAAKyf,eAAezX,KAAK8W,EAEjC,CAKA,OAAAkE,GACI,OAAOhjB,KAAKmf,aAChB,CAaA,mBAAA8D,CACInZ,EACAoZ,GAEAljB,KAAKsf,aAAa5c,IAAIoH,EAAWoZ,GACjCpkB,EAAO3B,MAAM,2BAA4B2M,EAC7C,CAKQ,mBAAAgY,CAAoBhY,EAAmBC,GAC3C,IAAK/J,KAAKD,OAAO5C,MAAO,OAExB,MAAM+lB,EAASljB,KAAKsf,aAAapZ,IAAI4D,GACrC,GAAKoZ,EAEL,IAAK,MAAO1gB,EAAK2gB,KAAiB9gB,OAAOC,QAAQ4gB,GAAS,CACtD,MAAMzjB,EAAQsK,EAAWvH,GACzB,QAAcf,IAAVhC,EAAqB,CACrBX,EAAOH,KAAK,8BAA8B6D,sBAAwBsH,MAClE,QACJ,CAEA,IAAIsZ,GAAQ,EACZ,OAAQD,GACJ,IAAK,SAAUC,EAAyB,iBAAV3jB,EAAoB,MAClD,IAAK,SAAU2jB,EAAyB,iBAAV3jB,EAAoB,MAClD,IAAK,UAAW2jB,EAAyB,kBAAV3jB,EAAqB,MACpD,IAAK,SAAU2jB,EAAyB,iBAAV3jB,IAAuB+J,MAAMC,QAAQhK,GAAQ,MAC3E,IAAK,QAAS2jB,EAAQ5Z,MAAMC,QAAQhK,GAGnC2jB,GACDtkB,EAAOH,KAAK,sBAAsB6D,iBAAmBsH,eAAuBqZ,iBAA4B1jB,IAEhH,CACJ,CAKA,YAAAuc,GACI,OAAOhc,KAAKuF,SAChB,CAKA,YAAA8d,GACI,OAAOrjB,KAAK6f,SAChB,CAKA,cAAA9H,GACI,OAAO/X,KAAK8X,WAChB,CAKA,SAAAD,GACI,MAAO,IAAK7X,KAAKD,OACrB,CAKA,WAAMsI,SACIrI,KAAKmiB,6BACLniB,KAAKqH,MAAMgB,OACrB,CAKA,KAAA+V,GACItf,EAAOJ,KAAK,0BACZiH,EAAS3F,KAAKD,OAAO7B,YACrB8B,KAAKuF,UAAYvF,KAAK4f,kBACtB5f,KAAK6f,UAAY7f,KAAK8f,kBACtB9f,KAAKsB,UAAY,KACjBtB,KAAKqf,gBAAkB,KACvBrf,KAAKqH,MAAMyB,OACf,CAKA,UAAAwa,GAaI,GAZAxkB,EAAOJ,KAAK,yCAGZsB,KAAKqH,MAAMyB,QAGX9I,KAAK2f,eAAevB,QAGpBzY,EAAS3F,KAAKD,OAAO7B,YAGS,oBAAnBiG,eACP,IACIA,eAAe0B,WAAWxH,GAC1B8F,eAAe0B,WAAWxH,EAA0B,SACpD8F,eAAe0B,WAAWxH,GAC1B8F,eAAe0B,WAAWxH,EAC9B,CAAE,MAEF,CAIJ,GAA4B,oBAAjBmH,aACP,IACIA,aAAaK,WAAWxH,GACxBmH,aAAaK,WAAWxH,GACxBmH,aAAaK,WAAWxH,EAC5B,CAAE,MAEF,CAIJ2B,KAAKuF,UAAYvF,KAAK4f,kBACtB5f,KAAK6f,UAAY7f,KAAK8f,kBAEtBhhB,EAAOJ,KAAK,wBAChB,CAUA,mBAAM6kB,CAAc3iB,GAChB,OAAOZ,KAAKwjB,iBAAiB,2BAA4B,OAAQ,CAC7D1L,YAAa9X,KAAK8X,eACflX,GAEX,CAKA,mBAAM6iB,CAAcniB,EAAmBV,GACnC,OAAOZ,KAAKwjB,iBAAiB,4BAA4BliB,IAAa,MAAO,CACzEwW,YAAa9X,KAAK8X,eACflX,GAEX,CAKA,gBAAM8iB,CAAWtV,EAAgBxN,GAC7B,MAAML,EAAU,IACTK,EACH+iB,SAAU,IACH/iB,EAAK+iB,SACRpe,UAAWvF,KAAKuF,UAChBsa,UAAW7f,KAAK6f,UAChB+D,QAA2B,oBAAXrkB,OAAyBA,OAAO6F,SAAS+L,UAAO1P,EAChEuJ,SAA8B,oBAAbtG,UAA2BA,SAASsG,eAAwBvJ,IAGrF,OAAOzB,KAAKwjB,iBAAiB,yBAAyBpV,WAAiB,OAAQ7N,EACnF,CAKA,iBAAMsjB,CAAYjjB,GACd,OAAOZ,KAAKwjB,iBAAiB,6BAA8B,OAAQ,CAC/D1L,YAAa9X,KAAK8X,eACflX,GAEX,CAKA,uBAAMkjB,CAAkBljB,GACpB,OAAOZ,KAAKwjB,iBAAiB,gCAAiC,OAAQ,CAClE1L,YAAa9X,KAAK8X,eACflX,GAEX,CAKQ,sBAAM4iB,CAAiBthB,EAAcnB,EAAgBE,GACzD,MAAMX,EAAM,GAAGN,KAAKD,OAAOnD,cAAcsF,IACzC,IACI,MAAMrB,QAAiBuC,MAAM9C,EAAK,CAC9BS,SACAC,QAAS,CAAE,eAAgB,oBAC3BC,KAAMT,KAAKC,UAAUQ,KAEnBL,QAAaC,EAASM,OAAOC,MAAM,KAAA,CAAS,IAClD,OAAIP,EAASQ,IACTvC,EAAO3B,MAAM,cAAc4D,KAAUmB,eAC9B,CAAEX,SAAS,EAAMX,KAAMA,EAAKA,MAAQA,EAAMY,OAAQX,EAASW,UAEtE1C,EAAOF,MAAM,cAAcmC,KAAUmB,aAAgBrB,EAASW,WAAYZ,EAAKc,SACxE,CAAEH,SAAS,EAAO3C,MAAOgC,EAAKc,QAASF,OAAQX,EAASW,QACnE,CAAE,MAAO5C,GAEL,OADAE,EAAOF,MAAM,cAAcmC,KAAUmB,WAAetD,GAC7C,CAAE2C,SAAS,EAAO3C,MAAQA,EAAgB8C,QACrD,CACJ,CAKA,aAAMqH,GACFjK,EAAOJ,KAAK,4BAGNsB,KAAKqH,MAAMgB,QAGjB,IAAK,MAAMyY,KAAU9gB,KAAK3C,QAClByjB,EAAO/X,SACP+X,EAAO/X,UAGf/I,KAAK3C,QAAU,GAGf2C,KAAKqH,MAAM0B,UAEX/I,KAAKmf,eAAgB,CACzB,EC1sBJ,IAAI4E,EAAiC,KA0B/B,SAAUC,EAAQlM,EAAqB/X,GAEzC,OAAIgkB,GAAkBA,EAAehM,mBAAqBD,IAKtDiM,GACAA,EAAehb,UAInBgb,EAAiB,IAAI9E,EAAQnH,EAAa/X,IAT/BgkB,CAWf,CAGA,GAAsB,oBAAXxkB,OAAwB,CAC9BA,OAAkDykB,QAAUA,EAC5DzkB,OAA+H0kB,QAAU,CACtID,UACA/E,UACAzB,kBAUJ,MAAM0G,EAAW,KACb,MAAMC,EAAUzf,SAASuJ,iBAAiB,2BACpCmW,EAASD,EAAQA,EAAQniB,OAAS,GACxC,IAAKoiB,EAAQ,OAEb,MAAMznB,EAAYynB,EAAOC,aAAa,mBACtC,IAAK1nB,EAAW,OAEhB,MAEM2nB,EAAWN,EAAQrnB,EAAW,CAAEQ,MAFxBinB,EAAO9T,aAAa,gBAKjC/Q,OAAeglB,UAAYD,GAIJ,YAAxB5f,SAAS8f,WACT9f,SAASyE,iBAAiB,mBAAoB+a,GAE9CA,GAER"}
|
package/dist/index.d.ts
CHANGED
|
@@ -172,6 +172,8 @@ interface TrackerCore {
|
|
|
172
172
|
logActivity(data: PublicActivityData): Promise<PublicCrmResult>;
|
|
173
173
|
/** Create an opportunity (e.g., from "Request Demo" forms) */
|
|
174
174
|
createOpportunity(data: PublicOpportunityData): Promise<PublicCrmResult>;
|
|
175
|
+
/** Destroy the tracker instance, flush pending events, and clean up plugins */
|
|
176
|
+
destroy(): Promise<void>;
|
|
175
177
|
}
|
|
176
178
|
interface PublicContactData {
|
|
177
179
|
email: string;
|
|
@@ -522,7 +524,7 @@ interface StoredConsent {
|
|
|
522
524
|
*/
|
|
523
525
|
|
|
524
526
|
/** SDK Version */
|
|
525
|
-
declare const SDK_VERSION = "1.6.
|
|
527
|
+
declare const SDK_VERSION = "1.6.2";
|
|
526
528
|
|
|
527
529
|
/**
|
|
528
530
|
* Clianta SDK
|