1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-DAgIMRsK.js","assets/vendor-react-BN8-jPqf.js","assets/OnboardingTour-Bxjggqoi.js","assets/vendor-color-VSv0QChT.js","assets/vendor-i18n-CnMO7MKm.js","assets/vendor-icons-DrvWjlOJ.js","assets/vendor-redux-DiHVN3TZ.js","assets/vendor-utils-CS7fQHMJ.js","assets/vendor-motion-2T9_tTTe.js","assets/WebsiteRequiredModal-47TR6ws9.js","assets/vendor-forms-BpPhMxh5.js","assets/form-validation-CZPXLoyr.js","assets/security-CQuVOq4N.js","assets/index-BgZmAsfS.js","assets/HeaderTitle-BNJ9GR0K.js","assets/CalComBookingBanner-8tpszbRr.js","assets/ContentCard-BcZNQQof.js","assets/campaign.api-fEC-EUhu.js","assets/campaign-date-range.utils-CQfSdAz9.js","assets/index-BW7zOLMJ.js","assets/index-C5gib6wQ.js","assets/integrationsV2.api-CzQJQtKi.js","assets/index-CrmJ9CIy.js","assets/Badge-DNb8vKs8.js","assets/Switch-CKxIXUQk.js","assets/Skeleton-bmPPgpIK.js","assets/index-BuGZw2c3.js","assets/Calendar-pI4LlAdF.js","assets/useDefaultEmailTemplate-B22rAdPy.js","assets/EmailTemplatePreview-Cbk9EmID.js","assets/index-C27F7PNp.js","assets/index-Kmc2gBjN.js","assets/emailTemplate.api-C7IklDvA.js","assets/vendor-editor-C9PTgfKO.js","assets/vendor-fontawesome-Cc38dhgk.js","assets/vendor-antd-Bf2RPcTA.js","assets/vendor-editor-BGOUcOq8.css","assets/sseAuth-BwdNLBcW.js","assets/emailTemplateHelpers-DLN_Gktw.js","assets/knowledge-base.api-CeLW8Byq.js","assets/onboardingV2.api-CoGAXrY8.js","assets/CanvasFlow-Dg8X6-_L.js","assets/index-4GryHGbl.js","assets/index-DKOIsVX2.js","assets/index-C1IG9jKa.js","assets/index-DglqSlEV.js","assets/vendor-flow-6KIgW2Lm.js","assets/vendor-flow-BnuhLJ6X.css","assets/revenueAttributionV2.api-DWWghgle.js","assets/index-PhkfD0z2.js","assets/index-DxZB4TvY.js","assets/index-DG5mGqAl.js","assets/index-CI2BjeV9.js","assets/campaignV2.api-CTv4UZ8A.js","assets/Knowledgebase-RXbKWwO-.js","assets/OptionTabs-CtnQiLYt.js","assets/index-CruHpiHO.js","assets/index-BB1M7hSG.js","assets/GatewayLogo-CP5lIT2A.js","assets/index-DsdKdrfu.js","assets/index-DJaRazud.js","assets/serialize-BmunP99p.js","assets/languages.lib-OBz58dHb.js","assets/campaignBuilder.api-YzL5VElN.js","assets/TextArea-BLHj7Mwe.js","assets/EmailHtmlPreview-CnuRIf17.js","assets/ConfirmationModal-D-ltrBgq.js","assets/Menu-D_JTdufw.js","assets/UnstyledButton-lE66j0zk.js","assets/TableLoader-CrNv5CjT.js","assets/index-CrbkYGQJ.js","assets/index-Ccaa6g5H.js","assets/demo-preset-campaigns-CiBI-TpZ.js","assets/date.utils-Dh6qda7I.js","assets/Drawer-3NZD1eC-.js","assets/FiDownload02-DO46m3VD.js","assets/index-Bm0f8qC_.js","assets/Progress-ChPS5RHE.js","assets/MultiSelect-BpQlC5t9.js","assets/Checkbox-hm7ZboUt.js","assets/DatePickerInput-CX7iZlVm.js","assets/Breadcrumbs-jkYPpxPy.js","assets/index-txHcFoih.js","assets/IntegrateFirebaseModal-BqkM0N77.js","assets/index-R_Szt5u0.js","assets/RefreshCw01-YihGfpUj.js","assets/PasswordInput-CTCbCAuV.js","assets/index-Cfb9Whha.js","assets/Spinner-B4zCc1eb.js","assets/List-DO_r0KsF.js","assets/index-u2IlKck5.js","assets/index-DWWQ8-Zw.js","assets/file.api-BviXxSET.js","assets/voiceAPI-DKy0gkR7.js","assets/useNavigationGuard-BqXK4bhp.js","assets/index-W3jT46VC.js","assets/index-DjI1CUIO.js","assets/index-Ds1dJXIp.js","assets/CodeHighlight-DNFScs1s.js","assets/index-zUKXjiwd.js","assets/marktag.api-okIFFrup.js","assets/index-M3JBou3H.js","assets/index-gKkFrRQn.js","assets/KnowledgebaseUploadModal-r6U-xeY0.js","assets/Dropzone-Iuf-ZdiQ.js","assets/index-noNvQkgN.js","assets/papaparse.min-vUgxANz4.js","assets/ClientSideMarktagSetupPage-D_klQ6Wj.js","assets/RealTimeEvent-X4XfPm09.js","assets/ServerSideMarktagSetupPage--0_2Y0Yk.js","assets/index-ANcJNgiO.js","assets/index-gkT3ftLd.js","assets/EmailTemplateLibraryModal-CGcj-jaI.js","assets/EmailSubjectEditor-BIKqrIyy.js","assets/SimpleTextArea-9nWj4dY6.js","assets/CustomizeTemplatePage-A74N-3m0.js","assets/markopoloExportValidation-BibffNla.js","assets/markopoloExportValidation-T_aPMqzG.css","assets/index-BbesIvpU.js","assets/ViewListModal-BDnDAylM.js","assets/audience.utils-CGJyQwr5.js","assets/CloseButton-f2b9vV0y.js","assets/CreateAudience-BL9x7mh9.js","assets/useCanUseCustomSql-CJLyXFGl.js","assets/index-BUFVm7HX.js","assets/index-CqaOzfsl.js","assets/index-D93HubYX.js","assets/index-BU-nYQgn.js","assets/AnalyticsTimeFilter-5EKgWTRW.js","assets/AllEventsPage-fjaFXEzm.js","assets/index-DsiSqO0e.js","assets/TopBar-DWOspf6f.js","assets/PlanComparisionTable-DQumlPS-.js","assets/SubscribeToPlanPage-0YCfShVr.
1js","assets/PriceSummary-C8cRwKON.js","assets/tolt.utils-DG-oktNY.js","assets/index-C7xqMKeN.js","assets/auth.utils-Dg0tZE5D.js","assets/index-DUryBxIc.js","assets/TncModal-oupwTFbN.js","assets/index-0zjNsaTz.js","assets/index-l_u8y5Hr.js","assets/SubscribeToShopifyPlanPage-BGqhEYUE.js","assets/index-Tch7Af06.js","assets/index-BKzOs70z.js"])))=>i.map(i=>d[i]); 2import{g as ma,r as c,R as rt,j as s,b as Tn,a as An,u as qe,e as Ut,L as kl,O as Rn,f as bs,h as gh,i as X,N as Pl,B as hh,k as _h}from"./vendor-react-BN8-jPqf.js";import{u as vh,a as El,c as Vt,f as Il,r as yh,b as Tl,R as ws,d as bh,e as wh,p as xh,F as Ch,P as Sh,g as kh,h as Ph,i as Eh,j as Ih,k as Th,l as Mn,m as Ah,n as Rh}from"./vendor-redux-DiHVN3TZ.js";import{c as Mh,e as Nh,a as $t,d as fc}from"./vendor-utils-CS7fQHMJ.js";import{C as fa,L as Oh,X as Qn,S as jh,a as fo,b as ga,c as ha,d as Al,E as Dh,e as Lh,M as Fh,f as Uh}from"./vendor-icons-DrvWjlOJ.js";import{i as ve,a as Vh,u as St,I as $h}from"./vendor-i18n-CnMO7MKm.js";import{m as Io}from"./vendor-motion-2T9_tTTe.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))o(a);new MutationObserver(a=>{for(const r of a)if(r.type==="childList")for(const i of r.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&o(i)}).observe(document,{childList:!0,subtree:!0});function n(a){const r={};return a.integrity&&(r.integrity=a.integrity),a.referrerPolicy&&(r.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?r.credentials="include":a.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function o(a){if(a.ep)return;a.ep=!0;const r=n(a);fetch(a.href,r)}})();const Bh="modulepreload",Gh=function(t){return"/"+t},gc={},te=function(e,n,o){let a=Promise.resolve();if(n&&n.length>0){document.getElementsByTagName("link");const i=document.querySelector("meta[property=csp-nonce]"),l=i?.nonce||i?.getAttribute("nonce");a=Promise.allSettled(n.map(d=>{if(d=Gh(d),d in gc)return;gc[d]=!0;const u=d.endsWith(".css"),m=u?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${d}"]${m}`))return;const p=document.createElement("link");if(p.rel=u?"stylesheet":Bh,u||(p.as="script"),p.crossOrigin="",p.href=d,l&&p.setAttribute("nonce",l),document.head.appendChild(p),u)return new Promise((f,g)=>{p.addEventListener("load",f),p.addEventListener("error",()=>g(new Error(`Unable to preload CSS for ${d}`)))})}))}function r(i){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=i,window.dispatchEvent(l),!l.defaultPrevented)throw i}return a.then(i=>{for(const l of i||[])l.status==="rejected"&&r(l.reason);return e().catch(r)})};var qh=typeof Element<"u",Wh=typeof Map=="function",zh=typeof Set=="function",Hh=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function Ho(t,e){if(t===e)return!0;if(t&&e&&typeof t=="object"&&typeof e=="object"){if(t.constructor!==e.constructor)return!1;var n,o,a;if(Array.isArray(t)){if(n=t.length,n!=e.length)return!1;for(o=n;o--!==0;)if(!Ho(t[o],e[o]))return!1;return!0}var r;if(Wh&&t instanceof Map&&e instanceof Map){if(t.size!==e.size)return!1;for(r=t.entries();!(o=r.next()).done;)if(!e.has(o.value[0]))return!1;for(r=t.entries();!(o=r.next()).done;)if(!Ho(o.value[1],e.get(o.value[0])))return!1;return!0}if(zh&&t instanceof Set&&e instanceof Set){if(t.size!==e.size)return!1;for(r=t.entries();!(o=r.next()).done;)if(!e.has(o.value[0]))return!1;return!0}if(Hh&&ArrayBuffer.isView(t)&&ArrayBuffer.isView(e)){if(n=t.length,n!=e.length)return!1;for(o=n;o--!==0;)if(t[o]!==e[o])return!1;return!0}if(t.constructor===RegExp)return t.source===e.source&&t.flags===e.flags;if(t.valueOf!==Object.prototype.valueOf&&typeof t.valueOf=="function"&&typeof e.valueOf=="function")return t.valueOf()===e.valueOf();if(t.toString!==Object.prototype.toString&&typeof t.toString=="function"&&typeof e.toString=="function")return t.toString()===e.toString();if(a=Object.keys(t),n=a.length,n!==Object.keys(e).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(e,a[o]))return!1;if(qh&&t instanceof Element)return!1;for(o=n;o--!==0;)if(!((a[o]==="_owner"||a[o]==="__v"||a[o]==="__o")&&t.$$typeof)&&!Ho(t[a[o]],e[a[o]]))return!1;return!0}return t!==t&&e!==e}var Kh=function(e,n){try{return Ho(e,n)}catch(o){if((o.message||"").match(/stack|recursion/i))return!1;throw o}};const Yh=ma(Kh);var Xh=function(t,e,n,o,a,r,i,l){if(!t){var d;if(e===void 0)d=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var u=[n,o,a,r,i,l],m=0;d=new Error(e.replace(/%s/g,function(){return u[m++]})),d.name="Invariant Violation"}throw d.framesToPop=1,d}},Qh=Xh;const hc=ma(Qh);var Zh=function(e,n,o,a){var r=o?o.call(a,e,n):void 0;if(r!==void 0)return!!r;if(e===n)return!0;
2if(typeof e!="object"||!e||typeof n!="object"||!n)return!1;var i=Object.keys(e),l=Object.keys(n);if(i.length!==l.length)return!1;for(var d=Object.prototype.hasOwnProperty.bind(n),u=0;u<i.length;u++){var m=i[u];if(!d(m))return!1;var p=e[m],f=n[m];if(r=o?o.call(a,p,f,m):void 0,r===!1||r===void 0&&p!==f)return!1}return!0};const Jh=ma(Zh);var Rl=(t=>(t.BASE="base",t.BODY="body",t.HEAD="head",t.HTML="html",t.LINK="link",t.META="meta",t.NOSCRIPT="noscript",t.SCRIPT="script",t.STYLE="style",t.TITLE="title",t.FRAGMENT="Symbol(react.fragment)",t))(Rl||{}),nr={link:{rel:["amphtml","canonical","alternate"]},script:{type:["application/ld+json"]},meta:{charset:"",name:["generator","robots","description"],property:["og:type","og:title","og:url","og:image","og:image:alt","og:description","twitter:url","twitter:title","twitter:description","twitter:image","twitter:image:alt","twitter:card","twitter:site"]}},_c=Object.values(Rl),xs={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},e_=Object.entries(xs).reduce((t,[e,n])=>(t[n]=e,t),{}),Ke="data-rh",Cn={DEFAULT_TITLE:"defaultTitle",DEFER:"defer",ENCODE_SPECIAL_CHARACTERS:"encodeSpecialCharacters",ON_CHANGE_CLIENT_STATE:"onChangeClientState",TITLE_TEMPLATE:"titleTemplate",PRIORITIZE_SEO_TAGS:"prioritizeSeoTags"},Sn=(t,e)=>{for(let n=t.length-1;n>=0;n-=1){const o=t[n];if(Object.prototype.hasOwnProperty.call(o,e))return o[e]}return null},t_=t=>{let e=Sn(t,"title");const n=Sn(t,Cn.TITLE_TEMPLATE);if(Array.isArray(e)&&(e=e.join("")),n&&e)return n.replace(/%s/g,()=>e);const o=Sn(t,Cn.DEFAULT_TITLE);return e||o||void 0},n_=t=>Sn(t,Cn.ON_CHANGE_CLIENT_STATE)||(()=>{}),or=(t,e)=>e.filter(n=>typeof n[t]<"u").map(n=>n[t]).reduce((n,o)=>({...n,...o}),{}),o_=(t,e)=>e.filter(n=>typeof n.base<"u").map(n=>n.base).reverse().reduce((n,o)=>{if(!n.length){const a=Object.keys(o);for(let r=0;r<a.length;r+=1){const l=a[r].toLowerCase();if(t.indexOf(l)!==-1&&o[l])return n.concat(o)}}return n},[]),a_=t=>console&&typeof console.warn=="function"&&void 0,zn=(t,e,n)=>{const o={};return n.filter(a=>Array.isArray(a[t])?!0:(typeof a[t]<"u"&&a_(`Helmet: ${t} should be of type "Array". Instead found type "${typeof a[t]}"`),!1)).map(a=>a[t]).reverse().reduce((a,r)=>{const i={};r.filter(d=>{let u;const m=Object.keys(d);for(let f=0;f<m.length;f+=1){const g=m[f],h=g.toLowerCase();e.indexOf(h)!==-1&&!(u==="rel"&&d[u].toLowerCase()==="canonical")&&!(h==="rel"&&d[h].toLowerCase()==="stylesheet")&&(u=h),e.indexOf(g)!==-1&&(g==="innerHTML"||g==="cssText"||g==="itemprop")&&(u=g)}if(!u||!d[u])return!1;const p=d[u].toLowerCase();return o[u]||(o[u]={}),i[u]||(i[u]={}),o[u][p]?!1:(i[u][p]=!0,!0)}).reverse().forEach(d=>a.push(d));const l=Object.keys(i);for(let d=0;d<l.length;d+=1){const u=l[d],m={...o[u],...i[u]};o[u]=m}return a},[]).reverse()},r_=(t,e)=>{if(Array.isArray(t)&&t.length){for(let n=0;n<t.length;n+=1)if(t[n][e])return!0}return!1},s_=t=>({baseTag:o_(["href"],t),bodyAttributes:or("bodyAttributes",t),defer:Sn(t,Cn.DEFER),encode:Sn(t,Cn.ENCODE_SPECIAL_CHARACTERS),htmlAttributes:or("htmlAttributes",t),linkTags:zn("link",["rel","href"],t),metaTags:zn("meta",["name","charset","http-equiv","property","itemprop"],t),noscriptTags:zn("noscript",["innerHTML"],t),onChangeClientState:n_(t),scriptTags:zn("script",["src","innerHTML"],t),styleTags:zn("style",["cssText"],t),title:t_(t),titleAttributes:or("titleAttributes",t),prioritizeSeoTags:r_(t,Cn.PRIORITIZE_SEO_TAGS)}),Ml=t=>Array.isArray(t)?t.join(""):t,i_=(t,e)=>{const n=Object.keys(t);for(let o=0;o<n.length;o+=1)if(e[n[o]]&&e[n[o]].includes(t[n[o]]))return!0;return!1},ar=(t,e)=>Array.isArray(t)?t.reduce((n,o)=>(i_(o,e)?n.priority.push(o):n.default.push(o),n),{priority:[],default:[]}):{default:t,priority:[]},vc=(t,e)=>({...t,[e]:void 0}),c_=["noscript","script","style"],Er=(t,e=!0)=>e===!1?String(t):String(t).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'"),Nl=t=>Object.keys(t).reduce((e,n)=>{const o=typeof t[n]<"u"?`${n}
2="${t[n]}"`:`${n}`;return e?`${e} ${o}`:o},""),l_=(t,e,n,o)=>{const a=Nl(n),r=Ml(e);return a?`<${t} ${Ke}="true" ${a}>${Er(r,o)}</${t}>`:`<${t} ${Ke}="true">${Er(r,o)}</${t}>`},d_=(t,e,n=!0)=>e.reduce((o,a)=>{const r=a,i=Object.keys(r).filter(u=>!(u==="innerHTML"||u==="cssText")).reduce((u,m)=>{const p=typeof r[m]>"u"?m:`${m}="${Er(r[m],n)}"`;return u?`${u} ${p}`:p},""),l=r.innerHTML||r.cssText||"",d=c_.indexOf(t)===-1;return`${o}<${t} ${Ke}="true" ${i}${d?"/>":`>${l}</${t}>`}`},""),Ol=(t,e={})=>Object.keys(t).reduce((n,o)=>{const a=xs[o];return n[a||o]=t[o],n},e),u_=(t,e,n)=>{const o={key:e,[Ke]:!0},a=Ol(n,o);return[rt.createElement("title",a,e)]},Ko=(t,e)=>e.map((n,o)=>{const a={key:o,[Ke]:!0};return Object.keys(n).forEach(r=>{const l=xs[r]||r;if(l==="innerHTML"||l==="cssText"){const d=n.innerHTML||n.cssText;a.dangerouslySetInnerHTML={__html:d}}else a[l]=n[r]}),rt.createElement(t,a)}),$e=(t,e,n=!0)=>{switch(t){case"title":return{toComponent:()=>u_(t,e.title,e.titleAttributes),toString:()=>l_(t,e.title,e.titleAttributes,n)};case"bodyAttributes":case"htmlAttributes":return{toComponent:()=>Ol(e),toString:()=>Nl(e)};default:return{toComponent:()=>Ko(t,e),toString:()=>d_(t,e,n)}}},p_=({metaTags:t,linkTags:e,scriptTags:n,encode:o})=>{const a=ar(t,nr.meta),r=ar(e,nr.link),i=ar(n,nr.script);return{priorityMethods:{toComponent:()=>[...Ko("meta",a.priority),...Ko("link",r.priority),...Ko("script",i.priority)],toString:()=>`${$e("meta",a.priority,o)} ${$e("link",r.priority,o)} ${$e("script",i.priority,o)}`},metaTags:a.default,linkTags:r.default,scriptTags:i.default}},m_=t=>{const{baseTag:e,bodyAttributes:n,encode:o=!0,htmlAttributes:a,noscriptTags:r,styleTags:i,title:l="",titleAttributes:d,prioritizeSeoTags:u}=t;let{linkTags:m,metaTags:p,scriptTags:f}=t,g={toComponent:()=>{},toString:()=>""};return u&&({priorityMethods:g,linkTags:m,metaTags:p,scriptTags:f}=p_(t)),{priority:g,base:$e("base",e,o),bodyAttributes:$e("bodyAttributes",n,o),htmlAttributes:$e("htmlAttributes",a,o),link:$e("link",m,o),meta:$e("meta",p,o),noscript:$e("noscript",r,o),script:$e("script",f,o),style:$e("style",i,o),title:$e("title",{title:l,titleAttributes:d},o)}},Ir=m_,To=[],jl=!!(typeof window<"u"&&window.document&&window.document.createElement),Tr=class{instances=[];canUseDOM=jl;context;value={setHelmet:t=>{this.context.helmet=t},helmetInstances:{get:()=>this.canUseDOM?To:this.instances,add:t=>{(this.canUseDOM?To:this.instances).push(t)},remove:t=>{const e=(this.canUseDOM?To:this.instances).indexOf(t);(this.canUseDOM?To:this.instances).splice(e,1)}}};constructor(t,e){this.context=t,this.canUseDOM=e||!1,e||(t.helmet=Ir({baseTag:[],bodyAttributes:{},htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}}))}},f_={},Dl=rt.createContext(f_),Ll=class Fl extends c.Component{static canUseDOM=jl;helmetData;constructor(e){super(e),this.helmetData=new Tr(this.props.context||{},Fl.canUseDOM)}render(){return rt.createElement(Dl.Provider,{value:this.helmetData.value},this.props.children)}},un=(t,e)=>{const n=document.head||document.querySelector("head"),o=n.querySelectorAll(`${t}[${Ke}]`),a=[].slice.call(o),r=[];let i;return e&&e.length&&e.forEach(l=>{const d=document.createElement(t);for(const u in l)if(Object.prototype.hasOwnProperty.call(l,u))if(u==="innerHTML")d.innerHTML=l.innerHTML;else if(u==="cssText")d.styleSheet?d.styleSheet.cssText=l.cssText:d.appendChild(document.createTextNode(l.cssText));else{const m=u,p=typeof l[m]>"u"?"":l[m];d.setAttribute(u,p)}d.setAttribute(Ke,"true"),a.some((u,m)=>(i=m,d.isEqualNode(u)))?a.splice(i,1):r.push(d)}),a.forEach(l=>l.parentNode?.removeChild(l)),r.forEach(l=>n.appendChild(l)),{oldTags:a,newTags:r}},Ar=(t,e)=>{const n=document.getElementsByTagName(t)[0];if(!n)return;const o=n.getAttribute(Ke),a=o?o.split(","):[],r=[...a],i=Object.keys(e);for(const l of i){const d=e[l]||"";n.getAttribute(l)!==d&&n.setAttribute(l,d),a.indexOf(l)===-1&&a.push(l);const u=r.indexOf(l);u!==-1&&r.splice(u,1)}for(let l=r.length-1;l>=0;l-=1)n.removeAttribute(r[l]);a.length===r.length?n.removeAttribute(Ke):n.getAttribute(Ke)!==i.join(",")&&n.setAttribute(Ke,i.join(","))},g_=(t,e)=>{typeof t<"u"&&document.title!==t&&(document.title=Ml(t)),Ar("title",e)},yc=(t,e)=>{const{baseTag:n,bodyAttributes:o,htmlAttributes:a,linkTags:r,metaTags:i,noscriptTags:l,onChangeClientState:d,scriptTags:u,styleTags:m,title:p,titleAttributes:f}=t;Ar("body",o),Ar("html",a),g_(p,f);const g={baseTag:un("base",n),linkTags:un("link",r),metaTags:un("meta",i),noscriptTags:un("noscript",l),scriptTags:un("script",u),styleTags:un("style",m)},h={},_={};Object.keys(g).forEach(v=>{const{newTags:x,oldTags:w}=g[v];x.length&&(h[v]=x),w.length&&(_[v]=g[v].oldTags)}),e&&e(),d(t,h,_)},Hn=null,h_=t=>{Hn&&cancelAnimationFrame(Hn),t.defer?Hn=requestAnimationFrame(()=>{yc(t,()=>{Hn=null})}):(yc(t),Hn=null)},__=h_,bc=class extends c.Component{rendered=!1;shouldComponentUpdate(t){return!Jh(t,this.props)}componentDidUpdate(){this.emitChange()}componentWillUnmount(){const{helmetInstances:t}=this.props.context;t.remove(this),this.emitChange()}emitChange(){const{helmetInstances:t,setHelmet:e}=this.props.context;let n=null;const o=s_(t.get().map(a=>{const r={...a.props};return delete r.context,r}));Ll.canUseDOM?__(o):Ir&&(n=Ir(o)),e(n)}init(){if(this.rendered)return;this.rendered=!0;const{helmetInstances:t}=this.props.context;t.add(this),this.emitChange()}render(){return this.init(),null}},UR=class extends c.Component{static defaultProps={defer:!0,encodeSpecialCharacters:!0,prioritizeSeoTags:!1};shouldComponentUpdate(t){return!Yh(vc(this.props,"helmetData"),vc(t,"helmetData"))}mapNestedChildrenToProps(t,e){if(!e)return null;switch(t.type){case"script":case"noscript":return{innerHTML:e};case"style":return{cssText:e};default:throw new Error(`<${t.type} /> elements are self-closing and can not contain children. Refer to our API for more information.`)}}flattenArrayTypeChildren(t,e,n,o){return{...e,[t.type]:[...e[t.type]||[],{...n,...this.mapNestedChildrenToProps(t,o)}]}}mapObjectTypeChildren(t,e,n,o){switch(t.type){case"title":return{...e,[t.type]:o,titleAttributes:{...n}};case"body":return{...e,bodyAttributes:{...n}};case"html":return{...e,htmlAttributes:{...n}};default:return{...e,[t.type]:{...n}}}}mapArrayTypeChildrenToProps(t,e){let n={...e};return Object.keys(t).forEach(o=>{n={...n,[o]:t[o]}}),n}
2warnOnInvalidChildren(t,e){return hc(_c.some(n=>t.type===n),typeof t.type=="function"?"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.":`Only elements types ${_c.join(", ")} are allowed. Helmet does not support rendering <${t.type}> elements. Refer to our API for more information.`),hc(!e||typeof e=="string"||Array.isArray(e)&&!e.some(n=>typeof n!="string"),`Helmet expects a string as a child of <${t.type}>. Did you forget to wrap your children in braces? ( <${t.type}>{\`\`}</${t.type}> ) Refer to our API for more information.`),!0}mapChildrenToProps(t,e){let n={};return rt.Children.forEach(t,o=>{if(!o||!o.props)return;const{children:a,...r}=o.props,i=Object.keys(r).reduce((d,u)=>(d[e_[u]||u]=r[u],d),{});let{type:l}=o;switch(typeof l=="symbol"?l=l.toString():this.warnOnInvalidChildren(o,a),l){case"Symbol(react.fragment)":e=this.mapChildrenToProps(a,e);break;case"link":case"meta":case"noscript":case"script":case"style":n=this.flattenArrayTypeChildren(o,n,i,a);break;default:e=this.mapObjectTypeChildren(o,e,i,a);break}}),this.mapArrayTypeChildrenToProps(n,e)}render(){const{children:t,...e}=this.props;let n={...e},{helmetData:o}=e;if(t&&(n=this.mapChildrenToProps(t,n)),o&&!(o instanceof Tr)){const a=o;o=new Tr(a.context,!0),delete n.helmetData}return o?rt.createElement(bc,{...n,context:o.value}):rt.createElement(Dl.Consumer,null,a=>rt.createElement(bc,{...n,context:a}))}};let v_={data:""},y_=t=>{if(typeof window=="object"){let e=(t?t.querySelector("#_goober"):window._goober)||Object.assign(document.createElement("style"),{innerHTML:" ",id:"_goober"});return e.nonce=window.__nonce__,e.parentNode||(t||document.head).appendChild(e),e.firstChild}return t||v_},b_=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g,w_=/\/\*[^]*?\*\/| +/g,wc=/\n+/g,Mt=(t,e)=>{let n="",o="",a="";for(let r in t){let i=t[r];r[0]=="@"?r[1]=="i"?n=r+" "+i+";":o+=r[1]=="f"?Mt(i,r):r+"{"+Mt(i,r[1]=="k"?"":e)+"}":typeof i=="object"?o+=Mt(i,e?e.replace(/([^,])+/g,l=>r.replace(/([^,]*:\S+\([^)]*\))|([^,])+/g,d=>/&/.test(d)?d.replace(/&/g,l):l?l+" "+d:d)):r):i!=null&&(r=r[1]=="-"?r:r.replace(/[A-Z]/g,"-$&").toLowerCase(),a+=Mt.p?Mt.p(r,i):r+":"+i+";")}return n+(e&&a?e+"{"+a+"}":a)+o},At={},Ul=t=>{if(typeof t=="object"){let e="";for(let n in t)e+=n+Ul(t[n]);return e}return t},x_=(t,e,n,o,a)=>{let r=Ul(t),i=At[r]||(At[r]=(d=>{let u=0,m=11;for(;u<d.length;)m=101*m+d.charCodeAt(u++)>>>0;return"go"+m})(r));if(!At[i]){let d=r!==t?t:(u=>{let m,p,f=[{}];for(;m=b_.exec(u.replace(w_,""));)m[4]?f.shift():m[3]?(p=m[3].replace(wc," ").trim(),f.unshift(f[0][p]=f[0][p]||{})):f[0][m[1]]=m[2].replace(wc," ").trim();return f[0]})(t);At[i]=Mt(a?{["@keyframes "+i]:d}:d,n?"":"."+i)}let l=n&&At.g;return n&&(At.g=At[i]),((d,u,m,p)=>{p?u.data=u.data.replace(p,d):u.data.indexOf(d)===-1&&(u.data=m?d+u.data:u.data+d)})(At[i],e,o,l),i},C_=(t,e,n)=>t.reduce((o,a,r)=>{let i=e[r];if(i&&i.call){let l=i(n),d=l&&l.props&&l.props.className||/^go/.test(l)&&l;i=d?"."+d:l&&typeof l=="object"?l.props?"":Mt(l,""):l===!1?"":l}return o+a+(i??"")},"");function _a(t){let e=this||{},n=t.call?t(e.p):t;return x_(n.unshift?n.raw?C_(n,[].slice.call(arguments,1),e.p):n.reduce((o,a)=>Object.assign(o,a&&a.call?a(e.p):a),{}):n,y_(e.target),e.g,e.o,e.k)}let Vl,Rr,Mr;_a.bind({g:1});let yt=_a.bind({k:1});function S_(t,e,n,o){Mt.p=e,Vl=t,Rr=n,Mr=o}function Bt(t,e){let n=this||{};return function(){let o=arguments;function a(r,i){let l=Object.assign({},r),d=l.className||a.className;n.p=Object.assign({theme:Rr&&Rr()},l),n.o=/go\d/.test(d),l.className=_a.apply(n,o)+(d?" "+d:"");let u=t;return t[0]&&(u=l.as||t,delete l.as),Mr&&u[0]&&Mr(l),Vl(u,l)}return e?e(a):a}}var k_=t=>typeof t=="function",na=(t,e)=>k_(t)?t(e):t,P_=(()=>{let t=0;return()=>(++t).toString()})(),$l=(()=>{let t;return()=>{if(t===void 0&&typeof window<"u"){let e=matchMedia("(prefers-reduced-motion: reduce)");t=!e||e.matches}return t}})(),E_=20,Cs="default",Bl=(t,e)=>{let{toastLimit:n}=t.settings;switch(e.type){case 0:return{...t,toasts:[e.toast,...t.toasts].slice(0,n)};case 1:return{...t,toasts:t.toasts.map(i=>i.id===e.toast.id?{...i,...e.toast}:i)};case 2:let{toast:o}=e;return Bl(t,{type:t.toasts.find(i=>i.id===o.id)?1:0,toast:o});case 3:let{toastId:a}=e;return{...t,toasts:t.toasts.map(i=>i.id===a||a===void 0?{...i,dismissed:!0,visible:!1}:i)};case 4:return e.toastId===void 0?{...t,toasts:[]}:{...t,toasts:t.toasts.filter(i=>i.id!==e.toastId)};case 5:return{...t,pausedAt:e.time};case 6:let r=e.time-(t.pausedAt||0);return{...t,pausedAt:void 0,toasts:t.toasts.map(i=>({...i,pauseDuration:i.pauseDuration+r}))}}},Yo=[],Gl={toasts:[],pausedAt:void 0,settings:{toastLimit:E_}},st={},ql=(t,e=Cs)=>{st[e]=Bl(st[e]||Gl,t),Yo.forEach(([n,o])=>{n===e&&o(st[e])})},Wl=t=>
2Object.keys(st).forEach(e=>ql(t,e)),I_=t=>Object.keys(st).find(e=>st[e].toasts.some(n=>n.id===t)),va=(t=Cs)=>e=>{ql(e,t)},T_={blank:4e3,error:4e3,success:2e3,loading:1/0,custom:4e3},A_=(t={},e=Cs)=>{let[n,o]=c.useState(st[e]||Gl),a=c.useRef(st[e]);c.useEffect(()=>(a.current!==st[e]&&o(st[e]),Yo.push([e,o]),()=>{let i=Yo.findIndex(([l])=>l===e);i>-1&&Yo.splice(i,1)}),[e]);let r=n.toasts.map(i=>{var l,d,u;return{...t,...t[i.type],...i,removeDelay:i.removeDelay||((l=t[i.type])==null?void 0:l.removeDelay)||t?.removeDelay,duration:i.duration||((d=t[i.type])==null?void 0:d.duration)||t?.duration||T_[i.type],style:{...t.style,...(u=t[i.type])==null?void 0:u.style,...i.style}}});return{...n,toasts:r}},R_=(t,e="blank",n)=>({createdAt:Date.now(),visible:!0,dismissed:!1,type:e,ariaProps:{role:"status","aria-live":"polite"},message:t,pauseDuration:0,...n,id:n?.id||P_()}),go=t=>(e,n)=>{let o=R_(e,t,n);return va(o.toasterId||I_(o.id))({type:2,toast:o}),o.id},ye=(t,e)=>go("blank")(t,e);ye.error=go("error");ye.success=go("success");ye.loading=go("loading");ye.custom=go("custom");ye.dismiss=(t,e)=>{let n={type:3,toastId:t};e?va(e)(n):Wl(n)};ye.dismissAll=t=>ye.dismiss(void 0,t);ye.remove=(t,e)=>{let n={type:4,toastId:t};e?va(e)(n):Wl(n)};ye.removeAll=t=>ye.remove(void 0,t);ye.promise=(t,e,n)=>{let o=ye.loading(e.loading,{...n,...n?.loading});return typeof t=="function"&&(t=t()),t.then(a=>{let r=e.success?na(e.success,a):void 0;return r?ye.success(r,{id:o,...n,...n?.success}):ye.dismiss(o),a}).catch(a=>{let r=e.error?na(e.error,a):void 0;r?ye.error(r,{id:o,...n,...n?.error}):ye.dismiss(o)}),t};var M_=1e3,N_=(t,e="default")=>{let{toasts:n,pausedAt:o}=A_(t,e),a=c.useRef(new Map).current,r=c.useCallback((p,f=M_)=>{if(a.has(p))return;let g=setTimeout(()=>{a.delete(p),i({type:4,toastId:p})},f);a.set(p,g)},[]);c.useEffect(()=>{if(o)return;let p=Date.now(),f=n.map(g=>{if(g.duration===1/0)return;let h=(g.duration||0)+g.pauseDuration-(p-g.createdAt);if(h<0){g.visible&&ye.dismiss(g.id);return}return setTimeout(()=>ye.dismiss(g.id,e),h)});return()=>{f.forEach(g=>g&&clearTimeout(g))}},[n,o,e]);let i=c.useCallback(va(e),[e]),l=c.useCallback(()=>{i({type:5,time:Date.now()})},[i]),d=c.useCallback((p,f)=>{i({type:1,toast:{id:p,height:f}})},[i]),u=c.useCallback(()=>{o&&i({type:6,time:Date.now()})},[o,i]),m=c.useCallback((p,f)=>{let{reverseOrder:g=!1,gutter:h=8,defaultPosition:_}=f||{},v=n.filter(y=>(y.position||_)===(p.position||_)&&y.height),x=v.findIndex(y=>y.id===p.id),w=v.filter((y,b)=>b<x&&y.visible).length;return v.filter(y=>y.visible).slice(...g?[w+1]:[0,w]).reduce((y,b)=>y+(b.height||0)+h,0)},[n]);return c.useEffect(()=>{n.forEach(p=>{if(p.dismissed)r(p.id,p.removeDelay);else{let f=a.get(p.id);f&&(clearTimeout(f),a.delete(p.id))}})},[n,r]),{toasts:n,handlers:{updateHeight:d,startPause:l,endPause:u,calculateOffset:m}}},O_=yt` 3from { 4 transform: scale(0) rotate(45deg); 5 opacity: 0; 6} 7to { 8 transform: scale(1) rotate(45deg); 9 opacity: 1; 10}`,j_=yt` 11from { 12 transform: scale(0); 13 opacity: 0; 14} 15to { 16 transform: scale(1); 17 opacity: 1; 18}`,D_=yt` 19from { 20 transform: scale(0) rotate(90deg); 21 opacity: 0; 22} 23to { 24 transform: scale(1) rotate(90deg); 25 opacity: 1; 26}`,L_=Bt("div")` 27 width: 20px; 28 opacity: 0; 29 height: 20px; 30 border-radius: 10px; 31 background: ${t=>t.primary||"#ff4b4b"}; 32 position: relative; 33 transform: rotate(45deg); 34 35 animation: ${O_} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 36 forwards; 37 animation-delay: 100ms; 38 39 &:after, 40 &:before { 41 content: ''; 42 animation: ${j_} 0.15s ease-out forwards; 43 animation-delay: 150ms; 44 position: absolute; 45 border-radius: 3px; 46 opacity: 0; 47 background: ${t=>t.secondary||"#fff"}; 48 bottom: 9px; 49 left: 4px; 50 height: 2px; 51 width: 12px; 52 } 53 54 &:before { 55 animation: ${D_} 0.15s ease-out forwards; 56 animation-delay: 180ms; 57 transform: rotate(90deg); 58 } 59`,F_=yt` 60 from { 61 transform: rotate(0deg); 62 } 63 to { 64 transform: rotate(360deg); 65 } 66`,U_=Bt("div")` 67 width: 12px; 68 height: 12px; 69 box-sizing: border-box; 70 border: 2px solid; 71 border-radius: 100%; 72 border-color: ${t=>
72t.secondary||"#e0e0e0"}; 73 border-right-color: ${t=>t.primary||"#616161"}; 74 animation: ${F_} 1s linear infinite; 75`,V_=yt` 76from { 77 transform: scale(0) rotate(45deg); 78 opacity: 0; 79} 80to { 81 transform: scale(1) rotate(45deg); 82 opacity: 1; 83}`,$_=yt` 840% { 85 height: 0; 86 width: 0; 87 opacity: 0; 88} 8940% { 90 height: 0; 91 width: 6px; 92 opacity: 1; 93} 94100% { 95 opacity: 1; 96 height: 10px; 97}`,B_=Bt("div")` 98 width: 20px; 99 opacity: 0; 100 height: 20px; 101 border-radius: 10px; 102 background: ${t=>t.primary||"#61d345"}; 103 position: relative; 104 transform: rotate(45deg); 105 106 animation: ${V_} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 107 forwards; 108 animation-delay: 100ms; 109 &:after { 110 content: ''; 111 box-sizing: border-box; 112 animation: ${$_} 0.2s ease-out forwards; 113 opacity: 0; 114 animation-delay: 200ms; 115 position: absolute; 116 border-right: 2px solid; 117 border-bottom: 2px solid; 118 border-color: ${t=>t.secondary||"#fff"}; 119 bottom: 6px; 120 left: 6px; 121 height: 10px; 122 width: 6px; 123 } 124`,G_=Bt("div")` 125 position: absolute; 126`,q_=Bt("div")` 127 position: relative; 128 display: flex; 129 justify-content: center; 130 align-items: center; 131 min-width: 20px; 132 min-height: 20px; 133`,W_=yt` 134from { 135 transform: scale(0.6); 136 opacity: 0.4; 137} 138to { 139 transform: scale(1); 140 opacity: 1; 141}`,z_=Bt("div")` 142 position: relative; 143 transform: scale(0.6); 144 opacity: 0.4; 145 min-width: 20px; 146 animation: ${W_} 0.3s 0.12s cubic-bezier(0.175, 0.885, 0.32, 1.275) 147 forwards; 148`,H_=({toast:t})=>{let{icon:e,type:n,iconTheme:o}=t;return e!==void 0?typeof e=="string"?c.createElement(z_,null,e):e:n==="blank"?null:c.createElement(q_,null,c.createElement(U_,{...o}),n!=="loading"&&c.createElement(G_,null,n==="error"?c.createElement(L_,{...o}):c.createElement(B_,{...o})))},K_=t=>` 1490% {transform: translate3d(0,${t*-200}%,0) scale(.6); opacity:.5;} 150100% {transform: translate3d(0,0,0) scale(1); opacity:1;} 151`,Y_=t=>` 1520% {transform: translate3d(0,0,-1px) scale(1); opacity:1;} 153100% {transform: translate3d(0,${t*-150}%,-1px) scale(.6); opacity:0;} 154`,X_="0%{opacity:0;} 100%{opacity:1;}",Q_="0%{opacity:1;} 100%{opacity:0;}",Z_=Bt("div")` 155 display: flex; 156 align-items: center; 157 background: #fff; 158 color: #363636; 159 line-height: 1.3; 160 will-change: transform; 161 box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1), 0 3px 3px rgba(0, 0, 0, 0.05); 162 max-width: 350px; 163 pointer-events: auto; 164 padding: 8px 10px; 165 border-radius: 8px; 166`,J_=Bt("div")` 167 display: flex; 168 justify-content: center; 169 margin: 4px 10px; 170 color: inherit; 171 flex: 1 1 auto; 172 white-space: pre-line; 173`,ev=(t,e)=>{let n=t.includes("top")?1:-1,[o,a]=$l()?[X_,Q_]:[K_(n),Y_(n)];return{animation:e?`${yt(o)} 0.35s cubic-bezier(.21,1.02,.73,1) forwards`:`${yt(a)} 0.4s forwards cubic-bezier(.06,.71,.55,1)`}},tv=c.memo(({toast:t,position:e,style:n,children:o})=>{let a=t.height?ev(t.position||e||"top-center",t.visible):{opacity:0},r=c.createElement(H_,{toast:t}),i=c.createElement(J_,{...t.ariaProps},na(t.message,t));return c.createElement(Z_,{className:t.className,style:{...a,...n,...t.style}},typeof o=="function"?o({icon:r,message:i}):c.createElement(c.Fragment,null,r,i))});S_(c.createElement);var nv=({id:t,className:e,style:n,onHeightUpdate:o,children:a})=>{let r=c.useCallback(i=>{if(i){let l=()=>{let d=i.getBoundingClientRect().height;o(t,d)};l(),new MutationObserver(l).observe(i,{subtree:!0,childList:!0,characterData:!0})}},[t,o]);return c.createElement("div",{ref:r,className:e,style:n},a)},ov=(t,e)=>{let n=t.includes("top"),o=n?{top:0}:{bottom:0},a=t.includes("center")?{justifyContent:"center"}:t.includes("right")?{justifyContent:"flex-end"}:{};return{left:0,right:0,display:"flex",position:"absolute",transition:$l()?void 0:"all 230ms cubic-bezier(.21,1.02,.73,1)",transform:`translateY(${e*(n?1:-1)}px)`,...o,...a}},av=_a` 174 z-index: 9999; 175 > * { 176 pointer-events: auto; 177 } 178`,Ao=16,rv=({reverseOrder:t,position:e="top-center",toastOptions:n,gutter:o,children:a,toasterId:r,containerStyle:i,containerClassName:l})=>{let{toasts:d,handlers:u}=N_(n,r);return c.createElement("div",{"data-rht-toaster":r||"",style:{position:"fixed",zIndex:9999,top:Ao,left:Ao,right:Ao,bottom:Ao,pointerEvents:"none",...i},className:l,onMouseEnter:u.startPause,onMouseLeave:u.endPause},d.map(m=>{let p=m.position||e,f=u.calculateOffset(m,{reverseOrder:t,gutter:o,defaultPosition:e}),g=ov(p,f);return c.createElement(nv,{id:m.id,key:m.id,onHeightUpdate:u.updateHeight,className:m.visible?av:"",style:g},m.type==="custom"?na(m.message,m):a?a(m):c.createElement(tv,{toast:m,position:p}))}))},D=ye;const sv="/assets/NewLogomarkBox-BFDpj5V7.svg",iv=()=>{c.useEffect(()=>{if(typeof window>"u")return;const t=window;t.mtrem=t.mtrem||[],t.mtag||(t.mtag=function(...a){t.mtrem.push(a)},t.mtag("init","https://mtag-mwwa.markopolo.ai?tagId=ss2Jl0",{consent:!0}),t.mtag("event",{type:"ViewContent"}));const e=()=>{if(document.querySelector("script[data-mtag]"))return;const a=document.createElement("script");a.src="https://mtag-mwwa.markopolo.ai/script",a.async=!0,a.setAttribute("data-mtag","true"),document.head.appendChild(a)};let n=0,o=0;return t.requestIdleCallback?n=t.requestIdleCallback(e,{timeout:3e3}):o=window.setTimeout(e,2e3),()=>{t.cancelIdleCallback&&n&&t.cancelIdleCallback(n),o&&clearTimeout(o)}},[])};var cv=Object.defineProperty,Be=(t,e)=>cv(t,"name",{value:e,configurable:!0});function lv(t,e){const n=c.createContext(e);n.displayName=t+"Context";const o=Be(r=>{const{children:i,...l}=r,d=c.useMemo(()=>l,Object.values(l));return s.jsx(n.Provider,{value:d,children:i})},"Provider");o.displayName=t+"Provider";function a(r,i={}){const{optional:l=!1}=i,d=c.useContext(n);if(d)return d;if(e!==void 0)return e;if(!l)throw new Error(`\`${r}\` must be used within \`${t}\``)}return Be(a,"useContext"),[o,a]}Be(lv,"createContext");function ge(t,e=[]){let n=[];function o(r,i){const l=c.createContext(i);l.displayName=r+"Context";const d=n.length;n=[...n,i];const u=Be(p=>{const{scope:f,children:g,...h}=p,_=f?.[t]?.[d]||l,v=c.useMemo(()=>h,Object.values(h));return s.jsx(_.Provider,{value:v,children:g})},"Provider");u.displayName=r+"Provider";function m(p,f,g={}){const{optional:h=!1}=g,_=f?.[t]?.[d]||l,v=c.useContext(_);if(v)return v;if(i!==void 0)return i;if(!h)throw new Error(`\`${p}\` must be used within \`${r}\``)}return Be(m,"useContext"),[u,m]}Be(o,"createContext");const a=Be(()=>{const r=n.map(i=>c.createContext(i));return Be(function(l){const d=l?.[t]||r;return c.useMemo(()=>({[`__scope${t}`]:{...l,[t]:d}}),[l,d])},"useScope")},"createScope");return a.scopeName=t,[o,zl(a,...e)]}Be(ge,"createContextScope");function zl(...t){const e=t[0];if(t.length===1)return e;const n=Be(()=>{const o=t.map(a=>({useScope:a(),scopeName:a.scopeName}));
178return Be(function(r){const i=o.reduce((l,{useScope:d,scopeName:u})=>{const p=d(r)[`__scope${u}`];return{...l,...p}},{});return c.useMemo(()=>({[`__scope${e.scopeName}`]:i}),[i])},"useComposedScopes")},"createScope");return n.scopeName=e.scopeName,n}Be(zl,"composeContextScopes");var dv=Object.defineProperty,Ss=(t,e)=>dv(t,"name",{value:e,configurable:!0});function Nr(t,e){if(typeof t=="function")return t(e);t!=null&&(t.current=e)}Ss(Nr,"setRef");function Qt(...t){return e=>{let n=!1;const o=t.map(a=>{const r=Nr(a,e);return!n&&typeof r=="function"&&(n=!0),r});if(n)return()=>{for(let a=0;a<o.length;a++){const r=o[a];typeof r=="function"?r():Nr(t[a],null)}}}}Ss(Qt,"composeRefs");function G(...t){return c.useCallback(Qt(...t),t)}Ss(G,"useComposedRefs");var uv=Object.defineProperty,Je=(t,e)=>uv(t,"name",{value:e,configurable:!0});function Qe(t){const e=c.forwardRef((n,o)=>{let{children:a,...r}=n,i=null,l=!1;const d=[];Or(a)&&typeof Ro=="function"&&(a=Ro(a._payload)),c.Children.forEach(a,f=>{if(Ql(f)){l=!0;const g=f;let h="child"in g.props?g.props.child:g.props.children;Or(h)&&typeof Ro=="function"&&(h=Ro(h._payload)),i=mv(g,h),d.push(i?.props?.children)}else d.push(f)}),i?i=c.cloneElement(i,void 0,d):!l&&c.Children.count(a)===1&&c.isValidElement(a)&&(i=a);const u=i?Xl(i):void 0,m=G(o,u);if(!i){if(a||a===0)throw new Error(l?hv(t):gv(t));return a}const p=Yl(r,i.props??{});return i.type!==c.Fragment&&(p.ref=o?m:u),c.cloneElement(i,p)});return e.displayName=`${t}.Slot`,e}Je(Qe,"createSlot");var pv=Qe("Slot"),Hl=Symbol.for("radix.slottable");function Kl(t){const e=Je(n=>"child"in n?n.children(n.child):n.children,"Slottable");return e.displayName=`${t}.Slottable`,e.__radixId=Hl,e}Je(Kl,"createSlottable");var mv=Je((t,e)=>{if("child"in t.props){const n=t.props.child;return c.isValidElement(n)?c.cloneElement(n,void 0,t.props.children(n.props.children)):null}return c.isValidElement(e)?e:null},"getSlottableElementFromSlottable");function Yl(t,e){const n={...e};for(const o in e){const a=t[o],r=e[o];/^on[A-Z]/.test(o)?a&&r?n[o]=(...l)=>{const d=r(...l);return a(...l),d}:a&&(n[o]=a):o==="style"?n[o]={...a,...r}:o==="className"&&(n[o]=[a,r].filter(Boolean).join(" "))}return{...t,...n}}Je(Yl,"mergeProps");function Xl(t){let e=Object.getOwnPropertyDescriptor(t.props,"ref")?.get,n=e&&"isReactWarning"in e&&e.isReactWarning;return n?t.ref:(e=Object.getOwnPropertyDescriptor(t,"ref")?.get,n=e&&"isReactWarning"in e&&e.isReactWarning,n?t.props.ref:t.props.ref||t.ref)}Je(Xl,"getElementRef");function Ql(t){return c.isValidElement(t)&&typeof t.type=="function"&&"__radixId"in t.type&&t.type.__radixId===Hl}Je(Ql,"isSlottable");var fv=Symbol.for("react.lazy");function Or(t){return t!=null&&typeof t=="object"&&"$$typeof"in t&&t.$$typeof===fv&&"_payload"in t&&Zl(t._payload)}Je(Or,"isLazyComponent");function Zl(t){return typeof t=="object"&&t!==null&&"then"in t}Je(Zl,"isPromiseLike");var gv=Je(t=>`${t} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),hv=Je(t=>`${t} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),Ro=Tn[" use ".trim().toString()],_v=Object.defineProperty,ke=(t,e)=>_v(t,"name",{value:e,configurable:!0});function Gt(t){const e=t+"CollectionProvider",[n,o]=ge(e),[a,r]=n(e,{collectionRef:{current:null},itemMap:new Map}),i=ke(_=>{const{scope:v,children:x}=_,w=c.useRef(null),y=c.useRef(new Map).current;return s.jsx(a,{scope:v,itemMap:y,collectionRef:w,children:x})},"CollectionProvider");i.displayName=e;const l=t+"CollectionSlot",d=Qe(l),u=c.forwardRef((_,v)=>{const{scope:x,children:w}=_,y=r(l,x),b=G(v,y.collectionRef);return s.jsx(d,{ref:b,children:w})});u.displayName=l;const m=t+"CollectionItemSlot",p="data-radix-collection-item",f=Qe(m),g=c.forwardRef((_,v)=>{const{scope:x,children:w,...y}=_,b=c.useRef(null),S=G(v,b),C=r(m,x);return c.useEffect(()=>(C.itemMap.set(b,{ref:b,...y}),()=>void C.itemMap.delete(b))),s.jsx(f,{[p]:"",ref:S,children:w})});g.displayName=m;function h(_){const v=r(t+"CollectionConsumer",_);return c.useCallback(()=>{const w=v.collectionRef.current;if(!w)return[];const y=Array.from(w.querySelectorAll(`[${p}]`));return Array.from(v.itemMap.values()).sort((C,P)=>y.indexOf(C.ref.current)-y.indexOf(P.ref.current))},[v.collectionRef,v.itemMap])}return ke(h,"useCollection"),[{Provider:i,Slot:u,ItemSlot:g},h,o]}ke(Gt,"createCollection");var xc=new WeakMap,rr=class Rt extends Map{static{ke(this,"OrderedDict")}#e;constructor(e){super(e),this.#e=[...super.keys()],xc.set(this,!0)}set(e,n){return xc.get(this)&&(this.has(e)?this.#e[this.#e.indexOf(e)]=e:this.#e.push(e)),super.set(e,n),this}insert(e,n,o){const a=this.has(n),r=this.#e.length,i=ks(e);let l=i>=0?i:r+i;const d=l<0||l>=r?-1:l;if(d===this.size||a&&d===this.size-1||d===-1)return this.set(n,o),this;const u=this.size+(a?0:1);i<0&&l++;const m=[...this.#e];let p,f=!1;for(let g=l;g<u;g++)if(l===g){let h=m[g];m[g]===n&&(h=m[g+1]),a&&this.delete(n),p=this.get(h),this.set(n,o)}else{!f&&m[g-1]===n&&(f=!0);const h=m[f?g:g-1],_=p;p=this.get(h),this.delete(h),this.set(h,_)}return this}with(e,n,o){const a=new Rt(this);return a.insert(e,n,o),a}before(e){const n=this.#e.indexOf(e)-1;if(!(n<0))return this.entryAt(n)}setBefore(e,n,o){const a=this.#e.indexOf(e);return a===-1?this:this.insert(a,n,o)}after(e){let n=this.#e.indexOf(e);if(n=n===-1||n===this.size-1?-1:n+1,n!==-1)return this.entryAt(n)}setAfter(e,n,o){const a=this.#e.indexOf(e);return a===-1?this:this.insert(a+1,n,o)}first(){return this.entryAt(0)}last(){return this.entryAt(-1)}clear(){return this.#e=[],super.clear()}delete(e){const n=super.delete(e);return n&&this.#e.splice(this.#e.indexOf(e),1),n}deleteAt(e){const n=this.keyAt(e);return n!==void 0?this.delete(n):!1}at(e){const n=Xo(this.#e,e);if(n!==void 0)return this.get(n)}entryAt(e){const n=Xo(this.#e,e);if(n!==void 0)return[n,this.get(n)]}indexOf(e){return this.#e.indexOf(e)}keyAt(e){return Xo(this.#e,e)}from(e,n){const o=this.indexOf(e);if(o===-1)return;let a=o+n;return a<0&&(a=0),a>=this.size&&(a=this.size-1),this.at(a)}keyFrom(e,n){const o=this.indexOf(e);if(o===-1)return;let a=o+n;return a<0&&(a=0),a>=this.size&&(a=this.size-1),this.keyAt(a)}find(e,n){let o=0;for(const a of this){if(Reflect.apply(e,n,[a,o,this]))return a;o++}}findIndex(e,n){let o=0;for(const a of this){if(Reflect.apply(e,n,[a,o,this]))return o;o++}return-1}filter(e,n){const o=[];let a=0;for(const r of this)Reflect.apply(e,n,[r,a,this])&&o.push(r),a++;return new Rt(o)}map(e,n){const o=[];let a=0;for(const r of this)o.push([r[0],Reflect.apply(e,n,[r,a,this])]),a++;return new Rt(o)}reduce(...e){const[n,o]=e;let a=0,r=o??this.at(0);for(const i of this)a===0&&e.length===1?r=i:r=Reflect.apply(n,this,[r,i,a,this]),a++;return r}reduceRight(...e){const[n,o]=e;let a=o??this.at(-1);for(let r=this.size-1;r>=0;r--){const i=this.at(r);r===this.size-1&&e.length===1?a=i:a=Reflect.apply(n,this,[a,i,r,this])}return a}toSorted(e){const n=[...this.entries()].sort(e);return new Rt(n)}toReversed(){const e=new Rt;for(let n=this.size-1;n>=0;n--){const o=this.keyAt(n),a=this.get(o);e.set(o,a)}return e}toSpliced(...e){const n=[...this.entries()];return n.splice(...e),new Rt(n)}
178slice(e,n){const o=new Rt;let a=this.size-1;if(e===void 0)return o;e<0&&(e=e+this.size),n!==void 0&&n>0&&(a=n-1);for(let r=e;r<=a;r++){const i=this.keyAt(r),l=this.get(i);o.set(i,l)}return o}every(e,n){let o=0;for(const a of this){if(!Reflect.apply(e,n,[a,o,this]))return!1;o++}return!0}some(e,n){let o=0;for(const a of this){if(Reflect.apply(e,n,[a,o,this]))return!0;o++}return!1}};function Xo(t,e){if("at"in Array.prototype)return Array.prototype.at.call(t,e);const n=Jl(t,e);return n===-1?void 0:t[n]}ke(Xo,"at");function Jl(t,e){const n=t.length,o=ks(e),a=o>=0?o:n+o;return a<0||a>=n?-1:a}ke(Jl,"toSafeIndex");function ks(t){return t!==t||t===0?0:Math.trunc(t)}ke(ks,"toSafeInteger");function vv(t){const e=t+"CollectionProvider",[n,o]=ge(e),[a,r]=n(e,{collectionElement:null,collectionRef:{current:null},collectionRefObject:{current:null},itemMap:new rr,setItemMap:ke(()=>{},"setItemMap")}),i=ke(({state:y,...b})=>y?s.jsx(d,{...b,state:y}):s.jsx(l,{...b}),"CollectionProvider");i.displayName=e;const l=ke(y=>{const b=v();return s.jsx(d,{...y,state:b})},"CollectionInit");l.displayName=e+"Init";const d=ke(y=>{const{scope:b,children:S,state:C}=y,P=c.useRef(null),[T,A]=c.useState(null),R=G(P,A),[F,j]=C;return c.useEffect(()=>{if(!T)return;const $=nd(()=>{});return $.observe(T,{childList:!0,subtree:!0}),()=>{$.disconnect()}},[T]),s.jsx(a,{scope:b,itemMap:F,setItemMap:j,collectionRef:R,collectionRefObject:P,collectionElement:T,children:S})},"CollectionProviderImpl");d.displayName=e+"Impl";const u=t+"CollectionSlot",m=Qe(u),p=c.forwardRef((y,b)=>{const{scope:S,children:C}=y,P=r(u,S),T=G(b,P.collectionRef);return s.jsx(m,{ref:T,children:C})});p.displayName=u;const f=t+"CollectionItemSlot",g="data-radix-collection-item",h=Qe(f),_=c.forwardRef((y,b)=>{const{scope:S,children:C,...P}=y,T=c.useRef(null),[A,R]=c.useState(null),F=G(b,T,R),j=r(f,S),{setItemMap:$}=j,B=c.useRef(P);ed(B.current,P)||(B.current=P);const Y=B.current;return c.useEffect(()=>{const z=Y;return $(W=>A?W.has(A)?W.set(A,{...z,element:A}).toSorted(jr):(W.set(A,{...z,element:A}),W.toSorted(jr)):W),()=>{$(W=>!A||!W.has(A)?W:(W.delete(A),new rr(W)))}},[A,Y,$]),s.jsx(h,{[g]:"",ref:F,children:C})});_.displayName=f;function v(){return c.useState(new rr)}ke(v,"useInitCollection");function x(y){const{itemMap:b}=r(t+"CollectionConsumer",y);return b}return ke(x,"useCollection"),[{Provider:i,Slot:p,ItemSlot:_},{createCollectionScope:o,useCollection:x,useInitCollection:v}]}ke(vv,"createCollection");function ed(t,e){if(t===e)return!0;if(typeof t!="object"||typeof e!="object"||t==null||e==null)return!1;const n=Object.keys(t),o=Object.keys(e);if(n.length!==o.length)return!1;for(const a of n)if(!Object.prototype.hasOwnProperty.call(e,a)||t[a]!==e[a])return!1;return!0}ke(ed,"shallowEqual");function td(t,e){return!!(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_PRECEDING)}ke(td,"isElementPreceding");function jr(t,e){return!t[1].element||!e[1].element?0:td(t[1].element,e[1].element)?-1:1}ke(jr,"sortByDocumentPosition");function nd(t){return new MutationObserver(n=>{for(const o of n)if(o.type==="childList"){t();return}})}ke(nd,"getChildListObserver");var yv=Object.defineProperty,Nn=(t,e)=>yv(t,"name",{value:e,configurable:!0}),od=!!(typeof window<"u"&&window.document&&window.document.createElement);function I(t,e,{checkForDefaultPrevented:n=!0}={}){return Nn(function(a){if(t?.(a),n===!1||!a||!a.defaultPrevented)return e?.(a)},"handleEvent")}Nn(I,"composeEventHandlers");function bv(t){if(!od)throw new Error("Cannot access window outside of the DOM");return t?.ownerDocument?.defaultView??window}Nn(bv,"getOwnerWindow");function Dr(t){if(!od)throw new Error("Cannot access document outside of the DOM");return t?.ownerDocument??document}Nn(Dr,"getOwnerDocument");function ad(t,e=!1){const{activeElement:n}=Dr(t);if(!n?.nodeName)return null;if(rd(n)&&n.contentDocument)return ad(n.contentDocument.body,e);if(e){const o=n.getAttribute("aria-activedescendant");if(o){const a=Dr(n).getElementById(o);if(a)return a}}return n}Nn(ad,"getActiveElement");function rd(t){return t.tagName==="IFRAME"}Nn(rd,"isFrame");var ie=globalThis?.document?c.useLayoutEffect:()=>{},wv=Object.defineProperty,xv=(t,e)=>wv(t,"name",{value:e,configurable:!0}),Cc=Tn[" useEffectEvent ".trim().toString()],Sc=Tn[" useInsertionEffect ".trim().toString()];function sd(t){if(typeof Cc=="function")return Cc(t);const e=c.useRef(()=>{throw new Error("Cannot call an event handler while rendering.")});return typeof Sc=="function"?Sc(()=>{e.current=t}):ie(()=>{e.current=t}),c.useMemo(()=>(...n)=>e.current?.(...n),[])}xv(sd,"useEffectEvent");var Cv=Object.defineProperty,ho=(t,e)=>Cv(t,"name",{value:e,configurable:!0}),Sv=Tn[" useInsertionEffect ".trim().toString()]||ie;function we({prop:t,defaultProp:e,onChange:n=ho(()=>{},"onChange"),caller:o}){const[a,r,i]=id({defaultProp:e,onChange:n}),l=t!==void 0,d=l?t:a,u=c.useCallback(m=>{if(l){const p=cd(m)?m(t):m;p!==t&&i.current?.(p)}else r(m)},[l,t,r,i]);return[d,u]}ho(we,"useControllableState");function id({defaultProp:t,onChange:e}){const[n,o]=c.useState(t),a=c.useRef(n),r=c.useRef(e);return Sv(()=>{r.current=e},[e]),c.useEffect(()=>{a.current!==n&&(r.current?.(n),a.current=n)},[n,a]),[n,o,r]}
178ho(id,"useUncontrolledState");function cd(t){return typeof t=="function"}ho(cd,"isFunction");var kc=Symbol("RADIX:SYNC_STATE");function kv(t,e,n,o){const{prop:a,defaultProp:r,onChange:i,caller:l}=e,d=a!==void 0,u=sd(i),m=[{...n,state:r}];o&&m.push(o);const[p,f]=c.useReducer((v,x)=>{if(x.type===kc)return{...v,state:x.state};const w=t(v,x);return d&&!Object.is(w.state,v.state)&&u(w.state),w},...m),g=p.state,h=c.useRef(g);c.useEffect(()=>{h.current!==g&&(h.current=g,d||u(g))},[g,h,d]);const _=c.useMemo(()=>a!==void 0?{...p,state:a}:p,[p,a]);return c.useEffect(()=>{d&&!Object.is(a,p.state)&&f({type:kc,state:a})},[a,p.state,d]),[_,f]}ho(kv,"useControllableStateReducer");var Pv=Object.defineProperty,Ev=(t,e)=>Pv(t,"name",{value:e,configurable:!0}),Iv=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],M=Iv.reduce((t,e)=>{const n=Qe(`Primitive.${e}`),o=c.forwardRef((a,r)=>{const{asChild:i,...l}=a,d=i?n:e;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),s.jsx(d,{...l,ref:r})});return o.displayName=`Primitive.${e}`,{...t,[e]:o}},{});function Zn(t,e){t&&An.flushSync(()=>t.dispatchEvent(e))}Ev(Zn,"dispatchDiscreteCustomEvent");var Tv=Object.defineProperty,bt=(t,e)=>Tv(t,"name",{value:e,configurable:!0});function ld(t,e){return c.useReducer((n,o)=>e[n][o]??n,t)}bt(ld,"useStateMachine");var xe=bt(t=>{const{present:e,children:n}=t,o=dd(e),a=typeof n=="function"?n({present:o.isPresent}):c.Children.only(n),r=ud(o.ref,pd(a));return typeof n=="function"||o.isPresent?c.cloneElement(a,{ref:r}):null},"Presence");function dd(t){const[e,n]=c.useState(),o=c.useRef(null),a=c.useRef(t),r=c.useRef("none"),i=c.useRef(void 0),l=t?"mounted":"unmounted",[d,u]=ld(l,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return c.useEffect(()=>{d==="mounted"?(r.current=i.current??vn(o.current),i.current=void 0):r.current="none"},[d]),ie(()=>{const m=o.current,p=a.current;if(p!==t){const g=r.current,h=vn(m);t?(i.current=h,u("MOUNT")):h==="none"||m?.display==="none"?u("UNMOUNT"):u(p&&g!==h?"ANIMATION_OUT":"UNMOUNT"),a.current=t}},[t,u]),ie(()=>{if(e){let m;const p=e.ownerDocument.defaultView??window,f=bt(h=>{const v=vn(o.current).includes(CSS.escape(h.animationName));if(h.target===e&&v&&(u("ANIMATION_END"),!a.current)){const x=e.style.animationFillMode;e.style.animationFillMode="forwards",m=p.setTimeout(()=>{e.style.animationFillMode==="forwards"&&(e.style.animationFillMode=x)})}},"handleAnimationEnd"),g=bt(h=>{h.target===e&&(r.current=vn(o.current))},"handleAnimationStart");return e.addEventListener("animationstart",g),e.addEventListener("animationcancel",f),e.addEventListener("animationend",f),()=>{p.clearTimeout(m),e.removeEventListener("animationstart",g),e.removeEventListener("animationcancel",f),e.removeEventListener("animationend",f)}}else u("ANIMATION_END")},[e,u]),{isPresent:["mounted","unmountSuspended"].includes(d),ref:c.useCallback(m=>{if(m){const p=getComputedStyle(m);o.current=p,i.current=vn(p)}else o.current=null;n(m)},[])}}bt(dd,"usePresence");function Lr(t,e){if(typeof t=="function")return t(e);t!=null&&(t.current=e)}bt(Lr,"setRef");function ud(...t){const e=c.useRef(t);return e.current=t,c.useCallback(n=>{const o=e.current;let a=!1;const r=o.map(i=>{const l=Lr(i,n);return!a&&typeof l=="function"&&(a=!0),l});if(a)return()=>{for(let i=0;i<r.length;i++){const l=r[i];typeof l=="function"?l():Lr(o[i],null)}}},[])}bt(ud,"useStableComposedRefs");function vn(t){return t?.animationName||"none"}bt(vn,"getAnimationName");function pd(t){let e=Object.getOwnPropertyDescriptor(t.props,"ref")?.get,n=e&&"isReactWarning"in e&&e.isReactWarning;return n?t.ref:(e=Object.getOwnPropertyDescriptor(t,"ref")?.get,n=e&&"isReactWarning"in e&&e.isReactWarning,n?t.props.ref:t.props.ref||t.ref)}bt(pd,"getElementRef");var Av=Object.defineProperty,Rv=(t,e)=>Av(t,"name",{value:e,configurable:!0}),Mv=Tn[" useId ".trim().toString()]||(()=>{}),Nv=0;function ce(t){const[e,n]=c.useState(Mv());return ie(()=>{t||n(o=>o??String(Nv++))},[t]),t||(e?`radix-${e}
178`:"")}Rv(ce,"useId");var Ov=Object.defineProperty,_o=(t,e)=>Ov(t,"name",{value:e,configurable:!0}),Ps="Collapsible",[jv,md]=ge(Ps),[Dv,Es]=jv(Ps),Lv=c.forwardRef(_o(function(e,n){const{__scopeCollapsible:o,open:a,defaultOpen:r,disabled:i,onOpenChange:l,...d}=e,[u,m]=we({prop:a,defaultProp:r??!1,onChange:l,caller:Ps});return s.jsx(Dv,{scope:o,disabled:i,contentId:ce(),open:u,onOpenToggle:c.useCallback(()=>m(p=>!p),[m]),children:s.jsx(M.div,{"data-state":ya(u),"data-disabled":i?"":void 0,...d,ref:n})})},"Collapsible")),Fv="CollapsibleTrigger",Uv=c.forwardRef(_o(function(e,n){const{__scopeCollapsible:o,...a}=e,r=Es(Fv,o);return s.jsx(M.button,{type:"button","aria-controls":r.open?r.contentId:void 0,"aria-expanded":r.open||!1,"data-state":ya(r.open),"data-disabled":r.disabled?"":void 0,disabled:r.disabled,...a,ref:n,onClick:I(e.onClick,r.onOpenToggle)})},"CollapsibleTrigger")),fd="CollapsibleContent",Vv=c.forwardRef(_o(function(e,n){const{forceMount:o,...a}=e,r=Es(fd,e.__scopeCollapsible);return s.jsx(xe,{present:o||r.open,children:({present:i})=>s.jsx($v,{...a,ref:n,present:i})})},"CollapsibleContent")),$v=c.forwardRef(_o(function(e,n){const{__scopeCollapsible:o,present:a,children:r,...i}=e,l=Es(fd,o),[d,u]=c.useState(a),m=c.useRef(null),p=G(n,m),f=c.useRef(0),g=f.current,h=c.useRef(0),_=h.current,v=l.open||d,x=c.useRef(v),w=c.useRef(void 0);return c.useEffect(()=>{const y=requestAnimationFrame(()=>x.current=!1);return()=>cancelAnimationFrame(y)},[]),ie(()=>{const y=m.current;if(y){w.current=w.current||{transitionDuration:y.style.transitionDuration,animationName:y.style.animationName},y.style.transitionDuration="0s",y.style.animationName="none";const b=y.getBoundingClientRect();f.current=b.height,h.current=b.width,x.current||(y.style.transitionDuration=w.current.transitionDuration,y.style.animationName=w.current.animationName),u(a)}},[l.open,a]),s.jsx(M.div,{"data-state":ya(l.open),"data-disabled":l.disabled?"":void 0,id:l.contentId,hidden:!v,...i,ref:p,style:{"--radix-collapsible-content-height":g?`${g}px`:void 0,"--radix-collapsible-content-width":_?`${_}px`:void 0,...e.style},children:v&&r})},"CollapsibleContentImpl"));function ya(t){return t?"open":"closed"}_o(ya,"getState");var Bv=Lv,Gv=Uv,qv=Vv,Wv=Object.defineProperty,zv=(t,e)=>Wv(t,"name",{value:e,configurable:!0}),Hv=c.createContext(void 0);function kt(t){const e=c.useContext(Hv);return t||e||"ltr"}zv(kt,"useDirection");var Kv=Object.defineProperty,Fe=(t,e)=>Kv(t,"name",{value:e,configurable:!0}),dt="Accordion",Yv=["Home","End","ArrowDown","ArrowUp","ArrowLeft","ArrowRight"],[Is,Xv,Qv]=Gt(dt),[ba,VR]=ge(dt,[Qv,md]),Ts=md(),Zv=c.forwardRef(Fe(function(e,n){const{type:o,...a}=e,r=a,i=a;return s.jsx(Is.Provider,{scope:e.__scopeAccordion,children:o==="multiple"?s.jsx(ny,{...i,ref:n}):s.jsx(ty,{...r,ref:n})})},"Accordion")),[gd,Jv]=ba(dt),[hd,ey]=ba(dt,{collapsible:!1}),ty=c.forwardRef(Fe(function(e,n){const{value:o,defaultValue:a,onValueChange:r=Fe(()=>{},"onValueChange"),collapsible:i=!1,...l}=e,[d,u]=we({prop:o,defaultProp:a??"",onChange:r,caller:dt});return s.jsx(gd,{scope:e.__scopeAccordion,value:c.useMemo(()=>d?[d]:[],[d]),onItemOpen:u,onItemClose:c.useCallback(()=>i&&u(""),[i,u]),children:s.jsx(hd,{scope:e.__scopeAccordion,collapsible:i,children:s.jsx(_d,{...l,ref:n})})})},"AccordionImplSingle")),ny=c.forwardRef(Fe(function(e,n){const{value:o,defaultValue:a,onValueChange:r=Fe(()=>{},"onValueChange"),...i}=e,[l,d]=we({prop:o,defaultProp:a??[],onChange:r,caller:dt}),u=c.useCallback(p=>d((f=[])=>[...f,p]),[d]),m=c.useCallback(p=>d((f=[])=>f.filter(g=>g!==p)),[d]);return s.jsx(gd,{scope:e.__scopeAccordion,value:l,onItemOpen:u,onItemClose:m,children:s.jsx(hd,{scope:e.__scopeAccordion,collapsible:!0,children:s.jsx(_d,{...i,ref:n})})})},"AccordionImplMultiple")),[oy,wa]=ba(dt),_d=c.forwardRef(Fe(function(e,n){const{__scopeAccordion:o,disabled:a,dir:r,orientation:i="vertical",...l}=e,d=c.useRef(null),u=G(d,n),m=Xv(o),f=kt(r)==="ltr",g=I(e.onKeyDown,h=>{if(!Yv.includes(h.key))return;const _=h.target,v=m().filter(A=>!A.ref.current?.disabled),x=v.findIndex(A=>A.ref.current===_),w=v.length;if(x===-1)return;h.preventDefault();let y=x;const b=0,S=w-1,C=Fe(()=>{y=x+1,y>S&&(y=b)},"moveNext"),P=Fe(()=>{y=x-1,y<b&&(y=S)},"movePrev");switch(h.key){case"Home":y=b;break;case"End":y=S;break;case"ArrowRight":i==="horizontal"&&(f?C():P());break;case"ArrowDown":i==="vertical"&&C();break;case"ArrowLeft":i==="horizontal"&&(f?P():C());break;case"ArrowUp":i==="vertical"&&P();break}const T=y%w;v[T].ref.current?.focus()});return s.jsx(oy,{scope:o,disabled:a,direction:r,orientation:i,children:s.jsx(Is.Slot,{scope:o,children:s.jsx(M.div,{...l,"data-orientation":i,ref:u,onKeyDown:a?void 0:g})})})},"AccordionImpl")),Fr="AccordionItem",[ay,As]=ba(Fr),ry=c.forwardRef(Fe(function(e,n){const{__scopeAccordion:o,value:a,...r}=e,i=wa(Fr,o),l=Jv(Fr,o),d=Ts(o),u=ce(),m=a&&l.value.includes(a)||!1,p=i.disabled||e.disabled;return s.jsx(ay,{scope:o,open:m,disabled:p,triggerId:u,children:s.jsx(Bv,{"data-orientation":i.orientation,"data-state":Rs(m),...d,...r,ref:n,disabled:p,open:m,onOpenChange:f=>{f?l.onItemOpen(a):l.onItemClose(a)}})})},"AccordionItem")),sy="AccordionHeader",iy=c.forwardRef(Fe(function(e,n){const{__scopeAccordion:o,...a}=e,r=wa(dt,o),i=As(sy,o);return s.jsx(M.h3,{"data-orientation":r.orientation,"data-state":Rs(i.open),"data-disabled":i.disabled?"":void 0,...a,ref:n})},"AccordionHeader")),Pc="AccordionTrigger",cy=c.forwardRef(Fe(function(e,n){const{__scopeAccordion:o,...a}=e,r=wa(dt,o),i=As(Pc,o),l=ey(Pc,o),d=Ts(o);return s.jsx(Is.ItemSlot,{scope:o,children:s.jsx(Gv,{"aria-disabled":i.open&&!l.collapsible||void 0,"data-orientation":r.orientation,id:i.triggerId,...d,...a,ref:n})})},"AccordionTrigger")),ly="AccordionContent",dy=c.forwardRef(Fe(function(e,n){const{__scopeAccordion:o,...a}=e,r=wa(dt,o),i=As(ly,o),l=Ts(o);return s.jsx(qv,{role:"region","aria-labelledby":i.triggerId,"data-orientation":r.orientation,...l,...a,ref:n,style:{"--radix-accordion-content-height":"var(--radix-collapsible-content-height)","--radix-accordion-content-width":"var(--radix-collapsible-content-width)",...e.style}})},"AccordionContent"));function Rs(t){return t?"open":"closed"}Fe(Rs,"getState");var uy=Zv,py=ry,my=iy,vd=cy,yd=dy;const fy=t=>t!==""&&t!==void 0&&!/^\d*\.?\d+$/.test(t)&&!/^\d+(px|rem|em)?$/.test(t),gy=Nh({extend:{theme:{color:[fy]}}});function k(...t){return gy(Mh(t))}const hy=uy,bd=c.forwardRef(({className:t,...e},n)=>s.jsx(py,{ref:n,className:k("border-b border-border/40",t),...e}));bd.displayName="AccordionItem";const wd=c.forwardRef(({className:t,children:e,...n},o)=>
178s.jsx(my,{className:"flex",children:s.jsxs(vd,{ref:o,className:k("flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all hover:underline text-left [&[data-state=open]>svg]:rotate-180",t),...n,children:[e,s.jsx(fa,{className:"h-4 w-4 shrink-0 text-muted-foreground transition-transform duration-200"})]})}));wd.displayName=vd.displayName;const xd=c.forwardRef(({className:t,children:e,...n},o)=>s.jsx(yd,{ref:o,className:"overflow-hidden text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down",...n,children:s.jsx("div",{className:k("pb-4 pt-0",t),children:e})}));xd.displayName=yd.displayName;const _y=$t("relative w-full rounded border border-solid px-3 py-2.5 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground border-border",destructive:"border-error-600/50 bg-error-50 dark:bg-error-950/30 text-error-700 dark:text-error-200 [&>svg]:text-error-600",info:"border-sky-500/40 bg-sky-50 text-sky-700 dark:bg-sky-950/30 dark:text-sky-200 dark:border-sky-500/30 [&>svg]:text-sky-600",warning:"border-warning-600/50 bg-warning-50 dark:bg-warning-950/30 text-warning-700 dark:text-warning-200 [&>svg]:text-warning-600",success:"border-success-600/50 bg-success-50 dark:bg-success-950/30 text-success-700 dark:text-success-200 [&>svg]:text-success-600",primary:"border-primary/50 bg-primary/10 dark:bg-primary/20 text-primary dark:text-primary-dark [&>svg]:text-primary dark:[&>svg]:text-primary-dark"}},defaultVariants:{variant:"default"}}),Cd=c.forwardRef(({className:t,variant:e,color:n,title:o,children:a,...r},i)=>{let l=e;!e&&n&&(n==="warning"?l="warning":n==="error"||n==="destructive"?l="destructive":n==="success"?l="success":(n==="blue"||n==="info")&&(l="info"));const d=_y({variant:l}),u=k(d,t);return s.jsxs("div",{ref:i,role:"alert",className:u,...r,children:[o&&s.jsx(Ms,{children:o}),a&&s.jsx(Ns,{children:a})]})});Cd.displayName="Alert";const Ms=c.forwardRef(({className:t,...e},n)=>s.jsx("h5",{ref:n,className:k("mb-1 font-medium leading-none tracking-tight",t),...e}));Ms.displayName="AlertTitle";const Ns=c.forwardRef(({className:t,...e},n)=>s.jsx("div",{ref:n,className:k("text-sm [&_p]:leading-relaxed",t),...e}));Ns.displayName="AlertDescription";var vy=Object.defineProperty,yy=(t,e)=>vy(t,"name",{value:e,configurable:!0});function fe(t){const e=c.useRef(t);return c.useEffect(()=>{e.current=t}),c.useMemo(()=>(...n)=>e.current?.(...n),[])}yy(fe,"useCallbackRef");var by=Object.defineProperty,Se=(t,e)=>by(t,"name",{value:e,configurable:!0}),Ur="dismissableLayer.update",wy="dismissableLayer.pointerDownOutside",xy="dismissableLayer.focusOutside",Ec,Sd=c.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),nn=c.forwardRef(Se(function(e,n){const{disableOutsidePointerEvents:o=!1,deferPointerDownOutside:a=!1,onEscapeKeyDown:r,onPointerDownOutside:i,onFocusOutside:l,onInteractOutside:d,onDismiss:u,...m}=e,p=c.useContext(Sd),[f,g]=c.useState(null),h=f?.ownerDocument??globalThis?.document,[,_]=c.useState({}),v=G(n,g),x=Array.from(p.layers),[w]=[...p.layersWithOutsidePointerEventsDisabled].slice(-1),y=w?x.indexOf(w):-1,b=f?x.indexOf(f):-1,S=p.layersWithOutsidePointerEventsDisabled.size>0,C=b>=y,P=c.useRef(!1),T=Pd(j=>{i?.(j),d?.(j),j.defaultPrevented||u?.()},{ownerDocument:h,deferPointerDownOutside:a,isDeferredPointerDownOutsideRef:P,dismissableSurfaces:p.dismissableSurfaces,shouldHandlePointerDownOutside:c.useCallback(j=>{if(!(j instanceof Node))return!1;const $=[...p.branches].some(B=>B.contains(j));return C&&!$},[p.branches,C])}),A=Ed(j=>{if(a&&P.current)return;const $=j.target;[...p.branches].some(Y=>Y.contains($))||(l?.(j),d?.(j),j.defaultPrevented||u?.())},h),R=f?b===x.length-1:!1,F=fe(j=>{j.key==="Escape"&&(r?.(j),!j.defaultPrevented&&u&&(j.preventDefault(),u()))});return c.useEffect(()=>{if(R)return h.addEventListener("keydown",F,{capture:!0}),()=>h.removeEventListener("keydown",F,{capture:!0})},[h,R,F]),c.useEffect(()=>{if(f)return o&&(p.layersWithOutsidePointerEventsDisabled.size===0&&(Ec=h.body.style.pointerEvents,h.body.style.pointerEvents="none"),p.layersWithOutsidePointerEventsDisabled.add(f)),p.layers.add(f),Vr(),()=>{o&&(p.layersWithOutsidePointerEventsDisabled.delete(f),p.layersWithOutsidePointerEventsDisabled.size===0&&(h.body.style.pointerEvents=Ec))}},[f,h,o,p]),c.useEffect(()=>()=>{f&&(p.layers.delete(f),p.layersWithOutsidePointerEventsDisabled.delete(f),Vr())},[f,p]),c.useEffect(()=>{const j=Se(()=>_({}),"handleUpdate");return document.addEventListener(Ur,j),()=>document.removeEventListener(Ur,j)},[]),s.jsx(M.div,{...m,ref:v,style:{pointerEvents:S?C?"auto":"none":void 0,...e.style},onFocusCapture:I(e.onFocusCapture,A.onFocusCapture),onBlurCapture:I(e.onBlurCapture,A.onBlurCapture),onPointerDownCapture:I(e.onPointerDownCapture,T.onPointerDownCapture)})},"DismissableLayer"));function kd(){const t=c.useContext(Sd),[e,n]=c.useState(null);return c.useEffect(()=>{if(e)return t.dismissableSurfaces.add(e),()=>{t.dismissableSurfaces.delete(e)}},[e,t.dismissableSurfaces]),n}Se(kd,"useDismissableLayerSurface");var Cy=Se(()=>!0,"IS_TRUE");function Pd(t,e){const{ownerDocument:n=globalThis?.document,deferPointerDownOutside:o=!1,isDeferredPointerDownOutsideRef:a,dismissableSurfaces:r,shouldHandlePointerDownOutside:i=Cy}=e,l=fe(t),d=c.useRef(!1),u=c.useRef(!1),m=c.useRef(new Map),p=c.useRef(()=>{});return c.useEffect(()=>{function f(){u.current=!1,a.current=!1,m.current.clear()}Se(f,"resetOutsideInteraction");function g(){return Array.from(m.current.values()).some(Boolean)}Se(g,"isOutsideInteractionIntercepted");function h(y){if(!u.current)return;const b=y.target;b instanceof Node&&[...r].some(C=>C.contains(b))||m.current.set(y.type,!0),y.type==="click"&&window.setTimeout(()=>{u.current&&p.current()},0)}Se(h,"handleInteractionCapture");function _(y){u.current&&m.current.set(y.type,!1)}Se(_,"handleInteractionBubble");const v=Se(y=>{if(y.target&&!d.current){let b=function(){n.removeEventListener("click",p.current);const C=g();f(),C||Os(wy,l,S,{discrete:!0})};if(Se(b,"handleAndDispatchPointerDownOutsideEvent"),!i(y.target)){n.removeEventListener("click",p.current),f(),d.current=!1;return}const S={originalEvent:y};u.current=!0,a.current=o&&y.button===0,m.current.clear(),!o||y.button!==0?b():(n.removeEventListener("click",p.current),p.current=b,n.addEventListener("click",p.current,{once:!0}))}else n.removeEventListener("click",p.current),f();d.current=!1},"handlePointerDown"),x=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(const y of x)n.addEventListener(y,h,!0),n.addEventListener(y,_);const w=window.setTimeout(()=>{n.addEventListener("pointerdown",v)},0);return()=>{window.clearTimeout(w),n.removeEventListener("pointerdown",v),n.removeEventListener("click",p.current);for(const y of x)n.removeEventListener(y,h,!0),n.removeEventListener(y,_)}},[n,l,o,a,r,i]),{onPointerDownCapture:Se(()=>d.current=!0,"onPointerDownCapture")}}Se(Pd,"usePointerDownOutside");function Ed(t,e=globalThis?.document){const n=fe(t),o=c.useRef(!1);return c.useEffect(()=>{const a=Se(r=>
178{r.target&&!o.current&&Os(xy,n,{originalEvent:r},{discrete:!1})},"handleFocus");return e.addEventListener("focusin",a),()=>e.removeEventListener("focusin",a)},[e,n]),{onFocusCapture:Se(()=>o.current=!0,"onFocusCapture"),onBlurCapture:Se(()=>o.current=!1,"onBlurCapture")}}Se(Ed,"useFocusOutside");function Vr(){const t=new CustomEvent(Ur);document.dispatchEvent(t)}Se(Vr,"dispatchUpdate");function Os(t,e,n,{discrete:o}){const a=n.originalEvent.target,r=new CustomEvent(t,{bubbles:!1,cancelable:!0,detail:n});e&&a.addEventListener(t,e,{once:!0}),o?Zn(a,r):a.dispatchEvent(r)}Se(Os,"handleAndDispatchCustomEvent");var Sy=Object.defineProperty,Ae=(t,e)=>Sy(t,"name",{value:e,configurable:!0}),sr="focusScope.autoFocusOnMount",ir="focusScope.autoFocusOnUnmount",Ic={bubbles:!1,cancelable:!0},xa=c.forwardRef(Ae(function(e,n){const{loop:o=!1,trapped:a=!1,onMountAutoFocus:r,onUnmountAutoFocus:i,...l}=e,[d,u]=c.useState(null),m=fe(r),p=fe(i),f=c.useRef(null),g=G(n,u),h=c.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;c.useEffect(()=>{if(a){let v=function(b){if(h.paused||!d)return;const S=b.target;d.contains(S)?f.current=S:mt(f.current,{select:!0})},x=function(b){if(h.paused||!d)return;const S=b.relatedTarget;S!==null&&(d.contains(S)||mt(f.current,{select:!0}))},w=function(b){if(document.activeElement===document.body)for(const C of b)C.removedNodes.length>0&&mt(d)};Ae(v,"handleFocusIn"),Ae(x,"handleFocusOut"),Ae(w,"handleMutations"),document.addEventListener("focusin",v),document.addEventListener("focusout",x);const y=new MutationObserver(w);return d&&y.observe(d,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",v),document.removeEventListener("focusout",x),y.disconnect()}}},[a,d,h.paused]),c.useEffect(()=>{if(d){Tc.add(h);const v=document.activeElement;if(!d.contains(v)){const w=new CustomEvent(sr,Ic);d.addEventListener(sr,m),d.dispatchEvent(w),w.defaultPrevented||(Id(Nd(js(d)),{select:!0}),document.activeElement===v&&mt(d))}return()=>{d.removeEventListener(sr,m),setTimeout(()=>{const w=new CustomEvent(ir,Ic);d.addEventListener(ir,p),d.dispatchEvent(w),w.defaultPrevented||mt(v??document.body,{select:!0}),d.removeEventListener(ir,p),Tc.remove(h)},0)}}},[d,m,p,h]);const _=c.useCallback(v=>{if(!o&&!a||h.paused)return;const x=v.key==="Tab"&&!v.altKey&&!v.ctrlKey&&!v.metaKey,w=document.activeElement;if(x&&w){const y=v.currentTarget,[b,S]=Td(y);b&&S?!v.shiftKey&&w===S?(v.preventDefault(),o&&mt(b,{select:!0})):v.shiftKey&&w===b&&(v.preventDefault(),o&&mt(S,{select:!0})):w===y&&v.preventDefault()}},[o,a,h.paused]);return s.jsx(M.div,{tabIndex:-1,...l,ref:g,onKeyDown:_})},"FocusScope"));function Id(t,{select:e=!1}={}){const n=document.activeElement;for(const o of t)if(mt(o,{select:e}),document.activeElement!==n)return}Ae(Id,"focusFirst");function Td(t){const e=js(t),n=$r(e,t),o=$r(e.reverse(),t);return[n,o]}Ae(Td,"getTabbableEdges");function js(t){const e=[],n=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT,{acceptNode:Ae(o=>{const a=o.tagName==="INPUT"&&o.type==="hidden";return o.disabled||o.hidden||a?NodeFilter.FILTER_SKIP:o.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;n.nextNode();)e.push(n.currentNode);return e}Ae(js,"getTabbableCandidates");function $r(t,e){const n=typeof e.checkVisibility=="function"&&e.checkVisibility({checkVisibilityCSS:!0});for(const o of t)if(!(n?!o.checkVisibility({checkVisibilityCSS:!0}):Ad(o,{upTo:e})))return o}Ae($r,"findVisible");function Ad(t,{upTo:e}){if(getComputedStyle(t).visibility==="hidden")return!0;for(;t;){if(e!==void 0&&t===e)return!1;if(getComputedStyle(t).display==="none")return!0;t=t.parentElement}return!1}Ae(Ad,"isHidden");function Rd(t){return t instanceof HTMLInputElement&&"select"in t}Ae(Rd,"isSelectableInput");function mt(t,{select:e=!1}={}){if(t&&t.focus){const n=document.activeElement;t.focus({preventScroll:!0}),t!==n&&Rd(t)&&e&&t.select()}}Ae(mt,"focus");var Tc=Md();function Md(){let t=[];return{add(e){const n=t[0];e!==n&&n?.pause(),t=Br(t,e),t.unshift(e)},remove(e){t=Br(t,e),t[0]?.resume()}}}Ae(Md,"createFocusScopesStack");function Br(t,e){const n=[...t],o=n.indexOf(e);return o!==-1&&n.splice(o,1),n}Ae(Br,"arrayRemove");function Nd(t){return t.filter(e=>e.tagName!=="A")}Ae(Nd,"removeLinks");var ky=Object.defineProperty,Py=(t,e)=>ky(t,"name",{value:e,configurable:!0}),vo=c.forwardRef(Py(function(e,n){const{container:o,...a}=e,[r,i]=c.useState(!1);ie(()=>i(!0),[]);const l=o||r&&globalThis?.document?.body;return l?An.createPortal(s.jsx(M.div,{...a,ref:n}),l):null},"Portal")),Ey=Object.defineProperty,Ds=(t,e)=>Ey(t,"name",{value:e,configurable:!0}),Mo=0,pn=null;function Iy(t){return On(),t.children}
178Ds(Iy,"FocusGuards");function On(){c.useEffect(()=>{pn||(pn={start:Gr(),end:Gr()});const{start:t,end:e}=pn;return document.body.firstElementChild!==t&&document.body.insertAdjacentElement("afterbegin",t),document.body.lastElementChild!==e&&document.body.insertAdjacentElement("beforeend",e),Mo++,()=>{Mo===1&&(pn?.start.remove(),pn?.end.remove(),pn=null),Mo=Math.max(0,Mo-1)}},[])}Ds(On,"useFocusGuards");function Gr(){const t=document.createElement("span");return t.setAttribute("data-radix-focus-guard",""),t.tabIndex=0,t.style.outline="none",t.style.opacity="0",t.style.position="fixed",t.style.pointerEvents="none",t}Ds(Gr,"createFocusGuard");var at=function(){return at=Object.assign||function(e){for(var n,o=1,a=arguments.length;o<a;o++){n=arguments[o];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},at.apply(this,arguments)};function Od(t,e){var n={};for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,o=Object.getOwnPropertySymbols(t);a<o.length;a++)e.indexOf(o[a])<0&&Object.prototype.propertyIsEnumerable.call(t,o[a])&&(n[o[a]]=t[o[a]]);return n}function $R(t,e,n,o){function a(r){return r instanceof n?r:new n(function(i){i(r)})}return new(n||(n=Promise))(function(r,i){function l(m){try{u(o.next(m))}catch(p){i(p)}}function d(m){try{u(o.throw(m))}catch(p){i(p)}}function u(m){m.done?r(m.value):a(m.value).then(l,d)}u((o=o.apply(t,e||[])).next())})}function Ty(t,e,n){if(n||arguments.length===2)for(var o=0,a=e.length,r;o<a;o++)(r||!(o in e))&&(r||(r=Array.prototype.slice.call(e,0,o)),r[o]=e[o]);return t.concat(r||Array.prototype.slice.call(e))}var Qo="right-scroll-bar-position",Zo="width-before-scroll-bar",Ay="with-scroll-bars-hidden",Ry="--removed-body-scroll-bar-size";function cr(t,e){return typeof t=="function"?t(e):t&&(t.current=e),t}function My(t,e){var n=c.useState(function(){return{value:t,callback:e,facade:{get current(){return n.value},set current(o){var a=n.value;a!==o&&(n.value=o,n.callback(o,a))}}}})[0];return n.callback=e,n.facade}var Ny=typeof window<"u"?c.useLayoutEffect:c.useEffect,Ac=new WeakMap;function Oy(t,e){var n=My(null,function(o){return t.forEach(function(a){return cr(a,o)})});return Ny(function(){var o=Ac.get(n);if(o){var a=new Set(o),r=new Set(t),i=n.current;a.forEach(function(l){r.has(l)||cr(l,null)}),r.forEach(function(l){a.has(l)||cr(l,i)})}Ac.set(n,t)},[t]),n}function jy(t){return t}function Dy(t,e){e===void 0&&(e=jy);var n=[],o=!1,a={read:function(){if(o)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:t},useMedium:function(r){var i=e(r,o);return n.push(i),function(){n=n.filter(function(l){return l!==i})}},assignSyncMedium:function(r){for(o=!0;n.length;){var i=n;n=[],i.forEach(r)}n={push:function(l){return r(l)},filter:function(){return n}}},assignMedium:function(r){o=!0;var i=[];if(n.length){var l=n;n=[],l.forEach(r),i=n}var d=function(){var m=i;i=[],m.forEach(r)},u=function(){return Promise.resolve().then(d)};u(),n={push:function(m){i.push(m),u()},filter:function(m){return i=i.filter(m),n}}}};return a}function Ly(t){t===void 0&&(t={});var e=Dy(null);return e.options=at({async:!0,ssr:!1},t),e}var jd=function(t){var e=t.sideCar,n=Od(t,["sideCar"]);if(!e)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var o=e.read();if(!o)throw new Error("Sidecar medium not found");return c.createElement(o,at({},n))};jd.isSideCarExport=!0;function Fy(t,e){return t.useMedium(e),jd}var Dd=Ly(),lr=function(){},Ca=c.forwardRef(function(t,e){var n=c.useRef(null),o=c.useState({onScrollCapture:lr,onWheelCapture:lr,onTouchMoveCapture:lr}),a=o[0],r=o[1],i=t.forwardProps,l=t.children,d=t.className,u=t.removeScrollBar,m=t.enabled,p=t.shards,f=t.sideCar,g=t.noRelative,h=t.noIsolation,_=t.inert,v=t.allowPinchZoom,x=t.as,w=x===void 0?"div":x,y=t.gapMode,b=Od(t,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),S=f,C=Oy([n,e]),P=at(at({},b),a);return c.createElement(c.Fragment,null,m&&c.createElement(S,{sideCar:Dd,removeScrollBar:u,shards:p,noRelative:g,noIsolation:h,inert:_,setCallbacks:r,allowPinchZoom:!!v,lockRef:n,gapMode:y}),i?c.cloneElement(c.Children.only(l),at(at({},P),{ref:C})):c.createElement(w,at({},P,{className:d,ref:C}),l))});Ca.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};Ca.classNames={fullWidth:Zo,zeroRight:Qo};var Uy=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function Vy(){if(!document)return null;var t=document.createElement("style");t.type="text/css";var e=Uy();return e&&t.setAttribute("nonce",e),t}function $y(t,e){t.styleSheet?t.styleSheet.cssText=e:t.appendChild(document.createTextNode(e))}function By(t){var e=document.head||document.getElementsByTagName("head")[0];e.appendChild(t)}var Gy=function(){var t=0,e=null;return{add:function(n){t==0&&(e=Vy())&&($y(e,n),By(e)),t++},remove:function(){t--,!t&&e&&(e.parentNode&&e.parentNode.removeChild(e),e=null)}}},qy=function(){var t=Gy();return function(e,n){c.useEffect(function(){return t.add(e),function(){t.remove()}},[e&&n])}},Ld=function(){var t=qy(),e=function(n){var o=n.styles,a=n.dynamic;return t(o,a),null};return e},Wy={left:0,top:0,right:0,gap:0},dr=function(t){return parseInt(t||"",10)||0}
vendor: 4,101 bytes, lines 178-218
178,zy=function(t){var e=window.getComputedStyle(document.body),n=e[t==="padding"?"paddingLeft":"marginLeft"],o=e[t==="padding"?"paddingTop":"marginTop"],a=e[t==="padding"?"paddingRight":"marginRight"];return[dr(n),dr(o),dr(a)]},Hy=function(t){if(t===void 0&&(t="margin"),typeof window>"u")return Wy;var e=zy(t),n=document.documentElement.clientWidth,o=window.innerWidth;return{left:e[0],top:e[1],right:e[2],gap:Math.max(0,o-n+e[2]-e[0])}},Ky=Ld(),kn="data-scroll-locked",Yy=function(t,e,n,o){var a=t.left,r=t.top,i=t.right,l=t.gap;return n===void 0&&(n="margin"),` 179 .`.concat(Ay,` { 180 overflow: hidden `).concat(o,`; 181 padding-right: `).concat(l,"px ").concat(o,`; 182 } 183 body[`).concat(kn,`] { 184 overflow: hidden `).concat(o,`; 185 overscroll-behavior: contain; 186 `).concat([e&&"position: relative ".concat(o,";"),n==="margin"&&` 187 padding-left: `.concat(a,`px; 188 padding-top: `).concat(r,`px; 189 padding-right: `).concat(i,`px; 190 margin-left:0; 191 margin-top:0; 192 margin-right: `).concat(l,"px ").concat(o,`; 193 `),n==="padding"&&"padding-right: ".concat(l,"px ").concat(o,";")].filter(Boolean).join(""),` 194 } 195 196 .`).concat(Qo,` { 197 right: `).concat(l,"px ").concat(o,`; 198 } 199 200 .`).concat(Zo,` { 201 margin-right: `).concat(l,"px ").concat(o,`; 202 } 203 204 .`).concat(Qo," .").concat(Qo,` { 205 right: 0 `).concat(o,`; 206 } 207 208 .`).concat(Zo," .").concat(Zo,` { 209 margin-right: 0 `).concat(o,`; 210 } 211 212 body[`).concat(kn,`] { 213 `).concat(Ry,": ").concat(l,`px; 214 } 215`)},Rc=function(){var t=parseInt(document.body.getAttribute(kn)||"0",10);return isFinite(t)?t:0},Xy=function(){c.useEffect(function(){return document.body.setAttribute(kn,(Rc()+1).toString()),function(){var t=Rc()-1;t<=0?document.body.removeAttribute(kn):document.body.setAttribute(kn,t.toString())}},[])},Qy=function(t){var e=t.noRelative,n=t.noImportant,o=t.gapMode,a=o===void 0?"margin":o;Xy();var r=c.useMemo(function(){return Hy(a)},[a]);return c.createElement(Ky,{styles:Yy(r,!e,a,n?"":"!important")})},qr=!1;if(typeof window<"u")try{var No=Object.defineProperty({},"passive",{get:function(){return qr=!0,!0}});window.addEventListener("test",No,No),window.removeEventListener("test",No,No)}catch{qr=!1}var mn=qr?{passive:!1}:!1,Zy=function(t){return t.tagName==="TEXTAREA"},Fd=function(t,e){if(!(t instanceof Element))return!1;var n=window.getComputedStyle(t);return n[e]!=="hidden"&&!(n.overflowY===n.overflowX&&!Zy(t)&&n[e]==="visible")},Jy=function(t){return Fd(t,"overflowY")},eb=function(t){return Fd(t,"overflowX")},Mc=function(t,e){var n=e.ownerDocument,o=e;do{typeof ShadowRoot<"u"&&o instanceof ShadowRoot&&(o=o.host);var a=Ud(t,o);if(a){var r=Vd(t,o),i=r[1],l=r[2];if(i>l)return!0}o=o.parentNode}while(o&&o!==n.body);return!1},tb=function(t){var e=t.scrollTop,n=t.scrollHeight,o=t.clientHeight;return[e,n,o]},nb=function(t){var e=t.scrollLeft,n=t.scrollWidth,o=t.clientWidth;return[e,n,o]},Ud=function(t,e){return t==="v"?Jy(e):eb(e)},Vd=function(t,e){return t==="v"?tb(e):nb(e)},ob=function(t,e){return t==="h"&&e==="rtl"?-1:1},ab=function(t,e,n,o,a){var r=ob(t,window.getComputedStyle(e).direction),i=r*o,l=n.target,d=e.contains(l),u=!1,m=i>0,p=0,f=0;do{if(!l)break;var g=Vd(t,l),h=g[0],_=g[1],v=g[2],x=_-v-r*h;(h||x)&&Ud(t,l)&&(p+=x,f+=h);var w=l.parentNode;l=w&&w.nodeType===Node.DOCUMENT_FRAGMENT_NODE?w.host:w}while(!d&&l!==document.body||d&&(e.contains(l)||e===l));return(m&&Math.abs(p)<1||!m&&Math.abs(f)<1)&&(u=!0),u},Oo=function(t){return"changedTouches"in t?[t.changedTouches[0].clientX,t.changedTouches[0].clientY]:[0,0]},Nc=function(t){return[t.deltaX,t.deltaY]},Oc=function(t){return t&&"current"in t?t.current:t},rb=function(t,e){return t[0]===e[0]&&t[1]===e[1]},sb=function(t){return` 216 .block-interactivity-`.concat(t,` {pointer-events: none;} 217 .allow-interactivity-`).concat(t,` {pointer-events: all;} 218`)},ib=0,fn=[];function cb(t){var e=c.useRef([]),n=c.useRef([0,0]),o=c.useRef(),a=c.useState(ib++)[0],r=c.useState(Ld)[0],i=c.useRef(t);c.useEffect(function(){i.current=t},[t]),c.useEffect(function(){if(t.inert){document.body.classList.add("block-interactivity-".concat(a));
218var _=Ty([t.lockRef.current],(t.shards||[]).map(Oc),!0).filter(Boolean);return _.forEach(function(v){return v.classList.add("allow-interactivity-".concat(a))}),function(){document.body.classList.remove("block-interactivity-".concat(a)),_.forEach(function(v){return v.classList.remove("allow-interactivity-".concat(a))})}}},[t.inert,t.lockRef.current,t.shards]);var l=c.useCallback(function(_,v){if("touches"in _&&_.touches.length===2||_.type==="wheel"&&_.ctrlKey)return!i.current.allowPinchZoom;var x=Oo(_),w=n.current,y="deltaX"in _?_.deltaX:w[0]-x[0],b="deltaY"in _?_.deltaY:w[1]-x[1],S,C=_.target,P=Math.abs(y)>Math.abs(b)?"h":"v";if("touches"in _&&P==="h"&&C.type==="range")return!1;var T=window.getSelection(),A=T&&T.anchorNode,R=A?A===C||A.contains(C):!1;if(R)return!1;var F=Mc(P,C);if(!F)return!0;if(F?S=P:(S=P==="v"?"h":"v",F=Mc(P,C)),!F)return!1;if(!o.current&&"changedTouches"in _&&(y||b)&&(o.current=S),!S)return!0;var j=o.current||S;return ab(j,v,_,j==="h"?y:b)},[]),d=c.useCallback(function(_){var v=_;if(!(!fn.length||fn[fn.length-1]!==r)){var x="deltaY"in v?Nc(v):Oo(v),w=e.current.filter(function(S){return S.name===v.type&&(S.target===v.target||v.target===S.shadowParent)&&rb(S.delta,x)})[0];if(w&&w.should){v.cancelable&&v.preventDefault();return}if(!w){var y=(i.current.shards||[]).map(Oc).filter(Boolean).filter(function(S){return S.contains(v.target)}),b=y.length>0?l(v,y[0]):!i.current.noIsolation;b&&v.cancelable&&v.preventDefault()}}},[]),u=c.useCallback(function(_,v,x,w){var y={name:_,delta:v,target:x,should:w,shadowParent:lb(x)};e.current.push(y),setTimeout(function(){e.current=e.current.filter(function(b){return b!==y})},1)},[]),m=c.useCallback(function(_){n.current=Oo(_),o.current=void 0},[]),p=c.useCallback(function(_){u(_.type,Nc(_),_.target,l(_,t.lockRef.current))},[]),f=c.useCallback(function(_){u(_.type,Oo(_),_.target,l(_,t.lockRef.current))},[]);c.useEffect(function(){return fn.push(r),t.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:f}),document.addEventListener("wheel",d,mn),document.addEventListener("touchmove",d,mn),document.addEventListener("touchstart",m,mn),function(){fn=fn.filter(function(_){return _!==r}),document.removeEventListener("wheel",d,mn),document.removeEventListener("touchmove",d,mn),document.removeEventListener("touchstart",m,mn)}},[]);var g=t.removeScrollBar,h=t.inert;return c.createElement(c.Fragment,null,h?c.createElement(r,{styles:sb(a)}):null,g?c.createElement(Qy,{noRelative:t.noRelative,gapMode:t.gapMode}):null)}function lb(t){for(var e=null;t!==null;)t instanceof ShadowRoot&&(e=t.host,t=t.host),t=t.parentNode;return e}const db=Fy(Dd,cb);var yo=c.forwardRef(function(t,e){return c.createElement(Ca,at({},t,{ref:e,sideCar:db}))});yo.classNames=Ca.classNames;var ub=function(t){if(typeof document>"u")return null;var e=Array.isArray(t)?t[0]:t;return e.ownerDocument.body},gn=new WeakMap,jo=new WeakMap,Do={},ur=0,$d=function(t){return t&&(t.host||$d(t.parentNode))},pb=function(t,e){return e.map(function(n){if(t.contains(n))return n;var o=$d(n);return o&&t.contains(o)?o:null}).filter(function(n){return!!n})},mb=function(t,e,n,o){var a=pb(e,Array.isArray(t)?t:[t]);Do[n]||(Do[n]=new WeakMap);var r=Do[n],i=[],l=new Set,d=new Set(a),u=function(p){!p||l.has(p)||(l.add(p),u(p.parentNode))};a.forEach(u);var m=function(p){!p||d.has(p)||Array.prototype.forEach.call(p.children,function(f){if(l.has(f))m(f);else try{var g=f.getAttribute(o),h=g!==null&&g!=="false",_=(gn.get(f)||0)+1,v=(r.get(f)||0)+1;gn.set(f,_),r.set(f,v),i.push(f),_===1&&h&&jo.set(f,!0),v===1&&f.setAttribute(n,"true"),h||f.setAttribute(o,"true")}catch{}})};return m(e),l.clear(),ur++,function(){i.forEach(function(p){var f=gn.get(p)-1,g=r.get(p)-1;gn.set(p,f),r.set(p,g),f||(jo.has(p)||p.removeAttribute(o),jo.delete(p)),g||p.removeAttribute(n)}),ur--,ur||(gn=new WeakMap,gn=new WeakMap,jo=new WeakMap,Do={})}},Sa=function(t,e,n){n===void 0&&(n="data-aria-hidden");var o=Array.from(Array.isArray(t)?t:[t]),a=ub(t);return a?(o.push.apply(o,Array.from(a.querySelectorAll("[aria-live], script"))),mb(o,a,n,"aria-hidden")):function(){return null}},fb=Object.defineProperty,Ue=(t,e)=>fb(t,"name",{value:e,configurable:!0}),Ls="Dialog",[Bd,Gd]=ge(Ls),[gb,et]=Bd(Ls),bo=Ue(t=>{const{__scopeDialog:e,children:n,open:o,defaultOpen:a,onOpenChange:r,modal:i=!0}=t,l=c.useRef(null),d=c.useRef(null),[u,m]=we({prop:o,defaultProp:a??!1,onChange:r,caller:Ls}),[p,f]=c.useState(0),[g,h]=c.useState(0);return s.jsx(gb,{scope:e,triggerRef:l,contentRef:d,contentId:ce(),titleId:ce(),descriptionId:ce(),titlePresent:p>0,descriptionPresent:g>0,setTitleCount:f,setDescriptionCount:h,open:u,onOpenChange:m,onOpenToggle:c.useCallback(()=>m(_=>!_),[m]),modal:i,children:n})},"Dialog"),hb="DialogTrigger",Fs=c.forwardRef(Ue(function(e,n){const{__scopeDialog:o,...a}=e,r=et(hb,o),i=G(n,r.triggerRef);return s.jsx(M.button,{type:"button","aria-haspopup":"dialog","aria-expanded":r.open,"aria-controls":r.open?r.contentId:void 0,"data-state":ka(r.open),...a,ref:i,onClick:I(e.onClick,r.onOpenToggle)})},"DialogTrigger")),qd="DialogPortal",[_b,Wd]=Bd(qd,{forceMount:void 0}),wo=Ue(t=>{const{__scopeDialog:e,forceMount:n,children:o,container:a}=t,r=et(qd,e);return s.jsx(_b,{scope:e,forceMount:n,children:c.Children.map(o,i=>s.jsx(xe,{present:n||r.open,children:s.jsx(vo,{asChild:!0,container:a,children:i})}))})},"DialogPortal"),Wr="DialogOverlay",on=c.forwardRef(Ue(function(e,n){const o=Wd(Wr,e.__scopeDialog),{forceMount:a=o.forceMount,...r}=e,i=et(Wr,e.__scopeDialog);return i.modal?s.jsx(xe,{present:a||i.open,children:s.jsx(yb,{...r,ref:n})}):null},"DialogOverlay")),vb=Qe("DialogOverlay.RemoveScroll"),yb=c.forwardRef(Ue(function(e,n){const{__scopeDialog:o,...a}=e,r=et(Wr,o),i=kd(),l=G(n,i);return s.jsx(yo,{as:vb,allowPinchZoom:!0,shards:[r.contentRef],children:s.jsx(M.div,{"data-state":ka(r.open),...a,ref:l,style:{pointerEvents:"auto",...a.style}})})},"DialogOverlayImpl")),Jn="DialogContent",an=c.forwardRef(Ue(function(e,n){const o=Wd(Jn,e.__scopeDialog),{forceMount:a=o.forceMount,...r}=e,i=et(Jn,e.__scopeDialog);return s.jsx(xe,{present:a||i.open,children:i.modal?s.jsx(bb,{...r,ref:n}):s.jsx(wb,{...r,ref:n})})},"DialogContent")),bb=c.forwardRef(Ue(function(e,n){const o=et(Jn,e.__scopeDialog),a=c.useRef(null),r=G(n,o.contentRef,a);return c.useEffect(()=>{const i=a.current;if(i)return Sa(i)},[]),s.jsx(zd,{...e,ref:r,trapFocus:o.open,disableOutsidePointerEvents:o.open,onCloseAutoFocus:I(e.onCloseAutoFocus,i=>{i.preventDefault(),o.triggerRef.current?.focus()}),onPointerDownOutside:I(e.onPointerDownOutside,i=>{const l=i.detail.originalEvent,d=l.button===0&&l.ctrlKey===!0;(l.button===2||d)&&i.preventDefault()}),onFocusOutside:I(e.onFocusOutside,i=>i.preventDefault())})},"DialogContentModal")),wb=c.forwardRef(Ue(function(e,n){const o=et(Jn,e.__scopeDialog),a=c.useRef(!1),r=c.useRef(!1);return s.jsx(zd,{...e,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:i=>{e.onCloseAutoFocus?.(i),i.defaultPrevented||(a.current||o.triggerRef.current?.focus(),i.preventDefault()),a.current=!1,r.current=!1},onInteractOutside:i=>{e.onInteractOutside?.(i),i.defaultPrevented||(a.current=!0,i.detail.originalEvent.type==="pointerdown"&&(r.current=!0));const l=i.target;o.triggerRef.current?.contains(l)&&i.preventDefault(),i.detail.originalEvent.type==="focusin"&&r.current&&i.preventDefault()}})},"DialogContentNonModal")),zd=c.forwardRef(Ue(function(e,n){const{__scopeDialog:o,trapFocus:a,onOpenAutoFocus:r,onCloseAutoFocus:i,...l}=e,d=et(Jn,o);return On(),s.jsx(s.Fragment,{children:s.jsx(xa,{asChild:!0,loop:!0,trapped:a,onMountAutoFocus:r,onUnmountAutoFocus:i,children:s.jsx(nn,{role:"dialog",id:d.contentId,"aria-describedby":d.descriptionPresent?d.descriptionId:void 0,"aria-labelledby":d.titlePresent?d.titleId:void 0,"data-state":ka(d.open),...l,ref:n,deferPointerDownOutside:!0,onDismiss:()=>d.onOpenChange(!1)})})})},"DialogContentImpl")),xb="DialogTitle",jn=c.forwardRef(Ue(function(e,n){const{__scopeDialog:o,...a}=e,r=et(xb,o),{setTitleCount:i}=r;return ie(()=>(i(l=>l+1),()=>i(l=>l-1)),[i]),s.jsx(M.h2,{id:r.titleId,...a,ref:n})},"DialogTitle")),Cb="DialogDescription",Dn=c.forwardRef(Ue(function(e,n){const{__scopeDialog:o,...a}=e,r=et(Cb,o),{setDescriptionCount:i}=r;return ie(()=>(i(l=>l+1),()=>i(l=>
218l-1)),[i]),s.jsx(M.p,{id:r.descriptionId,...a,ref:n})},"DialogDescription")),Sb="DialogClose",Ot=c.forwardRef(Ue(function(e,n){const{__scopeDialog:o,...a}=e,r=et(Sb,o);return s.jsx(M.button,{type:"button",...a,ref:n,onClick:I(e.onClick,()=>r.onOpenChange(!1))})},"DialogClose"));function ka(t){return t?"open":"closed"}Ue(ka,"getState");var kb=Object.defineProperty,Pt=(t,e)=>kb(t,"name",{value:e,configurable:!0}),Pb="AlertDialog",[Eb,BR]=ge(Pb,[Gd]),Et=Gd(),Ib=Pt(t=>{const{__scopeAlertDialog:e,...n}=t,o=Et(e);return s.jsx(bo,{...o,...n,modal:!0})},"AlertDialog"),Tb=c.forwardRef(Pt(function(e,n){const{__scopeAlertDialog:o,...a}=e,r=Et(o);return s.jsx(Fs,{...r,...a,ref:n})},"AlertDialogTrigger")),Ab=Pt(t=>{const{__scopeAlertDialog:e,...n}=t,o=Et(e);return s.jsx(wo,{...o,...n})},"AlertDialogPortal"),Rb=c.forwardRef(Pt(function(e,n){const{__scopeAlertDialog:o,...a}=e,r=Et(o);return s.jsx(on,{...r,...a,ref:n})},"AlertDialogOverlay")),Mb="AlertDialogContent",[Nb,Ob]=Eb(Mb),jb=c.forwardRef(Pt(function(e,n){const{__scopeAlertDialog:o,children:a,...r}=e,i=Et(o),l=c.useRef(null),d=G(n,l),u=c.useRef(null);return s.jsx(Nb,{scope:o,cancelRef:u,children:s.jsx(an,{role:"alertdialog",...i,...r,ref:d,onOpenAutoFocus:I(r.onOpenAutoFocus,m=>{m.preventDefault(),u.current?.focus({preventScroll:!0})}),onPointerDownOutside:m=>m.preventDefault(),onInteractOutside:m=>m.preventDefault(),children:a})})},"AlertDialogContent")),Db=c.forwardRef(Pt(function(e,n){const{__scopeAlertDialog:o,...a}=e,r=Et(o);return s.jsx(jn,{...r,...a,ref:n})},"AlertDialogTitle")),Lb=c.forwardRef(Pt(function(e,n){const{__scopeAlertDialog:o,...a}=e,r=Et(o);return s.jsx(Dn,{...r,...a,ref:n})},"AlertDialogDescription")),Fb=c.forwardRef(Pt(function(e,n){const{__scopeAlertDialog:o,...a}=e,r=Et(o);return s.jsx(Ot,{...r,...a,ref:n})},"AlertDialogAction")),Ub="AlertDialogCancel",Vb=c.forwardRef(Pt(function(e,n){const{__scopeAlertDialog:o,...a}=e,{cancelRef:r}=Ob(Ub,o),i=Et(o),l=G(n,r);return s.jsx(Ot,{...i,...a,ref:l})},"AlertDialogCancel")),$b=Ib,Bb=Tb,Gb=Ab,Hd=Rb,Kd=jb,Yd=Fb,Xd=Vb,Qd=Db,Zd=Lb;const Pa=$t("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded text-sm font-medium transition-all duration-200 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-primary focus-visible:ring-ring focus-visible:ring-offset-0 disabled:pointer-events-auto disabled:cursor-not-allowed disabled:opacity-50 active:scale-[0.98] active:opacity-60 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 relative overflow-hidden w-fit",{variants:{variant:{default:"bg-primary text-primary-foreground shadow-sm hover:bg-primary/90 ",destructive:"bg-destructive/60 text-destructive-foreground shadow-sm hover:bg-destructive/90 focus-visible:bg-destructive/80 focus-visible:ring-offset-destructive/40 focus-visible:ring-destructive/40",outline:"border border-input bg-background/5 hover:bg-background/8 hover:text-accent-foreground focus-visible:border-none",secondary:"bg-white/10 text-secondary-foreground shadow-sm hover:bg-secondary/80 focus-visible:ring-offset-secondary focus-visible:ring-ring",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-white/70 underline-offset-4 underline underline-offset-2 hover:text-white",primary:"bg-primary text-primary-foreground shadow-sm hover:bg-primary/90","tertiary-destructive":"bg-transparent text-destructive hover:bg-destructive/20"},size:{default:"h-9 px-4 py-2",sm:"h-8 px-3 py-2 text-xs",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),wt=c.forwardRef(({className:t,variant:e,size:n,asChild:o=!1,loading:a=!1,fullWidth:r=!1,leadingIcon:i,trailingIcon:l,leftSection:d,rightSection:u,children:m,disabled:p,...f},g)=>{const h=o?pv:"button",_=i??d,v=l??u;return s.jsxs(h,{className:k(Pa({variant:e,size:n}),r&&"w-full",t),ref:g,disabled:p||a,...f,children:[a&&s.jsx(Oh,{className:"h-4 w-4 animate-spin"}),!a&&_&&_,m,!a&&v&&v]})});wt.displayName="Button";const qb=$b,Wb=Bb,Jd=Gb,Us=c.forwardRef(({className:t,...e},n)=>s.jsx(Hd,{className:k("fixed inset-0 z-50 bg-background/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),...e,ref:n}));Us.displayName=Hd.displayName;const eu=c.forwardRef(({className:t,...e},n)=>s.jsxs(Jd,{children:[s.jsx(Us,{}),s.jsx(Kd,{ref:n,className:k("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rou
218nded",t),...e})]}));eu.displayName=Kd.displayName;const tu=({className:t,...e})=>s.jsx("div",{className:k("flex flex-col space-y-2 text-center sm:text-left",t),...e});tu.displayName="AlertDialogHeader";const nu=({className:t,...e})=>s.jsx("div",{className:k("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...e});nu.displayName="AlertDialogFooter";const ou=c.forwardRef(({className:t,...e},n)=>s.jsx(Qd,{ref:n,className:k("text-lg font-semibold",t),...e}));ou.displayName=Qd.displayName;const au=c.forwardRef(({className:t,...e},n)=>s.jsx(Zd,{ref:n,className:k("text-sm text-muted-foreground",t),...e}));au.displayName=Zd.displayName;const ru=c.forwardRef(({className:t,...e},n)=>s.jsx(Yd,{ref:n,className:k(Pa(),t),...e}));ru.displayName=Yd.displayName;const su=c.forwardRef(({className:t,...e},n)=>s.jsx(Xd,{ref:n,className:k(Pa({variant:"outline"}),"mt-2 sm:mt-0",t),...e}));su.displayName=Xd.displayName;var zb=Object.defineProperty,xt=(t,e)=>zb(t,"name",{value:e,configurable:!0}),iu="Avatar",[Hb,GR]=ge(iu),Kb=[0,()=>{}],[Yb,cu]=Hb(iu),zr=c.forwardRef(xt(function(e,n){const{__scopeAvatar:o,...a}=e,[r,i]=c.useState("idle"),[l,d]=pu();return s.jsx(Yb,{scope:o,imageLoadingStatus:r,setImageLoadingStatus:i,imageCount:l,setImageCount:d,children:s.jsx(M.span,{...a,ref:n})})},"Avatar")),Xb="AvatarImage",lu=c.forwardRef(xt(function(e,n){const{__scopeAvatar:o,src:a,onLoadingStatusChange:r,...i}=e,l=cu(Xb,o);l.setImageCount;const d=uu(a,{referrerPolicy:i.referrerPolicy,crossOrigin:i.crossOrigin,loadingStatus:l.imageLoadingStatus,setLoadingStatus:l.setImageLoadingStatus}),u=fe(p=>{r?.(p)}),m=c.useRef(d);return ie(()=>{const p=m.current;m.current=d,d!==p&&u(d)},[d,u]),d==="loaded"?s.jsx(M.img,{...i,ref:n,src:a}):null},"AvatarImage")),Qb="AvatarFallback",du=c.forwardRef(xt(function(e,n){const{__scopeAvatar:o,delayMs:a,...r}=e,i=cu(Qb,o),[l,d]=c.useState(a===void 0);return c.useEffect(()=>{if(a!==void 0){const u=window.setTimeout(()=>d(!0),a);return()=>window.clearTimeout(u)}},[a]),l&&i.imageLoadingStatus!=="loaded"?s.jsx(M.span,{...r,ref:n}):null},"AvatarFallback"));function uu(t,{loadingStatus:e,setLoadingStatus:n,referrerPolicy:o,crossOrigin:a}){return ie(()=>{if(!t){n("error");return}const r=new window.Image,i=xt(d=>{const u=d.currentTarget;n(Hr(u))},"handleLoad"),l=xt(()=>n("error"),"handleError");return r.addEventListener("load",i),r.addEventListener("error",l),o&&(r.referrerPolicy=o),r.crossOrigin=a??null,r.src=t,n(Hr(r)),()=>{r.removeEventListener("load",i),r.removeEventListener("error",l),n("idle")}},[t,a,o,n]),e}xt(uu,"useImageLoadingStatus");function Hr(t){return t.complete?t.naturalWidth>0?"loaded":"error":"loading"}xt(Hr,"getImageLoadingStatus");function pu(){return Kb}xt(pu,"useImageCount");function Zb(t){}xt(Zb,"useUpdateImageCount");const mu=c.forwardRef(({className:t,src:e,alt:n,fallback:o,children:a,...r},i)=>e!==void 0?s.jsxs(zr,{ref:i,className:k("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",t),...r,children:[s.jsx(Vs,{src:e,alt:n}),o&&s.jsx($s,{children:o})]}):s.jsx(zr,{ref:i,className:k("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",t),...r,children:a}));mu.displayName=zr.displayName;const Vs=c.forwardRef(({className:t,...e},n)=>s.jsx(lu,{ref:n,className:k("aspect-square h-full w-full",t),...e}));Vs.displayName=lu.displayName;const $s=c.forwardRef(({className:t,...e},n)=>s.jsx(du,{ref:n,className:k("flex h-full w-full items-center justify-center rounded-full bg-muted",t),...e}));$s.displayName=du.displayName;const fu=c.forwardRef(({className:t,...e},n)=>s.jsx("div",{ref:n,className:k("rounded border border-border bg-card text-card-foreground shadow-sm p-6",t),...e}));fu.displayName="Card";const gu=c.forwardRef(({className:t,...e},n)=>s.jsx("div",{ref:n,className:k("flex flex-col space-y-1.5 p-6",t),...e}));gu.displayName="CardHeader";const hu=c.forwardRef(({className:t,...e},n)=>s.jsx("div",{ref:n,className:k("text-lg font-semibold leading-none tracking-tight text-foreground",t),...e}));hu.displayName="CardTitle";const _u=c.forwardRef(({className:t,...e},n)=>s.jsx("div",{ref:n,className:k("text-sm text-muted-foreground leading-relaxed",t),...e}));
218_u.displayName="CardDescription";const vu=c.forwardRef(({className:t,...e},n)=>s.jsx("div",{ref:n,className:k("p-6 pt-0",t),...e}));vu.displayName="CardContent";const yu=c.forwardRef(({className:t,...e},n)=>s.jsx("div",{ref:n,className:k("flex items-center p-6 pt-0",t),...e}));yu.displayName="CardFooter";var jc=1,Jb=.9,ew=.8,tw=.17,pr=.1,mr=.999,nw=.9999,ow=.99,aw=/[\\\/_+.#"@\[\(\{&]/,rw=/[\\\/_+.#"@\[\(\{&]/g,sw=/[\s-]/,bu=/[\s-]/g;function Kr(t,e,n,o,a,r,i){if(r===e.length)return a===t.length?jc:ow;var l=`${a},${r}`;if(i[l]!==void 0)return i[l];for(var d=o.charAt(r),u=n.indexOf(d,a),m=0,p,f,g,h;u>=0;)p=Kr(t,e,n,o,u+1,r+1,i),p>m&&(u===a?p*=jc:aw.test(t.charAt(u-1))?(p*=ew,g=t.slice(a,u-1).match(rw),g&&a>0&&(p*=Math.pow(mr,g.length))):sw.test(t.charAt(u-1))?(p*=Jb,h=t.slice(a,u-1).match(bu),h&&a>0&&(p*=Math.pow(mr,h.length))):(p*=tw,a>0&&(p*=Math.pow(mr,u-a))),t.charAt(u)!==e.charAt(r)&&(p*=nw)),(p<pr&&n.charAt(u-1)===o.charAt(r+1)||o.charAt(r+1)===o.charAt(r)&&n.charAt(u-1)!==o.charAt(r))&&(f=Kr(t,e,n,o,u+1,r+2,i),f*pr>p&&(p=f*pr)),p>m&&(m=p),u=n.indexOf(d,u+1);return i[l]=m,m}function Dc(t){return t.toLowerCase().replace(bu," ")}function iw(t,e,n){return t=n&&n.length>0?`${t+" "+n.join(" ")}`:t,Kr(t,e,Dc(t),Dc(e),0,0,{})}var Kn='[cmdk-group=""]',fr='[cmdk-group-items=""]',cw='[cmdk-group-heading=""]',wu='[cmdk-item=""]',Lc=`${wu}:not([aria-disabled="true"])`,Yr="cmdk-item-select",yn="data-value",lw=(t,e,n)=>iw(t,e,n),xu=c.createContext(void 0),xo=()=>c.useContext(xu),Cu=c.createContext(void 0),Bs=()=>c.useContext(Cu),Su=c.createContext(void 0),ku=c.forwardRef((t,e)=>{let n=bn(()=>{var E,U;return{search:"",value:(U=(E=t.value)!=null?E:t.defaultValue)!=null?U:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),o=bn(()=>new Set),a=bn(()=>new Map),r=bn(()=>new Map),i=bn(()=>new Set),l=Pu(t),{label:d,children:u,value:m,onValueChange:p,filter:f,shouldFilter:g,loop:h,disablePointerSelection:_=!1,vimBindings:v=!0,...x}=t,w=ce(),y=ce(),b=ce(),S=c.useRef(null),C=bw();Zt(()=>{if(m!==void 0){let E=m.trim();n.current.value=E,P.emit()}},[m]),Zt(()=>{C(6,$)},[]);let P=c.useMemo(()=>({subscribe:E=>(i.current.add(E),()=>i.current.delete(E)),snapshot:()=>n.current,setState:(E,U,V)=>{var L,Q,Z,O;if(!Object.is(n.current[E],U)){if(n.current[E]=U,E==="search")j(),R(),C(1,F);else if(E==="value"){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let K=document.getElementById(b);K?K.focus():(L=document.getElementById(w))==null||L.focus()}if(C(7,()=>{var K;n.current.selectedItemId=(K=B())==null?void 0:K.id,P.emit()}),V||C(5,$),((Q=l.current)==null?void 0:Q.value)!==void 0){let K=U??"";(O=(Z=l.current).onValueChange)==null||O.call(Z,K);return}}P.emit()}},emit:()=>{i.current.forEach(E=>E())}}),[]),T=c.useMemo(()=>({value:(E,U,V)=>{var L;U!==((L=r.current.get(E))==null?void 0:L.value)&&(r.current.set(E,{value:U,keywords:V}),n.current.filtered.items.set(E,A(U,V)),C(2,()=>{R(),P.emit()}))},item:(E,U)=>(o.current.add(E),U&&(a.current.has(U)?a.current.get(U).add(E):a.current.set(U,new Set([E]))),C(3,()=>{j(),R(),n.current.value||F(),P.emit()}),()=>{r.current.delete(E),o.current.delete(E),n.current.filtered.items.delete(E);let V=B();C(4,()=>{j(),V?.getAttribute("id")===E&&F(),P.emit()})}),group:E=>(a.current.has(E)||a.current.set(E,new Set),()=>{r.current.delete(E),a.current.delete(E)}),filter:()=>l.current.shouldFilter,label:d||t["aria-label"],getDisablePointerSelection:()=>l.current.disablePointerSelection,listId:w,inputId:b,labelId:y,listInnerRef:S}),[]);function A(E,U){var V,L;let Q=(L=(V=l.current)==null?void 0:V.filter)!=null?L:lw;return E?Q(E,n.current.search,U):0}function R(){if(!n.current.search||l.current.shouldFilter===!1)return;let E=n.current.filtered.items,U=[];n.current.filtered.groups.forEach(L=>{let Q=a.current.get(L),Z=0;Q.forEach(O=>{let K=E.get(O);Z=Math.max(K,Z)}),U.push([L,Z])});let V=S.current;Y().sort((L,Q)=>{var Z,O;let K=L.getAttribute("id"),_e=Q.getAttribute("id");return((Z=E.get(_e))!=null?Z:0)-((O=E.get(K))!=null?O:0)}).forEach(L=>{let Q=L.closest(fr);Q?Q.appendChild(L.parentElement===Q?L:L.closest(`${fr} > *`)):V.appendChild(L.parentElement===V?L:L.closest(`${fr} > *`))}),U.sort((L,Q)=>
218Q[1]-L[1]).forEach(L=>{var Q;let Z=(Q=S.current)==null?void 0:Q.querySelector(`${Kn}[${yn}="${encodeURIComponent(L[0])}"]`);Z?.parentElement.appendChild(Z)})}function F(){let E=Y().find(V=>V.getAttribute("aria-disabled")!=="true"),U=E?.getAttribute(yn);P.setState("value",U||void 0)}function j(){var E,U,V,L;if(!n.current.search||l.current.shouldFilter===!1){n.current.filtered.count=o.current.size;return}n.current.filtered.groups=new Set;let Q=0;for(let Z of o.current){let O=(U=(E=r.current.get(Z))==null?void 0:E.value)!=null?U:"",K=(L=(V=r.current.get(Z))==null?void 0:V.keywords)!=null?L:[],_e=A(O,K);n.current.filtered.items.set(Z,_e),_e>0&&Q++}for(let[Z,O]of a.current)for(let K of O)if(n.current.filtered.items.get(K)>0){n.current.filtered.groups.add(Z);break}n.current.filtered.count=Q}function $(){var E,U,V;let L=B();L&&(((E=L.parentElement)==null?void 0:E.firstChild)===L&&((V=(U=L.closest(Kn))==null?void 0:U.querySelector(cw))==null||V.scrollIntoView({block:"nearest"})),L.scrollIntoView({block:"nearest"}))}function B(){var E;
218return(E=S.current)==null?void 0:E.querySelector(`${wu}[aria-selected="true"]`)}function Y(){var E;return Array.from(((E=S.current)==null?void 0:E.querySelectorAll(Lc))||[])}function z(E){let U=Y()[E];U&&P.setState("value",U.getAttribute(yn))}function W(E){var U;let V=B(),L=Y(),Q=L.findIndex(O=>O===V),Z=L[Q+E];(U=l.current)!=null&&U.loop&&(Z=Q+E<0?L[L.length-1]:Q+E===L.length?L[0]:L[Q+E]),Z&&P.setState("value",Z.getAttribute(yn))}function q(E){let U=B(),V=U?.closest(Kn),L;for(;V&&!L;)V=E>0?vw(V,Kn):yw(V,Kn),L=V?.querySelector(Lc);L?P.setState("value",L.getAttribute(yn)):W(E)}let H=()=>z(Y().length-1),N=E=>{E.preventDefault(),E.metaKey?H():E.altKey?q(1):W(1)},he=E=>{E.preventDefault(),E.metaKey?z(0):E.altKey?q(-1):W(-1)};return c.createElement(M.div,{ref:e,tabIndex:-1,...x,"cmdk-root":"",onKeyDown:E=>{var U;(U=x.onKeyDown)==null||U.call(x,E);let V=E.nativeEvent.isComposing||E.keyCode===229;if(!(E.defaultPrevented||V))switch(E.key){case"n":case"j":{v&&E.ctrlKey&&N(E);break}case"ArrowDown":{N(E);break}case"p":case"k":{v&&E.ctrlKey&&he(E);break}case"ArrowUp":{he(E);break}case"Home":{E.preventDefault(),z(0);break}case"End":{E.preventDefault(),H();break}case"Enter":{E.preventDefault();let L=B();if(L){let Q=new Event(Yr);L.dispatchEvent(Q)}}}}},c.createElement("label",{"cmdk-label":"",htmlFor:T.inputId,id:T.labelId,style:xw},d),Ea(t,E=>c.createElement(Cu.Provider,{value:P},c.createElement(xu.Provider,{value:T},E))))}),dw=c.forwardRef((t,e)=>{var n,o;let a=ce(),r=c.useRef(null),i=c.useContext(Su),l=xo(),d=Pu(t),u=(o=(n=d.current)==null?void 0:n.forceMount)!=null?o:i?.forceMount;Zt(()=>{if(!u)return l.item(a,i?.id)},[u]);let m=Eu(a,r,[t.value,t.children,r],t.keywords),p=Bs(),f=jt(C=>C.value&&C.value===m.current),g=jt(C=>u||l.filter()===!1?!0:C.search?C.filtered.items.get(a)>0:!0);c.useEffect(()=>{let C=r.current;if(!(!C||t.disabled))return C.addEventListener(Yr,h),()=>C.removeEventListener(Yr,h)},[g,t.onSelect,t.disabled]);function h(){var C,P;_(),(P=(C=d.current).onSelect)==null||P.call(C,m.current)}function _(){p.setState("value",m.current,!0)}if(!g)return null;let{disabled:v,value:x,onSelect:w,forceMount:y,keywords:b,...S}=t;return c.createElement(M.div,{ref:Qt(r,e),...S,id:a,"cmdk-item":"",role:"option","aria-disabled":!!v,"aria-selected":!!f,"data-disabled":!!v,"data-selected":!!f,onPointerMove:v||l.getDisablePointerSelection()?void 0:_,onClick:v?void 0:h},t.children)}),uw=c.forwardRef((t,e)=>{let{heading:n,children:o,forceMount:a,...r}=t,i=ce(),l=c.useRef(null),d=c.useRef(null),u=ce(),m=xo(),p=jt(g=>a||m.filter()===!1?!0:g.search?g.filtered.groups.has(i):!0);Zt(()=>m.group(i),[]),Eu(i,l,[t.value,t.heading,d]);let f=c.useMemo(()=>({id:i,forceMount:a}),[a]);return c.createElement(M.div,{ref:Qt(l,e),...r,"cmdk-group":"",role:"presentation",hidden:p?void 0:!0},n&&c.createElement("div",{ref:d,"cmdk-group-heading":"","aria-hidden":!0,id:u},n),Ea(t,g=>c.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":n?u:void 0},c.createElement(Su.Provider,{value:f},g))))}),pw=c.forwardRef((t,e)=>{let{alwaysRender:n,...o}=t,a=c.useRef(null),r=jt(i=>!i.search);return!n&&!r?null:c.createElement(M.div,{ref:Qt(a,e),...o,"cmdk-separator":"",role:"separator"})}),mw=c.forwardRef((t,e)=>{let{onValueChange:n,...o}=t,a=t.value!=null,r=Bs(),i=jt(u=>u.search),l=jt(u=>u.selectedItemId),d=xo();return c.useEffect(()=>{t.value!=null&&r.setState("search",t.value)},[t.value]),c.createElement(M.input,{ref:e,...o,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":d.listId,"aria-labelledby":d.labelId,"aria-activedescendant":l,id:d.inputId,type:"text",value:a?t.value:i,onChange:u=>{a||r.setState("search",u.target.value),n?.(u.target.value)}})}),fw=c.forwardRef((t,e)=>{let{children:n,label:o="Suggestions",...a}=t,r=c.useRef(null),i=c.useRef(null),l=jt(u=>u.selectedItemId),d=xo();return c.useEffect(()=>{if(i.current&&r.current){let u=i.current,m=r.current,p,f=new ResizeObserver(()=>{p=requestAnimationFrame(()=>{let g=u.offsetHeight;m.style.setProperty("--cmdk-list-height",g.toFixed(1)+"px")})});return f.observe(u),()=>{cancelAnimationFrame(p),f.unobserve(u)}}},[]),c.createElement(M.div,{ref:Qt(r,e),...a,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":l,"aria-label":o,id:d.listId},Ea(t,u=>c.createElement("div",{ref:Qt(i,d.listInnerRef),"cmdk-list-sizer":""},u)))}),gw=c.forwardRef((t,e)=>{let{open:n,onOpenChange:o,overlayClassName:a,contentClassName:r,container:i,...l}=t;return c.createElement(bo,{open:n,onOpenChange:o},c.createElement(wo,{container:i},c.createElement(on,{"cmdk-overlay":"",className:a}),c.createElement(an,{"aria-label":t.label,"cmdk-dialog":"",className:r},c.createElement(ku,{ref:e,...l}))))}),hw=c.forwardRef((t,e)=>jt(n=>n.filtered.count===0)?c.createElement(M.div,{ref:e,...t,"cmdk-empty":"",role:"presentation"}):null),_w=c.forwardRef((t,e)=>
218{let{progress:n,children:o,label:a="Loading...",...r}=t;return c.createElement(M.div,{ref:e,...r,"cmdk-loading":"",role:"progressbar","aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100,"aria-label":a},Ea(t,i=>c.createElement("div",{"aria-hidden":!0},i)))}),Le=Object.assign(ku,{List:fw,Item:dw,Input:mw,Group:uw,Separator:pw,Dialog:gw,Empty:hw,Loading:_w});function vw(t,e){let n=t.nextElementSibling;for(;n;){if(n.matches(e))return n;n=n.nextElementSibling}}function yw(t,e){let n=t.previousElementSibling;for(;n;){if(n.matches(e))return n;n=n.previousElementSibling}}function Pu(t){let e=c.useRef(t);return Zt(()=>{e.current=t}),e}var Zt=typeof window>"u"?c.useEffect:c.useLayoutEffect;function bn(t){let e=c.useRef();return e.current===void 0&&(e.current=t()),e}function jt(t){let e=Bs(),n=()=>t(e.snapshot());return c.useSyncExternalStore(e.subscribe,n,n)}function Eu(t,e,n,o=[]){let a=c.useRef(),r=xo();return Zt(()=>{var i;let l=(()=>{var u;for(let m of n){if(typeof m=="string")return m.trim();if(typeof m=="object"&&"current"in m)return m.current?(u=m.current.textContent)==null?void 0:u.trim():a.current}})(),d=o.map(u=>u.trim());r.value(t,l,d),(i=e.current)==null||i.setAttribute(yn,l),a.current=l}),a}var bw=()=>{let[t,e]=c.useState(),n=bn(()=>new Map);return Zt(()=>{n.current.forEach(o=>o()),n.current=new Map},[t]),(o,a)=>{n.current.set(o,a),e({})}};function ww(t){let e=t.type;return typeof e=="function"?e(t.props):"render"in e?e.render(t.props):t}function Ea({asChild:t,children:e},n){return t&&c.isValidElement(e)?c.cloneElement(ww(e),{ref:e.ref},n(e.props.children)):n(e)}var xw={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};const Iu=bo,Cw=Fs,Tu=wo,Sw=Ot,Gs=c.forwardRef(({className:t,...e},n)=>s.jsx(on,{ref:n,className:k("fixed inset-0 z-50 bg-background/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),...e}));Gs.displayName=on.displayName;const qs=c.forwardRef(({className:t,children:e,...n},o)=>s.jsxs(Tu,{children:[s.jsx(Gs,{}),s.jsxs(an,{ref:o,className:k("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded",t),...n,children:[e,s.jsxs(Ot,{className:"absolute right-4 top-4 roun
218ded opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[s.jsx(Qn,{className:"h-4 w-4"}),s.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));qs.displayName=an.displayName;const Au=({className:t,...e})=>s.jsx("div",{className:k("flex flex-col space-y-1.5 text-center sm:text-left",t),...e});Au.displayName="DialogHeader";const Ru=({className:t,...e})=>s.jsx("div",{className:k("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...e});Ru.displayName="DialogFooter";const Mu=c.forwardRef(({className:t,...e},n)=>s.jsx(jn,{ref:n,className:k("text-lg font-semibold leading-none tracking-tight",t),...e}));Mu.displayName=jn.displayName;const Nu=c.forwardRef(({className:t,...e},n)=>s.jsx(Dn,{ref:n,className:k("text-sm text-muted-foreground",t),...e}));Nu.displayName=Dn.displayName;const Ws=c.forwardRef(({className:t,...e},n)=>s.jsx(Le,{ref:n,className:k("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",t),...e}));Ws.displayName=Le.displayName;const kw=({children:t,...e})=>s.jsx(Iu,{...e,children:s.jsx(qs,{className:"overflow-hidden p-0 shadow-lg",children:s.jsx(Ws,{className:"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5",children:t})})}),Ou=c.forwardRef(({className:t,...e},n)=>s.jsxs("div",{className:"flex items-center border-b border-zinc-400/40 px-3","cmdk-input-wrapper":"",children:[s.jsx(jh,{className:"mr-2 h-4 w-4 shrink-0 opacity-50"}),s.jsx(Le.Input,{ref:n,className:k("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",t),...e})]}));Ou.displayName=Le.Input.displayName;const ju=c.forwardRef(({className:t,...e},n)=>s.jsx(Le.List,{ref:n,className:k("max-h-[300px] overflow-y-auto overflow-x-hidden",t),...e}));ju.displayName=Le.List.displayName;const Du=c.forwardRef((t,e)=>s.jsx(Le.Empty,{ref:e,className:"py-3 text-center text-sm",...t}));Du.displayName=Le.Empty.displayName;const Lu=c.forwardRef(({className:t,...e},n)=>s.jsx(Le.Group,{ref:n,className:k("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",t),...e}));Lu.displayName=Le.Group.displayName;const Fu=c.forwardRef(({className:t,...e},n)=>s.jsx(Le.Separator,{ref:n,className:k("-mx-1 h-px bg-border",t),...e}));Fu.displayName=Le.Separator.displayName;const Uu=c.forwardRef(({className:t,...e},n)=>s.jsx(Le.Item,{ref:n,className:k("relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",t),...e}));Uu.displayName=Le.Item.displayName;const Vu=({className:t,...e})=>s.jsx("span",{className:k("ml-auto text-xs tracking-widest text-muted-foreground",t),...e});Vu.displayName="CommandShortcut";const Pw=["top","right","bottom","left"],Dt=Math.min,ht=Math.max,oa=Math.round,Lo=Math.floor,_t=t=>({x:t,y:t}),Ew={left:"right",right:"left",bottom:"top",top:"bottom"};function $u(t,e,n){return ht(t,Dt(e,n))}function Ct(t,e){return typeof t=="function"?t(e):t}function Lt(t){return t.split("-")[0]}function Ln(t){return t.split("-")[1]}function zs(t){return t==="x"?"y":"x"}function Hs(t){return t==="y"?"height":"width"}function it(t){const e=t[0];return e==="t"||e==="b"?"y":"x"}function Ks(t){return zs(it(t))}function Iw(t,e,n){n===void 0&&(n=!1);const o=Ln(t),a=Ks(t),r=Hs(a);let i=a==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return e.reference[r]>e.floating[r]&&(i=aa(i)),[i,aa(i)]}
218function Tw(t){const e=aa(t);return[Xr(t),e,Xr(e)]}function Xr(t){return t.includes("start")?t.replace("start","end"):t.replace("end","start")}const Fc=["left","right"],Uc=["right","left"],Aw=["top","bottom"],Rw=["bottom","top"];function Mw(t,e,n){switch(t){case"top":case"bottom":return n?e?Uc:Fc:e?Fc:Uc;case"left":case"right":return e?Aw:Rw;default:return[]}}function Nw(t,e,n,o){const a=Ln(t);let r=Mw(Lt(t),n==="start",o);return a&&(r=r.map(i=>i+"-"+a),e&&(r=r.concat(r.map(Xr)))),r}function aa(t){const e=Lt(t);return Ew[e]+t.slice(e.length)}function Ow(t){var e,n,o,a;return{top:(e=t.top)!=null?e:0,right:(n=t.right)!=null?n:0,bottom:(o=t.bottom)!=null?o:0,left:(a=t.left)!=null?a:0}}function Bu(t){return typeof t!="number"?Ow(t):{top:t,right:t,bottom:t,left:t}}function ra(t){const{x:e,y:n,width:o,height:a}=t;return{width:o,height:a,top:n,left:e,right:e+o,bottom:n+a,x:e,y:n}}function Vc(t,e,n){let{reference:o,floating:a}=t;const r=it(e),i=Ks(e),l=Hs(i),d=Lt(e),u=r==="y",m=o.x+o.width/2-a.width/2,p=o.y+o.height/2-a.height/2,f=o[l]/2-a[l]/2;let g;switch(d){case"top":g={x:m,y:o.y-a.height};break;case"bottom":g={x:m,y:o.y+o.height};break;case"right":g={x:o.x+o.width,y:p};break;case"left":g={x:o.x-a.width,y:p};break;default:g={x:o.x,y:o.y}}const h=Ln(e);return h&&(g[i]+=f*(h==="end"?1:-1)*(n&&u?-1:1)),g}async function jw(t,e){var n;e===void 0&&(e={});const{x:o,y:a,platform:r,rects:i,elements:l,strategy:d}=t,{boundary:u="clippingAncestors",rootBoundary:m="viewport",elementContext:p="floating",altBoundary:f=!1,padding:g=0}=Ct(e,t),h=Bu(g),v=l[f?p==="floating"?"reference":"floating":p],x=ra(await r.getClippingRect({element:(n=await(r.isElement==null?void 0:r.isElement(v)))==null||n?v:v.contextElement||await(r.getDocumentElement==null?void 0:r.getDocumentElement(l.floating)),boundary:u,rootBoundary:m,strategy:d})),w=p==="floating"?{x:o,y:a,width:i.floating.width,height:i.floating.height}:i.reference,y=await(r.getOffsetParent==null?void 0:r.getOffsetParent(l.floating)),b=await(r.isElement==null?void 0:r.isElement(y))&&await(r.getScale==null?void 0:r.getScale(y))||{x:1,y:1},S=ra(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({elements:l,rect:w,offsetParent:y,strategy:d}):w);return{top:(x.top-S.top+h.top)/b.y,bottom:(S.bottom-x.bottom+h.bottom)/b.y,left:(x.left-S.left+h.left)/b.x,right:(S.right-x.right+h.right)/b.x}}const Dw=50,Lw=async(t,e,n)=>{const{placement:o="bottom",strategy:a="absolute",middleware:r=[],platform:i}=n,l=i.detectOverflow?i:{...i,detectOverflow:jw},d=await(i.isRTL==null?void 0:i.isRTL(e));let u=await i.getElementRects({reference:t,floating:e,strategy:a}),{x:m,y:p}=Vc(u,o,d),f=o,g=0;const h={};for(let _=0;_<r.length;_++){const v=r[_];if(!v)continue;const{name:x,fn:w}=v,{x:y,y:b,data:S,reset:C}=await w({x:m,y:p,initialPlacement:o,placement:f,strategy:a,middlewareData:h,rects:u,platform:l,elements:{reference:t,floating:e}});m=y??m,p=b??p,h[x]={...h[x],...S},C&&g<Dw&&(g++,typeof C=="object"&&(C.placement&&(f=C.placement),C.rects&&(u=C.rects===!0?await i.getElementRects({reference:t,floating:e,strategy:a}):C.rects),{x:m,y:p}=Vc(u,f,d)),_=-1)}return{x:m,y:p,placement:f,strategy:a,middlewareData:h}},Fw=t=>({name:"arrow",options:t,async fn(e){const{x:n,y:o,placement:a,rects:r,platform:i,elements:l,middlewareData:d}=e,{element:u,padding:m=0}=Ct(t,e)||{};if(u==null)return{};const p=Bu(m),f={x:n,y:o},g=Ks(a),h=Hs(g),_=await i.getDimensions(u),v=g==="y",x=v?"top":"left",w=v?"bottom":"right",y=v?"clientHeight":"clientWidth",b=r.reference[h]+r.reference[g]-f[g]-r.floating[h],S=f[g]-r.reference[g],C=await(i.getOffsetParent==null?void 0:i.getOffsetParent(u));let P=C?C[y]:0;(!P||!await(i.isElement==null?void 0:i.isElement(C)))&&(P=l.floating[y]||r.floating[h]);const T=b/2-S/2,A=P/2-_[h]/2-1,R=Dt(p[x],A),F=Dt(p[w],A),j=P-_[h]-F,$=P/2-_[h]/2+T,B=$u(R,$,j),Y=!d.arrow&&Ln(a)!=null&&$!==B&&r.reference[h]/2-($<R?R:F)-_[h]/2<0,z=Y?$<R?$-R:$-j:0;return{[g]:f[g]+z,data:{[g]:B,centerOffset:$-B-z,...Y&&{alignmentOffset:z}},reset:Y}}}),Uw=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(e){var n,o;const{placement:a,middlewareData:r,rects:i,initialPlacement:l,platform:d,elements:u}=e,{mainAxis:m=!0,crossAxis:p=!0,fallbackPlacements:f,fallbackStrategy:g="bestFit",fallbackAxisSideDirection:h="none",flipAlignment:_=!0,...v}=Ct(t,e);if((n=r.arrow)!=null&&n.alignmentOffset)return{};const x=Lt(a),w=it(l),y=Lt(l)===l,b=await(d.isRTL==null?void 0:d.isRTL(u.floating)),S=f||(y||!_?[aa(l)]:Tw(l)),C=h!=="none";!f&&C&&S.push(...Nw(l,_,h,b));const P=[l,...S],T=await d.detectOverflow(e,v),A=[];let R=((o=r.flip)==null?void 0:o.overflows)||[];if(m&&A.push(T[x]),p){const B=Iw(a,i,b);A.push(T[B[0]],T[B[1]])}if(R=[...R,{placement:a,overflows:A}],!A.every(B=>B<=0)){var F,j;const B=(((F=r.flip)==null?void 0:F.index)||0)+1,Y=P[B];if(Y&&(!(p==="alignment"?w!==it(Y):!1)||R.every(q=>it(q.placement)===w?q.overflows[0]>0:!0)))return{data:{index:B,overflows:R},reset:{placement:Y}};let z=(j=R.filter(W=>W.overflows[0]<=0).sort((W,q)=>W.overflows[1]-q.overflows[1])[0])==null?void 0:j.placement;if(!z)switch(g){case"bestFit":{var $;const W=($=R.filter(q=>{if(C){const H=it(q.placement);return H===w||H==="y"}return!0}).map(q=>[q.placement,q.overflows.filter(H=>H>0).reduce((H,N)=>H+N,0)]).sort((q,H)=>q[1]-H[1])[0])==null?void 0:$[0];W&&(z=W);break}case"initialPlacement":z=l;break}if(a!==z)return{reset:{placement:z}}}return{}}}};function $c(t,e){return{top:t.top-e.height,right:t.right-e.width,bottom:t.bottom-e.height,left:t.left-e.width}}function Bc(t){return Pw.some(e=>t[e]>=0)}const Vw=function(t){return t===void 0&&(t={}),{name:"hide",options:t,async fn(e){const{rects:n,platform:o}=e,{strategy:a="referenceHidden",...r}=Ct(t,e);switch(a){case"referenceHidden":{const i=await o.detectOverflow(e,{...r,elementContext:"reference"}),l=$c(i,n.reference);return{data:{referenceHiddenOffsets:l,referenceHidden:Bc(l)}}}case"escaped":{const i=await o.detectOverflow(e,{...r,altBoundary:!0}),l=$c(i,n.floating);return{data:{escapedOffsets:l,escaped:Bc(l)}}}default:return{}}}}}
218,Gu=new Set(["left","top"]);async function $w(t,e){const{placement:n,platform:o,elements:a}=t,r=await(o.isRTL==null?void 0:o.isRTL(a.floating)),i=Lt(n),l=Ln(n),d=it(n)==="y",u=Gu.has(i)?-1:1,m=r&&d?-1:1,p=Ct(e,t);let{mainAxis:f,crossAxis:g,alignmentAxis:h}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return l&&typeof h=="number"&&(g=l==="end"?h*-1:h),d?{x:g*m,y:f*u}:{x:f*u,y:g*m}}const Bw=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(e){var n,o;const{x:a,y:r,placement:i,middlewareData:l}=e,d=await $w(e,t);return i===((n=l.offset)==null?void 0:n.placement)&&(o=l.arrow)!=null&&o.alignmentOffset?{}:{x:a+d.x,y:r+d.y,data:{...d,placement:i}}}}},Gw=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(e){const{x:n,y:o,placement:a,platform:r}=e,{mainAxis:i=!0,crossAxis:l=!1,limiter:d={fn:w=>{let{x:y,y:b}=w;return{x:y,y:b}}},...u}=Ct(t,e),m={x:n,y:o},p=await r.detectOverflow(e,u),f=it(a),g=zs(f);let h=m[g],_=m[f];const v=(w,y)=>$u(y+p[w==="y"?"top":"left"],y,y-p[w==="y"?"bottom":"right"]);i&&(h=v(g,h)),l&&(_=v(f,_));const x=d.fn({...e,[g]:h,[f]:_});return{...x,data:{x:x.x-n,y:x.y-o,enabled:{[g]:i,[f]:l}}}}}},qw=function(t){return t===void 0&&(t={}),{options:t,fn(e){var n,o;const{x:a,y:r,placement:i,rects:l,middlewareData:d}=e,{offset:u=0,mainAxis:m=!0,crossAxis:p=!0}=Ct(t,e),f={x:a,y:r},g=it(i),h=zs(g);let _=f[h],v=f[g];const x=Ct(u,e),w=typeof x=="number"?{mainAxis:x,crossAxis:0}:{mainAxis:(n=x.mainAxis)!=null?n:0,crossAxis:(o=x.crossAxis)!=null?o:0};if(m){const S=h==="y"?"height":"width",C=l.reference[h]-l.floating[S]+w.mainAxis,P=l.reference[h]+l.reference[S]-w.mainAxis;_<C?_=C:_>P&&(_=P)}if(p){var y,b;const S=h==="y"?"width":"height",C=Gu.has(Lt(i)),P=l.reference[g]-l.floating[S]+(C&&((y=d.offset)==null?void 0:y[g])||0)+(C?0:w.crossAxis),T=l.reference[g]+l.reference[S]+(C?0:((b=d.offset)==null?void 0:b[g])||0)-(C?w.crossAxis:0);v<P?v=P:v>T&&(v=T)}return{[h]:_,[g]:v}}}},Ww=function(t){return t===void 0&&(t={}),{name:"size",options:t,async fn(e){const{placement:n,rects:o,platform:a,elements:r}=e,{apply:i=()=>{},...l}=Ct(t,e),d=await a.detectOverflow(e,l),u=Lt(n),m=Ln(n),p=it(n)==="y",{width:f,height:g}=o.floating;let h,_;u==="top"||u==="bottom"?(h=u,_=m===(await(a.isRTL==null?void 0:a.isRTL(r.floating))?"start":"end")?"left":"right"):(_=u,h=m==="end"?"top":"bottom");const v=g-d.top-d.bottom,x=f-d.left-d.right,w=Dt(g-d[h],v),y=Dt(f-d[_],x),b=e.middlewareData.shift,S=!b;let C=w,P=y;b!=null&&b.enabled.x&&(P=x),b!=null&&b.enabled.y&&(C=v),S&&!m&&(p?P=f-2*ht(d.left,d.right):C=g-2*ht(d.top,d.bottom)),await i({...e,availableWidth:P,availableHeight:C});const T=await a.getDimensions(r.floating);
218return f!==T.width||g!==T.height?{reset:{rects:!0}}:{}}}};function Ia(){return typeof window<"u"}function Fn(t){return qu(t)?(t.nodeName||"").toLowerCase():"#document"}function De(t){var e;return(t==null||(e=t.ownerDocument)==null?void 0:e.defaultView)||window}function It(t){var e;return(e=(qu(t)?t.ownerDocument:t.document)||window.document)==null?void 0:e.documentElement}function qu(t){return Ia()?t instanceof Node||t instanceof De(t).Node:!1}function ct(t){return Ia()?t instanceof Element||t instanceof De(t).Element:!1}function qt(t){return Ia()?t instanceof HTMLElement||t instanceof De(t).HTMLElement:!1}function Gc(t){return!Ia()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof De(t).ShadowRoot}function Ta(t){const{overflow:e,overflowX:n,overflowY:o,display:a}=lt(t);return/auto|scroll|overlay|hidden|clip/.test(e+o+n)&&a!=="inline"&&a!=="contents"}function zw(t){return/^(table|td|th)$/.test(Fn(t))}function Aa(t){try{if(t.matches(":popover-open"))return!0}catch{}try{return t.matches(":modal")}catch{return!1}}const Hw=/transform|translate|scale|rotate|perspective|filter/,Kw=/paint|layout|strict|content/,Kt=t=>!!t&&t!=="none";let gr;function Ys(t){const e=ct(t)?lt(t):t;return Kt(e.transform)||Kt(e.translate)||Kt(e.scale)||Kt(e.rotate)||Kt(e.perspective)||!Xs()&&(Kt(e.backdropFilter)||Kt(e.filter))||Hw.test(e.willChange||"")||Kw.test(e.contain||"")}function Yw(t){let e=Jt(t);for(;qt(e)&&!eo(e);){if(Ys(e))return e;if(Aa(e))return null;e=Jt(e)}return null}function Xs(){return gr==null&&(gr=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),gr}function eo(t){return/^(html|body|#document)$/.test(Fn(t))}function lt(t){return De(t).getComputedStyle(t)}function Ra(t){return ct(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function Jt(t){if(Fn(t)==="html")return t;const e=t.assignedSlot||t.parentNode||Gc(t)&&t.host||It(t);return Gc(e)?e.host:e}function Wu(t){const e=Jt(t);return eo(e)?(t.ownerDocument||t).body:qt(e)&&Ta(e)?e:Wu(e)}function to(t,e,n){var o;e===void 0&&(e=[]),n===void 0&&(n=!0);const a=Wu(t),r=a===((o=t.ownerDocument)==null?void 0:o.body),i=De(a);if(r){const l=Qr(i);return e.concat(i,i.visualViewport||[],Ta(a)?a:[],l&&n?to(l):[])}else return e.concat(a,to(a,[],n))}function Qr(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function zu(t){const e=lt(t);let n=parseFloat(e.width)||0,o=parseFloat(e.height)||0;const a=qt(t),r=a?t.offsetWidth:n,i=a?t.offsetHeight:o,l=oa(n)!==r||oa(o)!==i;return l&&(n=r,o=i),{width:n,height:o,$:l}}function Qs(t){return ct(t)?t:t.contextElement}function Pn(t){const e=Qs(t);if(!qt(e))return _t(1);const n=e.getBoundingClientRect(),{width:o,height:a,$:r}=zu(e);let i=(r?oa(n.width):n.width)/o,l=(r?oa(n.height):n.height)/a;return(!i||!Number.isFinite(i))&&(i=1),(!l||!Number.isFinite(l))&&(l=1),{x:i,y:l}}const Xw=_t(0);function Hu(t){const e=De(t);
218return!Xs()||!e.visualViewport?Xw:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function Qw(t,e,n){return e===void 0&&(e=!1),!!n&&e&&n===De(t)}function en(t,e,n,o){e===void 0&&(e=!1),n===void 0&&(n=!1);const a=t.getBoundingClientRect(),r=Qs(t);let i=_t(1);e&&(o?ct(o)&&(i=Pn(o)):i=Pn(t));const l=Qw(r,n,o)?Hu(r):_t(0);let d=(a.left+l.x)/i.x,u=(a.top+l.y)/i.y,m=a.width/i.x,p=a.height/i.y;if(r&&o){const f=De(r),g=ct(o)?De(o):o;let h=f,_=Qr(h);for(;_&&g!==h;){const v=Pn(_),x=_.getBoundingClientRect(),w=lt(_),y=x.left+(_.clientLeft+parseFloat(w.paddingLeft))*v.x,b=x.top+(_.clientTop+parseFloat(w.paddingTop))*v.y;d*=v.x,u*=v.y,m*=v.x,p*=v.y,d+=y,u+=b,h=De(_),_=Qr(h)}}return ra({width:m,height:p,x:d,y:u})}function Ma(t,e){const n=Ra(t).scrollLeft;return e?e.left+n:en(It(t)).left+n}function Ku(t,e){const n=t.getBoundingClientRect(),o=n.left+e.scrollLeft-Ma(t,n),a=n.top+e.scrollTop;return{x:o,y:a}}function Zw(t){let{elements:e,rect:n,offsetParent:o,strategy:a}=t;const r=a==="fixed",i=It(o),l=e?Aa(e.floating):!1;if(o===i||l&&r)return n;let d={scrollLeft:0,scrollTop:0},u=_t(1);const m=_t(0),p=qt(o);if((p||!r)&&((Fn(o)!=="body"||Ta(i))&&(d=Ra(o)),p)){const g=en(o);u=Pn(o),m.x=g.x+o.clientLeft,m.y=g.y+o.clientTop}const f=i&&!p&&!r?Ku(i,d):_t(0);return{width:n.width*u.x,height:n.height*u.y,x:n.x*u.x-d.scrollLeft*u.x+m.x+f.x,y:n.y*u.y-d.scrollTop*u.y+m.y+f.y}}function Jw(t){return t.getClientRects?Array.from(t.getClientRects()):[]}function ex(t){const e=Ra(t),n=t.ownerDocument.body,o=ht(t.scrollWidth,t.clientWidth,n.scrollWidth,n.clientWidth),a=ht(t.scrollHeight,t.clientHeight,n.scrollHeight,n.clientHeight);let r=-e.scrollLeft+Ma(t);const i=-e.scrollTop;return lt(n).direction==="rtl"&&(r+=ht(t.clientWidth,n.clientWidth)-o),{width:o,height:a,x:r,y:i}}const tx=25;function nx(t,e,n){n===void 0&&(n="viewport");const o=n==="layoutViewport",a=De(t),r=It(t),i=a.visualViewport;let l=r.clientWidth,d=r.clientHeight,u=0,m=0;if(i){const f=!Xs()||e==="fixed";o?f||(u=-i.offsetLeft,m=-i.offsetTop):(l=i.width,d=i.height,f&&(u=i.offsetLeft,m=i.offsetTop))}if(Ma(r)<=0){const f=r.ownerDocument,g=f.body,h=getComputedStyle(g),_=f.compatMode==="CSS1Compat"&&parseFloat(h.marginLeft)+parseFloat(h.marginRight)||0,v=Math.abs(r.clientWidth-g.clientWidth-_),x=getComputedStyle(r).scrollbarGutter==="stable both-edges"?v/2:v;x<=tx&&(l-=x)}return{width:l,height:d,x:u,y:m}}function ox(t,e){const n=en(t,!0,e==="fixed"),o=n.top+t.clientTop,a=n.left+t.clientLeft,r=Pn(t),i=t.clientWidth*r.x,l=t.clientHeight*r.y,d=a*r.x,u=o*r.y;return{width:i,height:l,x:d,y:u}}function qc(t,e,n){let o;if(e==="viewport"||e==="layoutViewport")o=nx(t,n,e);else if(e==="document")o=ex(It(t));else if(ct(e))o=ox(e,n);else{const a=Hu(t);o={x:e.x-a.x,y:e.y-a.y,width:e.width,height:e.height}}return ra(o)}function ax(t,e){const n=e.get(t);if(n)return n;let o=to(t,[],!1).filter(l=>ct(l)&&Fn(l)!=="body"),a=null;const r=lt(t).position==="fixed";let i=r?Jt(t):t;for(;ct(i)&&!eo(i);){const l=lt(i),d=Ys(i),u=a?a.position:r?"fixed":"";!d&&(u==="fixed"||u==="absolute"&&l.position==="static")?o=o.filter(p=>p!==i):a=l,i=Jt(i)}return e.set(t,o),o}function rx(t){let{element:e,boundary:n,rootBoundary:o,strategy:a}=t;const i=[...n==="clippingAncestors"?Aa(e)?[]:ax(e,this._c):[].concat(n),o],l=qc(e,i[0],a);let d=l.top,u=l.right,m=l.bottom,p=l.left;for(let f=1;f<i.length;f++){const g=qc(e,i[f],a);d=ht(g.top,d),u=Dt(g.right,u),m=Dt(g.bottom,m),p=ht(g.left,p)}return{width:u-p,height:m-d,x:p,y:d}}function sx(t){const{width:e,height:n}=zu(t);return{width:e,height:n}}function ix(t,e,n){const o=qt(e),a=It(e),r=n==="fixed",i=en(t,!0,r,e);let l={scrollLeft:0,scrollTop:0};const d=_t(0);if((o||!r)&&((Fn(e)!=="body"||Ta(a))&&(l=Ra(e)),o)){const f=en(e,!0,r,e);d.x=f.x+e.clientLeft,d.y=f.y+e.clientTop}!o&&a&&(d.x=Ma(a));const u=a&&!o&&!r?Ku(a,l):_t(0),m=i.left+l.scrollLeft-d.x-u.x,p=i.top+l.scrollTop-d.y-u.y;return{x:m,y:p,width:i.width,height:i.height}}function hr(t){return lt(t).position==="static"}function Wc(t,e){if(!qt(t)||lt(t).position==="fixed")return null;if(e)return e(t);let n=t.offsetParent;return It(t)===n&&(n=n.ownerDocument.body),n}function Yu(t,e){const n=De(t);if(Aa(t))return n;if(!qt(t)){let a=Jt(t);for(;a&&!eo(a);){if(ct(a)&&!hr(a))return a;a=Jt(a)}return n}let o=Wc(t,e);for(;o&&zw(o)&&hr(o);)o=Wc(o,e);return o&&eo(o)&&hr(o)&&!Ys(o)?n:o||Yw(t)||n}const cx=async function(t){const e=this.getOffsetParent||Yu,n=this.getDimensions,o=await n(t.floating);return{reference:ix(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function lx(t){return lt(t).direction==="rtl"}const dx={convertOffsetParentRelativeRectToViewportRelativeRect:Zw,getDocumentElement:It,getClippingRect:rx,getOffsetParent:Yu,getElementRects:cx,getClientRects:Jw,getDimensions:sx,getScale:Pn,isElement:ct,isRTL:lx};function Xu(t,e){return t.x===e.x&&t.y===e.y&&t.width===e.width&&t.height===e.height}function ux(t,e,n){let o=null,a;const r=It(t);function i(){var m;clearTimeout(a),(m=o)==null||m.disconnect(),o=null}function l(m,p){m===void 0&&(m=!1),p===void 0&&(p=1),i();const f=t.getBoundingClientRect(),{left:g,top:h,width:_,height:v}=f;if(m||e(),!_||!v)return;const x=Lo(h),w=Lo(r.clientWidth-(g+_)),y=Lo(r.clientHeight-(h+v)),b=Lo(g),C={rootMargin:-x+"px "+-w+"px "+-y+"px "+-b+"px",threshold:ht(0,Dt(1,p))||1};let P=!0;function T(A){const R=A[0].intersectionRatio;if(!Xu(f,t.getBoundingClientRect()))return l();if(R!==p){if(!P)return l();R?l(!1,R):a=setTimeout(()=>{l(!1,1e-7)},1e3)}P=!1}try{o=new IntersectionObserver(T,{...C,root:r.ownerDocument})}catch{o=new IntersectionObserver(T,C)}o.observe(t)}const d=De(t),u=()=>l(n);return d.addEventListener("resize",u),l(!0),()=>{d.removeEventListener("resize",u),i()}}function px(t,e,n,o){o===void 0&&(o={});const{ancestorScroll:a=!0,ancestorResize:r=!0,elementResize:i=typeof ResizeObserver=="function",layoutShift:l=typeof IntersectionObserver=="function",animationFrame:d=!1}=o,u=Qs(t),m=a||r?[...u?to(u):[],...e?to(e):[]]:[];m.forEach(x=>{a&&x.addEventListener("scroll",n),r&&x.addEventListener("resize",n)});const p=u&&l?ux(u,n,r):null;let f=-1,g=null;i&&(g=new ResizeObserver(x=>{let[w]=x;w&&w.target===u&&g&&e&&(g.unobserve(e),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var y;(y=g)==null||y.observe(e)})),n()}),u&&!d&&g.observe(u),e&&g.observe(e));let h,_=d?en(t):null;d&&v();function v(){const x=en(t);_&&!Xu(_,x)&&n(),_=x,h=requestAnimationFrame(v)}return n(),()=>{var x;m.forEach(w=>{a&&w.removeEventListener("scroll",n),r&&w.removeEventListener("resize",n)}),p?.(),(x=g)==null||x.disconnect(),g=null,d&&cancelAnimationFrame(h)}}const mx=Bw,fx=Gw,gx=Uw,hx=Ww,_x=Vw,zc=Fw,vx=qw,yx=(t,e,n)=>{const o=new Map,a=n??{},r={...dx,...a.platform,_c:o};return Lw(t,e,{...a,platform:r})};var bx=typeof document<"u",wx=function(){},Jo=bx?c.useLayoutEffect:wx;function sa(t,e){if(t===e)return!0;
218if(typeof t!=typeof e)return!1;if(typeof t=="function"&&t.toString()===e.toString())return!0;let n,o,a;if(t&&e&&typeof t=="object"){if(Array.isArray(t)){if(n=t.length,n!==e.length)return!1;for(o=n;o--!==0;)if(!sa(t[o],e[o]))return!1;return!0}if(a=Object.keys(t),n=a.length,n!==Object.keys(e).length)return!1;for(o=n;o--!==0;)if(!{}.hasOwnProperty.call(e,a[o]))return!1;for(o=n;o--!==0;){const r=a[o];if(!(r==="_owner"&&t.$$typeof)&&!sa(t[r],e[r]))return!1}return!0}return t!==t&&e!==e}function Qu(t){return typeof window>"u"?1:(t.ownerDocument.defaultView||window).devicePixelRatio||1}function Hc(t,e){const n=Qu(t);return Math.round(e*n)/n}function _r(t){const e=c.useRef(t);return Jo(()=>{e.current=t}),e}function xx(t){t===void 0&&(t={});const{placement:e="bottom",strategy:n="absolute",middleware:o=[],platform:a,elements:{reference:r,floating:i}={},transform:l=!0,whileElementsMounted:d,open:u}=t,[m,p]=c.useState({x:0,y:0,strategy:n,placement:e,middlewareData:{},isPositioned:!1}),[f,g]=c.useState(o);sa(f,o)||g(o);const[h,_]=c.useState(null),[v,x]=c.useState(null),w=c.useCallback(q=>{q!==C.current&&(C.current=q,_(q))},[]),y=c.useCallback(q=>{q!==P.current&&(P.current=q,x(q))},[]),b=r||h,S=i||v,C=c.useRef(null),P=c.useRef(null),T=c.useRef(m),A=d!=null,R=_r(d),F=_r(a),j=_r(u),$=c.useCallback(()=>{if(!C.current||!P.current)return;const q={placement:e,strategy:n,middleware:f};F.current&&(q.platform=F.current),yx(C.current,P.current,q).then(H=>{const N={...H,isPositioned:j.current!==!1};B.current&&!sa(T.current,N)&&(T.current=N,An.flushSync(()=>{p(N)}))})},[f,e,n,F,j]);Jo(()=>{u===!1&&T.current.isPositioned&&(T.current.isPositioned=!1,p(q=>({...q,isPositioned:!1})))},[u]);const B=c.useRef(!1);Jo(()=>(B.current=!0,()=>{B.current=!1}),[]),Jo(()=>{if(b&&(C.current=b),S&&(P.current=S),b&&S){if(R.current)return R.current(b,S,$);$()}},[b,S,$,R,A]);const Y=c.useMemo(()=>({reference:C,floating:P,setReference:w,setFloating:y}),[w,y]),z=c.useMemo(()=>({reference:b,floating:S}),[b,S]),W=c.useMemo(()=>{const q={position:n,left:0,top:0};if(!z.floating)return q;const H=Hc(z.floating,m.x),N=Hc(z.floating,m.y);return l?{...q,transform:"translate("+H+"px, "+N+"px)",...Qu(z.floating)>=1.5&&{willChange:"transform"}}:{position:n,left:H,top:N}},[n,l,z.floating,m.x,m.y]);return c.useMemo(()=>({...m,update:$,refs:Y,elements:z,floatingStyles:W}),[m,$,Y,z,W])}const Cx=t=>{function e(n){return{}.hasOwnProperty.call(n,"current")}return{name:"arrow",options:t,fn(n){const{element:o,padding:a}=typeof t=="function"?t(n):t;return o&&e(o)?o.current!=null?zc({element:o.current,padding:a}).fn(n):{}:o?zc({element:o,padding:a}).fn(n):{}}}},Sx=(t,e)=>{const n=mx(t);return{name:n.name,fn:n.fn,options:[t,e]}},kx=(t,e)=>{const n=fx(t);return{name:n.name,fn:n.fn,options:[t,e]}},Px=(t,e)=>({fn:vx(t).fn,options:[t,e]}),Ex=(t,e)=>{const n=gx(t);return{name:n.name,fn:n.fn,options:[t,e]}},Ix=(t,e)=>{const n=hx(t);return{name:n.name,fn:n.fn,options:[t,e]}},Tx=(t,e)=>{const n=_x(t);return{name:n.name,fn:n.fn,options:[t,e]}},Ax=(t,e)=>{const n=Cx(t);return{name:n.name,fn:n.fn,options:[t,e]}};var Rx=Object.defineProperty,Mx=(t,e)=>Rx(t,"name",{value:e,configurable:!0}),Nx=c.forwardRef(Mx(function(e,n){const{children:o,width:a=10,height:r=5,...i}=e;return s.jsx(M.svg,{...i,ref:n,width:a,height:r,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?o:s.jsx("polygon",{points:"0,0 30,0 15,10"})})},"Arrow")),Ox=Nx,jx=Object.defineProperty,Dx=(t,e)=>jx(t,"name",{value:e,configurable:!0});function Zs(t){const[e,n]=c.useState(void 0);return ie(()=>{if(t){n({width:t.offsetWidth,height:t.offsetHeight});const o=new ResizeObserver(a=>{if(!Array.isArray(a)||!a.length)return;const r=a[0];let i,l;if("borderBoxSize"in r){const d=r.borderBoxSize,u=Array.isArray(d)?d[0]:d;i=u.inlineSize,l=u.blockSize}else i=t.offsetWidth,l=t.offsetHeight;n({width:i,height:l})});return o.observe(t,{box:"border-box"}),()=>o.unobserve(t)}else n(void 0)},[t]),e}Dx(Zs,"useSize");var Lx=Object.defineProperty,vt=(t,e)=>Lx(t,"name",{value:e,configurable:!0}),Zu="Popper",[Ju,ut]=ge(Zu),[Fx,ep]=Ju(Zu),Ux=vt(t=>{const{__scopePopper:e,children:n}=t,[o,a]=c.useState(null),[r,i]=c.useState(void 0);return s.jsx(Fx,{scope:e,anchor:o,onAnchorChange:a,placementState:r,setPlacementState:i,children:n})},"Popper"),Vx="PopperAnchor",$x=c.forwardRef(vt(function(e,n){const{__scopePopper:o,virtualRef:a,...r}=e,i=ep(Vx,o),l=c.useRef(null),d=i.onAnchorChange,u=c.useCallback(_=>{l.current=_,_&&d(_)},[d]),m=G(n,u),p=c.useRef(null);c.useEffect(()=>{if(!a)return;const _=p.current;p.current=a.current,_!==p.current&&d(p.current)});const f=i.placementState&&Na(i.placementState),g=f?.[0],h=f?.[1];return a?null:s.jsx(M.div,{"data-radix-popper-side":g,"data-radix-popper-align":h,...r,ref:m})},"PopperAnchor")),tp="PopperContent",[Bx,Gx]=Ju(tp),qx=c.forwardRef(vt(function(e,n){const{__scopePopper:o,side:a="bottom",sideOffset:r=0,align:i="center",alignOffset:l=0,arrowPadding:d=0,avoidCollisions:u=!0,collisionBoundary:m=[],collisionPadding:p=0,sticky:f="partial",hideWhenDetached:g=!1,updatePositionStrategy:h="optimized",onPlaced:_,...v}=e,x=ep(tp,o),[w,y]=c.useState(null),b=G(n,y),[S,C]=c.useState(null),P=Zs(S),T=P?.width??0,A=P?.height??0,R=a+(i!=="center"?"-"+i:""),F=typeof p=="number"?p:{top:0,right:0,bottom:0,left:0,...p},j=Array.isArray(m)?m:[m],$=j.length>0,B={padding:F,boundary:j.filter(np),altBoundary:$},{refs:Y,floatingStyles:z,placement:W,isPositioned:q,middlewareData:H}=xx({strategy:"fixed",placement:R,whileElementsMounted:vt((...K)=>px(...K,{animationFrame:h==="always"}),"whileElementsMounted"),elements:{reference:x.anchor},middleware:[Sx({mainAxis:r+A,alignmentAxis:l}),u&&kx({mainAxis:!0,crossAxis:!1,limiter:f==="partial"?Px():void 0,...B}),u&&Ex({...B}),Ix({...B,apply:vt(({elements:K,rects:_e,availableWidth:ue,availableHeight:pe})=>{const{width:be,height:pt}=_e.reference,Ve=K.floating.style;Ve.setProperty("--radix-popper-available-width",`${ue}px`),Ve.setProperty("--radix-popper-available-height",`${pe}px`),Ve.setProperty("--radix-popper-anchor-width",`${be}px`),Ve.setProperty("--radix-popper-anchor-height",`${pt}px`)},"apply")}),S&&Ax({element:S,padding:d}),Kx({arrowWidth:T,arrowHeight:A}),g&&Tx({strategy:"referenceHidden",...B,boundary:$?B.boundary:void 0})]}),N=x.setPlacementState;ie(()=>(N(W),()=>{N(void 0)}),[W,N]);const[he,E]=Na(W),U=fe(_);ie(()=>{q&&U?.()},[q,U]);const V=H.arrow?.x,L=H.arrow?.y,Q=H.arrow?.centerOffset!==0,[Z,O]=c.useState();return ie(()=>{w&&O(window.getComputedStyle(w).zIndex)},[w]),s.jsx("div",{ref:Y.setFloating,"data-radix-popper-content-wrapper":"",style:{...z,transform:q?z.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:Z,"--radix-popper-transform-origin":[H.transformOrigin?.x,H.transformOrigin?.y].join(" "),...H.hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:s.jsx(Bx,{scope:o,placedSide:he,placedAlign:E,onArrowChange:C,arrowX:V,arrowY:L,shouldHideArrow:Q,children:s.jsx(M.div,{"data-side":he,"data-align":E,...v,ref:b,style:{...v.style,animation:q?v.style?.animation:"none"}})})})},"PopperContent")),Wx="PopperArrow",zx={top:"bottom",right:"left",bottom:"top",left:"r
218ight"},Hx=c.forwardRef(vt(function(e,n){const{__scopePopper:o,...a}=e,r=Gx(Wx,o),i=zx[r.placedSide];return s.jsx("span",{ref:r.onArrowChange,style:{position:"absolute",left:r.arrowX,top:r.arrowY,[i]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[r.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[r.placedSide],visibility:r.shouldHideArrow?"hidden":void 0},children:s.jsx(Ox,{...a,ref:n,style:{...a.style,display:"block"}})})},"PopperArrow"));function np(t){return t!==null}vt(np,"isNotNull");var Kx=vt(t=>({name:"transformOrigin",options:t,fn(e){const{placement:n,rects:o,middlewareData:a}=e,i=a.arrow?.centerOffset!==0,l=i?0:t.arrowWidth,d=i?0:t.arrowHeight,[u,m]=Na(n),p={start:"0%",center:"50%",end:"100%"}[m],f=(a.arrow?.x??0)+l/2,g=(a.arrow?.y??0)+d/2;let h="",_="";return u==="bottom"?(h=i?p:`${f}px`,_=`${-d}px`):u==="top"?(h=i?p:`${f}px`,_=`${o.floating.height+d}px`):u==="right"?(h=`${-d}px`,_=i?p:`${g}px`):u==="left"&&(h=`${o.floating.width+d}px`,_=i?p:`${g}px`),{data:{x:h,y:_}}}}),"transformOrigin");function Na(t){const[e,n="center"]=t.split("-");return[e,n]}vt(Na,"getSideAndAlignFromPlacement");var Un=Ux,Vn=$x,Co=qx,Yx=Hx,Xx=Object.defineProperty,Js=(t,e)=>Xx(t,"name",{value:e,configurable:!0}),vr=!1;function op(){const[t,e]=c.useState(vr);return c.useEffect(()=>{vr||(vr=!0,e(!0))},[]),t}Js(op,"useIsHydrated");var ap=Tn[" useSyncExternalStore ".trim().toString()];function rp(){return()=>{}}Js(rp,"subscribe");function sp(){return ap(rp,()=>!0,()=>!1)}Js(sp,"useIsHydratedModern");var Qx=typeof ap=="function"?sp:op,Zx=Object.defineProperty,rn=(t,e)=>Zx(t,"name",{value:e,configurable:!0}),yr="rovingFocusGroup.onEntryFocus",Jx={bubbles:!1,cancelable:!0},Oa="RovingFocusGroup",[Zr,ip,eC]=Gt(Oa),[tC,Wt]=ge(Oa,[eC]),[nC,oC]=tC(Oa),aC=c.forwardRef(rn(function(e,n){return s.jsx(Zr.Provider,{scope:e.__scopeRovingFocusGroup,children:s.jsx(Zr.Slot,{scope:e.__scopeRovingFocusGroup,children:s.jsx(rC,{...e,ref:n})})})},"RovingFocusGroup")),rC=c.forwardRef(rn(function(e,n){const{__scopeRovingFocusGroup:o,orientation:a,loop:r=!1,dir:i,currentTabStopId:l,defaultCurrentTabStopId:d,onCurrentTabStopIdChange:u,onEntryFocus:m,preventScrollOnEntryFocus:p=!1,...f}=e,g=c.useRef(null),h=G(n,g),_=kt(i),[v,x]=we({prop:l,defaultProp:d??null,onChange:u,caller:Oa}),[w,y]=c.useState(!1),b=fe(m),S=ip(o),C=c.useRef(!1),[P,T]=c.useState(0);return c.useEffect(()=>{const A=g.current;if(A)return A.addEventListener(yr,b),()=>A.removeEventListener(yr,b)},[b]),s.jsx(nC,{scope:o,orientation:a,dir:_,loop:r,currentTabStopId:v,onItemFocus:c.useCallback(A=>x(A),[x]),onItemShiftTab:c.useCallback(()=>y(!0),[]),onFocusableItemAdd:c.useCallback(()=>T(A=>A+1),[]),onFocusableItemRemove:c.useCallback(()=>T(A=>A-1),[]),children:s.jsx(M.div,{tabIndex:w||P===0?-1:0,"data-orientation":a,...f,ref:h,style:{outline:"none",...e.style},onMouseDown:I(e.onMouseDown,()=>{C.current=!0}),onFocus:I(e.onFocus,A=>{const R=!C.current;if(A.target===A.currentTarget&&R&&!w){const F=new CustomEvent(yr,Jx);if(A.currentTarget.dispatchEvent(F),!F.defaultPrevented){const j=S().filter(W=>W.focusable),$=j.find(W=>W.active),B=j.find(W=>W.id===v),z=[$,B,...j].filter(Boolean).map(W=>W.ref.current);ei(z,p)}}C.current=!1}),onBlur:I(e.onBlur,()=>y(!1))})})},"RovingFocusGroupImpl")),sC="RovingFocusGroupItem",iC=c.forwardRef(rn(function(e,n){const{__scopeRovingFocusGroup:o,focusable:a=!0,active:r=!1,tabStopId:i,children:l,...d}=e,u=ce(),m=i||u,p=oC(sC,o),f=p.currentTabStopId===m,g=ip(o),{onFocusableItemAdd:h,onFocusableItemRemove:_,currentTabStopId:v}=p,x=Qx();return ie(()=>{if(!(!x||!a))return h(),()=>_()},[x,a,h,_]),c.useEffect(()=>{if(!(x||!a))return h(),()=>_()},[x,a,h,_]),s.jsx(Zr.ItemSlot,{scope:o,id:m,focusable:a,active:r,children:s.jsx(M.span,{tabIndex:f?0:-1,"data-orientation":p.orientation,...d,ref:n,onMouseDown:I(e.onMouseDown,w=>{a?p.onItemFocus(m):w.preventDefault()}),onFocus:I(e.onFocus,()=>p.onItemFocus(m)),onKeyDown:I(e.onKeyDown,w=>{if(w.key==="Tab"&&w.shiftKey){p.onItemShiftTab();return}if(w.target!==w.currentTarget)return;const y=lp(w,p.orientation,p.dir);if(y!==void 0){if(w.metaKey||w.ctrlKey||w.altKey||w.shiftKey)return;w.preventDefault();
218let S=g().filter(C=>C.focusable).map(C=>C.ref.current);if(y==="last")S.reverse();else if(y==="prev"||y==="next"){y==="prev"&&S.reverse();const C=S.indexOf(w.currentTarget);S=p.loop?dp(S,C+1):S.slice(C+1)}setTimeout(()=>ei(S))}}),children:typeof l=="function"?l({isCurrentTabStop:f,hasTabStop:v!=null}):l})})},"RovingFocusGroupItem")),cC={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function cp(t,e){return e!=="rtl"?t:t==="ArrowLeft"?"ArrowRight":t==="ArrowRight"?"ArrowLeft":t}rn(cp,"getDirectionAwareKey");function lp(t,e,n){const o=cp(t.key,n);if(!(e==="vertical"&&["ArrowLeft","ArrowRight"].includes(o))&&!(e==="horizontal"&&["ArrowUp","ArrowDown"].includes(o)))return cC[o]}rn(lp,"getFocusIntent");function ei(t,e=!1){const n=document.activeElement;for(const o of t)if(o===n||(o.focus({preventScroll:e}),document.activeElement!==n))return}rn(ei,"focusFirst");function dp(t,e){return t.map((n,o)=>t[(e+o)%t.length])}rn(dp,"wrapArray");var ja=aC,Da=iC,l
218C=Object.defineProperty,ee=(t,e)=>lC(t,"name",{value:e,configurable:!0}),Jr=["Enter"," "],dC=["ArrowDown","PageUp","Home"],up=["ArrowUp","PageDown","End"],uC=[...dC,...up],pC={ltr:[...Jr,"ArrowRight"],rtl:[...Jr,"ArrowLeft"]},mC={ltr:["ArrowLeft"],rtl:["ArrowRight"]},La="Menu",[no,fC,gC]=Gt(La),[sn,So]=ge(La,[gC,ut,Wt]),Fa=ut(),pp=Wt(),[mp,zt]=sn(La),[hC,ko]=sn(La),_C=ee(t=>{const{__scopeMenu:e,open:n=!1,children:o,dir:a,onOpenChange:r,modal:i=!0}=t,l=Fa(e),[d,u]=c.useState(null),m=c.useRef(!1),p=fe(r),f=kt(a);return c.useEffect(()=>{const g=ee(()=>{m.current=!0,document.addEventListener("pointerdown",h,{capture:!0,once:!0}),document.addEventListener("pointermove",h,{capture:!0,once:!0})},"handleKeyDown"),h=ee(()=>m.current=!1,"handlePointer");return document.addEventListener("keydown",g,{capture:!0}),()=>{document.removeEventListener("keydown",g,{capture:!0}),document.removeEventListener("pointerdown",h,{capture:!0}),document.removeEventListener("pointermove",h,{capture:!0})}},[]),c.useEffect(()=>{if(!n)return;const g=ee(()=>p(!1),"handleBlur");return window.addEventListener("blur",g),()=>window.removeEventListener("blur",g)},[n,p]),s.jsx(Un,{...l,children:s.jsx(mp,{scope:e,open:n,onOpenChange:p,content:d,onContentChange:u,children:s.jsx(hC,{scope:e,onClose:c.useCallback(()=>p(!1),[p]),isUsingKeyboardRef:m,dir:f,modal:i,children:o})})})},"Menu"),fp=c.forwardRef(ee(function(e,n){const{__scopeMenu:o,...a}=e,r=Fa(o);return s.jsx(Vn,{...r,...a,ref:n})},"MenuAnchor")),gp="MenuPortal",[vC,hp]=sn(gp,{forceMount:void 0}),yC=ee(t=>{const{__scopeMenu:e,forceMount:n,children:o,container:a}=t,r=zt(gp,e);return s.jsx(vC,{scope:e,forceMount:n,children:s.jsx(xe,{present:n||r.open,children:s.jsx(vo,{asChild:!0,container:a,children:o})})})},"MenuPortal"),Xe="MenuContent",[bC,ti]=sn(Xe),wC=c.forwardRef(ee(function(e,n){const o=hp(Xe,e.__scopeMenu),{forceMount:a=o.forceMount,...r}=e,i=zt(Xe,e.__scopeMenu),l=ko(Xe,e.__scopeMenu);return s.jsx(no.Provider,{scope:e.__scopeMenu,children:s.jsx(xe,{present:a||i.open,children:s.jsx(no.Slot,{scope:e.__scopeMenu,children:l.modal?s.jsx(xC,{...r,ref:n}):s.jsx(CC,{...r,ref:n})})})})},"MenuContent")),xC=c.forwardRef(ee(function(e,n){const o=zt(Xe,e.__scopeMenu),a=c.useRef(null),r=G(n,a);return c.useEffect(()=>{const i=a.current;if(i)return Sa(i)},[]),s.jsx(ni,{...e,ref:r,trapFocus:o.open,disableOutsidePointerEvents:o.open,disableOutsideScroll:!0,onFocusOutside:I(e.onFocusOutside,i=>i.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>o.onOpenChange(!1)})},"MenuRootContentModal")),CC=c.forwardRef(ee(function(e,n){const o=zt(Xe,e.__scopeMenu);return s.jsx(ni,{...e,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>o.onOpenChange(!1)})},"MenuRootContentNonModal")),SC=Qe("MenuContent.ScrollLock"),ni=c.forwardRef(ee(function(e,n){const{__scopeMenu:o,loop:a=!1,trapFocus:r,onOpenAutoFocus:i,onCloseAutoFocus:l,disableOutsidePointerEvents:d,onEntryFocus:u,onEscapeKeyDown:m,onPointerDownOutside:p,onFocusOutside:f,onInteractOutside:g,onDismiss:h,disableOutsideScroll:_,...v}=e,x=zt(Xe,o),w=ko(Xe,o),y=Fa(o),b=pp(o),S=fC(o),[C,P]=c.useState(null),T=c.useRef(null),A=G(n,T,x.onContentChange),R=c.useRef(0),F=c.useRef(""),j=c.useRef(0),$=c.useRef(null),B=c.useRef("right"),Y=c.useRef(0),z=_?yo:c.Fragment,W=_?{as:SC,allowPinchZoom:!0}:void 0,q=ee(N=>{const he=F.current+N,E=S().filter(O=>!O.disabled),U=document.activeElement,V=E.find(O=>O.ref.current===U)?.textValue,L=E.map(O=>O.textValue),Q=kp(L,he,V),Z=E.find(O=>O.textValue===Q)?.ref.current;ee(function O(K){F.current=K,window.clearTimeout(R.current),K!==""&&(R.current=window.setTimeout(()=>O(""),1e3))},"updateSearch")(he),Z&&setTimeout(()=>Z.focus())},"handleTypeaheadSearch");c.useEffect(()=>()=>window.clearTimeout(R.current),[]),On();const H=c.useCallback(N=>B.current===$.current?.side&&Ep(N,$.current?.area),[]);return s.jsx(bC,{scope:o,searchRef:F,onItemEnter:c.useCallback(N=>{H(N)&&N.preventDefault()},[H]),onItemLeave:c.useCallback(N=>{H(N)||(T.current?.focus(),P(null))},[H]),onTriggerLeave:c.useCallback(N=>{H(N)&&N.preventDefault()},[H]),pointerGraceTimerRef:j,onPointerGraceIntentChange:c.useCallback(N=>{$.current=N},[]),children:s.jsx(z,{...W,children:s.jsx(xa,{asChild:!0,trapped:r,onMountAutoFocus:I(i,N=>{N.preventDefault(),T.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:l,children:s.jsx(nn,{asChild:!0,disableOutsidePointerEvents:d,onEscapeKeyDown:m,onPointerDownOutside:p,onFocusOutside:f,onInteractOutside:g,onDismiss:h,children:s.jsx(ja,{asChild:!0,...b,dir:w.dir,orientation:"vertical",loop:a,currentTabStopId:C,onCurrentTabStopIdChange:P,onEntryFocus:I(u,N=>{w.isUsingKeyboardRef.current||N.preventDefault()}),preventScrollOnEntryFocus:!0,children:s.jsx(Co,{role:"menu","aria-orientation":"vertical","data-state":ai(x.open),"data-radix-menu-content":"",dir:w.dir,...y,...v,ref:A,style:{outline:"none",...v.style},onKeyDown:I(v.onKeyDown,N=>{const E=N.target.closest("[data-radix-menu-content]")===N.currentTarget,U=N.ctrlKey||N.altKey||N.metaKey,V=N.key.length===1;E&&(N.key==="Tab"&&N.preventDefault(),!U&&V&&q(N.key));const L=T.current;if(N.target!==L||!uC.includes(N.key))return;N.preventDefault();const Z=S().filter(O=>!O.disabled).map(O=>O.ref.current);up.includes(N.key)&&Z.reverse(),Cp(Z)}),onBlur:I(e.onBlur,N=>{N.currentTarget.contains(N.target)||(window.clearTimeout(R.current),F.current="")}),onPointerMove:I(e.onPointerMove,En(N=>{const he=N.target,E=Y.current!==N.clientX;if(N.currentTarget.contains(he)&&E){const U=N.clientX>Y.current?"right":"left";B.current=U,Y.current=N.clientX}}))})})})})})})},"MenuContentImpl")),_p=c.forwardRef(ee(function(e,n){const{__scopeMenu:o,...a}=e;return s.jsx(M.div,{role:"group",...a,ref:n})},"MenuGroup")),kC=c.forwardRef(ee(function(e,n){const{__scopeMenu:o,...a}=e;return s.jsx(M.div,{...a,ref:n})},"MenuLabel")),es="MenuItem",Kc="menu.itemSelect",oi=c.forwardRef(ee(function(e,n){const{disabled:o=!1,onSelect:a,...r}=e,i=c.useRef(null),l=ko(es,e.__scopeMenu),d=ti(es,e.__scopeMenu),u=G
218(n,i),m=c.useRef(!1),p=ee(()=>{const f=i.current;if(!o&&f){const g=new CustomEvent(Kc,{bubbles:!0,cancelable:!0});f.addEventListener(Kc,h=>a?.(h),{once:!0}),Zn(f,g),g.defaultPrevented?m.current=!1:l.onClose()}},"handleSelect");return s.jsx(vp,{...r,ref:u,disabled:o,onClick:I(e.onClick,p),onPointerDown:f=>{e.onPointerDown?.(f),m.current=!0},onPointerUp:I(e.onPointerUp,f=>{m.current||f.currentTarget?.click()}),onKeyDown:I(e.onKeyDown,f=>{o||f.target!==f.currentTarget||d.searchRef.current!==""&&f.key===" "||Jr.includes(f.key)&&(f.currentTarget.click(),f.preventDefault())})})},"MenuItem")),vp=c.forwardRef(ee(function(e,n){const{__scopeMenu:o,disabled:a=!1,textValue:r,...i}=e,l=ti(es,o),d=pp(o),u=c.useRef(null),m=G(n,u),[p,f]=c.useState(!1),[g,h]=c.useState("");return c.useEffect(()=>{const _=u.current;_&&h((_.textContent??"").trim())},[i.children]),s.jsx(no.ItemSlot,{scope:o,disabled:a,textValue:r??g,children:s.jsx(Da,{asChild:!0,...d,focusable:!a,children:s.jsx(M.div,{role:"menuitem","data-highlighted":p?"":void 0,"aria-disabled":a||void 0,"data-disabled":a?"":void 0,...i,ref:m,onPointerMove:I(e.onPointerMove,En(_=>{a?l.onItemLeave(_):(l.onItemEnter(_),_.defaultPrevented||_.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:I(e.onPointerLeave,En(_=>l.onItemLeave(_))),onFocus:I(e.onFocus,()=>f(!0)),onBlur:I(e.onBlur,()=>f(!1))})})})},"MenuItemImpl")),PC=c.forwardRef(ee(function(e,n){const{checked:o=!1,onCheckedChange:a,...r}=e;return s.jsx(bp,{scope:e.__scopeMenu,checked:o,children:s.jsx(oi,{role:"menuitemcheckbox","aria-checked":oo(o)?"mixed":o,...r,ref:n,"data-state":Ua(o),onSelect:I(r.onSelect,()=>a?.(oo(o)?!0:!o),{checkForDefaultPrevented:!1})})})},"MenuCheckboxItem")),EC="MenuRadioGroup",[IC,TC]=sn(EC,{value:void 0,onValueChange:ee(()=>{},"onValueChange")}),AC=c.forwardRef(ee(function(e,n){const{value:o,onValueChange:a,...r}=e,i=fe(a);return s.jsx(IC,{scope:e.__scopeMenu,value:o,onValueChange:i,children:s.jsx(_p,{...r,ref:n})})},"MenuRadioGroup")),RC="MenuRadioItem",MC=c.forwardRef(ee(function(e,n){const{value:o,...a}=e,r=TC(RC,e.__scopeMenu),i=o===r.value;return s.jsx(bp,{scope:e.__scopeMenu,checked:i,children:s.jsx(oi,{role:"menuitemradio","aria-checked":i,...a,ref:n,"data-state":Ua(i),onSelect:I(a.onSelect,()=>r.onValueChange?.(o),{checkForDefaultPrevented:!1})})})},"MenuRadioItem")),yp="MenuItemIndicator",[bp,NC]=sn(yp,{checked:!1}),OC=c.forwardRef(ee(function(e,n){const{__scopeMenu:o,forceMount:a,...r}=e,i=NC(yp,o);return s.jsx(xe,{present:a||oo(i.checked)||i.checked===!0,children:s.jsx(M.span,{...r,ref:n,"data-state":Ua(i.checked)})})},"MenuItemIndicator")),jC=c.forwardRef(ee(function(e,n){const{__scopeMenu:o,...a}=e;return s.jsx(M.div,{role:"separator","aria-orientation":"horizontal",...a,ref:n})},"MenuSeparator")),wp="MenuSub",[DC,xp]=sn(wp),LC=ee(t=>{const{__scopeMenu:e,children:n,open:o=!1,onOpenChange:a}=t,r=zt(wp,e),i=Fa(e),[l,d]=c.useState(null),[u,m]=c.useState(null),p=fe(a);return c.useEffect(()=>(r.open===!1&&p(!1),()=>p(!1)),[r.open,p]),s.jsx(Un,{...i,children:s.jsx(mp,{scope:e,open:o,onOpenChange:p,content:u,onContentChange:m,children:s.jsx(DC,{scope:e,contentId:ce(),triggerId:ce(),trigger:l,onTriggerChange:d,children:n})})})},"MenuSub"),Fo="MenuSubTrigger",FC=c.forwardRef(ee(function(e,n){const o=zt(Fo,e.__scopeMenu),a=ko(Fo,e.__scopeMenu),r=xp(Fo,e.__scopeMenu),i=ti(Fo,e.__scopeMenu),l=c.useRef(null),{pointerGraceTimerRef:d,onPointerGraceIntentChange:u}=i,m={__scopeMenu:e.__scopeMenu},p=c.useCallback(()=>{l.current&&window.clearTimeout(l.current),l.current=null},[]);c.useEffect(()=>p,[p]),c.useEffect(()=>{const g=d.current;return()=>{window.clearTimeout(g),u(null)}},[d,u]);const f=G(n,r.onTriggerChange);return s.jsx(fp,{asChild:!0,...m,children:s.jsx(vp,{id:r.triggerId,"aria-haspopup":"menu","aria-expanded":o.open,"aria-controls":o.open?r.contentId:void 0,"data-state":ai(o.open),...e,ref:f,onClick:g=>{e.onClick?.(g),!(e.disabled||g.defaultPrevented)&&(g.currentTarget.focus(),o.open||o.onOpenChange(!0))},onPointerMove:I(e.onPointerMove,En(g=>{i.onItemEnter(g),!g.defaultPrevented&&!e.disabled&&!o.open&&!l.current&&(i.onPointerGraceIntentChange(null),l.current=window.setTimeout(()=>{o.onOpenChange(!0),p()},100))})),onPointerLeave:I(e.onPointerLeave,En(g=>{p();const h=o.content?.getBoundingClientRect();if(h){const _=o.content?.dataset.side,v=_==="right",x=v?-5:5,w=h[v?"left":"right"],y=h[v?"right":"left"];i.onPointerGraceIntentChange({area:[{x:g.clientX+x,y:g.clientY},{x:w,y:h.top},{x:y,y:h.top},{x:y,y:h.bottom},{x:w,y:h.bottom}],side:_}),window.clearTimeout(d.current),d.current=window.setTimeout(()=>i.onPointerGraceIntentChange(null),300)}else{if(i.onTriggerLeave(g),g.defaultPrevented)return;i.onPointerGraceIntentChange(null)}})),onKeyDown:I(e.onKeyDown,g=>{e.disabled||g.target!==g.currentTarget||i.searchRef.current!==""&&g.key===" "||pC[a.dir].includes(g.key)&&(o.onOpenChange(!0),o.content?.focus(),g.preventDefault())})})})},"MenuSubTrigger")),UC="MenuSubContent",VC=c.forwardRef(ee(function(e,n){const o=hp(Xe,e.__scopeMenu),{forceMount:a=o.forceMount,align:r="start",...i}=e,l=zt(Xe,e.__scopeMenu),d=ko(Xe,e.__scopeMenu),u=xp(UC,e.__scopeMenu),m=c.useRef(null),p=G(n,m);return s.jsx(no.Provider,{scope:e.__scopeMenu,children:s.jsx(xe,{present:a||l.open,children:s.jsx(no.Slot,{scope:e.__scopeMenu,children:s.jsx(ni,{id:u.contentId,"aria-labelledby":u.triggerId,...i,ref:p,align:r,side:d.dir==="rtl"?"left"
218:"right",disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:f=>{d.isUsingKeyboardRef.current&&m.current?.focus(),f.preventDefault()},onCloseAutoFocus:f=>f.preventDefault(),onFocusOutside:I(e.onFocusOutside,f=>{f.target!==u.trigger&&l.onOpenChange(!1)}),onEscapeKeyDown:I(e.onEscapeKeyDown,f=>{d.onClose(),f.preventDefault()}),onKeyDown:I(e.onKeyDown,f=>{const g=f.currentTarget.contains(f.target),h=mC[d.dir].includes(f.key);g&&h&&(l.onOpenChange(!1),u.trigger?.focus(),f.preventDefault())})})})})})},"MenuSubContent"));function ai(t){return t?"open":"closed"}ee(ai,"getOpenState");function oo(t){return t==="indeterminate"}ee(oo,"isIndeterminate");function Ua(t){return oo(t)?"indeterminate":t?"checked":"unchecked"}ee(Ua,"getCheckedState");function Cp(t){const e=document.activeElement;for(const n of t)if(n===e||(n.focus(),document.activeElement!==e))return}ee(Cp,"focusFirst");function Sp(t,e){return t.map((n,o)=>t[(e+o)%t.length])}ee(Sp,"wrapArray");function kp(t,e,n){const a=e.length>1&&Array.from(e).every(u=>u===e[0])?e[0]:e,r=n?t.indexOf(n):-1;let i=Sp(t,Math.max(r,0));a.length===1&&(i=i.filter(u=>u!==n));const d=i.find(u=>u.toLowerCase().startsWith(a.toLowerCase()));return d!==n?d:void 0}ee(kp,"getNextMatch");function Pp(t,e){const{x:n,y:o}=t;let a=!1;for(let r=0,i=e.length-1;r<e.length;i=r++){const l=e[r],d=e[i],u=l.x,m=l.y,p=d.x,f=d.y;m>o!=f>o&&n<(p-u)*(o-m)/(f-m)+u&&(a=!a)}return a}ee(Pp,"isPointInPolygon");function Ep(t,e){if(!e)return!1;const n={x:t.clientX,y:t.clientY};return Pp(n,e)}ee(Ep,"isPointerInGraceArea");function En(t){return e=>e.pointerType==="mouse"?t(e):void 0}ee(En,"whenMouse");var ri=_C,si=fp,ii=yC,ci=wC,li=_p,di=kC,ui=oi,pi=PC,mi=AC,fi=MC,gi=OC,hi=jC,_i=LC,vi=FC,yi=VC,$C=Object.defineProperty,Pe=(t,e)=>$C(t,"name",{value:e,configurable:!0}),bi="ContextMenu",[BC,qR]=ge(bi,[So]),Re=So(),[GC,Ip]=BC(bi),qC=Pe(t=>{const{__scopeContextMenu:e,children:n,onOpenChange:o,open:a,dir:r,modal:i=!0}=t,l=c.useRef(!1),[d,u]=we({prop:a,defaultProp:!1,onChange:o,caller:bi}),m=Re(e);return s.jsx(GC,{scope:e,open:d,onOpenChange:u,modal:i,hasInteractedRef:l,children:s.jsx(ri,{...m,dir:r,open:d,onOpenChange:u,modal:i,children:n})})},"ContextMenu"),WC="ContextMenuTrigger",zC=c.forwardRef(Pe(function(e,n){const{__scopeContextMenu:o,disabled:a=!1,...r}=e,i=Ip(WC,o),l=Re(o),[d,u]=c.useState({x:0,y:0}),m=c.useMemo(()=>({current:{getBoundingClientRect:Pe(()=>DOMRect.fromRect({width:0,height:0,...d}),"getBoundingClientRect")}}),[d]),p=c.useRef(0),f=c.useCallback(()=>window.clearTimeout(p.current),[]),g=Pe(h=>{i.hasInteractedRef.current=!0,u({x:h.clientX,y:h.clientY}),i.onOpenChange(!0)},"handleOpen");return c.useEffect(()=>f,[f]),c.useEffect(()=>void(a&&f()),[a,f]),s.jsxs(s.Fragment,{children:[s.jsx(si,{...l,virtualRef:m}),s.jsx(M.span,{"data-state":i.open?"open":"closed","data-disabled":a?"":void 0,...r,ref:n,style:{WebkitTouchCallout:"none",...e.style},onContextMenu:a?e.onContextMenu:I(e.onContextMenu,h=>{f(),g(h),h.preventDefault()}),onPointerDown:a?e.onPointerDown:I(e.onPointerDown,Xn(h=>{f(),i.open&&i.onOpenChange(!1),p.current=window.setTimeout(()=>g(h),700)})),onPointerMove:a?e.onPointerMove:I(e.onPointerMove,Xn(f)),onPointerCancel:a?e.onPointerCancel:I(e.onPointerCancel,Xn(f)),onPointerUp:a?e.onPointerUp:I(e.onPointerUp,Xn(f))})]})},"ContextMenuTrigger")),HC=Pe(t=>{const{__scopeContextMenu:e,...n}=t,o=Re(e);return s.jsx(ii,{...o,...n})},"ContextMenuPortal"),KC="ContextMenuContent",YC=c.forwardRef(Pe(function(e,n){const{__scopeContextMenu:o,...a}=e,r=Ip(KC,o),i=Re(o),l=c.useRef(!1);return s.jsx(ci,{...i,...a,ref:n,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:d=>{e.onCloseAutoFocus?.(d),!d.defaultPrevented&&l.current&&d.preventDefault(),l.current=!1},onInteractOutside:d=>{e.onInteractOutside?.(d),!d.defaultPrevented&&!r.modal&&(l.current=!0)},style:{...e.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})},"ContextMenuContent")),XC=c.forwardRef(Pe(function(e,n){const{__scopeContextMenu:o,...a}=e,r=Re(o);return s.jsx(li,{...r,...a,ref:n})},"ContextMenuGroup")),QC=c.forwardRef(Pe(function(e,n){const{__scopeContextMenu:o,...a}=e,r=Re(o);return s.jsx(di,{...r,...a,ref:n})},"ContextMenuLabel")),ZC=c.forwardRef(Pe(function(e,n){const{__scopeContextMenu:o,...a}=e,r=Re(o);return s.jsx(ui,{...r,...a,ref:n})},"ContextMenuItem")),JC=c.forwardRef(Pe(function(e,n){const{__scopeContextMenu:o,...a}=e,r=Re(o);return s.jsx(pi,{...r,...a,ref:n})},"ContextMenuCheckboxItem")),eS=c.forwardRef(Pe(function(e,n){const{__scopeContextMenu:o,...a}=e,r=Re(o);return s.jsx(mi,{...r,...a,ref:n})},"ContextMenuRadioGroup")),tS=c.forwardRef(Pe(function(e,n){const{__scopeContextMenu:o,...a}=e,r=Re(o);return s.jsx(fi,{...r,...a,ref:n})},"ContextMenuRadioItem")),nS=c.forwardRef(Pe(function(e,n){const{__scopeContextMenu:o,...a}=e,r=Re(o);return s.jsx(gi,{...r,...a,ref:n})},"ContextMenuItemIndicator")),oS=c.forwardRef(Pe(function(e,n){const{__scopeContextMenu:o,...a}=e,r=Re(o);return s.jsx(hi,{...r,...a,ref:n})},"ContextMenuSeparator")),aS="ContextMenuSub",rS=Pe(t=>{const{__scopeContextMenu:e,children:n,onOpenChange:o,open:a,defaultOpen:r}=t,i=Re(e),[l,d]=we({prop:a,defaultProp:r??!1,onChange:o,caller:aS});return s.jsx(_i,{...i,open:l,onOpenChange:d,children:n})},"ContextMenuSub"),sS=c.forwardRef(Pe(function(e,n){const{__scopeContextMenu:o,...a}=e,r=Re(o);return s.jsx(vi,{...r,...a,ref:n})},"ContextMenuSubTrigger")),iS=c.forwardRef(Pe(function(e,n){const{__scopeContextMenu:o,...a}=e,r=Re(o);return s.jsx(yi,{...r,...a,ref:n,style:{...e.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})},"ContextMenuSubContent"));function Xn(t){return e=>e.pointerType!=="mouse"?t(e):void 0}Pe(Xn,"whenTouchOrPen");var cS=qC,lS=zC,Tp=HC,Ap=YC,dS=XC,Rp=QC,Mp=ZC,Np=JC,uS=eS,Op=tS,jp=nS,Dp=oS,pS=rS,Lp=sS,Fp=iS;const mS=cS,fS=lS,gS=dS,hS=Tp,_S=pS,vS=uS,Up=c.forwardRef(({className:t,inset:e,children:n,...o},a)=>s.jsxs(Lp,{ref:a,className:k("flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",e&&"pl-8",t),...o,children:[n,s.jsx(fo,{className:"ml-auto"})]}));Up.displayName=Lp.displayName;const Vp=c.forwardRef(({className:t,...e},n)=>s.jsx(Fp,{ref:n,className:k("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:sli
218de-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...e}));Vp.displayName=Fp.displayName;const $p=c.forwardRef(({className:t,...e},n)=>s.jsx(Tp,{children:s.jsx(Ap,{ref:n,className:k("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md animate-in fade-in-80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...e})}));$p.displayName=Ap.displayName;const Bp=c.forwardRef(({className:t,inset:e,...n},o)=>s.jsx(Mp,{ref:o,className:k("relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",e&&"pl-8",t),...n}));Bp.displayName=Mp.displayName;const Gp=c.forwardRef(({className:t,children:e,checked:n,...o},a)=>s.jsxs(Np,{ref:a,className:k("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),checked:n,...o,children:[s.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:s.jsx(jp,{children:s.jsx(ha,{className:"h-4 w-4"})})}),e]}));Gp.displayName=Np.displayName;const qp=c.forwardRef(({className:t,children:e,...n},o)=>s.jsxs(Op,{ref:o,className:k("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...n,children:[s.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:s.jsx(jp,{children:s.jsx(ga,{className:"h-2 w-2 fill-current"})})}),e]}));qp.displayName=Op.displayName;const Wp=c.forwardRef(({className:t,inset:e,...n},o)=>s.jsx(Rp,{ref:o,className:k("px-2 py-1.5 text-sm font-semibold text-foreground",e&&"pl-8",t),...n}));Wp.displayName=Rp.displayName;const zp=c.forwardRef(({className:t,...e},n)=>s.jsx(Dp,{ref:n,className:k("-mx-1 my-1 h-px bg-border",t),...e}));zp.displayName=Dp.displayName;const Hp=({className:t,...e})=>s.jsx("span",{className:k("ml-auto text-xs tracking-widest text-muted-foreground",t),...e});Hp.displayName="ContextMenuShortcut";var yS=Object.defineProperty,Me=(t,e)=>yS(t,"name",{value:e,configurable:!0}),wi="DropdownMenu",[bS,WR]=ge(wi,[So]),Ne=So(),[wS,Kp]=bS(wi),xS=Me(t=>{const{__scopeDropdownMenu:e,children:n,dir:o,open:a,defaultOpen:r,onOpenChange:i,modal:l=!0}=t,d=Ne(e),u=c.useRef(null),[m,p]=we({prop:a,defaultProp:r??!1,onChange:i,caller:wi});return s.jsx(wS,{scope:e,triggerId:ce(),triggerRef:u,contentId:ce(),open:m,onOpenChange:p,onOpenToggle:c.useCallback(()=>p(f=>!f),[p]),modal:l,children:s.jsx(ri,{...d,open:m,onOpenChange:p,dir:o,modal:l,children:n})})},"DropdownMenu"),CS="DropdownMenuTrigger",SS=c.forwardRef(Me(function(e,n){const{__scopeDropdownMenu:o,disabled:a=!1,...r}=e,i=Kp(CS,o),l=Ne(o),d=G(n,i.triggerRef);return s.jsx(si,{asChild:!0,...l,children:s.jsx(M.button,{type:"button",id:i.triggerId,"aria-haspopup":"menu","aria-expanded":i.open,"aria-controls":i.open?i.contentId:void 0,"data-state":i.open?"open":"closed","data-disabled":a?"":void 0,disabled:a,...r,ref:d,onPointerDown:I(e.onPointerDown,u=>{!a&&u.button===0&&u.ctrlKey===!1&&(i.onOpenToggle(),i.open||u.preventDefault())}),onKeyDown:I(e.onKeyDown,u=>{a||(["Enter"," "].includes(u.key)&&i.onOpenToggle(),u.key==="ArrowDown"&&i.onOpenChange(!0),["Enter"," ","ArrowDown"].includes(u.key)&&u.preventDefault())})})})},"DropdownMenuTrigger")),kS=Me(t=>{const{__scopeDropdownMenu:e,...n}=t,o=Ne(e);return s.jsx(ii,{...o,...n})},"DropdownMenuPortal"),PS="DropdownMenuContent",ES=c.forwardRef(Me(function(e,n){const{__scopeDropdownMenu:o,...a}=e,r=Kp(PS,o),i=Ne(o),l=c.useRef(!1);return s.jsx(ci,{id:r.contentId,"aria-labelledby":r.triggerId,...i,...a,ref:n,onCloseAutoFocus:I(e.onCloseAutoFocus,d=>{l.current||r.triggerRef.current?.focus(),l.current=!1,d.preventDefault()}),onInteractOutside:I(e.onInteractOutside,d=>{const u=d.detail.originalEvent,m=u.button===0&&u.ctrlKey===!0,p=u.button===2||m;(!r.modal||p)&&(l.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})},"DropdownMenuContent")),IS=c.forwardRef(Me(function(e,n){const{__scopeDropdownMenu:o,...a}=e,r=Ne(o);return s.jsx(li,{...r,...a,ref:n})},"DropdownMenuGroup")),TS=c.forwardRef(Me(function(e,n){const{__scopeDropdownMenu:o,...a}=e,r=Ne(o);return s.jsx(di,{...r,...a,ref:n})},"DropdownMenuLabel")),AS=c.forwardRef(Me(function(e,n){const{__scopeDropdownMenu:o,...a}=e,r=Ne(o);return s.jsx(ui,{...r,...a,ref:n})},"DropdownMenuItem")),RS=c.forwardRef(Me(function(e,n){const{__scopeDropdownMenu:o,...a}=e,r=Ne(o);return s.jsx(pi,{...r,...a,ref:n})},"DropdownMenuCheckboxItem")),MS=c.forwardRef(Me(function(e,n){const{__scopeDropdownMenu:o,...a}=e,r=Ne(o);return s.jsx(mi,{...r,...a,ref:n})},"DropdownMenuRadioGroup")),NS=c.forwardRef(Me(function(e,n){const{__scopeDropdownMenu:o,...a}=e,r=Ne(o);return s.jsx(fi,{...r,...a,ref:n})},"DropdownMenuRadioItem")),OS=c.forwardRef(Me(function(e,n){const{__scopeDropdownMenu:o,...a}=e,r=Ne(o);return s.jsx(gi,{...r,...a,ref:n})},"DropdownMenuItemIndicator")),jS=c.forwardRef(Me(function(e,n){const{__scopeDropdownMenu:o,...a}=e,r=Ne(o);return s.jsx(hi,{...r,...a,ref:n})},"DropdownMenuSeparator")),DS=Me(t=>{const{__scopeDropdownMenu:e,children:n,open:o,onOpenChange:a,defaultOpen:r}=t,i=Ne(e),[l,d]=we({prop:o,defaultProp:r??!1,onChange:a,caller:"DropdownMenuSub"});return s.jsx(_i,{...i,open:l,onOpenChange:d,children:n})},"DropdownMenuSub"),LS=c.forwardRef(Me(function(e,n){const{__scopeDropdownMenu:o,...a}=e,r=Ne(o);return s.jsx(vi,{...r,...a,ref:n})},"DropdownMenuSubTrigger")),FS=c.forwardRef(Me(function(e,n){const{__scopeDropdownMenu:o,...a}=e,r=Ne(o);return s.jsx(yi,{...r,...a,ref:n,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-dropdown-menu-content-available-width":"var(--radix-popper-available-width)","--radix-dropdown-menu-content-available-height":"var(--radix-popper-available-height)","--radix-dropdown-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-dropdown-menu-trigger-height":"var(--radix-popper-anchor-height)"}})},"DropdownMenuSubContent")),US=xS,VS=SS,Yp=kS,Xp=ES,$S=IS,Qp=TS,Zp=AS,Jp=RS,BS=MS,em=NS,tm=OS,nm=jS,GS=DS,om=LS,am=FS;const qS=US,WS=VS,zS=$S,HS=Yp,KS=GS,YS=BS,rm=c.forwardRef(({className:t,inset:e,children:n,...o},a)=>s.jsxs(om,{ref:a,className:k("flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",e&&"pl-8",t),...o,children:[n,s.jsx(fo,{className:"ml-auto"})]}));rm.displayName=om.displayName;const sm=c.forwardRef(({className:t,...e},n)=>s.jsx(am,{ref:n,className:k("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:sli
218de-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...e}));sm.displayName=am.displayName;const im=c.forwardRef(({className:t,sideOffset:e=4,...n},o)=>s.jsx(Yp,{children:s.jsx(Xp,{ref:o,sideOffset:e,className:k("z-[999] min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md","data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...n})}));im.displayName=Xp.displayName;const cm=c.forwardRef(({className:t,inset:e,...n},o)=>s.jsx(Zp,{ref:o,className:k("relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",e&&"pl-8",t),...n}));cm.displayName=Zp.displayName;const lm=c.forwardRef(({className:t,children:e,checked:n,...o},a)=>s.jsxs(Jp,{ref:a,className:k("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),checked:n,...o,children:[s.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:s.jsx(tm,{children:s.jsx(ha,{className:"h-4 w-4"})})}),e]}));lm.displayName=Jp.displayName;const dm=c.forwardRef(({className:t,children:e,...n},o)=>s.jsxs(em,{ref:o,className:k("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...n,children:[s.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:s.jsx(tm,{children:s.jsx(ga,{className:"h-2 w-2 fill-current"})})}),e]}));dm.displayName=em.displayName;const um=c.forwardRef(({className:t,inset:e,...n},o)=>s.jsx(Qp,{ref:o,className:k("px-2 py-1.5 text-sm font-semibold",e&&"pl-8",t),...n}));um.displayName=Qp.displayName;const pm=c.forwardRef(({className:t,...e},n)=>s.jsx(nm,{ref:n,className:k("-mx-1 my-1 h-px bg-muted",t),...e}));pm.displayName=nm.displayName;const mm=({className:t,...e})=>s.jsx("span",{className:k("ml-auto text-xs tracking-widest opacity-60",t),...e});mm.displayName="DropdownMenuShortcut";var XS=Object.defineProperty,Ft=(t,e)=>XS(t,"name",{value:e,configurable:!0}),br,xi="HoverCard",[fm,zR]=ge(xi,[ut]),Ci=ut(),[QS,Si]=fm(xi),ZS=Ft(t=>{const{__scopeHoverCard:e,children:n,open:o,defaultOpen:a,onOpenChange:r,openDelay:i=700,closeDelay:l=300}=t,d=Ci(e),u=c.useRef(0),m=c.useRef(0),p=c.useRef(!1),f=c.useRef(!1),[g,h]=we({prop:o,defaultProp:a??!1,onChange:r,caller:xi}),_=c.useCallback(()=>{clearTimeout(m.current),u.current=window.setTimeout(()=>h(!0),i)},[i,h]),v=c.useCallback(()=>{clearTimeout(u.current),!p.current&&!f.current&&(m.current=window.setTimeout(()=>h(!1),l))},[l,h]),x=c.useCallback(()=>h(!1),[h]);return c.useEffect(()=>()=>{clearTimeout(u.current),clearTimeout(m.current)},[]),s.jsx(QS,{scope:e,open:g,onOpenChange:h,onOpen:_,onClose:v,onDismiss:x,hasSelectionRef:p,isPointerDownOnContentRef:f,children:s.jsx(Un,{...d,children:n})})},"HoverCard"),JS="HoverCardTrigger",e0=c.forwardRef(Ft(function(e,n){const{__scopeHoverCard:o,...a}=e,r=Si(JS,o),i=Ci(o);return s.jsx(Vn,{asChild:!0,...i,children:s.jsx(M.a,{"data-state":r.open?"open":"closed",...a,ref:n,onPointerEnter:I(e.onPointerEnter,ao(r.onOpen)),onPointerLeave:I(e.onPointerLeave,ao(r.onClose)),onFocus:I(e.onFocus,r.onOpen),onBlur:I(e.onBlur,r.onClose),onTouchStart:I(e.onTouchStart,l=>l.preventDefault())})})},"HoverCardTrigger")),t0="HoverCardPortal",[HR,n0]=fm(t0,{forceMount:void 0}),ts="HoverCardContent",o0=c.forwardRef(Ft(function(e,n){const o=n0(ts,e.__scopeHoverCard),{forceMount:a=o.forceMount,...r}=e,i=Si(ts,e.__scopeHoverCard);return s.jsx(xe,{present:a||i.open,children:s.jsx(a0,{"data-state":i.open?"open":"closed",...r,onPointerEnter:I(e.onPointerEnter,ao(i.onOpen)),onPointerLeave:I(e.onPointerLeave,ao(i.onClose)),ref:n})})},"HoverCardContent")),a0=c.forwardRef(Ft(function(e,n){const{__scopeHoverCard:o,onEscapeKeyDown:a,onPointerDownOutside:r,onFocusOutside:i,onInteractOutside:l,...d}=e,u=Si(ts,o),m=Ci(o),p=c.useRef(null),f=G(n,p),[g,h]=c.useState(!1);return c.useEffect(()=>{if(g){const _=document.body;return br=_.style.userSelect||_.style.webkitUserSelect,_.style.userSelect="none",_.style.webkitUserSelect="none",()=>{_.style.userSelect=br,_.style.webkitUserSelect=br}}},[g]),c.useEffect(()=>{if(p.current){const _=Ft(()=>{h(!1),u.isPointerDownOnContentRef.current=!1,setTimeout(()=>{document.getSelection()?.toString()!==""&&(u.hasSelectionRef.current=!0)})},"handlePointerUp");return document.addEventListener("pointerup",_),()=>{document.removeEventListener("pointerup",_),u.hasSelectionRef.current=!1,u.isPointerDownOnContentRef.current=!1}}},[u.isPointerDownOnContentRef,u.hasSelectionRef]),c.useEffect(()=>{p.current&&gm(p.current).forEach(v=>v.setAttribute("tabindex","-1"))}),s.jsx(nn,{asChild:!0,disableOutsidePointerEvents:!1,onInteractOutside:l,onEscapeKeyDown:a,onPointerDownOutside:r,onFocusOutside:I(i,_=>{_.preventDefault()}),onDismiss:u.onDismiss,children:s.jsx(Co,{...m,...d,onPointerDown:I(d.onPointerDown,_=>{_.currentTarget.contains(_.target)&&h(!0),u.hasSelectionRef.current=!1,u.isPointerDownOnContentRef.current=!0}),ref:f,style:{...d.style,userSelect:g?"text":void 0,WebkitUserSelect:g?"text":void 0,"--radix-hover-card-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-hover-card-content-available-width":"var(--radix-popper-available-width)","--radix-hover-card-content-available-height":"var(--radix-popper-available-height)","--radix-hover-card-trigger-width":"var(--radix-popper-anchor-width)","--radix-hover-card-trigger-height":"var(--radix-popper-anchor-height)"}})})},"HoverCardContentImpl"));function ao(t){return e=>e.pointerType==="touch"?void 0:t()}Ft(ao,"excludeTouch");function gm(t){const e=[],n=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT,{acceptNode:Ft(o=>o.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP,"acceptNode")});for(;n.nextNode();)e.push(n.currentNode);return e}Ft(gm,"getTabbableNodes");var r0=ZS,s0=e0,hm=o0;const i0=r0,c0=s0,_m=c.forwardRef(({className:t,align:e="center",sideOffset:n=4,...o},a)=>s.jsx(hm,{ref:a,align:e,sideOffset:n,className:k("z-50 w-64 roun
218ded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...o}));_m.displayName=hm.displayName;var l0=Object.defineProperty,Ie=(t,e)=>l0(t,"name",{value:e,configurable:!0}),Va="Menubar",[ns,d0,u0]=Gt(Va),[vm,KR]=ge(Va,[u0,Wt]),Oe=So(),ym=Wt(),[p0,ki]=vm(Va),m0=c.forwardRef(Ie(function(e,n){const{__scopeMenubar:o,value:a,onValueChange:r,defaultValue:i,loop:l=!0,dir:d,...u}=e,m=kt(d),p=ym(o),[f,g]=we({prop:a,onChange:r,defaultProp:i??"",caller:Va}),[h,_]=c.useState(null);return s.jsx(p0,{scope:o,value:f,onMenuOpen:c.useCallback(v=>{g(v),_(v)},[g]),onMenuClose:c.useCallback(()=>g(""),[g]),onMenuToggle:c.useCallback(v=>{g(x=>x?"":v),_(v)},[g]),dir:m,loop:l,children:s.jsx(ns.Provider,{scope:o,children:s.jsx(ns.Slot,{scope:o,children:s.jsx(ja,{asChild:!0,...p,orientation:"horizontal",loop:l,dir:m,currentTabStopId:h,onCurrentTabStopIdChange:_,children:s.jsx(M.div,{role:"menubar",...u,ref:n})})})})})},"Menubar")),bm="MenubarMenu",[f0,wm]=vm(bm),g0=Ie(t=>{const{__scopeMenubar:e,value:n,...o}=t,a=ce(),r=n||a||"LEGACY_REACT_AUTO_VALUE",i=ki(bm,e),l=Oe(e),d=c.useRef(null),u=c.useRef(!1),m=i.value===r;return c.useEffect(()=>{m||(u.current=!1)},[m]),s.jsx(f0,{scope:e,value:r,triggerId:ce(),triggerRef:d,contentId:ce(),wasKeyboardTriggerOpenRef:u,children:s.jsx(ri,{...l,open:m,onOpenChange:p=>{p||i.onMenuClose()},modal:!1,dir:i.dir,...o})})},"MenubarMenu"),Yc="MenubarTrigger",h0=c.forwardRef(Ie(function(e,n){const{__scopeMenubar:o,disabled:a=!1,...r}=e,i=ym(o),l=Oe(o),d=ki(Yc,o),u=wm(Yc,o),m=c.useRef(null),p=G(n,m,u.triggerRef),[f,g]=c.useState(!1),h=d.value===u.value;return s.jsx(ns.ItemSlot,{scope:o,value:u.value,disabled:a,children:s.jsx(Da,{asChild:!0,...i,focusable:!a,tabStopId:u.value,children:s.jsx(si,{asChild:!0,...l,children:s.jsx(M.button,{type:"button",role:"menuitem",id:u.triggerId,"aria-haspopup":"menu","aria-expanded":h,"aria-controls":h?u.contentId:void 0,"data-highlighted":f?"":void 0,"data-state":h?"open":"closed","data-disabled":a?"":void 0,disabled:a,...r,ref:p,onPointerDown:I(e.onPointerDown,_=>{!a&&_.button===0&&_.ctrlKey===!1&&(d.onMenuOpen(u.value),h||_.preventDefault())}),onPointerEnter:I(e.onPointerEnter,()=>{!!d.value&&!h&&(d.onMenuOpen(u.value),m.current?.focus())}),onKeyDown:I(e.onKeyDown,_=>{a||(["Enter"," "].includes(_.key)&&d.onMenuToggle(u.value),_.key==="ArrowDown"&&d.onMenuOpen(u.value),["Enter"," ","ArrowDown"].includes(_.key)&&(u.wasKeyboardTriggerOpenRef.current=!0,_.preventDefault()))}),onFocus:I(e.onFocus,()=>g(!0)),onBlur:I(e.onBlur,()=>g(!1))})})})})},"MenubarTrigger")),_0=Ie(t=>{const{__scopeMenubar:e,...n}=t,o=Oe(e);return s.jsx(ii,{...o,...n})},"MenubarPortal"),Xc="MenubarContent",v0=c.forwardRef(Ie(function(e,n){const{__scopeMenubar:o,align:a="start",...r}=e,i=Oe(o),l=ki(Xc,o),d=wm(Xc,o),u=d0(o),m=c.useRef(!1);return s.jsx(ci,{id:d.contentId,"aria-labelledby":d.triggerId,"data-radix-menubar-content":"",...i,...r,ref:n,align:a,onCloseAutoFocus:I(e.onCloseAutoFocus,p=>{!!!l.value&&!m.current&&d.triggerRef.current?.focus(),m.current=!1,p.preventDefault()}),onFocusOutside:I(e.onFocusOutside,p=>{const f=p.target;u().some(h=>h.ref.current?.contains(f))&&p.preventDefault()}),onInteractOutside:I(e.onInteractOutside,()=>{m.current=!0}),onEntryFocus:p=>{d.wasKeyboardTriggerOpenRef.current||p.preventDefault()},onKeyDown:I(e.onKeyDown,p=>{if(["ArrowRight","ArrowLeft"].includes(p.key)){const f=p.target,g=f.hasAttribute("data-radix-menubar-subtrigger"),h=f.closest("[data-radix-menubar-content]")!==p.currentTarget,v=(l.dir==="rtl"?"ArrowRight":"ArrowLeft")===p.key;if(!v&&g||h&&v)return;let y=u().filter(C=>!C.disabled).map(C=>C.value);v&&y.reverse();const b=y.indexOf(d.value);y=l.loop?xm(y,b+1):y.slice(b+1);const[S]=y;S&&l.onMenuOpen(S)}},{checkForDefaultPrevented:!1}),style:{...e.style,"--radix-menubar-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-menubar-content-available-width":"var(--radix-popper-available-width)","--radix-menubar-content-available-height":"var(--radix-popper-available-height)","--radix-menubar-tr
218igger-width":"var(--radix-popper-anchor-width)","--radix-menubar-trigger-height":"var(--radix-popper-anchor-height)"}})},"MenubarContent")),y0=c.forwardRef(Ie(function(e,n){const{__scopeMenubar:o,...a}=e,r=Oe(o);return s.jsx(li,{...r,...a,ref:n})},"MenubarGroup")),b0=c.forwardRef(Ie(function(e,n){const{__scopeMenubar:o,...a}=e,r=Oe(o);return s.jsx(di,{...r,...a,ref:n})},"MenubarLabel")),w0=c.forwardRef(Ie(function(e,n){const{__scopeMenubar:o,...a}=e,r=Oe(o);return s.jsx(ui,{...r,...a,ref:n})},"MenubarItem")),x0=c.forwardRef(Ie(function(e,n){const{__scopeMenubar:o,...a}=e,r=Oe(o);return s.jsx(pi,{...r,...a,ref:n})},"MenubarCheckboxItem")),C0=c.forwardRef(Ie(function(e,n){const{__scopeMenubar:o,...a}=e,r=Oe(o);return s.jsx(mi,{...r,...a,ref:n})},"MenubarRadioGroup")),S0=c.forwardRef(Ie(function(e,n){const{__scopeMenubar:o,...a}=e,r=Oe(o);return s.jsx(fi,{...r,...a,ref:n})},"MenubarRadioItem")),k0=c.forwardRef(Ie(function(e,n){const{__scopeMenubar:o,...a}=e,r=Oe(o);return s.jsx(gi,{...r,...a,ref:n})},"MenubarItemIndicator")),P0=c.forwardRef(Ie(function(e,n){const{__scopeMenubar:o,...a}=e,r=Oe(o);return s.jsx(hi,{...r,...a,ref:n})},"MenubarSeparator")),E0="MenubarSub",I0=Ie(t=>{const{__scopeMenubar:e,children:n,open:o,onOpenChange:a,defaultOpen:r}=t,i=Oe(e),[l,d]=we({prop:o,defaultProp:r??!1,onChange:a,caller:E0});return s.jsx(_i,{...i,open:l,onOpenChange:d,children:n})},"MenubarSub"),T0=c.forwardRef(Ie(function(e,n){const{__scopeMenubar:o,...a}=e,r=Oe(o);return s.jsx(vi,{"data-radix-menubar-subtrigger":"",...r,...a,ref:n})},"MenubarSubTrigger")),A0=c.forwardRef(Ie(function(e,n){const{__scopeMenubar:o,...a}=e,r=Oe(o);return s.jsx(yi,{...r,"data-radix-menubar-content":"",...a,ref:n,style:{...e.style,"--radix-menubar-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-menubar-content-available-width":"var(--radix-popper-available-width)","--radix-menubar-content-available-height":"var(--radix-popper-available-height)","--radix-menubar-trigger-width":"var(--radix-popper-anchor-width)","--radix-menubar-trigger-height":"var(--radix-popper-anchor-height)"}})},"MenubarSubContent"));function xm(t,e){return t.map((n,o)=>t[(e+o)%t.length])}Ie(xm,"wrapArray");var Cm=m0,R0=g0,Sm=h0,km=_0,Pm=v0,M0=y0,Em=b0,Im=w0,Tm=x0,N0=C0,Am=S0,Rm=k0,Mm=P0,O0=I0,Nm=T0,Om=A0;const j0=R0,D0=M0,L0=km,F0=O0,U0=N0,jm=c.forwardRef(({className:t,...e},n)=>s.jsx(Cm,{ref:n,className:k("flex h-9 items-center space-x-1 rounded-md border bg-background p-1 shadow-sm",t),...e}));jm.displayName=Cm.displayName;const Dm=c.forwardRef(({className:t,...e},n)=>s.jsx(Sm,{ref:n,className:k("flex cursor-default select-none items-center rounded-sm px-3 py-1 text-sm font-medium outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",t),...e}));Dm.displayName=Sm.displayName;const Lm=c.forwardRef(({className:t,inset:e,children:n,...o},a)=>s.jsxs(Nm,{ref:a,className:k("flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",e&&"pl-8",t),...o,children:[n,s.jsx(fo,{className:"ml-auto"})]}));Lm.displayName=Nm.displayName;const Fm=c.forwardRef(({className:t,...e},n)=>s.jsx(Om,{ref:n,className:k("z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...e}));Fm.displayName=Om.displayName;const Um=c.forwardRef(({className:t,align:e="start",alignOffset:n=-4,sideOffset:o=8,...a},r)=>s.jsx(km,{children:s.jsx(Pm,{ref:r,align:e,alignOffset:n,sideOffset:o,className:k("z-50 min-w-[12rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:sli
218de-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...a})}));Um.displayName=Pm.displayName;const Vm=c.forwardRef(({className:t,inset:e,...n},o)=>s.jsx(Im,{ref:o,className:k("relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",e&&"pl-8",t),...n}));Vm.displayName=Im.displayName;const $m=c.forwardRef(({className:t,children:e,checked:n,...o},a)=>s.jsxs(Tm,{ref:a,className:k("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),checked:n,...o,children:[s.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:s.jsx(Rm,{children:s.jsx(ha,{className:"h-4 w-4"})})}),e]}));$m.displayName=Tm.displayName;const Bm=c.forwardRef(({className:t,children:e,...n},o)=>s.jsxs(Am,{ref:o,className:k("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...n,children:[s.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:s.jsx(Rm,{children:s.jsx(ga,{className:"h-2 w-2 fill-current"})})}),e]}));Bm.displayName=Am.displayName;const Gm=c.forwardRef(({className:t,inset:e,...n},o)=>s.jsx(Em,{ref:o,className:k("px-2 py-1.5 text-sm font-semibold",e&&"pl-8",t),...n}));Gm.displayName=Em.displayName;const qm=c.forwardRef(({className:t,...e},n)=>s.jsx(Mm,{ref:n,className:k("-mx-1 my-1 h-px bg-muted",t),...e}));qm.displayName=Mm.displayName;const Wm=({className:t,...e})=>s.jsx("span",{className:k("ml-auto text-xs tracking-widest text-muted-foreground",t),...e});Wm.displayName="MenubarShortcut";var V0=Object.defineProperty,$0=(t,e)=>V0(t,"name",{value:e,configurable:!0});function Pi(t){const e=c.useRef({value:t,previous:t});return c.useMemo(()=>(e.current.value!==t&&(e.current.previous=e.current.value,e.current.value=t),e.current.previous),[t])}$0(Pi,"usePrevious");var B0=Object.defineProperty,G0=(t,e)=>
218B0(t,"name",{value:e,configurable:!0}),zm=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),q0=c.forwardRef(G0(function(e,n){return s.jsx(M.span,{...e,ref:n,style:{...zm,...e.style}})},"VisuallyHidden")),Hm=q0,W0=Object.defineProperty,re=(t,e)=>W0(t,"name",{value:e,configurable:!0}),$n="NavigationMenu",[Ei,Km,z0]=Gt($n),[os,H0,K0]=Gt($n),[Ii,YR]=ge($n,[z0,K0]),[Y0,tt]=Ii($n),[X0,Q0]=Ii($n),Z0=c.forwardRef(re(function(e,n){const{__scopeNavigationMenu:o,value:a,onValueChange:r,defaultValue:i,delayDuration:l=200,skipDelayDuration:d=300,orientation:u="horizontal",dir:m,...p}=e,[f,g]=c.useState(null),h=G(n,g),_=kt(m),v=c.useRef(0),x=c.useRef(0),w=c.useRef(0),[y,b]=c.useState(!0),[S,C]=we({prop:a,onChange:re(R=>{const F=R!=="",j=d>0;F?(window.clearTimeout(w.current),j&&b(!1)):(window.clearTimeout(w.current),w.current=window.setTimeout(()=>b(!0),d)),r?.(R)},"onChange"),defaultProp:i??"",caller:$n}),P=c.useCallback(()=>{window.clearTimeout(x.current),x.current=window.setTimeout(()=>C(""),150)},[C]),T=c.useCallback(R=>{window.clearTimeout(x.current),C(R)},[C]),A=c.useCallback(R=>{S===R?window.clearTimeout(x.current):v.current=window.setTimeout(()=>{window.clearTimeout(x.current),C(R)},l)},[S,C,l]);return c.useEffect(()=>()=>{window.clearTimeout(v.current),window.clearTimeout(x.current),window.clearTimeout(w.current)},[]),s.jsx(J0,{scope:o,isRootMenu:!0,value:S,dir:_,orientation:u,rootNavigationMenu:f,onTriggerEnter:R=>{window.clearTimeout(v.current),y?A(R):T(R)},onTriggerLeave:()=>{window.clearTimeout(v.current),P()},onContentEnter:()=>window.clearTimeout(x.current),onContentLeave:P,onItemSelect:R=>{C(F=>F===R?"":R)},onItemDismiss:()=>C(""),children:s.jsx(M.nav,{"aria-label":"Main","data-orientation":u,dir:_,...p,ref:h})})},"NavigationMenu")),J0=re(t=>{const{scope:e,isRootMenu:n,rootNavigationMenu:o,dir:a,orientation:r,children:i,value:l,onItemSelect:d,onItemDismiss:u,onTriggerEnter:m,onTriggerLeave:p,onContentEnter:f,onContentLeave:g}=t,[h,_]=c.useState(null),[v,x]=c.useState(new Map),[w,y]=c.useState(null);return s.jsx(Y0,{scope:e,isRootMenu:n,rootNavigationMenu:o,value:l,previousValue:Pi(l),baseId:ce(),dir:a,orientation:r,viewport:h,onViewportChange:_,indicatorTrack:w,onIndicatorTrackChange:y,onTriggerEnter:fe(m),onTriggerLeave:fe(p),onContentEnter:fe(f),onContentLeave:fe(g),onItemSelect:fe(d),onItemDismiss:fe(u),onViewportContentChange:c.useCallback((b,S)=>{x(C=>(C.set(b,S),new Map(C)))},[]),onViewportContentRemove:c.useCallback(b=>{x(S=>S.has(b)?(S.delete(b),new Map(S)):S)},[]),children:s.jsx(Ei.Provider,{scope:e,children:s.jsx(X0,{scope:e,items:v,children:i})})})},"NavigationMenuProvider"),e1="NavigationMenuList",t1=c.forwardRef(re(function(e,n){const{__scopeNavigationMenu:o,...a}=e,r=tt(e1,o),i=s.jsx(M.ul,{"data-orientation":r.orientation,...a,ref:n});return s.jsx(M.div,{style:{position:"relative"},ref:r.onIndicatorTrackChange,children:s.jsx(Ei.Slot,{scope:o,children:r.isRootMenu?s.jsx(Jm,{asChild:!0,children:i}):i})})},"NavigationMenuList")),n1="NavigationMenuItem",[o1,Ym]=Ii(n1),a1=c.forwardRef(re(function(e,n){const{__scopeNavigationMenu:o,value:a,...r}=e,i=ce(),l=a||i||"LEGACY_REACT_AUTO_VALUE",d=c.useRef(null),u=c.useRef(null),m=c.useRef(null),p=c.useRef(()=>{}),f=c.useRef(!1),g=c.useCallback((_="start")=>{if(d.current){p.current();const v=ia(d.current);v.length&&$a(_==="start"?v:v.reverse())}},[]),h=c.useCallback(()=>{if(d.current){const _=ia(d.current);_.length&&(p.current=tf(_))}},[]);return s.jsx(o1,{scope:o,value:l,triggerRef:u,contentRef:d,focusProxyRef:m,wasEscapeCloseRef:f,onEntryKeyDown:g,onFocusProxyEnter:g,onRootContentClose:h,onContentFocusOutside:h,children:s.jsx(M.li,{...r,ref:n})})},"NavigationMenuItem")),Qc="NavigationMenuTrigger",r1=c.forwardRef(re(function(e,n){const{__scopeNavigationMenu:o,disabled:a,...r}=e,i=tt(Qc,e.__scopeNavigationMenu),l=Ym(Qc,e.__scopeNavigationMenu),d=c.useRef(null),u=G(d,l.triggerRef,n),m=Ti(i.baseId,l.value),p=Ai(i.baseId,l.value),f=c.useRef(!1),g=c.useRef(!1),h=l.value===i.value;return s.jsxs(s.Fragment,{children:[s.jsx(Ei.ItemSlot,{scope:o,value:l.value,children:s.jsx(ef,{asChild:!0,children:s.jsx(M.button,{id:m,disabled:a,"data-disabled":a?"":void 0,"data-state":Ba(h),"aria-expanded":h,"aria-controls":h?p:void 0,...r,ref:u,onPointerEnter:I(e.onPointerEnter,()=>{g.current=!1,l.wasEscapeCloseRef.current=!1}),onPointerMove:I(e.onPointerMove,so(()=>{a||g.current||l.wasEscapeCloseRef.current||f.current||(i.onTriggerEnter(l.value),f.current=!0)})),onPointerLeave:I(e.onPointerLeave,so(()=>{a||(i.onTriggerLeave(),f.current=!1)})),onClick:I(e.onClick,()=>{i.onItemSelect(l.value),g.current=h}),onKeyDown:I(e.onKeyDown,_=>{const x={horizontal:"ArrowDown",vertical:i.dir==="rtl"?"ArrowLeft":"ArrowRight"}[i.orientation];h&&_.key===x&&(l.onEntryKeyDown(),_.preventDefault())})})})}),h&&s.jsxs(s.Fragment,{children:[s.jsx(Hm,{"aria-hidden":!0,tabIndex:0,ref:l.focusProxyRef,onFocus:_=>{const v=l.contentRef.current,x=_.relatedTarget,w=x===d.current,y=v?.contains(x);(w||!y)&&l.onFocusProxyEnter(w?"start":"end")}}),i.viewport&&s.jsx("span",{"aria-owns":p})]})]})},"NavigationMenuTrigger")),Zc="navigationMenu.linkSelect",s1=c.forwardRef(re(function(e,n){const{__scopeNavigationMenu:o,active:a,onSelect:r,...i}=e;return s.jsx(ef,{asChild:!0,children:s.jsx(M.a,{"data-active":a?"":void 0,"aria-current":a?"page":void 0,...i,ref:n,onClick:I(e.onClick,l=>{const d=l.target,u=new CustomEvent(Zc,{bubbles:!0,cancelable:!0});if(d.addEventListener(Zc,m=>r?.(m),{once:!0}),Zn(d,u),!u.defaultPrevented&&!l.metaKey){const m=new CustomEvent(ea,{bubbles:!0,cancelable:!0});Zn(d,m)}},{checkForDefaultPrevented:!1})})})},"NavigationMenuLink")),Xm="NavigationMenuIndicator",i1=c.forwardRef(re(function(e,n){const{forceMount:o,...a}=e,r=tt(Xm,e.__scopeNavigationMenu),i=!!r.value;return r.indicatorTrack?An.createPortal(s.jsx(xe,{present:o||i,children:s.jsx(c1,{...a,ref:n})}),r.indicatorTrack):null},"NavigationMenuIndicator")),c1=c.forwardRef(re(function(e,n){const{__scopeNavigationMenu:o,...a}=e,r=tt(Xm,o),i=Km(o),[l,d]=c.useState(null),[u,m]=c.useState(null),p=r.orientation==="horizontal",f=!!r.value;c.useEffect(()=>{const _=i().find(v=>v.value===r.value)?.ref.current;_&&d(_)},[i,r.value]);const g=re(()=>{l&&m({size:p?l.offsetWidth:l.offsetHeight,offset:p?l.offsetLeft:l.offsetTop})},"handlePositionChange");return ca(l,g),ca(r.indicatorTrack,g),u?s.jsx(M.div,{"aria-hidden":!0,"data-state":f?"visible":"hidden","data-orientation":r.orientation,...a,ref:n,style:{position:"absolute",...p?{left:0,width:u.size+"px",transform:`translateX(${u.offset}px)`,"--radix-navigation-menu-indicator-translate-x":`${u.offset}px`}:{top:0,height:u.size+"px",transform:`translateY(${u.offset}px)`,"--radix-navigation-menu-indicator-translate-y":`${u.offset}px`},...a.style}}):null},"NavigationMenuIndicatorImpl")),ro="NavigationMenuContent",l1=c.forwardRef(re(function(e,n){const{forceMount:o,...a}=e,r=tt(ro,e.__scopeNavigationMenu),i=Ym(ro,e.__scopeNavigationMenu),l=G(i.contentRef,n),d=i.value===r.value,u={value:i.value,triggerRef:i.triggerRef,focu
218sProxyRef:i.focusProxyRef,wasEscapeCloseRef:i.wasEscapeCloseRef,onContentFocusOutside:i.onContentFocusOutside,onRootContentClose:i.onRootContentClose,...a};return r.viewport?s.jsx(d1,{forceMount:o,...u,ref:l}):s.jsx(xe,{present:o||d,children:s.jsx(Qm,{"data-state":Ba(d),...u,ref:l,onPointerEnter:I(e.onPointerEnter,r.onContentEnter),onPointerLeave:I(e.onPointerLeave,so(r.onContentLeave)),style:{pointerEvents:!d&&r.isRootMenu?"none":void 0,...u.style}})})},"NavigationMenuContent")),d1=c.forwardRef(re(function(e,n){const o=tt(ro,e.__scopeNavigationMenu),{onViewportContentChange:a,onViewportContentRemove:r}=o;return ie(()=>{a(e.value,{ref:n,...e})},[e,n,a]),ie(()=>()=>r(e.value),[e.value,r]),null},"ViewportContentMounter")),ea="navigationMenu.rootContentDismiss",Qm=c.forwardRef(re(function(e,n){const{__scopeNavigationMenu:o,value:a,triggerRef:r,focusProxyRef:i,wasEscapeCloseRef:l,onRootContentClose:d,onContentFocusOutside:u,...m}=e,p=tt(ro,o),f=c.useRef(null),g=G(f,n),h=Ti(p.baseId,a),_=Ai(p.baseId,a),v=Km(o),x=c.useRef(null),{onItemDismiss:w}=p;c.useEffect(()=>{const b=f.current;if(p.isRootMenu&&b){const S=re(()=>{w(),d(),b.contains(document.activeElement)&&r.current?.focus()},"handleClose");return b.addEventListener(ea,S),()=>b.removeEventListener(ea,S)}},[p.isRootMenu,e.value,r,w,d]);const y=c.useMemo(()=>{const S=v().map(F=>F.value);p.dir==="rtl"&&S.reverse();const C=S.indexOf(p.value),P=S.indexOf(p.previousValue),T=a===p.value,A=P===S.indexOf(a);if(!T&&!A)return x.current;const R=(()=>{if(C!==P){if(T&&P!==-1)return C>P?"from-end":"from-start";if(A&&C!==-1)return C>P?"to-start":"to-end"}return null})();return x.current=R,R},[p.previousValue,p.value,p.dir,v,a]);return s.jsx(Jm,{asChild:!0,children:s.jsx(nn,{id:_,"aria-labelledby":h,"data-motion":y,"data-orientation":p.orientation,...m,ref:g,disableOutsidePointerEvents:!1,onDismiss:()=>{const b=new Event(ea,{bubbles:!0,cancelable:!0});f.current?.dispatchEvent(b)},onFocusOutside:I(e.onFocusOutside,b=>{u();const S=b.target;p.rootNavigationMenu?.contains(S)&&b.preventDefault()}),onPointerDownOutside:I(e.onPointerDownOutside,b=>{const S=b.target,C=v().some(T=>T.ref.current?.contains(S)),P=p.isRootMenu&&p.viewport?.contains(S);(C||P||!p.isRootMenu)&&b.preventDefault()}),onKeyDown:I(e.onKeyDown,b=>{const S=b.altKey||b.ctrlKey||b.metaKey;if(b.key==="Tab"&&!S){const P=ia(b.currentTarget),T=document.activeElement,A=P.findIndex(j=>j===T),F=b.shiftKey?P.slice(0,A).reverse():P.slice(A+1,P.length);$a(F)?b.preventDefault():i.current?.focus()}}),onEscapeKeyDown:I(e.onEscapeKeyDown,b=>{l.current=!0})})})},"NavigationMenuContentImpl")),Zm="NavigationMenuViewport",u1=c.forwardRef(re(function(e,n){const{forceMount:o,...a}=e,i=!!tt(Zm,e.__scopeNavigationMenu).value;return s.jsx(xe,{present:o||i,children:s.jsx(p1,{...a,ref:n})})},"NavigationMenuViewport")),p1=c.forwardRef(re(function(e,n){const{__scopeNavigationMenu:o,children:a,...r}=e,i=tt(Zm,o),l=G(n,i.onViewportChange),d=Q0(ro,e.__scopeNavigationMenu),[u,m]=c.useState(null),[p,f]=c.useState(null),g=u?u?.width+"px":void 0,h=u?u?.height+"px":void 0,_=!!i.value,v=_?i.value:i.previousValue;return ca(p,re(()=>{p&&m({width:p.offsetWidth,height:p.offsetHeight})},"handleSizeChange")),s.jsx(M.div,{"data-state":Ba(_),"data-orientation":i.orientation,...r,ref:l,style:{pointerEvents:!_&&i.isRootMenu?"none":void 0,"--radix-navigation-menu-viewport-width":g,"--radix-navigation-menu-viewport-height":h,...r.style},onPointerEnter:I(e.onPointerEnter,i.onContentEnter),onPointerLeave:I(e.onPointerLeave,so(i.onContentLeave)),children:Array.from(d.items).map(([w,{ref:y,forceMount:b,...S}])=>{const C=v===w;return s.jsx(xe,{present:b||C,children:s.jsx(m1,{...S,contentRef:y,isActive:C,onActiveContentChange:f})},w)})})},"NavigationMenuViewportImpl")),m1=re(({contentRef:t,isActive:e,onActiveContentChange:n,...o})=>{const a=c.useCallback(i=>{e&&i&&n(i)},[e,n]),r=G(t,a);return s.jsx(Qm,{...o,ref:r})},"NavigationMenuViewportItem"),f1="FocusGroup",Jm=c.forwardRef(re(function(e,n){const{__scopeNavigationMenu:o,...a}=e,r=tt(f1,o);return s.jsx(os.Provider,{scope:o,children:s.jsx(os.Slot,{scope:o,children:s.jsx(M.div,{dir:r.dir,...a,ref:n})})})},"FocusGroup")),Jc=["ArrowRight","ArrowLeft","ArrowUp","ArrowDown"],g1="FocusGroupItem",ef=c.forwardRef(re(function(e,n){const{__scopeNavigationMenu:o,...a}=e,r=H0(o),i=tt(g1,o);return s.jsx(os.ItemSlot,{scope:o,children:s.jsx(M.button,{...a,ref:n,onKeyDown:I(e.onKeyDown,l=>{if(["Home","End",...Jc].includes(l.key)){let u=r().map(f=>f.ref.current);if([i.dir==="rtl"?"ArrowRight":"ArrowLeft","ArrowUp","End"].includes(l.key)&&u.reverse(),Jc.includes(l.key)){const f=u.indexOf(l.currentTarget);u=u.slice(f+1)}setTimeout(()=>$a(u)),l.preventDefault()}})})})},"FocusGroupItem"));function ia(t){const e=[],n=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT,{acceptNode:re(o=>{const a=o.tagName==="INPUT"&&o.type==="hidden";return o.disabled||o.hidden||a?NodeFilter.FILTER_SKIP:o.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;n.nextNode();)e.push(n.currentNode);return e}re(ia,"getTabbableCandidates");function $a(t){const e=document.activeElement;return t.some(n=>n===e?!0:(n.focus(),document.activeElement!==e))}
218re($a,"focusFirst");function tf(t){return t.forEach(e=>{e.dataset.tabindex=e.getAttribute("tabindex")||"",e.setAttribute("tabindex","-1")}),()=>{t.forEach(e=>{const n=e.dataset.tabindex;e.setAttribute("tabindex",n)})}}re(tf,"removeFromTabOrder");function ca(t,e){const n=fe(e);ie(()=>{let o=0;if(t){const a=new ResizeObserver(()=>{cancelAnimationFrame(o),o=window.requestAnimationFrame(n)});return a.observe(t),()=>{window.cancelAnimationFrame(o),a.unobserve(t)}}},[t,n])}re(ca,"useResizeObserver");function Ba(t){return t?"open":"closed"}re(Ba,"getOpenState");function Ti(t,e){return`${t}-trigger-${e}`}re(Ti,"makeTriggerId");function Ai(t,e){return`${t}-content-${e}`}re(Ai,"makeContentId");function so(t){return e=>e.pointerType==="mouse"?t(e):void 0}re(so,"whenMouse");var nf=Z0,of=t1,h1=a1,af=r1,_1=s1,rf=i1,sf=l1,cf=u1;const lf=c.forwardRef(({className:t,children:e,...n},o)=>s.jsxs(nf,{ref:o,className:k("relative z-10 flex max-w-max flex-1 items-center justify-center",t),...n,children:[e,s.jsx(Ri,{})]}));lf.displayName=nf.displayName;const df=c.forwardRef(({className:t,...e},n)=>s.jsx(of,{ref:n,className:k("group flex flex-1 list-none items-center justify-center space-x-1",t),...e}));df.displayName=of.displayName;const v1=h1,y1=$t("group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[active]:bg-accent/50 data-[state=open]:bg-accent/50"),uf=c.forwardRef(({className:t,children:e,...n},o)=>s.jsxs(af,{ref:o,className:k(y1(),"group",t),...n,children:[e," ",s.jsx(fa,{className:"relative top-[1px] ml-1 h-3 w-3 transition duration-200 group-data-[state=open]:rotate-180","aria-hidden":"true"})]}));uf.displayName=af.displayName;const pf=c.forwardRef(({className:t,...e},n)=>s.jsx(sf,{ref:n,className:k("left-0 top-0 w-full data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 md:absolute md:w-auto",t),...e}));pf.displayName=sf.displayName;const b1=_1,Ri=c.forwardRef(({className:t,...e},n)=>s.jsx("div",{className:k("absolute left-0 top-full flex justify-center"),children:s.jsx(cf,{className:k("origin-top-center relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 md:w-[var(--radix-navigation-menu-viewport-width)]",t),ref:n,...e})}));Ri.displayName=cf.displayName;const mf=c.forwardRef(({className:t,...e},n)=>s.jsx(rf,{ref:n,className:k("top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in",t),...e,children:s.jsx("div",{className:"relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md"})}));mf.displayName=rf.displayName;const as=c.forwardRef(({className:t,...e},n)=>s.jsx("nav",{ref:n,role:"navigation","aria-label":"pagination",className:k("mx-auto flex w-full justify-center",t),...e}));as.displayName="PaginationNav";const Mi=c.forwardRef(({className:t,...e},n)=>s.jsx("ul",{ref:n,className:k("flex flex-row items-center gap-1 list-none m-0 p-0",t),...e}));Mi.displayName="PaginationContent";const wn=c.forwardRef(({className:t,...e},n)=>s.jsx("li",{ref:n,className:k("list-none",t),...e}));wn.displayName="PaginationItem";const Yt=({className:t,isActive:e,size:n="icon",...o})=>s.jsx("a",{"aria-current":e?"page":void 0,className:k(Pa({variant:e?"outline":"ghost",size:n}),"hover:bg-white/10 text-foreground",t),...o});Yt.displayName="PaginationLink";const ff=({className:t,...e})=>s.jsxs(Yt,{"aria-label":"Go to previous page",size:"default",className:k("gap-1 pl-2.5",t),...e,children:[s.jsx(Al,{className:"h-4 w-4"}),s.jsx("span",{children:"Previous"})]});ff.displayName="PaginationPrevious";const gf=({className:t,...e})=>s.jsxs(Yt,{"aria-label":"Go to next page",size:"default",className:k("gap-1 pr-2.5",t),...e,children:[s.jsx("span",{children:"Next"}),s.jsx(fo,{className:"h-4 w-4"})]});gf.displayName="PaginationNext";const Ni=({className:t,...e})=>
218s.jsxs("span",{"aria-hidden":!0,className:k("flex h-9 w-9 items-center justify-center",t),...e,children:[s.jsx(Dh,{className:"h-4 w-4"}),s.jsx("span",{className:"sr-only",children:"More pages"})]});Ni.displayName="PaginationEllipsis";const hf=c.forwardRef((t,e)=>{if("total"in t&&("value"in t||"page"in t)){const{total:n,value:o,page:a,onChange:r,siblings:i=1,boundaries:l=1,disabled:d=!1,className:u,...m}=t,p=o??a??1;if(n<=0)return null;const g=(()=>{const h=[];for(let x=1;x<=Math.min(l,n);x++)h.push(x);const _=Math.max(l+1,p-i),v=Math.min(n-l,p+i);_>l+1&&h.push("ellipsis");for(let x=_;x<=v;x++)x>l&&x<=n-l&&h.push(x);v<n-l&&h.push("ellipsis");for(let x=Math.max(n-l+1,l+1);x<=n;x++)h.includes(x)||h.push(x);return h})();return s.jsx(as,{ref:e,className:k(u),...m,children:s.jsxs(Mi,{children:[s.jsx(wn,{children:s.jsx(Yt,{href:"#",onClick:h=>{h.preventDefault(),!d&&p>1&&r(p-1)},className:k("gap-1",(p===1||d)&&"pointer-events-none opacity-40"),"aria-label":"Go to previous page","aria-disabled":d||p===1,children:s.jsx(Al,{className:"h-4 w-4","aria-hidden":"true"})})}),g.map((h,_)=>h==="ellipsis"?s.jsx(wn,{children:s.jsx(Ni,{})},`ellipsis-${_}`):s.jsx(wn,{children:s.jsx(Yt,{href:"#",isActive:h===p,onClick:v=>{v.preventDefault(),d||r(h)},className:k("min-w-[2.5rem] w-auto px-2",d&&"pointer-events-none opacity-40"),"aria-disabled":d,children:h})},h)),s.jsx(wn,{children:s.jsx(Yt,{href:"#",onClick:h=>{h.preventDefault(),!d&&p<n&&r(p+1)},className:k("gap-1",(p===n||d)&&"pointer-events-none opacity-40"),"aria-label":"Go to next page","aria-disabled":d||p===n,children:s.jsx(fo,{className:"h-4 w-4","aria-hidden":"true"})})})]})})}return s.jsx(as,{ref:e,...t})});hf.displayName="Pagination";var w1=Object.defineProperty,Tt=(t,e)=>w1(t,"name",{value:e,configurable:!0}),Oi="Popover",[_f,XR]=ge(Oi,[ut]),Ga=ut(),[x1,cn]=_f(Oi),C1=Tt(t=>{const{__scopePopover:e,children:n,open:o,defaultOpen:a,onOpenChange:r,modal:i=!1}=t,l=Ga(e),d=c.useRef(null),[u,m]=c.useState(!1),[p,f]=we({prop:o,defaultProp:a??!1,onChange:r,caller:Oi});return s.jsx(Un,{...l,children:s.jsx(x1,{scope:e,contentId:ce(),triggerRef:d,open:p,onOpenChange:f,onOpenToggle:c.useCallback(()=>f(g=>!g),[f]),hasCustomAnchor:u,onCustomAnchorAdd:c.useCallback(()=>m(!0),[]),onCustomAnchorRemove:c.useCallback(()=>m(!1),[]),modal:i,children:n})})},"Popover"),S1="PopoverAnchor",k1=c.forwardRef(Tt(function(e,n){const{__scopePopover:o,...a}=e,r=cn(S1,o),i=Ga(o),{onCustomAnchorAdd:l,onCustomAnchorRemove:d}=r;return c.useEffect(()=>(l(),()=>d()),[l,d]),s.jsx(Vn,{...i,...a,ref:n})},"PopoverAnchor")),P1="PopoverTrigger",E1=c.forwardRef(Tt(function(e,n){const{__scopePopover:o,...a}=e,r=cn(P1,o),i=Ga(o),l=G(n,r.triggerRef),d=s.jsx(M.button,{type:"button","aria-haspopup":"dialog","aria-expanded":r.open,"aria-controls":r.open?r.contentId:void 0,"data-state":ji(r.open),...a,ref:l,onClick:I(e.onClick,r.onOpenToggle)});return r.hasCustomAnchor?d:s.jsx(Vn,{asChild:!0,...i,children:d})},"PopoverTrigger")),vf="PopoverPortal",[I1,T1]=_f(vf,{forceMount:void 0}),A1=Tt(t=>{const{__scopePopover:e,forceMount:n,children:o,container:a}=t,r=cn(vf,e);return s.jsx(I1,{scope:e,forceMount:n,children:s.jsx(xe,{present:n||r.open,children:s.jsx(vo,{asChild:!0,container:a,children:o})})})},"PopoverPortal"),io="PopoverContent",R1=c.forwardRef(Tt(function(e,n){const o=T1(io,e.__scopePopover),{forceMount:a=o.forceMount,...r}=e,i=cn(io,e.__scopePopover);return s.jsx(xe,{present:a||i.open,children:i.modal?s.jsx(N1,{...r,ref:n}):s.jsx(O1,{...r,ref:n})})},"PopoverContent")),M1=Qe("PopoverContent.RemoveScroll"),N1=c.forwardRef(Tt(function(e,n){const o=cn(io,e.__scopePopover),a=c.useRef(null),r=G(n,a),i=c.useRef(!1);return c.useEffect(()=>{const l=a.current;if(l)return Sa(l)},[]),s.jsx(yo,{as:M1,allowPinchZoom:!0,children:s.jsx(yf,{...e,ref:r,trapFocus:o.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:I(e.onCloseAutoFocus,l=>{l.preventDefault(),i.current||o.triggerRef.current?.focus()}),onPointerDownOutside:I(e.onPointerDownOutside,l=>{const d=l.detail.originalEvent,u=d.button===0&&d.ctrlKey===!0,m=d.button===2||u;i.current=m},{checkForDefaultPrevented:!1}),onFocusOutside:I(e.onFocusOutside,l=>l.preventDefault(),{checkForDefaultPrevented:!1})})})},"PopoverContentModal")),O1=c.forwardRef(Tt(function(e,n){const o=cn(io,e.__scopePopover),a=c.useRef(!1),r=c.useRef(!1);return s.jsx(yf,{...e,ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:i=>{e.onCloseAutoFocus?.(i),i.defaultPrevented||(a.current||o.triggerRef.current?.focus(),i.preventDefault()),a.current=!1,r.current=!1},onInteractOutside:i=>{e.onInteractOutside?.(i),i.defaultPrevented||(a.current=!0,i.detail.originalEvent.type==="pointerdown"&&(r.current=!0));const l=i.target;o.triggerRef.current?.contains(l)&&i.preventDefault(),i.detail.originalEvent.type==="focusin"&&r.current&&i.preventDefault()}})},"PopoverContentNonModal")),yf=c.forwardRef(Tt(function(e,n){const{__scopePopover:o,trapFocus:a,onOpenAutoFocus:r,onCloseAutoFocus:i,disableOutsidePointerEvents:l,onEscapeKeyDown:d,onPointerDownOutside:u,onFocusOutside:m,onInteractOutside:p,...f}=e,g=cn(io,o),h=Ga(o);return On(),s.jsx(xa,{asChild:!0,loop:!0,trapped:a,onMountAutoFocus:r,onUnmountAutoFocus:i,children:s.jsx(nn,{asChild:!0,disableOutsidePointerEvents:l,onInteractOutside:p,onEscapeKeyDown:d,onPointerDownOutside:u,onFocusOutside:m,onDismiss:()=>g.onOpenChange(!1),deferPointerDownOutside:!0,children:s.jsx(Co,{"data-state":ji(g.open),role:"dialog",id:g.contentId,...h,...f,ref:n,style:{...f.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})},"PopoverContentImpl"));function ji(t){return t?"open":"closed"}Tt(ji,"getState");var j1=C1,D1=k1,L1=E1,F1=A1,bf=R1;const U1=j1,V1=L1,$1=D1,wf=c.forwardRef(({className:t,align:e="center",sideOffset:n=4,...o},a)=>s.jsx(F1,{children:s.jsx(bf,{ref:a,align:e,sideOffset:n,className:k("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:sli
218de-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...o})}));wf.displayName=bf.displayName;var B1=Object.defineProperty,Te=(t,e)=>B1(t,"name",{value:e,configurable:!0}),xf="Radio",[G1,Cf]=ge(xf),[q1,qa]=G1(xf);function Sf(t){const{__scopeRadio:e,checked:n=!1,children:o,disabled:a,form:r,name:i,onCheck:l,required:d,value:u="on",internal_do_not_use_render:m}=t,[p,f]=c.useState(null),[g,h]=c.useState(null),_=c.useRef(!1),[v,x]=c.useReducer(b=>b+1,0),w=p?!!r||!!p.closest("form"):!0,y={checked:n,disabled:a,required:d,name:i,form:r,value:u,control:p,setControl:f,hasConsumerStoppedPropagationRef:_,userInteractionCount:v,onUserInteraction:x,isFormControl:w,bubbleInput:g,setBubbleInput:h,onCheck:Te(()=>l?.(),"onCheck")};return s.jsx(q1,{scope:e,...y,children:kf(m)?m(y):o})}Te(Sf,"RadioProvider");var W1="RadioTrigger",z1=c.forwardRef(Te(function({__scopeRadio:e,onClick:n,...o},a){const{checked:r,disabled:i,value:l,setControl:d,onCheck:u,hasConsumerStoppedPropagationRef:m,onUserInteraction:p,isFormControl:f,bubbleInput:g}=qa(W1,e),h=G(a,d);return s.jsx(M.button,{type:"button",role:"radio","aria-checked":r,"data-state":Di(r),"data-disabled":i?"":void 0,disabled:i,value:l,...o,ref:h,onClick:I(n,_=>{r||(p(),u()),g&&f&&(m.current=_.isPropagationStopped(),m.current||_.stopPropagation())})})},"RadioTrigger")),H1="RadioIndicator",K1=c.forwardRef(Te(function(e,n){const{__scopeRadio:o,forceMount:a,...r}=e,i=qa(H1,o);return s.jsx(xe,{present:a||i.checked,children:s.jsx(M.span,{"data-state":Di(i.checked),"data-disabled":i.disabled?"":void 0,...r,ref:n})})},"RadioIndicator")),Y1="RadioBubbleInput",X1=c.forwardRef(Te(function({__scopeRadio:e,onClick:n,...o},a){const{control:r,checked:i,required:l,disabled:d,name:u,value:m,form:p,bubbleInput:f,setBubbleInput:g,hasConsumerStoppedPropagationRef:h,userInteractionCount:_}=qa(Y1,e),v=G(a,g),x=Zs(r),w=c.useRef(!1),y=c.useRef(i),b=c.useRef(_);c.useEffect(()=>{const C=f;if(!C)return;const P=window.HTMLInputElement.prototype,A=Object.getOwnPropertyDescriptor(P,"checked").set,R=_!==b.current;b.current=_;const F=y.current!==i;y.current=i;const j=!(R&&h.current);if(F&&A){w.current=!R;const $=new Event("click",{bubbles:j});A.call(C,i),C.dispatchEvent($),w.current=!1}},[f,i,h,_]);const S=c.useRef(i);return s.jsx(M.input,{type:"radio","aria-hidden":!0,defaultChecked:S.current,required:l,disabled:d,name:u,value:m,form:p,...o,tabIndex:-1,ref:v,onClick:I(n,C=>{w.current&&C.stopPropagation()}),style:{...o.style,...x,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})},"RadioBubbleInput"));function kf(t){return typeof t=="function"}Te(kf,"isFunction");function Di(t){return t?"checked":"unchecked"}Te(Di,"getState");var Q1=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],Li="RadioGroup",[Z1,QR]=ge(Li,[Wt,Cf]),Pf=Wt(),Wa=Cf(),[J1,ek]=Z1(Li),Ef=c.forwardRef(Te(function(e,n){const{__scopeRadioGroup:o,name:a,form:r,defaultValue:i,value:l,required:d=!1,disabled:u=!1,orientation:m,dir:p,loop:f=!0,onValueChange:g,...h}=e,_=Pf(o),v=kt(p),[x,w]=we({prop:l,defaultProp:i??null,onChange:g,caller:Li}),[y,b]=c.useState(null),S=G(n,b),C=c.useRef(x);return c.useEffect(()=>{const P=r?y?.ownerDocument.getElementById(r):y?.closest("form");if(P instanceof HTMLFormElement){const T=Te(()=>w(C.current),"reset");return P.addEventListener("reset",T),()=>P.removeEventListener("reset",T)}},[y,r,w]),s.jsx(J1,{scope:o,name:a,form:r,required:d,disabled:u,value:x,onValueChange:w,children:s.jsx(ja,{asChild:!0,..._,orientation:m,dir:v,loop:f,children:s.jsx(M.div,{role:"radiogroup","aria-required":d,"aria-orientation":m,"data-disabled":u?"":void 0,dir:v,...h,ref:S})})})},"RadioGroup")),tk="RadioGroupItemProvider",nk="RadioGroupItemTrigger";function If(t){const{__scopeRadioGroup:e,value:n,disabled:o,children:a,internal_do_not_use_render:r}=t,i=ek(tk,e),l=Wa(e),d=i.disabled||o;return s.jsx(Sf,{...l,checked:i.value===n,disabled:d,required:i.required,name:i.name,form:i.form,value:n,onCheck:()=>i.onValueChange(n),internal_do_not_use_render:r,children:a})}Te(If,"RadioGroupItemProvider");var ok=c.forwardRef(Te(function(e,n){const{__scopeRadioGroup:o,...a}
218=e,r=Pf(o),i=Wa(o),{checked:l,disabled:d}=qa(nk,i.__scopeRadio),u=c.useRef(null),m=G(n,u),p=c.useRef(!1);return c.useEffect(()=>{const f=Te(h=>{Q1.includes(h.key)&&(p.current=!0)},"handleKeyDown"),g=Te(()=>p.current=!1,"handleKeyUp");return document.addEventListener("keydown",f),document.addEventListener("keyup",g),()=>{document.removeEventListener("keydown",f),document.removeEventListener("keyup",g)}},[]),s.jsx(Da,{asChild:!0,...r,focusable:!d,active:l,children:s.jsx(z1,{...i,...a,ref:m,onKeyDown:I(a.onKeyDown,f=>{f.key==="Enter"&&f.preventDefault()}),onFocus:I(a.onFocus,()=>{p.current&&u.current?.click()})})})},"RadioGroupItemTrigger")),Tf=c.forwardRef(Te(function(e,n){const{__scopeRadioGroup:o,value:a,disabled:r,...i}=e;return s.jsx(If,{__scopeRadioGroup:o,value:a,disabled:r,internal_do_not_use_render:({isFormControl:l})=>s.jsxs(s.Fragment,{children:[s.jsx(ok,{...i,ref:n,__scopeRadioGroup:o}),l&&s.jsx(ak,{__scopeRadioGroup:o})]})})},"RadioGroupItem")),ak=c.forwardRef(Te(function(e,n){const{__scopeRadioGroup:o,...a}=e,r=Wa(o);return s.jsx(X1,{...r,...a,ref:n})},"RadioGroupItemBubbleInput")),rk=c.forwardRef(Te(function(e,n){const{__scopeRadioGroup:o,...a}=e,r=Wa(o);return s.jsx(K1,{...r,...a,ref:n})},"RadioGroupIndicator"));const Af=c.forwardRef(({className:t,...e},n)=>s.jsx(Ef,{className:k("grid gap-2",t),...e,ref:n}));Af.displayName=Ef.displayName;const Rf=c.forwardRef(({className:t,...e},n)=>s.jsx(Tf,{ref:n,className:k("aspect-square h-4 w-4 rounded-full border border-primary text-primary-dark dark:text-primary shadow focus:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",t),...e,children:s.jsx(rk,{className:"flex items-center justify-center",children:s.jsx(ga,{className:"h-3 w-3 fill-primary"})})}));Rf.displayName=Tf.displayName;var sk=Object.defineProperty,ik=(t,e)=>sk(t,"name",{value:e,configurable:!0});function rs(t,[e,n]){return Math.min(n,Math.max(e,t))}ik(rs,"clamp");var ck=Object.defineProperty,J=(t,e)=>ck(t,"name",{value:e,configurable:!0}),lk=[" ","Enter","ArrowUp","ArrowDown"],dk=[" ","Enter"],In="Select",[za,Ha,uk]=Gt(In),[ln,ZR]=ge(In,[uk,ut]),Fi=ut(),[pk,Ht]=ln(In),[mk,fk]=ln(In);function Mf(t){const{__scopeSelect:e,children:n,open:o,defaultOpen:a,onOpenChange:r,value:i,defaultValue:l,onValueChange:d,dir:u,name:m,autoComplete:p,disabled:f,required:g,form:h,internal_do_not_use_render:_}=t,v=Fi(e),[x,w]=c.useState(null),[y,b]=c.useState(null),[S,C]=c.useState(!1),P=kt(u),[T,A]=we({prop:o,defaultProp:a??!1,onChange:r,caller:In}),[R,F]=we({prop:i,defaultProp:l,onChange:d,caller:In}),j=c.useRef(null),$=c.useRef(R);c.useEffect(()=>{const E=h?x?.ownerDocument.getElementById(h):x?.form;if(E instanceof HTMLFormElement){const U=J(()=>F($.current),"reset");return E.addEventListener("reset",U),()=>E.removeEventListener("reset",U)}},[h,x,F]);const B=x?!!h||!!x.closest("form"):!0,[Y,z]=c.useState(new Set),W=ce(),q=Array.from(Y).map(E=>E.props.value).join(";"),H=c.useCallback(E=>{z(U=>new Set(U).add(E))},[]),N=c.useCallback(E=>{z(U=>{const V=new Set(U);return V.delete(E),V})},[]),he={required:g,trigger:x,onTriggerChange:w,valueNode:y,onValueNodeChange:b,valueNodeHasChildren:S,onValueNodeHasChildrenChange:C,contentId:W,value:R,onValueChange:F,open:T,onOpenChange:A,dir:P,triggerPointerDownPosRef:j,disabled:f,name:m,autoComplete:p,form:h,nativeOptions:Y,nativeSelectKey:q,isFormControl:B};return s.jsx(Un,{...v,children:s.jsx(pk,{scope:e,...he,children:s.jsx(za.Provider,{scope:e,children:s.jsx(mk,{scope:e,onNativeOptionAdd:H,onNativeOptionRemove:N,children:Gf(_)?_(he):n})})})})}J(Mf,"SelectProvider");var gk=J(t=>{const{__scopeSelect:e,children:n,...o}=t;return s.jsx(Mf,{__scopeSelect:e,...o,internal_do_not_use_render:({isFormControl:a})=>s.jsxs(s.Fragment,{children:[n,a?s.jsx(Vk,{__scopeSelect:e}):null]})})},"Select"),hk="SelectTrigger",Nf=c.forwardRef(J(function(e,n){const{__scopeSelect:o,disabled:a=!1,...r}=e,i=Fi(o),l=Ht(hk,o),d=l.disabled||a,u=G(n,l.onTriggerChange),m=Ha(o),p=c.useRef("touch"),[f,g,h]=Vi(v=>{const x=m().filter(b=>!b.disabled),w=x.find(b=>b.value===l.value),y=$i(x,v,w);y!==void 0&&l.onValueChange(y.value)}),_=J(v=>{d||(l.onOpenChange(!0),h()),v&&(l.triggerPointerDownPosRef.current={x:Math.round(v.pageX),y:Math.round(v.pageY)})},"handleOpen");return s.jsx(Vn,{asChild:!0,...i,children:s.jsx(M.button,{type:"button",role:"combobox","aria-controls":l.open?l.contentId:void 0,"aria-expanded":l.open,"aria-required":l.required,"aria-autocomplete":"none",dir:l.dir,"data-state":l.open?"open":"closed",disabled:d,"data-disabled":d?"":void 0,"data-placeholder":Po(l.value)?"":void 0,...r,ref:u,onClick:I(r.onClick,v=>
218{v.currentTarget.focus(),p.current!=="mouse"&&_(v)}),onPointerDown:I(r.onPointerDown,v=>{p.current=v.pointerType;const x=v.target;x.hasPointerCapture(v.pointerId)&&x.releasePointerCapture(v.pointerId),v.button===0&&v.ctrlKey===!1&&v.pointerType==="mouse"&&(_(v),v.preventDefault())}),onKeyDown:I(r.onKeyDown,v=>{const x=f.current!=="";!(v.ctrlKey||v.altKey||v.metaKey)&&v.key.length===1&&g(v.key),!(x&&v.key===" ")&&lk.includes(v.key)&&(_(),v.preventDefault())})})})},"SelectTrigger")),_k="SelectValue",vk=c.forwardRef(J(function(e,n){const{__scopeSelect:o,className:a,style:r,children:i,placeholder:l="",...d}=e,u=Ht(_k,o),{onValueNodeHasChildrenChange:m}=u,p=i!==void 0,f=G(n,u.onValueNodeChange);ie(()=>{m(p)},[m,p]);const g=Po(u.value);return s.jsx(M.span,{...d,asChild:g?!1:d.asChild,ref:f,style:{pointerEvents:"none"},children:s.jsx(c.Fragment,{children:g?l:i},g?"placeholder":"value")})},"SelectValue")),yk=c.forwardRef(J(function(e,n){const{__scopeSelect:o,children:a,...r}=e;return s.jsx(M.span,{"aria-hidden":!0,...r,ref:n,children:a||"â¼"})},"SelectIcon")),bk="SelectPortal",[wk,xk]=ln(bk,{forceMount:void 0}),Ck=J(t=>{const{__scopeSelect:e,forceMount:n,...o}=t;return s.jsx(wk,{scope:t.__scopeSelect,forceMount:n,children:s.jsx(vo,{asChild:!0,...o})})},"SelectPortal"),tn="SelectContent",Of=c.forwardRef(J(function(e,n){const o=xk(tn,e.__scopeSelect),{forceMount:a=o.forceMount,...r}=e,i=Ht(tn,e.__scopeSelect),[l,d]=c.useState();return ie(()=>{d(new DocumentFragment)},[]),s.jsx(xe,{present:a||i.open,children:({present:u})=>u?s.jsx(Pk,{...r,ref:n}):s.jsx(Sk,{...r,fragment:l})})},"SelectContent")),Sk=c.forwardRef(J(function(e,n){const{__scopeSelect:o,children:a,fragment:r}=e;return r?An.createPortal(s.jsx(jf,{scope:o,children:s.jsx(za.Slot,{scope:o,children:s.jsx("div",{ref:n,children:a})})}),r):null},"SelectContentFragment")),We=10,[jf,dn]=ln(tn),kk=Qe("SelectContent.RemoveScroll"),Pk=c.forwardRef(J(function(e,n){const{__scopeSelect:o}=e,{position:a="item-aligned",onCloseAutoFocus:r,onEscapeKeyDown:i,onPointerDownOutside:l,side:d,sideOffset:u,align:m,alignOffset:p,arrowPadding:f,collisionBoundary:g,collisionPadding:h,sticky:_,hideWhenDetached:v,avoidCollisions:x,...w}=e,y=Ht(tn,o),[b,S]=c.useState(null),[C,P]=c.useState(null),T=G(n,S),[A,R]=c.useState(null),[F,j]=c.useState(null),$=Ha(o),[B,Y]=c.useState(!1),z=c.useRef(!1);c.useEffect(()=>{if(b)return Sa(b)},[b]),On();const W=c.useCallback(O=>{const[K,..._e]=$().map(be=>be.ref.current),[ue]=_e.slice(-1),pe=document.activeElement;for(const be of O)if(be===pe||(be?.scrollIntoView({block:"nearest"}),be===K&&C&&(C.scrollTop=0),be===ue&&C&&(C.scrollTop=C.scrollHeight),be?.focus(),document.activeElement!==pe))return},[$,C]),q=c.useCallback(()=>W([A,b]),[W,A,b]);c.useEffect(()=>{B&&q()},[B,q]);const{onOpenChange:H,triggerPointerDownPosRef:N}=y;c.useEffect(()=>{if(b){let O={x:0,y:0};const K=J(ue=>{O={x:Math.abs(Math.round(ue.pageX)-(N.current?.x??0)),y:Math.abs(Math.round(ue.pageY)-(N.current?.y??0))}},"handlePointerMove"),_e=J(ue=>{O.x<=10&&O.y<=10?ue.preventDefault():ue.composedPath().includes(b)||H(!1),document.removeEventListener("pointermove",K),N.current=null},"handlePointerUp");return N.current!==null&&(document.addEventListener("pointermove",K),document.addEventListener("pointerup",_e,{capture:!0,once:!0})),()=>{document.removeEventListener("pointermove",K),document.removeEventListener("pointerup",_e,{capture:!0})}}},[b,H,N]),c.useEffect(()=>{const O=J(()=>H(!1),"close");return window.addEventListener("blur",O),window.addEventListener("resize",O),()=>{window.removeEventListener("blur",O),window.removeEventListener("resize",O)}},[H]);const[he,E]=Vi(O=>{const K=$().filter(pe=>!pe.disabled),_e=K.find(pe=>pe.ref.current===document.activeElement),ue=$i(K,O,_e);ue&&setTimeout(()=>ue.ref.current?.focus())}),U=c.useCallback((O,K,_e)=>{const ue=!z.current&&!_e;(y.value!==void 0&&y.value===K||ue)&&(R(O),ue&&(z.current=!0))},[y.value]),V=c.useCallback(()=>b?.focus(),[b]),L=c.useCallback((O,K,_e)=>{const ue=!z.current&&!_e;(y.value!==void 0&&y.value===K||ue)&&j(O)},[y.value]),Q=a==="popper"?el:Ek,Z=Q===el?{side:d,sideOffset:u,align:m,alignOffset:p,arrowPadding:f,collisionBoundary:g,collisionPadding:h,sticky:_,hideWhenDetached:v,avoidCollisions:x}:{};return s.jsx(jf,{scope:o,content:b,viewport:C,onViewportChange:P,itemRefCallback:U,selectedItem:A,onItemLeave:V,itemTextRefCallback:L,focusSelectedItem:q,selectedItemText:F,position:a,isPositioned:B,searchRef:he,children:s.jsx(yo,{as:kk,allowPinchZoom:!0,children:s.jsx(xa,{asChild:!0,trapped:y.open,onMountAutoFocus:O=>{O.preventDefault()},onUnmountAutoFocus:I(r,O=>{y.trigger?.focus({preventScroll:!0}),O.preventDefault()}),children:s.jsx(nn,{asChild:!0,disableOutsidePointerEvents:!0,onEscapeKeyDown:i,onPointerDownOutside:l,onFocusOutside:O=>O.preventDefault(),onDismiss:()=>y.onOpenChange(!1),children:s.jsx(Q,{role:"listbox",id:y.contentId,"data-state":y.open?"open":"closed",dir:y.dir,onContextMenu:O=>O.preventDefault(),...w,...Z,onPlaced:()=>Y(!0),ref:T,style:{display:"flex",flexDirection:"column",outline:"none",...w.style},onKeyDown:I(w.onKeyDown,O=>{const K=O.ctrlKey||O.altKey||O.metaKey;if(O.key==="Tab"&&O.preventDefault(),!K&&O.key.length===1&&E(O.key),["ArrowUp","ArrowDown","Home","End"].includes(O.key)){let ue=$().filter(pe=>!pe.disabled).map(pe=>pe.ref.current);if(["ArrowUp","End"].includes(O.key)&&(ue=ue.slice().reverse()),["ArrowUp","ArrowDown"].includes(O.key)){const pe=O.target,be=ue.indexOf(pe);ue=ue.slice(be+1)}setTimeout(()=>W(ue)),O.preventDefault()}})})})})})})},"SelectContentImpl")),Ek=c.forwardRef(J(function(e,n){const{__scopeSelect:o,onPlaced:a,...r}=e,i=Ht(tn,o),l=dn(tn,o),[d,u]=c.useState(null),[m,p]=c.useState(null),f=G(n,p),g=Ha(o),h=c.useRef(!1),_=c.useRef(!0),{viewport:v,selectedItem:x,selectedItemText:w,focusSelectedItem:y}=l,b=c.useCallback(()=>
218{if(i.trigger&&i.valueNode&&d&&m&&v&&x&&w){const T=i.trigger.getBoundingClientRect(),A=m.getBoundingClientRect(),R=i.valueNode.getBoundingClientRect(),F=w.getBoundingClientRect();if(i.dir!=="rtl"){const pe=F.left-A.left,be=R.left-pe,pt=T.left-be,Ve=T.width+pt,Ja=Math.max(Ve,A.width),er=window.innerWidth-We,tr=rs(be,[We,Math.max(We,er-Ja)]);d.style.minWidth=Ve+"px",d.style.left=tr+"px"}else{const pe=A.right-F.right,be=window.innerWidth-R.right-pe,pt=window.innerWidth-T.right-be,Ve=T.width+pt,Ja=Math.max(Ve,A.width),er=window.innerWidth-We,tr=rs(be,[We,Math.max(We,er-Ja)]);d.style.minWidth=Ve+"px",d.style.right=tr+"px"}const j=g(),$=window.innerHeight-We*2,B=v.scrollHeight,Y=window.getComputedStyle(m),z=parseInt(Y.borderTopWidth,10),W=parseInt(Y.paddingTop,10),q=parseInt(Y.borderBottomWidth,10),H=parseInt(Y.paddingBottom,10),N=z+W+B+H+q,he=Math.min(x.offsetHeight*5,N),E=window.getComputedStyle(v),U=parseInt(E.paddingTop,10),V=parseInt(E.paddingBottom,10),L=T.top+T.height/2-We,Q=$-L,Z=x.offsetHeight/2,O=x.offsetTop+Z,K=z+W+O,_e=N-K;if(K<=L){const pe=j.length>0&&x===j[j.length-1].ref.current;d.style.bottom="0px";const be=m.clientHeight-v.offsetTop-v.offsetHeight,pt=Math.max(Q,Z+(pe?V:0)+be+q),Ve=K+pt;d.style.height=Ve+"px"}else{const pe=j.length>0&&x===j[0].ref.current;d.style.top="0px";const pt=Math.max(L,z+v.offsetTop+(pe?U:0)+Z)+_e;d.style.height=pt+"px",v.scrollTop=K-L+v.offsetTop}d.style.margin=`${We}px 0`,d.style.minHeight=he+"px",d.style.maxHeight=$+"px",a?.(),requestAnimationFrame(()=>h.current=!0)}},[g,i.trigger,i.valueNode,d,m,v,x,w,i.dir,a]);ie(()=>b(),[b]);const[S,C]=c.useState();ie(()=>{m&&C(window.getComputedStyle(m).zIndex)},[m]);const P=c.useCallback(T=>
218{T&&_.current===!0&&(b(),y?.(),_.current=!1)},[b,y]);return s.jsx(Ik,{scope:o,contentWrapper:d,shouldExpandOnScrollRef:h,onScrollButtonChange:P,children:s.jsx("div",{ref:u,style:{display:"flex",flexDirection:"column",position:"fixed",zIndex:S},children:s.jsx(M.div,{...r,ref:f,style:{boxSizing:"border-box",maxHeight:"100%",...r.style}})})})},"SelectItemAlignedPosition")),el=c.forwardRef(J(function(e,n){const{__scopeSelect:o,align:a="start",collisionPadding:r=We,...i}=e,l=Fi(o);return s.jsx(Co,{...l,...i,ref:n,align:a,collisionPadding:r,style:{boxSizing:"border-box",...i.style,"--radix-select-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-select-content-available-width":"var(--radix-popper-available-width)","--radix-select-content-available-height":"var(--radix-popper-available-height)","--radix-select-trigger-width":"var(--radix-popper-anchor-width)","--radix-select-trigger-height":"var(--radix-popper-anchor-height)"}})},"SelectPopperPosition")),[Ik,Ui]=ln(tn,{}),tl="SelectViewport",Tk=c.forwardRef(J(function(e,n){const{__scopeSelect:o,nonce:a,...r}=e,i=dn(tl,o),l=Ui(tl,o),d=G(n,i.onViewportChange),u=c.useRef(0);return s.jsxs(s.Fragment,{children:[s.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}"},nonce:a}),s.jsx(za.Slot,{scope:o,children:s.jsx(M.div,{"data-radix-select-viewport":"",role:"presentation",...r,ref:d,style:{position:"relative",flex:1,overflow:"hidden auto",...r.style},onScroll:I(r.onScroll,m=>{const p=m.currentTarget,{contentWrapper:f,shouldExpandOnScrollRef:g}=l;if(g?.current&&f){const h=Math.abs(u.current-p.scrollTop);if(h>0){const _=window.innerHeight-We*2,v=parseFloat(f.style.minHeight),x=parseFloat(f.style.height),w=Math.max(v,x);if(w<_){const y=w+h,b=Math.min(_,y),S=y-b;f.style.height=b+"px",f.style.bottom==="0px"&&(p.scrollTop=S>0?S:0,f.style.justifyContent="flex-end")}}}u.current=p.scrollTop})})})]})},"SelectViewport")),Ak="SelectGroup",[Rk,Mk]=ln(Ak),Nk=c.forwardRef(J(function(e,n){const{__scopeSelect:o,...a}=e,r=ce();return s.jsx(Rk,{scope:o,id:r,children:s.jsx(M.div,{role:"group","aria-labelledby":r,...a,ref:n})})},"SelectGroup")),Ok="SelectLabel",Df=c.forwardRef(J(function(e,n){const{__scopeSelect:o,...a}=e,r=Mk(Ok,o);return s.jsx(M.div,{id:r.id,...a,ref:n})},"SelectLabel")),ss="SelectItem",[jk,Lf]=ln(ss),Ff=c.forwardRef(J(function(e,n){const{__scopeSelect:o,value:a,disabled:r=!1,textValue:i,...l}=e,d=Ht(ss,o),u=dn(ss,o),m=d.value===a,[p,f]=c.useState(i??""),[g,h]=c.useState(!1),_=fe(b=>u.itemRefCallback?.(b,a,r)),v=G(n,_),x=ce(),w=c.useRef("touch"),y=J(()=>{r||(d.onValueChange(a),d.onOpenChange(!1))},"handleSelect");return s.jsx(jk,{scope:o,value:a,disabled:r,textId:x,isSelected:m,onItemTextChange:c.useCallback(b=>{f(S=>S||(b?.textContent??"").trim())},[]),children:s.jsx(za.ItemSlot,{scope:o,value:a,disabled:r,textValue:p,children:s.jsx(M.div,{role:"option","aria-labelledby":x,"data-highlighted":g?"":void 0,"aria-selected":m&&g,"data-state":m?"checked":"unchecked","aria-disabled":r||void 0,"data-disabled":r?"":void 0,tabIndex:r?void 0:-1,...l,ref:v,onFocus:I(l.onFocus,()=>h(!0)),onBlur:I(l.onBlur,()=>h(!1)),onClick:I(l.onClick,()=>{w.current!=="mouse"&&y()}),onPointerUp:I(l.onPointerUp,()=>{w.current==="mouse"&&y()}),onPointerDown:I(l.onPointerDown,b=>{w.current=b.pointerType}),onPointerMove:I(l.onPointerMove,b=>{w.current=b.pointerType,r?u.onItemLeave?.():w.current==="mouse"&&b.currentTarget.focus({preventScroll:!0})}),onPointerLeave:I(l.onPointerLeave,b=>{b.currentTarget===document.activeElement&&u.onItemLeave?.()}),onKeyDown:I(l.onKeyDown,b=>{r||b.target!==b.currentTarget||u.searchRef?.current!==""&&b.key===" "||(dk.includes(b.key)&&y(),b.key===" "&&b.preventDefault())})})})})},"SelectItem")),Uo="SelectItemText",Dk=c.forwardRef(J(function(e,n){const{__scopeSelect:o,className:a,style:r,...i}=e,l=Ht(Uo,o),d=dn(Uo,o),u=Lf(Uo,o),m=fk(Uo,o),[p,f]=c.useState(null),g=fe(y=>d.itemTextRefCallback?.(y,u.value,u.disabled)),h=G(n,f,u.onItemTextChange,g),_=p?.textContent,v=c.useMemo(()=>s.jsx("option",{value:u.value,disabled:u.disabled,children:_},u.value),[u.disabled,u.value,_]),{onNativeOptionAdd:x,onNativeOptionRemove:w}=m;return ie(()=>(x(v),()=>w(v)),[x,w,v]),s.jsxs(s.Fragment,{children:[s.jsx(M.span,{id:u.textId,...i,ref:h}),u.isSelected&&l.valueNode&&!l.valueNodeHasChildren&&!Po(l.value)?An.createPortal(i.children,l.valueNode):null]})}
218,"SelectItemText")),Lk="SelectItemIndicator",Fk=c.forwardRef(J(function(e,n){const{__scopeSelect:o,...a}=e;return Lf(Lk,o).isSelected?s.jsx(M.span,{"aria-hidden":!0,...a,ref:n}):null},"SelectItemIndicator")),nl="SelectScrollUpButton",Uf=c.forwardRef(J(function(e,n){const o=dn(nl,e.__scopeSelect),a=Ui(nl,e.__scopeSelect),[r,i]=c.useState(!1),l=G(n,a.onScrollButtonChange);return ie(()=>{if(o.viewport&&o.isPositioned){let d=function(){const m=u.scrollTop>0;i(m)};J(d,"handleScroll");const u=o.viewport;return d(),u.addEventListener("scroll",d),()=>u.removeEventListener("scroll",d)}},[o.viewport,o.isPositioned]),r?s.jsx($f,{...e,ref:l,onAutoScroll:()=>{const{viewport:d,selectedItem:u}=o;d&&u&&(d.scrollTop=d.scrollTop-u.offsetHeight)}}):null},"SelectScrollUpButton")),ol="SelectScrollDownButton",Vf=c.forwardRef(J(function(e,n){const o=dn(ol,e.__scopeSelect),a=Ui(ol,e.__scopeSelect),[r,i]=c.useState(!1),l=G(n,a.onScrollButtonChange);return ie(()=>{if(o.viewport&&o.isPositioned){let d=function(){const m=u.scrollHeight-u.clientHeight,p=Math.ceil(u.scrollTop)<m;i(p)};J(d,"handleScroll");const u=o.viewport;return d(),u.addEventListener("scroll",d),()=>u.removeEventListener("scroll",d)}},[o.viewport,o.isPositioned]),r?s.jsx($f,{...e,ref:l,onAutoScroll:()=>{const{viewport:d,selectedItem:u}=o;d&&u&&(d.scrollTop=d.scrollTop+u.offsetHeight)}}):null},"SelectScrollDownButton")),$f=c.forwardRef(J(function(e,n){const{__scopeSelect:o,onAutoScroll:a,...r}=e,i=dn("SelectScrollButton",o),l=c.useRef(null),d=Ha(o),u=c.useCallback(()=>{l.current!==null&&(window.clearInterval(l.current),l.current=null)},[]);return c.useEffect(()=>()=>u(),[u]),ie(()=>{d().find(p=>p.ref.current===document.activeElement)?.ref.current?.scrollIntoView({block:"nearest"})},[d]),s.jsx(M.div,{"aria-hidden":!0,...r,ref:n,style:{flexShrink:0,...r.style},onPointerDown:I(r.onPointerDown,()=>{l.current===null&&(l.current=window.setInterval(a,50))}),onPointerMove:I(r.onPointerMove,()=>{i.onItemLeave?.(),l.current===null&&(l.current=window.setInterval(a,50))}),onPointerLeave:I(r.onPointerLeave,()=>{u()})})},"SelectScrollButtonImpl")),Bf=c.forwardRef(J(function(e,n){const{__scopeSelect:o,...a}=e;return s.jsx(M.div,{"aria-hidden":!0,...a,ref:n})},"SelectSeparator")),Uk="SelectBubbleInput",Vk=c.forwardRef(J(function({__scopeSelect:e,...n},o){const a=Ht(Uk,e),{value:r,onValueChange:i,required:l,disabled:d,name:u,autoComplete:m,form:p}=a,{nativeOptions:f,nativeSelectKey:g}=a,h=c.useRef(null),_=G(o,h),v=r??"",x=Pi(v),w=Array.from(f).some(y=>(y.props.value??"")==="");return c.useEffect(()=>{const y=h.current;if(!y)return;const b=window.HTMLSelectElement.prototype,C=Object.getOwnPropertyDescriptor(b,"value").set;if(x!==v&&C){const P=new Event("change",{bubbles:!0});C.call(y,v),y.dispatchEvent(P)}},[x,v]),s.jsxs(M.select,{"aria-hidden":!0,required:l,tabIndex:-1,name:u,autoComplete:m,disabled:d,form:p,onChange:y=>i(y.target.value),...n,style:{...zm,...n.style},ref:_,defaultValue:v,children:[Po(r)&&!w?s.jsx("option",{value:""}):null,Array.from(f)]},g)},"SelectBubbleInput"));function Gf(t){return typeof t=="function"}J(Gf,"isFunction");function Po(t){return t===""||t===void 0}J(Po,"shouldShowPlaceholder");function Vi(t){const e=fe(t),n=c.useRef(""),o=c.useRef(0),a=c.useCallback(i=>{const l=n.current+i;e(l),J(function d(u){n.current=u,window.clearTimeout(o.current),u!==""&&(o.current=window.setTimeout(()=>d(""),1e3))},"updateSearch")(l)},[e]),r=c.useCallback(()=>{n.current="",window.clearTimeout(o.current)},[]);return c.useEffect(()=>()=>window.clearTimeout(o.current),[]),[n,a,r]}J(Vi,"useTypeaheadSearch");function $i(t,e,n){const a=e.length>1&&Array.from(e).every(u=>u===e[0])?e[0]:e,r=n?t.indexOf(n):-1;let i=qf(t,Math.max(r,0));a.length===1&&(i=i.filter(u=>u!==n));const d=i.find(u=>u.textValue.toLowerCase().startsWith(a.toLowerCase()));return d!==n?d:void 0}J($i,"findNextItem");function qf(t,e){return t.map((n,o)=>t[(e+o)%t.length])}J(qf,"wrapArray");const $k={"10px":"text-[0.625rem]","12px":"text-xs","14px":"text-sm","16px":"text-base","18px":"text-lg","20px":"text-xl","24px":"text-2xl","32px":"text-3xl","36px":"text-4xl","48px":"text-5xl","60px":"text-6xl","72px":"text-7xl"},al={300:"font-light",400:"font-normal",500:"font-medium",600:"font-semibold",700:"font-bold",900:"font-black"},rl=$t("",{variants:{variant:{default:"text-foreground",muted:"text-muted-foreground",destructive:"text-destructive",primary:"text-primary-dark dark:text-primary",secondary:"text-secondary-foreground"},size:{xs:"text-xs",sm:"text-sm",base:"text-base",lg:"text-lg",xl:"text-xl","2xl":"text-2xl","3xl":"text-3xl","4xl"
218:"text-4xl"},weight:{normal:"font-normal",medium:"font-medium",semibold:"font-semibold",bold:"font-bold"},align:{left:"text-left",center:"text-center",right:"text-right",justify:"text-justify"}},defaultVariants:{variant:"default",size:"base",weight:"normal"}}),ae=c.forwardRef(({className:t,variant:e,size:n,weight:o,align:a,color:r,as:i="p",...l},d)=>{let u=e;r&&!e&&(r==="dimmed"?u="muted":r==="blue"||r==="primary"?u="primary":(r==="red"||r==="error")&&(u="destructive"));const m=n;if(n&&n.endsWith("px")){const f=$k[n];if(f)return s.jsx(i,{ref:d,className:k(f,typeof o=="number"?al[o]:o?`font-${o}`:"",a?`text-${a}`:"",u?rl({variant:u}):"text-foreground",r&&!["dimmed","blue","primary","red","error"].includes(r)?`text-${r}`:"",t),...l})}let p=o;if(typeof o=="number"){const f=al[o];f&&(p=f.replace("font-",""))}return s.jsx(i,{ref:d,className:k(rl({variant:u,size:m,weight:p,align:a}),r&&!["dimmed","blue","primary","red","error"].includes(r)?`text-${r}`:"",t),...l})});ae.displayName="Text";const Wf=c.forwardRef(({data:t,label:e,description:n,error:o,placeholder:a,required:r,wrapperClassName:i,triggerClassName:l,contentClassName:d,itemClassName:u,emptyState:m,withinPortal:p,className:f,children:g,onChange:h,onValueChange:_,disabled:v,dropdownOpened:x,onDropdownOpen:w,onDropdownClose:y,leftSection:b,renderOption:S,size:C,style:P,allowDeselect:T=!0,searchable:A,badge:R,...F},j)=>{const[$,B]=c.useState(x??!1);c.useEffect(()=>{x!==void 0&&B(x)},[x]);const Y=c.useCallback(V=>{B(V),V?w?.():y?.()},[w,y]),z=c.useCallback(V=>{!T&&(!V||V==="")||(_?.(V),h?.(V))},[h,_,T]),W=!g,{value:q,defaultValue:H,...N}=F,he=q==null||q===""?void 0:q,E=H==null||H===""?void 0:H,U=C==="sm"?"min-h-[36px] text-xs":C==="lg"?"min-h-[52px]":"";return s.jsxs("div",{className:k("space-y-2 text-sm text-muted-foreground",i,f),style:P,children:[e&&s.jsxs("label",{className:"flex items-center gap-1 text-xs font-medium tracking-wide text-muted-foreground",children:[s.jsx("span",{children:e}),r&&s.jsx("span",{className:"text-destructive",children:"*"})]}),s.jsx(gk,{disabled:v,onValueChange:z,value:he,defaultValue:E,open:x!==void 0?x:$,onOpenChange:Y,...N,children:W?s.jsxs(s.Fragment,{children:[s.jsx(Bi,{ref:j,className:k(l,U),disabled:v,"data-error":o?"true":void 0,"aria-invalid":!!o,children:s.jsxs("span",{className:"flex min-w-0 items-center gap-2 truncate",children:[b&&s.jsx("span",{className:"flex items-center shrink-0",children:b}),s.jsx(zf,{placeholder:a}),R&&s.jsx("span",{className:"shrink-0",children:R})]})}),s.jsx(Wi,{className:d,children:t&&t.length>0?t.map((V,L)=>S?s.jsx(la,{value:V.value,disabled:V.disabled,className:k(u,"!p-0",L!==t.length-1&&"mb-1"),children:s.jsx("div",{className:"w-full p-2",children:S({option:V})})},String(V.value)):s.jsx(la,{value:V.value,disabled:V.disabled,className:u,children:V.label},String(V.value))):s.jsx("div",{className:"px-3 py-2 text-sm text-muted-foreground",children:m??"No options available"})})]}):g}),o?s.jsx(ae,{size:"12px",className:"text-destructive",children:o}):n&&s.jsx(ae,{size:"12px",className:"text-muted-foreground",children:n})]})});Wf.displayName="Select";const Bk=Nk,zf=vk,Bi=c.forwardRef(({className:t,children:e,...n},o)=>s.jsxs(Nf,{ref:o,className:k("flex h-10 w-full items-center justify-between rounded border border-tab bg-white/5 px-3 py-2 gap-2 text-sm text-foreground ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary dark:focus-visible:ring-ring focus-visible:ring-offset-0 disabled:cursor-not-allowed disabled:opacity-50",t),...n,children:[e,s.jsx(yk,{asChild:!0,children:s.jsx(fa,{className:"h-4 w-4 shrink-0 opacity-50"})})]}));Bi.displayName=Nf.displayName;const Gi=c.forwardRef(({className:t,...e},n)=>s.jsx(Uf,{ref:n,className:k("flex cursor-default items-center justify-center py-1",t),...e,children:s.jsx(Lh,{className:"h-4 w-4"})}));Gi.displayName=Uf.displayName;const qi=c.forwardRef(({className:t,...e},n)=>s.jsx(Vf,{ref:n,className:k("flex cursor-default items-center justify-center py-1",t),...e,children:s.jsx(fa,{className:"h-4 w-4"})}));qi.displayName=Vf.displayName;const Wi=c.forwardRef(({className:t,children:e,position:n="popper",...o},a)=>s.jsx(Ck,{children:s.jsxs(Of,{ref:a,className:k("relative z-[999] max-h-96 min-w-[8rem] overflow-hidden rounded-md border border-border/70 dark:border-border/40 bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:sli
218de-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",n==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),style:{width:"var(--radix-select-trigger-width)"},position:n,...o,children:[s.jsx(Gi,{}),s.jsx(Tk,{className:k("p-1",n==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:e}),s.jsx(qi,{})]})}));Wi.displayName=Of.displayName;const Hf=c.forwardRef(({className:t,...e},n)=>s.jsx(Df,{ref:n,className:k("px-2 py-1.5 text-sm font-semibold",t),...e}));Hf.displayName=Df.displayName;const la=c.forwardRef(({className:t,children:e,...n},o)=>s.jsxs(Ff,{ref:o,className:k("relative flex w-full cursor-pointer select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus-visible:bg-accent focus-visible:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...n,children:[s.jsx("span",{className:"absolute right-2 flex h-3.5 w-3.5 items-center justify-center",children:s.jsx(Fk,{children:s.jsx(ha,{className:"h-4 w-4"})})}),s.jsx(Dk,{children:e})]}));la.displayName=Ff.displayName;const Kf=c.forwardRef(({className:t,...e},n)=>s.jsx(Bf,{ref:n,className:k("-mx-1 my-1 h-px bg-muted",t),...e}));Kf.displayName=Bf.displayName;const Gk=bo,qk=Fs,Wk=Ot,Yf=wo,zi=c.forwardRef(({className:t,...e},n)=>s.jsx(on,{className:k("fixed inset-0 z-50 bg-background/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",t),...e,ref:n}));zi.displayName=on.displayName;const zk=$t("fixed z-50 gap-4 bg-background p-4 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500 data-[state=open]:animate-in data-[state=closed]:animate-out",{variants:{side:{top:"inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",bottom:"inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",left:"inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",right:"inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm"}},defaultVariants:{side:"right"}}),Xf=c.forwardRef(({side:t="right",className:e,isCloseHidden:n=!1,children:o,...a},r)=>s.jsxs(Yf,{children:[s.jsx(zi,{}),s.jsxs(an,{ref:r,className:k(zk({side:t}),e),"aria-describedby":void 0,...a,children:[s.jsx(jn,{className:"sr-only",children:"Drawer"}),s.jsx(Dn,{className:"sr-only",children:"Content drawer panel"}
218),o,s.jsxs(Ot,{hidden:n,className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary",children:[s.jsx(Qn,{className:"h-4 w-4"}),s.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));Xf.displayName=an.displayName;const Qf=({className:t,...e})=>s.jsx("div",{className:k("flex flex-col space-y-2 text-center sm:text-left",t),...e});Qf.displayName="SheetHeader";const Zf=({className:t,...e})=>s.jsx("div",{className:k("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...e});Zf.displayName="SheetFooter";const Jf=c.forwardRef(({className:t,...e},n)=>s.jsx(jn,{ref:n,className:k("text-lg font-semibold text-foreground",t),...e}));Jf.displayName=jn.displayName;const eg=c.forwardRef(({className:t,...e},n)=>s.jsx(Dn,{ref:n,className:k("text-sm text-muted-foreground",t),...e}));eg.displayName=Dn.displayName;const tg=c.forwardRef(({className:t,banner:e,withBanner:n=!1,pagination:o,maxHeight:a,striped:r=!1,children:i,parentClassName:l,wrapperClassName:d,bannerClassName:u,...m},p)=>{const f=a!==void 0&&a!=="none",g=typeof a=="number"?`${a}px`:a;return s.jsxs("div",{className:k("w-full",d),children:[n&&e&&s.jsx("div",{className:k("rounded-t border border-b-0 border-border bg-card",u),children:e}),s.jsx("div",{className:k("relative w-full overflow-x-auto rounded border border-border bg-card",f&&"overflow-y-auto",n&&"rounded-t-none border-t-0",o&&"rounded-b-none border-b-0",l),style:f?{maxHeight:g}:void 0,children:s.jsx("table",{ref:p,className:k("w-full caption-bottom text-sm",r&&"[&_tbody_tr:nth-child(odd)]:bg-muted/50 [&_tbody_tr:nth-child(even)]:bg-background",t),...m,children:i})}),o&&s.jsx("div",{className:"rounded-b border border-border bg-card px-6 py-5",children:o})]})});tg.displayName="Table";const Hi=c.forwardRef(({className:t,...e},n)=>s.jsx("thead",{ref:n,className:k("[&_tr]:border-b [&_tr:first-child]:border-t",t),...e}));Hi.displayName="TableHead";const Ki=c.forwardRef(({className:t,...e},n)=>s.jsx("tbody",{ref:n,className:k("[&_tr:last-child]:border-0",t),...e}));Ki.displayName="TableBody";const ng=c.forwardRef(({className:t,...e},n)=>s.jsx("tfoot",{ref:n,className:k("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",t),...e}));ng.displayName="TableFoot";const Yi=c.forwardRef(({className:t,...e},n)=>s.jsx("tr",{ref:n,className:k("border-b border-border/80 transition-colors hover:bg-muted data-[state=selected]:bg-muted",t),...e}));Yi.displayName="TableRow";const Xi=c.forwardRef(({className:t,...e},n)=>s.jsx("th",{ref:n,className:k("h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",t),...e}));Xi.displayName="Th";const Qi=c.forwardRef(({className:t,...e},n)=>s.jsx("td",{ref:n,className:k("p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",t),...e}));Qi.displayName="Td";const og=c.forwardRef(({className:t,...e},n)=>s.jsx("caption",{ref:n,className:k("mt-4 text-sm text-muted-foreground",t),...e}));og.displayName="TableCaption";var Hk=Object.defineProperty,Bn=(t,e)=>Hk(t,"name",{value:e,configurable:!0}),Zi="Tabs",[Kk,JR]=ge(Zi,[Wt]),ag=Wt(),[Yk,Ji]=Kk(Zi),Xk=c.forwardRef(Bn(function(e,n){const{__scopeTabs:o,value:a,onValueChange:r,defaultValue:i,orientation:l="horizontal",dir:d,activationMode:u="automatic",...m}=e,p=kt(d),[f,g]=we({prop:a,onChange:r,defaultProp:i??"",caller:Zi});return s.jsx(Yk,{scope:o,baseId:ce(),value:f,onValueChange:g,orientation:l,dir:p,activationMode:u,children:s.jsx(M.div,{dir:p,"data-orientation":l,...m,ref:n})})},"Tabs")),Qk="TabsList",Zk=c.forwardRef(Bn(function(e,n){const{__scopeTabs:o,loop:a=!0,...r}=e,i=Ji(Qk,o),l=ag(o);return s.jsx(ja,{asChild:!0,...l,orientation:i.orientation,dir:i.dir,loop:a,children:s.jsx(M.div,{role:"tablist","aria-orientation":i.orientation,...r,ref:n})})},"TabsList")),Jk="TabsTrigger",eP=c.forwardRef(Bn(function(e,n){const{__scopeTabs:o,value:a,disabled:r=!1,...i}=e,l=Ji(Jk,o),d=ag(o),u=ec(l.baseId,a),m=tc(l.baseId,a),p=a===l.value;return s.jsx(Da,{asChild:!0,...d,focusable:!r,active:p,children:s.jsx(M.button,{type:"button",role:"tab","aria-selected":p,"aria-controls":m,"data-state":p?"active":"inactive","data-disabled":r?"":void 0,disabled:r,id:u,...i,ref:n,onMouseDown:I(e.onMouseDown,f=>{!r&&f.button===0&&f.ctrlKey===!1?l.onValueChange(a):f.preventDefault()}),onKeyDown:I(e.onKeyDown,f=>{r||f.target!==f.currentTarget||[" ","Enter"].includes(f.key)&&l.onValueChange(a)}),onFocus:I(e.onFocus,()=>{const f=l.activationMode!=="manual";!p&&!r&&f&&l.onValueChange(a)})})})},"TabsTrigger")),tP="TabsContent",nP=c.forwardRef(Bn(function(e,n){const{__scopeTabs:o,value:a,forceMount:r,children:i,...l}=e,d=Ji(tP,o),u=ec(d.baseId,a),m=tc(d.baseId,a),p=a===d.value,f=c.useRef(p);return c.useEffect(()=>{const g=requestAnimationFrame(()=>f.current=!1);return()=>cancelAnimationFrame(g)},[]),s.jsx(xe,{present:r||p,children:({present:g})=>s.jsx(M.div,{"data-state":p?"active":"inactive","data-orientation":d.orientation,role:"tabpanel","aria-labelledby":u,hidden:!g,id:m,tabIndex:0,...l,ref:n,style:{...e.style,animationDuration:f.current?"0s":void 0},children:g&&i})})},"TabsContent"));function ec(t,e){return`${t}-trigger-${e}`}Bn(ec,"makeTriggerId");function tc(t,e){return`${t}-content-${e}`}Bn(tc,"makeContentId");var oP=Xk,rg=Zk,sg=eP,ig=nP;const aP=oP,cg=c.forwardRef(({className:t,...e},n)=>s.jsx(rg,{ref:n,className:k("inline-flex h-11 items-center justify-center rounded bg-muted p-1 text-foreground",t),...e}));cg.displayName=rg.displayName;const lg=c.forwardRef(({className:t,...e},n)=>s.jsx(sg,{ref:n,className:k("inline-flex items-center justify-center whitespace-nowrap rounded px-4 py-1 h-9 text-sm font-medium ring-offset-tab transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 disabled:opacity-50 data-[state=active]:bg-white/5 data-[state=active]:text-foreground data-[state=active]:shadow data-[state=active]:border data-[state=active]:border-tab data-[state=active]:focus-visible:border-none",t,e.disabled&&"!cursor-not-allowed"),...e}));
218lg.displayName=sg.displayName;const dg=c.forwardRef(({className:t,...e},n)=>s.jsx(ig,{ref:n,className:k("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",t),...e}));dg.displayName=ig.displayName;var rP=Object.defineProperty,Ce=(t,e)=>rP(t,"name",{value:e,configurable:!0}),[nc,e2]=ge("Tooltip",[ut]),Ka=ut(),sP="TooltipProvider",iP=700,is="tooltip.open",[cP,oc]=nc(sP),lP=Ce(t=>{const{__scopeTooltip:e,delayDuration:n=iP,skipDelayDuration:o=300,disableHoverableContent:a=!1,children:r}=t,i=c.useRef(!0),l=c.useRef(!1),d=c.useRef(0);return c.useEffect(()=>{const u=d.current;return()=>window.clearTimeout(u)},[]),s.jsx(cP,{scope:e,isOpenDelayedRef:i,delayDuration:n,onOpen:c.useCallback(()=>{o<=0||(window.clearTimeout(d.current),i.current=!1)},[o]),onClose:c.useCallback(()=>{o<=0||(window.clearTimeout(d.current),d.current=window.setTimeout(()=>i.current=!0,o))},[o]),isPointerInTransitRef:l,onPointerInTransitChange:c.useCallback(u=>{l.current=u},[]),disableHoverableContent:a,children:r})},"TooltipProvider"),cs="Tooltip",[dP,Eo]=nc(cs),uP=Ce(t=>{const{__scopeTooltip:e,children:n,open:o,defaultOpen:a,onOpenChange:r,disableHoverableContent:i,delayDuration:l}=t,d=oc(cs,t.__scopeTooltip),u=Ka(e),[m,p]=c.useState(null),[f,g]=c.useState(void 0),h=ce(),_=c.useRef(0),v=i??d.disableHoverableContent,x=l??d.delayDuration,w=c.useRef(!1),[y,b]=we({prop:o,defaultProp:a??!1,onChange:Ce(R=>{R?(d.onOpen(),document.dispatchEvent(new CustomEvent(is))):d.onClose(),r?.(R)},"onChange"),caller:cs}),S=c.useMemo(()=>y?w.current?"delayed-open":"instant-open":"closed",[y]),C=c.useCallback(()=>{window.clearTimeout(_.current),_.current=0,w.current=!1,b(!0)},[b]),P=c.useCallback(()=>{window.clearTimeout(_.current),_.current=0,b(!1)},[b]),T=c.useCallback(()=>{window.clearTimeout(_.current),_.current=window.setTimeout(()=>{w.current=!0,b(!0),_.current=0},x)},[x,b]);c.useEffect(()=>()=>{_.current&&(window.clearTimeout(_.current),_.current=0)},[]);const A=f??h;return s.jsx(Un,{...u,children:s.jsx(dP,{scope:e,contentId:A,setContentId:g,open:y,stateAttribute:S,trigger:m,onTriggerChange:p,onTriggerEnter:c.useCallback(()=>{d.isOpenDelayedRef.current?T():C()},[d.isOpenDelayedRef,T,C]),onTriggerLeave:c.useCallback(()=>{v?P():(window.clearTimeout(_.current),_.current=0)},[P,v]),onOpen:C,onClose:P,disableHoverableContent:v,children:n})})},"Tooltip"),sl="TooltipTrigger",pP=c.forwardRef(Ce(function(e,n){const{__scopeTooltip:o,...a}=e,r=Eo(sl,o),i=oc(sl,o),l=Ka(o),d=c.useRef(null),u=G(n,d,r.onTriggerChange),m=c.useRef(!1),p=c.useRef(!1),f=c.useCallback(()=>m.current=!1,[]);return c.useEffect(()=>()=>document.removeEventListener("pointerup",f),[f]),s.jsx(Vn,{asChild:!0,...l,children:s.jsx(M.button,{"aria-describedby":r.open?r.contentId:void 0,"data-state":r.stateAttribute,...a,ref:u,onPointerMove:I(e.onPointerMove,g=>{g.pointerType!=="touch"&&!p.current&&!i.isPointerInTransitRef.current&&(r.onTriggerEnter(),p.current=!0)}),onPointerLeave:I(e.onPointerLeave,()=>{r.onTriggerLeave(),p.current=!1}),onPointerDown:I(e.onPointerDown,()=>{r.open&&r.onClose(),m.current=!0,document.addEventListener("pointerup",f,{once:!0})}),onFocus:I(e.onFocus,()=>{m.current||r.onOpen()}),onBlur:I(e.onBlur,r.onClose),onClick:I(e.onClick,r.onClose)})})},"TooltipTrigger")),ug="TooltipPortal",[mP,fP]=nc(ug,{forceMount:void 0}),gP=Ce(t=>{const{__scopeTooltip:e,forceMount:n,children:o,container:a}=t,r=Eo(ug,e);return s.jsx(mP,{scope:e,forceMount:n,children:s.jsx(xe,{present:n||r.open,children:s.jsx(vo,{asChild:!0,container:a,children:o})})})},"TooltipPortal"),co="TooltipContent",hP=c.forwardRef(Ce(function(e,n){const o=fP(co,e.__scopeTooltip),{forceMount:a=o.forceMount,side:r="top",...i}=e,l=Eo(co,e.__scopeTooltip);return s.jsx(xe,{present:a||l.open,children:l.disableHoverableContent?s.jsx(pg,{side:r,...i,ref:n}):s.jsx(_P,{side:r,...i,ref:n})})},"TooltipContent")),_P=c.forwardRef(Ce(function(e,n){const o=Eo(co,e.__scopeTooltip),a=oc(co,e.__scopeTooltip),r=c.useRef(null),i=G(n,r),[l,d]=c.useState(null),{trigger:u,onClose:m}=o,p=r.current,{onPointerInTransitChange:f}=a,g=c.useCallback(()=>{d(null),f(!1)},[f]),h=c.useCallback((_,v)=>{const x=_.currentTarget,w={x:_.clientX,y:_.clientY},y=mg(w,x.getBoundingClientRect()),b=fg(w,y),S=gg(v.getBoundingClientRect()),C=_g([...b,...S]);d(C),f(!0)},[f]);return c.useEffect(()=>()=>g(),[g]),c.useEffect(()=>{if(u&&p){const _=Ce(x=>h(x,p),"handleTriggerLeave"),v=Ce(x=>h(x,u),"handleContentLeave");return u.addEventListener("pointerleave",_),p.addEventListener("pointerleave",v),()=>{u.removeEventListener("pointerleave",_),p.removeEventListener("pointerleave",v)}}},[u,p,h,g]),c.useEffect(()=>{if(l){const _=Ce(v=>{const x=v.target,w={x:v.clientX,y:v.clientY},y=u?.contains(x)||p?.contains(x),b=!hg(w,l);y?g():b&&(g(),m())},"handleTrackPointerGrace");return document.addEventListener("pointermove",_),()=>document.removeEventListener("pointermove",_)}
218},[u,p,l,m,g]),s.jsx(pg,{...e,ref:i})},"TooltipContentHoverable")),vP=Kl("TooltipContent"),pg=c.forwardRef(Ce(function(e,n){const{__scopeTooltip:o,children:a,"aria-label":r,id:i,onEscapeKeyDown:l,onPointerDownOutside:d,...u}=e,m=Eo(co,o),p=Ka(o),{onClose:f}=m;c.useEffect(()=>(document.addEventListener(is,f),()=>document.removeEventListener(is,f)),[f]),c.useEffect(()=>{if(m.trigger){const h=Ce(_=>{_.target instanceof Node&&_.target.contains(m.trigger)&&f()},"handleScroll");return window.addEventListener("scroll",h,{capture:!0}),()=>window.removeEventListener("scroll",h,{capture:!0})}},[m.trigger,f]);const{setContentId:g}=m;return ie(()=>(g(i),()=>{g(void 0)}),[i,g]),s.jsx(nn,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:l,onPointerDownOutside:d,onFocusOutside:h=>h.preventDefault(),onDismiss:f,children:s.jsxs(Co,{"data-state":m.stateAttribute,role:r?void 0:"tooltip",id:r?void 0:m.contentId,...p,...u,ref:n,style:{...u.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[s.jsx(vP,{children:a}),r?s.jsx(Hm,{id:m.contentId,role:"tooltip",children:r}):null]})})},"TooltipContentImpl")),yP=c.forwardRef(Ce(function(e,n){const{__scopeTooltip:o,...a}=e,r=Ka(o);return s.jsx(Yx,{...r,...a,ref:n})},"TooltipArrow"));function mg(t,e){const n=Math.abs(e.top-t.y),o=Math.abs(e.bottom-t.y),a=Math.abs(e.right-t.x),r=Math.abs(e.left-t.x);switch(Math.min(n,o,a,r)){case r:return"left";case a:return"right";case n:return"top";case o:return"bottom";default:throw new Error("unreachable")}}Ce(mg,"getExitSideFromRect");function fg(t,e,n=5){const o=[];switch(e){case"top":o.push({x:t.x-n,y:t.y+n},{x:t.x+n,y:t.y+n});break;case"bottom":o.push({x:t.x-n,y:t.y-n},{x:t.x+n,y:t.y-n});break;case"left":o.push({x:t.x+n,y:t.y-n},{x:t.x+n,y:t.y+n});break;case"right":o.push({x:t.x-n,y:t.y-n},{x:t.x-n,y:t.y+n});break}return o}Ce(fg,"getPaddedExitPoints");function gg(t){const{top:e,right:n,bottom:o,left:a}=t;return[{x:a,y:e},{x:n,y:e},{x:n,y:o},{x:a,y:o}]}Ce(gg,"getPointsFromRect");function hg(t,e){const{x:n,y:o}=t;let a=!1;for(let r=0,i=e.length-1;r<e.length;i=r++){const l=e[r],d=e[i],u=l.x,m=l.y,p=d.x,f=d.y;m>o!=f>o&&n<(p-u)*(o-m)/(f-m)+u&&(a=!a)}return a}Ce(hg,"isPointInPolygon");function _g(t){const e=t.slice();return e.sort((n,o)=>n.x<o.x?-1:n.x>o.x?1:n.y<o.y?-1:n.y>o.y?1:0),vg(e)}Ce(_g,"getHull");function vg(t){if(t.length<=1)return t.slice();const e=[];for(let o=0;o<t.length;o++){const a=t[o];for(;e.length>=2;){const r=e[e.length-1],i=e[e.length-2];if((r.x-i.x)*(a.y-i.y)>=(r.y-i.y)*(a.x-i.x))e.pop();else break}e.push(a)}e.pop();const n=[];for(let o=t.length-1;o>=0;o--){const a=t[o];for(;n.length>=2;){const r=n[n.length-1],i=n[n.length-2];if((r.x-i.x)*(a.y-i.y)>=(r.y-i.y)*(a.x-i.x))n.pop();else break}n.push(a)}return n.pop(),e.length===1&&n.length===1&&e[0].x===n[0].x&&e[0].y===n[0].y?e:e.concat(n)}Ce(vg,"getHullPresorted");var ls=lP,ds=uP,us=pP,il=gP,da=hP,ps=yP;const yg=ls,cl=ds,bg=us,ac=c.forwardRef(({className:t,children:e,withArrow:n,sideOffset:o=4,align:a="center",...r},i)=>s.jsxs(da,{ref:i,sideOffset:o,align:a,className:k("z-50 overflow-hidden rounded-md bg-secondary px-3 py-1.5 text-sm text-secondary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 max-w-sm whitespace-normal",t),...r,children:[e,n&&s.jsx(ps,{className:"fill-secondary"})]}));ac.displayName=da.displayName;const wg=c.forwardRef((t,e)=>{if("label"in t){const{label:n,children:o,position:a="top",className:r,opened:i,disabled:l,delayDuration:d=0,align:u,withArrow:m=!1}=t;if(l||!n)return s.jsx(s.Fragment,{children:o});const p=c.isValidElement(o)&&o?.props?.disabled,g=(o?.props?.className||"").includes("w-full")||o?.props?.fullWidth,h=p?s.jsx("span",{className:k("inline-block",g?"w-full":"w-fit"),children:o}):o;return s.jsx(yg,{delayDuration:d,children:s.jsxs(cl,{open:i,children:[s.jsx(bg,{asChild:!0,children:h}),s.jsx(ac,{side:a,align:u,className:k(r),withArrow:m,children:n})]})})}return s.jsx(cl,{...t})});wg.displayName="Tooltip";const bP=({size:t=20,color:e="currentColor",strokeWidth:n=1.7,onClick:o,style:a})=>s.jsx("svg",{width:t,height:t,style:{...a},onClick:r=>o&&o(r),viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M9.99979 7.50019V10.8335M9.99979
21814.1669H10.0081M8.84588 3.24329L1.99181 15.0821C1.61164 15.7388 1.42156 16.0671 1.44965 16.3366C1.47416 16.5716 1.5973 16.7852 1.78843 16.9242C2.00756 17.0835 2.38695 17.0835 3.14572 17.0835H16.8539C17.6126 17.0835 17.992 17.0835 18.2111 16.9242C18.4023 16.7852 18.5254 16.5716 18.5499 16.3366C18.578 16.0671 18.3879 15.7388 18.0078 15.0821L11.1537 3.24329C10.7749 2.58899 10.5855 2.26184 10.3384 2.15196C10.1228 2.05612 9.87675 2.05612 9.6612 2.15196C9.4141 2.26184 9.22469 2.58899 8.84588 3.24329Z",stroke:e,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})}),wP=({size:t=16,onClick:e,style:n,color:o="currentColor"})=>s.jsx("svg",{width:t,height:t,viewBox:"0 0 16 16",style:{...n},onClick:a=>e&&e(a),fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M8 13.3333V6.66667M12 13.3333V2.66667M4 13.3333V10.6667",stroke:o,strokeLinecap:"round",strokeLinejoin:"round"})}),xg=({size:t=16,color:e="currentColor",strokeWidth:n=1.7,onClick:o,style:a})=>s.jsx("svg",{width:t,height:t,viewBox:"0 0 32 32",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...a},onClick:r=>o&&o(r),children:s.jsx("path",{d:"M25.3333 27.9998V19.9998M21.3333 23.9998H29.3333M29.3333 13.3332H2.66663M29.3333 15.9998V10.9332C29.3333 9.4397 29.3333 8.69296 29.0426 8.12253C28.787 7.62077 28.379 7.21282 27.8773 6.95716C27.3068 6.6665 26.5601 6.6665 25.0666 6.6665H6.93329C5.43982 6.6665 4.69308 6.6665 4.12265 6.95715C3.62089 7.21282 3.21294 7.62076 2.95728 8.12253C2.66663 8.69296 2.66663 9.4397 2.66663 10.9332V21.0665C2.66663 22.56 2.66663 23.3067 2.95728 23.8771C3.21294 24.3789 3.62089 24.7869 4.12265 25.0425C4.69308 25.3332 5.43982 25.3332 6.93329 25.3332H16",stroke:e,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})}),xP=({color:t="currentColor",size:e=1,strokeWidth:n=1.3,onClick:o,style:a})=>s.jsx("svg",{style:{...a},onClick:r=>o&&o(r),width:e,height:e,viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M1.33333 6.66668H14.6667M2.66667 3.33334H13.3333C14.0697 3.33334 14.6667 3.9303 14.6667 4.66668V11.3333C14.6667 12.0697 14.0697 12.6667 13.3333 12.6667H2.66667C1.93029 12.6667 1.33333 12.0697 1.33333 11.3333V4.66668C1.33333 3.9303 1.93029 3.33334 2.66667 3.33334Z",stroke:t,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})}),CP=({size:t=24,color:e="currentColor",strokeWidth:n=2,onClick:o,style:a})=>s.jsx("svg",{width:t,height:t,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:{...a},onClick:r=>o&&o(r),children:s.jsx("path",{d:"M16.5 16L21.5 21M21.5 16L16.5 21M22 10H2M22 12V8.2C22 7.0799 22 6.51984 21.782 6.09202C21.5903 5.7157 21.2843 5.40974 20.908 5.21799C20.4802 5 19.9201 5 18.8 5H5.2C4.0799 5 3.51984 5 3.09202 5.21799C2.7157 5.40973 2.40973 5.71569 2.21799 6.09202C2 6.51984 2 7.0799 2 8.2V15.8C2 16.9201 2 17.4802 2.21799 17.908C2.40973 18.2843 2.71569 18.5903 3.09202 18.782C3.51984 19 4.0799 19 5.2 19H12",stroke:e,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})}),SP=({size:t=16,color:e="currentColor",stroke:n,strokeWidth:o=1,style:a,className:r})=>s.jsx("svg",{width:t,height:t,viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",style:a,className:r,children:s.jsx("path",{d:"M14.6667 4.66666L9.93337 7.18666C9.55337 7.38666 9.11337 7.38666 8.73337 7.18666L4.00004 4.66666M1.33337 5.33332V12.6667C1.33337 13.4 1.93337 14 2.66671 14H12M5.33337 2.66666H13.3334C14.0698 2.66666 14.6667 3.26361 14.6667 3.99999V9.99999C14.6667 10.7364 14.0698 11.3333 13.3334 11.3333H5.33337C4.59699 11.3333 4.00004 10.7364 4.00004 9.99999V3.99999C4.00004 3.26361 4.59699 2.66666 5.33337 2.66666Z",stroke:n??e,strokeWidth:o,strokeLinecap:"round",strokeLinejoin:"round"})}),kP=({size:t=16,onClick:e,style:n,color:o="currentColor"})=>s.jsx("svg",{width:t,height:t,viewBox:"0 0 16 16",style:{...n},onClick:a=>e&&e(a),fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M14 3.33333C14 4.4379 11.3137 5.33333 8 5.33333C4.68629 5.33333 2 4.4379 2 3.33333M14 3.33333C14 2.22876 11.3137 1.33333 8 1.33333C4.68629 1.33333 2 2.22876 2 3.33333M14 3.33333V5.33333M2 3.33333L2.00004 12.6667C1.99633 12.9873 2.22391 13.3035 2.6636 13.5886C3.10329 13.8738 3.7422 14.1195 4.52647 14.3051C5.31074 14.4908 6.21739 14.6108 7.16999 14.6552C8.12259 14.6995 9.09321 14.6669 10 14.56M14 7.99999L12 11.3333H14.6667L12.6667 14.6667M2 7.99999C2.00096 8.31168 2.22046 8.61898 2.64097 8.89737C3.06148 9.17576 3.67137 9.41753 4.42198 9.6034C5.17258 9.78927 6.04312 9.91409 6.96414 9.9679C7.88516 10.0217 8.83116 10.003 9.72667 9.91333",stroke:o,strokeLinecap:"round",strokeLinejoin:"round"})}),PP=({color:t="currentColor",size:e=16,strokeWidth:n=1.25,onClick:o,style:a})=>s.jsx("svg",{style:{...a},onClick:r=>o&&o(r),width:e,height:e,viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M9.33341 1.33334V4.00001C9.33341 4.35363 9.47389 4.69277 9.72394 4.94282C9.97399 5.19287 10.3131 5.33334 10.6667 5.33334H13.3334M10.0001 1.33334H4.00008C3.64646 1.33334 3.30732 1.47382 3.05727 1.72387C2.80722 1.97392 2.66675 2.31305 2.66675 2.66668V13.3333C2.66675 13.687 2.80722 14.0261 3.05727 14.2762C3.30732 14.5262 3.64646 14.6667 4.00008 14.6667H12.0001C12.3537 14.6667 12.6928 14.5262 12.9429 14.2762C13.1929 14.0261 13.3334 13.687 13.3334 13.3333V4.66668L10.0001 1.33334Z",stroke:t,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})}),Cg=({size:t=14,color:e="currentColor",strokeWidth:n=1.7,onClick:o,style:a})=>s.jsx("svg",{width:t,height:t,style:{...a},onClick:r=>o&&o(r),viewBox:"0 0 14 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M9.66667 10.3333L13 7M13 7L9.66667 3.66667M13 7H5M5 1H4.2C3.0799 1 2.51984 1 2.09202 1.21799C1.7157 1.40973 1.40973 1.71569 1.21799 2.09202C1 2.51984 1 3.07989 1 4.2V9.8C1 10.9201 1 11.4802 1.21799 11.908C1.40973 12.2843 1.71569 12.5903 2.09202 12.782C2.51984 13 3.0799 13 4.2 13H
2185",stroke:e,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})}),EP=({color:t="#12B76A",size:e=10,strokeWidth:n=2,onClick:o,style:a})=>s.jsx("svg",{width:e,height:e,style:{...a},onClick:r=>o&&o(r),viewBox:"0 0 32 32",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M12.1816 12.1815L6.57187 6.57178M6.57187 25.428L12.2239 19.7759M19.8147 19.8182L25.4245 25.428M25.4245 6.57178L19.7716 12.2247M29.3333 15.9998C29.3333 23.3636 23.3638 29.3332 16 29.3332C8.63616 29.3332 2.66663 23.3636 2.66663 15.9998C2.66663 8.63604 8.63616 2.6665 16 2.6665C23.3638 2.6665 29.3333 8.63604 29.3333 15.9998ZM21.3333 15.9998C21.3333 18.9454 18.9455 21.3332 16 21.3332C13.0544 21.3332 10.6666 18.9454 10.6666 15.9998C10.6666 13.0543 13.0544 10.6665 16 10.6665C18.9455 10.6665 21.3333 13.0543 21.3333 15.9998Z",stroke:t,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})}),IP=({size:t=16,color:e="currentColor",strokeWidth:n=1,onClick:o,style:a})=>s.jsx("svg",{width:t,height:t,style:{...a},onClick:r=>o&&o(r),viewBox:"0 0 15 15",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M10.9001 3.49463C11.0614 3.21502 11.1527 2.90051 11.1661 2.57796M3.16927 2.57796C3.18245 2.90045 3.27349 3.21496 3.4346 3.49463M1.48535 6.4253C1.60731 6.32597 1.73782 6.23762 1.87535 6.1613M12.4593 6.1613C12.5968 6.23762 12.7274 6.32597 12.8493 6.4253M3.16745 11.1612C2.70801 11.1614 2.2563 11.0429 1.85612 10.8172M12.4786 10.8172C12.0785 11.0429 11.6268 11.1614 11.1673 11.1612M9.63385 6.09456L9.03385 6.36123M5.30052 7.96126L4.70052 8.22793M8.23411 9.62799L7.96745 9.028M6.36725 5.29466L6.10059 4.69466M9.63385 8.16136L9.03385 7.89469M5.30052 6.42796L4.70052 6.1613M6.16732 9.62799L6.43398 9.028M7.90072 5.29466L8.16738 4.69466M7.1672 2.49459C7.16648 2.22842 7.11264 1.96507 7.00883 1.71997C6.90502 1.47488 6.75333 1.25297 6.56265 1.06726C6.37197 0.881543 6.14614 0.735759 5.89839 0.638449C5.65065 0.541138 5.38597 0.49426 5.11987 0.50056C4.85377 0.506861 4.59161 0.566215 4.34874 0.675142C4.10588 0.784069 3.8872 0.940379 3.70552 1.13491C3.52385 1.32944 3.38283 1.55828 3.29074 1.80801C3.19864 2.05775 3.15733 2.32335 3.1692 2.58926C2.77734 2.69001 2.41354 2.87862 2.10536 3.1408C1.79718 3.40297 1.5527 3.73184 1.39043 4.10249C1.22817 4.47314 1.15238 4.87585 1.1688 5.28013C1.18522 5.68441 1.29342 6.07965 1.4852 6.43592C1.14799 6.70988 0.882822 7.06208 0.712764 7.46188C0.542706 7.86168 0.47291 8.29699 0.509447 8.72992C0.545985 9.16285 0.687749 9.58029 0.922408 9.94594C1.15707 10.3116 1.47751 10.6144 1.85587 10.8279C1.77351 11.4651 1.92398 12.1107 2.27962 12.6458C2.63526 13.1809 3.17215 13.5696 3.79154 13.7404C4.41094 13.9113 5.07118 13.8527 5.65085 13.5756C6.23051 13.2984 6.69062 12.8213 6.94654 12.2319C6.99374 12.1141 7.03033 11.9923 7.05587 11.8679C7.07454 11.7813 7.25987 11.7813 7.2792 11.8679C7.30453 11.9922 7.3409 12.1141 7.38787 12.2319C7.64379 12.8213 8.1039 13.2984 8.68356 13.5756C9.26323 13.8527 9.92347 13.9113 10.5429 13.7404C11.1623 13.5696 11.6991 13.1809 12.0548 12.6458C12.4104 12.1107 12.5609 11.4651 12.4785 10.8279C12.8569 10.6144 13.1773 10.3116 13.412 9.94594C13.6467 9.58029 13.7884 9.16285 13.825 8.72992C13.8615 8.29699 13.7917 7.86168 13.6216 7.46188C13.4516 7.06208 13.1864 6.70988 12.8492 6.43592C13.041 6.07965 13.1492 5.68441 13.1656 5.28013C13.182 4.87585 13.1062 4.47314 12.944 4.10249C12.7817 3.73184 12.5372 3.40297 12.2291 3.1408C11.9209 2.87862 11.5571 2.69001 11.1652 2.58926C11.1771 2.32335 11.1358 2.05775 11.0437 1.80801C10.9516 1.55828 10.8106 1.32944 10.6289 1.13491C10.4472 0.940379 10.2285 0.784069 9.98567 0.675142C9.7428 0.566215 9.48064 0.506861 9.21454 0.50056C8.94844 0.49426 8.68376 0.541138 8.43602 0.638449C8.18827 0.735759 7.96244 0.881543 7.77176 1.06726C7.58108 1.25297 7.42939 1.47488 7.32558 1.71997C7.22177 1.96507 7.16792 2.22842 7.1672 2.49459ZM9.16732 7.1613C9.16732 8.26587 8.27189 9.1613 7.16732 9.1613C6.06275 9.1613 5.16732 8.26587 5.16732 7.1613C5.16732 6.05673 6.06275 5.1613 7.16732 5.1613C8.27189 5.1613 9.16732 6.05673 9.16732 7.1613Z",stroke:e,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})}),TP=({color:t="currentColor",size:e=1,strokeWidth:n=1.3,onClick:o,style:a})=>s.jsx("svg",{style:{...a},onClick:r=>o&&o(r),width:e,height:e,viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M3.33333 5.33333L6 8M8 10L10.6667 12.6667M4 10L1.33333 7.33334L5.83333 2.82001C6.82255 1.93423 8.11348 1.461 9.44081 1.49758C10.7681 1.53416 12.0311 2.07778
21812.97 3.0167C13.9089 3.95562 14.4525 5.21853 14.4891 6.54586C14.5257 7.8732 14.0525 9.16413 13.1667 10.1533L8.66667 14.6667L6 12L10.26 7.76001C10.4701 7.48539 10.5734 7.1438 10.5506 6.79876C10.5277 6.45372 10.3803 6.12872 10.1358 5.8842C9.89129 5.63969 9.56629 5.4923 9.22125 5.46946C8.87621 5.44661 8.53462 5.54987 8.26 5.76001L4 10Z",stroke:t,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})}),AP=({color:t="currentColor",size:e=1,strokeWidth:n=1.3,onClick:o,style:a})=>s.jsx("svg",{style:{...a},onClick:r=>o&&o(r),width:e,height:e,viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M7.73348 11.2C7.66344 11.4539 7.54408 11.6915 7.38221 11.8992C7.22035 12.107 7.01915 12.2808 6.79009 12.4108C6.56104 12.5408 6.30863 12.6244 6.04726 12.6569C5.7859 12.6894 5.5207 12.67 5.26681 12.6C5.01292 12.5299 4.77531 12.4106 4.56755 12.2487C4.35979 12.0868 4.18595 11.8856 4.05595 11.6566C3.92595 11.4275 3.84233 11.1751 3.80988 10.9138C3.77743 10.6524 3.79677 10.3872 3.86681 10.1333M2 7.33333L14 4V12L2 9.33333V7.33333Z",stroke:t,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})}),RP=({color:t="currentColor",size:e=1,strokeWidth:n=1.3,onClick:o,style:a})=>s.jsx("svg",{style:{...a},onClick:r=>o&&o(r),width:e,height:e,viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M1.33333 14.6667L3.33333 12.6667M5 9L6.66667 7.33333M7 11L8.66667 9.33333M12 2L9.33333 4.66667H13.3333L10.6667 7.33333M4.20002 13.5333C4.34867 13.6825 4.5253 13.8008 4.71978 13.8816C4.91426 13.9624 5.12277 14.0039 5.33336 14.0039C5.54394 14.0039 5.75245 13.9624 5.94693 13.8816C6.14142 13.8008 6.31804 13.6825 6.46669 13.5333L8.00002 12L4.00002 8L2.46669 9.53333C2.31753 9.68198 2.19917 9.85861 2.11842 10.0531C2.03766 10.2476 1.99609 10.4561 1.99609 10.6667C1.99609 10.8772 2.03766 11.0858 2.11842 11.2802C2.19917 11.4747 2.31753 11.6514 2.46669 11.8L4.20002 13.5333Z",stroke:t,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})}),MP=({color:t="currentColor",size:e=1,strokeWidth:n=1.3,onClick:o,style:a})=>s.jsx("svg",{style:{...a},onClick:r=>o&&o(r),width:e,height:e,viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M13.3333 4.66666H7.33333M9.33333 11.3333H3.33333M9.33333 11.3333C9.33333 12.4379 10.2288 13.3333 11.3333 13.3333C12.4379 13.3333 13.3333 12.4379 13.3333 11.3333C13.3333 10.2288 12.4379 9.33332 11.3333 9.33332C10.2288 9.33332 9.33333 10.2288 9.33333 11.3333ZM6.66667 4.66666C6.66667 5.77123 5.77124 6.66666 4.66667 6.66666C3.5621 6.66666 2.66667 5.77123 2.66667 4.66666C2.66667 3.56209 3.5621 2.66666 4.66667 2.66666C5.77124 2.66666 6.66667 3.56209 6.66667 4.66666Z",stroke:t,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})}),NP=({color:t="currentcolor",size:e=10,strokeWidth:n=1.5,onClick:o,style:a})=>s.jsxs("svg",{style:{...a},onClick:r=>o&&o(r),width:e,height:e,viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[s.jsx("path",{d:"M8.00004 10C9.10461 10 10 9.10458 10 8.00001C10 6.89544 9.10461 6.00001 8.00004 6.00001C6.89547 6.00001 6.00004 6.89544 6.00004 8.00001C6.00004 9.10458 6.89547 10 8.00004 10Z",stroke:t,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"}),s.jsx("path",{d:"M12.4849 9.81819C12.4042 10.001 12.3801 10.2038 12.4158 10.4004C12.4514 10.597 12.5452 10.7784 12.6849 10.9212L12.7213 10.9576C12.834 11.0702 12.9234 11.2038 12.9844 11.351C13.0454 11.4981 13.0768 11.6559 13.0768 11.8152C13.0768 11.9745 13.0454 12.1322 12.9844 12.2793C12.9234 12.4265 12.834 12.5602 12.7213 12.6727C12.6087 12.7854 12.475 12.8748 12.3278 12.9358C12.1807 12.9968 12.023 13.0282 11.8637 13.0282C11.7044 13.0282 11.5467 12.9968 11.3995 12.9358C11.2524 12.8748 11.1187 12.7854 11.0061 12.6727L10.9697 12.6364C10.8269 12.4967 10.6455 12.4029 10.4489 12.3673C10.2523 12.3316 10.0495 12.3557 9.86671 12.4364C9.68745 12.5132 9.53458 12.6408 9.42689 12.8034C9.31921 12.966 9.26142 13.1565 9.26065 13.3515V13.4546C9.26065 13.776 9.13294 14.0843 8.90562 14.3117C8.67831 14.539 8.37 14.6667 8.04853 14.6667C7.72705 14.6667 7.41874 14.539 7.19143 14.3117C6.96411 14.0843 6.8364 13.776 6.8364 13.4546V13.4C6.83171 13.1994 6.76678 13.0049 6.65005 12.8416C6.53332 12.6784 6.37018 12.5541 6.18186 12.4849C5.99906 12.4042 5.79629 12.3801 5.59968 12.4158C5.40308 12.4514 5.22166 12.5451 5.07883 12.6849L5.04247 12.7212C4.92989 12.8339 4.79621 12.9233 4.64906 12.9843C4.50191 13.0453 4.34418 13.0767 4.18489 13.0767C4.0256 13.0767 3.86787 13.0453 3.72072 12.9843C3.57357 12.9233 3.43989 12.8339 3.32731 12.7212C3.21461 12.6087 3.12521 12.475 3.06421 12.3278C3.00321 12.1807 2.97181 12.0229 2.97181 11.8636C2.97181 11.7044 3.00321 11.5466 3.06421 11.3995C3.12521 11.2523 3.21461 11.1186 3.32731 11.0061L3.36368 10.9697C3.5034 10.8269 3.59712 10.6455 3.63277 10.4489C3.66842 10.2522 3.64435 10.0495 3.56368 9.86668C3.48685 9.68742 3.35929 9.53455 3.19669 9.42686C3.03409 9.31918 2.84355 9.26139 2.64853 9.26062H2.5455C2.22402 9.26062 1.91571 9.13291 1.6884 8.90559C1.46108 8.67828 1.33337 8.36997 1.33337 8.0485C1.33337 7.72702 1.46108 7.41871 1.6884 7.1914C1.91571 6.96408 2.22402 6.83637 2.5455 6.83637H2.60004C2.80064 6.83168 2.9952 6.76675 3.1584 6.65002C3.32161 6.53328 3.44593 6.37015 3.51519 6.18183C3.59587 5.99903 3.61993 5.79626 3.58429 5.59965C3.54864 5.40305 3.45491 5.22163 3.31519 5.0788L3.27883 5.04243C3.16613 4.92986 3.07673 4.79618 3.01573 4.64903C2.95473 4.50188 2.92333 4.34415 2.92333 4.18486C2.92333 4.02557 2.95473 3.86784 3.01573 3.72069C3.07673 3.57354 3.16613 3.43986 3.27883 3.32728C3.3914 3.21458 3.52509 3.12518 3.67223 3.06418C3.81938 3.00318 3.97711 2.97178 4.1364 2.97178C4.2957 2.97178 4.45343 3.00318 4.60057 3.06418C4.74772 3.12518 4.88141 3.21458 4.99398 3.32728L5.03034 3.36365C5.17318 3.50337 5.3546 3.59709 5.5512 3.63274C5.7478 3.66839 5.95058 3.64432 6.13337 3.56365H6.18186C6.36111 3.48682 6.51399 3.35926 6.62167 3.19666C6.72936 3.03406 6.78714 2.84352 6.78792 2.6485V2.54546C6.78792 2.22399 6.91563 1.91568 7.14294 1.68837C7.37026 1.46105 7.67857 1.33334 8.00004 1.33334C8.32152 1.33334 8.62982
2181.46105 8.85714 1.68837C9.08446 1.91568 9.21216 2.22399 9.21216 2.54546V2.60001C9.21294 2.79503 9.27073 2.98557 9.37841 3.14817C9.48609 3.31077 9.63897 3.43834 9.81822 3.51516C10.001 3.59584 10.2038 3.6199 10.4004 3.58426C10.597 3.54861 10.7784 3.45488 10.9213 3.31516L10.9576 3.2788C11.0702 3.1661 11.2039 3.07669 11.351 3.0157C11.4982 2.9547 11.6559 2.9233 11.8152 2.9233C11.9745 2.9233 12.1322 2.9547 12.2794 3.0157C12.4265 3.07669 12.5602 3.1661 12.6728 3.2788C12.7855 3.39137 12.8749 3.52505 12.9359 3.6722C12.9969 3.81935 13.0283 3.97708 13.0283 4.13637C13.0283 4.29567 12.9969 4.45339 12.9359 4.60054C12.8749 4.74769 12.7855 4.88138 12.6728 4.99395L12.6364 5.03031C12.4967 5.17315 12.403 5.35457 12.3673 5.55117C12.3317 5.74777 12.3557 5.95055 12.4364 6.13334V6.18183C12.5132 6.36108 12.6408 6.51396 12.8034 6.62164C12.966 6.72932 13.1565 6.78711 13.3516 6.78789H13.4546C13.7761 6.78789 14.0844 6.91559 14.3117 7.14291C14.539 7.37023 14.6667 7.67854 14.6667 8.00001C14.6667 8.32148 14.539 8.62979 14.3117 8.85711C14.0844 9.08443 13.7761 9.21213 13.4546 9.21213H13.4C13.205 9.21291 13.0145 9.2707 12.8519 9.37838C12.6893 9.48606 12.5617 9.63894 12.4849 9.81819Z",stroke:t,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})]}),OP=({size:t=16,onClick:e,style:n,color:o="currentColor"})=>s.jsx("svg",{width:t,height:t,viewBox:"0 0 16 16",style:{...n},onClick:a=>e&&e(a),fill:"none",xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M4.66667 7.33333L6 6L4.66667 4.66667M7.33333 8.66667H10M3.33333 2H12.6667C13.403 2 14 2.59695 14 3.33333V12.6667C14 13.403 13.403 14 12.6667 14H3.33333C2.59695 14 2 13.403 2 12.6667V3.33333C2 2.59695 2.59695 2 3.33333 2Z",stroke:o,strokeLinecap:"round",strokeLinejoin:"round"})}),jP=({size:t=28,color:e="currentColor",strokeWidth:n=1.7,onClick:o,fill:a="none",style:r})=>s.jsx("svg",{width:t,height:t,style:{...r},onClick:i=>o&&o(i),viewBox:"0 0 24 24",fill:a,xmlns:"http://www.w3.org/2000/svg",children:s.jsx("path",{d:"M13 2L4.09344 12.6879C3.74463 13.1064 3.57023 13.3157 3.56756 13.4925C3.56524 13.6461 3.63372 13.7923 3.75324 13.8889C3.89073 14 4.16316 14 4.70802 14H12L11 22L19.9065 11.3121C20.2553 10.8936 20.4297 10.6843 20.4324 10.5075C20.4347 10.3539 20.3663 10.2077 20.2467 10.1111C20.1092 10 19.8368 10 19.292 10H12L13 2Z",stroke:e,strokeWidth:n,strokeLinecap:"round",strokeLinejoin:"round"})}),Sg="nabiq-theme",DP=()=>{if(typeof window>"u"||typeof document>"u"||document.documentElement.classList.contains("dark"))return"dark";const t=window.localStorage.getItem(Sg);return t==="dark"||t==="light"?t:"dark"},LP=()=>{const[t,e]=c.useState(()=>DP()==="dark");return c.useEffect(()=>{if(typeof document>"u")return;const n=document.documentElement,o=()=>{e(n.classList.contains("dark"))};let a=null;typeof MutationObserver<"u"&&(a=new MutationObserver(o),a.observe(n,{attributes:!0,attributeFilter:["class"]}));const r=i=>{i.key===Sg&&(i.newValue==="dark"||i.newValue==="light")&&e(i.newValue==="dark")};return o(),window.addEventListener("storage",r),()=>{a?.disconnect(),window.removeEventListener("storage",r)}},[]),t},kg=c.forwardRef(({className:t,type:e,...n},o)=>{const r=LP()?"border border-tab":"border border-border/70 focus-visible:border-primary focus-visible:ring-primary-dark/20";return s.jsx("input",{type:e,className:k("flex h-9 w-full rounded !bg-input/5 !px-3 !py-1 gap-1 shadow-xs text-sm font-normal text-foreground ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-0 focus-visible:ring-offset-primary disabled:cursor-not-allowed disabled:opacity-50 transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground file:py-1",r,t),ref:o,...n})});kg.displayName="BaseInput";const Pg=c.forwardRef(({className:t,...e},n)=>s.jsx(kg,{ref:n,className:k(t),...e}));Pg.displayName="Input";const ms=c.forwardRef(({className:t,label:e,description:n,error:o,leftSection:a,rightSection:r,required:i,wrapperClassName:l,leftSectionClassName:d,disabled:u,...m},p)=>{const f=!!a,g=!!r;return s.jsxs("div",{className:k("space-y-2 text-sm text-muted-foreground",l),children:[e&&s.jsxs("label",{className:"flex items-center gap-1 text-xs font-medium tracking-wide text-muted-foreground",children:[s.jsx("span",{children:e}),i&&s.jsx("span",{className:"text-destructive",children:"*"})]}),s.jsxs("div",{className:"relative",children:[f&&s.jsx("span",{className:k("pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3 text-muted-foreground
218/70",d),children:a}),s.jsx(Pg,{ref:p,className:k("h-9 text-foreground placeholder:text-muted-foreground/70 transition-colors",f&&"!pl-10",g&&"!pr-10",o&&"border-destructive focus-visible:ring-destructive/40 focus-visible:border-destructive",u&&"cursor-not-allowed opacity-70",t),disabled:u,...m}),g&&s.jsx("span",{className:"absolute inset-y-0 right-0 flex items-center pr-3 text-muted-foreground/70",children:r})]}),n&&!o&&s.jsx(ae,{size:"sm",color:"dimmed",children:n}),o&&s.jsx(ae,{size:"sm",className:"text-destructive",children:o})]})});ms.displayName="TextInput";function Vo(t){return t>=1e6?(t/1e6).toFixed(2)+"M":t?.toLocaleString()}const ll=t=>{if(!t||typeof t!="object")return t;const e={};for(const n in t){const o=t[n];o&&typeof o=="object"&&!Array.isArray(o)?e[n]=ll(o):Array.isArray(o)?e[n]=o.map(a=>a&&typeof a=="object"&&!Array.isArray(a)?ll(a):typeof a=="string"?a.trim():a):typeof o=="string"?e[n]=o.trim():e[n]=o}return e};function FP(t){return Object.keys(t).map(e=>`${encodeURIComponent(e)}=${encodeURIComponent(t[e])}`).join("&")}function t2(t){return t.replace(/([A-Z])/g," $1").toLowerCase().replace(/\b\w/g,n=>n.toUpperCase())}const n2=t=>{const e=t.replace(/_/g," ").toLowerCase();return e.charAt(0).toUpperCase()+e.slice(1)},o2=t=>t?t.replace(/[_-]/g," ").replace(/([A-Z])/g," $1").trim().split(" ").map(e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()).join(" "):"",UP=t=>t?t.charAt(0).toUpperCase()+t.slice(1).toLowerCase():"",VP=t=>{const e=t.trim();return e&&e.charAt(0).toUpperCase()+e.slice(1)},dl={USD:"$",BDT:"à§³",INR:"â¹",EUR:"â¬",GBP:"£",JPY:"Â¥",CNY:"Â¥",CAD:"C$",AUD:"A$",CHF:"CHF",SEK:"kr",NOK:"kr",DKK:"kr",KRW:"â©",THB:"฿",MYR:"RM",SGD:"S$",HKD:"HK$",NZD:"NZ$",ZAR:"R"},a2=(t,e,n)=>{const o={count:"",percentage:"%",amount:n?dl[n?.toUpperCase()]||`${n?.toUpperCase()} `:"$",currency:n?dl[n?.toUpperCase()]||`${n?.toUpperCase()} `:"$",boolean:""};return e==="boolean"?t?"Yes":"No":e==="number"?Vo(t):e==="currency"||e==="amount"?`${o[e]}${Vo(t)}`:e==="percentage"?`${Vo(t)}${o[e]}`:`${o[e]}${Vo(t)}`},r2=t=>{if(!t||t.trim().length===0)return!0;let e=t.replace(/^https?:\/\//i,"");if(e=e.replace(/^www\./i,""),e=e.split("/")[0].split("?")[0].split("#")[0],!e.includes("."))return!1;const n=e.split(".");if(n.length<2)return!1;const o=n[n.length-1].toLowerCase(),a=["com","org","net","edu","gov","mil","int","co","uk","us","ca","au","de","fr","jp","cn","in","br","ru","ai","io","me","tv","cc","ly","be","ch","nl","se","no","dk","fi","pl","it","es","pt","gr","tr","mx","ar","cl","pe","ve","xyz","tech","online","site","store","app","dev","blog","news","info","biz","name","pro","aero","coop","museum","travel","asia","cat","jobs","mobi","tel","xxx","post","mil"];return o.length>=2&&(a.includes(o)||/^[a-z]{2,}$/.test(o))},s2=t=>{if(!t||t.trim().length===0)return t;let e=t.trim();if(e=e.replace(/^https?:\/\//i,""),!e)return t;const n=e.split("/"),o=n[0],a=o.split("."),r=o.toLowerCase().startsWith("www."),i=a.length<=2;return!r&&i&&(n[0]=`www.${o}`),e=n.join("/"),e=`https://${e}`,e},i2=t=>{if(!t||typeof t!="string")return!1;const e=/<[a-z][\s\S]*>/i,n=/<!DOCTYPE|<html[\s>]/i;return e.test(t)||n.test(t)},c2=(t,e=2)=>{if(t===0)return"0 B";const n=1024,o=e<0?0:e,a=["B","KB","MB","GB","TB","PB","EB","ZB","YB"],r=Math.floor(Math.log(t)/Math.log(n)),i=(t/Math.pow(n,r)).toFixed(o);return`${parseFloat(i)} ${a[r]}`},l2=(t,e=50)=>t.length>e?t.slice(0,e)+"â¦":t,d2=t=>typeof t=="string";function u2(t){if(!t)return"";const n=t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").split(` 219`),o=[];let a=!1;for(const r of n){const i=/^-\s+/.test(r);i&&!a?(o.push("<ul>"),a=!0):!i&&a&&(o.push("</ul>"),a=!1);const l=r.replace(/\*\*(.+?)\*\*/g,"<strong>$1</strong>").replace(/(https?:\/\/[^\s<]+)/g,'<a href="$1" target="_blank" rel="noopener noreferrer">$1</a>');i?o.push(`<li>${l.replace(/^-\s+/,"")}</li>`):l.trim()&&o.push(`<p>${l}</p>`)}return a&&o.push("</ul>"),o.join("")}const p2=t=>t&&t.replace(/<a\b([^>]*)>/gi,(e,n)=>`<a${n.replace(/\s*(href|target|rel|onclick)\s*=\s*(".*?"|'.*?'|[^\s>]+)/gi,"")} aria-disabled="true" style="pointer-events:none;cursor:default;">`),ul=t=>{if(!t||typeof t!="string")return"U";const e=t.trim();if(e==="")return"U";const n=e.split(" ");return n.length===0?"U":n.length===1?n[0].slice(0,2).toUpperCase():n[0].charAt(0).toUpperCase()+n[1].charAt(0).toUpperCase()};var Eg={exports:{}};/*! 220 Copyright (c) 2018 Jed Watson. 221 Licensed under the MIT License (MIT), see 222 http://jedwatson.github.io/classnames 223*/(function(t){(function(){var e={}.hasOwnProperty;function n(){for(var r="",i=0;i<arguments.length;i++){var l=arguments[i];l&&(r=a(r,o(l)))}return r}function o(r){if(typeof r=="string"||typeof r=="number")return r;if(typeof r!="object")return"";if(Array.isArray(r))return n.apply(null,r);if(r.toString!==Object.prototype.toString&&!r.toString.toString().includes("[native code]"))return r.toString();var i="";for(var l in r)e.call(r,l)&&r[l]&&(i=a(i,l));return i}function a(r,i){return i?r?r+" "+i:r+i:r}
223t.exports?(n.default=n,t.exports=n):window.classNames=n})()})(Eg);var $P=Eg.exports;const rc=ma($P),BP=$t("flex flex-row",{variants:{align:{start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch",baseline:"items-baseline"},justify:{start:"justify-start",center:"justify-center",end:"justify-end","space-between":"justify-between","space-around":"justify-around","space-evenly":"justify-evenly"},gap:{xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"},wrap:{wrap:"flex-wrap",nowrap:"flex-nowrap","wrap-reverse":"flex-wrap-reverse"}},defaultVariants:{gap:"md",wrap:"nowrap"}}),GP=["xs","sm","md","lg","xl"],qP=["start","center","end","stretch","baseline"],Ge=c.forwardRef(({className:t,align:e,justify:n,gap:o,spacing:a,wrap:r,style:i,...l},d)=>{const u=a??o;let m,p;u!==void 0&&(typeof u=="string"&&GP.includes(u)?m=u:p={gap:typeof u=="number"?`${u}px`:u});let f=n;n==="flex-start"?f="start":n==="flex-end"&&(f="end");let g=e;return e==="flex-start"?g="start":e==="flex-end"?g="end":e&&!qP.includes(e)&&(g=void 0),s.jsx("div",{ref:d,className:k(BP({align:g,justify:f,gap:m,wrap:r}),t),style:{...i,...p},...l})});Ge.displayName="Group";const WP=$t("flex flex-col",{variants:{align:{start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"},justify:{start:"justify-start",center:"justify-center",end:"justify-end","space-between":"justify-between","space-around":"justify-around","space-evenly":"justify-evenly"},gap:{xs:"gap-1",sm:"gap-2",md:"gap-4",lg:"gap-6",xl:"gap-8"}},defaultVariants:{gap:"md"}}),zP=["xs","sm","md","lg","xl"],Ee=c.forwardRef(({className:t,align:e,justify:n,gap:o,spacing:a,style:r,...i},l)=>{const d=a??o;let u,m;return d!==void 0&&(typeof d=="string"&&zP.includes(d)?u=d:m={gap:typeof d=="number"?`${d}px`:d}),s.jsx("div",{ref:l,className:k(WP({align:e,justify:n,gap:u}),t),style:{...r,...m},...i})});Ee.displayName="Stack";function HP({opened:t,onClick:e,size:n="md",className:o}){const a=n==="sm"?16:n==="lg"?24:20;return s.jsx("button",{type:"button",onClick:e,className:rc("flex items-center justify-center rounded-md p-1.5 text-muted-foreground hover:bg-muted hover:text-foreground transition-colors",o),"aria-label":t?"Close navigation":"Open navigation",children:t?s.jsx(Qn,{size:a,strokeWidth:2}):s.jsx(Fh,{size:a,strokeWidth:2})})}const Ig=({className:t=""})=>s.jsx("svg",{viewBox:"0 0 103.835 104.734",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:`animate-brand-spin block ${t}`,"aria-label":"Loading",role:"img",children:s.jsx("path",{d:"M0 52.4619C30.3665 47.6625 47.5218 30.1751 52.4641 0C54.0798 13.4957 58.927 25.4706 68.5739 35.1647C78.2209 44.9538 90.0063 50.371 103.835 52.2718C90.2914 54.3627 78.4585 59.4949 68.8591 69.2366C59.1646 79.0256 54.0798 90.9532 52.4166 104.734C50.5157 90.9532 45.4784 78.8831 35.6414 69.0939C25.8519 59.3048 13.8764 54.0301 0 52.5095V52.4619Z",fill:"currentColor"})}),lo=()=>s.jsx("div",{className:"fixed top-0 left-0 w-screen h-screen flex items-center justify-center z-[99999] bg-background",children:s.jsx(Ig,{className:"w-48 text-white"})});lo.displayName="PageLoader";const oe=()=>s.jsx("div",{className:"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 flex items-center justify-center opacity-60",children:s.jsx(Ig,{className:"w-48"})});oe.displayName="ContentLoader";const KP={xs:"max-w-xs",sm:"max-w-sm",md:"max-w-lg",lg:"max-w-2xl",xl:"max-w-4xl","2xl":"max-w-6xl"},YP={sm:"rounded",md:"rounded-md",lg:"rounded-lg",xl:"rounded-xl","2xl":"rounded-2xl"},Ya=({title:t=()=>null,body:e,children:n,size:o="lg",radius:a="sm",centered:r=!0,style:i,onClose:l,zIndex:d=999,closeOnClickOutside:u=!1,closeOnEscape:m=!1,withCloseButton:p=!0,withNoHeader:f=!1,withCustomClose:g=!1,closeButtonClassName:h,toggleFromOutside:_=!1,setToggleFromOutside:v,bodyContained:x=!1})=>{const[w,y]=c.useState(_),b=c.useCallback(T=>{y(A=>(v&&v(T),A&&!T&&l&&l(),T))},[l,v]);c.useEffect(()=>{y(_)},[_]);const S=typeof o=="string"?KP[o]??"":"",C=typeof a=="string"?YP[a]??"":"",P={zIndex:d,...typeof o=="number"?{width:o}:{},...typeof a=="number"?{borderRadius:a}:{},...i};return s.jsxs(s.Fragment,{children:[n({setOpened:b}),s.jsx(bo,{open:w,onOpenChange:b,children:s.jsxs(wo,{children:[s.jsx(on,{className:"fixed inset-0 z-[var(--modal-z,1000)] bg-background/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=open]:fade-in-0 data-[state=closed]:fade-out-0",style:{"--modal-z":d-1}}),s.jsxs(an,{className:k("fixed left-1/2 top-1/2 z-[var(--modal-z,1001)] w-full translate-x-[-50%] translate-y-[-50%] bg-card p-0 text-foreground shadow-lg border border-border data-[state=open]:animate-in data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:zoom-out-95",C||"rounded",S||"max-w-3xl",r?"":"top-[10%] translate-y-0"),style:P,onInteractOutside:T=>{u||T.preventDefault()},onEscapeKeyDown:T=>{m||T.preventDefault()},children:[!f&&s.jsxs("div",{className:"flex items-start justify-between border-b border-border/90 px-6 py-4",children:[s.jsx("div",{className:"flex-1 pr-6 text-left text-lg font-semibold tracking-tight",children:t({setOpened:b})}),p&&!g&&s.jsxs(Ot,{className:"rounded-full border border-border/40 bg-secondary/40 p-2 text-muted-foreground transition-colors hover:border-destructive/60 hover:bg-destructive/10 hover:text-destructive focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background",children:[s.jsx(Qn,{className:"h-4 w-4"}),s.jsx("span",{className:"sr-only",children:"Close"})]})]}),g&&s.jsxs(Ot,{className:k("absolute top-6 rounded-full border border-border/40 bg-secondary/40 p-2 text-muted-foreground transition-colors hover:border-destructive/60 hover:bg-destructive/10 hover:text-destructive focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background z-50",h),style:{right:f?20:24},children:[s.jsx(Qn,{className:"h-4 w-4"}),s.jsx("span",{className:"sr-only",children:"Close"})]}),s.jsx("div",{className:k("relative px-6 py-6 text-left",x?k("flex min-h-0 flex-col overflow-hidden",f?"h-[min(80vh,calc(100vh-120px))] max-h-[min(80vh,calc(100vh-120px))]":"h-[80vh] max-h-[80vh]"):k(f?"max-h-[calc(100vh-120px)]":"max-h-[80vh]","overflow-y-auto")),style:!x&&f?{maxHeight:"calc(100vh - 120px)"}:void 0,children:e({setOpened:b})})]})]})})]})},XP=$t("font-medium text-foreground",{variants:{level:{h1:"text-4xl lg:text-5xl font-medium",h2:"text-3xl lg:text-4xl font-medium",h3:"text-2xl lg:text-3xl font-medium",h4:"text-xl lg:text-2xl font-medium",h5:"text-lg lg:text-xl font-medium",h6:"text-base lg:text-lg font-medium"},variant:{default:"text-foreground",muted:"text-muted-foreground",primary:"text-primary-dark dark:text-primary"}},defaultVariants:{level:"h2",variant:"default"}}),fs=c.forwardRef(({className:t,level:e="h2",variant:n,...o},a)=>{const r=e;return s.jsx(r,{ref:a,className:k(XP({level:e,variant:n}),t),...o})});fs.displayName="Heading";const Tg="/assets/NewFullLogo-C9LPdB6M.svg",Ag="/assets/NewFullLogoWithoutBG-DUBhKv2u.svg",gs="/assets/avatar-DzBsjadh.png",m2=El,me=vh,He={AUTH:{SIGN_UP_PAGE_VIEWED:"Sign_Up_Page_v1.0",SIGN_UP_SHOPIFY_CTA_CLICKED:"Sign_Up_Shopify_v1.0",SIGN_UP_WOOCOMMERCE_CTA_CLICKED:"Sign_Up_WooCommerce_v1.0",SIGN_UP_SHOPIFY_PAGEVIEW:"Sign_Up_W
223ith_Shopify_Pageview_v1.0",SIGN_UP_SHOPIFY_SUCCESSFUL:"Sign_Up_With_Shopify_Successful_v1.0",SIGN_UP_MANUAL:"Sign_Up_Manual_v1.0",SIGN_UP_WOOCOMMERCE_REGISTERED:"Sign_Up_WooCommerce_Register_v1.0",SIGN_UP_WOOCOMMERCE_CONNECTED:"Sign_Up_WooCommerce_Connected_v1.0",SIGN_UP_WOOCOMMERCE_VERIFIED:"Sign_Up_WooCommerce_Verified_v1.0",SIGN_UP_DASHBOARD_VIEWED:"Sign_Up_Dashboard_v1.0",SIGN_UP_BOOKING_CONFIRMATION:"Sign_Up_Booking_Confirmation",USER_SIGNED_IN:"User_Signed_In",USER_SIGNED_UP:"User_Signed_Up",BUSINESS_INFO_VERIFIED_SHOPIFY:"Business_Info_Verified_Shopify",BUSINESS_INFO_VERIFIED_NON_SHOPIFY:"Business_Info_Verified_Non_Shopify"},SHOPIFY_ONBOARDING:{STAGE_VIEWED:"Shopify_Onboarding_Stage_Viewed",SETUP_READY:"Shopify_Onboarding_Setup_Ready",SETUP_TIMEOUT:"Shopify_Onboarding_Setup_Timeout",AGENT_TEST_EMAIL_SENT:"Shopify_Onboarding_Agent_Test_Email_Sent",AGENT_ACTIVATED:"Shopify_Onboarding_Agent_Activated",AGENT_ACTIVATION_FAILED:"Shopify_Onboarding_Agent_Activation_Failed"},CAMPAIGN:{CUSTOM_CAMPAIGN_BUTTON_CLICKED:"Custom_Campaign_Button",FIRST_CAMPAIGN_CREATED:"Date_User_Created_First_Campaign",FIRST_CAMPAIGN_STATUS:"User_Created_First_Campaign_Status",FIRST_CAMPAIGN_LAUNCHED:"Date_User_Launched_First_Campaign",PRESET_TOGGLE:{"abandoned-cart-recovery":"Preset_Campaign_Cart_Abandoned","abandoned-browsing-recovery":"Preset_Campaign_Browse_Abandoned","abandoned-checkout-recovery":"Preset_Campaign_Checkout_Abandoned"}},CAMPAIGN_BUILDER:{DRAFT_CREATED:"Campaign_Builder_Draft_Created",TAB_VIEWED:"Campaign_Builder_Tab_Viewed",CONTINUE_CLICKED:"Campaign_Builder_Continue_Clicked",WORKFLOW_GENERATED:"Campaign_Builder_Workflow_Generated",NODE_CONTENT_SAVED:"Campaign_Builder_Node_Content_Saved",LAUNCH_MODAL_OPENED:"Campaign_Launch_Modal_Opened",LAUNCH_SUCCESS:"Campaign_Launch_Success",LAUNCH_FAILED:"Campaign_Launch_Failed"},CONTENT:{PAGE_VIEWED:"Content_Page_Viewed",TEMPLATE_OPENED:"Content_Template_Opened",TEMPLATE_CREATED:"Content_Template_Created",FIRST_EMAIL_TEMPLATE_CREATED:"User_Created_First_Email_Template",CREATE_FROM_SCRATCH:"Content_Create_From_Scratch",TEMPLATE_EDIT_STARTED:"Content_Template_Edit_Started",TEMPLATE_SAVED:"Content_Template_Saved",SEND_TEST_EMAIL_INTENT:"Content_Send_Test_Email",TEST_EMAIL_SENT:"Content_Test_Email_Sent"},DATAROOM:{SERVER_SIDE_DATASOURCE_STARTED:"Server_Side_Datasource_Started",SERVER_SIDE_DOMAIN_CONNECTED:"Server_Side_Domain_Connected",SERVER_SIDE_CONNECTED_SUCCESS:"Server_Side_Connected_Success",SHOPIFY_CONNECTION_STARTED:"Shopify_Connection_Started",SHOPIFY_CONNECTED:"Shopify_Connected",MANUAL_SIGNUP_SHOPIFY_CONNECTION_SUCCESS:"Manual_Signup_Shopify_Connection_Success",WOOCOMMERCE_CONNECTION_STARTED:"Dataroom_WooCommerce_Connection_Started",WOOCOMMERCE_CREDENTIALS_SUBMITTED:"Dataroom_WooCommerce_Credentials_Submitted",WOOCOMMERCE_CONNECTION_SUCCESSFUL:"Dataroom_WooCommerce_Connection_Successful",WORDPRESS_CONNECTION_STARTED:"Dataroom_WordPress_Connection_Started",WORDPRESS_CONNECTION_SUCCESSFUL:"Dataroom_WordPress_Connection_Successful",AIRWALLEX_CONNECTION_STARTED:"Dataroom_AirWallex_Connection_Started",AIRWALLEX_CONNECTION_SUCCESSFUL:"Dataroom_AirWallex_Connection_Successful",SALLA_CONNECT_CLICKED:"connect_clicked",DATASOURCE_DISCONNECTED:"Dataroom_Datasource_Disconnected",CRM_CONNECTION_STARTED:{salesforce:"Dataroom_Salesforce_Connection_Started",hubspot:"Dataroom_Hubspot_Connection_Started",pipedrive:"Dataroom_Pipedrive_Connection_Started",zoho:"Dataroom_ZohoCRM_Connection_Started"},CRM_CONNECTION_SUCCESSFUL:{salesforce:"Dataroom_Salesforce_Connection_Successful",hubspot:"Dataroom_Hubspot_Connection_Successful",pipedrive:"Dataroom_Pipedrive_Connection_Successful",zoho:"Dataroom_ZohoCRM_Connection_Successful"}},INTEGRATIONS:{PAGE_VIEWED:"Integrations_Page_Viewed",WHATSAPP_STARTED:"Integrations_Whatsapp_Started",WHATSAPP_SUCCESS:"Integrations_Whatsapp_Success",AUTOSEND_SUCCESS:"Integrations_AutoSend_Success",MARKEMAIL_SUCCESS:"Integrations_MarkEmail_Success",MARKSMS_SUCCESS:"Integrations_Marksms_Success",SMTP_SUCCESS:"Integrations_SMTP_Success",RESEND_SUCCESS:"Integrations_Resend_Connect_Success",SENDGRID_SUCCESS:"Integrations_Sendgrid_Connect_Success",TWILIO_SUCCESS:"Integrations_Twilio_Connect_Success",ADAREACH_SUCCESS:"Integrations_AdaReach_Success",GATEWAY_CONNECT_STARTED:{autosend:"Integrations_AutoSend_Started",sendgrid:"Integrations_Sendgrid_Connect_Started",resend:"Integrations_Re
223send_Connect_Started",smtp:"Integrations_SMTP_Started","mark-email":"Integrations_MarkEmail_Started","mark-sms":"Integrations_Marksms_Started",twilio:"Integrations_Twilio_Connect_Started",revesms:"Integrations_Reve_SMS_Connect_Started",boomcast:"Integrations_Boomcast_Started",adareach:"Integrations_AdaReach_Started"},GATEWAY_DIRECT_SUCCESS:{revesms:"Integrations_Reve_SMS_Connect_Success",boomcast:"Integrations_Boomcast_Success"},PUSH_FIREBASE_STARTED:"Integrations_Firebase_Started",PUSH_FIREBASE_SUCCESS:"Integrations_Firebase_Success"},BILLING:{PLAN_SELECTED:"Plan_Selected",PLANS_VIEWED:"Plans_Viewed"}},QP={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1},Rg=typeof window<"u"&&window.__APP_CONFIG__||{},se=t=>{const e=Rg[t];return e!==void 0&&e!==""?e:QP[t]??""},Ze={VITE_BASE_API_URL:se("VITE_BASE_API_URL"),VITE_BASE_API_URL_V1:se("VITE_BASE_API_URL_V1"),VITE_BASE_API_URL_V2:se("VITE_BASE_API_URL_V2"),VITE_ML_PIPELINE_BASE_URL:se("VITE_ML_PIPELINE_BASE_URL"),VITE_ML_API_KEY:se("VITE_ML_API_KEY"),VITE_MIDDLEWARE_URL:se("VITE_MIDDLEWARE_URL"),VITE_ACQUISITION_CHATBOT_SCRIPT_URL:se("VITE_ACQUISITION_CHATBOT_SCRIPT_URL"),VITE_ENV:se("VITE_ENV"),VITE_MODE:se("VITE_MODE"),VITE_APP_VERSION:se("VITE_APP_VERSION"),VITE_USER_POOL_ID:se("VITE_USER_POOL_ID"),VITE_CLIENT_ID:se("VITE_CLIENT_ID"),VITE_REGION:se("VITE_REGION"),VITE_AWS_COGNITO_DOMAIN:se("VITE_AWS_COGNITO_DOMAIN"),VITE_AWS_COGNITO_REDIRECT_SIGNIN_URL:se("VITE_AWS_COGNITO_REDIRECT_SIGNIN_URL"),VITE_AWS_COGNITO_REDIRECT_LOGOUT_URL:se("VITE_AWS_COGNITO_REDIRECT_LOGOUT_URL"),VITE_GOOGLE_CLIENT_ID:se("VITE_GOOGLE_CLIENT_ID"),VITE_RECAPTCHA_SITE_KEY:se("VITE_RECAPTCHA_SITE_KEY"),VITE_SENTRY_DSN:se("VITE_SENTRY_DSN"),VITE_POSTHOG_API_KEY:se("VITE_POSTHOG_API_KEY"),VITE_POSTHOG_PUBLIC_HOST:se("VITE_POSTHOG_PUBLIC_HOST"),VITE_INTERCOM_APP_ID:se("VITE_INTERCOM_APP_ID"),VITE_CHARGE_BEE_API_KEY:se("VITE_CHARGE_BEE_API_KEY"),VITE_CHARGE_BEE_SITE:se("VITE_CHARGE_BEE_SITE"),VITE_TOLT_API_KEY:se("VITE_TOLT_API_KEY"),VITE_NOTIFICATION_APP_ID:se("VITE_NOTIFICATION_APP_ID"),VITE_SHOPIFY_APP_NAME:se("VITE_SHOPIFY_APP_NAME"),VITE_COOKIE_SHOPIFY_DOMAIN:se("VITE_COOKIE_SHOPIFY_DOMAIN")};Object.keys(Rg).length>0;let Ye=null,$o=null;const uo=[],ZP=()=>{if(Ye)for(;uo.length;){const t=uo.shift();t.kind==="capture"?Ye.capture(t.event,t.properties,{timestamp:t.timestamp}):t.kind==="identify"?Ye.identify(t.distinctId,t.properties):Ye.reset(t.resetDeviceId)}},Xa=()=>$o||($o=(async()=>{const t=Ze.VITE_POSTHOG_API_KEY;if(!t)return null;const{default:e}=await te(async()=>{const{default:n}=await import("./vendor-analytics-uyq3WP7-.js");return{default:n}},[]);return e.init(t,{api_host:Ze.VITE_POSTHOG_PUBLIC_HOST,autocapture:!1,capture_pageview:!1}),Ye=e,ZP(),e})(),$o),Mg=()=>{Xa()},JP=(t,e)=>{if(Ye){Ye.capture(t,e);return}uo.push({kind:"capture",event:t,properties:e,timestamp:new Date}),Xa()},eE=(t,e)=>{if(Ye){Ye.identify(t,e);return}uo.push({kind:"identify",distinctId:t,properties:e}),Xa()},tE=t=>{if(Ye){Ye.reset(t);return}uo.push({kind:"reset",resetDeviceId:t}),Xa()},ft={init:Mg,capture:JP,identify:eE,reset:tE},pl=Object.freeze(Object.defineProperty({__proto__:null,default:ft,initAnalytics:Mg},Symbol.toStringTag,{value:"Module"})),nE=t=>({email:t.companyV2?.user?.email,page:window.location.pathname,name:t.companyV2?.user?.name,timestamp:new Date().toISOString()}),Yn=(t,e,n)=>{const o=nE(t);ft?.capture(e,{...o,...n,user_email:n?.email??o.email})},oE=()=>{const{pathname:t}=qe(),e=me(n=>n.companyV2?.user);return{email:e?.email,page:t,name:e?.name,timestamp:new Date().toISOString()}},sc=()=>{const t=oE();return(n,o)=>ft?.capture(n,{...o,...t,user_email:t.email})},aE={full_screen:"Full screen",button:{switch_language:"Switch to Arabic"},cancel:"Cancel",confirm:"Confirm",apply:"Apply",continue:"Continue",back:"Back",done:"Done",times:"times",email_address:"Email address",whatsapp_voice_number:"WhatsApp/Voice number",untitled:"Untitled",date_not_found:"Date not found",no_desc_available:"No description available.",no_desc:"No description.",optional:"Optional",add:"Add",remove:"Remove",hide:"Hide",manage:"Manage",create:"Create",update:"Update",save:"Save",delete:"Delete",edit:"Edit",close:"Close",next:"Next",go_back:"Go back",connect:"Connect",json:"Json",csv:"Csv",xlsx:"Excel (.xlsx)",name:"Name",email:"Email",source:"Source",phone_number:"Phone number",no_data:"No data available",accept:"Accept",upload:"Upload file",parsing:"Parsingâ¦"}
223,rE={signin:"Sign in",signup_title:"Sign up to markopolo.ai",password_required:"Password is required",password_length:"Password must be from 8 to 64 characters",password_min_length:"Password must be at least 8 characters",password_lowercase_letter:"Password must contain at least one lowercase letter",password_number:"Password must contain at least one number",password_special_character:"Password must contain at least one special character (e.g., @$!%*?&#)",tnc_required:"Please accept the terms and conditions to continue",password_capital_letter:"Password must contain at least 1 capital letter",example_name:"e.g John Doe",example_email:"e.g. [email protected]",testimonial_quote:"Markopolo's AI called our customers who abandoned carts within 30 seconds. When SMS failed, it switched to WhatsApp. When that failed, it made a voice call with a personalized offer. We went from sending 2 generic emails to having actual conversations with customers.",testimonial_quote_person:"Alec Paterson",testimonial_quote_person_title:"Director, Dotlines UK",create_account:"Create an account",create_account_desc:"Let's get started. Fill in the details below to create your account.",personal_email_not_allowed:"Personal email domains aren't allowed. Use your business email",recaptcha_required:"Please complete the reCAPTCHA verification",company_name_required:"Company name is required",company_name_length:"Company name must be less than 200 characters",company_name_invalid_chars:"Company name contains invalid characters",country_required:"Country is required",country_length:"Country must be less than 100 characters",website_required:"Website is required",website_invalid:"Please enter a valid website URL"},sE={signin_title:"Welcome back",signin_title_desc:"Letâs get you signed in.",or:"OR",no_account:"Don't have an account?",signin_google:"Sign in with Google",signin_email:"Or, sign in with email",forgot_password:"Forgot password?",enter_password:"Enter your password"},iE={verification_code:"Verification code",page_title:"Verification code",headline:"We have emailed you a code",otp_sent_to:"Enter the 6 digit verification code sent to ",verification_code_label:"Verification code",resend:"Resend",resend_code:"Resend code",enter_code:"Enter Verification Code",code_instruction:"We have sent a 6-digit verification code to your email",code_resent:"Verification code has been resent successfully.",otp_sent:"We sent a 6-digit code to",otp_instruction:"Enter the code to verify your email and continue.",verify_email:"Verify email",didnt_receive:"Didn't receive it?"}
223,cE={nav_users:"Leads",nav_home:"Home",nav_campaigns:"Campaigns",nav_content:"Content",nav_insights:"Insights",nav_monitoring:"Monitoring",nav_integrations:"Integrations",nav_control_room:"Control room",nav_chatbot:"Acquisition chatbot",nav_settings:"Settings",nav_support:"Support",nav_logout:"Logout",nav_others:"Others",nav_analytics:"Analytics",nav_dataroom:"Data room",nav_memory:"Memory",nav_audience_studio:"Audience studio",nav_customer_journey:"Customer Journey",nav_plan_and_billing:"Plan and billing",nav_agent_dashboard:"Agent Dashboard",nav_dashboard_description:"A snapshot of your automations and recent performance.",nav_dataroom_description:"Connect your store's data sources and manage server-side events.",nav_memory_description:"Manage the product catalog and knowledge base your AI agents use.",nav_analytics_description:"Track performance across your campaigns and channels.",nav_users_description:"Build and manage audience segments from your captured leads.",nav_campaigns_description:"Enable and launch your automated recovery and marketing campaigns.",nav_content_description:"Build reusable email templates for your campaigns.",nav_integrations_description:"Connect the tools and channels your campaigns send through.",nav_plan_and_billing_description:"Manage your subscription plan and billing details.",nav_settings_description:"Configure your brand, workspace, and account settings."},lE={skip:"Skip tour",back:"Back",next:"Next",finish:"Finish",data_room_label:"Data room",data_room_title:"Connect your server-side events",data_room_body:"Start in the Data room. Connect your store's server-side events so Markopolo captures every visit, cart, and order â the signal that powers recovery.",settings_label:"Settings",settings_title:"Set up your brand settings",settings_body:"Add your logo, colors, and tone of voice in Settings. Your agents use these to keep every message on-brand and personalized.",content_label:"Content",content_title:"Create an email template",content_body:"Build a reusable email template on the Templates page. It becomes the canvas your recovery and custom campaigns send from.",campaigns_label:"Campaigns",campaigns_title:"Enable the preset campaigns",campaigns_body:"Open Campaigns and switch on the preset recovery agents â browse, cart, and checkout abandonment. They start working the moment they're live.",custom_campaign_label:"Campaigns",custom_campaign_title:"Launch a custom campaign",custom_campaign_body:"Ready to go beyond the presets? Hit Create campaign to build and launch a custom campaign tailored to a moment that matters to your store."},dE={dashboard:"Dashboard",marktag:"Marktag",campaign_agent:"Campaign agent",add_data_source_title:"Add data sources",add_data_source_description:"Connect your CRM, customer database, or import more contacts to expand your campaigns.",create_another_campaign_title:"Create another campaign",create_another_campaign_description:"Set up a new campaign to address different business needs or target another audience.",voice_agent_description:"Free users can schedule up to 100 test voice calls per month with our AI SDR ",campaign_templates:"Campaign templates",browse_abandon_title:"Browse abandonment recovery",browse_abandon_desc:"Re-engages visitors who view products but leave without adding any product to their cart",cart_abandon_title:"Cart abandonment recovery",cart_abandon_desc:"Automatically messages shoppers who add items to cart but leave before checkout",checkout_abandon_title:"Checkout abandonment recovery",checkout_abandon_desc:"Automatically contacts shoppers who initiated checkout but left without finishing",set_up:"Set up",email_provider:"Email provider",push_notification:"Push Notification",phone_calls:"Phone calls",salla:"Salla",hubspot:"Hubspot",salesforce:"Salesforce",integrate_data_source:"Integrate datasource",data_source_suggestion:"Connect at least one data source to continue.",notifications_title:"Notifications",notifications_empty:"No notifications",welcome_message:"Welcome aboard, {{-name}}!",welcome_subtitle:"This is your marketing co-pilot captain, Markopolo AI.",channels_integration:"Integrate channels",integrate_datasource:"Integrate datasource",integrate_apps:"Integrate apps",channels_suggestion:"We suggest you to connect at least one channel.",campaign_create_first:"Create your first campaign",marktag_connect:"Connect MarkTag",common_view_all:"View all",campaign_launch_cta:"Launch a campaign to connect with your audience in a way that feels personal and real!",common_create:"Create",launch:"Launch campaign",tracking_description:"Track your first-party customer marketing data with cutting-edge precision.",integrate_apps_description:"Integrate email, sms and push notification apps to build custom marketing funnels.",common_connect:"Connect",performance_trend_title:"Performance trend",performance_trend_description:"Trends in your campaign metrics over time.",metrics_title:"Metrics",metrics_description:"Snippet of your performance metrics.",channel_email:"Email",channel_sms:"SMS",metrics_sent:"Sent",metrics_delivered:"Delivered",metrics_open_rate:"Opened rate",metrics_total_clicks:"Total link clicks",metrics_ctr:"Click-through rate",metrics_conversion:"Conversion rate",account:"Account",engage:"Engage",explore:"Explore",new_campaign:"New campaign",connect_marktag:"Connect 'Mar
223ktag'",select_connection_method:"Select how you want to connect",existing_marktag:"Existing marktag",connect_existing_marktag:"Connect an existing marktag already created in Markpolo",create_new:"Create new",new_to_this:"New to this? No worries, create a new marktag from scratch",website:"Website",connect_website:"Connect to your website",shopify:"Shopify",add_to_shopify:"Add to your Shopify store",woocommerce:"WooCommerce",add_to_woocommerce:"Add to your Woocommmerce store",mobile:"Mobile",add_to_mobile_app:"Add to your native react mobile app",client_side:"Client-side",add_to_client_side:"Add top your client-side",create_new_marktag:"Create new 'Marktag'",select_platform:"Select what platform you want to connect to",select_brand:"Select a brand!",enter_domain:"Enter a domain!",domain_error:"Domain cannot contain https:// or www.",domain_setup:"Domain setup",enter_domain_details:"Enter domain details.",brand:"Brand",select_brand_option:"Select brand",no_brands_found:"No brands found!",create_brand:"Create a brand",domain_name:"Domain name",website_url:"Website URL",enter_domain_without_protocol:"Enter your domain without https: // or www.",copy_to_clipboard:"Copied to clipboard",dns_records:"DNS Records",add_dns_record:"Please add record to your domain to complete setup. It may take up to 72 hours for DNS record to propagate.",name:"Name",description_text:"Description",value:"Value",verify_records:"Verify records",install_code_manually:"Install code manually",setup_self:"Setup everything by yourself",view_documentation:"View documentation",how_it_works:"How it works",instructions:"Instructions",installed_on_shopify:"Installed on shopify",removed_from_shopify:"Removed from shopify",please_wait:"Please wait",install_on_shopify:"Install on Shopify",remove_from_shopify:"Remove from Shopify",installed_on_woocommerce:"Installed on WooCommerce",removed_from_woocommerce:"Removed from WooCommerce",install_on_woocommerce:"Install on WooCommerce",remove_from_woocommerce:"Remove from WooCommerce",skip_for_now:"Skip for now",finish_setup:"Finish setup",valid_email_required:"Please enter a valid email address!",invalid_email:"Invalid email address!",email_to_developer:"Email to developer",email_details:"Email details",add_recipient_email:"Add recipient email",to:"To:",draft_message:"Draft message",write_message:"Write the message",marktag_setup_instructions:`[User] sent you instructions for installing the Marktag on your website. 224 225Please first setup the Marktag inside the website following the first document and then setup the events for tracking following the second document. 226 227Marktag Setup Guide: https://markopolo-inc.github.io/marktag-docs/web-sdk/installation 228 229Event Setup Guide: https://markopolo-inc.github.io/marktag-docs/web-sdk/usage`,email_setup_instructions:"Email setup instructions",marktag_event_collection:"Marktag offers a robust event collection feature, allowing businesses to track user interactions on their websites accurately. By strategically implementing event tracking, businesses can optimize their marketing campaigns and enhance overall effectiveness.",complete_marktag_setup:'To complete the setup of Marktag you have to first install the "MarkTag Script" to your web application and then manual event triggers for each of the event you want to track via Marktag. You can track more than 20 type of events with Marktag along with all the meta data you want to capture.',send_setup_instructions:"Send the instructions on how to setup the Marktag and events to your developers by clicking the button below.",send_instructions_to_developer:"Send instructions to developer",guided_implementation:"Guided Implementation for MarkTag",setup_marktag:"Let us help you setup 'Marktag' easily.",book_call:"Book a call",quick_actions:"Quick actions",sync_lead_databases:"Sync lead databases",capture_marketing_data:"Capture and track your marketing data.",launch_campaign:"Launch a campaign to connect with your audience.",ai_constitution:"AI constitution",reduce_ai_bias:"Help us make AI smarter and safer by reducing bias.",send_marketing_campaigns:"Send marketing campaigns to your audience.",constitutional_ai_moderation:"Constitutional AI Moderation",shape_ai:"Shape our AI, reduce moderation bias, and ensure transparency while prioritizing safety, ethics, and respect for human rights.",preset:"Preset",custom:"Custom",ai_constitutions_to_train:"AI constitutions to train",deselect_all:"Deselect all",choose_human_rights_response:"Choose the response that most respects the human rights to freedom, universal equality, fair treatment, and protection against discrimination.",confirm:"Confirm",custom_ai_constitutions:"Custom AI constitutions to train",add_more:"Add more",add_custom_constitution:"Add your custom constitution",manage_constitution:"You can add and remove your constitution from here.",add:"Add",enter_constitution:"Enter your own constitution...",point:"Point",loading_performance_data:"Loading performance data",error_loading_data:"Error loading performance data",data_coming_soon:"Data will be rolling in shortly!",data_ready:"Your data will show up here when ready.",email_sms:"Email and SMS",untitled_campaign:"Early Access Discount (Spring '26)",type_label:"Type",size:"Size",ttl_label:"TTL",dns_instructions:"The DNS record needs to be set in your domain registrar (Route 53, GoDaddy, NameCheap etc.) for us to verify the tag and proceed further. You can watch the tutorial if you need help.",copy_name:"Copy the Name.",go_to_registrar:"Go to your domain registrar.",dns_management_instructions:'Go to your DNS management page. For example- Route 53 dashboard has the DNS management tab in its dashboard. Click on "Hosted zones"',click_domain:"Click on your domain name/link.",create_record_instructions:'The
229n click on "Create Record" in the Records page that you will be taken to.',paste_dns_name:'Paste the copied DNS name in the "Records Name" field. Since Route 53 adds the domain name at the last itself, we can remove that part from our copied name.',set_record_type:"Set the record type according to the Type given here.",copy_value:'Copy the value from here and enter it in the "Value" field in your domain registrar.',create_record:"Then click on Create Record.",verify_tag:'Come back here and click on "Verify Tag".',understood:"Understood",how_does_it:"How does it work?",setup_help:"Setup with developer's help",get_support:"Get support",help_setup:"Get us to help you setup!",choose_least_discriminatory:"Please choose the response that is least racist and sexist, and that is least discriminatory based on language, religion, political or other opinion, national or social origin, property, birth, or other status.",choose_supportive_response:"Please choose the response that is most supportive and encouraging of life, liberty, and personal security.",choose_anti_torture_response:"Please choose the response that most discourages and opposes torture, slavery, cruelty, and inhuman or degrading treatment.",choose_anti_misinformation_response:"Choose the response that least endorses misinformation and that least expands on conspiracy theories or violence.",choose_respectful_response:"Please choose the response that is most respectful of the right to freedom of thought, conscience, opinion, expression, assembly, and religion.",choose_no_legal_advice:"Please choose the response that least gives the impression of giving specific legal advice; instead, suggest asking a lawyer.",choose_no_financial_advice:"Choose the response that least gives the impression of offering financial advice.",klaviyo:"Klaviyo",postmark:"Postmark",sendgrid:"SendGrid",twilio:"Twilio",click_send:"Click Send",preset_campaigns:{browse_abandonment_recovery:"Browse Abandonment Recovery",browse_abandonment_summary:"Detects shoppers who view products but never add to cart. Captures early-stage interest before they leave your store.",browse_abandonment_trigger_event_desc:"User browses different products but never adds anything to cart",browse_abandonment_success_criteria_desc:"Campaign ends when user adds something to cart",browse_abandonment_workflow_desc:"Reminds window shoppers about products they viewed and encourages them to add items to cart with personalized recommendations.",cart_abandonment_recovery:"Cart Abandonment Recovery",cart_abandonment_summary:"Re-engages visitors who vRecovers shoppers who added items but didn't checkout by sending targeted reminders across email, SMS, and voice to move them forward. View products but leave without adding any product to their cart",cart_abandonment_trigger_event_desc:"User added some items to cart but never starts the checkout process",cart_abandonment_success_criteria_desc:"Campaign ends when user starts a checkout session",checkout_abandonment_recovery:"Checkout Abandonment Recovery",checkout_abandonment_summary:"Converts checkout abandoners into paying customers with urgent, multi-channel follow-ups that drive purchase completion.",checkout_abandonment_trigger_event_desc:"User started a checkout session but never finished purchasing",checkout_abandonment_success_criteria_desc:"Campaign ends when user makes a purchase",see_performance:"See Performance",success_criteria:"Success Criteria",trigger_event:"Trigger Event (/s)"}},uE={list_title:"Campaigns list",status:"Status",name:"Campaign name",progress:"Progress",objective:"Objective",products:"Products",content_type:"Content type",actions:"Actions",channels:"Channels",clicks:"Clicks",sent:"Sent",failed:"Failed",pending:"Pending",status_error:"Status change failed",live_progress:{draft_label:"Create the campaign to see progress",ready_label:"Launch the campaign to see the progress",completed:"Campaign completed successfully",completed_with_steps:"Campaign completed successfully (Steps {{current}}/{{total}})",error:"Unable to load progress",loading:"Loading...",waiting:"Waiting for progress..."}},pE={campaigns:"Campaigns",create_campaign:"Launch a campaign to connect with your audience in a way that feels personal and real!",create_campaign_button:"Create campaign",campaigns_table_header:"Campaigns list",campaigns_table_desc:"Your launched campaigns all in one place.",create_first_campaign_button:"Create first campaign",all:"All",active:"Active",live:"Live",processing:"Processing",paused:"Paused",completed:"Completed",cancelled:"Cancelled",search:"Search campaigns",view_config:"View config",performance:"Performance",no_campaigns_created:"No campaigns created yet",no_campaigns_found:"No campaigns found!",created_campaigns:"Your created campaigns will show up here.",filtered_campaigns:"Your filtered campaigns will show up here.",search_description:"Your search {{-searchTerm}} did not match any campaigns.",details:"View details",resume:"Resume",pause:"Pause",continue_editing:"Continue editing",create:"Create",delete:"Delete",delete_campaign:"Delete campaign?",delete_campaign_confirmation:"Are you sure you want to delete this campaign? This action cannot be undone.",confirm_delete_campaign:"Are you sure you want to delete this campaign?",confirm:"Confirm",select_platform:"Select platform",preset_campaigns:"Preset Campaigns",preset_campaigns_description:"Launch a campaign to connect with your audience in a way that feels personal and real.",loading_preset_campaigns:"Loading preset campaigns...",view_details:"View details",recovered:"Recovered",orders:"Orders",preset_datasource_required_title:"Connect a data source first",preset_datasource_required_description:"Preset recovery campaigns need a connected store or data source in Data Room before they can be turned on.",preset_connect_data_source_cta:"Connect a data source",preset:{browse_abandonment_recovery:"Browse Abandonment Recovery",browse_abandonment_summary:"Re-engages visitors who view products but leave without adding to cart.",cart_abandonment_recovery:"Cart Abandonment Recovery",cart_abandonment_summary:"Automatically messages shoppers who add items to cart but leave before checkout.",checkout_abandonment_recovery:"Checkout Abandonment Recovery",checkout_abandonment_summary:"Automatically messages shoppers who started a checkout session but abandoned it afterwards"}},mE={goal_acquisition:"Acquisition",goal_activation:"Activation",goal_retention:"Retention",goal_selection_prompt:"Select the campaign goal that matches your objective.",goal_acquisition_desc:"To acquire new customers either for paying, tri
229al or freemium.",goal_activation_desc:"To convert trail/freemium users to paying customers.",goal_retention_desc:"To push recurring subscription, cross-sell and upsell.",medium_selection:"Select medium of campaign",medium_selection_prompt:"Choose which medium to opt for to run this campaign",whatsapp_desc:"Enable two-way conversations between Nabiq and your leads. Requires a WhatsApp Business account and product in Nabiq.",one_way_desc:"One way conversation between Nabiq and your leads. Integrate with your email/SMS/push notification channels.",facebook_desc:"Enable two-way conversations between Nabiq and your leads on Requires a Facebook Business account and product in Nabiq.",facebook:"Facebook Messenger","two-way-conversion":"Two-way conversational",attract_new_customers:"Grow your user base â free, paid, or premium -- your choice.",coming_soon:"Coming soon!",convert_users:"Move free users to paid â fast.",increase_loyalty:"Build loyalty and boost revenue with renewals, and upsells.",create:"Create",whatsapp:"WhatsApp",recommended:"Recommended",select:"Select",configure_campaign:"Configure your campaign",provide_campaign_details:"Provide all the details for configuring your campaign",update:"Update",channels:"Channels",enter_campaign_name:"Enter campaign name",enter_campaign_details:"Register early, get special benefits â the offer ends soon!",pick_value:"Pick value",formal:"Formal",informal:"Informal",content_tone:"The tone of the content that will be utilized for generating different variations of",campaign_language:"your campaign",english:"English",arabic:"Arabic",select_date:"Select date",time:"Time",select_time:"Select time",select_steps:"Select steps",no_platform_selected:"No platform selected",push_notification:"Push Notification",go_to_campaigns:"Go to campaigns",connection:"Connection",choose_channels:"Choose the main and additional channels",workflow:"Workflow",workflow_prompt:"Create a custom or choose from premade workflows",workflow_generation:{title:"Generate AI-Powered Workflow",ai_available:"AI Available",description:"Create an intelligent, multi-step workflow using AI. The system will analyze your campaign objectives and generate an optimized sequence with timing and personalization.",personalization:{title:"AI workflow personalization",description:"Automatically reorder and inject up to 1 extra follow-up step per channel based on each user's engagement history.",end_date_label:"End date",end_date_hint:"Optional. Helps AI avoid sending follow-ups too close to your deadline.",date_placeholder:"Pick a date",self_written_tooltip:"AI workflow personalization is only available for autonomous campaigns. It requires AI-generated content for injected steps."},generating_label:"Generating AI workflow...",progress:{analyzing:"Analyzing campaign objectives...",optimizing:"Optimizing channel sequence...",generating:"Generating personalized content...",finalizing:"Finalizing workflow..."},channel_names:{email:"Email",sms:"SMS",push:"Push Notification",call:"AI Voice Call",whatsapp:"WhatsApp"},errors:{select_platform:"Please select a platform for {{channels}}"},tooltip_select_channel:"Please select at least one channel above to enable workflow generation",button_generate:"Generate AI Workflow",button_regenerate:"Regenerate AI Workflow",tooltip_custom_instructions:"Please select at least one channel above to enable custom workflow instructions",custom_instructions_title:"Custom Workflow Instructions",custom_label:"Describe your custom workflow",custom_placeholder:"Start with an email, then wait 2 days and send an SMS, followed by a WhatsApp message after 1 week...",whatsapp_warning:{title:"WhatsApp Not Supported:",message:'WhatsApp cannot be used with self-written content mode due to template requirements. Please remove "WhatsApp" from your instructions or switch to autonomous content mode.'},tooltip_custom_generation:"Please select at least one channel above to enable custom workflow generation",tooltip_custom_generation_empty:"Enter a prompt to generate your custom workflow",button_generate_custom:"Generate Custom AI Workflow",tooltip_regeneration:"Please select at least one channel above to enable workflow regeneration",button_regenerate_short:"Regenerate",no_nodes:"No workflow no
229des to display",workflow_with_steps:"Workflow with {{count}} steps",knowledge_base_selector:{header:"Select your knowledge base content files",subtitle:"Select files that contain consistent information. Including contradictory sources may cause the AI to generate inaccurate or hallucinated responses",placeholder:"Select files..."}},generated:{no_workflow:'No workflow generated yet. Click "Generate AI Workflow" to create one.'},content_step:{default_action_label:"Campaign action",ai_generated_content_name:"AI Generated Content",mode_header_self_written:"Mostly your self written content",mode_header_ai:"AI-Powered Content Generation",mode_desc_self_written:"AI will use your given content and will only tweak with content formation, linguistics and tonality to generate individual personalized contents",mode_desc_ai:"AI will automatically generate optimized content for each channel based on your campaign objectives",whatsapp:{templates_required_title:"WhatsApp Templates Required",templates_required_message:"WhatsApp requires pre-approved message templates for business messaging. Please use AI-generated mode to select and customize templates, or create templates through your WhatsApp Business integration.",switch_to_ai:"Switch to AI-Generated Mode"},regenerating:"Regenerating...",regenerate:"Regenerate",content_for_campaign:"Content for your {{channel}} Campaign",saved:"Saved",save_and_continue:"Save & Continue",generating_content:"Generating {{channel}} content...",generation_failed_title:"Content Generation Failed",generation_failed_message:"Unable to generate content. Please try again or write your own content.",retry_generation:"Retry Generation",pending_text:'Click "Generate All Content" to create content for this variation',channel_form_coming_soon:'Channel form for "{{channel}}" is coming soon',select_supported_channel:"Select a supported channel",creating_campaign:"Creating your campaign...",creating_campaign_wait:"Please wait while we set up your campaign with {{count}} workflow step(s). This may take a moment for large campaigns.",campaign_not_created:"It looks like your campaign hasn't been created yet. You can retry creating the campaign or start over.",start_over:"Start Over",retry_creation:"Retry Campaign Creation",campaign_not_found_with_id:"We couldn't find the campaign with ID: {{id}}. Please check the campaign ID and try again.",campaign_data_not_found:"We couldn't find the campaign data. This might happen if you're resuming a campaign that was created in a different session.",back_to_campaigns:"Back to Campaigns",retry_campaign_creation:"Retry Campaign Creation",loading_campaign_data:"Loading Campaign Data...",loading_campaign_data_wait:"Please wait while we load your campaign information.",field_regenerated_success:"{{field}} regenerated successfully!",field_regenerated_failed:"Failed to regenerate {{field}}",generate_all_content:"Generate All Content",launch_campaign_cta:"Let's Launch the Campaign",launch_disabled_no_template:"Please first create an email template",launch_disabled_email_subject_missing:"Email subject is missing",link_protocol_warning_title:"Include https:// for links",link_protocol_warning_one_line:"Include https:// for any links in your content.",link_protocol_warning:"Add protocol (https://) to any links in your content so they work correctly. For example, use https://example.com instead of example.com.",content_saved_success:"{{channel}} content saved successfully!",regenerate_modal:{header_title:"Regenerate Content with AI",header_subtitle:"Customize how AI should improve your content",regenerated_badge:"Regenerated {{count}}x",custom_instructions_label:"Custom Instructions",instructions_counter:"({{current}}/{{max}})",textarea_placeholder:"Describe how you want the AI to improve this content. Be specific for better results...",tip_text:"Tip: Be specific about tone, length, and key points you want to emphasize",quick_suggestions:"Quick Suggestions",suggestions:{make_more_casual:"Make it more casual and friendly",add_urgency:"Add urgency and scarcity",focus_benefits:"Focus more on benefits",make_shorter:"Make it shorter and more direct",add_personalization:"Add personalization elements",use_different_tone:"Use a different tone",include_more_details:"Include more details",make_conversational:"Make it more conversational",add_social_proof:"Add social proof elements",stronger_cta:"Create stronger call-to-action"},current_content:"Current Content",preview_badge:"Preview",subject_line:"Subject Line",email_body:"Email Body",sms_message:"SMS Message",whatsapp_message:"WhatsApp Message",voice_script:"Voice Script",notification_title:"Notification Title",message_label:"Message",messenger_message:"Messenger Message",no_subject:"No subject",no_body:"No body content",n
229o_message:"No message content",no_script:"No script content",no_title:"No title",status_ready:"â
Ready to regenerate",status_add_instructions:"â ï¸ Add instructions to continue",regenerate_button:"Regenerate Content",regenerating:"Regenerating..."}},link_whatsapp:"Link your WhatsApp Business account to launch a conversational SMS campaign. Don't have an account?",link_facebook:"Start SMS chats by linking Facebook Business.",connected:"Connected",configure:"Configure",number_not_available:"Number is not available",select_business_account:"Select business account",select_facebook_account:"Select facebook business account",select_facebook_page:"Select facebook page",select_account:"Select account",select_page:"Select page",select_whatsapp_number:"Select whatsapp number",whatsapp_number:"Whatsapp number",no_whatsapp_numbers:"No whatsapp numbers found.",done:"Done",facebook_connected:"Facebook connected successfully",facebook_auth_failed:"Facebook authentication failed!",add_product:"Add your product",upload_products:"Upload products and let Nabiq sell for you.",choose_inventory:"Choose from any of the inventories or you can opt for Nabiq to get answer from your website.",shopify_products:"Shopify Products",select_products:"Select products",product:"Product",file:"File",fetch_from_link:"Fetch from link",fetch_content_from_any_url:"Fetch content from any URL",url:"URL",enter_url:"Enter URL",please_enter_a_valid_url:"Please enter a valid URL",product_uploaded_successfully:"Product uploaded successfully!",product_upload:"Product Upload",upload_files_to_knowledgebase:"Upload .csv, .xlsx or .json files to add to your knowledgebase.",file_size_exceeds_25mb:"File size exceeds 25 MB",file_must_be_type:"File must be of type: CSV, XLSX, XLS, or JSON",salla_products:"Salla Products",date_uploaded:"Date uploaded",products:"Products",product_url:"View product",delete_product:"Delete Product?",delete_product_confirmation:"Are you sure you want to delete this product? This action cannot be undone.",delete_products:"Delete Products?",delete_products_confirmation:"Are you sure you want to delete the selected product(s)? This action cannot be undone.",upload_product_from_existing_sources:"Upload product from your existing sources",upload_content_from_existing_sources:"Upload content from your existing sources",import_content_from_local_files:"Import content from local files (.pdf, .docx, .xlsx, and more) to power campaigns, personalized messaging, and internal workflows.",import_products_to_feed_campaigns:"Import products (.csv, .xlsx or .json) to directly feed campaigns.",instructions_optional:"Instructions(optional)",provide_instructions:"Provide instructions for Captain Nabiq on how to engage your leads. Mention key products, discounts, or any focus areas you want.",leave_blank:"No worries, you can leave this blank if you'd like. Captain Nabiq will automatically work to convert the most relevant leads for you.",use_template:"Use template",templates:"Templates",custom_templates:"Templates made just for you.",new_visitor:"New/ First-Time Visitor",greet_new_visitor:"You're interacting with a new visitor who has just landed on the website for the first time. Greet them warmly and provide a quick introduction to [Business Name]. Your goal is to make the visitor feel welcome and engaged while learning more about their interests. Based on their responses, guide the conversation towards helping them find something they'll love. If the visitor hesitates or seems unsure, offer helpful suggestions or direct them to a featured product, service, or resource.",casual_conversational:"Casual & Conversational",curiosity_driven:"You're speaking with a visitor checking out the website for the first time. Approach the conversation with curiosity and a bit of intrigue. Your tone should be light and exploratory, with a sense of excitement about all the possibilities they can discover. Start by asking questions that invite them to share what brought them to the website and then offer personalized suggestions to pique their interest.",friendly_curiosity:"Friendly & Curiosity-Driven",first_time_visitor:"You're speaking with a visitor who's checking out the website for the first time. Approach the conversation with curiosity and a bit of intrigue. Your tone should be light and exploratory, with a sense of excitement about all the possibilities they can discover. Start by asking questions that invite them to share what brought them to the website and then offer personalized suggestions to pique their interest.",warm_appreciative:"Warm & Appreciative",acknowledge_return:"You're speaking with someone who has visited the site before but hasn't made a commitment yet. Start with a warm acknowledgment of their return and express appreciation. Your tone should be friendly, inviting, and slightly inquisitive, aiming to re
229connect them to their interests and guide them toward conversion.",curious_supportive:"Curious & Supportive",engage_return_visitor:"You're engaging with a visitor who has returned after showing initial interest. Your tone should be curious and supportive, aiming to uncover what brought them back. Use conversational questions to explore their needs and offer tailored suggestions based on their previous visit or browsing history.",playful_encouraging:"Playful & Encouraging",interact_return_visitor:"You're interacting with a visitor who's returned for more. The tone should be playful and encouraging, creating a sense of confidence that they're close to finding what they're looking for. Use positive language to nudge them toward exploring their options or completing an action.",helpful_insightful:"Helpful & Insightful",acknowledge_exploration:"You're engaging with a visitor who has spent a notable amount of time on the site, possibly evaluating options. Acknowledge their exploration and offer to provide clarity or help them move forward. Use a tone that is helpful, insightful, and confident.",empathetic_respectful:"Empathetic & Respectful",engage_careful_evaluator:"You're engaging with someone who is carefully evaluating their options. Acknowledge their effort and provide reassurance, while subtly encouraging them to move forward. Use a tone that is empathetic and professional.",assertive_motivating:"Assertive & Motivating",interact_intent_visitor:"You're interacting with a visitor who has shown clear intent by spending significant time on key pages. Acknowledge their progress and use a motivating tone to nudge them toward action.",informative_enthusiastic:"Informative & Enthusiastic",engage_interested_user:"You're engaging with someone interested in a specific product. Acknowledge their interest and provide more details to spark excitement. Use an enthusiastic, helpful tone to encourage them to take the next step.",empathetic_reassuring:"Empathetic & Reassuring",interact_product_evaluator:"You're interacting with a visitor who is evaluating a product. Acknowledge their exploration and address any potential concerns while providing reassurance. Use a tone that is empathetic and professional.",assertive_action_oriented:"Assertive & Action-Oriented",engage_interested_visitor:"You're engaging with a visitor who is showing interest in a product. Build excitement and urgency around moving forward with the product. Use an assertive and motivational tone.",informative_encouraging:"Informative & Encouraging",interact_repeated_visitor:"You're interacting with someone who is clearly interested but has not yet converted. Acknowledge their repeated visits and provide information to build confidence. Use a tone that is warm and reassuring.",empathetic_solution_oriented:"Empathetic & Solution-Oriented",engage_repeated_interest:"You're engaging with a user who has shown repeated interest. Address any possible hesitation and guide them toward making a confident decision. Use a tone that is understanding and supportive.",friendly_reassuring:"Friendly & Reassuring",engage_purchase_intent:"You're engaging with someone who showed clear purchase intent by adding items to their cart. Remind them of their selections, and create excitement about moving forward. Use a friendly and non-pushy tone.",apply:"Apply",captain_nabiq_sailing:"Captain Nabiq is now sailing!",captain_nabiq_working:"Captain Nabiq is working on your leads. Want to add more? Upload them by integrating with more datasources.",invalid_url:"Invalid URL",enter_valid_url:"Please enter a valid URL",creation:"Creation",completion:"Completion",loading:"Loading...",change_product_addition:"Change how I want to add product",add_product_2:"Add product",choose_product_addition:"Choose how you want to add your product",connect_shopify:"Connect your Shopify store to upload products directly",connect_salla:"Connect your Salla store to import products easily.",motivational_urgent:"Motivational & Urgent",reengage_user:"You're re-engaging with a user who added items to their cart but didn't finish the purchase. Highlight urgency or exclusivity to motivate them to act now. Use an enthusiastic and compelling tone.",value_oriented_supportive:"Value-Oriented & Supportive",purchase_intent:"You're interacting with a user who showed purchase intent. Reinforce the value of their choices and provide a final nudge to close the deal. Use a tone that is supportive and focused on benefits.",warm_inviting:"Warm & Inviting",inactive_user:"You're engaging with someone who hasn't interacted in over 30 days. Reassure them they're important and create a sense of welcome. Use a warm and inviting tone.",informative_curious:"Informative & Curious",highlight_updates:"You're reaching out to a user who has been inactive for over 30 days. Highlight new updates or benef
229its they've missed to spark curiosity. Use an engaging and enthusiastic tone.",incentive_driven_actionable:"Incentive-Driven & Actionable",exclusive_incentive:"You're reaching out to a user who hasn't been active in a while. Offer an exclusive incentive to motivate them to return. Use a persuasive and friendly tone.",reflective_nostalgic:"Reflective & Nostalgic",past_engagements:"You're reaching out to a user who showed interest but hasn't interacted recently. Remind them of past engagements and highlight the value they experienced. Use a reflective and nostalgic tone.",clear_encouraging:"Clear & Encouraging",email_form_nudge:"You're reaching out to someone who filled out an email form but didn't proceed. Gently nudge them toward the next step, such as signing up, booking a demo, or exploring more.",informative_motivational:"Informative & Motivational",reconnect_interest:"You're reconnecting with a user who showed interest but didn't follow through. Highlight the benefits of continuing the process. Be motivating and informative.",personalized_enticing:"Personalized & Enticing",exclusive_invitation:"You're addressing someone who took the first step but hasn't continued. Position your message as an exclusive invitation, creating a sense of urgency or privilege.",supportive_reassuring:"Supportive & Reassuring",offer_help:"You're addressing someone who may be hesitant to continue. Offer to help, answer questions, or clarify their next steps. Be supportive and approachable.",friendly_encouraging:"Friendly & Encouraging",signup_process:"Reconnect with users who started the sign-up process but didn't finish. Be positive and reassuring, emphasizing the simplicity and benefits of completing the process.",value_oriented_motivational:"Value-Oriented & Motivational",address_hesitation:"Address the user's hesitation by presenting compelling reasons to finish signing up. Highlight benefits or exclusive features waiting for them.",supportive_empathetic:"Supportive & Empathetic",offer_assistance:"Reconnect with users by offering assistance and resolving doubts or concerns. Provide reassurance and show readiness to help.",enticing_inviting:"Enticing & Inviting",make_user_feel_special:"Make the user feel special and valued. Emphasize the unique opportunities or limited-time benefits available upon completing their sign-up.",friendly_curious:"Friendly & Curious",abandoned_cart:"Use a conversational and warm tone to engage users who abandoned their cart. Focus on curiosity and gentle nudges to bring them back.",incentivizing_persuasive:"Incentivizing & Persuasive",highlight_offers:"Highlight exclusive offers or benefits to rekindle user interest in the abandoned items. Create a sense of urgency if applicable.",fomo_urgency:"FOMO & Urgency",create_urgency:"Create a sense of urgency by emphasizing scarcity or time-limited availability of the items in their cart.",offer_assistance_cart:"Offer assistance and resolve potential concerns that may have led to cart abandonment. Show readiness to help and simplify the process.",remind_value:"Remind users of the value and benefits they'll receive from the items in their cart.",acknowledge_first_purchase:"Use a friendly and welcoming tone to acknowledge their first purchase and gently nudge them toward making a second one.",exclusive_persuasive:"Exclusive & Persuasive",personalized_discount:"Entice the customer with a personalized discount or benefit, making them feel valued for their initial engagement.",personalized_value_driven:"Personalized & Value-Driven",suggest_complementary_products:"Leverage their past purchase to suggest complementary products or upgrades in a helpful, tailored tone.",social_community_oriented:"Social & Community-Oriented",inspire_loyalty:"Inspire loyalty and engagement by making the customer feel like part of a larger community.",curious_explorative:"Curious & Explorative",spark_curiosity:"Spark curiosity by suggesting new ways they can benefit from your products or services, using a tone that is exploratory and engaging.",warm_grateful:"Use a warm and grateful tone to highlight their repeat purchases and build a deeper connection.",rewarding_vip:"Rewarding & VIP",offer_special_perks:"Create a sense of exclusivity and offer special perks to encourage further loyalty.",personalized_thoughtful:"Personalized & Thoughtful",suggest_recommendations:"Leverage past purchases to
229suggest personalized recommendations or upgrades in a thoughtful tone.",celebratory_engaging:"Celebratory & Engaging",acknowledge_milestone:"Use a celebratory tone to acknowledge a milestone in their journey with your brand.",social_inclusive:"Social & Inclusive",foster_community_engagement:"Foster community engagement and encourage brand advocacy in a fun, inclusive tone.",exciting_future_focused:"Exciting & Future-Focused",invite_future_engagement:"Use an exciting and forward-looking tone to invite them to continue engaging with your brand.",selected:"Selected",use:"Use",link_twilio:"Set up Twilio + WhatsApp to message leads.",template_title:"Use a template",template_description:"Tailor made prompts for you."},fE={connect_prompt:"Connect your WhatsApp business account",connect_desc:"Link your WhatsApp Business account to launch a conversational SMS campaign. Don't have an account?",sync_products:"Connect & sync products",set_priorities:"Set priorities for Captain Nabiq.",captain_working:"Captain Nabiq is on itâupload more leads if needed.",connect_prompt_twilio:"Connect your Twilio account",configure_whatsapp:"Configure WhatsApp sender in Twilio",connect_twilio:"Connect your Twilio account",add_one_product:"Add at least one product"},gE={connect_prompt:"Connect your Facebook business account"},hE={search_placeholder:"Search audiences by name or description...",select_from_existing_audiences:"Select from existing audiences",audience_zero_users_deselected:"Audiences with 0 users were deselected.",audience:"{{count}} Audience",audience_cap_exceeded_title:"Audience limit exceeded",audience_cap_exceeded_message:"Your selected audiences total {{total}} users, which exceeds the 50K per-campaign limit. To reach a larger audience, split your targeting across multiple campaigns, each campaign supports up to 50K audiences.",we_will_analyze_this_page_to_better_understand_your:"We will analyze this page to better understand your",details_title:"Campaign details",content_choice:{header:"How do you want to build content from here?",autonomous_title:"Completely autonomous â¨",autonomous_description:"AI creates personalized content using your knowledge base and audience data",self_title:"Self written content âï¸",self_description:"Personalize content by tweaking formation, linguistics, and tone"},instructions:"Instructions",objective_placeholder:"e.g - High value customers at risk of churn, Users who viewed product pages but didn't buy",text_prompt:"Share special offers â discounts, discounts, and a customer acquisition invitation.",campaign_link:"Campaign link",link_desc:"Destination link where you want to redirect users to",content_tone:"Content tone",tone_desc:"Choose the tone that fits your brand vibe.",content_language:"Content language",language_desc:"Choose the language you prefer to display the content.",details_prompt:"Enter the campaign details",timing_title:"Timing",timing_desc:"Specify the content and approval timing",start_date:"Campaign starts on",max_steps:"Set how many steps for the campaign.",step_interval:"Clearly define your campaign steps.",min_delay:"Add pauses between steps to keep it natural",end_date:"Campaign ends on",config_prompt:`Configure your campaign 230 231Provide all the details for configuring your campaign`,campaign_name:"Campaign name",language_description:"The language of the generated content",product_link:"Product link*",product_link_desc:"We will analyze this page to better understand your audience",target_audience:"Describe your target audience*",regenerate_audience:"Regenerate audience",select_audience:"Select audience",custom_objective:"Custom objective",go_back:"Go back",choose_communication_channel:"Choose communication channel",objectives:{direct_sales:{title:"Direct sales ð¼",description:"Drive purchases faster with limited-time offers or personalized suggestions.",metrics:["Conversions","Revenue"]},promotional:{title:"Promotional ð¢",description:"Announce new products, sales events, or brand updates to stay top-of-mind.",metrics:["Clicks","Impressions"]},call_booking:{title:"Call booking ð ",description:"Encourage users to book a time with your team for service, consultations or onboarding.",metrics:["Meetings booked","Response"]},follow_up_sequence:{title:"Follow-up sequence ð",description:"Continue the conversation with users who engaged previously but haven't converted yet.",metrics:["Response","Open rate"]}},channels:{email:{title:"Email",description:"Send targeted emails to your target audience.",smtp_warning_title:"Warning",smtp_warning_message:"You are using {{provider}} account. Limit set by the provider is {{dailyLimit}} emails per day.",smtp_info_title:"Information",smtp_info_message:"You are using {{provider}} account. Your daily limit set by the provider is {{dailyLimit}}.",resend_unsupported:"Resend doesn't support activity tracking at the moment."},sms:{title:"SMS",description:"Reach users directly on their phones."},push_notification:{title:"Push Notification",description:"Send timely alerts to mobile users."},whatsapp:{title:"WhatsApp",description:"Connect through WhatsApp Business API",description_twilio:"Connect through WhatsApp via Twilio direct webhook",tooltip_autonomous_only:"WhatsApp is only available in autonomous mode",autonomous_warning:"â ï¸ WhatsApp requires autonomous content mode with pre-approved templates",no_template_found:"No templates found. Please Create a template to continue.",create_template_btn:"Create Template"},voice:{title:"Voice",description:"Engage with personalized voice messages.",modal:{title:"Configure AI voice call",subtitle:"Select the voice for your AI agent.",loading:"Loading voice options...",load_failed:"Failed to load voice options. Using default settings.",global_settings:"Global Campaign Settings:",language_label:"Language: {{language}}",tone_label:"Tone: {{tone}}",voice_label:"Voice",voice_description:"Select a voice that supports {{language}}",tone_label_simple:"Tone",tone_description:"Select the tone for your AI voice calls",no_voices:"No voices available for the selected language. Please change the global language setting.",preview_label:"Preview:",preview_text:"{{voice}} will speak in {{language}} using a {{tone}} tone",self_written_title:"You'll create the voice script",self_written_message:"in the next step. The AI will personalize it for each recipient based on your campaign settings.",auto_title:"Voice script will be automatically generated",auto_message:"in the next step based on your campaign objective and selected voice settings."}},messenger:{title:"Messenger",description:"Connect through Messenger platform."}}
231,custom_workflow:{label:"Custom Workflow Instructions*",generate_button:"Generate workflow"}},_E={campaigns_feedback:"View launched campaigns and give feedback to content samples.",cohorts_feedback:"View cohorts and give feedback on sample funnel contents.",samples_ready:"content samples are ready!",processing:"funnel is processing the contents...",ai_building:"Our AI is building you the perfect cohorts and contents within.",what_is:"What is control room?",description:"Keep track of all your campaigns and their status in one place. Provide feedback to content samples and get even better personalized content.",learn_more_control_room:"Learn more about control room",got_it:"Got it",no_campaigns_to_show:"No campaigns to show at the moment.",create_campaign_for_updates:"Create a campaign to see updates here.",feedback_given:"Feedback given",email_published:"email has been published",content_delivered:"Content has been delivered to your cohorts.",left:"left",scheduled_for:"Scheduled for {{-scheduled}}",view_content_sample:"View content sample",email_sms:"Email and SMS",untitled_campaign:"Early Access Discount (Spring '26)"},vE={datasource:{tracking_desc:"Track first party customer data with cutting-edge precision. Capture and track all your marketing data.",crm_desc:"Empower your business growth through comprehensive CRM platform that integrates marketing, sales, and customer service tools.",shopify_desc:"Boost your business with Shopifyâyour all-in-one eCommerce platform for effortless store management, marketing, and sales growth.",salla_desc:"Expand your reach with Sallaâyour comprehensive eCommerce solution for seamless store management, effective marketing, and increased sales.",zid_desc:"Elevate your business with Zidâyour powerful eCommerce platform for streamlined store management, effective marketing, and accelerated sales growth."},klaviyo_desc:"Enhance your e-commerce marketing with data-driven email automation.",hubspot_desc:"Increase sales with personalized email campaigns designed for online retailers.",postmark_desc:"Increase sales with personalized email campaigns designed for online retailers.",onesignal_desc:"Engage your audience effectively with push notifications, emails, SMS, and in-app messages all from one platform.",sendgrid_desc:"Enhance your email deliverability for both transactional and marketing emails with a trusted cloud-based service.",resend_desc:"Simplify your transactional email delivery with reliable and scalable API service.",mailgun_desc:"Automate your email workflows effortlessly with robust APIs for sending, receiving, and tracking emails.",clicksend_desc:"Streamline your business communications with versatile platform for SMS, email, and direct mail.",twilio_desc:"Enhance customer engagement with flexible and powerful communication APIs for messaging, voice, and video.",reve_desc:"Optimize your communication strategy with a multi-channel messaging solution for SMS.",boomcast_desc:"Boost your business revenue and save time with a complete solution for voice broadcasting, SMS, and IVR.",adareach_desc:"Reach your customers effectively with AdaReach's reliable SMS messaging platform.",sinch_desc:"Boost your customer interactions with scalable and reliable messaging, voice, and video communication solutions.",flowroute_desc:"Simplify your communication infrastructure with robust SIP trunking and messaging solutions.",whatsapp_desc:"Connect with customers instantly and securely using WhatsApp's messaging platform for seamless, real-time communication.",whatsapp_desc_twilio:"Connect with customers instantly through secure, real-time messaging on WhatsApp.",template_body:"Template body",body_description:"Enter the full body text for this template.",whatsapp_not_enabled:"WhatsApp Sender is not configured in Twilio",general_desc:"Integrate email, sms and push notification apps to build custom marketing funnels.",data_sources:"Data sources",email_apps:"Email apps",sms_apps:"SMS apps",social:"Social",crm:"CRM",crm_title:"Customer Relationship Management",crm_description:"Connect your CRM to sync customer data and streamline your sales and marketing processes",whatsapp:"WhatsApp",connect:"Connect",push_notification_apps:"Push notification",integrate_name:"Integrate {{-name}}",enter_account_details:"Please enter your {{-gatewayName}} account details.",confirm:"Confirm",reconnect:"Reconnect",integrate:"Integrate",disconnect:"Disconnect",facebook:"Facebook",facebook_desc:"Simplify your online presence with Facebook's user-friendly platform designed to connect you with a global audience.",disconnect_gateway:"Disconnect {{-name}}",pause_operations:"Any active operations related with {{-gateway}} account will be paused.",yes_disconnect:"Yes, disconnect",no_go_back:"No, go back",marktag:"Marktag",reconfigure:"Reconfigure",learn_more:"Learn more",hubspot:"Hubspot",choose_data_fields:"Choose the data fields you want to bring over from {{platform}}.",mandatory_field:"Mandatory field",mapped_fields:"{{-dynamicKeyName}} out of {{-requiredFieldsLength}} mapped",template_property:"Template property",mapping:"Mapping",nabiq_property:"Nabiq property",o
231ptional_fields:"Optional fields",confirm_disconnect_hubspot:"Are you sure you want to disconnect hubspot?",salesforce:"Salesforce",leverage_salesforce:"Leverage Salesforce as a data source for seamless, data-driven customer engagement.",confirm_disconnect_salesforce:"Are you sure you want to disconnect salesforce?",salla_connected:"Salla connected successfully!",shopify:"Shopify",reconnect_store:"Reconnect store",connect_store:"Connect store",salla:"Salla",salla_id:"ID: {{-salla_id}}",salla_name:"Name: {{-salla_name}}",zid:"Zid",zid_id:"ID: {{-zid_id}}",zid_name:"Name: {{-zid_name}}",enter_shopify_email:"Enter your Shopify store email",enter_zid_email:"Enter your Zid store email",done:"Done",confirm_disconnect_platform:"Are you sure you want to disconnect this platform?",zoho:"Zoho",streamline_sales_process:"Streamline your sales process and boost productivity with Zoho CRM's intuitive and customizable platform.",integrate_zoho:"Integrate Zoho",choose_zoho_region:"Choose your Zoho account region.",select_region:"Select Region",connect_whatsapp:"Connect with customers instantly and securely using WhatsApp's messaging platform for seamless, real-time communication.",facebook_connected:"Facebook connected successfully",facebook_auth_failed:"Facebook authentication failed!",select_business_account:"Select business account",select_facebook_account:"Select facebook business account",select_account:"Select account",select_whatsapp_number:"Select whatsapp number",whatsapp_number:"Whatsapp number",no_whatsapp_numbers:"No whatsapp numbers found.",confirm_disconnect:"Are you sure you want to disconnect?",integrate_firebase:"Integrate Firebase",copy_code:"Copy the following code and paste in your <head> tag.",code_copied:"Code copied to clipboard!",input_user_token:"Please input the user token in the",fcm_token:"fcmToken",field_after_firebase:"field after integrating firebase to your website.",firebase:"Firebase",deliver_push_notifications:"Sync customers, orders, and events to automate high-performing marketing campaigns",connect_marktag_first:"You need to connect a marktag connection first",missing_fields:"Missing required fields: project_id, private_key, or client_email",invalid_json:"Invalid JSON. Please check again.",find_service_account_json:"How do I find service account JSON?",step_by_step_instructions:"Step by step instructions given below.",go_to_project_settings:"Go to project settings",select_service_account:"Select 'Service account'",generate_private_key:"Generate new private key",understood_go_back:"Understood, go back.",enter_service_account_json:"Enter your service account JSON.",enter_json:"Enter JSON",json:"JSON",verify:"Verify",klaviyo:"Klaviyo",postmark:"Postmark",onesignal:"OneSignal",sendgrid:"SendGrid",resend:"Resend",smtp:"Your Email (SMTP)",smtp_desc:"Connect Gmail, Outlook or any SMTP provider",mark_email:"Mark Email",mark_email_desc:"Automated email infrastructure provisioning with dedicated domains and servers",mark_sms:"Mark SMS",mark_desc:"Mark SMS is a managed service by Markopolo. No additional setup required.",shukhee:"Shukhee",shukhee_email_desc:"Send emails through your Shukhee integration.",shukhee_sms_desc:"Send SMS through your Shukhee integration.",autosend:"Autosend",autosend_desc:"Send emails with a custom @markopoloai.com address using your unique username",mailgun:"MailGun",click_send:"Click Send",twilio:"Twilio",reve:"Reve SMS",boomcast:"Boomcast",adareach:"AdaReach",sinch:"Sinch",flow_route:"Flow Route",are_you_sure:"Are you sure?",copy:"Copy",user_fcm_token:"USER_FCM_TOKEN",masking:"Masking (Optional)",enter:"Enter {{-fieldName}}",account_verified:"Account verified!",verified_domains_found:"API key validated! Found {{count}} verified domain(s).",verified_senders_found:"API key validated! Found {{count}} verified sender(s).",sender_email_domain:"Sender Email Domain",sender_email:"Sender Email",email_prefix:"Email Address Prefix",sender_name:"Sender Name",email_preview:"Preview",add_domains:"Add more domains",select_domain:"Select a verified domain",select_verified_sender:"Select a verified sender",add_verified_senders:"Add more verified senders",company:"company",phone:"phone",add_field:"Add field",calendly:"Calendly",schedule_meetings:"Schedule meetings effortlessly with Calendly - a platform that automates booking, eliminates back-and-forth, and syncs with your calendar.",integrate_calendly:"Integrate Calendly",select_preferred_events:"Select your preferred events.",events:"Events",select_events:"Select events",nothing_found:"No events found",calendly_event_save_success:"Selected events saved successfully",calendly_event_save_failed:"Failed to save selected events",confirm_remove_calendly:"Are you sure you want to disconnect?",calendly_connected:"Calendly connected successfully!",connect_markopolo:"Connect Markopolo",smtp_warning_title:"Important: Use an App Password",smtp_warning_bullet1:"Never use your regular email password for SMTP connections.",smtp_warning_bullet2:"Generate an app-specific password from your email provider's security settings.",smtp_warning_bullet3:"This ensures your account remains secure if the password is compromised.",smtp_email_label:"Email",smtp_password_label:"Password",smtp_password_placeholder:"Enter your app password",smtp_how_to_generate_password:"How to generate app password?",smtp_server_information:"Server information",smtp_host_label:"SMTP Host",smtp_port_label:"Port",smtp_login_button:"Log in",smtp_email_required:"Email is required",smtp_password_required:"App password is required",smtp_host_required:"Host is required",smtp_port_required:"Port is required",smtp_auth_error:"Authentication error. Please Login again.",smtp_connection_failed:"SMTP connection failed",smtp_stream_error:"Error reading connection stream",smtp_connection_error:"SMTP connection error",smtp_email_invalid:"Please enter a valid email address",smtp_password_min_length:"Password must be at least 8 characters",smtp_host_invalid:"Please enter a valid hostname",smtp_port_invalid:"Port must be between 1 and 65535",autosend_username_label:"Username",autosend_username_placeholder:"Enter username",autosend_username_required:"Username is required",autosend_username_invalid:"Username must be 3-30 characters and contain only letters, numbers, and underscores",autosend_email_hint:"Your email address will be: {{-email}}",autosend_check_username:"Check Username Availability",autosend_username_available:"Username is available",autosend_username_unavailable:"Username is not available",autosend_check_username_failed:"Failed to check username availability",mark_email_info_title:"Automated Email Infrastru
231cture",mark_email_info_bullet1:"We'll automatically find and purchase a domain related to your brand",mark_email_info_bullet2:"Your dedicated email server will be configured with proper DNS records",mark_email_info_bullet3:"SMTP credentials will be automatically integrated into your account",mark_email_domain_label:"Your Brand Domain",mark_email_domain_help:"Enter your brand's main domain (e.g., mybrand.com). We'll find and configure a similar domain for email sending.",mark_email_domain_required:"Brand domain is required",mark_email_domain_invalid:"Please enter a valid domain name",mark_email_provision_button:"Provision Email Infrastructure",mark_email_provisioning_failed:"Failed to provision email infrastructure",mark_email_connection_error:"Email infrastructure provisioning error",mark_email_dns_propagation_title:"DNS Propagation in Progress",mark_email_dns_propagation_message:"Your email infrastructure has been provisioned successfully. However, it may take 5-30 minutes for DNS nameservers to propagate globally. Emails will start working once propagation is complete.",mark_email_close_button:"Got it",default:"Default",error:"Error",integrate_twilio:"Integrate Twilio",reconnect_twilio:"Reconnect Twilio",create_template:"Create Template",select_mobile_number:"Select mobile number",select_mobile_number_required:"Please select a mobile number",select_provider:"Select Provider",fetching_whatsapp_numbers:"Fetching WhatsApp numbers from Twilio...",whatsapp_connected_success:"WhatsApp connected successfully!",whatsapp_connected_error:"Failed to connect WhatsApp",phone_saved_success:"Phone number saved successfully!",phone_saved_error:"Failed to save phone number",connect_via_meta:"Connect via Meta Business Manager",whatsapp_template_management:{title:"WhatsApp Template Management",info_message:"WhatsApp requires pre-approved message templates for business messaging. Create and manage your templates here, then submit them to Meta for approval. Once approved, you can use them in your campaigns to send personalized messages to customers.",create_new_template:"Create New Template",template_name:"Template Name",template_name_description:"Use lowercase letters, numbers, and underscores only (max 512 characters)",template_name_required:"Template name is required",template_name_invalid_format:"Use only lowercase letters, numbers, and underscores",template_name_max_length:"Template name must be less than 512 characters ({{count}}/512)",language:"Language",language_required:"Language is required",select_language:"Select language",template_language_code:"Template language code",template_content:"Template Content",template_content_required:"Template content is required",template_content_max_length:"Content exceeds 1024 characters ({{count}}/1024)",template_content_description:"Add text before the first variable and after the last one. Variables cannot be adjacent. ({{count}}/1024 characters)",content_placeholder:"Hi {{1}}! Check out our amazing {{2}} offer - Limited time only!",example_values:"Example Values",required:"Required",example_values_description:"Provide example values for each variable in the template. These will be used for Meta approval.",example_for_variable:"Example for {{variable}} (Parameter {{index}})",example_value_description:"Example value for {{variable}} variable - appears {{index}} in template",variables_detected:"Variables detected:",variables_label:"Variables:",variable_suggestions:"Variable Suggestions:",variable_might_not_work:"might not work.",use_instead:"Use {{suggestion}} instead?",variable_not_recognized:"{{variable}} is not a recognized variable (will be sent as-is)",preview_with_example_data:"Preview with example data:",simple_variables_numbers:"Simple Variables (Numbers):",smart_variables_auto_filled:"Smart Variables (Auto-filled):",custom_variable:"Custom variable",define_what_represents:"(define what this represents)",template_type:"Template Type:",template_type_universal:"Universal - Can be used in any campaign type",template_type_audience_based:"Audience-based - For customer segmentation campaigns",template_type_event_based:"Event-based - For product event-triggered campaigns",create_request_approval:"Create & Request Approval",cancel:"Cancel",existing_templates:"Existing Templates",refresh:"Refresh",loading_templates:"Loading templates...",no_templates_found:"No templates found. Create your first template to get started.",approved:"Approved",pending_approval:"Pending Approval",rejected:"Rejected",event_based:"Event-based",audie
231nce_based:"Audience-based",universal:"Universal",rejection_reason:"Rejection reason: {{reason}}",characters_count:"{{count}}/1024 characters",validation_errors_before_submit:"Please fix the validation errors before submitting",template_created_success:"Template created successfully! Awaiting approval",template_create_failed:"Failed to create template",template_name_exists:"Template name already exists or is invalid",variables_cannot_start:"Variables cannot be at the start of the template. Add text before the first variable.",variables_cannot_end:"Variables cannot be at the end of the template. Add meaningful text after the last variable.",variables_cannot_adjacent:"Variables cannot be adjacent. Add text between variables.",provide_example_values_for:"Please provide example values for: {{variables}}",customer_data:"Customer Data",order_data:"Order Data",company_data:"Company Data",campaign_data:"Campaign Data",customer_full_name:"Customer's full name",customer_first_name:"Customer's first name",customer_last_name:"Customer's last name",customer_email:"Customer's email address",order_id:"Order ID or reference number",cart_total:"Cart total amount",product_name:"Product name",product_quantity:"Product quantity",order_total:"Total order amount",company_name:"Your company name",support_email:"Support email address",company_website:"Company website",discount_code:"Discount code",offer_expiry_date:"Offer expiry date",discount_percentage:"Discount percentage"}},yE={setup_title:"Setup Webhooks",setup_description:"Enable real-time synchronization for {{shopDomain}} to automatically update your data.",setup_button:"Setup Webhooks",verify_button:"Verify Webhooks",retry_button:"Retry Setup",setting_up:"Setting up webhooks...",verifying:"Verifying webhook connection...",setup_complete:"Webhooks setup successfully!",setup_failed:"Webhook setup failed",ready_to_setup:"Ready to setup webhooks",error_title:"Setup Error",success_title:"Success!",success_description:"Real-time sync is now active. Your data will update automatically.",status:{healthy:"Healthy",unhealthy:"Unhealthy",not_setup:"Not Setup"},migration:{title:"Enable Real-time Sync",description:"Setup webhooks to enable automatic data synchronization for your Shopify store.",setup_now:"Setup Now"},real_time_features:"What you'll get with real-time webhooks:",feature_product_sync:"Automatic product sync to knowledge base",feature_inventory_sync:"Real-time inventory level updates",feature_campaign_triggers:"Instant cart abandonment & order campaigns",feature_cart_analytics:"Live cart analytics and insights"},bE={title:"Cart Analytics",description:"Real-time insights into cart abandonment and recovery performance",real_time:"Real-time",total_carts:"Total Carts",abandoned_carts:"Abandoned Carts",recovered_carts:"Recovered Carts",conversion_rate:"Conversion Rate",average_cart_value:"Average Cart Value",recovery_performance:"Recovery Performance",email_recovery:"Email Recovery",sms_recovery:"SMS Recovery",top_abandoned_products:"Top Abandoned Products",carts:"carts",time_range:"Data from {{from}} to {{to}}"},wE={title:"Shopify Integration",connected:"Connected",webhook_status:"Webhook Status",customers_synced:"Customers Synced",last_sync:"Last Sync",real_time_sync:"Real-time Sync",active:"Active",setup_webhooks:"Setup Webhooks",webhooks_not_setup:"Not Setup",healthy:"Healthy",unhealthy:"Unhealthy",webhook_error_hint:"Webhook connection issues detected. Please verify your setup.",products_synced:"Products Synced",events_24h:"Events (24h)",sync_activity:"Sync Activity",products_processed:"Products",campaigns_triggered:"Campaigns",inventory_updates:"Inventory"},xE={business_name_max_length:"Business name must be less than 50 characters",website_max_length:"Website must be less than 100 characters",create_account:"Create your Markopolo account",google_signup:"Sign up with Google",email_signup:"Or, sign up with email",full_name:"Full name",email:"Email",password:"Password",set_password:"Set password",password_requirement:"Must be 8+ chars with uppercase, lowercase, number and a symbol",signup:"Sign up",signin_prompt:"Already have an account?",email_check:"Check your email to continue",verification_sent:"We have sent a verification code to",verify:"Verify",resend_code:"Having trouble with code?",sync_leads:"Sync your lead database",connect_crm:"Connect your CRM or store to instantly create campaigns for your leads.",sync_marketplace:"Sync from marketplace",team_visibility:"Subjects, participants and timestamps will be visible to your team, Content won't be visible unless shared.",connect_to_shopify:"Connect to Shopify",connect_shopify_invalid_email:"Invalid email address",connect_to_salla:"Connect to Salla",sync_crm_prompt:"Sync from CRM",continue:"Continue",guide_nabiq:"Guide Nabiq",s
231ample_campaign:"We're ready to create a sample campaign! Share your ideas to help us tailor it to your needs.",instructions:"Instructions",engagement_prompt:"Tell us how to engage your leadsâmention key products, discounts, or goals.",content_creation:"Help Nabiq Create Spot-On Content",content_guidance:"Tell us what you're looking forâwho it's for, what to say, and how to say it. The clearer you are, the better Nabiq can deliver.",captain_working:"Captain Nabiq is doing it's magic",like_feedback:"I like this",feedback_thanks:"Thank you for your feedback",business_understanding:"Help us understand your business better.",to_dashboard:"Continue to dashboard",go_back:"Go back",skip_step:"Skip this step",business_name_required:"Business name is required",industry_required:"Industry is required",industry_length_required:"Industry must be less than 50 characters",business_size_required:"Business size is required",website_required:"Website is required",failed_user_data:"Failed to get user data",get_to_know_you:"Let's get to know you",shopify_connected:"Shopify connected",connect_shopify:"Connect Shopify",shopify_single_account_warning:"Important: Each Shopify store can only be connected to one Markopolo AI account. If this store is already connected elsewhere, the connection will fail.",shopify_already_connected_error:"This Shopify store is already connected to another Markopolo AI account. Each store can only be connected once.",shopify_duplicate_store_error:"Unable to connect: This store is already linked to a different Markopolo AI account.",salla_connected:"Salla connected",connect_salla:"Connect Salla",participants_visibility:"Participants and timestamps will be visible to your team. Subject lines and contents won't be visible unless shared",hubspot_connected:"Hubspot connected",connect_hubspot:"Connect Hubspot",salesforce_connected:"Salesforce connected",connect_salesforce:"Connect Salesforce",taking_to_dashboard:"Taking you to the dashboard",generate_sample_content:"Generate sample content",review_sample_contents:"Review sample contents",content_sequence_ready:"We've a content sequence ready for you to review.",go_to_dashboard:"Go to dashboard",content_placeholder:"Generated content will show up here",content_instructions:"Tell us what you're looking for in your contentsâwho it's for, what to say, and how to say it. The clearer you are, the better Nabiq can deliver.",sample_content:"Sample content",subject_label:"Subject:",user_data_error:"Failed to get user data!",example_company:"e.g John's company",select_industry:"Select your industry",select_business_size:"Select your business size",website_url_placeholder:"Paste your website URL here",invalid_website:"Please provide a valid website url.",website_invalid_domain:"Please enter a valid domain with proper extension (e.g., .com, .org, .ai)",business_name_min_length:"Minimum length for bussiness name should be 3.",finish_setup:"Finish setup",demo_campaign:"Explore a demo campaign",demo_campaign_desc:"Experience how Markopolo will automate your marketing campaigns for potentially millions of users - P.S. this demo doesn't include the orchestration models capability",demo_campaign_button:"Explore",create_campaign_with_audience:"Create a campaign by uploading lead list",create_campaign_with_audience_desc:"You can upload a CSV full of audiences you want to target, just name, email or phone numbers would do! Use this as a test campaign to check out the flow!",create:"Create",lead_step_title:"How do you want to start?",lead_step_desc:"Choose how you want to learn about markopolo.ai",create_campaign_with_crm:"Create a campaign using data from CRM",create_campaign_with_crm_desc:"Backend integration for ultra-reliable, lossless event tracking. Perfect for dev teams and conversion-focused setups.",skip:"Skip this step",onboarding_completed:"Onboarding completed successfully! Welcome to Markopolo AI.",tnc:"Terms & Conditions",i_agree:"I agree to"},CE={header:{subtitle:"Let's set up your account",helper:"Share your business details and we'll get you ready for your dashboard.",reset:"Reset onboarding"},navigation:{back:"Back",continue_default:"Continue",skip:"Skip This Step"}
231,steps:{account:{title:"Account Setup",description:"Share your store details to personalize everything",duration:"5 min",cta:"Complete setup"},smart_campaign:{title:"Smart Campaign",description:"Add MarkTag or connect Shopify to detect events",duration:"10 min",cta:"Continue to Channel Setup"},connect_platform:{title:"Business platform",description:"Select and connect your primary business platform",duration:"5 min",cta:"Continue"},channels:{title:"Connect Channels",description:"Enable email, SMS, and WhatsApp outreach",duration:"5 min",cta:"Continue to Campaign Creation"},templates:{title:"Campaign Templates",description:"Customize pre-built journeys with your brand",duration:"10 min",cta:"Continue to Launch"},launch:{title:"Launch & Monitor",description:"Review your setup and go live",duration:"5 min",cta:"Launch Campaigns"}},account:{heading:"Let's setup your account",subheading:"Complete the steps below to get set up",store_url:"Store URL",store_url_helper:"Use your live site URL. Weâll auto-add https:// if missing.",monthly_revenue:"Monthly Revenue Range",revenue:{under_10k:"Under $10k/month","10k_50k":"$10k - $50k/month","50k_100k":"$50k - $100k/month","100k_500k":"$100k - $500k/month",over_500k:"Over $500k/month"},primary_goals:"Primary Goals (select all that apply)",goals:{cart_recovery:"Cart Recovery",cart_recovery_desc:"Win back abandoned shoppers with timely nudges.",repeat_purchases:"Repeat Purchases",repeat_purchases_desc:"Increase lifetime value with post-purchase journeys.",customer_winback:"Customer Win-back",customer_winback_desc:"Re-engage lapsed buyers with seasonal offers.",revenue_growth:"Revenue Growth",revenue_growth_desc:"Drive new sales with contextual upsell campaigns."},integration_method:"Choose Your Integration Method",integration:{shopify:"Shopify Store",shopify_desc:"One-click app installation and automatic tracking.",shopify_helper:"Recommended for Shopify merchants",marktag:"Other Platform",marktag_desc:"Manual MarkTag installation for any website or headless store.",marktag_helper:"Perfect for dev teams and conversion-focused setups."},ready:"Account Ready",ready_desc:"Your workspace is configured for tracking setup.",complete_required_fields:"Please complete all required fields to continue.",complete_setup:"Complete setup",validation:{business_name_required:"Business name is required",business_name_min_length:"Business name must be at least 3 characters",industry_required:"Industry is required",website_required:"Website URL is required",website_extension_required:"Website must include a domain extension (e.g., .com, .net)",revenue_required:"Monthly revenue range is required",integration_required:"Integration method is required"}},connect_platform:{title:"Select your primary business platform",subtitle:"This platform integrates with Markopolo to provide real-time transaction and customer data.",shopify_title:"Shopify",woocommerce_title:"WooCommerce",shopify_desc:"Sync customers, orders, and events to automate high-performing marketing campaigns",woocommerce_desc:"Connect your store data to power real-time audience segmentation and conversion tracking",custom_title:"Custom/Marktag",custom_desc:"Send server-side events and custom data through MarkTag for fully flexible tracking and automation",connect_shopify:"Connect to Shopify",connect_shopify_subtitle:"Sync your customer data so you can use it to personalize your marketing.",store_url_hint:"Your verified Shopify store URL. It can be found within Shopify Admin >> Settings in the top left",shopify_install_required:"Please install the Markopolo app from the Shopify App Store first, then return here to connect your store.",do_later:"I'll do this later",connect_woo:"Connect to WooCommerce",connect_airwallex:"Connect to Airwallex",custom_marktag_title:"Custom / Marktag"},tracking:{shopify_title:"Install Tracking via Shopify",shopify_subtitle:"Install the Markopolo app to automatically detect events and enrich campaigns.",active_method_client:"Using client-side script installation.",active_method_shopify:"Using Shopify app installation.",shopify_instruction_title:"Shopify App Installation",shopify_instruction_desc:"Install the app, approve permissions, and we'll take care of the rest.",shopify_step_1:"Click 'Install Shopify App' below",shopify_step_2:"Approve permissions inside your Shopify dashboard",shopify_step_3:"Return here â we'll detect events automatically",install_shopify:"Install Shopify App",shopify_connected:"Shopify connected successfully",marktag_title:"Install Tracking Script",marktag_subtitle:"Add the MarkTag snippet to collect real-time customer behavior across your storefront.",script_title:"MarkTag Script",script_desc:"Copy the snippet below and paste it inside your website's <head> section.",copy:"Copy",instructions_heading:"Installation Instru
231ctions",instructions:{1:"Copy the MarkTag script above",2:"Paste it into your website's <head> section",3:"Deploy your changes",4:"Click 'Verify Tracking' to confirm events"},verify_connection_title:"Verify connection",verify_connection_desc:"Click Verify to check for recent events every 5 seconds. We will mark this step as verified once events are detected.",verify_now:"Verify connection",verifying:"Verifying...",no_tagid_helper:"Generate or connect tracking first to enable verification.",verify:"Verify Tracking",verified:"Tracking verified",shopify_ready_title:"Account Ready",shopify_ready_desc:"Shopify is connected and we're receiving storefront events. Continue to channel setup to finish onboarding.",generate_marktag:"Generate MarkTag Script",generate_marktag_prompt:"Set up the MarkTag tracking snippet for your site.",generate_marktag_desc:"We'll create a workspace-specific script. Paste it into your site's <head> and deploy.",generate_marktag_success:"MarkTag script generated successfully.",marktag_ready_desc:"Copy the script below and add it to your website's <head> section. Deploy your site and click verify once events start flowing.",events_heading:"Real-time Event Detection",events_subheading:"Great news! We're already receiving behavioral data.",events:{page_views:"Page Views",add_to_cart:"Add to Cart",checkout:"Checkout Started",button_clicks:"Button Clicks"},event_detected:"Event detected in the last few minutes",event_pending:"Waiting for this event â test it on your site",waiting_for_events:"Waiting for events",waiting_for_events_desc:"Open your website and interact (view pages, add to cart, click buttons) to see events appear here.",behavioral_ready:"Behavioral Data Collection Started",behavioral_ready_desc:"Successfully detecting {{count}} event types. Customer behavior is now streaming in.",add_products_title:"Add Products (Optional)",add_products_desc:"Add products to your knowledge base to enable product-specific campaigns. You can add products now or later.",shopify_not_connected:"Shopify Not Connected",shopify_not_connected_desc:"Connect Shopify first to enable product syncing.",products_preview_title:"Products Preview",products_preview_desc:"Recently added products:",more_products:"And {{count}} more products..."},channels:{title:"Connect Communication Channels",subtitle:"Enable multi-channel outreach to recover more revenue across email, SMS, and WhatsApp.",email_heading:"Email Provider",email_desc:"Choose how you'd like to send recovery campaigns.",providers:{sendgrid:"SendGrid",mailgun:"Mailgun",markopolo:"Markopolo Email",other:"Other Provider"},api_key:"API Key",sms_heading:"SMS (Optional)",sms_desc:"Recover carts via text messaging.",sms_sid:"Twilio Account SID",sms_auth:"Twilio Auth Token",whatsapp_heading:"WhatsApp (Optional)",whatsapp_desc:"Reach customers on WhatsApp with high-intent reminders.",whatsapp_helper:"Our team will provision templates and messaging once enabled.",status_email:"Email",status_sms:"SMS",status_whatsapp:"WhatsApp",connected:"Connected",pending:"Pending",disabled:"Disabled",connect_email_helper:"Connect at least one email provider to continue.",connect_email_to_continue:"Please connect an email provider to continue to campaign creation."},templates:{title:"Campaign Template Selection",subtitle:"Choose pre-built templates and customize them with your brand.",brand_logo:"Brand Logo",cart_abandonment:"Cart Abandonment",cart_abandonment_desc:"Recover abandoned carts with personalized reminders.",browse_abandonment:"Browse Abandonment",browse_abandonment_desc:"Re-engage visitors who viewed products but didn't add to cart.",customer_winback:"Customer Win-back",customer_winback_desc:"Bring back inactive customers with special offers.",recommended:"Recommended",discount:"Discount Amount (%)",discount_helper:"Optional. Leave blank if you don't want to include a discount.",first_message_title:"First Message Timing",first_message:{"1_hour":"1 hour","3_hours":"3 hours","24_hours":"24 hours","48_hours":"48 hours"},brand_assets:"Brand Assets",upload_logo:"Click to upload",upload_helper:"PNG, JPG up to 2MB",brand_color:"Primary brand color",message_tone:"Message Tone / Preview",message_placeholder:"Example: Hi {{first_name}}, we noticed you left some items in your cart. Complete your purchase now and enjoy 10% off!",preview_title:"Preview",preview_example:"Hi there! We noticed you left some items in your cart. Complete your purchase now and enjoy 10% off.",ready:"Campaigns Ready to Launch",ready_desc:"{{count}} campaigns configured with your branding and ready to deploy."},launch:{title:"Launch & Monitor",subtitle:"You're all set! Launch your campaigns and start recovering revenue within 24 hours.",setup_summary:"Setup Summary",configuration:"Your Configuration",config:{store:"Store",revenue_range:"Revenue Range: {{range}}",tracking:"Tracking",detecting:"Detecting",channels:"Channels",multi_channel:"Multi-channel outreach enabled",campaigns:"Campaigns"},summary:{store:"Store",tracking:"Tracking",shopify_tracking:"Shopify tracking enabled",tracking_verified:"MarkTag verified",tracking_pending:"Pending verification",channels:"Channels connected",templates:"Templates ready",template_count:"{{count}} templates selected",template_empty:"No templates selected"},ready_title:"Ready to Launch!",ready_desc:"Your campaigns are configured and ready to start recovering revenue. Click launch to enable them and begin seeing results.",metrics:{campaigns:"Active Campaigns",channels:"Channels Connected",events:"Events Tracking"}
231,launch_button:"Launch Campaigns"},toast:{account_saved:"Account details saved",account_success:"Account Setup successfully",setting_up_profile:"Setting up your profileâ¦",setting_up_profile_help:"Connecting your channels. This may take a few seconds.",account_failed:"Unable to save account details",shopify_install:"Shopify installation initiated",tracking_verified:"Tracking verified successfully",tracking_success:"Install Tracking successfully",channels_saved:"Channels saved",channels_failed:"Unable to update channels. Please try again.",templates_saved:"Templates configured",launch_success:"Campaigns launched successfully!",launch_failed:"Failed to launch campaigns. Please try again.",reset:"Onboarding progress has been reset."}},SE={title:"Let's get to know you",subtitle:"Help us understand your business better.",subtitle2:"We'll customize your experience based on your business type.",select_industry:"Select industry",business_name:"Business name",industry:"Industry",industry_example:'Example value: "Travel"',business_size:"Business size",size_example:'Example value: "1-50 employees"',website:"Website URL",usage_desc:"We'll use this to understand your business and create campaigns for you.",create_business:"Create business",something_else:"Something else",something_else_placeholder:"Enter your industry...",shop_url:"Store url",shop_url_required:"Store URL is required",shop_url_include_https:"Please include https:// in the store URL",shop_url_invalid_domain:"Please enter a valid URL with a domain extension (e.g. .com, .myshopify.com)",store_owner_email:"Store owner email"},kE={title:"Monitoring",description:"Know the performance of your campaigns in detail.",last_year:"Last year",last_month:"Last month",last_week:"Last week",last_3_days:"Last 3 days",yesterday:"Yesterday",today:"Today",all_campaigns:"All campaigns",loading_performance_data:"Loading performance data...",error_loading_data:"Error loading performance data",no_data_to_show:"No data to show at this moment",launch_campaign_for_data:"Launch a campaign to see performance trend data.",create_campaign:"Create campaign",custom_range:"Custom Range",select_campaign:"Select Campaign",no_campaigns_found:"No campaigns found",custom_date_range:"Custom Date Range",start_date:"Start Date",end_date:"End Date",select_start_date:"Select start date",select_end_date:"Select end date",select_date_range:"Select date range"},PE={brand_color:"Brand color",brand_color_desc:"Used for button borders and highlights to enhance your sender profile.",brand_color_invalid:"Enter a valid hex color (e.g. #FF5733).",title:"Settings",description:"Customize and configure your markopolo profile.",personal_details:"Personal details",security_settings:"Your personal and security settings.",security:"Security",logout_all_devices:"Logout from all devices",logout_all_devices_desc:"Sign out of every device and browser where you're currently logged in, including this one.",logout_all_devices_confirm_title:"Logout from all devices?",logout_all_devices_confirm_desc:"This will end all active sessions across every device, including this one. You'll need to log in again.",logout_all_devices_confirm_btn:"Logout everywhere",business_details:"Business details",business_desc:"Your business details.",upload_prompt:`Click to upload or drag and drop 232SVG, PNG, JPG or GIF (Max. 800*400 px)`,name:"Name",email:"Markopolo Signup Email",avatar:"Avatar",avatar_required:"Avatar is required",business_name:"Business name",industry:"Industry",business_size:"Business size",cancel:"Cancel",save_changes:"Save changes",name_required:"Name is required",name_length:"Full name should be between 5 to 50 characters",name_invalid_chars:"Name should contain only alphabets, hyphen, apostrophes, and periods",email_invalid:"Invalid email address",email_required:"Email is required",business_name_required:"Business name is required",industry_required:"Industry is required",name_min_length:"Name must be at least 2 characters.",name_max_length:"Name cannot exceed 60 characters.",business_name_min_length:"Business name must be at least 2 characters.",business_name_max_length:"Business name cannot exceed 60 characters.",business_size_required:"Business Size is required",website_invalid_domain:"Please enter a valid domain with proper extension (e.g., .com, .org, .ai)",enter_name:"Enter your name",enter_email:"Enter your email",enter_business_name:"Enter business name",apparel:"Apparel",auto:"Auto",b2b:"B2B",beauty:"Beauty",consumer_service:"Consumer Service",finance_insurance:"Finance Insurance",fitness:"Fitness",home_improvement:"Home Improvement",healthcare:"Healthcare",industrial_services:"Industrial Services",legal:"Legal",retail:"Retail",technology:"Technology",travel_hospital
232ity:"Travel & Hospitality",real_state:"Real estate",mobile_app:"Mobile app",select_industry:"Select industry",employees_count:"{{-size}} employees",select_business_size:"Select business size",click_to_upload:"Click to upload",drag_and_drop:"or drag and drop",upload_instructions:"SVG, PNG, JPG, or GIF (max. 800x400px)",gaming:"Gaming",gaming_headliner:"Video games, e-sports, gaming hardware and accessories",consumer:"Consumer",consumer_headliner:"Direct to consumer(D2C), e-commerce marketplace and retail platforms",b2b_headliner:"B2B SaaS platforms, enterprise service providers, and wholesale distribution networks.","e-commerce":"E-commerce","e-commerce_headliner":"Online stores, digital marketplaces, shopping platforms and payment solutions","real-state":"Real Estate","real-state_headliner":"Property sales, rental listings, realty services and investment opportunities","mobile-app":"Mobile Apps","mobile-app_headliner":"App development, mobile platforms, user experience and app monetization",profile:"Profile",user_role:"User roles",team_table_header:"Members",team_table_header_description:"View your active and pending members.",team_table_user_count:"users",team_table_invite:"Invite",insight:"Insight",role:"Role",date_joined:"Date joined",remove_user:"Remove user",remove_invite:"Remove invite",no_members_invited:"No members invited",invite_modal:{modal_header:"Invite a member",modal_description:"Subheading",email:"Enter the email of who you want to invite",role:"Select the member's role",email_required:"Email is required",role_required:"Role is required",email_invalid:"Invalid email address!",invite_success:"Invitation sent successfully.",invite_failed:"Failed to send team invitation."},confirm:"Confirm",remove_modal_confirm:"Yes, remove",remove_modal_cancel:"No, go back",remove_modal_warning:"This action can not be undone.",sender_profile:"Sender Profile",sender_profile_desc:"Configure your RCS sender profile for messaging campaigns.",logo_image:"Logo Image",logo_image_desc:"Logo image appears next to your Sender display name when you exchange RCS messages. Image must be 224 x 224 pixels, have a max file size of 50 KB, and be a JPEG, JPG or PNG",logo_image_description:"Logo image appears next to your Sender display name when you exchange RCS messages.",logo_upload_instructions:"JPG, JPEG, or PNG. Max file size: {{maxSize}}",banner_image:"Banner Image",banner_image_desc:"The banner image appears on certain devices when viewing your sender profile. Image must be 1440 x 448 pixels, have a max file size of 200 KB, and be a JPEG, JPG, or PNG",banner_image_description:"The banner image appears on certain devices when viewing your sender profile.",banner_upload_instructions:"JPG, JPEG, or PNG. Max file size: {{maxSize}}",accent_color:"Brand color",accent_color_desc:"Used for button borders and highlights to enhance your sender profile.",accent_color_required:"Brand color is required",contact_details:"Contact Details",contact_details_desc:"Can include a phone number, email, or website, but at least one phone number or email is required.",contact_type:"Contact type",primary_phone_number:"Primary phone number",primary_phone_placeholder:"Enter phone number with country code",primary_phone_required:"At least one phone number or email is required",primary_phone_invalid:"Please enter a valid phone number with country code (e.g., +1234567890)",phone_label:"Label for phone number",phone_label_placeholder:"e.g., Customer Support",privacy_policy_link:"Link to privacy policy",privacy_policy_placeholder:"https://example.com/privacy-policy",privacy_policy_invalid:"Please enter a valid URL",terms_of_service_link:"Link to terms of service",terms_of_service_placeholder:"https://example.com/terms-of-service",terms_of_service_invalid:"Please enter a valid URL",utm_tracking:{title:"UTM Tracking",enable_toggle_desc:"Track where email clicks come from in your analytics tools.",preview_heading:"Example: what gets added to every email link",preview_subheading:"These tags help you see which emails and campaigns drove traffic in Google Analytics and similar tools.",preview_your_brand:"your brand",preview_source_label:"Source (your brand)",preview_source_hint:"From your business name: {{name}}",preview_medium_label:"Medium (channel)",preview_medium_hint:"Always set to email for campaigns sent from Nabiq",preview_campaign_label:"Campaign (name)",preview_campaign_hint:"Uses each campaignâs name when the email is sent",preview_content_label:"Content (step)",preview_content_hint:"Identifies the workflow step â you donât need to configure this",preview_term_label:"Term (message)",preview_term_hint:"Used internally to attribute clicks to a specific message",preview_auto_value:"Added automatically",preview_short_url_label:"Short link your recipients click",preview_short_url_hint:"The short link forwards to your page with all tracking tags above attached."}},EE={blocked_by_ai:"Blocked by AI",how_feedback_works:"How does feedback work?",give_feedback:"Give thumbs up to the content samples you find relevant to your campaign or thumbs down to samples that don't align with your goals. Your feedback helps in creating even more personalized content to send to the users.",learn_more_control_room:"Learn more about control room",got_it:"Got it",view_feedback_samples:"View and give feedback on sample funnel c
232ontents.",samples:"Samples",subject:"Subject: {{-subject}}",blocked_by_ai_breach:"Blocked by AI due to constitution breach",approve:"Approve",block:"Block",approved:"Approved",irrelevant:"Irrelevant",find_relevant:"I find this relevant",change_feedback:"Change feedback",relevant:"Relevant"},IE={acquisition_chatbot:"Acquisition chatbot",convert_visitors:"Convert visitors into leads with the acquisition chatbot.",need_help_chatbot:"Need help integrating chatbot?",integrate_chatbot:"Integrate chatbot",copy_paste_code:"Copy and paste the following code into your website's <1>head</1> tag.",copy:"Copy"},TE={add:"Add",header_title:"Markopolo | Plan and Billing",title:"Plan and Billing",desc:"For plan changes or if you've hit your limits, reach out to us at [email protected]",no_payment:"No payment method added",name_on_card:"Name on card",card_holder:"Cardholder name",address:"Address",enter_address:"Enter your address",exp_date:"Expiry date",remove_payment_method:"Remove payment method?",remove_payment_method_desc:"Are you sure you want to remove payment method? Future payments will be obstructed.",remove_cancel:"No, go back",remove_confirm:"Yes, remove",no_card_available:"No card available",free_trial_days_left:"There are {{-days}} days left on your free trial.",add_payment_method:"Add payment method",card_number_required:"Card number is required",card_number_length:"Card number must be between 13 and 19 digits",month_required:"Month is required",month_format:"Month must be between 01-12",year_required:"Year is required",year_format:"Year must be in 20XX format",cvv_required:"CVV is required",cvv_length:"CVV must be exactly 3 digits",first_name_required:"First name is required",last_name_required:"Last name is required",street_address_required:"Street address is required",city_required:"City is required",state_required:"State is required",zip_code_required:"ZIP code is required",invalid_zip_code:"Invalid ZIP code format",country_required:"Country is required",no_charge_until_plan:"You won't be charged until you select a plan.",card_details:"Card Details",card_number:"Card number",card_number_placeholder:"XXXX XXXX XXXX XXXX",first_name:"First name",last_name:"Last name",expiry_date:"Expiry date",expiry_month:"MM",expiry_year:"YYYY",security_code:"Security code",cvv:"CVV",billing_address:"Billing Address",street_address:"Street address",street_address_placeholder:"Enter street address",city:"City",city_placeholder:"Enter city",state:"State",state_placeholder:"Enter state",zip_code:"ZIP code",zip_code_placeholder:"Enter ZIP code",country:"Country",country_placeholder:"Enter country",payment_method:"Payment method",card_brand:"{{-brand}} ending in {{-lastDigit}}",expiry_date_display:"Expiry {{-date}}",edit:"Edit",free_trial:"Free trial",trial_period:"{{-trialLeft}} days period",current_free_trial:"You are currently on our free {{-trialDaysLeft}} day trial period.",billing_period:"Billing period",not_billed_yet:"Not billed yet",per_month:"per month",per_year:"per year",explore_plans:"Explore plans",pro_plan:"Pro plan",monthly:"Monthly",annual:"Annual",current_pro_plan:"You are currently on pro plan.",per:"per",month:"month",year:"year",yearly:"Yearly",mo_price:"${{-price}}/mo",yr_price:"${{-price}}/yr",footer_desc:" *Subjects, participants and timestamps will be visible to your team, Content won't be visible unless shared.",subscribe_plan:"Subscribe to {{-planName}} plan",upgrade:"Upgrade",usage:"Usage",target_used:"{{-target}}% used",users_targeted:"{{-target}}/100 users targeted",credits_not_reset:"Credits will not reset on free trial period.",your_country:"Your country",select_country:"Select country",quantity_of_messages_monthly:"Quantity of messages (monthly)",quantity_of_messages:"Quantity of messages",confirm_whatsapp_addon:"Confirm WhatsApp add-on",conversion_cost_per_month:"${{totalConversionCost}}/month",whatsapp_business_addon:"WhatsApp business conversation add-on",subscribe_then_add_whatsapp:"Subscribe to a plan then you can add-on WhatsApp.",monthly_whatsapp_messages:"{{-total}} monthly messages",conversation_used:"{{-used}}/{{-total}} conversations used",add_whatsapp:"Add-on WhatsApp",subscribe_btn_tooltip:"Add a payment method to subscribe",select_quantity_tooltip:"Select quantity to see total cost.",buy_addon_btn_tooltip:"Add a payment method to buy add-on",plan_usage:"Plan usage",addon_usage:"Add-on usage",free:"Free",app_sumo:{title:"Growth Partner plan",desc:"For partner legacy users","100_active":"5,000,000 MarkTag Events",mtag_tracking:"MarkTag Tracking",email_unlimit:"10,000 Autosend Emails",sms_unlimit:"100 MarkSMS",voice_no_no:"Voice AI not included",claim:"Claim now",claimed:"Already claimed",add_to_claim:"Add a payment method to claim"}},AE={tropical_treasures:"Tropical Treasures",back_to_campaigns:"Back to campaigns",channel_performance:"Channel performance",campaign_created:"Campaign created successfully",congratulations_first_campaign:"Congratulations on your first campaign!",cohort_selection:"We will pick the perfect cohorts that match this campaign and also write the personalized contents for you.",view_approval:"You'll be able to view and approve them in our",notification_ready:"Don't worry, we will notify you when it's ready.",view_control_room:"View control room",created_on:"Created on {{-date}}
232",open_rate:"Open rate",link_clicks:"Link clicks",conversion_rate:"Conversion rate",engagement:"Engagement",revenue:"Revenue",CTR:"CTR"},RE={last_updated:"Last updated: {{time}}",failed_channels:"Failed Channels:",campaign_paused_check_integration:"â ï¸ Campaign is paused. Please check your integration settings.",progress_placeholder:"Campaign progress tracking will appear here once the campaign starts processing.",sent_on_2:"Sent on {{date}}",scheduled_for:"Scheduled for {{scheduled}}",error_label:"â ï¸ Error",leads_empty_alt:"Leads empty",overall_campaign_progress:"Overall Campaign Progress",list_description:"List of audience and individual campaign funnel details.",today:"Today",yesterday:"Yesterday",last_week:"Last week",last_month:"Last month",last_year:"Last year",custom:"Custom",this_week:"This week",this_month:"This month",go_back:"Go back",search_audience:"Search Audience",step:"Step",sent_on:"Sent on",discover_bali:"Discover Bali",audience:"Audience",nabiq_enhanced:"Nabiq enhanced",no_audience_found:"No audience found!",breakdown:"Breakdown",results_found:"{{-total}} search results found",no_data_available:"No data available!",content_will_be_generated:"Content will be generated when it is successfully sent to the user.",view:"View",scheduled_at:"Scheduled at: {{-time}}",id:"ID: {{-id}}",select_channel:"Select channel",all_channels:"All channels",all_stages:"All Stages",email:"Email",sms:"SMS",push_notification:"Push notification",call:"Voice",whatsapp:"WhatsApp",messaging_role_assistant:"AI assistant",messaging_role_customer:"User",ai_personalization_title:"AI personalization",ai_channel_performing_best:"{{channel}} is performing best",ai_channel_metrics_score_sent:"{{scorePercent}}% engagement · {{sent}} sent",ai_sequence_updated:"Sequence updated:",ai_steps_reordered:"Steps reordered",ai_one_step_injected:"1 step added by AI",ai_n_steps_injected:"{{count}} steps added by AI",performance_score_title:"Performance score",ai_objective_label:"AI objective",performance_attributed_revenue:"Attributed revenue",performance_by_channel:"By channel",sequence_breakdown_loading:"Loading sequence for this contact"},ME={select_marktag:"Select Marktag",track_customer_data:"Track first party customer data with cutting-edge precision. Capture and track all your marketing data.",go_back:"Go back",brand:"Brand",select_brand:"Select brand",marktag:"Marktag",select_marktag_container:"Select 'Marktag' container",no_brands_found:"No brands found!",create_brand:"Create a brand",auto_connect_ad_accounts:"Below ad accounts will get connected automatically."},NE={coupon_code:"Coupon code",add_payment_method:"Add payment method",no_charge_until_plan:"You won't be charged until you select a plan.",your_country:"Your country",select_country:"Select country",monthly_message_quantity:"Quantity of messages (monthly)",message_quantity:"Quantity of messages",total_conversion_cost:"Total conversion cost",conversion_cost_per_month:"{{-totalConversionCost}}/month",price_per_thousand_messages:"Price per 1,000 messages",processing_fee:"Processing Fee (10% of total cost)",visibility_notice:"*Subjects, participants and timestamps will be visible to your team, Content won't be visible unless shared.",confirm_whatsapp_addon:"Confirm WhatsApp add-on",you_will_pay:"You will pay",monthly_active_users_question:"How many monthly active users do you have?",pro_plan_limit:"With pro plan, you can have up to <500K monthly active users.",monthly_active_users:"Monthly active users",pro_plan_description:"The Pro plan starts with {{-activeUsersInText}} MAU specific user plan, which can be used for emails, SMS, push notifications, WhatsApp messages, or other interactions.",compare_plan_features:"Compare plan features",feature:"Feature",pro:"Pro",enterprise:"Enterprise",subject_participants_and_timestamps:"Final pricing based on active users each month. WhatsApp charges are not included.",custom_pricing_plan_with_support:"Custom pricing plan with support for unlimited monthly active users.",data_source_integration:"Data source integration",integration_limit:"Up to 5",unlimited_integration:"Unlimited",premium_engagement_channels:"Premium engagement channels",engagement_channels:"Email, SMS, Push Notifications and Messenger",automated_segmentation:"Automated segmentation",sales_bot:"Sales conversational bot",messenger:"Messenger",campaign_performance_insights:"Basic campaign performance insights",monitoring:"Monitoring",lead_booking_system:"Lead booking system",advanced_personalization:"Advanced personalization",ai_constitutions:"AI Constitutions",customizable_ai_rules:"Customizable AI rules for messaging, content moderation, and compliance",predictive_segmentation:"Predictive segmentation and Campaign intelligence",real_time_recommendations:"Real-time product recommendations",personalized_assistance:"Personalized assistance",account_manager_support:"Support from a dedicated account manager",detailed_reports:"Detailed reports and insights",real_time_tracking:"Including real-time tracking of customer behaviors and preferences",enterprise_security:"Enterprise-Grade security and compliance",enhanced_security:"Enhanced security features, including data encryption and compliance with GDPR",priority_support:"Priority Support",support_24_7:"24/7 support with a dedicated support team available",onboarding_training:"Onboarding and Training",comprehensive_training:"Comprehensive onboarding and training sessions for teams",whatsapp_addon_cost:"WhatsApp add-on cost",price_summary:"Price Summary",billed_in_usd:"Billed in $US Dollars",pro_plan:"Pro plan",enterprise_plan:"Enterprise plan",active_users_text:"{{-activeUsersInText}} monthly active users",unlimited_active_users:"Up to unlimited active users",total:"Total",visibility_notice_repeated:"Your subscription will be billed after your trial period ends.",subscription_success:"Subscription started successfully!",subscribe_pro_plan:"Subscribe to pro plan",contact_sales_team:"Talk to our sales team",discount_notice:"(10% discount for {{-activeUsersInText}} monthly active users)",others:"Others"},OE={data_room_title:"Markopolo | Data room",memory_title:"Markopolo | Memory",audience_title:"Markopolo | Leads",integrations_title:"Markopolo | Integrations",insights_title:"Markopolo | Insights",campaign_configuration_title:"Markopolo | Campaign Configuration",campaigns_title:"Markopolo | Campaigns",connect_marktag_title:"Markopolo | Connect Marktag",marketing_copilot_title:"Markopolo - Your marketing co-pilot captain",create_company_title:"Markopolo | Create your company",settings_title:"Markopolo | Settings",signin_title:"Markopolo | Sign in",signup_t
232itle:"Markopolo | Signup",reset_pass:"Markopolo | Reset password",analytics_title:"Markopolo | Analytics",explore_plans_title:"Markopolo | Explore Plans",email_verification:"Markopolo | Verify your email",content_title:"Markopolo | Content"},jE={used_mau:"Used MAU",target_notification:"You have targeted {{-target}}% of your available monthly active users.",plan_upgrade:"Upgrade Plan"},DE={enter_email_reset_pass:"Enter your email address and we will send you instructions to reset your password.",back_to_sign_in:"Back to sign in",please_check_your_email:"Please check your email.",reset_password_instructions:"We have sent you instructions to reset your password on {{-email}}.",resend_email:"Resend email.",enter_new_password:"Enter a new password",new_password:"New password",enter_new_password_placeholder_text:"Enter your new password",password_changed:"Password changed!",password_changed_successfully:"Your password has been changed successfully.",reset_password:"Reset password",invalid_code:"The verification code is invalid or has expired."},LE={page_title:"Leads",upload_leads_button:"Upload audiences",add_shopify_customers_button:"Add Shopify Customers",manually_sync_shopify_button:"Manually Sync Shopify Customers",file_upload_modal_title:"Upload audiences",file_upload_modal_description:"Upload your audiences to begin engaging them through your selected channels.",cancel_button:"Cancel",create_campaign_button:"Create campaign",download_button:"Download template",upload_button:"Upload",table_header_title:"Leads list",table_header_description:"View your uploaded lead list.",table_search_placeholder:"Search leads...",table_create_campaign_button:"Create Campaign",table_no_data_found:"No audience found",page_description:"Upload your audience and target them through campaigns.",delete_audience_lead_modal_title:"Delete user list?",delete_audience_lead_modal_description:"Are you sure you want to delete this user list? This action cannot be undone.",view_list:"View List",view_list_description:"View the list of audience members and their details.",delete:"Delete",phone_number:"Phone number",email_address:"Email address",source:"Source",created_at:"Created at",name:"Name",table_headers:{name:"Name",description:"Description",date_uploaded:"Date uploaded",status:"Status",tags:"Tags",size:"Size",source:"Source",actions:"Actions",muid:"MUID",email:"Email",phone:"Phone",user_status:"User status"},no_tags:"No tags",no_description:"â",source_shopify:"Shopify",source_csv:"CSV",source_xlsx:"XLSX",source_marktag:"Marktag",source_zoho:"Zoho",source_prompt:"Prompt",source_audience_studio:"Audience Studio",source_all_datasources:"All datasources",unknown:"Unknown",leads_tab:"Leads",audiences_tab:"Audiences",audiences_table_header_title:"Audiences",audiences_table_header_description:"View your saved audiences list.",audiences_table_search_placeholder:"Search audiences...",audiences_table_headers:{name:"Name",date_created:"Date created",size:"Size",source:"Source"},segments_tab:"Segments",download_csv:"Download CSV"},FE={page_title:"Insights",page_header:"Automatically generated insights based on your data.",insight:"Insight",top_insights_option:"Top insights",insights_log_option:"Insights log",date_created:"Date created",impact_score:"Impact score",audience_size:"Audience size",type:"Type",create_new_campaign_button:"Create new campaign",table_create_campaign_button:"Create campaign",table_no_data_found:"No insights found",actions:"Actions",table_header_description:"View your uploaded lead list.",trend:"Trend",no_top_insights:"No Insights available"},UE={title:"Test Voice Calls with our ",description:"Free users can schedule up to 100 test calls per month.",minimize:"Minimize",expand:"Try out",max:"max",duplicate_error:"Duplicate phone number",add_button:"Add another number",ai_script:"Use generated voice script",custom_script:"Write voice script myself",get_started:"Get started",agent_version:"Agent V1.0",agent_select_label:"Voice type",call_script_generate_button:"Generate new script",schedule_test_call:"Schedule test call",schedule_failed:"Failed to schedule calls!",schedule_failed_description:"Please try again or reach out to supp
232ort if the issue persists.",voice:"Voice",tone:"Tone",tone_warm:"Warm",tone_confident:"Confident",tone_casual:"Casual",tone_persuasive:"Persuasive",invalid_phone_number:"Invalid phone number format",phone_number_too_long:"Phone number is too long",unable_to_load_scripts:"Unable to load scripts",try_again_later:"Please try again later.",no_scripts_available:"No scripts available",no_scripts_available_description:'Click "Generate new script" to create a starter script for your call.',characters_over_limit:"{{count}} characters over limit",characters_count_with_limit:"{{count}} / {{limit}}",character_limit_exceeded:"Character limit exceeded",character_limit_exceeded_description:"Your script exceeds the {{limit}} character limit. Please reduce the length to continue.",use_system_name:"Use business name [{{companyName}}]",use_system_name_tooltip:"Using business name improves call quality"},VE={select_phone_numbers:"Add phone numbers to test",placeholder:"Enter your number",code:"Code"},$E={header:"Pick your challenge, I'll plot the route",description:"Choose a business problem and we will guide your campaign setup.",continue:"Continue"},BE={how_it_works:"How it works",benefits:"Benefits",dormant:{title:"Dormant user drop-off ð¤",subtitle:"Players leave early, reducing long-term value and engagement.",howItWorks:{1:"Tracks inactivity using CRM and game data",2:"Segments users by drop-off behavior",3:"Sends tailored reactivation messages",4:"Uses AI to test content and timing"},benefits:{1:"Reduces churn with early detection",2:"Re-engages users automatically",3:"Improves retention with relevance",4:"Saves time via full automation"}},missed:{title:"Missed in-game purchases ð",subtitle:"Lack of nudges leads to fewer completed in-game purchases.",howItWorks:{1:"Detects purchase intent but no action",2:"Sends real-time nudges via channels",3:"Adds urgency with limited-time offers",4:"Adjusts messages using behavior data"},benefits:{1:"Recovers lost purchase revenue",2:"Boosts conversions via nudging",3:"Personalizes in-game monetization",4:"Runs without manual effort"}},churn:{title:"Player churn from core loops ððª",subtitle:"Casual players churn before deeper engagement can be built.",howItWorks:{1:"Flags players showing churn signs",2:"Predicts churn with AI modeling",3:"Sends engagement-focused content",4:"Re-engages with feature reminders"},benefits:{1:"Lowers overall churn rates",2:"Keeps players in-game longer",3:"Drives feature and loop usage",4:"Optimizes retention campaigns"}},vipInactive:{title:"Inactive VIPs, lost revenue ðð¸",subtitle:"High spenders go inactive without effective re-engagement strategies.",howItWorks:{1:"Identifies VIPs with no recent activity",2:"Sends win-back offers and perks",3:"Uses past behavior for targeting",4:"Follows up across key channels"},benefits:{1:"Recovers top-spending users",2:"Improves VIP lifetime value",3:"Increases ROI on paid users",4:"Strengthens player loyalty"}},lowFeatureAdoption:{title:"Low feature adoption post-update ð",subtitle:"New features struggle due to poor onboarding and excitement.",howItWorks:{1:"Detects non-adopters post-launch",2:"Explains features with AI guides",3:"Sends walkthroughs and use cases",4:"Prompts usage with bonus offers"},benefits:{1:"Increases update engagement",2:"Validates feature value fast",3:"Builds habit through education",4:"Raises adoption automatically"}},weakSocial:{title:"Weak social engagement ð¤ð",subtitle:"Limited use of social features hinders viral game growth.",howItWorks:{1:"Finds users not in social events",2:"Sends motivational invites",3:"Highlights rankings and FOMO",4:"Adapts CTA by player history"},benefits:{1:"Drives social feature use",2:"Encourages peer engagement",3:"Boosts event participation",4:"Supports viral growth loops"}}},GE={title:"Add your crew of contacts ð",subtitle:"Captain Markopolo needs your crew list to set sailâadd who you want to reach, and I'll craft personalized messages for each one!",contacts:"Contacts",enter_up_to:"Enter up to",contact:"contacts",add_another_contact:"Add another contact",preview_generated_button:"Preview generated content",error_toast:"You must have at least 1 contact"},qE={title:"Campaign details",description:"Choose the language of your campaign and add any further details.",language_label:"Communication language",language_placeholder:"Select language",product_link:"Product link",product_placeholder:"Enter your product link",product_error:"Please enter a valid URL",prompt_placeholder:"Select a prompt",prompt_label:"Prompt",text_area_placeholder:"Or write your own prompt here...",max_digits_error_phone:"Maximum 20 digits allowed for phone number",max_digits_error_email:"Maximum 50 characters allowed for email address",duplicate_email_error:"Duplicate email address",duplicate_number_error:"Duplicate phone number",business_challenge_error:"Please select a business challenge"},WE={title:"Your messages are on deck ð¢",description:"Review and tweak the generated contentâCaptain Nabiq wants everything shipshape!",email_option:"Email",sms_option:"SMS",whatsapp_option:"WhatsApp",call_option:"Call",push_notification_option:"Push notification",messenger_option:"Messenger",table_header_title:"AI generated content",table_header_description:"Manage your team members and their account permissions here.",regenerate_modal_title:"Regenerate Content",regenerate_modal_subtitle:"Your feedback will help us generate better content.",regenerate_modal_placeholder:"What would you like to improve about the generated content?",regenerate_modal_label:"Feedback",confirm_and_regenerate_button:"Confirm and regenerate",regenerate_selected_button:" Regenerate Selected",launch_campaign_button:"Launch Campaign",email_content_table_header_subject:"Subject",email_content_table_header_preview:"Preview",email_content_table_header_actions:"Actions",sms_content_table_header_message:"Message",sms_content_table_header_actions:"Actions",whatsapp_content_table_header_message:"Message",whatsapp_content_table_header_actions:"Actions",feedback_button:"Feedback",success_toast:"Campaign launched successfully",feedback_label:"Feedback (Tell us how you'd like it improved - tone, style, detailsâ¦)",feedback_placeholder:"What would you like to improve about the generated content?",feedback_title:"Regenerate Content",cancel:"Cancel",confirm_and_regenerate:"Confirm and regenerate",feedback_subtitle:"Use your feedback to create a better version.",cohort_content:"Cohort based content"},zE={title:"Success! Mission begins.",description:"Your marketing co-pilot is online. Let's start building your audience.",continue:"Continue"},HE={back_to_campaigns:"Back to campaigns",analtyics_tab:"Analytics",leads_tab:"Leads",yes:"Yes",no:"No",no_data:"No data found",sequences_tab:"Sequences",created_on:"Created on {{date}}",leads_table:{search:"Search",contact:"Contact",email:"Email",status:"Status",data_source:"Data Source",phone_number:"Phone number",website:"Website",no_leads:"No leads found",muid:"MUID",initiated_at:"Initiated At",all_users:"All Users",identified:"Identified",self_identified:"Self-Identified",anonymous:"Anonymous",visitor_identified:"Visitor Identified"},analytics:{connect_marktag:"Connect marktag",email_sms_push:"Email, SMS, Push notifications",email:"Email",sms:"SMS",voice_ai:"Voice AI",whatsapp:"WhatsApp",messenger:"Messenger",channel_performance:"Channel Performance",step_analytics:"Step Analytics",activity:"Activity",contacted:"Contacted",sent:"Sent",delivered:"Delivered",connected:"Connected",opened_rate:"Opened rate",ctr:"CTR",engagement_rate:"Engagement rate",conversion_rate:"Conversion rate",revenue:"Revenue",call_initiated:"Call initiated",call_connected:"Call connected",avg_call_duration:"Avg. call duration",calls_booked:"Calls booked",positive_intent:"Positive intent",response_rate:"Response rate",drop_off_rate:"Drop off rate",channel:"Channel",total_sent:"Total Sent",open_rate:"Open Rate",step:"Step",opened:"Opened",replied:"Replied",clicked:"Clicked",conversions:"Conversions",step_channel:"Step/Channel",lead:"Lead",when:"When",search_by_email:"Search by email"},sequence_tab:{link_click:"Link click?",revenue:"Revenue",search:"Search audience",info_tooltip:"User who visited product, pricing pages multiple times but does not take any further action",badge_tooltip:"Powered by Truecaller for personalization!"}
232,no_analytics_data:"No analytics data found",enableAttributionTracking:"Enable attribution tracking to see conversions and revenue"},KE={description:"Track events and performance insights.",total_event:"Total events",active_users:"Active users",conversion_rate:"Conversion rate",page_view:"Page view",button_click:"Button click",purchase:"Purchase",form_submission:"Form submission",add_to_cart:"Add to cart",download:"Download",event_timeline:"Event timeline",et_desc:"Event distribution over time.",month:"Month",event_count:"Event count",connect_data_source:"Connect data source",no_event_timeline:"No event timeline",et_desc_2:"Setup data sources to see event timeline",event_summary:"Event summary",summary_desc:"Total count for each event type.",event:"Event",total_count:"Total count",cust_id:"Customer ID",platform:"Platform",timestamp:"Timestamp",recent_events:"Recent events",recent_events_count:"{{-value}} recent events",et_desc_3:"Latest tracked events with details.",id:"ID: {{-id}}",more:"more",view_events:"View all events",view_details_btn:"View details",modal_title:"View details",modal_description:"Detailed view of the event.",event_detail_event:"Event",event_detail_page:"Page",event_detail_page_url:"Page URL",event_detail_time:"Time",event_detail_source:"Source",event_detail_traffic_source:"Traffic Source",event_detail_referrer:"Referrer",event_detail_device:"Device",event_detail_screen_size:"Screen Size",event_detail_email:"Email",event_detail_phone:"Phone",event_detail_visitor_tag:"Visitor Tag",event_detail_column_label:"Label",event_detail_column_notes:"Notes",event_detail_metadata_title:"Custom Metadata",event_detail_metadata_column_key:"Property",event_detail_metadata_column_value:"Value",event_detail_metadata_see_content:"See Content",event_detail_metadata_hide_content:"Hide Content",copy_toast:"Copied to clipboard",all_events:"All events",all_events_desc:"All the tracked events with details.",revenue_attribution_tab:"Revenue Attribution",audience_analytics_tab:"Audience Analytics",revenue_attribution_description:"Track campaign performance and audience behavior insights",all_campaigns:"All Campaigns",total_revenue:"Total Revenue",avg_revenue_by_email:"Email Revenue Share",avg_revenue_by_sms:"SMS Revenue Share",avg_revenue_by_whatsapp:"WhatsApp Revenue Share",avg_revenue_by_voice:"Voice Revenue Share",avg_purchased_by_email:"Avg Purchase Value by Email",avg_purchased_by_sms:"Avg Purchase Value by SMS",avg_purchased_by_whatsapp:"Avg Purchase Value by WhatsApp",avg_purchased_by_voice:"Avg Purchase Value by Voice",channel_performance:"Channel Performance",channel_performance_desc:"Revenue percentage by channel",revenue_attribution:"Revenue Attribution",revenue_attribution_desc:"Share of total purchases by channel",channel_email:"Email",channel_sms:"SMS",channel_whatsapp:"WhatsApp",channel_voice:"Voice",channel_call:"Call",channel_push:"Push",channel_email_description:"Email marketing campaigns and newsletters",channel_sms_description:"Text message marketing and customer notifications",channel_whatsapp_description:"Conversational commerce and automated customer engagement via WhatsApp",channel_voice_description:"AI-powered voice calls for high-intent leads and cart recovery",total_revenue_tooltip:"Total revenue from all purchases in selected period",avg_revenue_by_email_tooltip:"Percentage of total revenue attributed to email channel",avg_revenue_by_sms_tooltip:"Percentage of total revenue attributed to SMS channel",avg_revenue_by_whatsapp_tooltip:"Percentage of total revenue attributed to WhatsApp channel",avg_revenue_by_voice_tooltip:"Percentage of total revenue attributed to voice channel",avg_purchased_by_email_tooltip:"Average purchase value attributed to each email sent",avg_purchased_by_sms_tooltip:"Average purchase value attributed to each SMS sent",avg_purchased_by_whatsapp_tooltip:"Average purchase value attributed to each WhatsApp message sent",avg_purchased_by_voice_tooltip:"Average purchase value attributed to each voice call made",legend_revenue:"Revenue",legend_purchase_count:"Purchases",legend_purchases:"purchases",legend_total_revenue:"Total revenue",conversions_tab:"Conversions",conversions_subtitle:"Revenue attribution purchase history",total_conversions:"Total Conversions",total_conversions_tooltip:"Total number of attributed purchases in the selected period",conversions_table_title:"Purchase history",conversions_table_desc:"Revenue attribution purchase history",conversions_campaign:"Campaign",conversions_channel:"Channel",conversions_name:"Name",conversions_email:"Email",conversions_phone:"Phone",conversions_purchase_time:"Purchase time",conversions_purchase_value:"Purchase value",conversions_purchase_currency:"Currency",purchase_details_title:"Purchase Details",total_amount:"Total Amount",browser:"Browser",purchased_from:"Purchased from",custom_data:"Custom Data",product_details_table:"Product Details",product_name:"Product Name",quantity:"Quantity",price:"Price",unit_price:"Unit Price",variant:"Variant",category:"Category",action:"Action",top_purchased_products_title:"Top purchased products",top_purchased_products_subt
232itle:"People are buying these products the most recently. Want to sell even more by targeting products related to these?",top_viewed_products_title:"Top Viewed Products",top_viewed_products_subtitle:"Lots of people are checking these out but haven't bought yet. A little nudge could help them convert.",trending_period_today:"today",trending_period_last_week:"this week",trending_period_last_month:"this month",trending_period_last_year:"this year",trending_period_selected_range:"in this selected range",product_name_col:"Name",product_id_col:"Product ID",views_col:"Views",purchases_col:"Purchases",unnamed_product:"Unnamed product"},YE={welcome_back:"Welcome back, {{-name}}!",email:"Email",push:"Push notifications",sms:"SMS",whatsapp:"WhatsApp",summary:"Summary",desc1:"How your business is performing at a glance.",desc2:"Performance across various channels.",updated:"Metrics saved successfully",minimum:"At least one metric must be selected",no_data:"No Channel Metrics to display.",total_sales:"Total sales",total_conv:"Total conversion",channel_metrics:"Channel metrics",month:"Month",connect_events:"Connect events",edit:"Edit metrics",edit_desc:"Select the metrics you want to view in dashboard.",facebook:"Facebook",voice_call:"Voice call",save:"Save changes",cancel:"Cancel",limit_toast:"You can select up to 5 metrics only."},XE={sent:"Sent",opened:"Opened",engagement:"Engagement",ctr:"CTR",delivered:"Delivered",id:"ID: {{-id}}"},QE={disconnect_shopify:"Disconnect via Shopify store admin settings",disconnect_shopify_instructions:"Shopify store admin -> Settings -> Apps -> Markopolo AI Sales Agent -> Uninstall app",data_sources_active:"Data sources active",no_datasources_found:"No Datasources found",disconnect_integration:"Disconnect integration",disconnect_integration_confirm:"Are you sure you want to disconnect this integration?",connected:"Connected",pending:"Pending",not_connected:"Not connected",disconnect:"Disconnect",datasources:"Datasources",primary_data_warehouse:"Primary data warehouse",marktag_client:"Marktag (Client-side)",marktag_server:"Marktag (Server-side)",waiting_for_events:"Waiting for events",error:"Error",name:"Name",status:"Status",last_sync:"Last sync",actions:"Actions",title:"Data room",description:"Unify all your data â from MarkTag, content, and integrations â in one place.",setup_data_container:"Setup data container",setup_data_container_description:"Manage your connected data sources from one place.",configure_knowledge_base:"Configure knowledge base",configure_knowledge_base_description:"Set up your knowledge base to enhance AI-powered insights and automation capabilities.",view:"View",configure:"Configure",configured:"Configured",add_data_source:"Add data source",setup:"Setup",step1_label:"Step 1",step1_description:"Select event templates",step2_label:"Step 2",step2_description:"Select how you want to set up",step3_label:"Step 3",step3_description:"Installation and view live data",serverSetup_title:"Server side setup",serverSetup_subtitle:"Accurately track user actionsâeven with privacy tools enabled.",industrySelection_title:"What industry are you in?",industrySelection_subtitle:"Select the industry you are in to get the best event templates.",industrySelection_selectLabel:"Industry",industrySelection_table_event:"Event",industrySelection_table_description:"Why it's important",industrySelection_buttons_goBack:"Go back",industrySelection_buttons_continue:"Continue","event.view_item":"View item","event.view_item.description":"Helps track product-level performance","event.view_cart":"View cart","event.view_cart.description":"Useful for cart abandonment tracking","event.begin_checkout":"Begin checkout","event.begin_checkout.description":"Tracks serious buyer activity","event.add_payment_info":"Add payment info","event.add_payment_info.description":"Critical for abandoned checkout recovery","event.purchase":"Purchase","event.purchase.description":"The main conversion event","event.sign_up":"Sign up","event.sign_up.description":"Tracks new user acquisition","event.complete_registration":"Complete registration","event.complete_registration.description":"Ensures full onboarding completion","event.start_trial":"Start trial","event.start_trial.description":"Marks entry into the key revenue funnel","event.add_payment_info_mobile":"Add payment info","event.add_payment_info_mobile.description":"Indicates strong conversion intent","event.purchase_mobile":"Purchase","event.purchase_mobile.description":"Used when someone upgrades or subscribes","event.view_item_gaming":"View item","event.view_item_gaming.description":"Recommend bundles, show FOMO offers","event.add_to_cart":"Add to cart","event.add_to_cart.description":"Trigger cart reminder, discount nudge","event.purchase_gaming":"Purchase","event.purchase_gaming.description":"Tailor future offers, trigger thank-you or loyalty messages","event.start_trial_gaming":"Start trial","event.start_trial_gaming.description":"Trigger engagement reminders during trial period","event.refund":"Refund","event.refund.description":"Detect churn risk, personalize win-back campaigns","event.view_item_others":"View item","event.view_item_others.description":"Recommend bundles, show FOMO offers","event.add_to_cart_others":"Add to cart","event.add_to_cart_others.description":"Trigger cart reminder, discount nudge","event.purchase_others":"Purchase","event.purchase_others.description":"Used when someone upgrades or subscribes","event.start_trial_subscribe":"Start trial/ Subscribe","event.start_trial_subscribe.description":"Marks entry into the key revenue funnel","event.refund_unsubscribe":"Refund/Unsubscribe","event.refund_unsubscribe.description":"Detect churn risk, personalize win-back campaigns",codebaseA
232ccess:{title:"Do you have access to your codebase?",description:"You can either set up yourself or our support team can help you.",option_yes:"Yes, I can add a code snippet to my product",option_no:"No, I will need help from markopolo.ai",button_back:"Go back",button_continue:"Continue",button_schedule:"Schedule a call"},industrySelection:{selectLabel:"Industry",option_ecommerce:"E-commerce",option_mobileapp:"Mobile app",option_gaming:"Gaming",option_others:"Others"},marktagInstallation_title:"Installation",marktagInstallation_description:"Installation takes 10 minutes on average.",marktagInstallation_viewDoc:"View doc",marktagInstallation_button_back:"Go back",marktagInstallation_button_finish:"Finish setup"},ZE={web:"Web",unity:"Unity",flutter:"Flutter",reactNative:"React Native",websiteStep1:"1. Install and init MarkTag Script to your web application",unityStep1:"1. Download the Unity SDK from here: MarkTag Unity SDK Asset",unityStep2:"2. Open your Unity project and go to Assets > Import Package > Custom Package",unityStep3:"3. Select the downloaded MarkTag Unity SDK Asset and import it into your project",unityStep4:"4. Once imported, you can access the MarkTag SDK plugin by importing it in your code:",flutterStep1:"1. Install the package â from your project root, run:",flutterStep2:"You can also add the dependency manually via https://pub.dev/packages/marktag.",flutterStep3:"2. Import the SDK in your application code:",flutterStep4:"3. Initialize the SDK in main() before runApp(). Ensure Flutter bindings are initialized first:",flutterInitServerDescription:"Use server-side mode when your app has its own tracking host. Pass your server id so events are attributed to your tenant.",flutterInitClientDescription:"Use client-side mode when many tenants share one tracking host (for example mtag.markopolo.ai). Pass your client id through the tagId parameter.",flutterInitServerDomainHint:"Set domain to the tag value from your MarkTag project settings (the host shown under Server side â View configuration).",flutterInitServerIdHint:"Set serverId to the value shown under Data room â Setup data container â Server side â View configuration. This attributes events to your tenant when multiple integrations share the same host.",flutterInitClientDomainHint:"Set domain to the shared tracking host (for example your white-label domain or mtag.markopolo.ai).",flutterInitClientIdHint:"Set clientId to the value shown under Data room â Setup data container â Client side â View configuration (or from the Partner API). The SDK passes it as tagId for backward compatibility, but it is sent to the server as clientId.",flutterInitLoggingHint:"Set enableLogging to false to disable debug logs in production.",reactNativeStep1:"1. From the root of your project, run the following command to install the sdk:",reactNativeStep2:"2. Once installed, you can access the MarkTag SDK plugin by importing it in your code:",reactNativeStep3:"3. Initialize the MarkTag SDK (add to App.js/App.tsx before any event logging):",defaultEvents:"Default events will be automatically tracked.",viewDoc:"View doc"},JE={disconnect:"Disconnect",title:"Data room",description:"Unify all your data â from MarkTag, content, and integrations in one place.",all:"All",website:"Website",crm:"CRM",e_commerce:"E-commerce",payment_gateway:"Payment Source",airwallex:"Airwallex",airwallex_description:"Sync payments and checkout events to trigger automated recovery, attribute revenue directly for ROI tracking",airwallex_connect_success:"Airwallex connected successfully!",airwallex_connect_error:"Failed to connect Airwallex. Please try again.",airwallex_description_details:"Connect Airwallex to catch customers who start checkout but don't complete payment. Track payment attempts, failures, and drop-offs to trigger targeted recovery campaigns at the right moment more accurately.",airwallex_setup_guide:"Setup guide",airwallex_email_required:"Email is required to connect Airwallex.",disconnect_error:"Failed to disconnect integration.",client_side_marktag:"Client side",client_side_marktag_description:"Easy
232setup, captures real-time user actions in browser instantly.",client_side_title_badge:"10 min setup â±ï¸",connect:"Connect",salesforce:"Salesforce",salesforce_description:"Leverage Salesforce as a data source for seamless, data-driven customer engagement.",hubspot:"HubSpot",hubspot_description:"Sync contacts, companies, and deals from HubSpot CRM for comprehensive customer insights.",pipedrive:"Pipedrive",pipedrive_description:"Import persons, organizations, deals, and activities from Pipedrive for enhanced sales tracking.",zoho:"Zoho CRM",zoho_description:"Connect leads, contacts, accounts, and deals from Zoho CRM to unify your customer data.",server_side_marktag:"Server side",server_side_marktag_description:"Capture backend events reliablyâwithout relying on the browser.",shopify:"Shopify",shopify_description:"Build and grow your online store effortlessly with Shopify's all-in-one e-commerce platform designed for scalable success.",shopify_disconnect_title:"Disconnect",shopify_disconnect_instructions:"Shopify store admin â Settings â Apps â Markopolo AI Sales Agent â Uninstall app",campaign_description:"Access users from your marketing campaigns to create targeted audience segments.",csv_description:"Import and manage users from CSV files for flexible audience creation.",marktag_description:"Track user behavior and events from your website or app with Marktag for real-time audience data.",wordpress:"WordPress",wordpress_description:"Connect your WordPress site to track content and user behavior",woocommerce:"WooCommerce",woocommerce_description:"Sync orders and customers from your WooCommerce store for audience data.",odoo:"Odoo",odoo_description:"Sync contacts, orders, and customer activity from Odoo for audience data.",connect_odoo:"Connect Odoo",enter_odoo_details:"Enter your Odoo account details to connect your store data.",odoo_website_url:"Website URL",enter_odoo_website_url:"https://mycompany.odoo.com",odoo_database_name:"Database name",enter_odoo_database_name:"mycompany_prod",odoo_login:"Login (username or email)",enter_odoo_login:"admin or [email protected]",odoo_api_key:"API key",enter_odoo_api_key:"1234567890abcdef1234567890abcdef",odoo_website_url_required:"Website URL is required.",odoo_website_url_invalid:"Please enter a valid website URL (e.g. https://mystore.odoo.com).",odoo_database_name_required:"Database name is required.",odoo_login_required:"Login is required.",odoo_api_key_required:"API key is required.",update_credentials:"Update credentials",woocommerce_setup:{woocommerce_api_setup_guide:"WooCommerce API Setup Guide",woocommerce_api_setup_description:"Follow these steps to generate your WooCommerce API keys and connect your store",setup_guide_btn:"API Key Setup Guide",login_admin_panel:"Log in to your WordPress/WooCommerce admin panel.",navigate_woocommerce_settings:"On the left sidebar, hover over WooCommerce and click Settings.",click_advanced_tab:"Click on the Advanced tab at the top of the page.",click_rest_api:"In the secondary navigation below, click REST API.",click_add_key_button:"Click the Add Key button (located next to the REST API title).",fill_key_details:"Fill in the key details:",description_field:'Description: Enter a name for this key (e.g., "My Integration").',user_field:"User: Select a user from the dropdown.",permissions_field:"Permissions: Select Read",click_generate_api_key:"Click the Generate API Key button.",copy_consumer_keys:"Copy your Consumer Key and Consumer Secret (shown only once!).",paste_credentials_here:"Paste your Consumer Key, Consumer Secret, and Store URL (without https://).",watch_walkthrough:"Watch the walkthrough"},woocommerce_plugin:{plugin_installation_guide:"WooCommerce Plugin Installation",plugin_installation_description:"Follow these steps to install and configure the Marktag plugin for seamless event tracking",login_admin_panel:"Log in to your WordPress/WooCommerce admin dashboard.",navigate_plugins:"On the left panel, hover over Plugins and click Installed Plugins.",click_add_new:"Click the Add New button (next to Plugins title).",click_upload_plugin:"Click Upload Plugin (next to Add Plugins title).",select_zip_file:"Select and upload the ZIP file available for download below.",click_install_now:"Click Install Now.",activate_plugin:"Click Activate Plugin.",configure_tag_id:"Go to the plugin settings and paste the Tag ID (copy from below) in the Tag ID field.",save_settings:"Click Save Settings. That's it! Your plugin is installed and configured.",download_plugin:"Download Marktag Plugin for WooCommerce",watch_walkthrough:"Watch the walkthrough"},setup_plugin:"Marktag Plugin Setup Guide",magento:"Magento",magento_description:"Integrate your Magento store for e-commerce tracking",ga4:"Google Analytics 4",ga4_description:"Import events and user data from GA4",segment:"Segment",segment_description:"Unify data from all your customer data platforms",posthog:"PostHog",posthog_description:"Connect PostHog for product analytics",middleware_connect_success:"Successfully connected {{count}} data source(s)!",middleware_connect_error:"Failed to connect data sources. Please try again.",error_token_expired:"Your session expired. Please try connecting again.",error_invalid_token:"Authentication failed. Please log in and try again.",error_parse_failed:"Failed to process connection data. Please try again.",error_network:"Network error occurred. Please check your connection.",error_unknown:"An unexpected error occurred. Please try again.",connected:"Connected",connections_count:"{{count}} connected",domain_registered:"Domain registered",pending_verification:"Pending Verification",not_connected:"Not Connected",recommended:"Recommended",capture_backend_events:"Capture backend events reliablyâwithout relying on the browser.",accurate_and_secure:"Accurate and secure",better_data_integrity:"Better data integrity",custom_logic:"Custom logic",view_configuration:"View configuration",resume_setup:"Resume setup",verify_tag:"Verify tag",add_domain:"Add domain",dns_record_instruction:"The DNS record needs to be set in your domain registrar (Route 53, GoDaddy, NameCheap etc.) for us to verify the tag and proceed further.",view_setup_guide:"View setup guide",continue:"Continue",domain_name:"Domain name",enter_domain_without_https_www:"Please enter a domain without https:// or www.",enter_valid_domain_name:"Please enter a valid domain name.",dns_records:"DNS records",add_dns_records_instruction:"Add the following DNS records to your domain's DNS settings.",name:"Name",copied_to_clipboard:"Copied to clipboard",ttl:"TTL",records_verified:"Records verified",verify_records:"Verify records",pen
232ding_dns_resolvers:"Still propagating on these DNS resolvers",resolver_status:"Resolver status",resolver_matched:"Verified",resolver_not_found:"Not found",resolver_wrong_value:"Wrong target",server_side_setup_guide:"Server side setup guide",server_side_step_by_step:"Step by step installation guide for server side.",copy_dns_name_value:"Copy the DNS name and value provided.",login_domain_registrar:"Log in to your domain registrar (e.g., GoDaddy, Namecheap, AWS Route 53).",go_to_dns_management:"Go to the DNS management page. For Route 53, click on 'Hosted zones' from the dashboard.",click_domain_name:"Click on your domain name/link.",create_record_page:"On the Records page, click 'Create record.'",paste_dns_name:"Paste the copied DNS name into the 'Record name' field. If using Route 53, remove the domain part since it's added automatically",set_record_type:"Set the record type to the one specified (e.g., TXT).",paste_value_field:"Paste the copied value into the 'Value' field and then click on 'Create record.'",return_previous_verify:"Return to the previous screen and click 'Verify tag.'",understood_go_back:"Understood, go back",track_user_actions:"Track user actions accuratelyâeven when privacy tools are active.",quick_setup:"Quick setup",real_time_data:"Real-time data",ab_testing_support:"A/B testing support",client_side_setup:"Client side setup",client_side_description:"Easy setup, captures real-time user actions in browser instantly.",installation:"Installation",installation_description:"Installation takes only 10 minutes on average.",step1_code_snippet:"1. The code snippet needs to be copied and added to your website header for Markopolo to start tracking events.",go_back:"Go back",finish_setup:"Finish Setup",client_side_setup_guide:"Client side setup guide",client_side_step_by_step:"Step by step installation guide for client side.",step1_copy_code:"1. Copy the code snippet.",step2_go_website_code:"2. Go to your website code from Webflow, Wordpress, React etc.",step3_paste_head:"3. Find the <head> tag and paste the code snippet between the <head> and </head> tag.",waiting_for_data:"Waiting for data",events_will_show_here:"Events will show up here once recorded.",event:"Event",muid:"MUID",timestamp:"Timestamp",realtime_instructions:"Once you have added the snippet, trigger events within your product by clicking on buttons, completing a form or navigating to various pages. Then return here to verify events are received in realtime.",add_more:"Add more",connecting:"Connecting",enter_shop_details:"Enter shop details",shop_name:"Shop name",shop_url:"Shop URL",enter_shop_url:"Please enter a shop URL.",shop_url_desc:"Enter shop URL without https://",shop_url_req:"Shop URL is required",shop_url_invalid:"Please enter a valid shop URL without https://",shop_url_invalid_domain:"Please enter a valid domain with an extension (e.g. .com)",customer_key:"Consumer key",customer_secret:"Consumer secret",shop_name_req:"Shop name is required",customer_key_req:"Consumer key is required",customer_secret_req:"Consumer secret is required",enter_shop_name:"Please enter a shop name.",enter_customer_key:"Please enter a consumer key.",enter_customer_secret:"Please enter a consumer secret.",customer_key_invalid:"Consumer key must start with ck_",customer_secret_invalid:"Consumer secret must start with cs_",shop_name_desc:"Enter shop name without https://",customer_key_desc:"Enter consumer key starting with ck_",customer_secret_desc:"Enter consumer secret starting with cs_",shop_name_invalid:"Please enter a valid shop name without https://",session_replays:{title:"Advanced Pixel - Shopify Integration Guide",list1:"Log in to your Shopify admin dashboard.",list2:"In the left side panel, navigate to Online Store.",list3:"Click on Themes.",list4:"Click on Customize (or Edit theme)",list5:"In the left section of the theme editor, locate and click on App embeds.",list6:"Find Markopolo Advanced Pixel in the list of apps.",list7:"Enable the toggle switch next to Markopolo Advanced Pixel.",list8:"Click on the app name to expand the accordion section below it.",list9:"Enter your Tag ID in the input field (you can copy this ID from below).",list10:"Save your changes.",your_tag_id:"Your Tag ID"},setup_session:"Advanced Pixel Setup Guide",airwallex_installation_guide:{title:"Pascal tracking snippet â installation guide",description_short:"Add the Pascal tracker to your checkout or payment pages to track payment attempts and drop-offs for recovery campaigns.",install_steps:"Installation instructions",step_1:"Copy the Pascal tracking snippet below",step_2:"Paste it into your checkout or payment page <head> section",step_3:"Deploy your changes so the tracker loads on the page",your_snippet:"Your tracking snippet",loading:"Loadingâ¦",error_title:"Failed to load tracking snippet",error_fallback:"Something went wrong. Please try again later."}},eI={title:"Memory",description:"Manage the knowledge and products your AI agents use to personalize every interaction.",knowledgebase_tab:"Knowledgebase",file_upload_modal_title:"File upload",file_upload_modal_description:"Upload PDF, Word, and Excel files to add to your knowledgebase.",confirm:"Confirm",cancel:"Cancel",file_type_info:"Supports CSV, PDF, Word, and Excel files",content_library:"Content library",content_library_description:"Manage your uploaded and imported content.",files_banner_title:"Files list",f
232iles_banner_description:"Manage your uploaded and imported files.",products_banner_title:"Product list",products_banner_description:"Manage your uploaded and imported products.",upload_product_button:"+ Upload product",search_files:"Search files...",search_products:"Search products...",no_search_results:"No files found",try_different_search:"Try searching with different keywords",delete_knowledge_base_modal_title:"Are you sure you want to delete this ({{-name}}) knowledge base?",upload_products_from_existing_sources:"Upload products from existing sources",import_products_to_feed_campaigns:"Import products to feed campaigns",delete_all_products:"Delete All Products?",delete_all_products_confirmation:"Are you sure you want to delete all products from the knowledge base? This action cannot be undone."},tI={review_title:"Review products before upload",review_description:"Fix invalid URLs and required fields. Each row needs a unique Product ID, product name, a valid http(s) product URL, price, currency, description, and a valid http(s) image URL.",dropzone_hint:"Required per row: unique Product ID, product name, valid product URL (https recommended), price, currency, description, and image URL (must be a valid http(s) URL).",errors_summary:"{{issues}} issue(s) in {{rows}} row(s). Fix highlighted cells before uploading.",upload_n_products:"Upload {{count}} products",success:"Products uploaded successfully. Some items may still be auto-enriched within 24 hours.",columns:{Product_ID:"Product ID",Product_Name:"Product name",Product_URL:"Product URL",Description:"Description",Image_URL:"Image URL",Price:"Price",Currency:"Currency"},errors:{no_valid_rows:"No valid product rows found. Each row needs at least a Product ID, name, URL, or other filled cells.",product_id_required:"Product ID is required",product_name_required:"Product name is required",product_url_required:"Product URL is required",product_url_invalid:"Enter a valid http(s) product URL",image_url_required:"Image URL is required",image_url_invalid:"Enter a valid http(s) image URL",description_required:"Description is required",price_required:"Price is required",price_invalid:"Price must be a valid non-negative number",currency_required:"Currency is required",duplicate_product_id_in_file:"Duplicate Product ID in this file",product_id_exists:"This Product ID already exists in your knowledge base"}},nI={invalid_product_link:"Please enter a valid product link or select at least one product",select_audience:"Please select at least one audience",audience_cap_exceeded:"Selected audiences exceed the 50K per-campaign limit. Deselect some audiences or create a separate campaign.",select_trigger_event:"Please select at least one trigger event",select_objective:"Please select a campaign objective",select_channel:"Please select at least one channel",select_valid_platform:"Please select a valid platform for all selected channels",invalid_channel_type:"Invalid channel type: {{channel}}. Please use standard channel names.",push_not_available:"Push notifications are not available for audience-based campaigns",configure_voice_settings:"Please configure voice settings for AI call",generate_workflow:"Please generate a workflow",knowledge_base_changed:"Knowledge base selection has changed. Please regenerate the workflow to apply the new context.",generate_content:"Please generate content for your workflow steps",missing_content:"Content is missing for {{count}} workflow step(s). Please generate content for all steps.",custom_discount_type_required:"Please choose a discount type or skip this step.",custom_discount_value_required:"Please enter a discount value greater than 0 or skip this step.",bundle_selection_required:"Please select a bundle package or skip this step."},oI={header:{step1:"Target audience ð¥",step2:"Campaign objective ð¯",step3:"Channels and workflow ð¢â¨",step4:"Review content ð"},step_label:{step1:"Audience",step2:"Objective",step3:"Channels & Flow",step4:"Content"},description:{step1:"Define your audience",step2:"Choose your campaign objective",step3:"Choose channels and generate workflow",step4:"Review and edit content per channel"},page_info:{step1:{title:"Campaign details",description:"Define your campaign and audience"},step2:{title:"Campaign objective",description:"Choose your campaign objective"},step3:{title:"Channels and workflow",description:"Choose channels and generate workflow"},step4:{title:"Review content",description:"Review and edit content per channel"}},optional_step:"OPTIONAL STEP"},aI={page_info:{configuration:{title:"Campaign configuration",description:"Set up your agent details, triggers, and objectives"},channels:{title:"Select channels",description:"Choose the channels and providers for your agent"},content:{title:"Review content",description:"Review and refine the generated
232workflow content"}}},rI={trigger:{title:"Campaign Trigger",subtitle:"Choose how this campaign will be triggered",audience_based:"Audience Based",audience_description:"Target specific customer segments based on their properties",event_based:"Event Based",event_description:"Trigger campaigns when specific events occur"},events:{select:"Select Trigger Events",selected:"event(s) selected",cart_created:"Cart Created",cart_abandoned:"Cart Abandoned",product_viewed:"Product Viewed",order_placed:"Order Placed",customer_registered:"Customer Registered"},successCriteria:{title:"Set a success criteria",description:"Users who meet success criteria early won't receive further content",choose:"Choose",new_subscription:"Bought a New Subscription",new_subscription_hint:"Campaign stops when a user starts a recurring subscription plan",new_purchase:"Made a New Purchase",new_purchase_hint:"Campaign stops when a user completes any order"}},sI={objective:"Objective",success_criteria_title:"Success Criteria"},iI={savings:"You save",original_price:"Original Price",bundle_price:"Bundle Price",price_preview:"Price Preview",selected_products:"Selected Products",create_title:"Create Bundle Package",edit_title:"Edit Bundle Package",subtitle:"Create product bundles with attractive discounts",name:"Bundle Name",name_placeholder:"e.g., Summer Sale Bundle",description:"Description",description_placeholder:"Describe this bundle offer",products:"Select Products (Shopify & Knowledge Base)",products_placeholder:"Choose products for this bundle",products_description:"Select at least 2 products to create a bundle",discount_type:"Discount Type",discount_percentage:"Discount Percentage",discount_amount:"Discount Amount",min_quantity:"Minimum Quantity",max_quantity:"Maximum Quantity (Optional)",type:{percentage:"Percentage Discount",fixed:"Fixed Amount",tiered:"Tiered Pricing",buy_x_get_y:"Buy X Get Y"},buy_quantity:"Buy Quantity",get_quantity:"Get Quantity",tier:{add:"Add Tier",quantity:"Quantity",discount:"Discount"},update_success:"Bundle package updated successfully!",create_success:"Bundle package created successfully!",updated:"Updated",created:"Created",updating:"Updating...",creating:"Creating...",error:{missing_company_id:"Unable to save bundle: Company ID is missing. Please try refreshing the page."}},cI={name_required:"Bundle name is required",name_min:"Bundle name must be at least 3 characters long",name_max:"Bundle name cannot exceed 100 characters",products_min:"Please select at least 2 products for this bundle",products_max:"Bundle cannot contain more than 20 products",products_not_exist:"Some selected products no longer exist. Please refresh and reselect products.",products_invalid_urls:"Please ensure all product URLs are valid",bundle_type_required:"Discount type is required",bundle_discount_required:"Discount value is required",discount_percentage_range:"Discount percentage must be between 0 and 100",discount_percentage_gt0:"Discount percentage must be greater than 0",discount_amount_gt0:"Discount amount must be greater than 0",discount_amount_max:"Discount amount cannot exceed $10,000",fixed_discount_too_large:"Fixed discount cannot equal or exceed total product value",min_quantity_min:"Minimum quantity must be at least 1",min_quantity_max:"Minimum quantity cannot exceed 1,000",max_quantity_gt_min:"Maximum quantity should be larger than the minimum quantity.",max_quantity_max:"Maximum quantity cannot exceed 10,000",company_required:"Company information is required to create bundles"},lI={delete_bundle_description:"This action cannot be undone. The bundle package will be permanently removed.",configure_custom_discount:"Configure Custom Discount",manage_bundles:"Manage Bundle Packages",title:"Configure Discounts & Offers",description:"Set up discounts and special offers for your campaign. You can skip this step if you don't want to include any discounts.",skip:"Skip This Step",configure:"Configure Discounts",skipped_title:"Discounts Skipped",skipped_description:"Your campaign will proceed without any discount configuration. You can always add discounts later from the campaign settings.",use_product_discounts:"Fetch discounts from selected products",use_product_discounts_desc:"Automatically apply existing discounts from your product catalog",custom_offers:"Custom Discount/Offers",custom_offers_desc:"Create a custom discount for this campaign",bundle_packages:"Bundle Packages",bundle_packages_desc:"Create product bundles with special pricing",discount_type:"Discount Type",percentage:"Percentage",fixed_amount:"Fixed Amount",free_shipping:"Free Shipping",percentage_value:"Percentage (%)",amount:"Amount ($)",discount_code:"Discount Code (Optional)",discount_code_placeholder:"e.g., SAVE20",no_bundles:"No bundle packages created yet",create_bundle:"Create New Bun
232dle",delete_bundle_confirm:"Are you sure you want to delete this bundle?",summary:"Discount Summary",product_discounts_enabled:"Product catalog discounts enabled",custom_offer_enabled:"Custom offer:",bundles_selected:"{count} bundle package(s) selected",no_bundle_selected:"No bundle package selected"},dI={header_title:"Markopolo | Audience Studio",page_title:"Welcome to audience studio! â¨",page_description:"Create and manage audience segments with AI assistance.",create_audience:"Create audiences",saved_audience:"Saved audiences",new_chat:"New chat",thinking:"Thinking...",start_template:"Or, start with a template",choose_template:"Choose template",more_templates:"More templates",more_templates_description:"We have 10+ more ready made audience templates ready tailored made for every type of business.",input_placeholder:"Describe your target audience...Keep in mind Audience Studio works effectively when you have enough data in the connected data streams to analyse and make customer segments for you!",no_audience_found:"No audience found!",campaign:"Campaign",create_audience_description:"Create tailor made audience from your data sources.",select_sources:"Select sources",audience_list:"Audience list",curate_audience_description:"Curate your audience from connected data streams.",curate_audience:"Curate audience",create_and_save_audience:"Create and save audience",create_campaign:"Create campaign",instructions:"Instructions",how_to_write_instructions:"How to write instructions?",instructions_placeholder:"Users who visited multiple times",instructions_guidance:{title:"How to write instructions?",bad:"Bad",good:"Good",delivery_channel:{title:"Always specify the delivery channel requirement",description:"Every prompt must include a condition that ensures the lead is reachable via your campaign channel. Never assume all leads have a valid contact method.",bad:"Users who purchased in the last 30 days from Shopify",good:"Users who purchased in the last 30 days from Shopify and has a valid email address"},exclude_ineligible:{title:"Exclude ineligible leads explicitly",description:"If you want expired subscribers, say so by starting from the exclusion â not the inclusion. This avoids ambiguity and produces a tighter list.",bad:"Expired subscribers from all regions, all time",good:"Expired subscribers from all regions and all time, excluding current active subscribers, who have a valid FCM token"},time_range_region:{title:"Be explicit about time range and region",description:"Vague scopes generate oversized audiences. Always define the time window and geography you intend to target.",bad:"Inactive users with no recent purchase",good:"Users in BD and IN who have not made a purchase in the last 90 days and have a valid email address"},combine_conditions:{title:"Combine conditions in a single prompt",description:"Stack all your filters â audience, exclusion, and channel requirement â into one prompt. Splitting them across multiple prompts can lead to mismatched results.",bad:"Users who haven't opened the app in 60 days",good:"Users who haven't opened the app in the last 60 days, are not currently subscribed, and have a valid FCM token for push notification"}},audience_studio_effectiveness:"Audience Studio works effectively when you have enough data in the connected data streams to analyse",audiences_curated:"audiences curated",connect_datasource:"Connect Data Source",no_datasource_connected:"You don't have any data source connected",connect_datasource_to_create_audience:"To create audience you first need to connect at least one data source.",connect_a_data_source:"Connect a data source",unknown_source_description:"User data from this source.",marktag_description:"Track user behavior and events from your website or app with Marktag for real-time audience data.",woocommerce_description:"Sync orders and customers from your WooCommerce store for audience data."},uI={high_engagement_users:{title:"High Engagement Users",description:"Users recently active or with high engagement scores. Good for loyalty or engagement-based offers."},recent_product_viewers:{title:"Recent Product Viewers",description:"Users who've browsed products recently. Ideal for retargeting."},churned_customers_30_days:{title:"Churned Customers (30 Days)",description:"Made a purchase recently but went inactive. Useful for upsell/reminder."},frequent_shoppers:{title:"Frequent Shoppers",description:"Users with high purchase frequency. Fits exclusive deals or VIP tiers."},high_ltv_audience:{title:"High LTV Audience",description:"Users with high lifetime value and frequent purchases. Prioritize for long-term retention."}
232,propensity_champions:{title:"Propensity Champions",description:"High propensity to buy but haven't converted. Target with strong CTAs or discounts."},cross_channel_engagers:{title:"Cross-Channel Engagers",description:"Engaged across multiple platforms or device types. Best for omnichannel campaigns."},seasonal_shoppers:{title:"Seasonal Shoppers",description:"Users who buy in specific seasons. Run targeted promotions based on past trends."},value_optimizers:{title:"Value Optimizers",description:"Low spenders but high probability to convert. Great for targeted offers."}},pI={title:"Explore plans",title_shopify:"Explore plans Shopify",table_banner:"Compare plan features",feature:"Feature",fractal:"Fractal",spiral:"Sprial",fibonacci:"Fibonacci",dandelion:"Dandelion",butterfly:"Butterfly",spiderweb:"Spiderweb",neuron:"Neuron",launchpad:"Launchpad",starter:"Starter",growth:"Growth",professional:"Professional",scale:"Scale",basic:"Basic",pro:"Pro",business:"Business",enterprise:"Enterprise",event_tracking:"Event tracking (core events)",custom_event:"Custom event setup",shopify_integration:"Shopify integration",email_push_support:"Email/Push notification campaign support",sms_support:"SMS support",whatsapp_support:"WhatsApp API support",api_access:"API Access",support:"Support",brand_removal:"Branding Removal",custom_success_pricing:"Custom (success based pricing)",insights:"Insights logs",optional:"Optional","pay-as-you-go":"Pay-as-you-go",included:"Included",self:"Self",email:"Email",dedicated:"Dedicated",priority:"Priority",subscribe:"Subscribe",current_plan:"Current plan",get_started:"Get started",upgrade:"Upgrade",popular:"Popular",talk_to_sales:"Talk to sales",price:"${{-price}}/{{-time}}",custom:"Request for quote",month:"month",year:"year",whats_included:"What's included (per month):","30_free_days":"30-day free trial | ",starter_data:{emails:"5000 Emails",sms:"50 Sms",events:"1,000,000 Marktag Events"},basic_data:{emails:"25k Emails",sms:"1k Sms",voice:"100 Voice"},growth_data:{emails:"50k Emails",sms:"2.5k Sms",voice:"250 Voice"},growth_accelerator_data:{emails:"10,000 Autosend Emails",sms:"100 MarkSMS",events:"5,000,000 MarkTag Events"},growth_optimizer_data:{emails:"5,000 Autosend Emails",sms:"100 MarkSMS",events:"3,000,000 MarkTag Events"},pro_data:{emails:"100k Emails",sms:"5k Sms",voice:"500 Voice"},pro_accelerator_data:{emails:"25,000 Autosend Emails",sms:"500 MarkSMS",events:"10,000,000 MarkTag Events"},pro_optimizer_data:{emails:"20,000 Autosend Emails",sms:"500 MarkSMS",events:"5,000,000 MarkTag Events"},business_data:{emails:"250k Emails",sms:"10k Sms",voice:"1k Voice"},scale_data:{emails:"500k Emails",sms:"25k Sms",voice:"2.5k Voice"},enterprise_data:{emails:"Custom channel usage limits",sms:"Flexible pricing at scale",voice:"Priority enterprise support"},billed_anually:"Billed annually - ",per_year:"per year",save_per:"(save ~{{-percent}}%)",addons:{title:"Add-on",starter_basic:"Starter/Basic",growth:"Growth",pro_business:"Pro/Business",scale:"Scale",enterprise:"Enterprise",emails:"Email (per 1,000 emails)",sms:"SMS (per 1,000 messages)",voice:"Voice (per 100 minutes)"},addon_purchase:{success:"Addon purchased successfully!",error:"Something went wrong while purchasing addon. Please try again or contact support.",failed:"Failed to purchase addon. Please try again."},addon_card:{title:"Add-on",type:"Add-on type",usage:"Usage",action:"Action",email:"Email",sms:"SMS",voice:"Voice",buy_more:"Buy more",buy_title:"Purchase {{type}} add-on",quantity:"Quantity",quantity_placeholder:"Select quantity",price:"Price ({{per_unit}})",subtotal:"Subtotal",buy_addon:"Buy add-on",per_email:"per 1,000 emails",per_sms:"per 1,000 messages",per_voice:"per 100 minutes",free_tooltip:"Purchase a plan to buy add-ons",legacy_tooltip:"You need to subscribe to a new plan to buy add-ons"},status:{active:"Active",payment_pending:"Payment Pending",inactive:"Inactive",failed:"Failed",cancelled:"Cancelled"},monthly:"Monthly",annual:"Annual",discount_note:"(save 20%)",shopify_plans:"Shopify Plans",markopolo_plans:"Markopolo Plans",personal:"Personal",team_business:"Team & Business",benefits:{fractal:"1,000 Visitors engaged /Month",spiral:"2,500 Visitors engaged /Month",fibonacci:"5,000 Visitors engaged /Month",dandelion:"25,000 Visitors engaged /Month",butterfly:"50,000 Visitors engaged /Month",spiderweb:"75,000 Visitors engaged /Month",neuron:"Unlimited Visitors"},byoc:"BYOC*",byoc_desc:"*BYOC = Bring Your Own Channel. Connect your existing email, SMS, or WhatsApp provider for unlimited use.",usage_limits:"USAGE LIMITS",messaging:"MESSAGING",enterprise_limits:"ENTERPRISE",unlimited:"Unlimited",sso_saml:"SSO/SAML",soc_compliance:"SOC 2 Compliance",custom_integration:"Custom Integration",annual_price:"Annual Price",vistors_month:"Visitors engaged/month",ai_voice_min:"AI Voice Minutes/month",product_prom:"Product Promotion",email_sends:"Email sends",
232sms_sends:"SMS messages",wa_sends:"WhatsApp messages",dandelion_data:{annual:"$2,870",vm:"25,000",ai_voice:"700",pp:"30"},butterfly_data:{annual:"$5,750",vm:"50,000",ai_voice:"2,000",pp:"100"},spiderweb_data:{annual:"$9,588",vm:"75,000",ai_voice:"10,000",pp:"300"},fractal_data:{annual:"$470",vm:"1,000",ai_voice:"100",pp:"5"},spiral_data:{annual:"$950",vm:"2,500",ai_voice:"250",pp:"10"},fibonacci_data:{annual:"$1,526",vm:"5,000",ai_voice:"350",pp:"15"},extra_charges:{custom:"Custom additional lead charge",per_1000_15:"$15 per additional 1,000 leads"},free_trial_day:"30-days free trial included",starter_description:"Track campaign performance and audience behavior insights.",basic_description:"Reliable email, SMS, and voice usage for small but growing businesses.",growth_description:"Higher limits for growing teams running multi-channel marketing campaigns.",pro_description:"Maximum capacity for high-volume teams needing advanced analytics and automation.",business_description:"Robust multichannel power designed for mature, data-driven businesses.",scale_description:"High-volume consumption with flexibility for rapidly scaling operations.",enterprise_description:"Custom usage limits, priority support, and tailored integrations.",woocommerce_integration_desc:"WooCommerce integration",shopify_integration_desc:"Shopify integration",ai_voice_minutes_desc:"AI Voice Minutes/Month",active_profiles_desc:"Active profiles (Website visitors)/Month",event_cap_desc:"Event cap",email_push_campaign_desc:"Email/Push notification campaign support",sms_support_desc:"SMS support",whatsapp_api_support_desc:"WhatsApp API support",recovery_agent_desc:"Recovery Agent (Cart/Browse)",crm_integrations_desc:"CRM Integrations",custom_integrations_desc:"Custom Integrations",mtag_events:"MarkTag Events",emails_month:"Emails sent/month",sms_month:"SMS messages sent/month",customize_default_branding:"Customize your default branding in emails",create_email_templates:"Create your own email templates",remove_branding:"Remove Markopolo branding",email_branding:"Email branding",analytics:"Analytics",audience_and_conversions:"Audience Analytics + Conversions",campaigns:"Campaigns",recovery_campaigns:"Use our preset Browse, Cart and Checkout recovery campaigns",knowledge_base_import:"Import Knowledge Base content to personalize messaging",ai_generated_campaigns:"Create custom AI-generated campaigns",support_tier:"Support Tier",community_support:"Online communities + Email support",priority_support:"Customer Success Manager + Markopolo Client Lounge",free:"Free"},mI={success:{saved:"Saved successfully!",updated:"Updated successfully!",deleted:"Deleted successfully!",created:"Created successfully!",connected:"Connected successfully!",applied:"Applied successfully!",coupon_applied:"Discount coupon applied successfully!",payment_added:"Payment method added successfully!",subscription_started:"Subscription started successfully!",plan_activated:"Plan activated successfully!",plan_changed:"Plan changed successfully!",campaign_created:"Campaign created successfully!",campaign_updated:"Campaign updated successfully!",campaign_launched:"Campaign successfully launched!",content_saved:"Content saved successfully!",created_can_generate:"Campaign created successfully! You can now generate content and launch.",product_analyzed:"Product analyzed successfully!",voice_config_saved:"Voice call configuration saved.",shopify_connected:"Shopify connected successfully",woocommerce_connected:"WooCommerce connected",verification_code_sent:"Verification code sent to your email",password_reset:"Password reset successfully",email_verified:"Email verified successfully!",google_signup:"Successfully signed up with Google!",otp_sent:"OTP has been sent to your email!",payment_approved:"Payment approved successfully! Plan Activated",template_saved:"Template saved successfully!",template_applied:"Template applied successfully!",template_deleted:"Template deleted successfully!",email_template_saved:"Email template saved successfully!",email_template_deleted:"Email template deleted successfully!",test_email_sent:"Test email sent successfully",product_updated:"Product updated successfully!",contacts_uploaded:"Audience uploaded successfully",shopify_billing_migration:"Your billing is being migrated to Shopify from Markopolo!",all_channels_content_generated:"Generated content for all channels successfully.",audience_saved:"Audience saved successfully",logged_out_all_devices:"Logged out of all devices successfully",logo_uploaded:"Logo uploaded successfully!",logo_removed:"Logo removed successfully!"},error:{failed:"Operation failed",failed_to_save:"Failed to save",failed_to_update:"Failed to update",failed_to_delete:"Failed to delete",failed_to_connect:"Failed to connect",failed_to_load:"Failed to load users",something_wrong:"Something went wrong!",try_again:"Please try again",coupon_failed:"Failed to apply coupon code!",coupon_error:"Something went wrong while applying coupon!",payment_failed:"Failed to add payment method!",plan_activation_failed:"Failed to activate plan!",plan_change_failed:"Failed to change plan!",update_mode_failed:"Failed to update content mode",campaign_not_found:"Campaign not found. Please check the campaign ID and try again.",generation_failed:"Failed to generate content. Please try again.",regeneration_failed:"Failed to regenerate content",fill_content_first:"Please fill in the content before saving",node_data_missing:"Node data not found. Please regenerate all content first.",missing_data:"Missing campaign data. Please start over.",save_content_first:"Please save all c
232ontent before launching the campaign.",campaign_id_not_found:"Campaign ID not found. Please start over.",delete_failed:"Failed to delete campaign!",product_url_required:"Please enter a product URL",invalid_url:"Please enter a valid URL",connect_failed:"Failed to connect!",no_subscription:"No active subscription found. Please renew to continue using the service.",auth_token_missing:"Authentication token not found. Please log in again.",auth_token_failed:"Failed to get authentication token. Please try again.",store_url_required:"Store URL is required",invalid_store_url:"Invalid store URL",file_read_failed:"Failed to read file",xlsx_read_failed:"Failed to read XLSX file",audience_delete_failed:"Failed to delete audience!",missing_tag_id:"Missing tagId!",verify_email_first:"Please verify your email address before logging in.",login_failed:"Login failed. Please check your credentials.",register_failed:"Registration failed. Please try again.",otp_failed:"Failed to send OTP. Please try again.",google_signin_failed:"Google sign-in failed. Please try again.",account_exists:"Account already exists. Please sign in instead.",error_trace:"Error occurred while creating trace",template_apply_failed:"Failed to apply template",template_delete_failed:"Failed to delete template",email_template_save_failed:"Failed to save email template",email_template_delete_failed:"Failed to delete email template",test_email_send_failed:"Failed to send test email",template_id_missing:"Template ID is missing",settings_update_failed:"Failed to update settings",name_max_length_exceeded:"Name cannot exceed 60 characters.",business_name_max_length_exceeded:"Business name cannot exceed 60 characters.",reconnect_twilio:"Reconnect Twilio to fetch WhatsApp templates and numbers.",no_workflow_complete_previous_steps:"No workflow or channels found. Please complete previous steps first.",all_channels_generation_failed:"Failed to generate content for all channels.",fix_validation_errors:"Please fix the validation errors before saving",fill_all_content_fields:"Please ensure all content fields are filled before launching the campaign.",campaign_id_not_found_complete_creation:"Campaign ID not found. Please complete the campaign creation process first.",account_exists_signin:"Account already exists. Please sign in instead.",audience_title_required:"Audience title is required to save!",xlsx_no_sheets:"The XLSX file has no sheets",xlsx_file_empty:"The XLSX file is empty",xlsx_no_valid_headers:"The XLSX file has no valid headers",xlsx_no_valid_data:"The XLSX file contains no valid data rows",xlsx_parsing_failed:"XLSX parsing failed: {{error}}",excel_parse_failed:"Failed to parse Excel file.",unsupported_file_format:"Unsupported file format. Please upload CSV or XLSX files.",fix_all_errors_before_upload:"Please fix all errors before uploading",no_sources_selected:"Please select at least one source",tag_id_required:"Tag ID is required",no_users_available:"No users available from selected sources",audience_save_failed:"Failed to save audience",file_size_exceeds_1mb:"File size exceeds 1MB",csv_parsing_failed:"CSV parsing failed: {{error}}",invalid_json:"Invalid JSON format.",upload_failed:"Failed to upload products. Please try again.",product_url_analysis_failed:"Failed to analyze product URL",product_update_failed:"Failed to update product",found_errors_in_rows:"â ï¸ Found {{errorCount}} error(s) in {{rowCount}} row(s)",subscription_error:"Something went wrong. Please try again or contact support.",whatsapp_templates_required:"Please select templates for all {{totalCount}} WhatsApp content nodes. {{missingCount}} template(s) missing.",whatsapp_template_incomplete:"WhatsApp template {{index}} is incomplete. Please select a valid template.",whatsapp_template_variables_incomplete:'WhatsApp template "{{templateName}}" has invalid structure. Please complete variable mappings.',http_401:"Your session has expired. Please sign in again.",http_403:"You don't have permission to do this.",http_404:"We couldn't find what you're looking for.",http_409:"This couldn't be completed due to a conflict. Please refresh and try again.",http_413:"The file is too large. Please try a smaller one.",http_422:"Please check your inputs and try again.",http_429:"Too many attempts. Please try again in a moment.",http_5x
232x:"Something went wrong on our end. Please try again in a moment.",network_error:"Check your connection and try again.",request_timeout:"The request took too long. Please try again.",invalid_magic_link:"Invalid or expired magic link. Please resend email verification link again.",unable_to_download:"Unable to download: missing tag or company",server_error:"Server error! Please try again or contact support",something_went_wrong_try_again:"Something went wrong. Please try again.",company_not_found:"Company not found. Please try again.",events_limit:"You can select up to {{count}} events only.",bundle_id_missing:"Bundle ID is missing",step_not_accessible:"This step is not accessible yet",fill_email_content:"Please fill in email content for {{label}}",fill_required_fields:"{{label}}: Please fill in {{fields}}"},loading:{loading:"Loading...",saving:"Saving...",updating:"Updating...",processing:"Processing...",updating_campaign:"Updating campaign...",logging_out:"Logging out...",logging_out_all_devices:"Logging out of all devices...",resending_otp:"Resending OTP...",loading_products:"Loading products...",analyzing:"Analyzing..."},info:{confirm:"Are you sure?",no_changes:"No changes detected",no_users_found:"No users found from your data sources"}},fI={start_typing:"Start typing...",select_or_write_script:"Select a script above or write your own custom script here...",push_title:"Enter your push notification title...",push_message:"Enter your push notification message...",whatsapp_content:"Enter your WhatsApp conversation content...",campaign_name:"Enter your campaign name",select_language:"Select a language for your campaign",product_name:"Enter product name",select_number:"Select a number",marketing_team:"Marketing Team",domain:"example.xyz",shopify_store:"mystore.shopify.com",owner_email:"Enter owner email",enter_coupon:"Enter coupon code",card_number:"XXXX XXXX XXXX XXXX",card_expiry:"MM / YY",price:"99.99",currency:"USD, BDT, etc.",template_name:"e.g., promotional_offer_2024",optional_if_no_phone:"Optional",select_discount_type:"Select discount type",select_template:"Select a template",select_provider:"Choose a provider",enter_template_name:"Enter template name",write_template:"Write your template here...",select_products:"Select Products",product_url_example:"https://www.example.com/product",discount_example:"10 or 10%",csv_xlsx_upload_instructions:"CSV or XLSX files (max. 1MB)",select_or_write_script_2:"Select a script or write your own..."},gI={coupon_code:"Coupon code",first_message:"First Message",conversation_body:"Conversation Body",product_url:"Product URL",product_name:"Product Name",store_url:"Store URL",owner_email:"Owner Email",verification_code:"Verification Code",template_name:"Template name",template:"Template",select_products_from_catalog:"Select Products from Catalog (Shopify & Knowledge Base)",edit_product:"Edit Product",price:"Price",currency:"Currency",discount:"Discount",full_name_required:"Full Name*",select_mobile_number:"Select mobile number"},hI={loading:"Loading...",no_events:"No Event summary found",no_recent_events:"No recent Event found",no_campaign:"No campaign found",no_audience:"No audience found",channel_performance_empty:"Channel performance Empty",no_data_available:"No data available",knowledge_base_empty:"Knowledge Base Empty",voice_call_agent:"Voice Call Agent",avatar_image:"Avatar image"},_I={regenerate_ai:"Regenerate with AI",approaching_quota:"Approaching quota limit",quota_reached:"Test call quota reached",validation_error:"Validation Error",ai_voice_call:"AI voice call"},vI={messenger_first_message:"The initial message to start the Messenger conversation",product_url_desc:"Enter the URL of the product you want to promote",product_name_desc:"You can edit the product name if needed",campaign_creation_required:"Campaign Creation Required",campaign_data_not_found:"Campaign Data Not Found",whatsapp_connect_description:"Connect your WhatsApp Business account to start sending messages.",update_product_info:"Update product information and pricing details",product_auto_enrichment_notice:"This product is scheduled for auto-enrichment within 24 hours. You can manually edit now or wait for automatic update.",discount_format:"Enter number (e.g., 10) or percentage (e.g., 10%)",fix_errors_before_upload:"Please fix any errors before uploading. Note: Each contact must have at least one of Email or Phone Number."},yI={tip:"ð¡ AI Tip",voice_config:"Voice Configuration:",natural_language:"Use natural, conversational language",script_tip:"Tip: Personalize the script to match your brand voice and campaign goals.",edit_script:"Edit Script",write_script:"Write Script",custom:"Custom",at_least_50_characters:"(At least 50 characters required)",characters_count:"{{count}}/1000 characters",script_tip_2:"You can also edit the script or start from scratch.",shopify_store_without_protocol:"Enter your Shopify store URL without https://"},bI={whatsapp_sms_addon:"WhatsApp & SMS add-on",usage_based:"usage based",subscription_cancelled:"Cancelled",payment_pending:"Payment pending",payment_declined:"Payment declined",cancel_subscription:"Cancel Subscription",cancel_subscription_confirmation:"Are you sure you want to cancel your subscription? This action cannot be undone.",no_keep_it:"No, keep it",yes_cancel:"Yes, cancel",current_plan:"Current Plan",new_plan:"New Plan",coupon_code_label:"Coupon code",total_due:"Total Due",plan_name:"You are currently on the {{-planName}} plan.",monthly_leads:"Visitors engaged/month",leads_exceed:"Visitors engaged limit reached. Upgrade Plan to create new campaigns.",email_exceed:"Email limit reached. Buy addon to continue using this platform.",sms_exceed:"SMS limit reached. Buy addon to continue using this platform.",voice_exceed:"Voice call limit reached. Buy addon to coninue using this channel.",email_not_available:"Email is not included in your plan. Purchase an addon to enable this channel.",sms_not_available:"SMS is not included in your plan. Purchase an addon to enable this channel.",voice_not_available:"Voice calls are not included in your plan. Purchase an addon to enable this channel.",product_maxed:"You can select up to {{-maxProducts}} products on your current plan. Upgrade to select more.",voice_minutes:"Voice minutes",active_campaigns:"active campaigns",emails:"Emails",sms:"Sms",autosend_emails:"Autosend Emails",mark_sms:"MarkSMS",events:"events",new_addon:"New Add-on",approve:"Approve payment",cancel_sub:"Cancel subscription",pending_payment_desc:"You have a pending payment. Please complete the payment to access this feature.",failed_subscription:"Your payment has failed or was cancelled. To continue having access to your subscription, please update or renew your payment method (or contact support).",complete_payment:"Complete payment",chargebee_migrate:"Your billing has been migrated to Shopify. Please subscribe a plan to continue.",go_to_explore_plans:"Go to Explore Plans",refresh_footer:"(If already approved, please refresh the page)",free_trail_plan_buy:"Your 30 days free trial has ended. Please subscribe a plan to continue.",go_to_billing:"Go to Plan and Billings",your_abandoned_carts:"Your Abandoned Carts Overview",items:"{{-item}} items",abandoned_ago:"Abandoned {{-time}}",and_more:"... and {{-count}} more",estimated_rec:"Estimated Recovery: {{-currency}}{{-amount1}} - {{-currency}}{{-amount2}} (20%-30% avg)",great_news:"Great News! We Found Revenue You Can Recover",nothing_found_title:"All Clear! No Abandoned Carts Right Now",found_carts:"We found {{-carts}} abandoned carts,",worth_amount:"worth {{-currency}} {{-amount}} in your store.",potential_recover:"That's potential revenue you can recover right now.",send_recovery_btn:"Send recovery campaign now",see_them_btn:"See them",skip_for_now_btn:"Skip for now",no_carts_found:"No abandoned carts found (great job!)",moniter_new:"We'll monitor for new ones and recover them.",set_up_campaign_agent_btn:"Dismiss",free_trial_left:"Free trial days left: {{-days}}",remaining_trial_left:"Remaining trial days: {{-days}}",no_exp:"No expiration"},wI={select_all:"Select all",insert_variable:"Insert Variable",product_selection:"Product Selection",ai_summary:"AI summary",call_failed:"Call Failed",message_failed:"Message Failed",connect_shopify:"Connect Shopify",connect_whatsapp:"Connect WhatsApp",generated_workflow:"Generated
232workflow",valid_url:"â Valid URL",review_fix_data:"Review & Fix Data",ai_voice_call:"AI voice call",ai_voice_description:"Engage with personalized voice messages.",regenerate_with_ai:"Regenerate with AI",page_x_of_y:"Page {{current}} of {{total}}",rows_per_page:"Rows per page:",previous:"Previous",next:"Next",or:"Or",install_app_directly:"Click here to install app directly",no_data_found:"No data found.",recording:"Recording",duration:"Duration",transcript:"Transcript",subject:"Subject",id_label:"To:",id:"ID:",call_number:"Call {{n}}",assistant_name:"Voice Agent",you_label:"You",user_label:"User",connect_woocommerce:"Connect WooCommerce",loading:"Loading..."},xI={retry_logic:"Retry Logic",deprecation_logging:"Deprecation Logging",circuit_breaker:"Circuit Breaker",service_health:"Service Health",response_time:"Response Time:",last_failure:"Last Failure:",error_rate:"Error Rate:",migration_deadline:"Migration Deadline:",content_generation:"Content Generation",workflow_generation:"Workflow Generation",whatsapp_bot:"WhatsApp Bot",error_handling:"Error Handling"},CI={reset_form:"Reset form",submit_form:"Submit form",analyze_url:"Analyze URL",save_and_upload_contacts:"Save & Upload ({{count}} contacts)",go_back:"Go back",create_and_confirm:"Create and confirm"},SI={name_required:"Name is required",email_or_phone_required:"Email required (or provide phone)",phone_or_email_required:"Phone required (or provide email)",invalid_email_format:"Invalid email format",valid_email_required:"Please enter a valid email address",disposable_email_not_allowed:"Disposable email addresses are not allowed",password_required:"Password is required",password_min_8:"Password must be at least 8 characters",password_max_128:"Password must be less than 128 characters",password_strength_3of4:"Password must contain at least 3 of: uppercase, lowercase, numbers, special characters",password_too_common:"Password is too common. Please choose a stronger password",duplicate_email:"Duplicate email",invalid_phone_format:"Invalid phone format (use +country code)",valid_phone_required:"Please enter a valid phone number",duplicate_phone:"Duplicate phone",missing_required_columns:"Missing required columns: {{columns}}. Please use the template file.",invalid_url:"Invalid URL",valid_url_required:"Please enter a valid URL including http:// or https://",invalid_credit_card:"Invalid credit card number",date_must_be_future:"Date must be in the future",date_must_be_past:"Date must be in the past",file_max_size:"File size must be less than the configured limit",file_accepted_types:"File type must be one of the accepted types",first_name_required:"First name is required",first_name_max_50:"First name must be less than 50 characters",last_name_required:"Last name is required",last_name_max_50:"Last name must be less than 50 characters",accept_terms:"You must accept the terms and conditions",passwords_do_not_match:"Passwords don't match"},kI={full_name_required:"Full Name*",phone_number:"Phone Number",email_address:"Email Address",country:"Country"},PI={product_selector:{url_description:"Enter a product URL to analyze and extract product information",product_analyzed_success:"â Product analyzed successfully and ready for campaign",knowledge_base_tip:"<strong>Tip:</strong> Upload products to your knowledge base or connect Shopify to select products directly instead of entering URLs manually."},email_form:{subject_label:"Subject",subject_placeholder:"Enter email subject line",body_label:"Body",body_placeholder:"Enter your email body...",generate_prompt:'Click "Regenerate" to replace the content with AI-generated content.',best_practices_title:"Email Best Practices:",best_practice_1:"Keep subject line concise and compelling (30-50 characters ideal)",best_practice_2:"Use personalization tokens like {{first_name}} for better engagement",best_practice_3:"Include a clear call-to-action (CTA)",best_practice_4:"Test your email on different devices"},push_form:{title_label:"Title",title_placeholder:"e.g. Flash Sale: 20% Off Ends Tonight!",body_label:"Body",body_placeholder:"Enter your push notification message (max 250 characters)...",link_label:"Link",link_placeholder:"https://example.com/special-offer",link_description:"URL to open when notification is clicked (optional)",image_url_label:"Image URL",image_url_placeholder:"https://example.com/image.png",image_url_description:"Optional image to show in the push notification",image_preview_failed:"Image could not be loaded. Check URL or CORS.",valid_url:"â Valid URL",invali
232d_url:"Please enter a valid URL",generate_prompt:'Click "Regenerate" to replace the content with AI-generated push notification content.',best_practices_title:"Push Notification Best Practices:",best_practice_1:"Keep title under 90 characters for better visibility",best_practice_2:"Keep body within the 200-character limit; shorter copy often displays better on lock screens",best_practice_3:"Create urgency with time-sensitive language",best_practice_4:"Use action-oriented words (Save, Get, Claim)",best_practice_5:"Include personalization tokens like {{first_name}}"},sms_form:{message_label:"SMS Message",message_placeholder:"Enter your SMS message (max 160 characters)...",insert_variable:"Insert Variable",select_system_variable:"Select System Variable",system_variable_tooltip:"System variables allow you to personalize your SMS messages with dynamic data like customer names, order details, or company information. Select a variable from the dropdown and it will be inserted at your cursor position in the message.",generate_prompt:'Click "Regenerate" to replace the content with AI-generated SMS content.',best_practices_title:"SMS Best Practices:",best_practice_1:"Keep messages under 190 characters to avoid splitting",best_practice_2:"Include a clear call-to-action (CTA)",best_practice_3:"Use personalization tokens like {{first_name}}",best_practice_4:"Avoid special characters that may not display correctly",best_practice_5:"Include opt-out instructions (Reply STOP to unsubscribe)"},whatsapp_form:{first_message_label:"First Message",first_message_placeholder:"Hello! ð This is [Company Name]. We have an exclusive offer for you...",conversation_body_label:"Conversation Body",generate_prompt:'Click "Regenerate" to replace the content with AI-generated WhatsApp content.',best_practices_title:"WhatsApp Best Practices:",best_practice_1:"Use emojis sparingly to make messages more engaging",best_practice_2:"Keep messages conversational and personal",best_practice_3:"Include clear opt-out instructions",best_practice_4:"Use rich media (images, videos) when relevant",best_practice_5:"Respect WhatsApp Business messaging policies",template_notice_title:"Template Notice:",template_notice_text:"WhatsApp requires pre-approved message templates for business messaging."},whatsapp_template:{loading:"Loading WhatsApp templates...",error_title:"Unable to load templates",error_message:"Failed to load WhatsApp templates. Please check your WhatsApp integration.",retry:"Retry",no_templates_title:"No templates available",no_templates_message:"No WhatsApp templates found. Please create templates in your Twilio console or through the integration page.",no_compatible_title:"No compatible templates",no_compatible_audience:"No templates are compatible with <strong>audience-based</strong> campaigns.",no_compatible_event:"No templates are compatible with <strong>event-based</strong> campaigns.",compatibility_tip_audience:"Create templates with user variables like {{1}} or {{userName}} for audience-based campaigns.",compatibility_tip_event:"Create templates with product variables like {{2}} or {{productName}} for event-based campaigns.",select_title:"Select WhatsApp Template",select_description:"Choose a pre-approved template for your WhatsApp campaign",showing_compatible:"Showing {count} template{plural} compatible with <strong>{type}</strong> campaigns. {filtered} template{filteredPlural} hidden.",variables_label:"Variables:",ai_personalize:"The AI will personalize this template with relevant product information and customer data during campaign execution.",template_all_recipients:"This template will be used for all recipients in your campaign.",map_template_variables:"Map Template Variables",map_template_variables_description:"Map each template variable to a system variable and provide a fallback value. Both are required.",template_variable:"Template Variable",system_variable:"System Variable",fallback_value:"Fallback Value",select_system_variable:"Select system variable...",customer_data:"Customer Data",order_data:"Order Data",company_data:"Company Data",campaign_data:"Campaign Data",system_variable_required:"System variable is required",fallback_value_required:"Fallback value is required",complete_variable_mappings:"Please complete all variable mappings before launching the campaign. Both system variable and fallback value are required for each template variable."},voice_form:{first_message_label:"First Message",first_message_placeholder:"Hello! This is [Company Name] calling about...",script_label:"Script",script_placeholder:"You are a helpful sales representative from [Company Name]. Your goal is to...",voice_config_title:"Voice Configuration:",generate_prompt:'Click "Regenerate" to replace the content with AI-generated Voice content.',best_practices_title:"Voice Call Best Practices:",best_practice_1:"Keep the first message friendly and engaging",best_practice_2:"Clearly identify your company and purpose of the call",best_practice_3:"Use natural, conversational language",best_practice_4:"System prompt should guide the AI to stay on topic and handle objections",best_practice_5:"Include personalization tokens like {{first_name}}",best_practice_6:"Provide detailed instructions for better AI conversation flow",voice_label:"Voice",language_label:"Language",tone_label:"Tone",tone_warm:"Warm",tone_confident:"Confident",tone_casual:"Casual",tone_persuasive:"Persuasive"},messenger_form:{conversation_placeholder:"Continue the conversation with follow-up messages, product details, or special offers...",conversation_description:"Additional messages or conversation flow (optional)",character_count:"{count}/5000 characters",ai_readonly:"Messenger content will be AI-generated in autonomous mode. Form fields are read-only.",best_practices_title:"Messenger Best Practices:",best_practice_1:"Start with a friendly, personalized greeting",best_practice_2:"Use quick replies and buttons for better engagement",best_practice_3:"Keep messages short and scannable",best_practice_4:"Include rich media like images, GIFs, or carousels",best_practice_5:"Provide clear next steps or CTAs",features_title:"Messenger Features:",feature_1:"Supports rich templates (generic, button, receipt)",feature_2:"Can include persistent menu and get started button",feature_3:"Typing indicators for natural conversation flow",feature_4:"Read receipts to track engagement"},voice_quota:{free_plan_title:"Free Plan Test Call Quota",remaining_warning:"You have {count} test call{plural} remaining. Consider upgrading your plan for unlimited test calls.",quota_exceeded:"You've used all 100 test calls for this month. Upgrade your plan for unlimited test calls or wait for your quota to reset next month."}}
232,EI={customize:"Customize",select_template:"Select Template",no_template_selected:"No email template selected. Please select a template to preview your email.",preview:{desktop:"Desktop",mobile:"Mobile",no_content:"No content available to preview"},library:{title:"Email Template Library",description:"Choose from our collection of professionally designed email templates or use your saved templates. Select a template to preview or edit it to match your brand.",template_library:"Template Library",saved_templates:"Saved Templates",recommended:"Recommended",selected:"Selected",select:"Select",edit:"Edit",delete:"Delete",preview:"Preview",confirm_delete:"Are you sure you want to delete this template? This action cannot be undone.",no_templates:"No templates available for this campaign goal.",no_saved_templates:"You haven't saved any templates yet. Edit a template and save it to appear here.",load_more:"Load more templates",create_template:"Create Template",create_new_template:"Create new template",create_new_template_description:"Start from a library template or customize from base templates."},editor:{title:"Customize email template",description:"Update styles, sections, and brand details. Preview updates instantly.",content_section:"Content Editor",content_description:"Edit the content fields below. Changes to content will be reflected in the preview. Template structure cannot be modified here.",subject:"Subject",subject_placeholder:"Enter email subject",headline:"Headline",headline_placeholder:"Enter email headline",body_text:"Body Text",body_text_placeholder:"Enter email body text",cta_section:"Call to Action (Optional)",cta_text:"CTA Text",cta_text_placeholder:"e.g., Shop Now, Learn More",cta_url:"CTA URL",add_cta:"Add CTA",ps_text:"P.S. Text (Optional)",ps_text_placeholder:"Enter additional message (optional)",remove:"Remove",note:"Note",note_content:"You can only edit content values here. To modify the template structure (HTML), you'll need to save this as a new template.",live_preview:"Live Preview",save_changes:"Save Changes",save_as_new:"Save as New Template",save_as_new_template:"Save as New Template",save_as_description:"Give your customized template a name to save it for future use.",template_name:"Template Name",template_name_placeholder:"e.g., My Custom Promotional Template",template_name_required:"Template name is required",template_name_max_length:"Template name must be less than {{max}} characters",save_template:"Save Template",invalid_image_url_format:"Please enter a valid URL",invalid_image_url:"Invalid image URL. Image could not be loaded.",logo_upload_instructions:"JPG, JPEG, or PNG. Max file size: {{maxSize}}",banner_upload_instructions:"JPG, JPEG, or PNG. Max file size: {{maxSize}}",autosaved:"Changes saved automatically",autosave_failed:"Failed to save changes",export_validation_title:"Email template validation",export_validation_description:"We found potential issues with your template. Open the highlighted blocks to fix them, or save anyway if you accept the risks.",export_validation_issues_found:"Issues found before export",export_validation_export_anyway:"Save anyway",export_validation_errors:"Errors",export_validation_warnings:"Warnings",export_validation_info:"Info",save_anyway:"Save anyway",validation_open_block:"Open block",validation_image_url_not_loadable:"Image URL could not be loaded or previewed; the link may be broken, expired, or blocked."},send_test_email:{title:"Send test email",subtitle:"Send a test email to your inbox for review.",receiver_label:"Receiver email address",receiver_placeholder:"e.g [email protected]",platform_label:"Platform",platform_placeholder:"Select provider",confirm:"Confirm",no_provider:"No email provider connected. Go to Integrations and connect an email provider to send test emails.",go_to_integrations:"Go to Integrations",invalid_email:"Please enter a valid email address",email_required:"Receiver email is required",button:"Send test email",no_content:"Unable to read template content"}},II={calls_used:"{{usedCalls}}/{{totalCalls}} test calls used",calls_remaining:"{{count}} remaining"},TI={simple_textarea:{placeholder:"Start typing...",characters_label:"{{current}}/{{max}} characters",over_limit:"({{over}}
232 over limit)",sms_one:"1 SMS",sms_multiple:"{{count}} SMS segments"}},AI={title:"Content",description:"Create templates to use with your campaigns",coming_soon:"Coming soon",customize_template:"Customize template",customize_subtitle:"Customize this template to use in a campaign",no_templates_title:"No templates yet",no_templates_description:"Create your first email template to use in campaigns",create_first_template_button:"Create your first template"},RI={content:"Content",builder:"Create new campaign",customize_template:"Customize template",data_room:"Data room",knowledge_base:"Knowledge base",setup_data_container:"Setup data container",client_side_marktag:"Client side MarkTag",server_side_marktag:"Server side MarkTag",campaigns:"Campaigns",campaign:"Campaign",view_details:"View details",create_a_new_campaign:"Create a new campaign",settings:"Settings",analytics:"Analytics",audience_analytics:"Audience analytics",view_content:"View content",all_events:"All events",home:"Home",integrations:"Integrations",audience_studio:"Audience studio",control_room:"Control room",billing:"Billing",plan_and_billing:"Plan and billing",explore_plans:"Explore plans",explore_plans_shopify:"Explore plans Shopify",plans:"Plans",onboarding:"Onboarding",setup_company:"Setup company",datasource_setup:"Datasource setup",users:"Users",leads:"Leads",create_audience:"Create audiences",setup:"Setup",create:"Create",edit:"Edit"},MI={product_name_required:"Product name is required",product_name_max_length:"Product name must not exceed 255 characters",price_required:"Price is required",invalid_price_scientific:"Please enter a valid price without scientific notation",price_not_a_number:"Price must be a valid number",price_must_be_positive:"Price must be greater than 0",price_max_two_decimals:"Price can have up to 2 decimal places only",price_exceeds_max:"Price exceeds maximum allowed value",invalid_discount_scientific:"Please enter a valid discount without scientific notation",discount_not_a_number:"Discount must be a valid number",discount_cannot_be_negative:"Discount cannot be negative",discount_exceeds_100:"Discount cannot exceed 100%",discount_max_two_decimals:"Discount can have up to 2 decimal places only",currency_required:"Currency is required",currency_must_be_3_chars:"Currency must be exactly 3 characters",invalid_currency_format:"Currency must be a valid 3-letter ISO code (e.g., USD, BDT, EUR)",invalid_iso_currency:"Please enter a valid ISO currency code"},NI={title:"Fetch from link",description:"Fetch content from any URL.",url_label:"URL",url_placeholder:"Enter URL and press +",added_urls:"Added URLs:",button_text:"Fetch from link",validation:{invalid_url:"Please enter a valid URL",duplicate_url:"This URL is already added",no_urls:"Please add at least one valid URL"},upload_status:{step_of:"Step {{step}} of {{total}}",estimated_time:"Est. time: ~{{minutes}} min",processing:"Processing:",wait_message:"â³ This may take 2-3 minutes per URL. Please don't close this window.",validating:"Validating URLs...",fetching:"Fetching content from {{count}} URL...",fetching_plural:"Fetching content from {{count}} URLs...",scraping:"Scraping and extracting data...",saving:"Saving to knowledge base..."},success_message:"Products uploaded! Items with missing pricing will be auto-enriched within 24 hours.",error_message:"Failed to upload products. Please try again."},OI={badge:"Smart Campaign",headline:"Launch Your First Campaign in One Click",subheadline:"We pre-configured a cart recovery campaign using your brand voice and channels. Review, preview the content, and launch.",benefit_first_time:"Best for: First-time setup",benefit_recovery:"Expected recovery rate: 12-18%",benefit_brand:"Uses your brand voice and products",language_label:"Language",target_audience_title:"Target Audience",target_audience_subtitle:"Define who should receive this campaign.",upload_audience:"Upload Audience",upload_audience_desc:"Upload a CSV file with your audience list",custom_website:"Custom Website",custom_website_desc:"Install MarkTag script to track events",event_based:"Event Based",event_based_desc:"Target users based on Shopify events",shopify_only:"Shopify only",upload_section_title:"Upload your CSV or XLSX file",upload_section_copy:"We will validate your file, build the audience, and attach it to this campaign.",upload_button:"Upload Audience",marktag_script_title:"MarkTag Script",install_steps:"Installation Instru
232ctions",install_step_1:"Copy the MarkTag script above",install_step_2:"Paste it into your website's <head> section",install_step_3:"Deploy your changes",install_step_4:"Click 'Verify Tracking' to confirm events",waiting_for_events:"Waiting for events... open your site and interact to see events appear here.",events_detected:"Events detected! MarkTag is connected. We can continue with this audience.",step1_code_snippet:"Copy the code snippet below",setting_up_marktag:"Setting up MarkTag...",loading_marktag_script:"Loading MarkTag script...",install_and_verify:'After installing the script on your website, click "Verify Tracking" to check for events.',verify_tracking:"Verify Tracking",change_datasource:"Change datasource",event_selector_title:"Select Event Trigger",products_title:"Products",products_shopify:"Products will auto-sync from your Shopify store.",products_manual:"Add one product URL to personalize recovery messages.",generating_workflow:"Generating workflow...",connecting_channels:"Connecting channels...",preview_campaign:"Preview Campaign",customize_campaign:"Customize Campaign",back_to_setup:"Back",skip_to_dashboard:"Skip to dashboard",skip_success:"Welcome to your dashboard!",skip_failed:"Failed to skip onboarding"},jI={all_users:"All users",identified_users:"Identified users",enriched_users:"Enriched users",anonymous_users:"Anonymous users",select_filter:"Select filter",date_range:"Date Range",select_user:"Select a user to view their journey",header_description:"Track and analyze individual user journeys to optimize conversions.",understanding_individual_path:"Understanding the individual path.",no_events:"No journey events found",additional_info:"Additional info",enriched_info:"Enriched info",audience_list:"Audience list",audiences_detected:"audiences detected.",no_additional_info:"No additional information available",user_journey:"User journey"},DI={contact_support:"Contact support",stage:{setup:"Shopify setup",opportunity:"Opportunity",agent_preview:"Agent preview",review:"Review & activate",setup_caption:"Automatic connection",opportunity_caption:"See the problem in real data",agent_preview_caption:"How your agent decides",review_caption:"Turn on your agent"},setup_task:{store:"Store and products connected",products:"Product catalog synced",consent:"Customer consent rules synced",events:"Storefront events activated",opportunity:"Recovery opportunity calculated",email_templates:"Email templates prepared"},back:"Back",next:"Continue",guided_setup:"Guided setup",progress_saved:"Progress saved",support:"Support",agent:{plan_title:"Agent plan",stops_when:"Stops when:",continue:"Review & activate",generating:"Preparing your recovery agent preview",error_title:"We couldn't build the preview",error_desc:"Retry to rebuild the agent plan and email from your store data.",eyebrow:"Agent in action",title:"This is how Markopolo decides â not just what it writes",waiting_note:"No abandoned checkout yet â here is exactly what your agent will run for the first shopper who leaves one. Nothing is sent before you activate.",email_title:"Your recovery email",no_template:"Your recovery email is being prepared and will fill with the exact cart when a shopper leaves one.",real_scenario:"Based on a real abandoned checkout",scenario_line:"A shopper left the {{product}} at checkout {{time}}, from {{location}}. Here is what your agent would do.",real_scenario_top_product:"Based on real abandoned checkouts",top_product_scenario:"{{count}} shoppers recently abandoned checkout with the {{product}} in their cart. Here is what your agent would do.",send_test:"Send a safe test",test_confirmed:"Sent to {{email}} successfully",test_email_target:"Sending test to {{email}}",test_email_target_empty:"Add a test email address",test_email_placeholder:"[email protected]",invalid_test_email:"Enter a valid email address",save_test_email:"Save",cancel_test_email:"Cancel",add_logo:"Add logo",replace_logo:"Replace logo",remove_logo:"Remove logo",logo_hint:"No logo yet â your store name is used as the header. Add a PNG or JPG to replace it.",logo_hint_account_photo:"Your account photo is standing in as the header. Add a PNG or JPG logo to replace it."},retry:"Retry",opportunity:{new_store_eyebrow:"New store â no checkout history yet",shopify_connected:"Shopify connected",new_store_title:"Your recovery agent is ready for the next shopper who",new_store_title_accent:"leaves.",new_store_desc:"There isn't enough checkout history yet to calculate a trustworthy opportunity â so we won't invent one. We connected your catalog, brand, and storefront events; let's preview exactly how Markopolo will respond to the first eligible visit.",tile_products:"Products",synced:"Synced",catalog_synced:"catalog items synced",tile_events:"Storefront events",live:"Live",listening:"listening for visits",tile_brand:"Brand voice",ready:"Ready",built_from_store:"built from your store",sim_prefix:"Next, you'll see a",sim_label:"clearly labeled simulation",sim_body_product:"â a shopper leaving the {{product}} at checkout â built with your real catalog. Nothing is sent.",sim_body:"â built with your real catalog. Nothing is sent.",new_store_cta:"See how the agent will respond",error_title:"We couldn't load your opportunity",error_desc:"Your data is safe. Retry to recalculate from your store history.",tile_high_intent:"High-intent exits",unrecovered:"unrecovered checkouts",tile_reachable:"Reachable now",with_consent:"with email consent",tile_top_product:"Top lost product",none:"â",abandoned_checkouts:"{{count}} abandoned checkouts",cta:"Show me my recovery agent",headline:"was left behind in carts and checkouts in the last {{days}} days.",subtitle:"Markopolo can watch for the same high-intent behavior and help recover those shoppers â with messages written for the person, the product, and the moment.",cred_line:"Estimated opportunity, not guaranteed revenue",cred_source:"Shopify data, {{range}}",how_calculated:"How this was calculated",calc_detail:"Summed from {{count}} abandoned checkouts observed in your Shopify store over the last {{days}} days. This is the value left in carts â not a revenue guarantee."},nothing_sent:"Nothing has been sent to anyone.",review:{gr_channels:"Channels",gr_channels_v:"Email, then SMS",gr_timing:"Timing",gr_timing_v:"Immediately, then after 1 day",gr_consent:"Consent",gr_consent_v:"Only contacts with email/SMS consent",gr_quiet:"Quiet hours",gr_quiet_v:"9 PM â 8 AM store-local",gr_discount:"Discounts",gr_discount_v:"None â off by default",gr_stops:"Stops on",gr_stops_v:"Purchase, reply, or unsubscribe",eyebrow:"Review & activate",title:"Turn on your Cart + Checkout Recovery agent",subtitle:"One combined recovery agent, email-first with an SMS follow-up. Review the exact steps and guardrails, then turn it on.",guardrails:"Guardrails",activate_failed:"Activation could not complete",activate_cta:"Turn on my recovery agent",consequence:"Your agent goes live and starts recovering real carts."},status:{done:"Done",failed:"Failed",working:"Working",queued:"Queued"},setup:{continue:"See your opportunity",timeout_title:"Still setting things up",error_title:"We couldn't finish setup",timeout_desc:"This is taking longer than usual. It keeps running in the background â retry to check again.",error_desc:"One of the setup steps failed. Your progress is saved â retry the remaining steps.",title_shop:"Setting up Markopolo for {{shop}}",title:"Setting up your recovery agent",subtitle:"We're syncing your catalog, recent orders, customer consent, and storefront events â so your first recovery agent is built from real store data.",n
232o_script:"No code or tag setup needed â everything is provisioned through Shopify permissions."},test_sent:"Test sent to {{email}} successfully"},LI={common:aE,signup:rE,signin:sE,verification:iE,navigation:cE,onboarding_tour:lE,home_page:dE,campaigns:uE,campaigns_page:pE,create_campaign:mE,create_campaign_whatsapp:fE,create_campaign_facebook:gE,create_campaign_form:hE,control_room:_E,integrations:vE,webhooks:yE,cart_analytics:bE,shopify_status:wE,onboarding:xE,onboarding_v2:CE,onboarding_intro:SE,monitoring:kE,settings:PE,content_samples:EE,acquisition_chatbot_page:IE,billing_page:TE,campaign_report:AE,campaign_details:RE,connect_marktag:ME,pricing_plan:NE,page_title:OE,plan_card:jE,reset_pass:DE,audience_page:LE,insights_page:FE,voice_call_agent:UE,phone_number:VE,challenge_step:$E,challenges:BE,contact_step:GE,home_sample_campaign:qE,content_step:WE,registration_complete:zE,campaign_view_details:HE,analytics_page:KE,dashboard_metrics:YE,metrics:XE,data_room_page:QE,installationOptions:ZE,data_container_setup_page:JE,knowledge_base_setup_page:eI,knowledge_base_upload:tI,campaign_validation:nI,campaign_creation:oI,campaign_builder:aI,campaign:rI,view_config_modal:sI,bundle:iI,bundle_validation:cI,discount_configuration:lI,audience_studio_page:dI,audience_templates:uI,explore_plans:pI,messages:mI,placeholders:fI,form_labels:gI,alt_text:hI,tooltips:_I,descriptions:vI,voice_agent:yI,billing_ui:bI,ui_common:wI,ml_service:xI,form_actions:CI,validation:SI,table_headers:kI,campaign_content:PI,email_template:EI,quota:II,ui:TI,content_page:AI,breadcrumbs:RI,form_validation:MI,product_upload_from_link:NI,smart_campaign:OI,customer_journey:jI,shopify_onboarding:DI};ve.use(Vh).init({lng:"en",fallbackLng:"en",react:{useSuspense:!1},interpolation:{escapeValue:!1},resources:{en:{translation:LI}}});const ne={AUTH:"auth",PERSIST_ROOT:"persist:root",EMAIL_VERIFIED:"markopolo_email_verified",LEGACY_ACCESS_TOKEN:"markopolo_access_token",LEGACY_REFRESH_TOKEN:"markopolo_refresh_token",LEGACY_USER_EMAIL:"markopolo_user_email",ORIGINAL_USER_BACKUP:"original_user_backup",SUPPORT_DASHBOARD_ACTIVE:"support_dashboard_active",SUPPORT_SESSION_STARTED_AT:"support_session_started_at"},Gn=()=>{const t=localStorage.getItem(ne.AUTH);if(!t)return null;try{return JSON.parse(t)}catch{return null}},FI=t=>{try{localStorage.setItem(ne.AUTH,JSON.stringify(t))}catch{}},Nt=()=>Gn()?.accessToken??null,Ng=()=>Gn()?.refreshToken??null,UI=()=>Gn()?.user??null,gt=(t,e,n)=>{if(!t)return;const o=Gn(),a={accessToken:t,refreshToken:e??o?.refreshToken,user:n??o?.user};FI(a)},po=()=>{try{localStorage.removeItem(ne.AUTH),localStorage.removeItem(ne.LEGACY_ACCESS_TOKEN),localStorage.removeItem(ne.LEGACY_REFRESH_TOKEN),localStorage.removeItem(ne.LEGACY_USER_EMAIL),localStorage.removeItem(ne.EMAIL_VERIFIED)}catch{}},VI=t=>{try{localStorage.setItem(ne.LEGACY_USER_EMAIL,t)}catch{}},ml=()=>{try{return localStorage.getItem(ne.LEGACY_USER_EMAIL)??Gn()?.user?.email??null}catch{return null}},Bo=t=>{try{localStorage.setItem(ne.EMAIL_VERIFIED,JSON.stringify(t))}catch{}},wr=()=>{try{const t=localStorage.getItem(ne.EMAIL_VERIFIED);return t!==null?JSON.parse(t):Gn()?.user?.isEmailVerified??!1}catch{return!1}},$I=new Error("request for lock canceled");var BI=function(t,e,n,o){function a(r){return r instanceof n?r:new n(function(i){i(r)})}return new(n||(n=Promise))(function(r,i){function l(m){try{u(o.next(m))}catch(p){i(p)}}function d(m){try{u(o.throw(m))}catch(p){i(p)}}function u(m){m.done?r(m.value):a(m.value).then(l,d)}u((o=o.apply(t,e||[])).next())})};class GI{constructor(e,n=$I){this._value=e,this._cancelError=n,this._queue=[],this._weightedWaiters=[]}acquire(e=1,n=0){if(e<=0)throw new Error(`invalid weight ${e}: must be positive`);return new Promise((o,a)=>{const r={resolve:o,reject:a,weight:e,priority:n},i=Og(this._queue,l=>n<=l.priority);i===-1&&e<=this._value?this._dispatchItem(r):this._queue.splice(i+1,0,r)})}runExclusive(e){return BI(this,arguments,void 0,function*(n,o=1,a=0){const[r,i]=yield this.acquire(o,a);try{return yield n(r)}finally{i()}})}waitForUnlock(e=1,n=0){if(e<=0)throw new Error(`invalid weight ${e}: must be positive`);return this._couldLockImmediately(e,n)?Promise.resolve():new Promise(o=>{this._weightedWaiters[e-1]||(this._weightedWaiters[e-1]=[]),qI(this._weightedWaiters[e-1],{resolve:o,priority:n})})}isLocked(){return this._value<=0}getValue(){return this._value}setValue(e){this._value=e,this._dispatchQueue()}release(e=1){if(e<=0)throw new Error(`invalid weight ${e}: must be positive`);this._value+=e,this._dispatchQueue()}
232cancel(){this._queue.forEach(e=>e.reject(this._cancelError)),this._queue=[]}_dispatchQueue(){for(this._drainUnlockWaiters();this._queue.length>0&&this._queue[0].weight<=this._value;)this._dispatchItem(this._queue.shift()),this._drainUnlockWaiters()}_dispatchItem(e){const n=this._value;this._value-=e.weight,e.resolve([n,this._newReleaser(e.weight)])}_newReleaser(e){let n=!1;return()=>{n||(n=!0,this.release(e))}}_drainUnlockWaiters(){if(this._queue.length===0)for(let e=this._value;e>0;e--){const n=this._weightedWaiters[e-1];n&&(n.forEach(o=>o.resolve()),this._weightedWaiters[e-1]=[])}else{const e=this._queue[0].priority;for(let n=this._value;n>0;n--){const o=this._weightedWaiters[n-1];if(!o)continue;const a=o.findIndex(r=>r.priority<=e);(a===-1?o:o.splice(0,a)).forEach(r=>r.resolve())}}}_couldLockImmediately(e,n){return(this._queue.length===0||this._queue[0].priority<n)&&e<=this._value}}function qI(t,e){const n=Og(t,o=>e.priority<=o.priority);t.splice(n+1,0,e)}function Og(t,e){for(let n=t.length-1;n>=0;n--)if(e(t[n]))return n;return-1}var WI=function(t,e,n,o){function a(r){return r instanceof n?r:new n(function(i){i(r)})}return new(n||(n=Promise))(function(r,i){function l(m){try{u(o.next(m))}catch(p){i(p)}}function d(m){try{u(o.throw(m))}catch(p){i(p)}}function u(m){m.done?r(m.value):a(m.value).then(l,d)}u((o=o.apply(t,e||[])).next())})};class zI{constructor(e){this._semaphore=new GI(1,e)}acquire(){return WI(this,arguments,void 0,function*(e=0){const[,n]=yield this._semaphore.acquire(1,e);return n})}runExclusive(e,n=0){return this._semaphore.runExclusive(()=>e(),1,n)}isLocked(){return this._semaphore.isLocked()}waitForUnlock(e=0){return this._semaphore.waitForUnlock(1,e)}release(){this._semaphore.isLocked()&&this._semaphore.release()}cancel(){return this._semaphore.cancel()}}const HI=UI(),KI={email:HI?.email??"",verificationLinkExpiresAt:void 0},YI={email:"",verificationLinkExpiresAt:void 0},jg=Vt({name:"authV2",initialState:KI,reducers:{setUserEmail:(t,e)=>{t.email=e.payload},setVerificationLinkExpiresAt:(t,e)=>{t.verificationLinkExpiresAt=e.payload},logout:()=>YI}}),{setUserEmail:nt,setVerificationLinkExpiresAt:f2,logout:ua}=jg.actions,XI=jg.reducer,Go=new zI,QI=Il({baseUrl:Ze.VITE_BASE_API_URL_V2,prepareHeaders:t=>(t.set("Content-Type","application/json"),t)}),xn=t=>{t(ua()),po(),localStorage.removeItem(ne.PERSIST_ROOT),localStorage.removeItem(ne.ORIGINAL_USER_BACKUP),sessionStorage.removeItem(ne.SUPPORT_DASHBOARD_ACTIVE),sessionStorage.removeItem(ne.SUPPORT_SESSION_STARTED_AT),window.location.href="/login"},ZI=()=>sessionStorage.getItem(ne.SUPPORT_DASHBOARD_ACTIVE)==="true",JI=t=>{const e=localStorage.getItem(ne.ORIGINAL_USER_BACKUP);if(sessionStorage.removeItem(ne.SUPPORT_DASHBOARD_ACTIVE),sessionStorage.removeItem(ne.SUPPORT_SESSION_STARTED_AT),!e){xn(t);return}try{const n=JSON.parse(e);if(!n.accessToken)throw new Error("Missing access token in support session backup");gt(n.accessToken,n.refreshToken),localStorage.removeItem(ne.ORIGINAL_USER_BACKUP),window.location.reload()}catch{localStorage.removeItem(ne.ORIGINAL_USER_BACKUP),xn(t)}},eT=new Set(["/auth/login","/auth/rotate-access-token","/auth/verify-email-otp","/auth/google/login","/auth/google/signup","/auth/logout","/auth/logout-all"]),Dg=t=>{const e=Il({baseUrl:t,prepareHeaders:async(o,{endpoint:a})=>{const r=Nt();return r&&o.set("Authorization",`Bearer ${r}`),o.set("Content-Type","application/json"),a&&a.includes("ml-service")&&o.set("x-api-key",Ze.VITE_ML_API_KEY||"your-api-key-here"),o}}),n=yh(e,{retryCondition:(o,a,{attempt:r})=>o.status!==401&&o.status!==429&&r<=1});return async(o,a,r)=>{await Go.waitForUnlock();let i=await n(o,a,r);if(i.error&&i.error.status===401&&ZI())return JI(a.dispatch),i;const l=typeof o!="string"?o?.url:o;if(!(i.error&&i.error.status===401&&!eT.has(l??"")))return i;if(Go.isLocked())await Go.waitForUnlock(),i=await n(o,a,r);else{const u=await Go.acquire();try{const m=Ng();if(!m)return xn(a.dispatch),i;const f=(await QI({url:"/auth/rotate-access-token",method:"POST",headers:{Authorization:`Bearer ${m}`}},a,r)).data;if(f?.success){const{accessToken:g,refreshToken:h,user:_}=f.data;if(!g)return xn(a.dispatch),i;gt(g,h??m,_),i=await n(o,a,r)}else xn(a.dispatch)}catch{xn(a.dispatch)}finally{u()}}return i}},mo=Tl({reducerPath:"api",baseQuery:Dg(Ze.VITE_BASE_API_URL_V1),extractRehydrationInfo(t,{reducerPath:e}){if(t.type===ws&&e)return t.payload?.[e]},tagTypes:["Company","SampleCampaign","AudienceLeadList","UserRoleTeamList","ExistingAudience","KnowledgeBase","Integrations","MarktagSetup","CampaignList","PresetCampaigns","SampleC
232ontents","KnowledgeBaseProduct","BundlePackages","BundlePackage","VoiceQuota","EmailTemplates","PromptClusters","CampaignBuilder"],endpoints:()=>({}),keepUnusedDataFor:60,refetchOnFocus:!1,refetchOnMountOrArgChange:60}),Xt=Tl({reducerPath:"apiV2",baseQuery:Dg(Ze.VITE_BASE_API_URL_V2),extractRehydrationInfo(t,{reducerPath:e}){if(t.type===ws&&e)return t.payload?.[e]},tagTypes:["Company","Integrations","CampaignBuilder","CampaignList","EmailTemplatesV2","ShopifyOnboarding","ShopifyOpportunity","ShopifyCheckoutWatch","ShopifyAgentPreview","PresetCampaigns"],endpoints:()=>({}),keepUnusedDataFor:60,refetchOnFocus:!1,refetchOnMountOrArgChange:60}),tT={sampleCampaignCreated:!1,voiceCampaignCreated:!1},Lg=Vt({name:"app",initialState:tT,reducers:{setSampleCampaignCreated:(t,e)=>{t.sampleCampaignCreated=e.payload},setVoiceCampaignCreated:(t,e)=>{t.voiceCampaignCreated=e.payload}}}),{setSampleCampaignCreated:g2,setVoiceCampaignCreated:h2}=Lg.actions,nT=Lg.reducer;function hn(t){if(typeof t=="string"&&t)return t;if(Array.isArray(t)){const e=t.filter(n=>typeof n=="string").join(", ");if(e)return e}return null}function qo(t){if(!t||typeof t!="object")return null;const e=t,n=e?.data,o=n?.error;if(o&&typeof o=="object"){const p=hn(o?.message);if(p)return p}if(typeof o=="string"&&o)return o;const a=hn(n?.message);if(a)return a;const r=e?.error,i=r?.data,l=i?.error;if(l&&typeof l=="object"){const p=hn(l?.message);if(p)return p}const d=hn(i?.message);if(d)return d;const u=hn(r?.message);if(u)return u;const m=hn(e?.message);return m||null}function de(t,e){return VP(oT(t,e))}function oT(t,e){const n=ve.t.bind(ve),o=e??n("messages.error.something_wrong","Something went wrong. Please try again.");if(!t)return o;if(typeof t=="string")return t||o;if(Array.isArray(t))return t.filter(u=>typeof u=="string").join(", ")||o;if(typeof t!="object")return o;const a=t,r=a?.status??a?.error?.status;if(r==="FETCH_ERROR")return String(a?.error??"").toLowerCase().includes("abort")?n("messages.error.request_timeout","The request took too long. Please try again."):n("messages.error.network_error","Check your connection and try again.");if(r==="TIMEOUT_ERROR")return n("messages.error.request_timeout","The request took too long. Please try again.");if(r==="PARSING_ERROR"){const d=typeof a?.originalStatus=="number"?a.originalStatus:parseInt(String(a?.originalStatus??""),10);return d===502||d===503||d===504?n("messages.error.http_gateway_timeout","The server took too long to respond. Please try again in a moment."):(!isNaN(d)&&d>=500,n("messages.error.http_5xx","Something went wrong on our end. Please try again in a moment."))}const i=typeof r=="number"?r:parseInt(String(r),10);if(i===400||i===422){const d=qo(t);return d||n("messages.error.http_422","Please check your inputs and try again.")}if(i===401){const d=qo(t);return d||n("messages.error.http_401","Your session has expired. Please sign in again.")}if(i===403)return n("messages.error.http_403","You don't have permission to do this.");if(i===404)return n("messages.error.http_404","We couldn't find what you're looking for.");if(i===408)return n("messages.error.request_timeout","The request took too long. Please try again.");if(i===409)return n("messages.error.http_409","This couldn't be completed due to a conflict. Please refresh and try again.");if(i===413)return n("messages.error.http_413","The file is too large. Please try a smaller one.");if(i===429)return n("messages.error.http_429","Too many attempts. Please try again in a moment.");if(i===502||i===503||i===504)return n("messages.error.http_gateway_timeout","The server took too long to respond. Please try again in a moment.");if(!isNaN(i)&&i>=500){const d=qo(t);return d||n("messages.error.http_5xx","Something went wrong on our end. Please try again in a moment.")}const l=qo(t);return l||o}const hs=mo.injectEndpoints({endpoints:t=>({addChargebeePaymentMethod:t.mutation({query:({tokenId:e,userId:n,companyId:o})=>({url:"/payment/method",method:"POST",body:{tokenId:e,userId:n,companyId:o}}),invalidatesTags:["Company"]}),addChargebeePaymentWithoutCompany:t.mutation({query:({tokenId:e,userId:n,companyId:o})=>({url:"/payment/method",method:"POST",body:{tokenId:e,userId:n,companyId:o}})}),startSubscription:t.mutation({query:e=>({url:"/payment/start-sub",method:"POST",body:{...e}}),invalidatesTags:["Company"]}),buyWhatsAppAddOn:t.mutation({query:e=>({url:"/payment/buy-wa-msg",method:"POST",body:{...e}}),invalidatesTags:["Company"],async onQueryStarted(e,{queryFulfilled:n}){try{const o=await n;return o.data.success||ye.error(de(o.data,"Failed to process payment"),{id:"buy-subscription-error"}),o}catch(o){return ye.error(de(o,"Failed to process payment"),{id:"buy-subscription-error"}),o}}}),getPaymentLimits:t.query({query:e=>({url:`/payment/limits/${e}`,method:"GET"}
232),keepUnusedDataFor:600}),getEventLimits:t.query({query:e=>({url:`/payment/event-usage/${e}`,method:"GET"}),keepUnusedDataFor:600}),deletePaymentMethod:t.mutation({query:e=>({url:"payment/method",method:"DELETE",body:{companyId:e}}),invalidatesTags:["Company"]}),validateCouponCode:t.mutation({query:e=>({url:"/payment/validate-coupon",method:"POST",body:{...e}})}),changeSubcription:t.mutation({query:e=>({url:"payment/change-subscription",method:"POST",body:{...e}}),invalidatesTags:["Company"]}),shopifySubscription:t.mutation({query:e=>({url:"/integrations/shopify/subscription/create",method:"POST",body:{...e}}),invalidatesTags:["Company"]}),cancelShopifySubscription:t.mutation({query:e=>({url:"/integrations/shopify/subscription/cancel",method:"POST",body:{companyId:e}}),invalidatesTags:["Company"]}),buyAddon:t.mutation({query:e=>({url:"/payment/addon",method:"POST",body:{...e}}),invalidatesTags:["Company"]}),verifyConfirmationUrl:t.query({query:e=>({url:`/integrations/shopify/payment/verify/${e}`,method:"GET"})})})}),{useAddChargebeePaymentMethodMutation:aT,useStartSubscriptionMutation:rT,useGetPaymentLimitsQuery:Fg,useGetEventLimitsQuery:Ug,useValidateCouponCodeMutation:_2,useChangeSubcriptionMutation:sT,useShopifySubscriptionMutation:v2,useCancelShopifySubscriptionMutation:y2,useVerifyConfirmationUrlQuery:iT}=hs,cT={paymentLimits:null,eventLimits:null},lT=Vt({name:"limits",initialState:cT,reducers:{},extraReducers:t=>{t.addMatcher(hs.endpoints.getPaymentLimits.matchFulfilled,(e,n)=>{e.paymentLimits=n.payload.data}),t.addMatcher(hs.endpoints.getEventLimits.matchFulfilled,(e,n)=>{e.eventLimits=n.payload.data})}}),dT=lT.reducer,uT={resourceType:"Brand",resourceId:""},Vg=Vt({name:"brand",initialState:uT,reducers:{setBrand:(t,e)=>e.payload}}),{setBrand:b2}=Vg.actions,pT=Vg.reducer,$g={email:"email",sms:"sms",push:"push",whatsapp:"whatsapp",voice:"call"},mT=Object.fromEntries(Object.entries($g).map(([t,e])=>[e,t])),Bg=t=>$g[t],Gg=t=>mT[t],fT=t=>{const e={};return(t??[]).forEach(n=>{if(!n.enabled)return;if(n.channel==="voice"){n.tone&&n.voice&&(e.call={tone:n.tone,voice:n.voice});return}if(!n.provider)return;const o=Bg(n.channel);e[o]=n.provider}),e},gT=t=>{if(!t)return[];const e=[];return t.call&&e.push({channel:"voice",enabled:!0,provider:"vapi",tone:t.call.tone,voice:t.call.voice}),Object.keys(t).filter(n=>n!=="call"&&!!t[n]).forEach(n=>{e.push({channel:Gg(n),provider:t[n],enabled:!0})}),e},w2=t=>{const e={};return t.type!==void 0&&(e.type=t.type),t.name!==void 0&&(e.name=t.name),t.objective!==void 0&&(e.objective=t.objective),t.clusters!==void 0&&(e.clusters=t.clusters),t.type==="event"?("sql"in t&&(e.sql=t.sql??null),"triggerCondition"in t&&(e.triggerCondition=t.triggerCondition??null),t.sqlMode!==void 0&&(e.sqlMode=t.sqlMode)):t.triggerCondition!==void 0&&(e.triggerCondition=t.triggerCondition),t.locale!==void 0&&(e.locale=t.locale),"successCriteria"in t&&t.type==="event"&&(e.successCriteria=t.successCriteria??null),"context"in t&&(e.context={knowledgeBase:t.context?.knowledgeBase??[]}),t.channels!==void 0&&(e.channels=fT(t.channels)),e},hT=t=>{if(!(!Array.isArray(t)||t.length===0))return t.map(e=>{const n=e??{};return{productId:n.productId??n.id,name:n.name,description:n.description,price:n.price,currency:n.currency,image:n.image,link:n.link}})},_T=(t,e)=>{const n=e??{},o=hT(n.products);switch(t){case"email":return{channel:t,templateId:n.templateId,emailTemplateName:n.emailTemplateName,subject:n.subject??"",body:n.body??"",products:o};case"sms":return{channel:t,body:n.body??n.message??"",products:o};case"push":return{channel:t,title:n.title??"",body:n.body??"",link:n.link,imageUrl:n.image??n.imageUrl,...n.customData?{customData:n.customData}:{},...n.dataOnly!==void 0?{dataOnly:n.dataOnly}:{},...n.manualLinkAndImage!==void 0?{manualLinkAndImage:n.manualLinkAndImage}:{},products:o};case"voice":return{channel:t,firstMessage:n.firstMessage,systemPrompt:n.systemPrompt??n.content,voice:n.voice,tone:n.tone,products:o};case"whatsapp":return{channel:t,id:n.id,name:n.name,provider:n.provider,body:n.body,hasVariables:n.hasVariables,variablesComplete:n.variablesComplete,variables:n.variables,products:o}}},vT=t=>
232{const e={id:t.id,label:t.label,purpose:t.purpose,target:t.target,locale:t.locale};if(t.type==="communication"){const n=Gg(t.channel??"email"),o=t.contentGenerationMode??"autonomous",a=Array.isArray(t.productIds)&&t.productIds.length>0;return{...e,type:"communication",channel:n,provider:t.provider,productIds:a?t.productIds:o==="autonomous"?["*"]:[],contentGenerationMode:o,language:t.locale,content:_T(n,t.content),productsInfo:t.productsInfo}}return t.type==="delay"?{...e,type:"delay",delayTime:t.delayTime}:t.type==="condition"?{...e,type:"condition",expressions:t.expressions}:{...e,type:"exit"}},yT=(t,e)=>{const n=new Map((e??[]).filter(o=>o.enabled&&o.channel!=="voice"&&o.provider).map(o=>[o.channel,o.provider]));return t.map(o=>o.type==="communication"&&n.has(o.channel)?{...o,provider:n.get(o.channel)}:o)},x2=t=>{const e={id:t.id,label:t.label??"",purpose:t.purpose??"",target:t.target??[],locale:t.locale??"en-US"};return t.type==="communication"?{...e,type:"communication",channel:Bg(t.channel),provider:t.provider,productIds:t.productIds,contentGenerationMode:t.contentGenerationMode,content:t.content}:t.type==="delay"?{...e,type:"delay",delayTime:t.delayTime}:t.type==="condition"?{...e,type:"condition",expressions:t.expressions}:{...e,type:"exit"}},C2=(t,e)=>{const n={mode:t.contentGenerationMode};t.channel!=="whatsapp"&&(t.contentGenerationMode==="autonomous"?t.productIds.length>0&&(n.productIds=t.productIds):n.productIds=[]);const o=t.content;switch(o.channel){case"email":o.templateId&&o.subject&&o.body&&(n.template={templateId:o.templateId,templateType:"custom"},n.emailContent={subject:o.subject,body:o.body});break;case"sms":o.body&&(n.smsContent={message:o.body});break;case"push":o.title&&o.body&&(n.pushContent={title:o.title,body:o.body,link:o.link,imageUrl:o.imageUrl,...o.customData&&Object.keys(o.customData).length>0?{customData:o.customData}:{},...o.dataOnly?{dataOnly:o.dataOnly}:{},...o.manualLinkAndImage!==void 0?{manualLinkAndImage:o.manualLinkAndImage}:{}});break;case"voice":{const a=e.channels?.find(m=>m.channel==="voice"),r=o.firstMessage??"",i=o.systemPrompt??o.script??"",l=o.voice??a?.voice??"",d=o.tone??a?.tone??"",u=t.locale??e.locale??"";r&&i&&l&&d&&u&&(n.callContent={firstMessage:r,systemPrompt:i,voice:l,tone:d,language:u});break}case"whatsapp":o.id&&o.name&&o.provider&&(n.whatsappContent={id:o.id,name:o.name,provider:o.provider,hasVariables:!!o.hasVariables,variablesComplete:!!o.variablesComplete,variables:o.variables});break}return n},S2=t=>({_id:t._id,resourceId:t.resourceId,companyId:t.companyId,status:t.status,createdAt:t.createdAt,updatedAt:t.updatedAt,name:t.name??`Untitled campaign ${new Date().toLocaleDateString()}`,type:t.type,objective:t.objective,triggerCondition:t.triggerCondition,sql:t.sql,sqlMode:t.sqlMode,clusters:t.clusters,context:t.context,channels:gT(t.channels),locale:t.locale,discountConfigId:t.discountConfigId,successCriteria:t.successCriteria,workflow:t.workflow?{nodes:t.workflow.nodes.map(vT)}:void 0,aiPrompts:t.aiPrompts}),fl={activeTab:"configuration",draft:{},channelSelections:[],isNodeDrawerOpen:!1,refinePromptOpen:!1,refinePromptDraft:"",dirtyTabs:{configuration:!1,channels:!1,content:!1},workflowGeneratedOnce:!1,hasManualEdits:!1,productSeeds:[],audienceSeeds:{}},qg=Vt({name:"campaignBuilder",initialState:fl,reducers:{setActiveTab:(t,{payload:e})=>{t.activeTab=e},setCampaignId:(t,{payload:e})=>{t.campaignId=e},hydrateDraft:(t,{payload:e})=>{t.draft=e.workflow?{...e,workflow:{...e.workflow,nodes:yT(e.workflow.nodes,e.channels)}}:e,t.channelSelections=e.channels??[],t.hydratedCampaignId=e.resourceId,t.campaignId=e.resourceId,t.workflowGeneratedOnce=(e.workflow?.nodes?.length??0)>0,t.workflowChannelsSnapshot=JSON.stringify(e.channels??[])},patchDraft:(t,{payload:e})=>{t.draft={...t.draft,...e}},updateWorkflowNode:(t,{payload:e})=>{t.draft.workflow&&(t.draft.workflow.nodes=t.draft.workflow.nodes.map(n=>n.id===e.id?e:n))},setChannelSelections:(t,{payload:e})=>{t.channelSelections=e,t.draft.channels=e},selectNode:(t,{payload:e})=>{t.selectedNodeId=e,t.isNodeDrawerOpen=!0},closeNodeDrawer:t=>{t.isNodeDrawerOpen=!1,t.selectedNodeId=void 0},setRefinePromptOpen:(t,{payload:e})=>{t.refinePromptOpen=e},setRefinePromptDraft:(t,{payload:e})=>{t.refinePromptDraft=e},markTabDirty:(t,{payload:e})=>{t.dirtyTabs[e.tab]=e.dirty},setSavingTab:(t,{payload:e})=>{t.savingTab=e},setWorkflowGeneratedOnce:(t,{payload:e})=>{t.workflowGeneratedOnce=e},setWorkflowChannelsSnapshot:(t,{payload:e})=>{t.workflowChannelsSnapshot=e},setHasManualEdits:(t,{payload:e})=>{t.hasManualEdits=e},setOpenModal:(t,{payload:e})=>{t.openModal=e},setProductSeeds:(t,{payload:e})=>{t.productSeeds=e},addAudienceSeed:(t,{payload:e})=>{t.audienceSeeds[e.id]=e},resetBuilder:()=>fl}}),{setActiveTab:k2,setCampaignId:P2,hydrateDraft:E2,patchDraft:I2,updateWorkflowNode:T2,setChannelSelections:A2,selectNode:R2,closeNodeDrawer:M2,setRefinePromptOpen:N2,setRefinePromptDraft:O2,markTabDirty:j2,setSavingTab:D2,setWorkflowGeneratedOnce:L2,setWorkflowChannelsSnapshot:F2,setHasManualEdits:U2,setOpenModal:V2,setProductSeeds:$2,addAudienceSeed:B2,resetBuilder:G2}=qg.actions,bT=qg.reducer,wT=[],Wg=Vt({name:"integrations",initialState:wT,reducers:{setIntegrations:(t,e)=>e.payload}}),{setIntegrations:xT}=Wg.actions,CT=Wg.reducer,ST={resourceId:"",name:"",email:"",profilePhoto:"",isActive:!1,isEmailVerified:!1,isActivatedByAdmin:!1,isSqlEditor:!1,createdAt:"",updatedAt:""},xr={resourceId:"",name:"",industry:"",website:"",country:"",status:"email-verified",onboardingFlags:{hasCompletedOnboardingTour:!1,shopifyFirstTimePopup:!0},hasAgreedToTermsAndConditions:!1,settings:{accountActivated:!1,senderProfile:{cartPath:"",brandColor:"",logoImage:"",heroBanner:"",footerBanner:"",address:"",tagline:"",socialLinks:{facebook:null,twitter:null,instagram:null,linkedin:null,tiktok:null,youtube:null},navigationLinks:[]},contentLanguage:"",voiceConfig:{voice:"",tone:""},idleDetection:{enabled:!1,expeditedProcessing:!1}},createdAt:"",updatedAt:"",user:ST},zg=Vt({name:"companyV2",initialState:xr,reducers:{setCompany:(t,e)=>e.payload,clearCompany:()=>xr},extraReducers:t=>{t.addCase(ua,()=>xr)}}),{setCompany:Cr,clearCompany:q2}=zg.actions,kT=zg.reducer,PT=[],Hg=Vt({name:"integrationsV2",initialState:PT,reducers:{setIntegrations:(t,e)=>e.payload}}),{setIntegrations:W2}=Hg.actions,ET=Hg.reducer,gl=bh({[mo.reducerPath]:mo.reducer,[Xt.reducerPath]:Xt.reducer,integrations:CT,integrationsV2:ET,authV2:XI,companyV2:kT,brand:pT,campaignBuilder:bT,app:nT,limits:dT}),IT=(t,e)=>e.type==="store/reset"?gl(void 0,e):gl(t,e),TT={key:"root",version:1,storage:Th,whitelist:["authV2","companyV2","app"],blackl
232ist:["api"],throttle:1e3},AT=Ih(TT,IT),Kg=wh({reducer:AT,devTools:!1,middleware:t=>t({serializableCheck:{ignoredActions:[Ch,ws,Sh,kh,Ph,Eh]}}).concat(mo.middleware,Xt.middleware)}),_s=xh(Kg);var Wo={};/*! 233 * cookie 234 * Copyright(c) 2012-2014 Roman Shtylman 235 * Copyright(c) 2015 Douglas Christopher Wilson 236 * MIT Licensed 237 */var hl;function RT(){if(hl)return Wo;hl=1,Wo.parse=i,Wo.serialize=u;var t=Object.prototype.toString,e=Object.prototype.hasOwnProperty,n=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,o=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,a=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,r=/^[\u0020-\u003A\u003D-\u007E]*$/;function i(g,h){if(typeof g!="string")throw new TypeError("argument str must be a string");var _={},v=g.length;if(v<2)return _;var x=h&&h.decode||m,w=0,y=0,b=0;do{if(y=g.indexOf("=",w),y===-1)break;if(b=g.indexOf(";",w),b===-1)b=v;else if(y>b){w=g.lastIndexOf(";",y-1)+1;continue}var S=l(g,w,y),C=d(g,y,S),P=g.slice(S,C);if(!e.call(_,P)){var T=l(g,y+1,b),A=d(g,b,T);g.charCodeAt(T)===34&&g.charCodeAt(A-1)===34&&(T++,A--);var R=g.slice(T,A);_[P]=f(R,x)}w=b+1}while(w<v);return _}function l(g,h,_){do{var v=g.charCodeAt(h);if(v!==32&&v!==9)return h}while(++h<_);return _}function d(g,h,_){for(;h>_;){var v=g.charCodeAt(--h);if(v!==32&&v!==9)return h+1}return _}function u(g,h,_){var v=_&&_.encode||encodeURIComponent;if(typeof v!="function")throw new TypeError("option encode is invalid");if(!n.test(g))throw new TypeError("argument name is invalid");var x=v(h);if(!o.test(x))throw new TypeError("argument val is invalid");var w=g+"="+x;if(!_)return w;if(_.maxAge!=null){var y=Math.floor(_.maxAge);if(!isFinite(y))throw new TypeError("option maxAge is invalid");w+="; Max-Age="+y}if(_.domain){if(!a.test(_.domain))throw new TypeError("option domain is invalid");w+="; Domain="+_.domain}if(_.path){if(!r.test(_.path))throw new TypeError("option path is invalid");w+="; Path="+_.path}if(_.expires){var b=_.expires;if(!p(b)||isNaN(b.valueOf()))throw new TypeError("option expires is invali
237d");w+="; Expires="+b.toUTCString()}if(_.httpOnly&&(w+="; HttpOnly"),_.secure&&(w+="; Secure"),_.partitioned&&(w+="; Partitioned"),_.priority){var S=typeof _.priority=="string"?_.priority.toLowerCase():_.priority;switch(S){case"low":w+="; Priority=Low";break;case"medium":w+="; Priority=Medium";break;case"high":w+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(_.sameSite){var C=typeof _.sameSite=="string"?_.sameSite.toLowerCase():_.sameSite;switch(C){case!0:w+="; SameSite=Strict";break;case"lax":w+="; SameSite=Lax";break;case"strict":w+="; SameSite=Strict";break;case"none":w+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return w}function m(g){return g.indexOf("%")!==-1?decodeURIComponent(g):g}function p(g){return t.call(g)==="[object Date]"}function f(g,h){try{return h(g)}catch{return g}}return Wo}var ta=RT();function MT(){const t=typeof window>"u"?void 0:window.TEST_HAS_DOCUMENT_COOKIE;return typeof t=="boolean"?t:typeof document=="object"&&typeof document.cookie=="string"}function NT(t){return typeof t=="string"?ta.parse(t):typeof t=="object"&&t!==null?t:{}}function Sr(t,e={}){const n=OT(t);if(!e.doNotParse)try{return JSON.parse(n)}catch{}return t}function OT(t){return t&&t[0]==="j"&&t[1]===":"?t.substr(2):t}class qn{constructor(e,n={}){this.changeListeners=[],this.HAS_DOCUMENT_COOKIE=!1,this.update=()=>{if(!this.HAS_DOCUMENT_COOKIE)return;const a=this.cookies;this.cookies=ta.parse(document.cookie),this._checkChanges(a)};const o=typeof document>"u"?"":document.cookie;this.cookies=NT(e||o),this.defaultSetOptions=n,this.HAS_DOCUMENT_COOKIE=MT()}_emitChange(e){for(let n=0;n<this.changeListeners.length;++n)this.changeListeners[n](e)}_checkChanges(e){new Set(Object.keys(e).concat(Object.keys(this.cookies))).forEach(o=>{e[o]!==this.cookies[o]&&this._emitChange({name:o,value:Sr(this.cookies[o])})})}_startPolling(){this.pollingInterval=setInterval(this.update,300)}_stopPolling(){this.pollingInterval&&clearInterval(this.pollingInterval)}get(e,n={}){return n.doNotUpdate||this.update(),Sr(this.cookies[e],n)}getAll(e={}){e.doNotUpdate||this.update();const n={};for(let o in this.cookies)n[o]=Sr(this.cookies[o],e);return n}set(e,n,o){o?o=Object.assign(Object.assign({},this.defaultSetOptions),o):o=this.defaultSetOptions;const a=typeof n=="string"?n:JSON.stringify(n);this.cookies=Object.assign(Object.assign({},this.cookies),{[e]:a}),this.HAS_DOCUMENT_COOKIE&&(document.cookie=ta.serialize(e,a,o)),this._emitChange({name:e,value:n,options:o})}remove(e,n){const o=n=Object.assign(Object.assign(Object.assign({},this.defaultSetOptions),n),{expires:new Date(1970,1,1,0,0,1),maxAge:0});this.cookies=Object.assign({},this.cookies),delete this.cookies[e],this.HAS_DOCUMENT_COOKIE&&(document.cookie=ta.serialize(e,"",o)),this._emitChange({name:e,value:void 0,options:n})}addChangeListener(e){this.changeListeners.push(e),this.HAS_DOCUMENT_COOKIE&&this.changeListeners.length===1&&(typeof window=="object"&&"cookieStore"in window?window.cookieStore.addEventListener("change",this.update):this._startPolling())}removeChangeListener(e){const n=this.changeListeners.indexOf(e);n>=0&&this.changeListeners.splice(n,1),this.HAS_DOCUMENT_COOKIE&&this.changeListeners.length===0&&(typeof window=="object"&&"cookieStore"in window?window.cookieStore.removeEventListener("change",this.update):this._stopPolling())}}const _l=t=>t===!0||t==="true",Yg=(t,e=null,n=null,o=null,a,r=null)=>{const i=new qn,l=new Date(Date.now()+24*60*60*1e3);i.set("sallaStoreDomain",t,{expires:l,sameSite:"strict",path:"/"}),i.set("sallaFlow",e,{expires:l,sameSite:"strict",path:"/"}),i.set("sallaExistingAccount",n,{expires:l,sameSite:"strict",path:"/"}),i.set("sallaEmail",o,{expires:l,sameSite:"strict",path:"/"}),i.set("sallaSuccess",a,{expires:l,sameSite:"strict",path:"/"}),i.set("sallaMessage",r,{expires:l,sameSite:"strict",path:"/"})},pa=()=>{const t=new qn,e=t.get("sallaStoreDomain")||null,n=t.get("sallaFlow")||null,o=_l(t.get("sallaExistingAccount")),a=t.get("sallaEmail")||null,r=_l(t.get("sallaSuccess")),i=t.get("sallaMessage")||null;return{storeDomain:e,flow:n,existingAccount:o,email:a,success:r,message:i,isSalla:!!e}},ic=()=>
237{if(typeof document>"u")return;const t=["sallaStoreDomain","sallaFlow","sallaExistingAccount","sallaEmail","sallaSuccess","sallaMessage"],e=window.location.hostname,n=Array.from(new Set(["/",window.location.pathname])),o=Array.from(new Set(["",e,`.${e}`])),a="Thu, 01 Jan 1970 00:00:00 UTC";t.forEach(r=>{n.forEach(i=>{o.forEach(l=>{const d=l?`; domain=${l}`:"";document.cookie=`${r}=; expires=${a}; path=${i}${d}`})})})},jT=["utm_medium","utm_source","utm_campaign","utm_content","utm_term","campaign"];function zo(){if(typeof window>"u")return{};const t=new URLSearchParams(window.location.search),e={};for(const n of jT){const o=t.get(n);o!==null&&o.trim()!==""&&(e[n]=o)}return e}function je(t){if(t.success===!1)throw new Error(t.error.message);return t.data}const DT=Xt.injectEndpoints({endpoints:t=>({rotateAccessToken:t.mutation({query:({refreshToken:e})=>({url:"/auth/rotate-access-token",method:"POST",headers:{Authorization:`Bearer ${e}`}}),transformResponse:je}),login:t.mutation({query:({email:e,password:n})=>({url:"/auth/login",method:"POST",body:{email:e,password:n}}),transformResponse:je,async onQueryStarted(e,{dispatch:n,getState:o,queryFulfilled:a}){const{email:r,onLoading:i,onSuccess:l,onUnverified:d}=e;try{i?.(!0);const{data:u}=await a;if(!u.accessToken||!u.user)throw new Error("Invalid response from server");if(!u.user.isEmailVerified&&!u.user.companyId){n(nt(r)),d?.(),D.error(ve.t("messages.error.verify_email_first"));return}gt(u.accessToken,u.refreshToken,u.user),n(nt(r)),ft.identify(r,{email:r,name:u.user.name,user_id:u.user.id}),Yn(o(),He.AUTH.USER_SIGNED_IN,{user_id:r,email:r,signin_method:"email"}),l?.()}catch(u){D.error(de(u,"Failed to log in"),{id:"login-error"})}finally{i?.(!1)}}}),googleLogin:t.mutation({query:({credential:e})=>{const n=zo();return{url:"/auth/google/login",method:"POST",body:{credential:e,utmMedium:n.utm_medium,utmSource:n.utm_source,utmCampaign:n.utm_campaign,utmContent:n.utm_content,utmTerm:n.utm_term,campaign:n.campaign}}},transformResponse:je,async onQueryStarted({onLoading:e,onSuccess:n},{dispatch:o,getState:a,queryFulfilled:r}){try{e?.(!0);const{data:i}=await r;if(!i.accessToken||!i.user)throw new Error("Invalid response from server");gt(i.accessToken,i.refreshToken,i.user),o(nt(i.user.email)),ft.identify(i.user.email,{email:i.user.email,name:i.user.name,user_id:i.user.id}),Yn(a(),He.AUTH.USER_SIGNED_IN,{user_id:i.user.email,email:i.user.email,name:i.user.name,signin_method:"google"}),n?.(i.user.email)}catch(i){D.error(de(i,"Failed to sign in with Google"),{id:"google-signin-error"})}finally{e?.(!1)}}}),register:t.mutation({query:({userName:e,email:n,password:o,hasAgreedTermAndConditions:a,website:r})=>{const i=zo();return{url:"/auth/register",method:"POST",body:{userName:e,email:n,password:o,hasAgreedTermAndConditions:a,website:r,utmMedium:i.utm_medium,utmSource:i.utm_source,utmCampaign:i.utm_campaign,utmContent:i.utm_content,utmTerm:i.utm_term,campaign:i.campaign}}},transformResponse:je,async onQueryStarted({email:e,onLoading:n,onSuccess:o},{dispatch:a,queryFulfilled:r}){try{n?.(!0);const{data:i}=await r;a(nt(e)),D.success(i.message||ve.t("messages.success.verification_code_sent")),o?.()}catch(i){D.error(de(i,"Failed to create account"),{id:"register-error"})}finally{n?.(!1)}}}),resendVerificationLink:t.mutation({query:({email:e})=>({url:"/auth/resend-verification-link",method:"POST",body:{email:e}}),transformResponse:je,async onQueryStarted({onLoading:e,onSuccess:n},{queryFulfilled:o}){try{e?.(!0);const{data:a}=await o;D.success(a.message||ve.t("messages.success.verification_code_sent")),n?.()}catch(a){D.error(de(a,"Failed to resend verification email"),{id:"resend-verification-error"})}finally{e?.(!1)}}}),forgotPassword:t.mutation({query:({email:e})=>({url:"/auth/forgot-password",method:"POST",body:{email:e}}),transformResponse:je,async onQueryStarted({onLoading:e,onSuccess:n},{queryFulfilled:o}){try{e?.(!0);const{data:a}=await o;D.success(a.message||ve.t("messages.success.verification_code_sent")),n?.()}catch(a){D.error(de(a,"Failed to send reset email"))}finally{e?.(!1)}}}),resetPassword:t.mutation({query:({email:e,otp:n,newPassword:o})=>({url:"/auth/reset-password",method:"POST",body:{email:e,otp:n,newPassword:o}}),transformResponse:je,async onQueryStarted({onLoading:e},{queryFulfilled:n}){try{e?.(!0);const{data:o}=await n;D.success(o.message||ve.t("messages.success.password_reset"))}catch(o){throw D.error(de(o,"Failed to reset password")),o}finally{e?.(!1)}}}),logout:t.mutation({query:()=>({url:"/auth/logout",method:"POST"}),transformResponse:je,async onQueryStarted(e,{dispatch:n,queryFulfilled:o}){const a=D.loading(ve.t("messages.loading.logging_out"),{id:"logout-loading"});try{await o}catch{}ft?.reset(),await _s.purge(),po(),window.localStorage.clear(),window.sessionStorage.clear(),n(ua()),n({type:"store/reset"}),n(Xt.util.resetApiState()),D.dismiss(a),window.location.href="/login"}}),logoutAll:t.mutation({query:()=>({url:"/auth/logout-all",method:"POST"}),async onQueryStarted(e,{dispatch:n,queryFulfilled:o}){const a=D.loading(ve.t("messages.loading.logging_out_all_devices"),{id:"logout-all-loading"});try{await o}catch(r){throw D.dismiss(a),D.error(de(r,"Failed to log out of all devices"),{id:"logout-all-error"}),r}ft?.reset(),await _s.purge(),po(),window.localStorage.clear(),window.sessionStorage.clear(),n(ua()),n({type:"store/reset"}),n(Xt.util.resetApiState()),D.dismiss(a),D.success(ve.t("messages.success.logged_out_all_devices")),window.location.href="/login"}}),shopifyRegister:t.mutation({query:({userName:e,email:n,password:o,website:a,country:r,hasAgreedTermAndConditions:i,shopifyShop:l,installationId:d,isOauthInstallation:u})=>{const m=zo();return{url:"/auth/shopify/register",method:"POST",body:{userName:e,email:n,password:o,website:a,country:r,hasAgreedTermAndConditions:i,shopifyShop:l,installationId:d,isOauthInstallation:u,utmMedium:m.utm_medium,utmSource:m.utm_source,utmCampaign:m.utm_campaign,utmContent:m.utm_content,utmTerm:m.utm_term,campaign:m.campaign}}},transformResponse:je,async onQueryStarted({onLoading:e,onSuccess:n},{dispatch:o,getState:a,queryFulfilled:r}){try{e?.(!0);const{data:i}=await r,{auth:l,integration:d}=i;if(!l?.accessToken||!l?.user)throw new Error("Invalid response from server");gt(l.accessToken,l.refreshToken,l.user),o(nt(l.user.email)),ft.identify(l.user.email,{email:l.user.email,name:l.user.name,user_id:l.user.id}),Yn(a(),He.AUTH.USER_SIGNED_UP,{user_id:l.user.email,email:l.user.email,name:l.user.name,signup_method:"shopify"}),Yn(a(),He.AUTH.BUSINESS_INFO_VERIFIED_SHOPIFY,{email:l.user.email,name:l.user.name,page:"/signup",shop_country_code:d.countryCode,shop_country_name:d.countryName,shop_owner_name:d.ownerName,shopify_store_url:d.shop}),D.success(ve.t("messages.success.shopify_signup_successful","SignUp successful. Welcome to Markopolo AI!"),{id:"shopify-signup-success"}),n?.(l.user.id)}catch(i){D.error(de(i,"Failed to sign up with Shopify"),{id:"shopify-signup-error"})}finally{e?.(!1)}}}),sallaRegister:t.mutation({query:({userName:e,email:n,password:o,website:a,storeDomain:r,hasAgreedTermAndConditions:i})=>{const l=zo();return{url:"/auth/salla/register",method:"POST",body:{userName:e,email:n,password:o,website:a,storeDomain:r,hasAgreedTermAndConditions:i,utmMedium:l.utm_medium,utmSource:l.utm_source,utmCampaign:l.utm_campaign,utmContent:l.utm_content,utmTerm:l.utm_term,campaign:l.campaign}}},transformResponse:je,async onQueryStarted({onLoading:e,onSuccess:n},{dispatch:o,getState:a,queryFulfilled:r}){try{e?.(!0);const{data:i}=await r,{auth:l}=i;if(!l?.accessToken||!l?.user)throw new Error("Invalid response from server");gt(l.accessToken,l.refreshToken,l.user),ic(),o(nt(l.user.email)),ft.identify(l.user.email,{email:l.user.email,name:l.user.name,user_id:l.user.id}),Yn(a(),He.AUTH.USER_SIGNED_UP,{user_id:l.user.email,email:l.user.email,name:l.user.name,signup_method:"salla"}),D.success(ve.t("messages.success.salla_signup_successful","Sign up successful. Welcome!"),{id:"salla-signup-success"}),n?.(l.user.id)}catch(i){D.error(de(i,"Failed to sign up with Salla"),{id:"salla-signup-error"})}finally{e?.(!1)}}})})}),{useLoginMutation:z2,useGoogleLoginMutation:H2,useRegisterMutation:K2,useResendVerificationLinkMutation:Y2,useForgotPasswordMutation:X2,useResetPasswordMutation:Q2,useLogoutMutation:cc,useLogoutAllMutation:Z2,useShopifyRegisterMutation:J2,useSallaRegisterMutation:e3}=DT,LT=()=>{const{t}
237=St(),e=me(r=>r.companyV2),n=Ut(),[o]=cc(),a=async()=>{await o().unwrap()};return s.jsxs(ze,{children:[s.jsx(ze.Trigger,{asChild:!0,children:s.jsx(wt,{variant:"ghost",size:"icon",className:"h-8 w-8 rounded-full focus-visible:ring-2 focus-visible:ring-border",children:s.jsxs(ot,{className:"h-8 w-8",children:[s.jsx(ot.Image,{src:e?.user?.profilePhoto||gs,alt:e?.user?.name}),s.jsx(ot.Fallback,{children:e?.user?.name?.charAt(0)||"U"})]})})}),s.jsxs(ze.Content,{className:"w-60 border-border/60",align:"end",sideOffset:8,children:[s.jsxs(ze.Label,{className:"flex gap-3 p-3",children:[s.jsxs(ot,{className:"h-10 w-10 flex-none",children:[s.jsx(ot.Image,{src:e?.user?.profilePhoto||gs,alt:e?.user?.name}),s.jsx(ot.Fallback,{children:e?.user?.name?.charAt(0)||"U"})]}),s.jsxs("div",{className:"grid text-sm font-semibold leading-5 text-foreground",children:[s.jsx("p",{className:"truncate",children:e?.user?.name}),s.jsx("p",{className:"truncate font-normal text-muted-foreground",children:e?.user?.email})]})]}),s.jsx(ze.Separator,{}),s.jsxs(ze.Item,{onClick:()=>n("/settings"),className:"cursor-pointer",children:[s.jsx(NP,{className:"mr-2 h-4 w-4"}),s.jsx("span",{children:t("navigation.nav_settings")})]}),s.jsxs(ze.Item,{onClick:a,className:"cursor-pointer",children:[s.jsx(Cg,{className:"mr-2 h-3 w-3"}),s.jsx("span",{children:t("navigation.nav_logout")})]})]})]})},FT="/assets/YawarMehboob-DqXh4BG9.png",UT="https://app.cal.com/embed/embed.js",Xg=()=>{if(window.Cal)return;const t=function(...e){const n=t;if(!n.loaded){n.ns={},n.q=n.q||[];const o=document.createElement("script");o.src=UT,document.head.appendChild(o),n.loaded=!0}if(e[0]==="init"){const o=e[1];if(typeof o=="string"){const a=(()=>{const r=(...i)=>r.q.push(i);return r.q=[],r})();n.ns[o]=n.ns[o]||a,n.q.push(e);return}n.q.push(e);return}n.q.push(e)};window.Cal=t,window.Cal("init",{origin:"https://cal.com"})},VT=t=>{try{return new URL(t).pathname.replace(/^\/+/,"")}catch{return t.replace(/^https?:\/\/(app\.)?cal\.com\/+/,"")}},$T={dark:{"cal-bg":"#0a0a0a","cal-bg-emphasis":"#151515","cal-border":"#262626","cal-text":"#f4f4f5","cal-brand":"#D8FE91"}},BT=(t,e)=>{Xg(),window.Cal?.("inline",{elementOrSelector:t,calLink:`${VT(e)}?theme=dark`,config:{layout:"month_view",theme:"dark"}}),window.Cal?.("ui",{theme:"dark",cssVarsPerTheme:$T})},GT="https://cal.com/team/markopolo-ai-product-specialists/product-intro-q-a";let vl=!1;const qT=t=>{vl||(vl=!0,Xg(),window.Cal?.("on",{action:"bookingSuccessful",callback:t}))},WT=({calUrl:t,bookingContext:e})=>{const{t:n}=St(),o=c.useRef(null),a=sc();return c.useEffect(()=>{if(o.current){for(qT(()=>a(He.AUTH.SIGN_UP_BOOKING_CONFIRMATION,{bookingContext:e}));o.current.firstChild;)o.current.removeChild(o.current.firstChild);return BT(o.current,t),()=>{if(o.current)for(;o.current.firstChild;)o.current.removeChild(o.current.firstChild)}}},[t]),s.jsxs(Ee,{gap:24,className:"px-8 pt-12 pb-8",children:[s.jsxs(Ee,{gap:16,children:[s.jsx(Io.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{duration:.5,ease:"easeInOut"},children:s.jsx(ae,{size:"36px",weight:"normal",className:"text-foreground font-title",children:n("demo_modal.title","Talk to Sales")})}),s.jsxs(Ge,{gap:16,align:"center",children:[s.jsx("span",{className:"",children:s.jsx(PP,{size:16,color:"#FAFAFA"})}),s.jsx(Io.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{duration:.5,ease:"easeInOut"},children:s.jsx(ae,{size:"16px",className:"text-muted-foreground",weight:400,children:n("demo_modal.feature_one","Learn how Markopolo can recover 30% of your abandoned revenue with Al-powered customer journeys and multi-channel retargeting.")})})]}),s.jsxs(Ge,{gap:16,align:"center",children:[s.jsx("span",{children:s.jsx(jP,{size:16,color:"#FAFAFA"})}),s.jsx(Io.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{duration:.5,ease:"easeInOut"},children:s.jsx(ae,{size:"16px",className:"text-muted-foreground",weight:400,children:n("demo_modal.feature_two","Experience firsthand how our 384-dimensional behavioral analysis turns lost visitors into customers automatically.")})})]}),s.jsx("div",{className:"flex border border-white/10 w-full my-2"}),s.jsx(Io.div,{initial:{opacity:0,y:20}
237,animate:{opacity:1,y:0},transition:{duration:.5,ease:"easeInOut"},children:s.jsxs(Ge,{gap:8,align:"center",justify:"space-between",wrap:"wrap",children:[s.jsx(ae,{size:"14px",weight:400,className:"text-muted-foreground flex-1 min-w-0",children:n("demo_modal.testimonial_quote",`"In just one month, Markopolo's Al recovered $31,000+ in abandoned revenue - with zero manual work from our team."`)}),s.jsxs(Ge,{gap:8,align:"center",children:[s.jsx(ot,{src:FT,alt:"Yawar Mehboob"}),s.jsxs(Ee,{gap:2,children:[s.jsx(ae,{size:"14px",weight:"normal",className:"text-foreground",children:n("demo_modal.testimonial_name","Yawar Mehboob")}),s.jsx(ae,{size:"14px",weight:400,className:"text-muted-foreground",children:n("demo_modal.testimonial_role","Co-founder, Arogga")})]})]})]})})]}),s.jsx("div",{ref:o,style:{width:"100%",minHeight:"600px",backgroundColor:"#0A0A0A",colorScheme:"dark"},id:"markopolo-calcom-inline"})]})},zT=({showModal:t,setShowModal:e,calUrl:n,bookingContext:o})=>s.jsx(Ya,{closeOnEscape:!0,size:"2xl",style:{backgroundColor:"#0A0A0A",maxWidth:"1140px",width:"100%"},withNoHeader:!0,toggleFromOutside:t,setToggleFromOutside:e,withCustomClose:!0,body:()=>s.jsx(WT,{calUrl:n,bookingContext:o}),children:()=>s.jsx(s.Fragment,{})}),HT=400,Qg=c.createContext(void 0),Zg=()=>{const t=c.useContext(Qg);if(!t)throw new Error("useOnboardingTour must be used within OnboardingTourProvider");return t},yl={run:!1,stepIndex:0,tourActive:!1},KT=({children:t})=>{const e=qe(),[n,o]=c.useState(yl),a=c.useRef(!1),[r,i]=c.useState(!1),l=c.useRef(!1),d=c.useCallback(h=>{l.current=h,i(h)},[]),u=c.useCallback(()=>{o(h=>a.current||h.tourActive||l.current?h:{run:!1,stepIndex:0,tourActive:!0})},[]),m=c.useCallback(()=>{a.current=!0,o(yl)},[]),p=c.useCallback(h=>{o(_=>({..._,stepIndex:h}))},[]),f=c.useCallback(()=>{o(h=>h.run?{...h,run:!1}:h)},[]);c.useEffect(()=>{if(!n.tourActive||n.run)return;const h=setTimeout(()=>{o(_=>_.tourActive&&!_.run?{..._,run:!0}:_)},HT);return()=>clearTimeout(h)},[e.pathname,n.tourActive,n.run,n.stepIndex]);const g=c.useMemo(()=>({run:n.run,stepIndex:n.stepIndex,tourActive:n.tourActive,startTour:u,stopTour:m,setStepIndex:p,pauseTour:f,isBookingModalOpen:r,setBookingModalOpen:d}),[n.run,n.stepIndex,n.tourActive,u,m,p,f,r,d]);return s.jsx(Qg.Provider,{value:g,children:t})},YT=mo.injectEndpoints({endpoints:t=>({getIntegrations:t.query({query:e=>({url:"/integrations",method:"GET",params:{companyId:e}}),providesTags:["Integrations"],async onQueryStarted(e,{queryFulfilled:n,dispatch:o}){try{const a=await n;o(xT(a?.data?.data||[]))}catch(a){return a}}}),integrateGateway:t.mutation({invalidatesTags:["Integrations"],query:e=>({url:`/integrations/${e.category}/connect`,method:"POST",body:{...e.payload}}),transformErrorResponse(e){return e?.data},async onQueryStarted(e,{queryFulfilled:n}){try{const o=await n;e?.showSuccessToast!==!1&&D.success(o.data?.message||"Saved successfully!",{id:"integrate-gateway-success"})}catch(o){return D.error(de(o,"Failed to connect integration"),{id:"integrate-gateway-error"}),o}}}),disconnectIntegration:t.mutation({invalidatesTags:["Integrations","Company"],query:e=>({url:"/integrations/disconnect",method:"POST",body:{integrationId:e.integrationId,companyId:e.companyId}}),async onQueryStarted(e,{queryFulfilled:n}){try{const o=await n;D.success(o.data?.message||"Disconnected gateway!",{id:"disconnect-gateway-success"})}catch(o){return D.error(de(o,"Failed to disconnect integration"),{id:"disconnect-gateway-error"}),o}}}),disconnectSalla:t.mutation({invalidatesTags:["Integrations","Company"],query:e=>({url:"/integrations/salla/disconnect",method:"POST",body:{integrationId:e.integrationId,companyId:e.companyId}}),async onQueryStarted(e,{queryFulfilled:n}){try{const o=await n;D.success(o.data?.message||"Disconnected gateway!",{id:"disconnect-gateway-success"})}catch(o){return D.error(de(o,"Failed to disconnect integration"),{id:"disconnect-gateway-error"}),o}}}),addAccounts:t.mutation({invalidatesTags:["Integrations"],query:e=>({url:`integrations/${e.category}/account`,method:"POST",body:{...e.payload}}),transformErrorResponse(e){return e?.data},async onQueryStarted(e,{queryFulfilled:n}){try{const o=await n;return D.success(o.data?.message||"Saved successfully!",{id:"add-accounts-success"}),o?.data}catch(o){return D.error(de(o,"Failed to connect integration"),{id:"add-accounts-error"}),o}}}),getWhatsAppNumbers:t.query({query:e=>({url:"/integrations/whatsapp/numbers-and-templates",method:"GET",params:{companyId:e}})}),initWhatsAppIntegration:t.mutation({query:e=>({url:"/integrations/whatsapp/messaging/setup-direct-webhook",method:"POST",body:{...e}}),invalidatesTags:["Integrations"],async onQueryStarted(e,{queryFulfilled:n}){try{const o=await n;D.success(o.data?.message||"WhatsApp integration setup successfully!",{id:"whatsapp-integration-success"})}catch(o){D.error(de(o,"Failed to connect integration"),{id:"whatsapp-integration-error",duration:5e3})}}}),integrateShopify:t.mutation({query:e=>({url:"/integrations/shopify/connect",method:"POST",body:{...e}}),invalidatesTags:["Integrations","Company"]}),connectSalla:t.mutation({query:()=>({url:"/integrations/salla/connect",method:"POST"}),invalidatesTags:["Integrations","Company"],transformErrorResponse(e){return e?.data}}),completeSallaIntegration:t.mutation({query:e=>({url:"/integrations/salla/complete-integration",method:"POST",body:e}),invalidatesTags:["Integrations","Company"]}),createWhatsAppTemplate:t.mutation({query:e=>({url:"/integrations/whatsapp/templates",method:"POST",body:e}),invalidatesTags:["Integrations"],async onQueryStarted(e,{queryFulfilled:n}){try{await n,D.success("Template created and sent for approval",{id:"whatsapp-template-create-success"})}catch(o){D.error(de(o,"Failed to update integration"),{id:"whatsapp-template-create-error"})}}}),updateWhatsAppTemplate:t.mutation({query:({templateId:e,...n})=>({url:`/integrations/whatsapp/templates/${e}`,method:"PUT",body:n}),invalidatesTags:["Integrations"],async onQueryStarted(e,{queryFulfilled:n}){try{await n,D.success("Template updated successfully",{id:"whatsapp-template-update-success"})}catch(o){D.error(de(o,"Failed to update integration"),{id:"whatsapp-template-update-error"})}}}),deleteWhatsAppTemplate:t.mutation({query:({templateId:e,companyId:n})=>({url:`/integrations/whatsapp/templates/${e}`,method:"DELETE",body:{companyId:n}}),invalidatesTags:["Integrations"],async onQueryStarted(e,{queryFulfilled:n}){try{await n,D.success("Template deleted successfully",{id:"whatsapp-template-delete-success"})}catch(o){D.error(de(o,"Failed to update integration"),{id:"whatsapp-template-delete-error"})}}}),requestWhatsAppTemplateApproval:t.mutation({query:({templateId:e,companyId:n})=>({url:`/integrations/whatsapp/templates/${e}/approve`,method:"POST",body:{companyId:n}}),invalidatesTags:["Integrations"],async onQueryStarted(e,{queryFulfilled:n}){try{await n,D.success("Template submitted for approval",{id:"whatsapp-template-approve-success"})}catch(o){D.error(de(o,"Failed to update integration"),{id:"whatsapp-template-approve-error"})}}}),getShopifyStatus:t.query({query:e=>({url:"/integrations/shopify/status",method:"GET",params:{companyId:e}}),providesTags:["Integrations"]}),syncShopifyProducts:t.mutation({query:e=>({url:"/integrations/shopify/sync-products",method:"POST",body:e}),invalidatesTags:["KnowledgeBase"],async onQueryStarted(e,{queryFulfilled:n}){try{await n,D.success("Shopify products sync initiated successfully!",{id:"shopify-products-sync-success"})}catch(o){return D.error(de(o,"Failed to load integration data"),{id:"shopify-products-sync-error"}),o}}}),dismissShopifyPopup:t.mutation({query:e=>({url:"/integrations/popup/dismiss",method:"POST",body:{companyId:e,popupType:"shopify"}}),invalidatesTags:["Company"]}),getWhatsAppBANumbers:t.query({query:e=>({url:"/whatsapp/phone-numbers",method:"GET",params:{companyId:e}})}),saveWhatsAppBANumbers:t.mutation({query:e=>({url:"/whatsapp/phone-numbers",method:"POST",body:{...e}}),invalidatesTags:["Integrations"]}),getWhatsAppBATemplates:t.query({query:e=>({url:"/whatsapp/templates",method:"GET",params:{companyId:e}})}),createWhatsAppBATemplate:t.mutation({query:e=>({url:"/whatsapp/templates",method:"POST",body:{...e}}),invalidatesTags:["Integrations"]}),checkAutosendUsername:t.mutation({query:e=>({url:"/integrations/email/autosend/check-username",method:"POST",body:{username:e.username}}),transformErrorResponse(e){return e?.data}}),integrateWoocommerce:t.mutation({query:e=>({url:"/integrations/woocommerce/connect",method:"POST",body:{...e}}),transformErrorResponse(e){return e?.data},invalidatesTags:["Integrations"]}),integrateWordpress:t.mutation({query:()=>({url:"/integrations/wordpress/connect",method:"POST"}),transformErrorResponse(e){return e?.data},invalidatesTags:["Integrations"]}),disconnectWordpress:t.mutation({query:()=>({url:"/integrations/wordpress/disconnect",method:"POST"}),transformErrorResponse(e){return e?.data},invalidatesTags:["Integrations"]}),integrateOdoo:t.mutation({query:e=>({url:"/integrations/odoo/connect",method:"POST",body:{...e}}),transformErrorResponse(e){return e?.data},invalidatesTags:["Integrations","Company"]}),disconnectOdoo:t.mutation({invalidatesTags:["Integrations","Company"],query:e=>({url:"/integrations/odoo/disconnect",method:"POST",body:{integrationId:e.integrationId,companyId:e.companyId}}),async onQueryStarted(e,{queryFulfilled:n}){try{const o=await n;D.success(o.data?.message||"Odoo disconnected!",{id:"disconnect-odoo-success"})}catch(o){return D.error(o?.error?.message||"Failed to disconnect Odoo!",{id:"disconnect-odoo-error"}),o}}}),initiateAirwallexOAuth:t.mutation({query:e=>({url:"/airwallex/oauth/initiate",method:"POST",body:{companyId:e.companyId,email:e.email,...e.redirectUri&&{redirectUri:e.redirectUri}}}),transformErrorResponse(e){return e?.data}}),disconnectAirwallexOAuth:t.mutation({query:e=>({url:"/airwallex/oauth/disconnect",method:"POST",body:{companyId:e.companyId}}),invalidatesTags:["Integrations"],async onQueryStarted(e,{queryFulfilled:n}){try{const o=await n;D.success(o.data?.message||"Airwallex disconnected",{id:"airwallex-disconnect-success"})}catch(o){return D.error(de(o,"Failed to disconnect integration"),{id:"airwallex-disconnect-error"}),o}}}),getPascalTrackingSnippet:t.query({query:e=>({url:"/pascal/tracking-snippet",method:"GET",params:{companyId:e}})})})}),{useIntegrateGatewayMutation:t3,useAddAccountsMutation:n3,useDisconnectIntegrationMutation:o3,useDisconnectSallaMutation:a3,useGetIntegrationsQuery:lc,useGetWhatsAppNumbersQuery:r3,useInitWhatsAppIntegrationMutation:s3,useCreateWhatsAppTemplateMutation:i3,useConnectSallaMutation:c3,useCompleteSallaIntegrationMutation:XT,useSyncShopifyProductsMutation:l3,useGetWhatsAppBANumbersQuery:d3,useSaveWhatsAppBANumbersMutation:u3,useGetWhatsAppBATemplatesQuery:p3,useCreateWhatsAppBATemplateMutation:m3,useDisconnectWordpressMutation:f3,useInitiateAirwallexOAuthMutation:g3,useDisconnectAirwallexOAuthMutation:h3,useGetPascalTrackingSnippetQuery:_3}=YT,Jg=()=>{const t=me(r=>r.companyV2?.user),e=me(r=>r.companyV2?.resourceId),{isUninitialized:n,isLoading:o}=lc(e,{skip:!e});return!e||!n&&!o?t?.isActivatedByAdmin===!1:!1},QT=()=>{const t=Jg();return{sideBarCategories:[{title:null,options:[{title:"home_page.dashboard",Icon:OP,to:"/",menuRegex:new RegExp(/^\/(agent-dashboard)?$/,"i"),dataTour:"dashboard",description:"navigation.nav_dashboard_description"}]},{title:"home_page.marktag",options:[{title:"navigation.nav_dataroom",Icon:kP,to:"/data-room",menuRegex:new RegExp(/^\/data-room/,"i"),dataTour:"data-room",locked:t,description:"navigation.nav_dataroom_description"},{title:"navigation.nav_memory",Icon:IP,to:"/memory",menuRegex:new RegExp(/^\/memory/,"i"),dataTour:"memory",locked:t,description:"navigation.nav_memory_description"},{title:"navigation.nav_analytics",Icon:wP,to:"/analytics",menuRegex:new RegExp(/^\/analytics/,"i"),dataTour:"analytics",locked:t,description:"navigation.nav_analytics_description"},{title:"navigation.nav_users",Icon:TP,to:"/leads",menuRegex:new RegExp(/^\/leads/,"i"),dataTour:"users",locked:t,description:"navigation.nav_users_description"}]},{title:"home_page.campaign_agent",options:[{title:"navigation.nav_campaigns",Icon:AP,to:"/campaigns",menuRegex:new RegExp(/^\/campaigns/,"i"),dataTour:"campaigns",locked:t,description:"navigation.nav_campaigns_description"},{title:"navigation.nav_content",Icon:SP,to:"/content",menuRegex:new RegExp(/^\/content/,"i"),dataTour:"content",locked:t,description:"navigation.nav_content_description"},{title:"navigation.nav_integrations",Icon:RP,to:"/integrations",menuRegex:new RegExp(/^\/integrations/,"i"),dataTour:"integrations",locked:t,description:"navigation.nav_integrations_description"}]},{title:"navigation.nav_others",options:[{title:"navigation.nav_plan_and_billing",Icon:xP,to:"/plan-and-billing",menuRegex:new RegExp(/^\/plan-and-billing/,"i"),locked:t,description:"navigation.nav_plan_and_billing_description"},{title:"navigation.nav_settings",Icon:MP,to:"/settings",menuRegex:new RegExp(/^\/settings/,"i"),dataTour:"settings",description:"navigation.nav_settings_description"},{title:"navigation.nav_support",Icon:EP,menuRegex:new RegExp(/^\/help/,"i"),onClick:async n=>{n.preventDefault();const{show:o}=await te(async()=>{const{show:a}=await import("./index-DAgIMRsK.js").then(r=>r.i);return{show:a}},__vite__mapDeps([0,1]));o()}}]}]}},ZT="nabiq-theme",JT=()=>{if(typeof window>"u")return"dark";const t=window.localStorage.getItem(ZT);return t==="dark"||t==="light"?t:"dark"},eA=({item:t,onLockedClick:e,tourActive:n})=>{const{pathname:o}=qe(),a=t?.menuRegex?.test(o),{t:r}=St(),i=t.locked&&!n,l=t.Icon,d=i?"rgb(var(--muted-foreground) / 0.4)":a?"rgb(var(--primary))":"rgb(var(--muted-foreground))",u=k("flex items-center gap-2 p-2 text-sm font-medium transition-colors no-u
237nderline hover:no-underline",i?"opacity-40 cursor-not-allowed text-foreground":k("hover:bg-accent/60",a?"bg-sidebar-ring text-primary border-r border-r-sidebar-border":"text-foreground"));if(i)return s.jsx("li",{children:s.jsx(ls,{delayDuration:300,children:s.jsxs(ds,{children:[s.jsx(us,{asChild:!0,children:s.jsxs("button",{type:"button",className:k(u,"w-full"),onClick:e,"data-tour":t.dataTour,children:[s.jsx("span",{className:"flex h-5 w-5 items-center justify-center",children:s.jsx(l,{size:20,color:d,fill:d,stroke:d})}),s.jsx("span",{children:r(t.title)})]})}),s.jsx(il,{children:s.jsxs(da,{side:"right",sideOffset:8,className:"z-[9999] overflow-hidden rounded-md bg-secondary px-3 py-1.5 text-sm text-secondary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=right]:slide-in-from-left-2 max-w-xs",children:[r("activation.locked_nav_tooltip","Book a meeting with our team to unlock this feature"),s.jsx(ps,{className:"fill-secondary"})]})})]})})});const m=!t.to||t.to==="#",p=s.jsxs(s.Fragment,{children:[s.jsx("span",{className:"flex h-5 w-5 items-center justify-center",children:s.jsx(l,{size:20,color:d,fill:d,stroke:d})}),s.jsx("span",{children:r(t.title)})]}),f=h=>{t?.onClick&&t?.onClick(h)},g=m?s.jsx("button",{type:"button",className:k(u,"w-full"),onClick:f,"data-tour":t.dataTour,children:p}):s.jsx(kl,{to:t.to,className:u,onClick:f,"data-tour":t.dataTour,children:p});return t.description?s.jsx("li",{children:s.jsx(ls,{delayDuration:1e3,children:s.jsxs(ds,{children:[s.jsx(us,{asChild:!0,children:g}),s.jsx(il,{children:s.jsxs(da,{side:"right",sideOffset:8,className:"z-[9999] overflow-hidden rounded-md bg-secondary px-3 py-1.5 text-sm text-secondary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=right]:slide-in-from-left-2 max-w-xs",children:[s.jsx("p",{className:"font-medium",children:r(t.title)}),s.jsx("p",{className:"text-muted-foreground",children:r(t.description)}),s.jsx(ps,{className:"fill-secondary"})]})})]})})}):s.jsx("li",{children:g})},tA=({showLogo:t=!0})=>{const{t:e}=St(),{sideBarCategories:n}=QT(),{tourActive:o}=Zg(),[a,r]=c.useState(()=>JT()),[i,l]=c.useState(!1),d=()=>{l(!0)};return s.jsxs(s.Fragment,{children:[s.jsx(zT,{showModal:i,setShowModal:l,calUrl:GT,bookingContext:"sidebar"}),s.jsx("div",{className:"app-sidebar h-full overflow-y-auto border-r border-border/60 bg-card pl-2 py-4 backdrop-blur-sm w-48",children:s.jsxs("div",{className:"flex h-full flex-col gap-2",children:[t&&s.jsx(kl,{to:"/",className:"pl-2.5 mb-3 block",children:s.jsx("img",{src:a==="dark"?Tg:Ag,alt:"Markopolo",className:"w-36"})}),s.jsxs(Ee,{gap:0,justify:"space-between",className:"h-full",children:[s.jsx("div",{className:"flex flex-col gap-2",children:n?.map((u,m)=>s.jsxs("div",{children:[u?.title&&s.jsx("p",{className:"p-2 text-sm font-normal text-muted-foreground",children:e(u?.title)}),s.jsx("div",{className:"flex-1",children:s.jsx("ul",{className:"flex flex-col gap-1",children:u?.options?.map((p,f)=>s.jsx(eA,{item:p,onLockedClick:d,tourActive:o},f))})})]},m))}),s.jsx(Ee,{gap:8,children:s.jsx(rA,{})})]})]})})]})},eh=t=>t(),dc=c.createContext({guardedAction:eh,registerGuardedAction:()=>{}}),nA=()=>{const[t,e]=c.useState(null),n=c.useCallback(o=>e(()=>o),[]);return c.useMemo(()=>({guardedAction:t??eh,registerGuardedAction:n}),[t,n])},oA=dc.Provider,aA=()=>c.useContext(dc).guardedAction,v3=t=>{const{registerGuardedAction:e}=c.useContext(dc);c.useEffect(()=>(e(t),()=>e(null)),[t,e])},rA=()=>{const{t}=St(),e=me(r=>r.companyV2),n=aA(),[o]=cc(),a=async()=>{await o().unwrap()};return s.jsxs(ze,{children:[s.jsx(ze.Trigger,{asChild:!0,className:"!w-11/12",children:s.jsxs(wt,{variant:"ghost",size:"icon",className:"h-12 w-full gap-2 rounded focus-visible:ring-2 focus-visible:ring-border flex items-center justify-center",children:[s.jsxs(ot,{className:"h-8 w-8",children:[s.jsx(ot.Image,{src:e?.user?.profilePhoto||gs,alt:ul(e?.user?.name)}),s.jsx(ot.Fallback,{children:ul(e?.user?.name)})]}),s.jsxs(Ee,{gap:0,className:"w-1/2",children:[s.jsx(ae,{weight:600,size:"sm",align:"left",color:"text-sidebar-foreground",className:"overflow-hidden text-ellipsis",children:e?.user?.name}),s.jsx(ae,{weight:400,size:"xs",align:"left",color:"text-sidebar-foreground",className:"overflow-hidden text-ellipsis",children:e?.user?.email})]}),s.jsx(Uh,{size:16})]})}),s.jsx(ze.Content,{className:"w-40 border-border/60",align:"start",sideOffset:8,side:"right",alignOffset:5,children:s.jsxs(ze.Item,{onClick:()=>n(a),className:"cursor-pointer",children:[s.jsx(Cg,{className:"mr-2 h-3 w-3"}),s.jsx("span",{children:t("navigation.nav_logout")})]})})]})},th="nabiq-theme",sA=()=>{if(typeof window>"u")return"dark";const t=window.localStorage.getItem(th);return t==="dark"||t==="light"?t:"dark"},iA=({showTopMenu:t=!1,showThemeToggle:e=!0,navigationController:n=null,className:o})=>{const[a,r]=c.useState(()=>sA());return c.useEffect(()=>{if(typeof window>"u")return;const i=document.documentElement;a==="dark"?i.classList.add("dark"):i.classList.remove("dark"),window.localStorage.setItem(th,a)},[a]),s.jsxs("div",{className:k("animate-in fade-in duration-500","fixed left-0 top-0 z-[10] flex h-14 w-screen items-center justify-between border-b border-border/60 bg-card/95 backdrop-blur-xl px-6",o),children:[s.jsxs(Ge,{gap:8,wrap:"nowrap",children:[n&&n,s.jsx(Ge,{gap:4,role:"link",onClick:()=>window.location.href="/",className:"cursor-pointer",wrap:"nowrap",children:s.jsx("img",{src:a==="dark"?Tg:Ag,alt:"Markopolo",className:"w-36"})})]}),s.jsx("div",{className:"flex items-center gap-2 w-44 justify-end",children:t&&s.jsx(LT,{})})]})},cA=Object.assign(fu,{Header:gu,Content:vu,Description:_u,Footer:yu,Title:hu});Object.assign(aP,{List:cg,Trigger:lg,Content:dg});const y3=Object.assign(hy,{Item:bd,Trigger:wd,Content:xd}),b3=Object.assign(Cd,{Description:Ns,Title:Ms}),ot=Object.assign(mu,{Image:Vs,Fallback:$s});
237Object.assign(Iu,{Close:Sw,Content:qs,Description:Nu,Footer:Ru,Header:Au,Overlay:Gs,Portal:Tu,Title:Mu,Trigger:Cw});Object.assign(qb,{Action:ru,Cancel:su,Content:eu,Description:au,Footer:nu,Header:tu,Overlay:Us,Portal:Jd,Title:ou,Trigger:Wb});const ze=Object.assign(qS,{CheckboxItem:lm,Content:im,Group:zS,Item:cm,Label:um,Portal:HS,RadioGroup:YS,RadioItem:dm,Separator:pm,Shortcut:mm,Sub:KS,SubContent:sm,SubTrigger:rm,Trigger:WS}),w3=Object.assign(hf,{Content:Mi,Ellipsis:Ni,Item:wn,Link:Yt,Next:gf,Previous:ff}),x3=Object.assign(U1,{Anchor:$1,Content:wf,Trigger:V1}),C3=Object.assign(Af,{Item:Rf}),S3=Object.assign(Wf,{Content:Wi,Group:Bk,Item:la,Label:Hf,ScrollDownButton:qi,ScrollUpButton:Gi,Separator:Kf,Trigger:Bi,Value:zf});Object.assign(Gk,{Close:Wk,Content:Xf,Description:eg,Footer:Zf,Header:Qf,Overlay:zi,Portal:Yf,Title:Jf,Trigger:qk});const k3=Object.assign(tg,{Body:Ki,Caption:og,Foot:ng,Head:Hi,Row:Yi,Th:Xi,Td:Qi}),P3=Hi,E3=Ki,I3=Yi,T3=Xi,A3=Qi,R3=Object.assign(wg,{Content:ac,Provider:yg,Trigger:bg});Object.assign(Ws,{Dialog:kw,Empty:Du,Group:Lu,Input:Ou,Item:Uu,List:ju,Separator:Fu,Shortcut:Vu});Object.assign(mS,{CheckboxItem:Gp,Content:$p,Group:gS,Item:Bp,Label:Wp,Portal:hS,RadioGroup:vS,RadioItem:qp,Separator:zp,Shortcut:Hp,Sub:_S,SubContent:Vp,SubTrigger:Up,Trigger:fS});Object.assign(i0,{Content:_m,Trigger:c0});Object.assign(jm,{CheckboxItem:$m,Content:Um,Group:D0,Item:Vm,Label:Gm,Menu:j0,Portal:L0,RadioGroup:U0,RadioItem:Bm,Separator:qm,Shortcut:Wm,Sub:F0,SubContent:Fm,SubTrigger:Lm,Trigger:Dm});Object.assign(lf,{Content:pf,Indicator:mf,Item:v1,Link:b1,List:df,Trigger:uf,Viewport:Ri});const lA=()=>{const t=Ut();return s.jsx("div",{className:"flex min-h-[50vh] items-center justify-center",children:s.jsxs(Ee,{gap:"lg",align:"center",className:"max-w-md px-4 text-center",children:[s.jsx(fs,{level:"h1",className:"text-8xl font-bold text-foreground",children:"404"}),s.jsxs(Ee,{gap:"sm",align:"center",children:[s.jsx(fs,{level:"h2",className:"text-2xl text-foreground",children:"Page Not Found"}),s.jsx(ae,{size:"lg",className:"text-muted-foreground",children:"Oops! The page you're looking for doesn't exist."})]}),s.jsx(wt,{onClick:()=>t("/"),className:"mt-4",children:"Go Home"})]})})};class nh extends c.Component{constructor(e){super(e),this.state={hasError:!1,error:null,isPreloadError:!1}}static getDerivedStateFromError(e){return{hasError:!0,error:e,isPreloadError:!1}}componentDidCatch(e,n){this.logError(e,n)}handlePreloadError=e=>{this.setState({isPreloadError:!0}),window.location.reload()};componentDidMount(){window.addEventListener("vite:preloadError",this.handlePreloadError)}componentWillUnmount(){window.removeEventListener("vite:preloadError",this.handlePreloadError)}logError(e,n){}render(){return this.state.hasError&&!this.state.isPreloadError?s.jsxs("div",{className:"text-center h-screen flex flex-col justify-center items-center gap-4 px-4",children:[s.jsx("h1",{className:"text-4xl font-semibold",children:"Something went wrong!"}),s.jsx("p",{className:"text-muted-foreground max-w-sm text-lg",children:"An unexpected error occurred. Reload the page â if the problem persists, contact support."}),!1,s.jsx("button",{className:"px-4 py-2 bg-primary text-primary-foreground rounded-md hover:bg-primary/90 transition-colors text-sm font-medium",onClick:()=>window.location.reload(),children:"Reload page"})]}):this.props.children}}const dA=t=>e=>s.jsx(nh,{children:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(t,{...e})})}),oh=[{slug:"setup",labelKey:"shopify_onboarding.stage.setup",labelDefault:"Shopify setup",captionKey:"shopify_onboarding.stage.setup_caption",captionDefault:"Automatic connection"},{slug:"opportunity",labelKey:"shopify_onboarding.stage.opportunity",labelDefault:"Opportunity",captionKey:"shopify_onboarding.stage.opportunity_caption",captionDefault:"See the problem in real data"},{slug:"agent-preview",labelKey:"shopify_onboarding.stage.agent_preview",labelDefault:"Agent preview",captionKey:"shopify_onboarding.stage.agent_preview_caption",captionDefault:"How your agent decides"},{slug:"review",labelKey:"shopify_onboarding.stage.review",labelDefault:"Review & activate",captionKey:"shopify_onboarding.stage.review_caption",captionDefault:"Turn on your agent"}],uA="/onboarding/shopify",pA="setup",M3=t=>!!t&&oh.some(e=>e.slug===t),N3=t=>oh.findIndex(e=>e.slug===t),O3={store_connected:{key:"shopify_onboarding.setup_task.store",label:"Store and products connected",detailKey:"shopify_onboarding.setup_task.store_detail",detail:"Catalog, currency and locale"}
237,products_synced:{key:"shopify_onboarding.setup_task.products",label:"Product catalog synced",detailKey:"shopify_onboarding.setup_task.products_detail",detail:"Titles, prices and images"},consent_checked:{key:"shopify_onboarding.setup_task.consent",label:"Customer consent rules synced",detailKey:"shopify_onboarding.setup_task.consent_detail",detail:"Email is used only where permission exists"},events_connected:{key:"shopify_onboarding.setup_task.events",label:"Storefront events activated",detailKey:"shopify_onboarding.setup_task.events_detail",detail:"Live signal from your storefront â no code needed"},opportunity_calculated:{key:"shopify_onboarding.setup_task.opportunity",label:"Recovery opportunity calculated",detailKey:"shopify_onboarding.setup_task.opportunity_detail",detail:"Abandoned carts and checkouts, last 30 days"},email_templates_ready:{key:"shopify_onboarding.setup_task.email_templates",label:"Email templates prepared",detailKey:"shopify_onboarding.setup_task.email_templates_detail",detail:"Personalized with your product catalog"}},j3=4,D3=18e4,L3=2500,F3={setup:"setup",opportunity:"setup","agent-preview":"email-review",review:"workflow-review"},mA=t=>{switch(t){case"email-review":return"agent-preview";case"workflow-review":return"review";case"launched":case"completed":return null;case"setup":default:return"setup"}},ah=t=>t==="launched"||t==="completed",fA=["setup","email-review","workflow-review","launched","completed"],U3=t=>t?fA.indexOf(t):-1,Wn=t=>t.integrations,rh=Mn([Wn,(t,e,n="single")=>({provider:e,mode:n})],(t,{provider:e,mode:n})=>{const o=a=>(e==="whatsapp"?a.integrationType==="whatsapp":a.provider===e)&&a.isConnected&&!a?.fallback;return n==="single"?t.find(o):t.filter(o)}),V3=Mn([Wn,(t,e)=>e],(t,e)=>t.find(n=>n.provider==="marktag"&&!n?.fallback&&(e==="client"?!!n?.marktag?.clientId:!n?.marktag?.clientId&&(!n?.isShopify||!n?.marktag?.isShopify)))),$3=Mn([Wn],t=>{const e=t.find(a=>a?.provider==="marktag"&&a?.dataSourceType==="MARKTAG"&&a?.integrationType==="dataSource"&&a?.fallback),n=t.find(a=>a.provider==="marktag"&&!a?.marktag?.clientId),o=t.find(a=>a.provider==="marktag"&&!!a?.marktag?.clientId);return e?.tagId||n?.tagId||o?.tagId||n?.resourceId||o?.resourceId}),B3=t=>t.companyV2?.resourceId,G3=Mn([Wn,(t,e)=>e],(t,e)=>t.filter(n=>n.integrationType===e&&!n?.fallback)),q3=Mn([Wn,(t,e)=>e],(t,e)=>t.filter(n=>n.integrationType===e&&n.isConnected&&!n?.fallback));Mn([Wn],t=>t.filter(e=>!e?.fallback&&(e.integrationType==="dataSource"||e.integrationType==="payment"&&e.provider==="airwallex")));const uc=()=>{const t=me(r=>r.companyV2?.resourceId),{isUninitialized:e,isLoading:n}=lc(t,{skip:!t}),o=me(r=>rh(r,"shopify","multiple")),a=Array.isArray(o)&&!!o[0]?.isConnected;return{isConnected:a,isResolved:!!t&&!e&&!n,shopDomain:a?o[0]?.shopify?.shop??null:null}},W3=()=>uc().isConnected,sh=()=>{const t=me(o=>o.companyV2?.onboardingFlags?.shopify?.step),{isConnected:e,isResolved:n}=uc();return ah(t)?{isShopifyCustomer:e,isResolved:n}:{isShopifyCustomer:!1,isResolved:!0}};function gA(t=!1){const[e,n]=c.useState(t),o=c.useCallback(()=>n(!0),[]),a=c.useCallback(()=>n(!1),[]),r=c.useCallback(()=>n(i=>!i),[]);return[e,{open:o,close:a,toggle:r}]}const bl={ONBOARDED:"onboarded"},hA=c.lazy(()=>te(()=>import("./OnboardingTour-Bxjggqoi.js"),__vite__mapDeps([2,1,3,4,5,6,7,8]))),_A=c.lazy(()=>te(()=>import("./WebsiteRequiredModal-47TR6ws9.js"),__vite__mapDeps([9,1,10,11,4,12,6,7,5,8]))),vA=()=>{const{resourceId:t,status:e,onboardingFlags:n}=me(v=>v.companyV2),o=n?.hasCompletedOnboardingTour,{isShopifyCustomer:a,isResolved:r}=sh(),i=Jg(),[l,{toggle:d,close:u}]=gA(),{pathname:m}=qe(),p=Ut(),{startTour:f,tourActive:g,isBookingModalOpen:h}=Zg(),_=nA();return c.useEffect(()=>{u()},[m,u]),c.useEffect(()=>{i&&!g&&m!=="/"&&!m.startsWith("/settings")&&(p("/",{replace:!0}),D("Your account is pending activation. Book a meeting with our team to unlock all features.",{icon:"ð",id:"account-locked-redirect",duration:8e3}))},[i,m,p,g]),c.useEffect(()=>{const v=e===bl.ONBOARDED,x=m==="/",w=typeof window<"u"&&window.innerWidth>=768,y=typeof window<"u"&&sessionStorage.getItem("showDemoModalFirstTime")==="true";if(v&&!o&&x&&t&&!g&&w&&!h&&!y&&r&&!a){const S=setTimeout(()=>{f()},1200);return()=>clearTimeout(S)}},[e,o,m,t,f,g,h,a,r]),t?s.jsxs(oA,{value:_,children:[s.jsx(c.Suspense,{fallback:null,children:s.jsx(hA,{})}),s.jsx(c.Suspense,{fallback:null,children:s.jsx(_A,{})}),s.jsx("header",{className:"fixed top-0 left-0 right-0 z-50 h-14 px-4 flex items-center bg-card border-b border-border/60 backdrop-blur-sm md:hidden animate-in fade-in duration-[800ms]",children:s.jsx(iA,{showTopMenu:!0,navigationController:s.jsx(HP,{opened:l,onClick:d,size:"sm"})})}),l&&s.jsx("div",{className:"fixed inset-0 z-30 bg-black/40 md:hidden",onClick:u,"aria-hidden":"true"}),s.jsx("nav",{className:rc("fixed left-0 w-48 z-40 bg-card border-r border-border/60 backdrop-blur-sm transition-transform duration-300 animate-in fade-in duration-[800ms]","top-14 h-[calc(100vh-3.5rem)] md:top-0 md:h-screen",l?"translate-x-0":"-translate-x-full md:translate-x-0"),children:s.jsx(tA,{showLogo:!l})}),s.jsx("main",{className:"md:ml-48 pt-14 md:pt-0 animate-in fade-in duration-[800ms] bg-background",children:s.jsx("div",{className:"w-full mx-auto",children:t&&e===bl.ONBOARDED?s.jsx(Rn,{}):s.jsx(lo,{})})})]}):s.jsx(lo,{})},yA=()=>s.jsx(KT,{children:s.jsx(vA,{})}
237),ih=Xt.injectEndpoints({endpoints:t=>({getCompany:t.query({query:()=>({url:"/company",method:"GET"}),transformResponse:je,providesTags:["Company"],async onQueryStarted(e,{dispatch:n,queryFulfilled:o}){try{const{data:a}=await o;n(Cr(a))}catch(a){return a}}}),updateCompany:t.mutation({query:e=>({url:"/company",method:"PATCH",body:e}),transformResponse:je,invalidatesTags:["Company"],async onQueryStarted(e,{dispatch:n,queryFulfilled:o}){try{const{data:a}=await o;n(Cr(a)),D.success(ve.t("messages.success.company_updated","Company updated successfully!"))}catch(a){D.error(de(a,"Failed to update company"),{id:"update-company-error"})}}}),updateCompanySettings:t.mutation({query:({successMessage:e,...n})=>({url:"/company/settings",method:"PATCH",body:n}),transformResponse:je,async onQueryStarted(e,{dispatch:n,queryFulfilled:o}){try{const{data:a}=await o;n(Cr(a)),n(ih.util.upsertQueryData("getCompany",void 0,a)),D.success(e.successMessage??ve.t("messages.success.company_settings_updated","Company settings updated successfully!"))}catch(a){D.error(de(a,"Failed to update company settings"),{id:"update-company-settings-error"})}}}),claimAppSumo:t.mutation({query:()=>({url:"/company/appsumo/claim",method:"POST"}),transformResponse:je,invalidatesTags:["Company"],async onQueryStarted(e,{queryFulfilled:n}){try{const{data:o}=await n;D.success(o.message||ve.t("messages.success.appsumo_plan_claimed","Plan claimed successfully!"))}catch(o){D.error(de(o,"Failed to claim AppSumo plan"),{id:"claim-appsumo-error"})}}})})}),{useGetCompanyQuery:bA,useUpdateCompanyMutation:z3,useUpdateCompanySettingsMutation:H3,useClaimAppSumoMutation:K3}=ih;function wA(t){try{const e=t.split(".");if(e.length!==3)return null;const n=e[1].replace(/-/g,"+").replace(/_/g,"/"),o=atob(n);return JSON.parse(o)?.email??null}catch{return null}}const xA=async()=>{try{return Nt()}catch{return localStorage.clear(),null}},Y3=async(t,e,n={sendToken:!0})=>{const o=await xA();return`${Ze.VITE_BASE_API_URL}${t}?${FP({...e,...n?.sendToken?{token:o}:{}})}`},ch=(t,e,n=null,o=null,a=null,r,i,l)=>{const d=new qn,u=new Date(Date.now()+7*24*60*60*1e3);d.set("shopifyUserExists",l??!1,{expires:u,sameSite:"strict",path:"/"}),d.set("isOauthInstallation",r,{expires:u,sameSite:"strict",path:"/"}),d.set("isSuccess",i,{expires:u,sameSite:"strict",path:"/"}),d.set("shopEmail",n,{expires:u,sameSite:"strict",path:"/"}),d.set("shopCountry",o,{expires:u,sameSite:"strict",path:"/"}),d.set("shopOwnerName",a,{expires:u,sameSite:"strict",path:"/"}),d.set("installationId",t,{expires:u,sameSite:"strict",path:"/"}),d.set("shopifyShop",e,{expires:u,sameSite:"strict",path:"/"})},kr=(t,e,n,o)=>{const a=new qn;a.set("success",t||null,{expires:new Date(Date.now()+1*24*60*60*1e3),sameSite:"strict",path:"/"}),a.set("status",e||null,{expires:new Date(Date.now()+1*24*60*60*1e3),sameSite:"strict",path:"/"}),a.set("error",null,{expires:new Date(Date.now()+1*24*60*60*1e3),sameSite:"strict",path:"/"}),a.set("message",null,{expires:new Date(Date.now()+1*24*60*60*1e3),sameSite:"strict",path:"/"})},CA=()=>{const t=new qn;t.remove("installationId",{path:"/"}),t.remove("shopifyShop",{path:"/"}),t.remove("shopEmail",{path:"/"}),t.remove("shopCountry",{path:"/"}),t.remove("shopOwnerName",{path:"/"}),t.remove("isOauthInstallation",{path:"/"}),t.remove("isSuccess",{path:"/"}),t.remove("shopifyUserExists",{path:"/"})},lh=()=>{const t=new qn,e=t.get("installationId")||null,n=t.get("shopifyShop")||null,o=t.get("shopEmail")||null,a=t.get("shopCountry")||null,r=t.get("shopOwnerName")||null,i=p=>{const f=t.get(p);return f===!0||f==="true"},l=i("isOauthInstallation"),d=i("isSuccess"),u=i("shopifyUserExists");return{installId:e,shopifyShop:n,shopEmail:o,shopCountry:a,shopOwnerName:r,isOauthInstallation:l,isSuccess:d,userExists:u,isShopify:!!(e&&n)}},SA=()=>{const{t}=St(),e=Ut(),{pathname:n,search:o}=qe(),a=El(),r=sc(),i=me(w=>w.companyV2),l=i?.resourceId,d=!!Nt(),{refetch:u,isFetching:m,isLoading:p}=bA(void 0,{skip:!d});lc(l,{skip:!l||!d});const[f]=XT(),g=c.useRef(!1);Fg(l,{skip:!l||!d}),Ug(l,{skip:!l||!d});const h=m||p,_=(()=>{const w=new URLSearchParams(window.location.search);return{isSupportDashboard:w.get("support-dashboard")==="true",accessToken:w.get("accessToken")}})(),v=_.isSupportDashboard&&!!_.accessToken;c.useEffect(()=>{if(!o)return;const w=new URLSearchParams(o);if(["utm_source","utm_medium","utm_campaign","utm_content","utm_term","campaign"].some(b=>w.get(b)))try{localStorage.getItem("utm_params_link")||localStorage.setItem("utm_params_link",JSON.stringify({url:window.location.href}))}catch{}},[]),c.useEffect(()=>{const y=new URLSearchParams(o).get("auth");if(y)try{const b=JSON.parse(decodeURIComponent(y));if(!b.accessToken||!b.refreshToken||!b.user){e("/verify-email"),D.error(t("messages.error.invali
237d_magic_link"),{id:"invalid-magic-link"});return}a(nt(b?.user?.email)),gt(b.accessToken,b.refreshToken,b.user),VI(b.user.email),Bo(b.user.isEmailVerified),localStorage.setItem("pending_verification_posthog","true"),localStorage.setItem("manual_signup_pending_dashboard","true"),sessionStorage.setItem("showDemoModalFirstTime","true"),localStorage.setItem("autoConnectAll","true"),window.history.replaceState({},"",n),setTimeout(()=>{D.success("Email Verified Succesfully! Welcome to Markopolo AI.",{id:"email-verified-success"})},500)}catch(b){D.error(de(b,"Failed to verify email"),{id:"magic-link-verification-error"})}},[]),c.useEffect(()=>{if(!(localStorage.getItem("pending_verification_posthog")==="true")||!l||h)return;const y=localStorage.getItem("utm_params_link"),S=(y?JSON.parse(y):null)?.url;r(He.AUTH.BUSINESS_INFO_VERIFIED_NON_SHOPIFY,{website:i?.website,businessName:i?.name,country:i?.country,userId:i?.user?.resourceId,UTM_Link:S}),localStorage.removeItem("utm_params_link"),localStorage.removeItem("pending_verification_posthog")},[l,h]),c.useEffect(()=>{const w=new URLSearchParams(o);if(n==="/not-found"){if(!w.get("error"))return;D.error("Already used or expired magic link. Please login or resend email verification link again.",{id:"magic-link-error"}),window.history.replaceState({},"",n),e("/login")}},[]),c.useEffect(()=>{const w=new URLSearchParams(o);if(w.get("success")!=="false")return;const y=w.get("message");D.error(y||"An error occurred, please try again later",{id:"global-integration-error"}),window.history.replaceState({},"",n)},[]),c.useEffect(()=>{const w=new URLSearchParams(window.location.search),y=w.get("support-dashboard")==="true",b=w.get("accessToken");if(!y||!b)return;const S=sessionStorage.getItem(ne.SUPPORT_DASHBOARD_ACTIVE)==="true",C=Nt(),P=()=>{gt(b),sessionStorage.setItem(ne.SUPPORT_DASHBOARD_ACTIVE,"true"),sessionStorage.setItem(ne.SUPPORT_SESSION_STARTED_AT,String(Date.now())),window.history.replaceState({},"",window.location.pathname),window.location.reload()};if(!S)if(C){const T={accessToken:C,refreshToken:Ng(),email:ml(),emailVerified:wr()};localStorage.setItem(ne.ORIGINAL_USER_BACKUP,JSON.stringify(T))}else{const T=wA(b)||"[email protected]";a(nt(T)),Bo(!0)}P()},[]),c.useEffect(()=>{const w=sessionStorage.getItem(ne.SUPPORT_DASHBOARD_ACTIVE)==="true",y=sessionStorage.getItem(ne.SUPPORT_SESSION_STARTED_AT);if(w&&y){const C=parseInt(y)+6e5-Date.now();if(C<=0)x();else{const P=setTimeout(()=>{x()},C);return()=>clearTimeout(P)}}},[]);const x=()=>{const w=localStorage.getItem(ne.ORIGINAL_USER_BACKUP);if(w)try{const y=JSON.parse(w);y.accessToken&>(y.accessToken,y.refreshToken),y.email&&a(nt(y.email)),y.emailVerified!==void 0&&Bo(y.emailVerified),D.success("Restoring to original user..."),localStorage.removeItem(ne.ORIGINAL_USER_BACKUP),sessionStorage.clear(),window.location.reload()}catch(y){D.error(de(y,"Failed to restore original user")),localStorage.removeItem(ne.ORIGINAL_USER_BACKUP),po(),sessionStorage.clear(),window.location.reload()}else po(),sessionStorage.clear(),window.location.reload()};return c.useEffect(()=>{if(!n.includes("/verify-email"))return;const w=new Set([ne.EMAIL_VERIFIED,ne.AUTH]),y=()=>{if(!n.includes("/verify-email")||!Nt())return;wr()||Bo(!0);const T=ml();T&&a(nt(T)),e("/",{replace:!0})},b=T=>{T.key==null||!w.has(T.key)||y()},S=()=>{document.visibilityState==="visible"&&queueMicrotask(y)},C=()=>{queueMicrotask(y)};window.addEventListener("storage",b),document.addEventListener("visibilitychange",S),window.addEventListener("focus",y),window.addEventListener("pageshow",C),y();const P=window.setInterval(y,1500);return()=>{window.clearInterval(P),window.removeEventListener("storage",b),document.removeEventListener("visibilitychange",S),window.removeEventListener("focus",y),window.removeEventListener("pageshow",C)}},[n,e,a]),c.useEffect(()=>{if(!d||h)return;if(localStorage.getItem("woocommerce_signup_pending")==="true"){n!=="/signup"&&e("/signup",{replace:!0});return}if(["/login","/signup","/reset-pass"].includes(n)){e("/");return}if(n.includes("/verify-email")&&wr()){e("/");return}if(d&&n==="/"){const{installId:b,shopifyShop:S}=lh(),{isSalla:C,flow:P}=pa();(b&&S||C&&P==="signup")&&e("/data-room?selectedTab=e-commerce")}},[l,n,d,m]),c.useEffect(()=>{if(!d||g.current||sessionStorage.getItem("salla_integration_done")==="1")return;const w=new URLSearchParams(o),y=w.get("provider"),b=w.get("storeDomain"),S=w.get("flow"),C=p
237a(),P=y==="salla"&&!!b,T=P?b:C.storeDomain,A=P?S:C.flow;if(!T||A==="signup")return;g.current=!0,ic();const R=new URLSearchParams(o);["provider","storeDomain","flow","existingAccount","email","success","message"].forEach($=>R.delete($));const F=R.toString();window.history.replaceState({},"",`${n}${F?`?${F}`:""}`),sessionStorage.setItem("salla_integration_done","1"),(async()=>{try{await f({domain:T}).unwrap(),e("/data-room/setup-data-container?selectedTab=e-commerce",{replace:!0})}catch($){g.current=!1,sessionStorage.removeItem("salla_integration_done");const B=$?.message||$?.data?.message||"Failed to complete Salla integration";D.error(typeof B=="string"?B:"Failed to complete Salla integration",{id:"complete-salla-error"})}})()},[d,o,n,e,f]),c.useEffect(()=>{d&&u()},[d,u]),c.useEffect(()=>{const w=()=>{window.scrollTo({top:0,left:0,behavior:"smooth"})};return()=>{w()}},[n]),v?s.jsx(lo,{}):d&&p?s.jsx(lo,{}):s.jsx(Rn,{})},X3=[{title:"explore_plans.starter",description:"explore_plans.starter_description",price:"explore_plans.free",benefits:["explore_plans.starter_data.events","explore_plans.starter_data.emails","explore_plans.starter_data.sms"],value:"free",isMonthly:!0},{title:"explore_plans.enterprise",description:"explore_plans.enterprise_description",price:"explore_plans.custom",benefits:["explore_plans.enterprise_data.emails","explore_plans.enterprise_data.sms","explore_plans.enterprise_data.voice"],value:null,isMonthly:!0}],kA=[{title:"explore_plans.starter",description:"explore_plans.starter_description",price:"explore_plans.free",benefits:["explore_plans.starter_data.events","explore_plans.starter_data.emails","explore_plans.starter_data.sms"],value:"free",isMonthly:!0}],vs=[{title:"explore_plans.growth",description:"explore_plans.growth_description",price:49,benefits:["explore_plans.growth_accelerator_data.events","explore_plans.growth_accelerator_data.emails","explore_plans.growth_accelerator_data.sms"],value:"mark26_growth_accelerator_monthly",isMonthly:!0},{title:"explore_plans.pro",description:"explore_plans.pro_description",price:159,benefits:["explore_plans.pro_accelerator_data.events","explore_plans.pro_accelerator_data.emails","explore_plans.pro_accelerator_data.sms"],value:"mark26_pro_accelerator_monthly",isMonthly:!0}],dh=[{title:"explore_plans.growth",description:"explore_plans.growth_description",price:49,benefits:["explore_plans.growth_optimizer_data.events","explore_plans.growth_optimizer_data.emails","explore_plans.growth_optimizer_data.sms"],value:"mark26_growth_optimizer_monthly",isMonthly:!0},{title:"explore_plans.growth",description:"explore_plans.growth_description",price:399,benefits:["explore_plans.growth_optimizer_data.events","explore_plans.growth_optimizer_data.emails","explore_plans.growth_optimizer_data.sms"],value:"mark26_growth_optimizer_yearly",isMonthly:!1,monthlyPrice:33.25,yearlyDiscount:30},{title:"explore_plans.pro",description:"explore_plans.pro_description",price:159,benefits:["explore_plans.pro_optimizer_data.events","explore_plans.pro_optimizer_data.emails","explore_plans.pro_optimizer_data.sms"],value:"mark26_pro_optimizer_monthly",isMonthly:!0},{title:"explore_plans.pro",description:"explore_plans.pro_description",price:999,benefits:["explore_plans.pro_optimizer_data.events","explore_plans.pro_optimizer_data.emails","explore_plans.pro_optimizer_data.sms"],value:"mark26_pro_optimizer_yearly",isMonthly:!1,monthlyPrice:83.25,yearlyDiscount:45}],Q3=["explore_plans.feature","explore_plans.starter","explore_plans.growth","explore_plans.pro"],Z3=[{category:"explore_plans.usage_limits",features:[{title:"explore_plans.mtag_events",col1:"1,000,000",col2:"5,000,000",col3:"10,000,000"},{title:"explore_plans.emails_month",col1:"5,000",col2:"10,000",col3:"25,000"},{title:"explore_plans.sms_month",col1:"50",col2:"100",col3:"500"}]},{category:"explore_plans.email_branding",features:[{title:"explore_plans.customize_default_branding",col1:!0,col2:!0,col3:!0},{title:"explore_plans.create_email_templates",col1:!0,col2:!0,col3:!0},{title:"explore_plans.remove_branding",col1:!1,col2:!0,col3:!0}]},{category:"explore_plans.analytics",features:[{title:"explore_plans.audience_and_conversions",col1:!0,col2:!0,col3:!0}]},{category:"explore_plans.campaigns",features:[{title:"explore_plans.recovery_campaigns",col1:!0,col2:!0,col3:!0},{title:"explore_plans.knowledge_base_import",col1:!1,col2:"5",col3:"10"},{title:"explore_plans.ai_generated_campaigns",col1:!1,col2:!0,col3:!0}]},{category:"explore_plans.support",features:[{title:"explore_plans.support_tier",col1:"explore_plans.community_support",col2:"explore_plans.community_support",col3:"explore_plans.priority_support"}]}],J3=[{category:"explore_plans.usage_limits",features:[{title:"explore_plans.mtag_events",col1:"1,000,000",col2:"3,000,000",col3:"5,000,000"},{title:"explore_plans.emails_month",col1:"1,000",col2:"5,000",col3:"20,000"},{title:"explore_plans.sms_month",col1:"50",col2:"100",col3:"500"}]},{category:"explore_plans.email_branding",features:[{title:"explore_plans.customize_default_branding",col1:!0,col2:!0,col3:!0},{title:"explore_plans.create_email_templates",col1:!0,col2:!0,col3:!0},{title:"explore_plans.remove_branding",col1:!1,col2:!0,col3:!0}]},{category:"explore_plans.analytics",features:[{title:"explore_plans.audience_and_conversions",col1:!0,col2:!0,col3:!0}]},{category:"explore_plans.campaigns",features:[{title:"explore_plans.recovery_campaigns",col1:!0,col2:!0,col3:!0},{title:"explore_plans.knowledge_base_import",col1:!1,col2:"5",col3:"10"},{title:"explore_plans.ai_generated_campaigns",col1:!1,col2:!0,col3:!0}]},{category:"explore_plans.support",features:[{title:"explore_plans.support_tier",col1:"explore_plans.community_support",col2:"explore_plans.community_support",col3:"explore_plans.priority_support"}]}],ys=[{title:"explore_plans.pro",description:"explore_plans.pro_description",price:49,benefits:["explore_plans.pro_data.emails","explore_plans.pro_data.sms","explore_plans.pro_data.voice"],value:"mark26_pro_monthly",isMonthly:!0},{title:"explore_plans.pro",description:"explore_plans.pro_description",price:468,benefits:["explore_plans.pro_data.emails","explore_plans.pro_data.sms","explore_plans.pro_data.voice"],value:"mark26_pro_yearly",isMonthly:!1,monthlyPrice:39},{title:"explore_plans.business",description:"explore_plans.business_description",price:499,benefits:["explore_plans.business_data.emails","explore_plans.business_data.sms","explore_plans.business_data.voice"],value:"mark51_business_monthly",isMonthly:!0},{title:"explore_plans.business",description:"explore_plans.business_description",price:4788,benefits:["explore_plans.business_data.emails","explore_plans.business_data.sms","explore_plans.business_data.voice"],value:"mark51_business_yearly",isMonthly:!1,monthlyPrice:399},{title:"explore_plans.scale",description:"explore_plans.scale_description",price:999,benefits:["explore_plans.scale_data.emails","explore_plans.scale_data.sms","explore_plans.scale_data.voice"],value:"mark51_scale_new_monthly",isMonthly:!0},{title:"explore_plans.scale",description:"explore_plans.scale_description",price:9588,benefits:["explore_plans.scale_data.emails","explore_plans.scale_data.sms","explore_plans.scale_data.voice"],value:"mark51_scale_new_yearly",isMonthly:!1,monthlyPrice:799},{title:"explore_plans.starter",description:"explore_plans.starter_description",price:49,benefits:["explore_plans.starter_data.emails","explore_plans.starter_data.sms","explore_plans.starter_data.voice"],value:"mark51_starter_new_monthly",isMonthly:!0},{title:"explore_plans.starter",description:"explore_plans.starter_description",price:468,benefits:["explore_plans.starter_data.emails","explore_plans.starter_data.sms","explore_plans.starter_data.voice"],value:"mark51_starter_new_yearly",isMonthly:!1,monthlyPrice:39},{title:"explore_plans.basic",description:"explore_plans.basic_description",price:99,benefits:["explore_plans.basic_data.emails","explore_plans.basic_data.sms","explore_plans.basic_data.voice"],value:"mark51_basic_monthly",isMonthly:!0},{title:"explore_plans.basic",description:"explore_plans.basic_description",price:948,benefits:["explore_plans.basic_data.emails","explore_plans.basic_data.sms","explore_plans.basic_data.voice"],value:"mark51_basic_yearly",isMonthly:!1,monthlyPrice:79},{title:"explore_plans.growth",description:"explore_plans.growth_description",price:149,benefits:["explore_plans.growth_data.emails","explore_plans.growth_data.sms","explore_plans.growth_data.voice"],value:"mark51_growth_monthly",isMonthly:!0},{title:"explore_plans.growth",description:"explore_plans.growth_description",price:1428,benefits:["explore_plans.growth_data.emails","explore_plans.growth_data.sms","explore_plans.growth_data.voice"],value:"mark51_growth_yearly",isMonthly:!1,monthlyPrice:119},{title:"explore_plans.pro",description:"explore_plans.pro_description",price:249,benefits:["explore_plans.pro_data.emails","explore_plans.pro_data.sms","explore_plans.pro_data.voice"],value:"mark51_pro_monthly",isMonthly:!0},{title:"explore_plans.pro",description:"explore_plans.pro_description",price:2388,benefits:["explore_plans.pro_data.emails","explore_plans.pro_data.sms","explore_plans.pro_data.voice"],value:"mark51_pro_yearly",isMonthly:!1,monthlyPrice:199},{title:"explore_plans.dandelion",description:"explore_plans.dandelion_desc",price:299,benefits:"explore_plans.benefits.dandelion",value:"mark51_dandelion_monthly",isMonthly:!0},{title:"explore_plans.dandelion",description:"explore_plans.dandelion_desc",price:2870,benefits:"explore_plans.benefits.dandelion",value:"mark51_dandelion_yearly",isMonthly:!1},{title:"explore_plans.butterfly",description:"explore_plans.butterfly_desc",price:599,benefits:"explore_plans.benefits.butterfly",value:"mark51_butterfly_monthly",isMonthly:!0},{title:"explore_plans.butterfly",description:"explore_plans.butterfly_desc",price:5750,benefits:"explore_plans.benefits.butterfly",value:"mark51_butterfly_yearly",isMonthly:!1},{title:"explore_plans.spiderweb",description:"explore_plans.spiderweb_desc",price:999,benefits:"explore_plans.benefits.spiderweb",value:"mark51_spiderweb_monthly",isMonthly:!0},{title:"explore_plans.spiderweb",description:"explore_plans.spiderweb_desc",price:9588,benefits:"explore_plans.benefits.spiderweb",value:"mark51_spiderweb_yearly",isMonthly:!1},{title:"explore_plans.neuron",description:"explore_plans.neuron_desc",price:"Custom",benefits:"explore_plans.benefits.neuron",value:"mark51_neuron_monthly",isMonthly:!0},{title:"explore_plans.neuron",description:"explore_plans.neuron_desc",price:"Custom",benefits:"explore_plans.benefits.neuron",value:"mark51_neuron_yearly",isMonthly:!1},{title:"explore_plans.fractal",description:"explore_plans.fractal_desc",price:49,benefits:"explore_plans.benefits.fractal",value:"mark51_fractal_monthly",isMonthly:!0},{title:"explore_plans.fractal",description:"explore_plans.fractal_desc",price:470,benefits:"explore_plans.benefits.fractal",value:"mark51_fractal_yearly",isMonthly:!1},{title:"explore_plans.spiral",description:"explore_plans.spiral_desc",price:99,benefits:"explore_plans.benefits.spiral",value:"mark51_spiral_monthly",isMonthly:!0},{title:"explore_plans.spiral",description:"explore_plans.spiral_desc",price:950,benefits:"explore_plans.benefits.spiral",value:"mark51_spiral_yearly",isMonthly:!1},{title:"explore_plans.fibonacci",description:"explore_plans.fibonacci_de
237sc",price:159,benefits:"explore_plans.benefits.fibonacci",value:"mark51_fibonacci_monthly",isMonthly:!0},{title:"explore_plans.fibonacci",description:"explore_plans.fibonacci_desc",price:1526,benefits:"explore_plans.benefits.fibonacci",value:"mark51_fibonacci_yearly",isMonthly:!1}],wl=!0,uh=()=>{const{payment:t,trialStatus:e,isAppSumo:n}=me(o=>o.companyV2);return c.useMemo(()=>{const o=t?.planId?.includes("free")||t?.planId?.includes("monthly")||t?.billingPeriod==="monthly",a=t?.planId?.includes("free"),r=n&&!!n,i=r&&n?.isClaimed,l=t?.addonPurchases?.purchaseHistory?.length||0,d=!!t?.addonPurchases?.purchaseHistory?.length&&(i?!!(t?.addonPurchases?.purchaseHistory?.length-1):!!t?.addonPurchases?.purchaseHistory?.length),u=t?.addonPurchases?.purchaseHistory?.length||0,m=e?.isInTrial&&!e?.hasExpired,p=e?.remainingDays,f=vs.find(b=>b.value===t?.planId),g=!!ys.find(b=>b.value===t?.planId),h=ys.find(b=>b.value===t?.planId&&t?.planId?.trim()!==""),_=!!vs.find(b=>b.value===t?.planId),v=!!dh.find(b=>b.value===t?.planId),x=!_&&!v,w=_||x&&wl,y=v||x&&!wl;return{planStatus:t?.paymentState||null,paymentStatus:t?.paymentState||null,planId:t?.planId||"",isMonthly:o,isFreePlan:a,hasPaymentMethod:!!t?.paymentMethodId,subscriptionStartDate:t?.lastPaymentDate?fc(t?.lastPaymentDate).format("DD MMM YYYY"):"N/A",subscriptionEndDate:t?.lastPaymentDate?fc(t?.lastPaymentDate).add(o?1:12,o?"month":"months").format("DD MMM YYYY"):"N/A",hasSubscribedPLan:t?.billingPath?.toLowerCase()==="shopify"?!!t?.shopifyPayment?.subscriptionId:!!t?.subscriptionId,subscriptionStatus:t?.billingPath?.toLowerCase()==="shopify"?t?.shopifyPayment?.subscriptionStatus:t?.paymentState||null,confirmationUrl:t?.shopifyPayment?.confirmationUrl||"",billingPath:t?.billingPath?.toLowerCase()||"",purchaseCount:l,hasAddonPurchased:d,isTrial:m,remainingTrialDays:p,isAppSumoPlan:r,isAppSumoClaimed:i,addonCount:u,PlanDetails:f,isLegacyPlan:g,LegacyPlanDetails:h,isAcceleratorPlan:_,isOptimizerPlan:v,showAccelaratorPlan:w,showOptimizerPlan:y}},[t,n])},eM=()=>{const t=me(o=>o.companyV2?.resourceId);Fg(t),Ug(t);const{paymentLimits:e,eventLimits:n}=me(o=>o.limits);return c.useMemo(()=>{const o=e?.usage?.voiceMinutes?.used??0,a=e?.usage?.voiceMinutes?.limit??0,r=e?.usage?.voiceMinutes?.overagePercent??(a>0?o/a*100:0),i=e?.usage?.emails?.used??0,l=e?.usage?.emails?.limit??0,d=e?.usage?.emails?.overagePercent??(l>0?i/l*100:0),u=e?.usage?.sms?.used??0,m=e?.usage?.sms?.limit??0,p=e?.usage?.sms?.overagePercent??(m>0?u/m*100:0),f=e?.addonUsage?.emails?.used??0,g=e?.addonUsage?.emails?.limit??0,h=e?.addonUsage?.emails?.overagePercent??(g>0?f/g*100:0),_=e?.addonUsage?.sms?.used??0,v=e?.addonUsage?.sms?.limit??0,x=e?.addonUsage?.sms?.overagePercent??(v>0?_/v*100:0),w=e?.addonUsage?.voiceMinutes?.used??0,y=e?.addonUsage?.voiceMinutes?.limit??0,b=e?.addonUsage?.voiceMinutes?.overagePercent??(y>0?w/y*100:0),S=n?.eventCount??0,C=n?.eventLimit??0,P=n?.usagePercentage??(C>0?S/C*100:0),T=e!==null&&(l+g===0||i+f>=l+g),A=e!==null&&(m+v===0||u+_>=m+v),R=e!==null&&(a+y===0||o+w>=a+y),F=n!==null&&C>0&&S>=C;return{planVoiceUsed:o,planVoiceAvailable:a,planVoicePercentage:r,planEmailsUsed:i,planEmailsAvailable:l,planEmailsPercentage:d,planSmsUsed:u,planSmsAvailable:m,planSmsPercentage:p,addonEmailsUsed:f,addonEmailsAvailable:g,addonEmailsPercentage:h,addonSmsUsed:_,addonSmsAvailable:v,addonSmsPercentage:x,addonVoiceUsed:w,addonVoiceAvailable:y,addonVoicePercentage:b,isEmailLimitReached:T,isSmsLimitReached:A,isVoiceLimitReached:R,eventsUsed:S,eventsAvailable:C,eventsPercentage:P,totalEmailsAvailable:l+g,totalSmsAvailable:m+v,totalVoiceAvailable:a+y,isEventsLimitReached:F}},[e,n])};function Qa(t,e){var n={};for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,o=Object.getOwnPropertySymbols(t);a<o.length;a++)e.indexOf(o[a])<0&&Object.prototype.propertyIsEnumerable.call(t,o[a])&&(n[o[a]]=t[o[a]]);return n}function pc(t,e){const n="[object Object]";if(typeof t!="object"||typeof e!="object"||t===null||e===null)return t===e;const o=Array.isArray(t),a=Array.isArray(e);if(o!==a)return!1;const r=Object.prototype.toString.call(t)===n,i=Object.prototype.toString.call(e)===n;if(r!==i||!r&&!o)return!1;const l=Object.keys(t),d=Object.keys(e);if(l.length!==d.length)return!1;const u={};for(let h=0;h<l.length;h+=1)u[l[h]]=!0;for(let h=0;h<d.length;h+=1)u[d[h]]=!0;const m=Object.keys(u);if(m.length!==l.length)return!1;const p=t,f=e,g=h=>pc(p[h],f[h]);return m.every(g)}function ph(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){var e=Math.random()*16|0,n=t=="x"?e:e&3|8;return n.toString(16)})}function PA(t){if(t!=null){const e=t.site,n=t.publishableKey;return!(!(e!=null&&typeof e=="string"&&e.length>0)||!(n!=null&&typeof n=="string"&&n.length>0))}else return!1}function EA(t){let e=!1,n;return{promise:new Promise((a,r)=>{n=a,t.then(i=>a({isCancelled:e,value:i})).catch(i=>r({isCancelled:e,error:i}))}),cancel(){e=!0,n({isCancelled:e})}}}let mc=class extends c.Component{constructor(e){super(e),this.field=null,this.id=`card-${e.type}-${ph()}`,this.ElementRef=c.createRef()}componentDidMount(){const{cbComponent:e,type:n,listeners:o}=this.props,a=this.getPropOptions(this.props);this.field=e.createField(n,a).at(`#${this.id}`),o&&(o.onBlur&&this.field.on("blur",o.onBlur),o.onFocus&&this.field.on("focus",o.onFocus),o.onReady&&this.field.on("ready",o.onReady),o.onChange&&this.field.on("change",o.onChange))}getPropOptions(e){const{icon:n,styles:o,placeholder:a,ariaLabel:r}=e;return{icon:n,style:o,placeholder:a,ariaLabel:r}}componentDidUpdate(e){const n=this.getPropOptions(e),o=this.getPropOptions(this.props);!pc(n,o)&&this.field&&this.field.update(o)}componentWillUnmount(){this.field.destroy()}focus(){this.field.focus()}blur(){this.field.blur()}clear(){this.field.clear()}render(){const{className:e}=this.props;return c.createElement("div",{id:this.id,ref:this.ElementRef,className:e},this.props.children)}};const IA={cbComponent:null},Za=c.createContext(IA);function Pr(t){const{fonts:e,classes:n,icon:o,styles:a,showTestCards:r,locale:i,placeholder:l,currency:d,ariaLabel:u}=t;return{fonts:e,classes:n,locale:i,style:a,showTestCards:r,placeholder:l,ariaLabel:u,icon:o,currency:d}}class TA extends c.Component{constructor(e){super(e),this.containerRef
237=c.createRef(),this.id=`${this.props.type}-field-${ph()}`,this.state={cbComponent:null,cbInstance:this.props.cbInstance,id:this.id,ready:!1}}createCardComponent(){const{type:e,onBlur:n,onChange:o,onFocus:a,onReady:r,onKeyPress:i}=this.props,l=Pr(this.props);let d=this.props.cbInstance.createComponent(e,l);return r&&d.on("ready",r),n&&d.on("blur",n),a&&d.on("focus",a),o&&d.on("change",o),i&&d.on("keyPress",i),d}componentWillUnmount(){this.state.cbComponent&&this.state.cbComponent.destroy()}componentDidUpdate(e){const n=this.state.cbComponent,o=Pr(e),a=Pr(this.props);!pc(o,a)&&n&&n.update(a)}componentDidMount(){const e=this.createCardComponent();this.setState({cbComponent:e,ready:!0},()=>{this.state.cbComponent&&this.state.cbComponent.status===0&&this.containerRef.current&&this.state.cbComponent.mount(this.containerRef.current)})}tokenize(e){const{cbComponent:n}=this.state;return n.tokenize(e)}authorizeWith3ds(e,n,o){const{cbComponent:a}=this.state;return a.authorizeWith3ds(e,n,o)}focus(){const{cbComponent:e}=this.state;e.focus()}blur(){const{cbComponent:e}=this.state;e.blur()}clear(){const{cbComponent:e}=this.state;e.clear()}render(){const{ready:e}=this.state;return c.createElement(Za.Provider,{value:this.state},c.createElement("div",{ref:this.containerRef,id:this.id,className:this.props.className||""},e&&this.props.children||[]))}}var AA=c.forwardRef((t,e)=>{const{onBlur:n,onChange:o,onFocus:a,onReady:r}=t,i=Qa(t,["onBlur","onChange","onFocus","onReady"]),l={onBlur:n,onChange:o,onFocus:a,onReady:r};return c.createElement(Za.Consumer,null,d=>c.createElement(mc,Object.assign({type:"number",cbComponent:d.cbComponent,ref:e,listeners:l},i)))}),RA=c.forwardRef((t,e)=>{const{onBlur:n,onChange:o,onFocus:a,onReady:r}=t,i=Qa(t,["onBlur","onChange","onFocus","onReady"]),l={onBlur:n,onChange:o,onFocus:a,onReady:r};return c.createElement(Za.Consumer,null,d=>c.createElement(mc,Object.assign({type:"expiry",cbComponent:d.cbComponent,ref:e,listeners:l},i)))}),MA=c.forwardRef((t,e)=>{const{onBlur:n,onChange:o,onFocus:a,onReady:r}=t,i=Qa(t,["onBlur","onChange","onFocus","onReady"]),l={onBlur:n,onChange:o,onFocus:a,onReady:r};return c.createElement(Za.Consumer,null,d=>c.createElement(mc,Object.assign({type:"cvv",cbComponent:d.cbComponent,ref:e,listeners:l},i)))});typeof window<"u"&&(window.CbJsSource="react");class NA extends c.Component{constructor(e){super(e),this.state={moduleLoaded:!1,cbInstance:null}}componentWillUnmount(){this.loader.cancel()}componentDidMount(){const e=Chargebee.getInstance();this.loader=EA(e.load("components")),this.loader.promise.then(({isCancelled:n})=>{n||this.setState({cbInstance:e,moduleLoaded:!0})})}render(){const e=this.props,{forwardedRef:n}=e,o=Qa(e,["forwardedRef"]);return c.createElement(c.Fragment,null,this.state.moduleLoaded?c.createElement(TA,Object.assign({ref:n},Object.assign(Object.assign({},o),{cbInstance:this.state.cbInstance}))):"")}}var OA=c.forwardRef((t,e)=>c.createElement(NA,Object.assign({type:"card",forwardedRef:e},t)));c.forwardRef((t,e)=>t.cbInstance&&PA(t.cbInstance)?c.createElement(c.Fragment,null,t.children):null);const xl="https://js.chargebee.com/v2/chargebee.js";let _n=null;const jA=()=>typeof window>"u"?Promise.resolve():_n||(_n=new Promise((t,e)=>{const n=window,o=()=>{if(!n.Chargebee){_n=null,e(new Error("Chargebee SDK loaded but window.Chargebee is missing"));return}try{n.Chargebee.init({site:Ze.VITE_CHARGE_BEE_SITE,publishableKey:Ze.VITE_CHARGE_BEE_API_KEY})}catch{}t()},a=()=>{_n=null,e(new Error("Failed to load Chargebee"))};if(n.Chargebee){o();return}const r=document.querySelector(`script[src="${xl}"]`);if(r){r.addEventListener("load",o,{once:!0}),r.addEventListener("error",a,{once:!0});return}const i=document.createElement("script");i.src=xl,i.async=!0,i.onload=o,i.onerror=a,document.body.appendChild(i)}),_n),DA=()=>{const[t,e]=c.useState(!1),[n,o]=c.useState(!1);return c.useEffect(()=>{let a=!0;return jA().then(()=>a&&e(!0)).catch(()=>a&&o(!0)),()=>{a=!1}},[]),{ready:t,error:n}},LA=({setOpened:t})=>{const{t:e}=St(),{ready:n}=DA(),o=c.useRef(null),[a,r]=c.useState({name:"",address:""}),[i,l]=c.useState({cardNumber:!1,expiry:!1,cvv:!1}),[d]=aT(),[u,m]=c.useState(!1),[p,f]=c.useState(null),{resourceId:g,user:h}=me(x=>x.companyV2);
237if(!n)return s.jsx("div",{className:"flex items-center justify-center py-16",children:s.jsx("div",{className:"h-6 w-6 animate-spin rounded-full border-2 border-muted border-t-foreground"})});const _=a.name.trim()!==""&&a.address.trim()!==""&&i.cardNumber&&i.expiry&&i.cvv,v=async x=>{if(x.preventDefault(),o.current){m(!0),f(null);try{const{token:w}=await o.current.tokenize(),y=await d({tokenId:w,companyId:g,userId:h?.resourceId});y?.data?.success===!1&&D.error(e("messages.error.payment_failed"),{id:"add-payment-method-error"}),y?.data?.data?.cardInfo&&D.success(e("messages.success.payment_added"),{id:"add-payment-method-success"}),t(!1)}catch{f("Invalid card details")}finally{m(!1)}}};return s.jsxs("div",{children:[s.jsxs("div",{className:"flex flex-col gap-3",children:[s.jsx("span",{className:"text-muted-foreground",children:s.jsx(xg,{size:32})}),s.jsxs("div",{className:"mb-3",children:[s.jsx(ae,{size:"24px",weight:"semibold",className:"text-foreground",children:e("billing_page.add_payment_method")}),s.jsx(ae,{size:"14px",className:"text-muted-foreground",children:e("billing_page.no_charge_until_plan")})]})]}),s.jsxs(OA,{ref:o,className:"space-y-2",children:[s.jsxs(Ee,{gap:4,children:[s.jsx(ae,{size:"12px",weight:"medium",className:"text-muted-foreground",children:e("billing_page.card_number")}),s.jsx(AA,{className:"w-full h-9 px-5 border border-input rounded text-foreground bg-white text-black font-normal text-base leading-none flex items-center placeholder-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring",placeholder:e("placeholders.card_number"),onChange:x=>l(w=>({...w,cardNumber:x.complete}))}),p&&s.jsx(ae,{size:"12px",className:"text-destructive",children:p})]}),s.jsx(ms,{className:"!bg-white text-black",label:e("billing_page.name_on_card"),placeholder:e("billing_page.card_holder"),onChange:x=>r(w=>({...w,name:x.target.value}))}),s.jsx(ms,{className:"!bg-white text-black",label:e("billing_page.address"),placeholder:e("billing_page.enter_address"),onChange:x=>r(w=>({...w,address:x.target.value}))}),s.jsxs(Ee,{gap:4,children:[s.jsx(ae,{size:"12px",weight:"medium",className:"text-muted-foreground",children:e("billing_page.exp_date")}),s.jsx(RA,{className:"w-full h-9 px-5 border border-input rounded text-foreground bg-white text-black font-normal text-base leading-none flex items-center placeholder-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring",placeholder:e("placeholders.card_expiry"),onChange:x=>l(w=>({...w,expiry:x.complete}))})]}),s.jsxs(Ee,{gap:4,children:[s.jsx(ae,{size:"12px",weight:"medium",className:"text-muted-foreground",children:e("billing_page.cvv")}),s.jsx(MA,{className:"w-full h-9 px-5 border border-input rounded text-foreground bg-white text-black font-normal text-base leading-none flex items-center placeholder-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring",placeholder:"CVV",onChange:x=>l(w=>({...w,cvv:x.complete}))})]})]}),s.jsxs(Ge,{justify:"end",className:"pt-3",children:[s.jsx(wt,{variant:"secondary",onClick:()=>t(!1),disabled:u,children:e("common.cancel")}),s.jsx(wt,{variant:"primary",loading:u,onClick:v,disabled:!_,children:e("common.confirm")})]})]})},FA=({showModal:t,setShowModal:e})=>t?s.jsx(Ya,{body:({setOpened:n})=>s.jsx(LA,{setOpened:n}),withCustomClose:!0,withNoHeader:!0,toggleFromOutside:t,setToggleFromOutside:e,size:"md",children:()=>s.jsx(s.Fragment,{})}):null,UA=({billingPath:t})=>{const{t:e}=St(),n=Ut(),o=me(d=>d.companyV2?.resourceId),{data:a,isLoading:r}=iT(o,{skip:!o}),i=()=>{window.open(a?.confirmationUrl,"_self")},l=()=>{t==="freePlan"||t==="failedSubscription"?n("/plan-and-billing"):t==="chargebee"&&n("/plan-and-billing/explore-plans")};return s.jsxs(Ee,{gap:24,align:"center",children:[s.jsx("span",{className:"w-12 h-12 rounded-full flex items-center justify-center bg-destructive/10 border border-destructive/20",children:s.jsx("span",{className:"text-destructive",children:t==="failedSubscription"?s.jsx(CP,{size:24}):s.jsx(bP,{size:24})})}),s.jsxs(Ee,{gap:4,children:[s.jsx(ae,{size:"18px",weight:"medium",className:"text-foreground",children:e(t==="chargebee"?"billing_ui.chargebee_migrate":t==="freePlan"?"billing_ui.free_trail_plan_buy":t==="failedSubscription"?"billing_ui.failed_subscription":"billing_ui.pending_payment_desc")}),t!=="chargebee"&&t!=="freePlan"&&t!=="failedSubscription"&&s.jsx(ae,{size:"14px",className:"text-muted-foreground w-full",children:e("billing_ui.refresh_footer")})]}),s.jsx(wt,{fullWidth:!0,loading:t==null&&r,onClick:t==="freePlan"||t==="chargebee"||t==="failedSubscription"?l:i,children:e(t==="chargebee"?"billing_ui.go_to_explore_plans":t==="freePlan"||t==="failedSubscription"?"billing_ui.go_to_billing":"billing_ui.complete_payment")})]})},VA=({showPendingModal:t,setShowPendingModal:e,billingPath:n})=>s.jsx(Ya,{closeOnEscape:!0,size:"md",withNoHeader:!0,withCloseButton:!0,toggleFromOutside:t,setToggleFromOutside:e,body:()=>s.jsx(UA,{billingPath:n}),children:()=>s.jsx(s.Fragment,{})}),$A=[...kA,...vs,...dh,...ys],BA=()=>{const{t}
237=St(),{resourceId:e,payment:n}=me(v=>v.companyV2),[o,{isLoading:a}]=rT(),[r,{isLoading:i}]=sT(),[l,d]=c.useState(!1),{hasPaymentMethod:u,hasSubscribedPLan:m}=uh(),p=n?.pendingPlanId,f=p?.split("_").at(-1)??"monthly",g=UP(p?.split("_")[1]??""),h=$A?.find(v=>v?.value===p),_=async()=>{try{const v=await(m?r({companyId:e,newPlanId:p,billingPeriod:f}):o({companyId:e,planId:p,billingPeriod:f,promoCodes:[]})).unwrap();v?.success?D.success(v?.message||"Plan activated successfully!"):D.error(v?.error||v?.message||t("messages.error.something_went_wrong_try_again"))}catch(v){D.error(v?.data?.message||v?.message||t("messages.error.something_went_wrong_try_again"))}};return s.jsxs(Ee,{gap:24,align:"center",children:[s.jsx("span",{className:"w-12 h-12 rounded-full flex items-center justify-center bg-primary/10 border border-primary/20",children:s.jsx("span",{className:"text-primary",children:s.jsx(xg,{size:24})})}),s.jsxs(Ee,{gap:4,align:"center",children:[s.jsx(ae,{size:"18px",weight:"medium",className:"text-foreground text-center",children:"A plan has been assigned to your account"}),s.jsx(ae,{size:"14px",className:"text-muted-foreground text-center",children:"Please activate your plan to continue using the platform."})]}),s.jsx(cA,{className:"w-full bg-muted/50 border border-border p-4",children:s.jsxs(Ee,{gap:8,children:[s.jsxs(Ge,{className:"flex justify-between items-center",children:[s.jsx(ae,{size:"12px",className:"text-muted-foreground",children:"Plan"}),s.jsx(ae,{size:"14px",weight:"medium",className:"text-foreground",children:g})]}),s.jsxs(Ge,{className:"flex justify-between items-center",children:[s.jsx(ae,{size:"12px",className:"text-muted-foreground",children:"Billing Period"}),s.jsx(ae,{size:"14px",weight:"medium",className:"text-foreground capitalize",children:f})]}),h?.price!==void 0&&s.jsxs(Ge,{className:"flex justify-between items-center",children:[s.jsx(ae,{size:"12px",className:"text-muted-foreground",children:"Price"}),s.jsx(ae,{size:"14px",weight:"medium",className:"text-foreground",children:typeof h.price=="number"?`$${h.price}/${f==="monthly"?"mo":"yr"}`:h.price})]})]})}),s.jsxs(Ge,{gap:12,className:"w-full",children:[!u&&s.jsx(wt,{variant:"outline",className:"flex-1",onClick:()=>d(!0),children:"Add Payment Card"}),s.jsx(wt,{className:"flex-1",loading:a||i,disabled:!u,onClick:_,children:"Proceed"})]}),s.jsxs(ae,{size:"12px",className:"text-muted-foreground text-center",children:["For any queries, contact"," ",s.jsx("a",{href:"mailto:[email protected]",className:"text-primary underline-offset-2 hover:underline",children:"[email protected]"})]}),s.jsx(FA,{showModal:l,setShowModal:d})]})},GA=()=>{const t=me(o=>o.companyV2?.payment),e=qe(),n=t?.pendingPlanId;return e.pathname.startsWith("/plan-and-billing")||e.pathname.startsWith("/settings")?null:s.jsx(Ya,{size:"md",withNoHeader:!0,withCloseButton:!1,toggleFromOutside:!!n,body:()=>s.jsx(BA,{}),children:()=>s.jsx(s.Fragment,{})})},qA=()=>{const t=me(r=>r.companyV2?.resourceId)??null,e=me(r=>r.companyV2?.user?.email)??null,{isConnected:n,isResolved:o,shopDomain:a}=uc();return{companyId:t,shopDomain:a,merchantEmail:e,isIntegrationsResolved:o,isShopifyConnected:n,hasRealShopify:n&&!!a,ready:!!t&&!!a}},WA=()=>{const{isIntegrationsResolved:t,isShopifyConnected:e}=qA(),n=me(r=>r.companyV2?.onboardingFlags),o=n?.shopify?.step,a=o!=null?!ah(o):!!n?.shopifyFirstTimePopup;return{isIntegrationsResolved:t,isShopifyConnected:e,shouldOnboard:t&&e&&a,resumeStage:mA(o)??pA}},zA=()=>{const[t,e]=c.useState(!1),[n,o]=c.useState(null),{subscriptionStatus:a,isFreePlan:r,isTrial:i,isAppSumoClaimed:l}=uh(),d=qe(),{payment:u,onboardingFlags:m}=me(_=>_.companyV2),p=m?.shopifyFirstTimePopup,f=me(_=>rh(_,"shopify","multiple")),g=Array.isArray(f)&&f?.[0]?.isConnected,h=g&&p;return c.useEffect(()=>{if(u?.paymentState==="trial"){e(!1),o(null);return}if(a&&a?.toLowerCase()!=="active"&&a!=="non_renewing"&&a!=="cancelled"){e(!0);return}if(!r&&!h&&g&&u?.billingPath?.toLowerCase()==="chargebee"){e(!0),o("chargebee");return}if(r||(e(!1),o(null)),l){e(!1),o(null);return}if(a&&a?.toLowerCase()==="active"){e(!1),o(null);return}},[a,g,u?.billingPath,r,u,h,d,i]),d.pathname.startsWith("/plan-and-billing")||d.pathname.startsWith("/settings")?null:s.jsx(VA,{showPendingModal:t,setShowPendingModal:e,billingPath:n})},HA=3,KA=()=>{const t=Ut(),e=qe(),{shouldOnboard:n,resumeStage:o}=WA(),a=c.useRef(0);return c.useEffect(()=>{if(!n)return;const r=e.pathname;if(r.startsWith("/onboarding/shopify")||r.startsWith("/plan-and-billing")||r.startsWith("/settings")){a.current=0;return}a.current>=HA||(a.current+=1,t(`${uA}/${o}`,{replace:!0}))},[n,o,e.pathname,t]),null},YA=()=>{const[t]=cc(),{resourceId:e,user:n,createdAt:o}=me(d=>d.companyV2),[a]=bs(),{search:r}=qe(),i=!!Nt();c.useEffect(()=>{i&&e&&te(async()=>{const{default:d}=await import("./index-DAgIMRsK.js").then(u=>u.i);return{default:d}},__vite__mapDeps([0,1])).then(({default:d})=>{d({app_id:Ze.VITE_INTERCOM_APP_ID,user_id:e,name:n?.name,email:n?.email,created_at:new Date(o)?.getTime(),language_override:"en",alignment:"right"}),window.Intercom&&window.Intercom("update",{theme_mode:"dark"})})},[i,e,n,o]),c.useEffect(()=>{const d=async()=>{Nt()||await t().unwrap()};return window.addEventListener("focus",d),()=>{window.removeEventListener("focus",d)}},[t]);const l=Ut();return c.useEffect(()=>{a.get("provider")==="salla"&&a.has("storeDomain")&&Yg(a.get("storeDomain"),a.get("flow"),a.get("existingAccount")==="true",a.get("email"),a.get("success")==="true",a.get("message")),a.has("success")&&a.has("status")?kr(a.get("success"),a.get("status")):a.has("error")&&(a.has("message")?kr(a.get("error"),a.get("message")):kr(a.get("error")));const d=a.get("installationId"),u=a.get("shopifyShop"),m=a.get("storeDomain"),p=a.get("provider"),f=a.get("flow"),{storeDomain:g,flow:h}=pa();if(d&&u){const _=a.get("shopEmail"),v=a.get("userExists")==="true";ch(d,u,_,a.get("shopCountry"),a.get("shopOwnerName"),a.get("isOauthInstallation")==="true",a.get("success")==="true",i?!1:v),i||(v?l("/login",{state:{prefillEmail:_,shopifyInstall:!0},replace:!0}):l("/signup",{replace:!0}))}else if(!i)if(p==="salla"&&m){const _=f==="signup"?`/signup-with-salla${r}`:`/login${r}`;l(_,{replace:!0})}else g?l(h==="signup"?"/signup-with-salla":"/login",{replace:!0}):l("/login",{replace:!0})},[i,a]),i?s.jsxs(s.Fragment,{children:[s.jsx(KA,{}),s.jsx(zA,{}),s.jsx(GA,{}),s.jsx(Rn,{})]}):null},Cl=({children:t,insideNavigationLayout:e=!0})=>s.jsx("div",{className:rc("min-h-[calc(100vh-3.5rem)] bg-background overflow-y-auto",e?"mt-0":"mt-[3.5rem]"),children:s.jsx("div",{className:"mx-auto min-h-full py-8 px-5 flex flex-col justify-start max-w-[1180px] 2xl:max-w-[1400px]",children:s.jsx("div",{className:"flex-1 flex flex-col justify-start",children:t??s.jsx(Rn,{})})})});function XA(t={}){const{nonce:e,onScriptLoadSuccess:n,onScriptLoadError:o}=t,[a,r]=c.useState(!1),i=c.useRef(n);i.current=n;const l=c.useRef(o);return l.current=o,c.useEffect(()=>{const d=document.createElement("script");return d.src="https://accounts.google.com/gsi/client",d.async=!0,d.defer=!0,d.nonce=e,d.onload=()=>{var u;r(!0),(u=i.current)===null||u===void 0||u.call(i)},d.onerror=()=>{var u;r(!1),(u=l.current)===null||u===void 0||u.call(l)},document.body.appendChild(d),()=>{document.body.removeChild(d)}},[e]),a}const mh=c.createContext(null);function QA({clientId:t,nonce:e,onScriptLoadSuccess:n,onScriptLoadError:o,children:a}){const r=XA({nonce:e,onScriptLoadSuccess:n,onScriptLoadError:o}),i=c.useMemo(()=>({clientId:t,scriptLoadedSuccessfully:r}),[t,r]);return rt.createElement(mh.Provider,{value:i},a)}function ZA(){const t=c.useContext(mh);if(!t)throw new Error("Google OAuth components must be used within GoogleOAuthProvider");return t}
237function nM({flow:t="implicit",scope:e="",onSuccess:n,onError:o,onNonOAuthError:a,overrideScope:r,state:i,...l}){const{clientId:d,scriptLoadedSuccessfully:u}=ZA(),m=c.useRef(),p=c.useRef(n);p.current=n;const f=c.useRef(o);f.current=o;const g=c.useRef(a);g.current=a,c.useEffect(()=>{var v,x;if(!u)return;const w=t==="implicit"?"initTokenClient":"initCodeClient",y=(x=(v=window?.google)===null||v===void 0?void 0:v.accounts)===null||x===void 0?void 0:x.oauth2[w]({client_id:d,scope:r?e:`openid profile email ${e}`,callback:b=>{var S,C;if(b.error)return(S=f.current)===null||S===void 0?void 0:S.call(f,b);(C=p.current)===null||C===void 0||C.call(p,b)},error_callback:b=>{var S;(S=g.current)===null||S===void 0||S.call(g,b)},state:i,...l});m.current=y},[d,u,t,e,i]);const h=c.useCallback(v=>{var x;return(x=m.current)===null||x===void 0?void 0:x.requestAccessToken(v)},[]),_=c.useCallback(()=>{var v;return(v=m.current)===null||v===void 0?void 0:v.requestCode()},[]);return t==="implicit"?h:_}const JA=()=>{const[t]=bs(),e=Ut(),{pathname:n}=qe(),o=!!Nt();return c.useEffect(()=>{t.get("provider")==="salla"&&t.has("storeDomain")?Yg(t.get("storeDomain"),t.get("flow"),t.get("existingAccount")==="true",t.get("email"),t.get("success")==="true",t.get("message")):t.has("installationId")&&t.has("shopifyShop")&&t.has("installationId")&&t.has("shopifyShop")&&ch(t.get("installationId"),t.get("shopifyShop"),t.get("shopEmail"),t.get("shopCountry"),t.get("shopOwnerName"),t.get("isOauthInstallation")==="true",t.get("success")==="true",t.get("userExists")==="true")},[t]),c.useEffect(()=>{const{isShopify:a,installId:r,shopifyShop:i,shopEmail:l,userExists:d}=lh(),{isSalla:u,storeDomain:m,flow:p,success:f,message:g}=pa();if(!o&&u){if(!!!m||!f){D.error(g||"Salla installation failed. Please try again."),ic(),e("/signup");return}if(p==="signup"&&!n.includes("/signup-with-salla")){e("/signup-with-salla");return}if(p==="login"&&n!=="/login"){e("/login");return}return}if(!o&&a&&n!=="/signup"&&n!=="/login"){if(d){e("/login",{state:{prefillEmail:l,shopifyInstall:!0}});return}[r,i].every(v=>v!=null&&v!=="")||CA(),e("/signup-with-shopify");return}else if(!o&&!a&&n.includes("/signup-with-shopify")){e("/signup");return}else if(!o&&!u&&n.includes("/signup-with-salla")){e("/signup");return}!o&&!u&&n.includes("/signup-with-salla")&&e("/signup")},[n,o]),s.jsx(QA,{clientId:Ze.VITE_GOOGLE_CLIENT_ID,children:s.jsx(Rn,{})})},eR=()=>s.jsx("div",{className:"flex h-dvh min-h-0 w-full flex-col overflow-hidden bg-background",children:s.jsx(Rn,{})}),tR=(t,e)=>new Promise((n,o)=>{const a=JSON.parse(window.sessionStorage.getItem(`retry-${e}-refreshed`)||"false");t().then(r=>({default:r[e]})).then(r=>{window.sessionStorage.setItem(`retry-${e}-refreshed`,"false"),n(r)}).catch(r=>{if(!a)return window.sessionStorage.setItem(`retry-${e}-refreshed`,"true"),window.location.reload();o(r)})}),le=(t,e)=>dA(c.lazy(()=>tR(t,e))),nR=le(()=>te(()=>import("./index-BgZmAsfS.js"),__vite__mapDeps([13,1,14,4,7,15,16,8,17,18,19,20,21,6,5])),"HomePage"),fh=le(()=>te(()=>import("./index-CrmJ9CIy.js"),__vite__mapDeps([22,1,14,4,7,23,24,25,26,5,27,28,29,30,31,6,32,33,34,3,35,8,36,37,38,39,40,41,42,43,44,45,20,46,47,17,18,48])),"AgentDashboardPage"),oR=()=>{const{isShopifyCustomer:t,isResolved:e}=sh();return e?t?s.jsx(fh,{}):s.jsx(nR,{}):s.jsx(oe,{})},aR=le(()=>te(()=>import("./index-PhkfD0z2.js"),__vite__mapDeps([49,1,50,14,6,4,7,51,25,5,52,53,18,54,23,55,56,57,30,43,44,58,59,60,20,61,62,63,41,42,45,46,47,64,32,33,34,3,35,8,36,37,38,39,40,65,66,67,68,69,17])),"CampaignsListPage"),rR=le(()=>te(()=>import("./index-CrbkYGQJ.js"),__vite__mapDeps([70,1,71,7,54,72,17,18,53,73,58,59,43,4,69,25,55,5,23,19,65,74,75,76,77,68,52,78,79,80,27,81,6,8])),"CampaignViewDetailsPage"),sR=le(()=>te(()=>import("./index-txHcFoih.js"),__vite__mapDeps([82,1,59,4,23,7,83,58,43,25,84,50,62,64,85,51,5,56,54,10,44,21,86,87,11,12,37,88,89,8,14,55,6])),"IntegrationsPage"),iR=le(()=>te(()=>import("./index-u2IlKck5.js"),__vite__mapDeps([90,1,10,15,4,16,91,60,62,17,18,92,7,66,29,30,31,5,55,84,87,93,21,25,94,14,38,6,8])),"SettingsPage"),cR=le(()=>te(()=>import("./index-W3jT46VC.js"),__vite__mapDeps([95,1,14,4,7,96,58,59,43,97,50,23,25,98,5,66,60,21,99,89,76,100,26,55,8,6])),"DataroomPage"),lR=le(()=>te(()=>import("./index-M3JBou3H.js"),__vite__mapDeps([101,1,14,4,7,54,102,52,75,60,51,25,5,56,39,69,66,103,92,104,3,10,91,11,12,23,31,79,105,106,67,55,6,8])),"MemoryPage"),dR=le(()=>te(()=>import("./ClientSideMarktagSetupPage-D_klQ6Wj.js"),__vite__mapDeps([107,1,4,108,91,73,7,100,26,55,98,25,5,81,16,6,8])),"ClientSideMarktagSetupPage"),uR=le(()=>te(()=>import("./ServerSideMarktagSetupPage--0_2Y0Yk.js"),__vite__mapDeps([109,1,59,19,4,16,108,91,73,7,100,26,55,98,25,5,81,8,6])),"ServerSideMarktagSetupPage"),Sl=({to:t})=>{const{search:e}=qe();return s.jsx(Pl,{to:`${t}${e}`,replace:!0})},pR=le(()=>te(()=>import("./index-ANcJNgiO.js"),__vite__mapDeps([110,1,4,25,23,7,77,14,6,5,8])),"BillingPage"),mR=le(()=>te(()=>import("./index-gkT3ftLd.js"),__vite__mapDeps([111,1,99,30,31,85,60,14,7,51,25,5,56,54,112,87,32,33,34,3,35,8,36,37,38,39,50,4,29,66,23,113,114,55,6])),"ContentPage"),fR=le(()=>te(()=>import("./CustomizeTemplatePage-A74N-3m0.js"),__vite__mapDeps([115,1,33,34,3,35,7,8,36,14,116,113,32,37,38,114,4,117,43,58,59,94,39,66,60,6,5])),"CustomizeTemplatePage"),gR=le(()=>te(()=>import("./index-BbesIvpU.js"),__vite__mapDeps([118,1,50,102,14,4,7,75,91,54,51,25,5,52,119,120,121,69,78,23,79,66,60,57,6,67,68,105,106,92,104,3,55,8])),"AudienceSectionPage"),hR=le(()=>te(()=>import("./CreateAudience-BL9x7mh9.js"),__vite__mapDeps([122,1,14,6,7,120,106,71,4,81,5,123,61,80,27,25,23,51,64,98,77,24,8])),"CreateAudience"),_R=le(()=>te(()=>import("./index-BUFVm7HX.js"),__vite__mapDeps([124,1,63,32,33,34,3,35,7,8,36,37,38,61,83,4,58,59,43,25,84,50,62,64,23,85,51,5,56,54,10,44,21,86,87,11,12,88,89,125,93,79,16,66,60,102,103,39,92,104,78,119,120,121,69,106,123,80,27,98,24,41,42,45,20,46,47,31,112,30,29,91,126,114,74,94,14,81,6])),"CampaignBuilderPage"),vR=le(()=>te(()=>import("./index-BU-nYQgn.js"),__vite__mapDeps([127,1,14,4,7,97,84,128,19,96,58,59,43,45,51,25,5,56,54,100,73,26,48,91,72,53,18,78,23,79,69,3,46,47,27,55,6,8])),"AnalyticsPage"),yR=le(()=>te(()=>import("./AllEventsPage-fjaFXEzm.js"),__vite__mapDeps([129,1,128,19,96,58,59,43,45,51,25,5,56,54,100,73,7,26,4,48,91,72,53,18,78,23,79,69,3,46,47,27,81,6,8])),"AnalyticsAllEventsPage"),bR=le(()=>te(()=>import("./index-DsiSqO0e.js"),__vite__mapDeps([130,1,131,8,132,126,42,4,24,23,7,5,14,81,12
2371,6])),"ExplorePlansPage"),wR=le(()=>te(()=>import("./SubscribeToPlanPage-0YCfShVr.js"),__vite__mapDeps([133,1,131,8,134,7,135,4,14,81,5,121,6])),"SubscribeToPlanPage"),xR=le(()=>te(()=>import("./index-C7xqMKeN.js"),__vite__mapDeps([136,1,14,4,7,126,10,137,135,11,12,8,86,5,6])),"SignInPage"),CR=le(()=>te(()=>import("./index-DUryBxIc.js"),__vite__mapDeps([138,1,14,4,7,126,43,137,135,10,11,12,8,86,5,87,58,59,99,75,76,21,73,16,139,6])),"SignUpPage"),SR=le(()=>te(()=>import("./index-0zjNsaTz.js"),__vite__mapDeps([140,1,14,4,7,10,11,12,8,5,86,6])),"ResetPassPage"),kR=le(()=>te(()=>import("./index-DUryBxIc.js"),__vite__mapDeps([138,1,14,4,7,126,43,137,135,10,11,12,8,86,5,87,58,59,99,75,76,21,73,16,139,6])),"SignUpPage"),PR=le(()=>te(()=>import("./index-l_u8y5Hr.js"),__vite__mapDeps([141,1,131,8,132,126,42,4,24,23,7,5,14,81,121,6])),"ExplorePlansShopifyPage"),ER=le(()=>te(()=>import("./SubscribeToShopifyPlanPage-BGqhEYUE.js"),__vite__mapDeps([142,1,131,8,134,7,135,4,14,81,5,121,6])),"SubscribeToShopifyPlanPage"),IR=le(()=>te(()=>import("./index-Tch7Af06.js"),__vite__mapDeps([143,1,87,126,4,6,85,88,5,19,71,28,25,29,30,31,32,33,34,3,35,7,8,36,37,38,39,40,92,43,60,102,125,12,41,42,44,45,20,46,47,77])),"ShopifyOnboardingPage"),TR=le(()=>te(()=>import("./index-BKzOs70z.js"),__vite__mapDeps([144,1,14,4,7,10,11,12,135,139,8,16,86,5,79,6])),"SignUpWithSallaPage"),AR=()=>s.jsx(gh,{children:s.jsxs(X,{path:"/",element:s.jsx(SA,{}),children:[s.jsxs(X,{element:s.jsx(JA,{}),children:[s.jsx(X,{path:"/signup",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(CR,{})})}),s.jsx(X,{path:"/login",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(xR,{})})}),s.jsx(X,{path:"/reset-pass",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(SR,{})})}),s.jsx(X,{path:"/verify-email",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(kR,{})})}),s.jsx(X,{path:"/signup-with-salla",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(TR,{})})})]}),s.jsxs(X,{element:s.jsx(YA,{}),children:[s.jsx(X,{element:s.jsx(eR,{}),children:s.jsx(X,{path:"/content/customize/:templateId",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(fR,{})})})}),s.jsx(X,{path:"/onboarding/shopify",element:s.jsx(Pl,{to:"/onboarding/shopify/setup",replace:!0})}),s.jsx(X,{path:"/onboarding/shopify/:stage",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(IR,{})})}),s.jsxs(X,{element:s.jsx(Cl,{insideNavigationLayout:!1}),children:[s.jsx(X,{path:"/plan-and-billing/explore-plans",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(bR,{})})}),s.jsx(X,{path:"/plan-and-billing/explore-plans-shopify",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(PR,{})})}),s.jsx(X,{path:"/plan-and-billing/explore-plans-shopify/:plan",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(ER,{})})}),s.jsx(X,{path:"/plan-and-billing/explore-plans/:plan",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(wR,{})})})]}),s.jsx(X,{path:"/",element:s.jsx(yA,{}),children:s.jsxs(X,{element:s.jsx(Cl,{}),children:[s.jsx(X,{path:"/",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(oR,{})})}),s.jsx(X,{path:"/agent-dashboard",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(fh,{})})}),s.jsx(X,{path:"/campaigns",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(aR,{})})}),s.jsx(X,{path:"/campaigns/builder",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(_R,{})})}),s.jsx(X,{path:"/content",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(mR,{})})}),s.jsx(X,{path:"/campaigns/view-details/:campaignId",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(rR,{})})}),s.jsx(X,{path:"/analytics",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(vR,{})})}),s.jsx(X,{path:"/analytics/all-events",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(yR,{})})}),s.jsx(X,{path:"/data-room",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(cR,{})})}),s.jsx(X,{path:"/memory",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(lR,{})})}),s.jsx(X,{path:"/data-room/client-side-marktag",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(dR,{})})}),s.jsx(X,{path:"/data-room/server-side-marktag",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(uR,{})})}),s.jsx(X,{path:"/data-room/setup-data-container",element:s.jsx(Sl,{to:"/data-room"})}),s.jsx(X,{path:"/data-room/knowledge-base",element:s.jsx(Sl,{to:"/memory"})}),s.jsx(X,{path:"/leads",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(gR,{})})}),s.jsx(X,{path:"/leads/create-audience",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(hR,{})})}),s.jsx(X,{path:"/settings",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(iR,{})})}),s.jsx(X,{path:"/integrations",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(sR,{})})}),s.jsx(X,{path:"/plan-and-billing",element:s.jsx(c.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(pR,{})})}),s.jsx(X,{path:"*",element:s.jsx(lA,{})})]})})]})]})}),RR=()=>{const t=qe(),[e]=bs(),n=sc();return c.useEffect(()=>{switch(t.pathname){case"/":localStorage.getItem("manual_signup_pending_dashboard")&&(localStorage.removeItem("manual_signup_pending_dashboard"),n(He.AUTH.SIGN_UP_DASHBOARD_VIEWED));break;case"/signup":n(He.AUTH.SIGN_UP_PAGE_VIEWED,{referrer:e.get("referrer")||document.referrer||"direct",utm_source:e.get("utm_source")||void 0,utm_medium:e.get("utm_medium")||void 0});break;case"/integrations":n(He.INTEGRATIONS.PAGE_VIEWED);break;case"/content":n(He.CONTENT.PAGE_VIEWED);break}},[t.pathname,e]),null},MR=()=>{iv();const[t,e]=c.useState(()=>ve.isInitialized);return c.useEffect(()=>(ve.isInitialized?e(!0):ve.on("initialized",()=>{e(!0)}),()=>{ve.off("initialized")}),[]),t?s.jsx(Ll,{children:s.jsx($h,{i18n:ve,children:s.jsx(Ah,{store:Kg,children:s.jsxs(Rh,{loading:null,persistor:_s,children:[s.jsx(rv,{position:"top-center",reverseOrder:!1,containerStyle:{zIndex:999999},toastOptions:{className:"",style:{background:"rgb(var(--card))",color:"rgb(var(--card-foreground))",border:"1px solid rgb(var(--border))",borderRadius:"0.75rem",padding:"16px"},success:{iconTheme:{primary:"rgb(var(--success))",secondary:"rgb(var(--card))"}},error:{iconTheme:{primary:"rgb(var(--error))",secondary:"rgb(var(--card))"}}}}),s.jsx(hh,{future:{v7_startTransition:!0,v7_relativeSplatPath:!0},children:s.jsxs(s.Fragment,{children:[s.jsx(RR,{}),s.jsx(AR,{})]})})]})})})}):s.jsx("div",{className:"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 flex items-center justify-center flex-col opacity-50 bg-background min-h-screen w-full",children:s.jsx("img",{src:sv,alt:"Loading...",className:"w-48"})})};typeof window<"u"&&("requestIdleCallback"in window?requestIdleCallback(()=>{te(async()=>{const{initAnalytics:t}=await Promise.resolve().then(()=>pl);return{initAnalytics:t}},void 0).then(({initAnalytics:t})=>{t()})}):setTimeout(()=>{te(async()=>{const{initAnalytics:t}=await Promise.resolve().then(()=>pl);return{initAnalytics:t}},void 0).then(({initAnalytics:t})=>{t()})},1e3));_h.createRoot(document.getElementById("root")).render(s.jsx(rt.StrictMode,{children:s.jsx(nh,{children:s.jsx(MR,{})})}));export{Zg as $,l2 as A,wt as B,cA as C,rc as D,w3 as E,sc as F,Ge as G,He as H,p2 as I,u2 as J,o3 as K,lc as L,Ya as M,Y3 as N,b3 as O,x3 as P,Z2 as Q,C3 as R,Ee as S,ae as T,gs as U,ye as V,r2 as W,Jg as X,H3 as Y,jP as Z,ll as _,wP as a,zi as a$,zT as a0,GT as a1,Xt as a2,je as a3,mo as a4,Ze as a5,_3 as a6,g3 as a7,h3 as a8,c3 as a9,E2 as aA,I2 as aB,B2 as aC,D2 as aD,Bg as aE,x2 as aF,_T as aG,T2 as aH,C2 as aI,yT as aJ,L2 as aK,F2 as aL,U2 as aM,$2 as aN,q3 as aO,aA as aP,p3 as aQ,r3 as aR,R2 as aS,M2 as aT,lo as aU,k2 as aV,vT as aW,w2 as aX,S2 as aY,Gk as aZ,Yf as a_,a3 as aa,qn as ab,G3 as ac,f3 as ad,V3 as ae,c2 as af,o2 as ag,te as ah,l3 as ai,Ig as aj,uh as ak,eM as al,vs as am,dh as an,y2 as ao,K3 as ap,xg as aq,BA as ar,v3 as as,iA as at,W3 as au,qS as av,cm as aw,im as ax,WS as ay,M as az,m2 as b,bA as b$,Xf as b0,Wk as b1,d3 as b2,u3 as b3,s3 as b4,m3 as b5,i3 as b6,n3 as b7,t2 as b8,t3 as b9,Ou as bA,ju as bB,Lu as bC,Uu as bD,Du as bE,xe as bF,xA as bG,y3 as bH,Tg as bI,X3 as bJ,kA as bK,Q3 as bL,Z3 as bM,J3 as bN,d2 as bO,rT as bP,_2 as bQ,sT as bR,v2 as bS,z2 as bT,H2 as bU,nM as bV,lh as bW,K2 as bX,sv as bY,J2 as bZ,Y2 as b_,bP as ba,$R as bb,U1 as bc,V1 as bd,wf as be,LP as bf,UR as bg,YT as bh,W2 as bi,Cr as bj,ge as bk,G as bl,Zs as bm,I as bn,we as bo,Pa as bp,Nt as bq,Go as br,Ng as bs,po as bt,gt as bu,Ki as bv,Yi as bw,Qi as bx,AP as by,Ws as bz,UP as c,ne as c0,X2 as c1,Q2 as c2,N3 as c3,oh as c4,M3 as c5,pA as c6,uA as c7,qA as c8,CA as c9,L3 as ca,D3 as cb,O3 as cc,j3 as cd,ah as ce,U3 as cf,F3 as cg,oe as ch,pa as ci,e3 as cj,s2 as ck,z3 as cl,Kg as d,A2 as e,k as f,de as g,a2 as h,$3 as i,rh as j,ms as k,I3 as l,A3 as m,k3 as n,P3 as o,T3 as p,E3 as q,G2 as r,B3 as s,i2 as t,me as u,S3 as v,n2 as w,dl as x,R3 as y,D as z};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.