veo-sdk 0.3.5 → 0.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- export { P as PreviewGuideInput, a as PreviewHandle, b as PreviewResult, c as closeGuidePreview, p as previewGuide } from './guide-preview-CO5ShtNf.cjs';
1
+ export { P as PreviewGuideInput, a as PreviewHandle, b as PreviewResult, c as closeGuidePreview, p as previewGuide } from './guide-preview-DewCTa-B.cjs';
2
2
 
3
3
  /**
4
4
  * Configuración de la autocaptura de interacciones del DOM.
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { P as PreviewGuideInput, a as PreviewHandle, b as PreviewResult, c as closeGuidePreview, p as previewGuide } from './guide-preview-CO5ShtNf.js';
1
+ export { P as PreviewGuideInput, a as PreviewHandle, b as PreviewResult, c as closeGuidePreview, p as previewGuide } from './guide-preview-DewCTa-B.js';
2
2
 
3
3
  /**
4
4
  * Configuración de la autocaptura de interacciones del DOM.
package/dist/index.mjs CHANGED
@@ -1,7 +1,7 @@
1
- import { definePlugin, guidesPlugin, runPreviewMode } from './chunk-R4E3LIDB.mjs';
2
- export { definePlugin, guidesPlugin } from './chunk-R4E3LIDB.mjs';
3
- import { hasWindow, hasDocument, uuidv7, DEFAULT_AUTOCAPTURE_CONFIG, MAX_ANCESTORS, hasLocalStorage, hasNavigatorSendBeacon, ALWAYS_BLOCK_SELECTORS, buildSelectorPath, resolveBuilderToken, filterHumanClasses, PRIORITY_ATTRIBUTES, SENSITIVE_ATTRIBUTES, isBuilderMode, previewGuide, closeGuidePreview } from './chunk-GHP7ZJCW.mjs';
4
- export { closeGuidePreview, previewGuide } from './chunk-GHP7ZJCW.mjs';
1
+ import { definePlugin, guidesPlugin, runPreviewMode } from './chunk-RNHOBE2D.mjs';
2
+ export { definePlugin, guidesPlugin } from './chunk-RNHOBE2D.mjs';
3
+ import { hasWindow, hasDocument, uuidv7, DEFAULT_AUTOCAPTURE_CONFIG, MAX_ANCESTORS, hasLocalStorage, hasNavigatorSendBeacon, ALWAYS_BLOCK_SELECTORS, buildSelectorPath, resolveBuilderToken, filterHumanClasses, PRIORITY_ATTRIBUTES, SENSITIVE_ATTRIBUTES, isBuilderMode, previewGuide, closeGuidePreview } from './chunk-4VJIILXF.mjs';
4
+ export { closeGuidePreview, previewGuide } from './chunk-4VJIILXF.mjs';
5
5
  import './chunk-PTG3BTJE.mjs';
6
6
 
7
7
  // src/contract/v1.ts
@@ -855,7 +855,7 @@ function init(config) {
855
855
  // Fallback de carga del builder para bundlers: `import()` dinámico → el bundler
856
856
  // lo code-splitea (solo se descarga en modo builder). Así el consumidor por
857
857
  // bundler NO necesita copiar `veo-builder.js` ni setear `builderUrl`.
858
- () => import('./builder-FBNBSKCL.mjs').then((m) => m.initBuilderMode())
858
+ () => import('./builder-7MBMYL26.mjs').then((m) => m.initBuilderMode())
859
859
  );
860
860
  }
861
861
 
@@ -1,4 +1,4 @@
1
- var veoBuilder=(function(exports){'use strict';function G(){return typeof window<"u"}function $(){return typeof document<"u"}var oe="veoBuilder",ie="veoBuilderOrigin",ft="veoBuilderPanel",mt="veoBuilderPanelPath",ht="veoGuide";var tt="veo:builder_ctx";function nt(){try{return window.sessionStorage}catch{return null}}function mn(){try{return new URLSearchParams(window.location.search)}catch{return null}}function gt(){if(!G())return null;let e=mn(),t=e?.get(oe);if(t){let n={token:t,origin:e?.get(ie)??null,panel:e?.get(ft)==="1",guide:e?.get(ht)??null,panelPath:e?.get(mt)??null};try{nt()?.setItem(tt,JSON.stringify(n));}catch{}return n}try{let n=nt()?.getItem(tt);return n?JSON.parse(n):null}catch{return null}}function vt(){if(G())try{nt()?.removeItem(tt);}catch{}}var wt=["http:","https:"],xt="data-veo-guide";function z(e,t,n){let o=t.createElement("div");if(o.className="veo-guide-content",typeof e.imageUrl=="string"&&e.imageUrl&&X(e.imageUrl)){let s=t.createElement("img");s.className="veo-guide-image",s.src=e.imageUrl,s.alt=typeof e.title=="string"?e.title:"",o.appendChild(s);}if(typeof e.title=="string"&&e.title){let s=t.createElement("h2");s.className="veo-guide-title",s.textContent=e.title,o.appendChild(s);}if(typeof e.content=="string"&&e.content){let s=t.createElement("p");s.className="veo-guide-text",s.textContent=e.content,o.appendChild(s);}let i=t.createElement("div");if(i.className="veo-guide-actions",typeof e.ctaText=="string"&&e.ctaText){let s=t.createElement("button");s.type="button",s.className="veo-guide-cta",s.textContent=e.ctaText,s.addEventListener("click",()=>{let a=e.ctaAction??"dismiss",c=hn(e);n.onCtaClick(a,c);}),i.appendChild(s);}o.appendChild(i);let r=t.createElement("button");return r.type="button",r.className="veo-guide-close",r.setAttribute("aria-label","Cerrar"),r.textContent="\xD7",r.addEventListener("click",()=>n.onDismiss()),o.appendChild(r),o}function X(e){if(typeof e!="string"||e.length===0)return false;try{let t=typeof window<"u"?window.location.href:"http://localhost/",n=new URL(e,t);return wt.includes(n.protocol)}catch{return false}}function hn(e){let t=e.style?.ctaUrl;if(typeof t=="string")return X(t)?t:void 0}var gn={"--veo-bg":"#1f2937","--veo-text":"#f9fafb","--veo-text-secondary":"#d1d5db","--veo-shadow":"0 20px 60px rgba(0, 0, 0, 0.55)"},vn={left:"flex-start",center:"center",right:"flex-end"},yt={none:"none",soft:"0 4px 14px rgba(0, 0, 0, 0.10)",medium:"0 8px 30px rgba(0, 0, 0, 0.18)",strong:"0 24px 60px rgba(0, 0, 0, 0.32)"},bt={center:[.5,.5],top:[.5,0],bottom:[.5,1],left:[0,.5],right:[1,.5],"top-left":[0,0],"top-right":[1,0],"bottom-left":[0,1],"bottom-right":[1,1]},Et=/^#[0-9a-f]{3,8}$|^(rgb|rgba|hsl|hsla)\([\d.,%/\sdeg]+\)$|^[a-z]{3,20}$/i;function q(e,t,n){return Math.min(n,Math.max(t,e))}function Ct(e,t){if(!t||typeof t!="object")return;let n=t;if(typeof n.accentColor=="string"&&Et.test(n.accentColor.trim())&&e.style.setProperty("--veo-primary",n.accentColor.trim()),n.theme==="dark")for(let[r,s]of Object.entries(gn))e.style.setProperty(r,s);typeof n.radius=="number"&&Number.isFinite(n.radius)&&e.style.setProperty("--veo-radius",`${q(n.radius,0,48)}px`),typeof n.width=="number"&&Number.isFinite(n.width)&&e.style.setProperty("--veo-width",`${q(n.width,220,720)}px`),(n.align==="left"||n.align==="center"||n.align==="right")&&e.style.setProperty("--veo-actions-justify",vn[n.align]),typeof n.padding=="number"&&Number.isFinite(n.padding)&&e.style.setProperty("--veo-pad",`${q(n.padding,0,64)}px`),typeof n.margin=="number"&&Number.isFinite(n.margin)&&e.style.setProperty("--veo-margin",`${q(n.margin,0,64)}px`),typeof n.borderWidth=="number"&&Number.isFinite(n.borderWidth)&&e.style.setProperty("--veo-border-width",`${q(n.borderWidth,0,16)}px`),typeof n.borderColor=="string"&&Et.test(n.borderColor.trim())&&e.style.setProperty("--veo-border-color",n.borderColor.trim()),typeof n.shadow=="string"&&yt[n.shadow]&&e.style.setProperty("--veo-shadow",yt[n.shadow]);let o,i;typeof n.posX=="number"&&typeof n.posY=="number"?(o=q(n.posX,0,1),i=q(n.posY,0,1)):typeof n.overlayPosition=="string"&&bt[n.overlayPosition]&&([o,i]=bt[n.overlayPosition]),o!==void 0&&i!==void 0&&(e.style.setProperty("--veo-pos-x",`${o*100}%`),e.style.setProperty("--veo-pos-y",`${i*100}%`));}var kt=`
1
+ var veoBuilder=(function(exports){'use strict';function F(){return typeof window<"u"}function U(){return typeof document<"u"}var re="veoBuilder",se="veoBuilderOrigin",kt="veoBuilderPanel",St="veoBuilderPanelPath",Pt="veoGuide";var be="veo:builder_ctx",Rt="veo:builder_ctx:",Cn=720*60*1e3;function Ee(){try{return window.sessionStorage}catch{return null}}function ct(){try{return window.localStorage}catch{return null}}function At(t){return Rt+(t||"default")}function kn(t){try{Ee()?.setItem(be,JSON.stringify(t));}catch{}try{let e={...t,savedAt:Date.now()};ct()?.setItem(At(t.guide),JSON.stringify(e));}catch{}}function Sn(){let t=ct();if(!t)return null;let e=null;try{for(let i=0;i<t.length;i++){let r=t.key(i);if(!r?.startsWith(Rt))continue;let s=t.getItem(r);if(!s)continue;let a=null;try{a=JSON.parse(s);}catch{continue}if(typeof a?.savedAt!="number"||Date.now()-a.savedAt>Cn){try{t.removeItem(r);}catch{}continue}(!e||a.savedAt>e.savedAt)&&(e=a);}}catch{return null}if(!e)return null;let{savedAt:n,...o}=e;return o}function Pn(){try{return new URLSearchParams(window.location.search)}catch{return null}}function Lt(){if(!F())return null;let t=Pn(),e=t?.get(re);if(e){let o={token:e,origin:t?.get(se)??null,panel:t?.get(kt)==="1",guide:t?.get(Pt)??null,panelPath:t?.get(St)??null};return kn(o),o}try{let o=Ee()?.getItem(be);if(o)return JSON.parse(o)}catch{}let n=Sn();if(n)try{Ee()?.setItem(be,JSON.stringify(n));}catch{}return n}function Tt(){if(!F())return;let t=null;try{let e=Ee()?.getItem(be);e&&(t=JSON.parse(e).guide??null);}catch{}try{Ee()?.removeItem(be);}catch{}try{ct()?.removeItem(At(t));}catch{}}var It=["http:","https:"],_t="data-veo-guide";function j(t,e,n){let o=e.createElement("div");o.className="veo-guide-content";let i=An(t);return i?Ln(o,i,e,n):Rn(o,t,e,n),o.appendChild(W(e,()=>n.onDismiss())),o}function Rn(t,e,n,o){if(typeof e.imageUrl=="string"&&e.imageUrl&&M(e.imageUrl)){let r=n.createElement("img");r.className="veo-guide-image",r.src=e.imageUrl,r.alt=typeof e.title=="string"?e.title:"",t.appendChild(r);}if(typeof e.title=="string"&&e.title){let r=n.createElement("h2");r.className="veo-guide-title",r.textContent=e.title,t.appendChild(r);}if(typeof e.content=="string"&&e.content){let r=n.createElement("p");r.className="veo-guide-text",r.textContent=e.content,t.appendChild(r);}let i=n.createElement("div");if(i.className="veo-guide-actions",typeof e.ctaText=="string"&&e.ctaText){let r=n.createElement("button");r.type="button",r.className="veo-guide-cta",r.textContent=e.ctaText,r.addEventListener("click",()=>{let s=e.ctaAction??"dismiss",a=On(e);o.onCtaClick(s,a);}),i.appendChild(r);}t.appendChild(i);}function An(t){if(!Array.isArray(t.blocks)||t.blocks.length===0)return null;let e=t.blocks.filter(n=>!n||typeof n!="object"?false:n.type==="image"?typeof n.url=="string"&&M(n.url):n.type==="title"||n.type==="text"||n.type==="button");return e.length>0?e:null}function Ln(t,e,n,o){let i=0;for(;i<e.length;){let r=e[i];if(r?.type==="button"){let a=n.createElement("div");for(a.className="veo-guide-actions";i<e.length&&e[i]?.type==="button";){let l=e[i];a.appendChild(In(l,n,o)),i++;}t.appendChild(a);continue}let s=Tn(r,n);s&&t.appendChild(s),i++;}}function Tn(t,e){switch(t.type){case "title":{let n=e.createElement("h2");return n.className="veo-guide-title",n.textContent=typeof t.text=="string"?t.text:"",Ne(n,t.style,"text"),n}case "text":{let n=e.createElement("p");return n.className="veo-guide-text",n.textContent=typeof t.text=="string"?t.text:"",Ne(n,t.style,"text"),n}case "image":{if(typeof t.url!="string"||!M(t.url))return null;let n=e.createElement("img");return n.className="veo-guide-image",n.src=t.url,n.alt="",Ne(n,t.style,"image"),n}default:return null}}function In(t,e,n){let o=e.createElement("button");return o.type="button",o.className="veo-guide-cta",o.textContent=typeof t.text=="string"&&t.text?t.text:"OK",Ne(o,t.style,"button"),o.addEventListener("click",()=>{let i=t.action??"dismiss",r=i==="url"&&typeof t.url=="string"&&M(t.url)?t.url:void 0;n.onCtaClick(i,r);}),o}var _n={left:"flex-start",center:"center",right:"flex-end"};function Ce(t,e,n){return Math.min(n,Math.max(e,t))}function Ne(t,e,n){if(!e||typeof e!="object")return;let o=e,i=typeof o.align=="string"?o.align:null;i&&(i==="left"||i==="center"||i==="right")&&(n==="text"?t.style.textAlign=i:t.style.alignSelf=_n[i]),n!=="image"&&typeof o.color=="string"&&(t.style.color=o.color),n==="text"&&typeof o.fontSize=="number"&&Number.isFinite(o.fontSize)&&(t.style.fontSize=`${Ce(o.fontSize,8,72)}px`),n==="image"&&typeof o.width=="number"&&Number.isFinite(o.width)&&(t.style.width=`${Ce(o.width,10,100)}%`),n==="image"&&typeof o.radius=="number"&&Number.isFinite(o.radius)&&(t.style.borderRadius=`${Ce(o.radius,0,48)}px`),typeof o.marginTop=="number"&&Number.isFinite(o.marginTop)&&(t.style.marginTop=`${Ce(o.marginTop,0,64)}px`),typeof o.marginBottom=="number"&&Number.isFinite(o.marginBottom)&&(t.style.marginBottom=`${Ce(o.marginBottom,0,64)}px`);}function W(t,e,n="veo-guide-close"){let o=t.createElement("button");return o.type="button",o.className=n,o.setAttribute("aria-label","Cerrar"),o.textContent="\xD7",o.addEventListener("click",e),o}function M(t){if(typeof t!="string"||t.length===0)return false;try{let e=typeof window<"u"?window.location.href:"http://localhost/",n=new URL(t,e);return It.includes(n.protocol)}catch{return false}}function On(t){let e=t.style?.ctaUrl;if(typeof e=="string")return M(e)?e:void 0}function ae(t,e,n,o,i){let r=o.createElement("div");r.className="veo-guide-content";let s=o.createElement("div");s.className="veo-walkthrough-counter",s.textContent=`Paso ${e+1} de ${n}`,r.appendChild(s);let a=o.createElement("div");a.className="veo-walkthrough-progress";for(let f=0;f<n;f++){let g=o.createElement("span");g.className="veo-walkthrough-progress-dot",f<e&&g.classList.add("completed"),f===e&&g.classList.add("active"),a.appendChild(g);}if(r.appendChild(a),typeof t.imageUrl=="string"&&t.imageUrl&&M(t.imageUrl)){let f=o.createElement("img");f.className="veo-guide-image",f.src=t.imageUrl,f.alt=typeof t.title=="string"?t.title:"",r.appendChild(f);}if(typeof t.title=="string"&&t.title){let f=o.createElement("h2");f.className="veo-guide-title",f.textContent=t.title,r.appendChild(f);}if(typeof t.content=="string"&&t.content){let f=o.createElement("p");f.className="veo-guide-text",f.textContent=t.content,r.appendChild(f);}let l=o.createElement("div");l.className="veo-walkthrough-actions";let c=o.createElement("button");c.type="button",c.className="veo-walkthrough-skip",c.textContent="Omitir",c.addEventListener("click",()=>i.onSkip()),l.appendChild(c);let m=o.createElement("div");if(m.className="veo-walkthrough-actions-right",e>0){let f=o.createElement("button");f.type="button",f.className="veo-walkthrough-btn-secondary",f.textContent="Atr\xE1s",f.addEventListener("click",()=>i.onBack()),m.appendChild(f);}let d=e===n-1,u=o.createElement("button");u.type="button",u.className="veo-guide-cta";let p=d?"Finalizar":"Siguiente";return u.textContent=typeof t.ctaText=="string"&&t.ctaText?t.ctaText:p,u.addEventListener("click",()=>{d?i.onComplete():i.onNext();}),m.appendChild(u),l.appendChild(m),r.appendChild(l),r.appendChild(W(o,()=>i.onSkip())),r}var Nn={"--veo-bg":"#1f2937","--veo-text":"#f9fafb","--veo-text-secondary":"#d1d5db","--veo-shadow":"0 20px 60px rgba(0, 0, 0, 0.55)"},dt={left:"flex-start",center:"center",right:"flex-end"},Bn={left:"flex-start",center:"center",right:"flex-end"},Mn={title:"text",text:"text",image:"self"},Ot={none:"none",soft:"0 4px 14px rgba(0, 0, 0, 0.10)",medium:"0 8px 30px rgba(0, 0, 0, 0.18)",strong:"0 24px 60px rgba(0, 0, 0, 0.32)"},Nt={center:[.5,.5],top:[.5,0],bottom:[.5,1],left:[0,.5],right:[1,.5],"top-left":[0,0],"top-right":[1,0],"bottom-left":[0,1],"bottom-right":[1,1]},pt=/^#[0-9a-f]{3,8}$|^(rgb|rgba|hsl|hsla)\([\d.,%/\sdeg]+\)$|^[a-z]{3,20}$/i;function A(t,e,n){return Math.min(n,Math.max(e,t))}function Bt(t,e){if(!e||typeof e!="object")return;let n=e;if(typeof n.accentColor=="string"&&pt.test(n.accentColor.trim())&&t.style.setProperty("--veo-primary",n.accentColor.trim()),typeof n.fontFamily=="string"&&n.fontFamily.length<=200&&!/[<>{}]/.test(n.fontFamily)&&t.style.setProperty("--veo-font",n.fontFamily.trim()),n.theme==="dark")for(let[r,s]of Object.entries(Nn))t.style.setProperty(r,s);typeof n.radius=="number"&&Number.isFinite(n.radius)&&t.style.setProperty("--veo-radius",`${A(n.radius,0,48)}px`),typeof n.width=="number"&&Number.isFinite(n.width)&&t.style.setProperty("--veo-width",`${A(n.width,220,720)}px`),(n.align==="left"||n.align==="center"||n.align==="right")&&t.style.setProperty("--veo-actions-justify",dt[n.align]),typeof n.padding=="number"&&Number.isFinite(n.padding)&&t.style.setProperty("--veo-pad",`${A(n.padding,0,64)}px`),typeof n.margin=="number"&&Number.isFinite(n.margin)&&t.style.setProperty("--veo-margin",`${A(n.margin,0,64)}px`),typeof n.borderWidth=="number"&&Number.isFinite(n.borderWidth)&&t.style.setProperty("--veo-border-width",`${A(n.borderWidth,0,16)}px`),typeof n.borderColor=="string"&&pt.test(n.borderColor.trim())&&t.style.setProperty("--veo-border-color",n.borderColor.trim()),typeof n.shadow=="string"&&Ot[n.shadow]&&t.style.setProperty("--veo-shadow",Ot[n.shadow]);let o,i;if(typeof n.posX=="number"&&typeof n.posY=="number"?(o=A(n.posX,0,1),i=A(n.posY,0,1)):typeof n.overlayPosition=="string"&&Nt[n.overlayPosition]&&([o,i]=Nt[n.overlayPosition]),o!==void 0&&i!==void 0&&(t.style.setProperty("--veo-pos-x",`${o*100}%`),t.style.setProperty("--veo-pos-y",`${i*100}%`)),n.elements&&typeof n.elements=="object"){let r=n.elements;ut(t,"title",r.title),ut(t,"text",r.text),ut(t,"image",r.image);let s=r.cta;s&&typeof s.align=="string"&&dt[s.align]&&t.style.setProperty("--veo-actions-justify",dt[s.align]);}}function ut(t,e,n){if(!n||typeof n!="object")return;let o=n;if(typeof o.align=="string"&&(o.align==="left"||o.align==="center"||o.align==="right")){let r=(Mn[e]??"text")==="self"?Bn[o.align]:o.align;t.style.setProperty(`--veo-${e}-align`,r);}typeof o.color=="string"&&pt.test(o.color.trim())&&t.style.setProperty(`--veo-${e}-color`,o.color.trim()),typeof o.fontSize=="number"&&Number.isFinite(o.fontSize)&&t.style.setProperty(`--veo-${e}-size`,`${A(o.fontSize,8,72)}px`),typeof o.width=="number"&&Number.isFinite(o.width)&&t.style.setProperty(`--veo-${e}-width`,`${A(o.width,10,100)}%`),typeof o.radius=="number"&&Number.isFinite(o.radius)&&t.style.setProperty(`--veo-${e}-radius`,`${A(o.radius,0,48)}px`),typeof o.marginTop=="number"&&Number.isFinite(o.marginTop)&&t.style.setProperty(`--veo-${e}-mt`,`${A(o.marginTop,0,64)}px`),typeof o.marginBottom=="number"&&Number.isFinite(o.marginBottom)&&t.style.setProperty(`--veo-${e}-mb`,`${A(o.marginBottom,0,64)}px`);}var Mt=`
2
2
  :host {
3
3
  --veo-primary: #4f46e5;
4
4
  --veo-text: #1f2937;
@@ -10,7 +10,7 @@ var veoBuilder=(function(exports){'use strict';function G(){return typeof window
10
10
  --veo-actions-justify: flex-end;
11
11
  all: initial;
12
12
  }
13
- * { box-sizing: border-box; font-family: -apple-system, system-ui, "Segoe UI", Roboto, sans-serif; }
13
+ * { box-sizing: border-box; font-family: var(--veo-font, -apple-system, system-ui, "Segoe UI", Roboto, sans-serif); }
14
14
 
15
15
  .veo-modal-overlay {
16
16
  position: fixed; inset: 0;
@@ -61,6 +61,15 @@ var veoBuilder=(function(exports){'use strict';function G(){return typeof window
61
61
  box-shadow: var(--veo-shadow, 0 8px 30px rgba(0, 0, 0, 0.18));
62
62
  animation: veo-fade-in 150ms ease-out;
63
63
  }
64
+ .veo-tooltip-arrow {
65
+ position: absolute;
66
+ width: 12px;
67
+ height: 12px;
68
+ background: var(--veo-bg);
69
+ border: var(--veo-border-width, 0) solid var(--veo-border-color, transparent);
70
+ transform: rotate(45deg);
71
+ pointer-events: none;
72
+ }
64
73
 
65
74
  .veo-inline {
66
75
  background: var(--veo-bg);
@@ -79,17 +88,25 @@ var veoBuilder=(function(exports){'use strict';function G(){return typeof window
79
88
  display: flex; flex-direction: column;
80
89
  }
81
90
  .veo-guide-image {
82
- display: block; width: 100%; max-height: 180px;
83
- object-fit: cover; border-radius: 8px;
84
- margin-bottom: 12px;
91
+ display: block;
92
+ width: var(--veo-image-width, 100%);
93
+ max-height: 180px;
94
+ object-fit: cover;
95
+ align-self: var(--veo-image-align, stretch);
96
+ border-radius: var(--veo-image-radius, 8px);
97
+ margin: var(--veo-image-mt, 0) 0 var(--veo-image-mb, 12px);
85
98
  }
86
99
  .veo-guide-title {
87
- font-size: 18px; font-weight: 600; line-height: 1.3;
88
- margin: 0 0 6px; color: var(--veo-text);
100
+ font-size: var(--veo-title-size, 18px); font-weight: 600; line-height: 1.3;
101
+ text-align: var(--veo-title-align, left);
102
+ margin: var(--veo-title-mt, 0) 0 var(--veo-title-mb, 6px);
103
+ color: var(--veo-title-color, var(--veo-text));
89
104
  }
90
105
  .veo-guide-text {
91
- font-size: 14px; line-height: 1.5;
92
- margin: 0 0 16px; color: var(--veo-text-secondary);
106
+ font-size: var(--veo-text-size, 14px); line-height: 1.5;
107
+ text-align: var(--veo-text-align, left);
108
+ margin: var(--veo-text-mt, 0) 0 var(--veo-text-mb, 16px);
109
+ color: var(--veo-text-color, var(--veo-text-secondary));
93
110
  }
94
111
  .veo-guide-actions {
95
112
  display: flex; gap: 8px; justify-content: var(--veo-actions-justify);
@@ -226,6 +243,7 @@ var veoBuilder=(function(exports){'use strict';function G(){return typeof window
226
243
  }
227
244
  .veo-custom-inline {
228
245
  display: block;
246
+ position: relative;
229
247
  margin: 12px 0;
230
248
  }
231
249
  .veo-custom-frame {
@@ -235,6 +253,21 @@ var veoBuilder=(function(exports){'use strict';function G(){return typeof window
235
253
  background: transparent;
236
254
  color-scheme: normal;
237
255
  }
256
+ /*
257
+ * X de cerrar de las gu\xEDas custom: el HTML del cliente vive en un iframe
258
+ * sandbox, as\xED que el bot\xF3n lo pone el host POR ENCIMA del iframe. Con fondo
259
+ * propio para ser visible sobre cualquier contenido.
260
+ */
261
+ .veo-custom-close {
262
+ position: absolute; top: 6px; right: 6px; z-index: 1;
263
+ width: 22px; height: 22px; padding: 0;
264
+ display: flex; align-items: center; justify-content: center;
265
+ font-size: 16px; line-height: 1; color: #6b7280;
266
+ background: rgba(255, 255, 255, 0.92);
267
+ border: 1px solid rgba(0, 0, 0, 0.08); border-radius: 50%;
268
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.14); cursor: pointer;
269
+ }
270
+ .veo-custom-close:hover { color: #111827; }
238
271
 
239
272
  @keyframes veo-fade-in { from { opacity: 0; } to { opacity: 1; } }
240
273
  @keyframes veo-slide-up {
@@ -245,11 +278,11 @@ var veoBuilder=(function(exports){'use strict';function G(){return typeof window
245
278
  from { transform: translateY(-10px); opacity: 0; }
246
279
  to { transform: translateY(0); opacity: 1; }
247
280
  }
248
- `;var b=class{constructor(){this.host=null;this.shadow=null;this.cleanups=[];}createHost(){let t=document.createElement("div");t.setAttribute(xt,"");let n=t.attachShadow({mode:"open"}),o=document.createElement("style");o.textContent=kt,n.appendChild(o);let i=document.createElement("div");return n.appendChild(i),document.body.appendChild(t),this.host=t,this.shadow=n,{host:t,shadow:n,root:i}}applyDesign(t){this.host&&Ct(this.host,t);}registerCleanup(t){this.cleanups.push(t);}destroy(){for(let t of this.cleanups)try{t();}catch{}this.cleanups=[],this.host?.parentNode&&this.host.parentNode.removeChild(this.host),this.host=null,this.shadow=null;}};var Se=class extends b{render(t){let n=t.guide.guideSteps[0];if(!n)return;let{root:o}=this.createHost();this.applyDesign(n.style);let i=o.ownerDocument??document,r=n.style?.position==="bottom"?"bottom":"top",s=i.createElement("div");s.className=`veo-banner veo-banner-${r}`;let a=(l,d)=>{t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:l}),d&&window.open(d,"_blank","noopener,noreferrer"),t.onClose();},c=z(n,i,{onCtaClick:(l,d)=>{a("cta_clicked",l==="url"?d:void 0);},onDismiss:()=>a("dismissed")});s.appendChild(c),o.appendChild(s),t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:"shown"});}};var J=Math.min,V=Math.max,ye=Math.round;var N=e=>({x:e,y:e}),wn={left:"right",right:"left",bottom:"top",top:"bottom"};function Le(e,t,n){return V(e,J(t,n))}function re(e,t){return typeof e=="function"?e(t):e}function K(e){return e.split("-")[0]}function se(e){return e.split("-")[1]}function ot(e){return e==="x"?"y":"x"}function Te(e){return e==="y"?"height":"width"}function U(e){let t=e[0];return t==="t"||t==="b"?"y":"x"}function Ie(e){return ot(U(e))}function St(e,t,n){n===void 0&&(n=false);let o=se(e),i=Ie(e),r=Te(i),s=i==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return t.reference[r]>t.floating[r]&&(s=xe(s)),[s,xe(s)]}function At(e){let t=xe(e);return [Ae(e),t,Ae(t)]}function Ae(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}var Pt=["left","right"],Rt=["right","left"],xn=["top","bottom"],yn=["bottom","top"];function bn(e,t,n){switch(e){case "top":case "bottom":return n?t?Rt:Pt:t?Pt:Rt;case "left":case "right":return t?xn:yn;default:return []}}function Lt(e,t,n,o){let i=se(e),r=bn(K(e),n==="start",o);return i&&(r=r.map(s=>s+"-"+i),t&&(r=r.concat(r.map(Ae)))),r}function xe(e){let t=K(e);return wn[t]+e.slice(t.length)}function En(e){return {top:0,right:0,bottom:0,left:0,...e}}function it(e){return typeof e!="number"?En(e):{top:e,right:e,bottom:e,left:e}}function Q(e){let{x:t,y:n,width:o,height:i}=e;return {width:o,height:i,top:n,left:t,right:t+o,bottom:n+i,x:t,y:n}}function Tt(e,t,n){let{reference:o,floating:i}=e,r=U(t),s=Ie(t),a=Te(s),c=K(t),l=r==="y",d=o.x+o.width/2-i.width/2,p=o.y+o.height/2-i.height/2,f=o[a]/2-i[a]/2,u;switch(c){case "top":u={x:d,y:o.y-i.height};break;case "bottom":u={x:d,y:o.y+o.height};break;case "right":u={x:o.x+o.width,y:p};break;case "left":u={x:o.x-i.width,y:p};break;default:u={x:o.x,y:o.y};}switch(se(t)){case "start":u[s]-=f*(n&&l?-1:1);break;case "end":u[s]+=f*(n&&l?-1:1);break}return u}async function It(e,t){var n;t===void 0&&(t={});let{x:o,y:i,platform:r,rects:s,elements:a,strategy:c}=e,{boundary:l="clippingAncestors",rootBoundary:d="viewport",elementContext:p="floating",altBoundary:f=false,padding:u=0}=re(t,e),m=it(u),v=a[f?p==="floating"?"reference":"floating":p],w=Q(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(a.floating)),boundary:l,rootBoundary:d,strategy:c})),g=p==="floating"?{x:o,y:i,width:s.floating.width,height:s.floating.height}:s.reference,x=await(r.getOffsetParent==null?void 0:r.getOffsetParent(a.floating)),y=await(r.isElement==null?void 0:r.isElement(x))?await(r.getScale==null?void 0:r.getScale(x))||{x:1,y:1}:{x:1,y:1},C=Q(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:g,offsetParent:x,strategy:c}):g);return {top:(w.top-C.top+m.top)/y.y,bottom:(C.bottom-w.bottom+m.bottom)/y.y,left:(w.left-C.left+m.left)/y.x,right:(C.right-w.right+m.right)/y.x}}var Cn=50,_t=async(e,t,n)=>{let{placement:o="bottom",strategy:i="absolute",middleware:r=[],platform:s}=n,a=s.detectOverflow?s:{...s,detectOverflow:It},c=await(s.isRTL==null?void 0:s.isRTL(t)),l=await s.getElementRects({reference:e,floating:t,strategy:i}),{x:d,y:p}=Tt(l,o,c),f=o,u=0,m={};for(let h=0;h<r.length;h++){let v=r[h];if(!v)continue;let{name:w,fn:g}=v,{x,y,data:C,reset:E}=await g({x:d,y:p,initialPlacement:o,placement:f,strategy:i,middlewareData:m,rects:l,platform:a,elements:{reference:e,floating:t}});d=x??d,p=y??p,m[w]={...m[w],...C},E&&u<Cn&&(u++,typeof E=="object"&&(E.placement&&(f=E.placement),E.rects&&(l=E.rects===true?await s.getElementRects({reference:e,floating:t,strategy:i}):E.rects),{x:d,y:p}=Tt(l,f,c)),h=-1);}return {x:d,y:p,placement:f,strategy:i,middlewareData:m}},Ot=e=>({name:"arrow",options:e,async fn(t){let{x:n,y:o,placement:i,rects:r,platform:s,elements:a,middlewareData:c}=t,{element:l,padding:d=0}=re(e,t)||{};if(l==null)return {};let p=it(d),f={x:n,y:o},u=Ie(i),m=Te(u),h=await s.getDimensions(l),v=u==="y",w=v?"top":"left",g=v?"bottom":"right",x=v?"clientHeight":"clientWidth",y=r.reference[m]+r.reference[u]-f[u]-r.floating[m],C=f[u]-r.reference[u],E=await(s.getOffsetParent==null?void 0:s.getOffsetParent(l)),R=E?E[x]:0;(!R||!await(s.isElement==null?void 0:s.isElement(E)))&&(R=a.floating[x]||r.floating[m]);let I=y/2-C/2,S=R/2-h[m]/2-1,D=J(p[w],S),ge=J(p[g],S),Y=D,ve=R-h[m]-ge,k=R/2-h[m]/2+I,j=Le(Y,k,ve),H=!c.arrow&&se(i)!=null&&k!==j&&r.reference[m]/2-(k<Y?D:ge)-h[m]/2<0,_=H?k<Y?k-Y:k-ve:0;return {[u]:f[u]+_,data:{[u]:j,centerOffset:k-j-_,...H&&{alignmentOffset:_}},reset:H}}});var Nt=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,o;let{placement:i,middlewareData:r,rects:s,initialPlacement:a,platform:c,elements:l}=t,{mainAxis:d=true,crossAxis:p=true,fallbackPlacements:f,fallbackStrategy:u="bestFit",fallbackAxisSideDirection:m="none",flipAlignment:h=true,...v}=re(e,t);if((n=r.arrow)!=null&&n.alignmentOffset)return {};let w=K(i),g=U(a),x=K(a)===a,y=await(c.isRTL==null?void 0:c.isRTL(l.floating)),C=f||(x||!h?[xe(a)]:At(a)),E=m!=="none";!f&&E&&C.push(...Lt(a,h,m,y));let R=[a,...C],I=await c.detectOverflow(t,v),S=[],D=((o=r.flip)==null?void 0:o.overflows)||[];if(d&&S.push(I[w]),p){let k=St(i,s,y);S.push(I[k[0]],I[k[1]]);}if(D=[...D,{placement:i,overflows:S}],!S.every(k=>k<=0)){var ge,Y;let k=(((ge=r.flip)==null?void 0:ge.index)||0)+1,j=R[k];if(j&&(!(p==="alignment"?g!==U(j):false)||D.every(O=>U(O.placement)===g?O.overflows[0]>0:true)))return {data:{index:k,overflows:D},reset:{placement:j}};let H=(Y=D.filter(_=>_.overflows[0]<=0).sort((_,O)=>_.overflows[1]-O.overflows[1])[0])==null?void 0:Y.placement;if(!H)switch(u){case "bestFit":{var ve;let _=(ve=D.filter(O=>{if(E){let W=U(O.placement);return W===g||W==="y"}return true}).map(O=>[O.placement,O.overflows.filter(W=>W>0).reduce((W,fn)=>W+fn,0)]).sort((O,W)=>O[1]-W[1])[0])==null?void 0:ve[0];_&&(H=_);break}case "initialPlacement":H=a;break}if(i!==H)return {reset:{placement:H}}}return {}}}};var kn=new Set(["left","top"]);async function Pn(e,t){let{placement:n,platform:o,elements:i}=e,r=await(o.isRTL==null?void 0:o.isRTL(i.floating)),s=K(n),a=se(n),c=U(n)==="y",l=kn.has(s)?-1:1,d=r&&c?-1:1,p=re(t,e),{mainAxis:f,crossAxis:u,alignmentAxis:m}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return a&&typeof m=="number"&&(u=a==="end"?m*-1:m),c?{x:u*d,y:f*l}:{x:f*l,y:u*d}}var Mt=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,o;let{x:i,y:r,placement:s,middlewareData:a}=t,c=await Pn(t,e);return s===((n=a.offset)==null?void 0:n.placement)&&(o=a.arrow)!=null&&o.alignmentOffset?{}:{x:i+c.x,y:r+c.y,data:{...c,placement:s}}}}},Bt=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){let{x:n,y:o,placement:i,platform:r}=t,{mainAxis:s=true,crossAxis:a=false,limiter:c={fn:w=>{let{x:g,y:x}=w;return {x:g,y:x}}},...l}=re(e,t),d={x:n,y:o},p=await r.detectOverflow(t,l),f=U(K(i)),u=ot(f),m=d[u],h=d[f];if(s){let w=u==="y"?"top":"left",g=u==="y"?"bottom":"right",x=m+p[w],y=m-p[g];m=Le(x,m,y);}if(a){let w=f==="y"?"top":"left",g=f==="y"?"bottom":"right",x=h+p[w],y=h-p[g];h=Le(x,h,y);}let v=c.fn({...t,[u]:m,[f]:h});return {...v,data:{x:v.x-n,y:v.y-o,enabled:{[u]:s,[f]:a}}}}}};function Oe(){return typeof window<"u"}function ee(e){return Ht(e)?(e.nodeName||"").toLowerCase():"#document"}function P(e){var t;return (e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function M(e){var t;return (t=(Ht(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function Ht(e){return Oe()?e instanceof Node||e instanceof P(e).Node:false}function A(e){return Oe()?e instanceof Element||e instanceof P(e).Element:false}function B(e){return Oe()?e instanceof HTMLElement||e instanceof P(e).HTMLElement:false}function Dt(e){return !Oe()||typeof ShadowRoot>"u"?false:e instanceof ShadowRoot||e instanceof P(e).ShadowRoot}function ae(e){let{overflow:t,overflowX:n,overflowY:o,display:i}=L(e);return /auto|scroll|overlay|hidden|clip/.test(t+o+n)&&i!=="inline"&&i!=="contents"}function Gt(e){return /^(table|td|th)$/.test(ee(e))}function be(e){try{if(e.matches(":popover-open"))return !0}catch{}try{return e.matches(":modal")}catch{return false}}var Rn=/transform|translate|scale|rotate|perspective|filter/,Sn=/paint|layout|strict|content/,Z=e=>!!e&&e!=="none",rt;function Ne(e){let t=A(e)?L(e):e;return Z(t.transform)||Z(t.translate)||Z(t.scale)||Z(t.rotate)||Z(t.perspective)||!Me()&&(Z(t.backdropFilter)||Z(t.filter))||Rn.test(t.willChange||"")||Sn.test(t.contain||"")}function $t(e){let t=F(e);for(;B(t)&&!te(t);){if(Ne(t))return t;if(be(t))return null;t=F(t);}return null}function Me(){return rt==null&&(rt=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),rt}function te(e){return /^(html|body|#document)$/.test(ee(e))}function L(e){return P(e).getComputedStyle(e)}function Ee(e){return A(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function F(e){if(ee(e)==="html")return e;let t=e.assignedSlot||e.parentNode||Dt(e)&&e.host||M(e);return Dt(t)?t.host:t}function Ut(e){let t=F(e);return te(t)?e.ownerDocument?e.ownerDocument.body:e.body:B(t)&&ae(t)?t:Ut(t)}function _e(e,t,n){var o;t===void 0&&(t=[]);let i=Ut(e),r=i===((o=e.ownerDocument)==null?void 0:o.body),s=P(i);if(r){Be(s);return t.concat(s,s.visualViewport||[],ae(i)?i:[],[])}else return t.concat(i,_e(i,[]))}function Be(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Vt(e){let t=L(e),n=parseFloat(t.width)||0,o=parseFloat(t.height)||0,i=B(e),r=i?e.offsetWidth:n,s=i?e.offsetHeight:o,a=ye(n)!==r||ye(o)!==s;return a&&(n=r,o=s),{width:n,height:o,$:a}}function Kt(e){return A(e)?e:e.contextElement}function le(e){let t=Kt(e);if(!B(t))return N(1);let n=t.getBoundingClientRect(),{width:o,height:i,$:r}=Vt(t),s=(r?ye(n.width):n.width)/o,a=(r?ye(n.height):n.height)/i;return (!s||!Number.isFinite(s))&&(s=1),(!a||!Number.isFinite(a))&&(a=1),{x:s,y:a}}var An=N(0);function Yt(e){let t=P(e);return !Me()||!t.visualViewport?An:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function Ln(e,t,n){return t===void 0&&(t=false),!n||t&&n!==P(e)?false:t}function Ce(e,t,n,o){t===void 0&&(t=false),n===void 0&&(n=false);let i=e.getBoundingClientRect(),r=Kt(e),s=N(1);t&&(o?A(o)&&(s=le(o)):s=le(e));let a=Ln(r,n,o)?Yt(r):N(0),c=(i.left+a.x)/s.x,l=(i.top+a.y)/s.y,d=i.width/s.x,p=i.height/s.y;if(r){let f=P(r),u=o&&A(o)?P(o):o,m=f,h=Be(m);for(;h&&o&&u!==m;){let v=le(h),w=h.getBoundingClientRect(),g=L(h),x=w.left+(h.clientLeft+parseFloat(g.paddingLeft))*v.x,y=w.top+(h.clientTop+parseFloat(g.paddingTop))*v.y;c*=v.x,l*=v.y,d*=v.x,p*=v.y,c+=x,l+=y,m=P(h),h=Be(m);}}return Q({width:d,height:p,x:c,y:l})}function De(e,t){let n=Ee(e).scrollLeft;return t?t.left+n:Ce(M(e)).left+n}function jt(e,t){let n=e.getBoundingClientRect(),o=n.left+t.scrollLeft-De(e,n),i=n.top+t.scrollTop;return {x:o,y:i}}function Tn(e){let{elements:t,rect:n,offsetParent:o,strategy:i}=e,r=i==="fixed",s=M(o),a=t?be(t.floating):false;if(o===s||a&&r)return n;let c={scrollLeft:0,scrollTop:0},l=N(1),d=N(0),p=B(o);if((p||!p&&!r)&&((ee(o)!=="body"||ae(s))&&(c=Ee(o)),p)){let u=Ce(o);l=le(o),d.x=u.x+o.clientLeft,d.y=u.y+o.clientTop;}let f=s&&!p&&!r?jt(s,c):N(0);return {width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+d.x+f.x,y:n.y*l.y-c.scrollTop*l.y+d.y+f.y}}function In(e){return Array.from(e.getClientRects())}function _n(e){let t=M(e),n=Ee(e),o=e.ownerDocument.body,i=V(t.scrollWidth,t.clientWidth,o.scrollWidth,o.clientWidth),r=V(t.scrollHeight,t.clientHeight,o.scrollHeight,o.clientHeight),s=-n.scrollLeft+De(e),a=-n.scrollTop;return L(o).direction==="rtl"&&(s+=V(t.clientWidth,o.clientWidth)-i),{width:i,height:r,x:s,y:a}}var Ft=25;function On(e,t){let n=P(e),o=M(e),i=n.visualViewport,r=o.clientWidth,s=o.clientHeight,a=0,c=0;if(i){r=i.width,s=i.height;let d=Me();(!d||d&&t==="fixed")&&(a=i.offsetLeft,c=i.offsetTop);}let l=De(o);if(l<=0){let d=o.ownerDocument,p=d.body,f=getComputedStyle(p),u=d.compatMode==="CSS1Compat"&&parseFloat(f.marginLeft)+parseFloat(f.marginRight)||0,m=Math.abs(o.clientWidth-p.clientWidth-u);m<=Ft&&(r-=m);}else l<=Ft&&(r+=l);return {width:r,height:s,x:a,y:c}}function Nn(e,t){let n=Ce(e,true,t==="fixed"),o=n.top+e.clientTop,i=n.left+e.clientLeft,r=B(e)?le(e):N(1),s=e.clientWidth*r.x,a=e.clientHeight*r.y,c=i*r.x,l=o*r.y;return {width:s,height:a,x:c,y:l}}function Wt(e,t,n){let o;if(t==="viewport")o=On(e,n);else if(t==="document")o=_n(M(e));else if(A(t))o=Nn(t,n);else {let i=Yt(e);o={x:t.x-i.x,y:t.y-i.y,width:t.width,height:t.height};}return Q(o)}function Xt(e,t){let n=F(e);return n===t||!A(n)||te(n)?false:L(n).position==="fixed"||Xt(n,t)}function Mn(e,t){let n=t.get(e);if(n)return n;let o=_e(e,[]).filter(a=>A(a)&&ee(a)!=="body"),i=null,r=L(e).position==="fixed",s=r?F(e):e;for(;A(s)&&!te(s);){let a=L(s),c=Ne(s);!c&&a.position==="fixed"&&(i=null),(r?!c&&!i:!c&&a.position==="static"&&!!i&&(i.position==="absolute"||i.position==="fixed")||ae(s)&&!c&&Xt(e,s))?o=o.filter(d=>d!==s):i=a,s=F(s);}return t.set(e,o),o}function Bn(e){let{element:t,boundary:n,rootBoundary:o,strategy:i}=e,s=[...n==="clippingAncestors"?be(t)?[]:Mn(t,this._c):[].concat(n),o],a=Wt(t,s[0],i),c=a.top,l=a.right,d=a.bottom,p=a.left;for(let f=1;f<s.length;f++){let u=Wt(t,s[f],i);c=V(u.top,c),l=J(u.right,l),d=J(u.bottom,d),p=V(u.left,p);}return {width:l-p,height:d-c,x:p,y:c}}function Dn(e){let{width:t,height:n}=Vt(e);return {width:t,height:n}}function Hn(e,t,n){let o=B(t),i=M(t),r=n==="fixed",s=Ce(e,true,r,t),a={scrollLeft:0,scrollTop:0},c=N(0);function l(){c.x=De(i);}if(o||!o&&!r)if((ee(t)!=="body"||ae(i))&&(a=Ee(t)),o){let u=Ce(t,true,r,t);c.x=u.x+t.clientLeft,c.y=u.y+t.clientTop;}else i&&l();r&&!o&&i&&l();let d=i&&!o&&!r?jt(i,a):N(0),p=s.left+a.scrollLeft-c.x-d.x,f=s.top+a.scrollTop-c.y-d.y;return {x:p,y:f,width:s.width,height:s.height}}function st(e){return L(e).position==="static"}function zt(e,t){if(!B(e)||L(e).position==="fixed")return null;if(t)return t(e);let n=e.offsetParent;return M(e)===n&&(n=n.ownerDocument.body),n}function qt(e,t){let n=P(e);if(be(e))return n;if(!B(e)){let i=F(e);for(;i&&!te(i);){if(A(i)&&!st(i))return i;i=F(i);}return n}let o=zt(e,t);for(;o&&Gt(o)&&st(o);)o=zt(o,t);return o&&te(o)&&st(o)&&!Ne(o)?n:o||$t(e)||n}var Gn=async function(e){let t=this.getOffsetParent||qt,n=this.getDimensions,o=await n(e.floating);return {reference:Hn(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function $n(e){return L(e).direction==="rtl"}var Un={convertOffsetParentRelativeRectToViewportRelativeRect:Tn,getDocumentElement:M,getClippingRect:Bn,getOffsetParent:qt,getElementRects:Gn,getClientRects:In,getDimensions:Dn,getScale:le,isElement:A,isRTL:$n};var ce=Mt;var de=Bt,ue=Nt;var Jt=Ot;var pe=(e,t,n)=>{let o=new Map,i={platform:Un,...n},r={...i.platform,_c:o};return _t(e,t,{...i,platform:r})};function T(e,t=5e3){return new Promise(n=>{let o=()=>{try{return document.querySelector(e)}catch{return null}},i=o();if(i){n(i);return}let r=false,s=l=>{r||(r=true,a.disconnect(),clearTimeout(c),n(l));},a=new MutationObserver(()=>{let l=o();l&&s(l);});a.observe(document.body,{childList:true,subtree:true});let c=setTimeout(()=>s(null),t);})}function Qt(){let t=Date.now().toString(16).padStart(12,"0"),n=new Uint8Array(10);if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function")crypto.getRandomValues(n);else for(let i=0;i<n.length;i++)n[i]=Math.floor(Math.random()*256);n[0]=(n[0]??0)&15|112,n[2]=(n[2]??0)&63|128;let o=Array.from(n,i=>i.toString(16).padStart(2,"0")).join("");return [t.slice(0,8),t.slice(8,12),o.slice(0,4),o.slice(4,8),o.slice(8,20)].join("-")}function He(e,t,n,o){let i=e.createElement("iframe");i.className="veo-custom-frame",i.setAttribute("sandbox","allow-scripts"),i.setAttribute("title",n.guide.guideName||"Veo"),i.style.width=o.width;let r=o.fixedHeight!==void 0&&o.fixedHeight!==null;r&&(i.style.height=at(o.fixedHeight));let s=Qt();i.srcdoc=Wn(t.html??"",t.css??"",t.js??"",s);let a=()=>n.onClose(),c=l=>{if(l.source!==i.contentWindow)return;let d=l.data;if(!(!d||typeof d!="object"||d.__veo!==s))switch(d.type){case "dismiss":n.onInteraction({guideId:n.guide.guideId,stepIndex:0,action:"dismissed"}),a();break;case "cta":n.onInteraction({guideId:n.guide.guideId,stepIndex:0,action:"cta_clicked"}),typeof d.url=="string"&&X(d.url)&&window.open(d.url,"_blank","noopener,noreferrer"),d.close!==false&&a();break;case "navigate":typeof d.url=="string"&&X(d.url)&&window.location.assign(d.url);break;case "track":typeof d.name=="string"&&n.onTrack&&n.onTrack(d.name,Fn(d.props)?d.props:void 0);break;case "resize":!r&&typeof d.height=="number"&&d.height>0&&(i.style.height=`${Math.ceil(d.height)}px`);break}};return window.addEventListener("message",c),{iframe:i,cleanup:()=>window.removeEventListener("message",c)}}function at(e){return typeof e=="number"?`${e}px`:e}function Fn(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Wn(e,t,n,o){let i=`(function(){var T=${JSON.stringify(o)};function P(m){m.__veo=T;parent.postMessage(m,'*');}window.veo={dismiss:function(){P({type:'dismiss'});},cta:function(u){P({type:'cta',url:u});},track:function(n,p){P({type:'track',name:n,props:p||{}});},navigate:function(u){P({type:'navigate',url:u});}};document.addEventListener('click',function(e){var a=e.target&&e.target.closest?e.target.closest('a[href]'):null;if(!a)return;var h=a.getAttribute('href');if(!h||h.charAt(0)==='#'||/^(javascript|mailto|tel):/i.test(h))return;e.preventDefault();if(a.target==='_blank'){P({type:'cta',url:a.href,close:false});}else{P({type:'navigate',url:h});}},true);function H(){P({type:'resize',height:Math.ceil(document.documentElement.scrollHeight)});}window.addEventListener('load',H);try{if(typeof ResizeObserver!=='undefined'){new ResizeObserver(H).observe(document.documentElement);}}catch(e){}})();`;return `<!DOCTYPE html><html><head><meta charset="utf-8"><style>html,body{margin:0;padding:0;background:transparent;}</style><style>${Zt(t,"style")}</style></head><body>${e}<script>${i}</script>`+(n?`<script>${Zt(n,"script")}</script>`:"")+"</body></html>"}function Zt(e,t){let n=t==="script"?/<\/script/gi:/<\/style/gi;return e.replace(n,`<\\/${t}`)}var zn={mode:"floating",position:"bottom-right"},en=16,Vn=360,Ge=class extends b{async render(t){let n=t.guide.guideSteps[0];if(!n||typeof n.html!="string"||n.html.length===0)return;let o=n.placement??zn,i=null;if(o.mode==="anchored"){let d=o.selector??n.selector??t.guide.activationRules.selector;if(typeof d!="string"||d.length===0||(i=await T(d),!i))return}let{root:r}=this.createHost(),s=r.ownerDocument??document,a=s.createElement("div");a.className=o.mode==="anchored"?"veo-custom-anchored":"veo-custom-floating";let{iframe:c,cleanup:l}=He(s,n,t,{width:at(o.width??Vn),fixedHeight:o.height??null});this.registerCleanup(l),a.appendChild(c),r.appendChild(a),o.mode==="floating"?Kn(a,o):i&&this.registerCleanup(await this.setupAnchoredPosition(i,a,o)),t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:"shown"});}async setupAnchoredPosition(t,n,o){let i=o.side??"bottom",r=async()=>{let{x:a,y:c}=await pe(t,n,{placement:i,strategy:"fixed",middleware:[ce(o.offsetY??8),ue(),de({padding:8})]});n.style.left=`${a}px`,n.style.top=`${c}px`;};await r();let s=()=>{r();};return window.addEventListener("scroll",s,true),window.addEventListener("resize",s),()=>{window.removeEventListener("scroll",s,true),window.removeEventListener("resize",s);}}};function Kn(e,t){let n=t.position??"bottom-right",o=`${t.offsetX??en}px`,i=`${t.offsetY??en}px`,r=e.style;if(n==="center"){r.top="50%",r.left="50%",r.transform="translate(-50%, -50%)";return}let[s,a]=n.split("-");s==="top"?r.top=i:r.bottom=i,a==="left"?r.left=o:a==="right"?r.right=o:(r.left="50%",r.transform="translateX(-50%)");}function $e(e,t,n){let o=t.guide.guideSteps[0];if(!o)return;let i=o.fields??[],r=()=>{t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:"dismissed"}),t.onClose();},s=n.createElement("div");if(s.className="veo-guide-content",o.title){let u=n.createElement("h2");u.className="veo-guide-title",u.textContent=o.title,s.appendChild(u);}if(o.content){let u=n.createElement("p");u.className="veo-guide-text",u.textContent=o.content,s.appendChild(u);}let a=[],c=n.createElement("form");c.className="veo-form",c.noValidate=true;for(let u of i){let{wrapper:m,read:h}=jn(u,n);a.push({field:u,read:h}),c.appendChild(m);}let l=n.createElement("p");l.className="veo-form-error",l.style.display="none",c.appendChild(l);let d=n.createElement("div");d.className="veo-guide-actions";let p=n.createElement("button");p.type="submit",p.className="veo-guide-cta",p.textContent=o.ctaText||"Enviar",d.appendChild(p),c.appendChild(d),c.addEventListener("submit",u=>{u.preventDefault(),l.style.display="none";let m={};for(let{field:v,read:w}of a){let g=w();if(g==null||g===""){if(v.required){l.textContent=`Complet\xE1 "${v.label}"`,l.style.display="block";return}continue}m[v.key]=g;}if(Object.keys(m).length===0){l.textContent="Respond\xE9 al menos un campo",l.style.display="block";return}p.disabled=true,(t.onFormSubmit??(()=>Promise.resolve(true)))(m).then(v=>{if(!v){p.disabled=false,l.textContent="No se pudo enviar. Prob\xE1 de nuevo.",l.style.display="block";return}t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:"completed"});let w=t.isPreview?t.previewNote??"Vista previa: la respuesta NO se guard\xF3.":null;Yn(e,n,w),window.setTimeout(()=>t.onClose(),w?2200:1400);});}),s.appendChild(c);let f=n.createElement("button");f.type="button",f.className="veo-guide-close",f.setAttribute("aria-label","Cerrar"),f.textContent="\xD7",f.addEventListener("click",r),s.appendChild(f),e.appendChild(s);}function Yn(e,t,n){for(;e.firstChild;)e.removeChild(e.firstChild);let o=t.createElement("div");if(o.className="veo-form-thanks",o.textContent="\u2713 \xA1Gracias por tu respuesta!",e.appendChild(o),n){let i=t.createElement("p");i.className="veo-form-preview-note",i.textContent=n,e.appendChild(i);}}function jn(e,t){let n=t.createElement("div");n.className="veo-form-field";let o=t.createElement("label");switch(o.className="veo-form-label",o.textContent=e.required?`${e.label} *`:e.label,n.appendChild(o),e.type){case "textarea":{let i=t.createElement("textarea");return i.className="veo-form-input",i.rows=3,e.placeholder&&(i.placeholder=e.placeholder),n.appendChild(i),{wrapper:n,read:()=>i.value.trim()}}case "number":{let i=t.createElement("input");return i.type="number",i.className="veo-form-input",e.placeholder&&(i.placeholder=e.placeholder),n.appendChild(i),{wrapper:n,read:()=>i.value.trim()===""?void 0:Number(i.value)}}case "select":{let i=t.createElement("select");i.className="veo-form-input";let r=t.createElement("option");r.value="",r.textContent=e.placeholder||"Eleg\xED una opci\xF3n\u2026",i.appendChild(r);for(let s of e.options??[]){let a=t.createElement("option");a.value=s,a.textContent=s,i.appendChild(a);}return n.appendChild(i),{wrapper:n,read:()=>i.value||void 0}}case "radio":{let i=t.createElement("div");i.className="veo-form-options";let r=`veo-${e.key}`,s=[];for(let a of e.options??[]){let c=t.createElement("label");c.className="veo-form-option";let l=t.createElement("input");l.type="radio",l.name=r,l.value=a,s.push(l);let d=t.createElement("span");d.textContent=a,c.appendChild(l),c.appendChild(d),i.appendChild(c);}return n.appendChild(i),{wrapper:n,read:()=>s.find(a=>a.checked)?.value}}case "multiselect":{let i=t.createElement("div");i.className="veo-form-options";let r=[];for(let s of e.options??[]){let a=t.createElement("label");a.className="veo-form-option";let c=t.createElement("input");c.type="checkbox",c.value=s,r.push(c);let l=t.createElement("span");l.textContent=s,a.appendChild(c),a.appendChild(l),i.appendChild(a);}return n.appendChild(i),{wrapper:n,read:()=>{let s=r.filter(a=>a.checked).map(a=>a.value);return s.length>0?s:void 0}}}case "checkbox":{let i=t.createElement("label");i.className="veo-form-option";let r=t.createElement("input");r.type="checkbox";let s=t.createElement("span");return s.textContent=e.placeholder||"S\xED",i.appendChild(r),i.appendChild(s),n.appendChild(i),{wrapper:n,read:()=>r.checked?true:e.required?"":false}}case "yesno":{let i=t.createElement("div");i.className="veo-form-options";let r=`veo-${e.key}`,[s,a]=e.options?.length===2?e.options:["S\xED","No"],c=[];for(let{label:l,value:d}of [{label:s,value:true},{label:a,value:false}]){let p=t.createElement("label");p.className="veo-form-option";let f=t.createElement("input");f.type="radio",f.name=r,c.push({input:f,value:d});let u=t.createElement("span");u.textContent=l,p.appendChild(f),p.appendChild(u),i.appendChild(p);}return n.appendChild(i),{wrapper:n,read:()=>c.find(l=>l.input.checked)?.value}}case "nps":return tn(n,t,0,10,"veo-nps-btn");case "rating":return tn(n,t,1,5,"veo-rating-btn","\u2605");default:{let i=t.createElement("input");return i.type="text",i.className="veo-form-input",e.placeholder&&(i.placeholder=e.placeholder),n.appendChild(i),{wrapper:n,read:()=>i.value.trim()}}}}function tn(e,t,n,o,i,r){let s=t.createElement("div");s.className="veo-form-scale";let a,c=[];for(let l=n;l<=o;l++){let d=t.createElement("button");d.type="button",d.className=i,d.textContent=r??String(l),d.setAttribute("aria-label",String(l)),d.addEventListener("click",()=>{a=l,c.forEach((p,f)=>{let u=r?f+n<=l:f+n===l;p.classList.toggle("veo-scale-active",u);});}),c.push(d),s.appendChild(d);}return e.appendChild(s),{wrapper:e,read:()=>a}}var Ue=class extends b{render(t){let n=t.guide.guideSteps[0];if(!n||(n.fields??[]).length===0)return;let{root:o}=this.createHost();this.applyDesign(n.style);let i=o.ownerDocument??document,r=i.createElement("div");r.className="veo-modal-overlay";let s=i.createElement("div");s.className="veo-modal-card",$e(s,t,i),r.appendChild(s),o.appendChild(r);let a=()=>{t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:"dismissed"}),t.onClose();};r.addEventListener("click",l=>{l.target===r&&a();});let c=l=>{l.key==="Escape"&&a();};document.addEventListener("keydown",c),this.registerCleanup(()=>document.removeEventListener("keydown",c)),t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:"shown"});}};function fe(e){let t=e?.inlinePosition;return t==="before"||t==="prepend"||t==="append"?t:"after"}function ne(e,t,n){switch(n){case "before":e.before(t);break;case "after":e.after(t);break;case "prepend":e.prepend(t);break;case "append":e.append(t);break}}function me(e,t,n){let o=window.setInterval(()=>{if(e.isConnected)return;let i=document.querySelector(t);i&&ne(i,e,n);},1e3);return ()=>window.clearInterval(o)}var Fe=class extends b{async render(t){let n=t.guide.guideSteps[0];if(!n||typeof n.html!="string"||n.html.length===0)return;let o=n.selector??t.guide.activationRules.selector;if(typeof o!="string"||o.length===0)return;let i=await T(o);if(!i)return;let{host:r,root:s}=this.createHost();r.style.display="block";let a=fe(n.style);ne(i,r,a),this.registerCleanup(me(r,o,a));let c=s.ownerDocument??document,l=c.createElement("div");l.className="veo-custom-inline";let{iframe:d,cleanup:p}=He(c,n,t,{width:"100%"});this.registerCleanup(p),l.appendChild(d),s.appendChild(l),t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:"shown"});}};var We=class extends b{async render(t){let n=t.guide.guideSteps[0];if(!n||(n.fields??[]).length===0)return;let o=n.selector??t.guide.activationRules.selector;if(typeof o!="string"||o.length===0)return;let i=await T(o);if(!i)return;let{host:r,root:s}=this.createHost();r.style.display="block";let a=fe(n.style);ne(i,r,a),this.registerCleanup(me(r,o,a)),this.applyDesign(n.style);let c=s.ownerDocument??document,l=c.createElement("div");l.className="veo-inline",$e(l,t,c),s.appendChild(l),t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:"shown"});}};var ze=class extends b{async render(t){let n=t.guide.guideSteps[0];if(!n)return;let o=n.selector??t.guide.activationRules.selector;if(typeof o!="string"||o.length===0)return;let i=await T(o);if(!i)return;let{host:r,root:s}=this.createHost();r.style.display="block";let a=fe(n.style);ne(i,r,a),this.registerCleanup(me(r,o,a)),this.applyDesign(n.style);let c=s.ownerDocument??document,l=c.createElement("div");l.className="veo-inline";let d=(f,u)=>{t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:f}),u&&window.open(u,"_blank","noopener,noreferrer"),t.onClose();},p=z(n,c,{onCtaClick:(f,u)=>d("cta_clicked",f==="url"?u:void 0),onDismiss:()=>d("dismissed")});l.appendChild(p),s.appendChild(l),t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:"shown"});}};var Ve=class extends b{render(t){let n=t.guide.guideSteps[0];if(!n)return;let{root:o}=this.createHost();this.applyDesign(n.style);let i=o.ownerDocument??document,r=i.createElement("div");r.className="veo-modal-overlay";let s=i.createElement("div");s.className="veo-modal-card";let a=(d,p)=>{t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:d}),p&&window.open(p,"_blank","noopener,noreferrer"),t.onClose();},c=z(n,i,{onCtaClick:(d,p)=>{a("cta_clicked",d==="url"?p:void 0);},onDismiss:()=>a("dismissed")});s.appendChild(c),r.appendChild(s),o.appendChild(r),r.addEventListener("click",d=>{d.target===r&&a("dismissed");});let l=d=>{d.key==="Escape"&&a("dismissed");};document.addEventListener("keydown",l),this.registerCleanup(()=>document.removeEventListener("keydown",l)),t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:"shown"});}};var Ke=class extends b{async render(t){let n=t.guide.guideSteps[0];if(!n)return;let o=n.selector??t.guide.activationRules.selector;if(typeof o!="string"||o.length===0)return;let i=await T(o);if(!i)return;let{root:r}=this.createHost();this.applyDesign(n.style);let s=r.ownerDocument??document,a=s.createElement("div");a.className="veo-tooltip";let c=(f,u)=>{t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:f}),u&&window.open(u,"_blank","noopener,noreferrer"),t.onClose();},l=z(n,s,{onCtaClick:(f,u)=>{c("cta_clicked",f==="url"?u:void 0);},onDismiss:()=>c("dismissed")});a.appendChild(l),r.appendChild(a);let d=async()=>{let{x:f,y:u}=await pe(i,a,{placement:"bottom",middleware:[ce(8),ue(),de({padding:8})]});a.style.left=`${f}px`,a.style.top=`${u}px`;};await d();let p=()=>{d();};window.addEventListener("scroll",p,true),window.addEventListener("resize",p),this.registerCleanup(()=>{window.removeEventListener("scroll",p,true),window.removeEventListener("resize",p);}),t.onInteraction({guideId:t.guide.guideId,stepIndex:0,action:"shown"});}};function nn(e,t,n,o,i){let r=o.createElement("div");r.className="veo-guide-content";let s=o.createElement("div");s.className="veo-walkthrough-counter",s.textContent=`Paso ${t+1} de ${n}`,r.appendChild(s);let a=o.createElement("div");a.className="veo-walkthrough-progress";for(let m=0;m<n;m++){let h=o.createElement("span");h.className="veo-walkthrough-progress-dot",m<t&&h.classList.add("completed"),m===t&&h.classList.add("active"),a.appendChild(h);}if(r.appendChild(a),typeof e.imageUrl=="string"&&e.imageUrl&&X(e.imageUrl)){let m=o.createElement("img");m.className="veo-guide-image",m.src=e.imageUrl,m.alt=typeof e.title=="string"?e.title:"",r.appendChild(m);}if(typeof e.title=="string"&&e.title){let m=o.createElement("h2");m.className="veo-guide-title",m.textContent=e.title,r.appendChild(m);}if(typeof e.content=="string"&&e.content){let m=o.createElement("p");m.className="veo-guide-text",m.textContent=e.content,r.appendChild(m);}let c=o.createElement("div");c.className="veo-walkthrough-actions";let l=o.createElement("button");l.type="button",l.className="veo-walkthrough-skip",l.textContent="Omitir",l.addEventListener("click",()=>i.onSkip()),c.appendChild(l);let d=o.createElement("div");if(d.className="veo-walkthrough-actions-right",t>0){let m=o.createElement("button");m.type="button",m.className="veo-walkthrough-btn-secondary",m.textContent="Atr\xE1s",m.addEventListener("click",()=>i.onBack()),d.appendChild(m);}let p=t===n-1,f=o.createElement("button");f.type="button",f.className="veo-guide-cta";let u=p?"Finalizar":"Siguiente";return f.textContent=typeof e.ctaText=="string"&&e.ctaText?e.ctaText:u,f.addEventListener("click",()=>{p?i.onComplete():i.onNext();}),d.appendChild(f),c.appendChild(d),r.appendChild(c),r}var Ye=class extends b{async render(t){let n=t.guide.guideSteps[t.currentStepIndex];if(!n)return false;let o=n.selector??t.guide.activationRules.selector;if(typeof o!="string"||o.length===0)return false;let i=await T(o,5e3);if(!i)return false;let{root:r}=this.createHost();this.applyDesign(n.style);let s=r.ownerDocument??document,a=s.createElement("div");a.className="veo-walkthrough";let c=nn(n,t.currentStepIndex,t.guide.guideSteps.length,s,t.callbacks);a.appendChild(c);let l=s.createElement("div");l.className="veo-walkthrough-arrow",a.appendChild(l),r.appendChild(a);let d=async()=>{let{x:f,y:u,placement:m,middlewareData:h}=await pe(i,a,{placement:"bottom",middleware:[ce(10),ue(),de({padding:8}),Jt({element:l})]});a.style.left=`${f}px`,a.style.top=`${u}px`,qn(l,m,h.arrow);};await d();let p=()=>{d();};return window.addEventListener("scroll",p,true),window.addEventListener("resize",p),this.registerCleanup(()=>{window.removeEventListener("scroll",p,true),window.removeEventListener("resize",p);}),true}},Xn={top:"bottom",bottom:"top",left:"right",right:"left"};function qn(e,t,n){let o=Xn[t.split("-")[0]??"bottom"]??"top";for(let i of ["top","bottom","left","right"])e.style.setProperty(i,"");n?.x!=null&&e.style.setProperty("left",`${n.x}px`),n?.y!=null&&e.style.setProperty("top",`${n.y}px`),e.style.setProperty(o,"-6px");}var Jn="__veo_preview__",lt=class{constructor(){this.singleStep=null;this.walkthrough=null;this.walkthroughGuide=null;this.walkthroughIndex=0;this.input=null;}preview(t){this.close(),this.input=t;let n=Qn(t),o=typeof t.startStepIndex=="number"?t.startStepIndex:0,i=n.guideType==="walkthrough"?this.startWalkthrough(n,o):this.renderSingleStep(n);return {close:()=>this.close(),ready:i}}close(){this.singleStep&&(ke(this.singleStep),this.singleStep=null),this.walkthrough&&(ke(this.walkthrough),this.walkthrough=null),this.walkthroughGuide=null,this.walkthroughIndex=0,this.input=null;}async renderSingleStep(t){let n=Zn(t.guideType);if(!n)return {rendered:false};this.singleStep=n;let o=false;try{await n.render({guide:t,onInteraction:i=>{i.action==="shown"&&(o=!0);},onClose:()=>this.close(),onTrack:()=>{},onFormSubmit:this.input?.formSubmit??(()=>Promise.resolve(!0)),isPreview:!0,...this.input?.formSubmit&&this.input.formSubmitNote!==void 0?{previewNote:this.input.formSubmitNote}:{}});}catch{return this.close(),{rendered:false}}return this.singleStep!==n?(ke(n),{rendered:false}):{rendered:o}}async startWalkthrough(t,n=0){if(t.guideSteps.length===0)return {rendered:false};this.walkthroughGuide=t;let o=Math.min(Math.max(0,Math.floor(n)),t.guideSteps.length-1);return this.walkthroughIndex=o,{rendered:await this.renderWalkthroughStep(o)}}async renderWalkthroughStep(t){let n=this.walkthroughGuide;if(!n)return false;this.walkthrough&&(ke(this.walkthrough),this.walkthrough=null);let o=new Ye,i={onNext:()=>{let s=this.walkthroughIndex+1;if(s>=n.guideSteps.length){this.close();return}this.walkthroughIndex=s,this.renderWalkthroughStep(s);},onBack:()=>{let s=this.walkthroughIndex-1;s<0||(this.walkthroughIndex=s,this.renderWalkthroughStep(s));},onSkip:()=>this.close(),onComplete:()=>this.close()},r=false;try{r=await o.render({guide:n,currentStepIndex:t,callbacks:i});}catch{r=false;}return !r||this.walkthroughGuide!==n?(ke(o),false):(this.walkthrough=o,true)}},je=null;function Xe(e){return $()?(je||(je=new lt),je.preview(e)):{close:()=>{},ready:Promise.resolve({rendered:false})}}function Pe(){je?.close();}function Qn(e){let t=e.activationRules?.selector,n={url:e.activationRules?.url??{type:"prefix",pattern:"/"},trigger:"immediate",...t!==void 0?{selector:t}:{}};return {guideId:Jn,guideName:e.guideName??"Preview",guideType:e.guideType,guideSteps:e.guideSteps,activationRules:n,displayFrequency:"always",displayPriority:0}}function Zn(e){switch(e){case "modal":return new Ve;case "banner":return new Se;case "tooltip":return new Ke;case "custom":return new Ge;case "inline":return new ze;case "inline-custom":return new Fe;case "form":return new Ue;case "inline-form":return new We;case "walkthrough":return null}}function ke(e){try{e.destroy();}catch{}}var he="veo-builder";var eo="/guides/design",on=400,to=640,rn=320,sn=320,ct=16;function an(e){if(!G()||!$())return {target:()=>null,teardown:()=>{}};let t=no(e),n=document.createElement("div");n.setAttribute("data-veo-builder-panel","");let o=n.attachShadow({mode:"open"}),i=document.createElement("style");i.textContent=oo;let r=document.createElement("div");r.className="veo-panel";let s=Math.max(ct,window.innerWidth-on-ct),a=ct;r.style.left=`${s}px`,r.style.top=`${a}px`,r.style.width=`${on}px`,r.style.height=`${to}px`;let c=document.createElement("div");c.className="veo-panel-header";let l=document.createElement("span");l.className="veo-panel-title",l.textContent="Veo \xB7 Editor";let d=document.createElement("div");d.className="veo-panel-actions";let p=document.createElement("button");p.className="veo-panel-btn",p.type="button",p.title="Abrir en ventana aparte",p.setAttribute("aria-label","Abrir en ventana aparte"),p.textContent="\u29C9";let f=document.createElement("button");f.className="veo-panel-btn veo-panel-close",f.type="button",f.title="Cerrar",f.setAttribute("aria-label","Cerrar"),f.textContent="\u2715",d.append(p,f),c.append(l,d);let u=document.createElement("iframe");u.className="veo-panel-frame",u.title="Editor de Veo",u.src=t;let m=document.createElement("div");m.className="veo-panel-resize",m.setAttribute("aria-hidden","true"),r.append(c,u,m),o.append(i,r),document.body.appendChild(n);let h=null,v,w=()=>{v!==void 0&&(clearInterval(v),v=void 0);};return f.addEventListener("click",()=>e.onClose()),p.addEventListener("click",()=>{let g=window.open(t,"veo-editor",`popup,width=${Math.round(r.offsetWidth)},height=${Math.round(r.offsetHeight)+60}`);g&&(h=g,r.style.display="none",v=setInterval(()=>{h?.closed&&(w(),e.onClose());},600));}),c.addEventListener("mousedown",g=>{if(g.target?.classList.contains("veo-panel-btn"))return;g.preventDefault();let x=g.clientX,y=g.clientY,C=s,E=a;u.style.pointerEvents="none";let R=S=>{s=qe(C+(S.clientX-x),0,Math.max(0,window.innerWidth-r.offsetWidth)),a=qe(E+(S.clientY-y),0,Math.max(0,window.innerHeight-40)),r.style.left=`${s}px`,r.style.top=`${a}px`;},I=()=>{window.removeEventListener("mousemove",R),window.removeEventListener("mouseup",I),u.style.pointerEvents="";};window.addEventListener("mousemove",R),window.addEventListener("mouseup",I);}),m.addEventListener("mousedown",g=>{g.preventDefault(),g.stopPropagation();let x=g.clientX,y=g.clientY,C=r.offsetWidth,E=r.offsetHeight;u.style.pointerEvents="none";let R=S=>{r.style.width=`${qe(C+(S.clientX-x),rn,window.innerWidth)}px`,r.style.height=`${qe(E+(S.clientY-y),sn,window.innerHeight)}px`;},I=()=>{window.removeEventListener("mousemove",R),window.removeEventListener("mouseup",I),u.style.pointerEvents="";};window.addEventListener("mousemove",R),window.addEventListener("mouseup",I);}),{target:()=>h&&!h.closed?h:u.contentWindow,teardown:()=>{w(),h&&!h.closed&&h.close(),n.remove();}}}function qe(e,t,n){return Math.min(Math.max(e,t),n)}function no(e){let t=e.panelPath??eo,n=new URL(t,e.dashboardOrigin);return n.searchParams.set("veoToken",e.token),n.searchParams.set("veoApp",e.appOrigin),e.guide&&n.searchParams.set("veoGuide",e.guide),n.toString()}var oo=`
281
+ `;var b=class{constructor(){this.host=null;this.shadow=null;this.cleanups=[];}createHost(){let e=document.createElement("div");e.setAttribute(_t,"");let n=e.attachShadow({mode:"open"}),o=document.createElement("style");o.textContent=Mt,n.appendChild(o);let i=document.createElement("div");return n.appendChild(i),document.body.appendChild(e),this.host=e,this.shadow=n,{host:e,shadow:n,root:i}}applyDesign(e){this.host&&Bt(this.host,e);}registerCleanup(e){this.cleanups.push(e);}destroy(){for(let e of this.cleanups)try{e();}catch{}this.cleanups=[],this.host?.parentNode&&this.host.parentNode.removeChild(this.host),this.host=null,this.shadow=null;}};var Se=class extends b{render(e){let n=e.nav?.stepIndex??0,o=e.guide.guideSteps[n];if(!o)return;let{root:i}=this.createHost();this.applyDesign(o.style);let r=i.ownerDocument??document,s=o.style?.position==="bottom"?"bottom":"top",a=r.createElement("div");a.className=`veo-banner veo-banner-${s}`;let l=(m,d)=>{e.onInteraction({guideId:e.guide.guideId,stepIndex:n,action:m}),d&&window.open(d,"_blank","noopener,noreferrer"),e.onClose();},c=e.nav?ae(o,e.nav.stepIndex,e.nav.totalSteps,r,e.nav.callbacks):j(o,r,{onCtaClick:(m,d)=>l("cta_clicked",m==="url"?d:void 0),onDismiss:()=>l("dismissed")});a.appendChild(c),i.appendChild(a),e.nav||e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:"shown"});}};var Q=Math.min,Y=Math.max,Re=Math.round;var B=t=>({x:t,y:t}),Dn={left:"right",right:"left",bottom:"top",top:"bottom"};function Me(t,e,n){return Y(t,Q(e,n))}function le(t,e){return typeof t=="function"?t(e):t}function X(t){return t.split("-")[0]}function ce(t){return t.split("-")[1]}function mt(t){return t==="x"?"y":"x"}function De(t){return t==="y"?"height":"width"}function z(t){let e=t[0];return e==="t"||e==="b"?"y":"x"}function He(t){return mt(z(t))}function $t(t,e,n){n===void 0&&(n=false);let o=ce(t),i=He(t),r=De(i),s=i==="x"?o===(n?"end":"start")?"right":"left":o==="start"?"bottom":"top";return e.reference[r]>e.floating[r]&&(s=Pe(s)),[s,Pe(s)]}function Gt(t){let e=Pe(t);return [Be(t),e,Be(e)]}function Be(t){return t.includes("start")?t.replace("start","end"):t.replace("end","start")}var Dt=["left","right"],Ht=["right","left"],Hn=["top","bottom"],$n=["bottom","top"];function Gn(t,e,n){switch(t){case "top":case "bottom":return n?e?Ht:Dt:e?Dt:Ht;case "left":case "right":return e?Hn:$n;default:return []}}function Ft(t,e,n,o){let i=ce(t),r=Gn(X(t),n==="start",o);return i&&(r=r.map(s=>s+"-"+i),e&&(r=r.concat(r.map(Be)))),r}function Pe(t){let e=X(t);return Dn[e]+t.slice(e.length)}function Fn(t){return {top:0,right:0,bottom:0,left:0,...t}}function ft(t){return typeof t!="number"?Fn(t):{top:t,right:t,bottom:t,left:t}}function Z(t){let{x:e,y:n,width:o,height:i}=t;return {width:o,height:i,top:n,left:e,right:e+o,bottom:n+i,x:e,y:n}}function Ut(t,e,n){let{reference:o,floating:i}=t,r=z(e),s=He(e),a=De(s),l=X(e),c=r==="y",m=o.x+o.width/2-i.width/2,d=o.y+o.height/2-i.height/2,u=o[a]/2-i[a]/2,p;switch(l){case "top":p={x:m,y:o.y-i.height};break;case "bottom":p={x:m,y:o.y+o.height};break;case "right":p={x:o.x+o.width,y:d};break;case "left":p={x:o.x-i.width,y:d};break;default:p={x:o.x,y:o.y};}switch(ce(e)){case "start":p[s]-=u*(n&&c?-1:1);break;case "end":p[s]+=u*(n&&c?-1:1);break}return p}async function Wt(t,e){var n;e===void 0&&(e={});let{x:o,y:i,platform:r,rects:s,elements:a,strategy:l}=t,{boundary:c="clippingAncestors",rootBoundary:m="viewport",elementContext:d="floating",altBoundary:u=false,padding:p=0}=le(e,t),f=ft(p),h=a[u?d==="floating"?"reference":"floating":d],w=Z(await r.getClippingRect({element:(n=await(r.isElement==null?void 0:r.isElement(h)))==null||n?h:h.contextElement||await(r.getDocumentElement==null?void 0:r.getDocumentElement(a.floating)),boundary:c,rootBoundary:m,strategy:l})),v=d==="floating"?{x:o,y:i,width:s.floating.width,height:s.floating.height}:s.reference,y=await(r.getOffsetParent==null?void 0:r.getOffsetParent(a.floating)),x=await(r.isElement==null?void 0:r.isElement(y))?await(r.getScale==null?void 0:r.getScale(y))||{x:1,y:1}:{x:1,y:1},C=Z(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:v,offsetParent:y,strategy:l}):v);return {top:(w.top-C.top+f.top)/x.y,bottom:(C.bottom-w.bottom+f.bottom)/x.y,left:(w.left-C.left+f.left)/x.x,right:(C.right-w.right+f.right)/x.x}}var Un=50,zt=async(t,e,n)=>{let{placement:o="bottom",strategy:i="absolute",middleware:r=[],platform:s}=n,a=s.detectOverflow?s:{...s,detectOverflow:Wt},l=await(s.isRTL==null?void 0:s.isRTL(e)),c=await s.getElementRects({reference:t,floating:e,strategy:i}),{x:m,y:d}=Ut(c,o,l),u=o,p=0,f={};for(let g=0;g<r.length;g++){let h=r[g];if(!h)continue;let{name:w,fn:v}=h,{x:y,y:x,data:C,reset:E}=await v({x:m,y:d,initialPlacement:o,placement:u,strategy:i,middlewareData:f,rects:c,platform:a,elements:{reference:t,floating:e}});m=y??m,d=x??d,f[w]={...f[w],...C},E&&p<Un&&(p++,typeof E=="object"&&(E.placement&&(u=E.placement),E.rects&&(c=E.rects===true?await s.getElementRects({reference:t,floating:e,strategy:i}):E.rects),{x:m,y:d}=Ut(c,u,l)),g=-1);}return {x:m,y:d,placement:u,strategy:i,middlewareData:f}},Vt=t=>({name:"arrow",options:t,async fn(e){let{x:n,y:o,placement:i,rects:r,platform:s,elements:a,middlewareData:l}=e,{element:c,padding:m=0}=le(t,e)||{};if(c==null)return {};let d=ft(m),u={x:n,y:o},p=He(i),f=De(p),g=await s.getDimensions(c),h=p==="y",w=h?"top":"left",v=h?"bottom":"right",y=h?"clientHeight":"clientWidth",x=r.reference[f]+r.reference[p]-u[p]-r.floating[f],C=u[p]-r.reference[p],E=await(s.getOffsetParent==null?void 0:s.getOffsetParent(c)),P=E?E[y]:0;(!P||!await(s.isElement==null?void 0:s.isElement(E)))&&(P=a.floating[y]||r.floating[f]);let _=x/2-C/2,R=P/2-g[f]/2-1,$=Q(d[w],R),ye=Q(d[v],R),q=$,xe=P-g[f]-ye,k=P/2-g[f]/2+_,J=Me(q,k,xe),G=!l.arrow&&ce(i)!=null&&k!==J&&r.reference[f]/2-(k<q?$:ye)-g[f]/2<0,O=G?k<q?k-q:k-xe:0;return {[p]:u[p]+O,data:{[p]:J,centerOffset:k-J-O,...G&&{alignmentOffset:O}},reset:G}}});var Kt=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(e){var n,o;let{placement:i,middlewareData:r,rects:s,initialPlacement:a,platform:l,elements:c}=e,{mainAxis:m=true,crossAxis:d=true,fallbackPlacements:u,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:f="none",flipAlignment:g=true,...h}=le(t,e);if((n=r.arrow)!=null&&n.alignmentOffset)return {};let w=X(i),v=z(a),y=X(a)===a,x=await(l.isRTL==null?void 0:l.isRTL(c.floating)),C=u||(y||!g?[Pe(a)]:Gt(a)),E=f!=="none";!u&&E&&C.push(...Ft(a,g,f,x));let P=[a,...C],_=await l.detectOverflow(e,h),R=[],$=((o=r.flip)==null?void 0:o.overflows)||[];if(m&&R.push(_[w]),d){let k=$t(i,s,x);R.push(_[k[0]],_[k[1]]);}if($=[...$,{placement:i,overflows:R}],!R.every(k=>k<=0)){var ye,q;let k=(((ye=r.flip)==null?void 0:ye.index)||0)+1,J=P[k];if(J&&(!(d==="alignment"?v!==z(J):false)||$.every(N=>z(N.placement)===v?N.overflows[0]>0:true)))return {data:{index:k,overflows:$},reset:{placement:J}};let G=(q=$.filter(O=>O.overflows[0]<=0).sort((O,N)=>O.overflows[1]-N.overflows[1])[0])==null?void 0:q.placement;if(!G)switch(p){case "bestFit":{var xe;let O=(xe=$.filter(N=>{if(E){let K=z(N.placement);return K===v||K==="y"}return true}).map(N=>[N.placement,N.overflows.filter(K=>K>0).reduce((K,En)=>K+En,0)]).sort((N,K)=>N[1]-K[1])[0])==null?void 0:xe[0];O&&(G=O);break}case "initialPlacement":G=a;break}if(i!==G)return {reset:{placement:G}}}return {}}}};var Wn=new Set(["left","top"]);async function zn(t,e){let{placement:n,platform:o,elements:i}=t,r=await(o.isRTL==null?void 0:o.isRTL(i.floating)),s=X(n),a=ce(n),l=z(n)==="y",c=Wn.has(s)?-1:1,m=r&&l?-1:1,d=le(e,t),{mainAxis:u,crossAxis:p,alignmentAxis:f}=typeof d=="number"?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return a&&typeof f=="number"&&(p=a==="end"?f*-1:f),l?{x:p*m,y:u*c}:{x:u*c,y:p*m}}var jt=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(e){var n,o;let{x:i,y:r,placement:s,middlewareData:a}=e,l=await zn(e,t);return s===((n=a.offset)==null?void 0:n.placement)&&(o=a.arrow)!=null&&o.alignmentOffset?{}:{x:i+l.x,y:r+l.y,data:{...l,placement:s}}}}},Yt=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(e){let{x:n,y:o,placement:i,platform:r}=e,{mainAxis:s=true,crossAxis:a=false,limiter:l={fn:w=>{let{x:v,y}=w;return {x:v,y}}},...c}=le(t,e),m={x:n,y:o},d=await r.detectOverflow(e,c),u=z(X(i)),p=mt(u),f=m[p],g=m[u];if(s){let w=p==="y"?"top":"left",v=p==="y"?"bottom":"right",y=f+d[w],x=f-d[v];f=Me(y,f,x);}if(a){let w=u==="y"?"top":"left",v=u==="y"?"bottom":"right",y=g+d[w],x=g-d[v];g=Me(y,g,x);}let h=l.fn({...e,[p]:f,[u]:g});return {...h,data:{x:h.x-n,y:h.y-o,enabled:{[p]:s,[u]:a}}}}}};function Ge(){return typeof window<"u"}function te(t){return qt(t)?(t.nodeName||"").toLowerCase():"#document"}function S(t){var e;return (t==null||(e=t.ownerDocument)==null?void 0:e.defaultView)||window}function D(t){var e;return (e=(qt(t)?t.ownerDocument:t.document)||window.document)==null?void 0:e.documentElement}function qt(t){return Ge()?t instanceof Node||t instanceof S(t).Node:false}function L(t){return Ge()?t instanceof Element||t instanceof S(t).Element:false}function H(t){return Ge()?t instanceof HTMLElement||t instanceof S(t).HTMLElement:false}function Xt(t){return !Ge()||typeof ShadowRoot>"u"?false:t instanceof ShadowRoot||t instanceof S(t).ShadowRoot}function de(t){let{overflow:e,overflowX:n,overflowY:o,display:i}=T(t);return /auto|scroll|overlay|hidden|clip/.test(e+o+n)&&i!=="inline"&&i!=="contents"}function Jt(t){return /^(table|td|th)$/.test(te(t))}function Ae(t){try{if(t.matches(":popover-open"))return !0}catch{}try{return t.matches(":modal")}catch{return false}}var Vn=/transform|translate|scale|rotate|perspective|filter/,Kn=/paint|layout|strict|content/,ee=t=>!!t&&t!=="none",gt;function Fe(t){let e=L(t)?T(t):t;return ee(e.transform)||ee(e.translate)||ee(e.scale)||ee(e.rotate)||ee(e.perspective)||!Ue()&&(ee(e.backdropFilter)||ee(e.filter))||Vn.test(e.willChange||"")||Kn.test(e.contain||"")}function Qt(t){let e=V(t);for(;H(e)&&!ne(e);){if(Fe(e))return e;if(Ae(e))return null;e=V(e);}return null}function Ue(){return gt==null&&(gt=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),gt}function ne(t){return /^(html|body|#document)$/.test(te(t))}function T(t){return S(t).getComputedStyle(t)}function Le(t){return L(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function V(t){if(te(t)==="html")return t;let e=t.assignedSlot||t.parentNode||Xt(t)&&t.host||D(t);return Xt(e)?e.host:e}function Zt(t){let e=V(t);return ne(e)?t.ownerDocument?t.ownerDocument.body:t.body:H(e)&&de(e)?e:Zt(e)}function $e(t,e,n){var o;e===void 0&&(e=[]);let i=Zt(t),r=i===((o=t.ownerDocument)==null?void 0:o.body),s=S(i);if(r){We(s);return e.concat(s,s.visualViewport||[],de(i)?i:[],[])}else return e.concat(i,$e(i,[]))}function We(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function on(t){let e=T(t),n=parseFloat(e.width)||0,o=parseFloat(e.height)||0,i=H(t),r=i?t.offsetWidth:n,s=i?t.offsetHeight:o,a=Re(n)!==r||Re(o)!==s;return a&&(n=r,o=s),{width:n,height:o,$:a}}function rn(t){return L(t)?t:t.contextElement}function ue(t){let e=rn(t);if(!H(e))return B(1);let n=e.getBoundingClientRect(),{width:o,height:i,$:r}=on(e),s=(r?Re(n.width):n.width)/o,a=(r?Re(n.height):n.height)/i;return (!s||!Number.isFinite(s))&&(s=1),(!a||!Number.isFinite(a))&&(a=1),{x:s,y:a}}var jn=B(0);function sn(t){let e=S(t);return !Ue()||!e.visualViewport?jn:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function Yn(t,e,n){return e===void 0&&(e=false),!n||e&&n!==S(t)?false:e}function Te(t,e,n,o){e===void 0&&(e=false),n===void 0&&(n=false);let i=t.getBoundingClientRect(),r=rn(t),s=B(1);e&&(o?L(o)&&(s=ue(o)):s=ue(t));let a=Yn(r,n,o)?sn(r):B(0),l=(i.left+a.x)/s.x,c=(i.top+a.y)/s.y,m=i.width/s.x,d=i.height/s.y;if(r){let u=S(r),p=o&&L(o)?S(o):o,f=u,g=We(f);for(;g&&o&&p!==f;){let h=ue(g),w=g.getBoundingClientRect(),v=T(g),y=w.left+(g.clientLeft+parseFloat(v.paddingLeft))*h.x,x=w.top+(g.clientTop+parseFloat(v.paddingTop))*h.y;l*=h.x,c*=h.y,m*=h.x,d*=h.y,l+=y,c+=x,f=S(g),g=We(f);}}return Z({width:m,height:d,x:l,y:c})}function ze(t,e){let n=Le(t).scrollLeft;return e?e.left+n:Te(D(t)).left+n}function an(t,e){let n=t.getBoundingClientRect(),o=n.left+e.scrollLeft-ze(t,n),i=n.top+e.scrollTop;return {x:o,y:i}}function Xn(t){let{elements:e,rect:n,offsetParent:o,strategy:i}=t,r=i==="fixed",s=D(o),a=e?Ae(e.floating):false;if(o===s||a&&r)return n;let l={scrollLeft:0,scrollTop:0},c=B(1),m=B(0),d=H(o);if((d||!d&&!r)&&((te(o)!=="body"||de(s))&&(l=Le(o)),d)){let p=Te(o);c=ue(o),m.x=p.x+o.clientLeft,m.y=p.y+o.clientTop;}let u=s&&!d&&!r?an(s,l):B(0);return {width:n.width*c.x,height:n.height*c.y,x:n.x*c.x-l.scrollLeft*c.x+m.x+u.x,y:n.y*c.y-l.scrollTop*c.y+m.y+u.y}}function qn(t){return Array.from(t.getClientRects())}function Jn(t){let e=D(t),n=Le(t),o=t.ownerDocument.body,i=Y(e.scrollWidth,e.clientWidth,o.scrollWidth,o.clientWidth),r=Y(e.scrollHeight,e.clientHeight,o.scrollHeight,o.clientHeight),s=-n.scrollLeft+ze(t),a=-n.scrollTop;return T(o).direction==="rtl"&&(s+=Y(e.clientWidth,o.clientWidth)-i),{width:i,height:r,x:s,y:a}}var en=25;function Qn(t,e){let n=S(t),o=D(t),i=n.visualViewport,r=o.clientWidth,s=o.clientHeight,a=0,l=0;if(i){r=i.width,s=i.height;let m=Ue();(!m||m&&e==="fixed")&&(a=i.offsetLeft,l=i.offsetTop);}let c=ze(o);if(c<=0){let m=o.ownerDocument,d=m.body,u=getComputedStyle(d),p=m.compatMode==="CSS1Compat"&&parseFloat(u.marginLeft)+parseFloat(u.marginRight)||0,f=Math.abs(o.clientWidth-d.clientWidth-p);f<=en&&(r-=f);}else c<=en&&(r+=c);return {width:r,height:s,x:a,y:l}}function Zn(t,e){let n=Te(t,true,e==="fixed"),o=n.top+t.clientTop,i=n.left+t.clientLeft,r=H(t)?ue(t):B(1),s=t.clientWidth*r.x,a=t.clientHeight*r.y,l=i*r.x,c=o*r.y;return {width:s,height:a,x:l,y:c}}function tn(t,e,n){let o;if(e==="viewport")o=Qn(t,n);else if(e==="document")o=Jn(D(t));else if(L(e))o=Zn(e,n);else {let i=sn(t);o={x:e.x-i.x,y:e.y-i.y,width:e.width,height:e.height};}return Z(o)}function ln(t,e){let n=V(t);return n===e||!L(n)||ne(n)?false:T(n).position==="fixed"||ln(n,e)}function eo(t,e){let n=e.get(t);if(n)return n;let o=$e(t,[]).filter(a=>L(a)&&te(a)!=="body"),i=null,r=T(t).position==="fixed",s=r?V(t):t;for(;L(s)&&!ne(s);){let a=T(s),l=Fe(s);!l&&a.position==="fixed"&&(i=null),(r?!l&&!i:!l&&a.position==="static"&&!!i&&(i.position==="absolute"||i.position==="fixed")||de(s)&&!l&&ln(t,s))?o=o.filter(m=>m!==s):i=a,s=V(s);}return e.set(t,o),o}function to(t){let{element:e,boundary:n,rootBoundary:o,strategy:i}=t,s=[...n==="clippingAncestors"?Ae(e)?[]:eo(e,this._c):[].concat(n),o],a=tn(e,s[0],i),l=a.top,c=a.right,m=a.bottom,d=a.left;for(let u=1;u<s.length;u++){let p=tn(e,s[u],i);l=Y(p.top,l),c=Q(p.right,c),m=Q(p.bottom,m),d=Y(p.left,d);}return {width:c-d,height:m-l,x:d,y:l}}function no(t){let{width:e,height:n}=on(t);return {width:e,height:n}}function oo(t,e,n){let o=H(e),i=D(e),r=n==="fixed",s=Te(t,true,r,e),a={scrollLeft:0,scrollTop:0},l=B(0);function c(){l.x=ze(i);}if(o||!o&&!r)if((te(e)!=="body"||de(i))&&(a=Le(e)),o){let p=Te(e,true,r,e);l.x=p.x+e.clientLeft,l.y=p.y+e.clientTop;}else i&&c();r&&!o&&i&&c();let m=i&&!o&&!r?an(i,a):B(0),d=s.left+a.scrollLeft-l.x-m.x,u=s.top+a.scrollTop-l.y-m.y;return {x:d,y:u,width:s.width,height:s.height}}function ht(t){return T(t).position==="static"}function nn(t,e){if(!H(t)||T(t).position==="fixed")return null;if(e)return e(t);let n=t.offsetParent;return D(t)===n&&(n=n.ownerDocument.body),n}function cn(t,e){let n=S(t);if(Ae(t))return n;if(!H(t)){let i=V(t);for(;i&&!ne(i);){if(L(i)&&!ht(i))return i;i=V(i);}return n}let o=nn(t,e);for(;o&&Jt(o)&&ht(o);)o=nn(o,e);return o&&ne(o)&&ht(o)&&!Fe(o)?n:o||Qt(t)||n}var io=async function(t){let e=this.getOffsetParent||cn,n=this.getDimensions,o=await n(t.floating);return {reference:oo(t.reference,await e(t.floating),t.strategy),floating:{x:0,y:0,width:o.width,height:o.height}}};function ro(t){return T(t).direction==="rtl"}var so={convertOffsetParentRelativeRectToViewportRelativeRect:Xn,getDocumentElement:D,getClippingRect:to,getOffsetParent:cn,getElementRects:io,getClientRects:qn,getDimensions:no,getScale:ue,isElement:L,isRTL:ro};var pe=jt;var me=Yt,fe=Kt;var Ve=Vt;var ge=(t,e,n)=>{let o=new Map,i={platform:so,...n},r={...i.platform,_c:o};return zt(t,e,{...i,platform:r})};function I(t,e=5e3){return new Promise(n=>{let o=()=>{try{return document.querySelector(t)}catch{return null}},i=o();if(i){n(i);return}let r=false,s=c=>{r||(r=true,a.disconnect(),clearTimeout(l),n(c));},a=new MutationObserver(()=>{let c=o();c&&s(c);});a.observe(document.body,{childList:true,subtree:true});let l=setTimeout(()=>s(null),e);})}function dn(){let e=Date.now().toString(16).padStart(12,"0"),n=new Uint8Array(10);if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function")crypto.getRandomValues(n);else for(let i=0;i<n.length;i++)n[i]=Math.floor(Math.random()*256);n[0]=(n[0]??0)&15|112,n[2]=(n[2]??0)&63|128;let o=Array.from(n,i=>i.toString(16).padStart(2,"0")).join("");return [e.slice(0,8),e.slice(8,12),o.slice(0,4),o.slice(4,8),o.slice(8,20)].join("-")}function Ke(t,e,n,o){let i=t.createElement("iframe");i.className="veo-custom-frame",i.setAttribute("sandbox","allow-scripts"),i.setAttribute("title",n.guide.guideName||"Veo"),i.style.width=o.width;let r=o.fixedHeight!==void 0&&o.fixedHeight!==null;r&&(i.style.height=wt(o.fixedHeight));let s=dn(),a=e.style?.tailwind===true;i.srcdoc=co(e.html??"",e.css??"",e.js??"",s,{tokens:ao(),tailwind:a});let l=()=>n.onClose(),c=m=>{if(m.source!==i.contentWindow)return;let d=m.data;if(!(!d||typeof d!="object"||d.__veo!==s))switch(d.type){case "dismiss":n.onInteraction({guideId:n.guide.guideId,stepIndex:0,action:"dismissed"}),l();break;case "cta":n.onInteraction({guideId:n.guide.guideId,stepIndex:0,action:"cta_clicked"}),typeof d.url=="string"&&M(d.url)&&window.open(d.url,"_blank","noopener,noreferrer"),d.close!==false&&l();break;case "navigate":typeof d.url=="string"&&M(d.url)&&window.location.assign(d.url);break;case "track":typeof d.name=="string"&&n.onTrack&&n.onTrack(d.name,lo(d.props)?d.props:void 0);break;case "resize":!r&&typeof d.height=="number"&&d.height>0&&(i.style.height=`${Math.ceil(d.height)}px`);break}};return window.addEventListener("message",c),{iframe:i,cleanup:()=>window.removeEventListener("message",c)}}function wt(t){return typeof t=="number"?`${t}px`:t}function ao(){if(typeof window>"u"||typeof document>"u")return "";try{let t=getComputedStyle(document.documentElement),e=[],n=new Set;for(let i=0;i<t.length&&e.length<400;i++){let r=t.item(i);if(!r.startsWith("--")||n.has(r))continue;n.add(r);let s=t.getPropertyValue(r).trim();!s||s.length>200||/[<>{}]/.test(s)||e.push(`${r}:${s}`);}let o=getComputedStyle(document.body).fontFamily;return o&&o.length<=200&&!/[<>{}]/.test(o)&&e.push(`--veo-host-font:${o}`),e.length?`:root{${e.join(";")}}`:""}catch{return ""}}function lo(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function co(t,e,n,o,i){let r=`(function(){var T=${JSON.stringify(o)};function P(m){m.__veo=T;parent.postMessage(m,'*');}window.veo={dismiss:function(){P({type:'dismiss'});},cta:function(u){P({type:'cta',url:u});},track:function(n,p){P({type:'track',name:n,props:p||{}});},navigate:function(u){P({type:'navigate',url:u});}};document.addEventListener('click',function(e){var a=e.target&&e.target.closest?e.target.closest('a[href]'):null;if(!a)return;var h=a.getAttribute('href');if(!h||h.charAt(0)==='#'||/^(javascript|mailto|tel):/i.test(h))return;e.preventDefault();if(a.target==='_blank'){P({type:'cta',url:a.href,close:false});}else{P({type:'navigate',url:h});}},true);function H(){P({type:'resize',height:Math.ceil(document.documentElement.scrollHeight)});}window.addEventListener('load',H);try{if(typeof ResizeObserver!=='undefined'){new ResizeObserver(H).observe(document.documentElement);}}catch(e){}})();`,s=i.tokens?`<style>${vt(i.tokens,"style")}</style>`:"",a=i.tailwind?'<script src="https://cdn.tailwindcss.com"></script>':"";return '<!DOCTYPE html><html><head><meta charset="utf-8"><style>html,body{margin:0;padding:0;background:transparent;font-family:var(--veo-host-font,system-ui,sans-serif);}</style>'+s+a+`<style>${vt(e,"style")}</style></head><body>${t}<script>${r}</script>`+(n?`<script>${vt(n,"script")}</script>`:"")+"</body></html>"}function vt(t,e){let n=e==="script"?/<\/script/gi:/<\/style/gi;return t.replace(n,`<\\/${e}`)}var uo={mode:"floating",position:"bottom-right"},un=16,po=360,je=class extends b{async render(e){let n=e.guide.guideSteps[0];if(!n||typeof n.html!="string"||n.html.length===0)return;let o=n.placement??uo,i=null;if(o.mode==="anchored"){let m=o.selector??n.selector??e.guide.activationRules.selector;if(typeof m!="string"||m.length===0||(i=await I(m),!i))return}let{root:r}=this.createHost(),s=r.ownerDocument??document,a=s.createElement("div");a.className=o.mode==="anchored"?"veo-custom-anchored":"veo-custom-floating";let{iframe:l,cleanup:c}=Ke(s,n,e,{width:wt(o.width??po),fixedHeight:o.height??null});this.registerCleanup(c),a.appendChild(l),a.appendChild(W(s,()=>{e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:"dismissed"}),e.onClose();},"veo-custom-close")),r.appendChild(a),o.mode==="floating"?mo(a,o):i&&this.registerCleanup(await this.setupAnchoredPosition(i,a,o)),e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:"shown"});}async setupAnchoredPosition(e,n,o){let i=o.side??"bottom",r=async()=>{let{x:a,y:l}=await ge(e,n,{placement:i,strategy:"fixed",middleware:[pe(o.offsetY??8),fe(),me({padding:8})]});n.style.left=`${a}px`,n.style.top=`${l}px`;};await r();let s=()=>{r();};return window.addEventListener("scroll",s,true),window.addEventListener("resize",s),()=>{window.removeEventListener("scroll",s,true),window.removeEventListener("resize",s);}}};function mo(t,e){let n=e.position??"bottom-right",o=`${e.offsetX??un}px`,i=`${e.offsetY??un}px`,r=t.style;if(n==="center"){r.top="50%",r.left="50%",r.transform="translate(-50%, -50%)";return}let[s,a]=n.split("-");s==="top"?r.top=i:r.bottom=i,a==="left"?r.left=o:a==="right"?r.right=o:(r.left="50%",r.transform="translateX(-50%)");}function Ye(t,e,n){let o=e.guide.guideSteps[0];if(!o)return;let i=o.fields??[],r=()=>{e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:"dismissed"}),e.onClose();},s=n.createElement("div");if(s.className="veo-guide-content",o.title){let u=n.createElement("h2");u.className="veo-guide-title",u.textContent=o.title,s.appendChild(u);}if(o.content){let u=n.createElement("p");u.className="veo-guide-text",u.textContent=o.content,s.appendChild(u);}let a=[],l=n.createElement("form");l.className="veo-form",l.noValidate=true;for(let u of i){let{wrapper:p,read:f}=go(u,n);a.push({field:u,read:f}),l.appendChild(p);}let c=n.createElement("p");c.className="veo-form-error",c.style.display="none",l.appendChild(c);let m=n.createElement("div");m.className="veo-guide-actions";let d=n.createElement("button");d.type="submit",d.className="veo-guide-cta",d.textContent=o.ctaText||"Enviar",m.appendChild(d),l.appendChild(m),l.addEventListener("submit",u=>{u.preventDefault(),c.style.display="none";let p={};for(let{field:g,read:h}of a){let w=h();if(w==null||w===""){if(g.required){c.textContent=`Complet\xE1 "${g.label}"`,c.style.display="block";return}continue}p[g.key]=w;}if(Object.keys(p).length===0){c.textContent="Respond\xE9 al menos un campo",c.style.display="block";return}d.disabled=true,(e.onFormSubmit??(()=>Promise.resolve(true)))(p).then(g=>{if(!g){d.disabled=false,c.textContent="No se pudo enviar. Prob\xE1 de nuevo.",c.style.display="block";return}e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:"completed"});let h=e.isPreview?e.previewNote??"Vista previa: la respuesta NO se guard\xF3.":null;fo(t,n,h),window.setTimeout(()=>e.onClose(),h?2200:1400);});}),s.appendChild(l),s.appendChild(W(n,r)),t.appendChild(s);}function fo(t,e,n){for(;t.firstChild;)t.removeChild(t.firstChild);let o=e.createElement("div");if(o.className="veo-form-thanks",o.textContent="\u2713 \xA1Gracias por tu respuesta!",t.appendChild(o),n){let i=e.createElement("p");i.className="veo-form-preview-note",i.textContent=n,t.appendChild(i);}}function go(t,e){let n=e.createElement("div");n.className="veo-form-field";let o=e.createElement("label");switch(o.className="veo-form-label",o.textContent=t.required?`${t.label} *`:t.label,n.appendChild(o),t.type){case "textarea":{let i=e.createElement("textarea");return i.className="veo-form-input",i.rows=3,t.placeholder&&(i.placeholder=t.placeholder),n.appendChild(i),{wrapper:n,read:()=>i.value.trim()}}case "number":{let i=e.createElement("input");return i.type="number",i.className="veo-form-input",t.placeholder&&(i.placeholder=t.placeholder),n.appendChild(i),{wrapper:n,read:()=>i.value.trim()===""?void 0:Number(i.value)}}case "select":{let i=e.createElement("select");i.className="veo-form-input";let r=e.createElement("option");r.value="",r.textContent=t.placeholder||"Eleg\xED una opci\xF3n\u2026",i.appendChild(r);for(let s of t.options??[]){let a=e.createElement("option");a.value=s,a.textContent=s,i.appendChild(a);}return n.appendChild(i),{wrapper:n,read:()=>i.value||void 0}}case "radio":{let i=e.createElement("div");i.className="veo-form-options";let r=`veo-${t.key}`,s=[];for(let a of t.options??[]){let l=e.createElement("label");l.className="veo-form-option";let c=e.createElement("input");c.type="radio",c.name=r,c.value=a,s.push(c);let m=e.createElement("span");m.textContent=a,l.appendChild(c),l.appendChild(m),i.appendChild(l);}return n.appendChild(i),{wrapper:n,read:()=>s.find(a=>a.checked)?.value}}case "multiselect":{let i=e.createElement("div");i.className="veo-form-options";let r=[];for(let s of t.options??[]){let a=e.createElement("label");a.className="veo-form-option";let l=e.createElement("input");l.type="checkbox",l.value=s,r.push(l);let c=e.createElement("span");c.textContent=s,a.appendChild(l),a.appendChild(c),i.appendChild(a);}return n.appendChild(i),{wrapper:n,read:()=>{let s=r.filter(a=>a.checked).map(a=>a.value);return s.length>0?s:void 0}}}case "checkbox":{let i=e.createElement("label");i.className="veo-form-option";let r=e.createElement("input");r.type="checkbox";let s=e.createElement("span");return s.textContent=t.placeholder||"S\xED",i.appendChild(r),i.appendChild(s),n.appendChild(i),{wrapper:n,read:()=>r.checked?true:t.required?"":false}}case "yesno":{let i=e.createElement("div");i.className="veo-form-options";let r=`veo-${t.key}`,[s,a]=t.options?.length===2?t.options:["S\xED","No"],l=[];for(let{label:c,value:m}of [{label:s,value:true},{label:a,value:false}]){let d=e.createElement("label");d.className="veo-form-option";let u=e.createElement("input");u.type="radio",u.name=r,l.push({input:u,value:m});let p=e.createElement("span");p.textContent=c,d.appendChild(u),d.appendChild(p),i.appendChild(d);}return n.appendChild(i),{wrapper:n,read:()=>l.find(c=>c.input.checked)?.value}}case "nps":return pn(n,e,0,10,"veo-nps-btn");case "rating":return pn(n,e,1,5,"veo-rating-btn","\u2605");default:{let i=e.createElement("input");return i.type="text",i.className="veo-form-input",t.placeholder&&(i.placeholder=t.placeholder),n.appendChild(i),{wrapper:n,read:()=>i.value.trim()}}}}function pn(t,e,n,o,i,r){let s=e.createElement("div");s.className="veo-form-scale";let a,l=[];for(let c=n;c<=o;c++){let m=e.createElement("button");m.type="button",m.className=i,m.textContent=r??String(c),m.setAttribute("aria-label",String(c)),m.addEventListener("click",()=>{a=c,l.forEach((d,u)=>{let p=r?u+n<=c:u+n===c;d.classList.toggle("veo-scale-active",p);});}),l.push(m),s.appendChild(m);}return t.appendChild(s),{wrapper:t,read:()=>a}}var Xe=class extends b{render(e){let n=e.guide.guideSteps[0];if(!n||(n.fields??[]).length===0)return;let{root:o}=this.createHost();this.applyDesign(n.style);let i=o.ownerDocument??document,r=i.createElement("div");r.className="veo-modal-overlay";let s=i.createElement("div");s.className="veo-modal-card",Ye(s,e,i),r.appendChild(s),o.appendChild(r);let a=()=>{e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:"dismissed"}),e.onClose();};r.addEventListener("click",c=>{c.target===r&&a();});let l=c=>{c.key==="Escape"&&a();};document.addEventListener("keydown",l),this.registerCleanup(()=>document.removeEventListener("keydown",l)),e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:"shown"});}};function he(t){let e=t?.inlinePosition;return e==="before"||e==="prepend"||e==="append"?e:"after"}function oe(t,e,n){switch(n){case "before":t.before(e);break;case "after":t.after(e);break;case "prepend":t.prepend(e);break;case "append":t.append(e);break}}function ve(t,e,n){let o=window.setInterval(()=>{if(t.isConnected)return;let i=document.querySelector(e);i&&oe(i,t,n);},1e3);return ()=>window.clearInterval(o)}var qe=class extends b{async render(e){let n=e.guide.guideSteps[0];if(!n||typeof n.html!="string"||n.html.length===0)return;let o=n.selector??e.guide.activationRules.selector;if(typeof o!="string"||o.length===0)return;let i=await I(o);if(!i)return;let{host:r,root:s}=this.createHost();r.style.display="block";let a=he(n.style);oe(i,r,a),this.registerCleanup(ve(r,o,a));let l=s.ownerDocument??document,c=l.createElement("div");c.className="veo-custom-inline";let{iframe:m,cleanup:d}=Ke(l,n,e,{width:"100%"});this.registerCleanup(d),c.appendChild(m),c.appendChild(W(l,()=>{e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:"dismissed"}),e.onClose();},"veo-custom-close")),s.appendChild(c),e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:"shown"});}};var Je=class extends b{async render(e){let n=e.guide.guideSteps[0];if(!n||(n.fields??[]).length===0)return;let o=n.selector??e.guide.activationRules.selector;if(typeof o!="string"||o.length===0)return;let i=await I(o);if(!i)return;let{host:r,root:s}=this.createHost();r.style.display="block";let a=he(n.style);oe(i,r,a),this.registerCleanup(ve(r,o,a)),this.applyDesign(n.style);let l=s.ownerDocument??document,c=l.createElement("div");c.className="veo-inline",Ye(c,e,l),s.appendChild(c),e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:"shown"});}};var Qe=class extends b{async render(e){let n=e.guide.guideSteps[0];if(!n)return;let o=n.selector??e.guide.activationRules.selector;if(typeof o!="string"||o.length===0)return;let i=await I(o);if(!i)return;let{host:r,root:s}=this.createHost();r.style.display="block";let a=he(n.style);oe(i,r,a),this.registerCleanup(ve(r,o,a)),this.applyDesign(n.style);let l=s.ownerDocument??document,c=l.createElement("div");c.className="veo-inline";let m=(u,p)=>{e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:u}),p&&window.open(p,"_blank","noopener,noreferrer"),e.onClose();},d=j(n,l,{onCtaClick:(u,p)=>m("cta_clicked",u==="url"?p:void 0),onDismiss:()=>m("dismissed")});c.appendChild(d),s.appendChild(c),e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:"shown"});}};var Ie=class extends b{render(e){let n=e.nav?.stepIndex??0,o=e.guide.guideSteps[n];if(!o)return;let{root:i}=this.createHost();this.applyDesign(o.style);let r=i.ownerDocument??document,s=r.createElement("div");s.className="veo-modal-overlay";let a=r.createElement("div");a.className="veo-modal-card";let l=(u,p)=>{e.onInteraction({guideId:e.guide.guideId,stepIndex:n,action:u}),p&&window.open(p,"_blank","noopener,noreferrer"),e.onClose();},c=()=>{e.nav?e.nav.callbacks.onSkip():l("dismissed");},m=e.nav?ae(o,e.nav.stepIndex,e.nav.totalSteps,r,e.nav.callbacks):j(o,r,{onCtaClick:(u,p)=>l("cta_clicked",u==="url"?p:void 0),onDismiss:()=>l("dismissed")});a.appendChild(m),s.appendChild(a),i.appendChild(s),s.addEventListener("click",u=>{u.target===s&&c();});let d=u=>{u.key==="Escape"&&c();};document.addEventListener("keydown",d),this.registerCleanup(()=>document.removeEventListener("keydown",d)),e.nav||e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:"shown"});}};var ho={top:"bottom",bottom:"top",left:"right",right:"left"};function Ze(t,e,n){let o=ho[e.split("-")[0]??"bottom"]??"top";for(let i of ["top","bottom","left","right"])t.style.setProperty(i,"");n?.x!=null&&t.style.setProperty("left",`${n.x}px`),n?.y!=null&&t.style.setProperty("top",`${n.y}px`),t.style.setProperty(o,"-6px");}var et=class extends b{async render(e){let n=e.guide.guideSteps[0];if(!n)return;let o=n.selector??e.guide.activationRules.selector;if(typeof o!="string"||o.length===0)return;let i=await I(o);if(!i)return;let{root:r}=this.createHost();this.applyDesign(n.style);let s=r.ownerDocument??document,a=s.createElement("div");a.className="veo-tooltip";let l=(p,f)=>{e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:p}),f&&window.open(f,"_blank","noopener,noreferrer"),e.onClose();},c=j(n,s,{onCtaClick:(p,f)=>{l("cta_clicked",p==="url"?f:void 0);},onDismiss:()=>l("dismissed")});a.appendChild(c);let m=s.createElement("div");m.className="veo-tooltip-arrow",a.appendChild(m),r.appendChild(a);let d=async()=>{let{x:p,y:f,placement:g,middlewareData:h}=await ge(i,a,{placement:"bottom",middleware:[pe(10),fe(),me({padding:8}),Ve({element:m})]});a.style.left=`${p}px`,a.style.top=`${f}px`,Ze(m,g,h.arrow);};await d();let u=()=>{d();};window.addEventListener("scroll",u,true),window.addEventListener("resize",u),this.registerCleanup(()=>{window.removeEventListener("scroll",u,true),window.removeEventListener("resize",u);}),e.onInteraction({guideId:e.guide.guideId,stepIndex:0,action:"shown"});}};var tt=class extends b{async render(e){let n=e.guide.guideSteps[e.currentStepIndex];if(!n)return false;let o=n.selector??e.guide.activationRules.selector;if(typeof o!="string"||o.length===0)return false;let i=await I(o,5e3);if(!i)return false;let{root:r}=this.createHost();this.applyDesign(n.style);let s=r.ownerDocument??document,a=s.createElement("div");a.className="veo-walkthrough";let l=ae(n,e.currentStepIndex,e.guide.guideSteps.length,s,e.callbacks);a.appendChild(l);let c=s.createElement("div");c.className="veo-walkthrough-arrow",a.appendChild(c),r.appendChild(a);let m=async()=>{let{x:u,y:p,placement:f,middlewareData:g}=await ge(i,a,{placement:"bottom",middleware:[pe(10),fe(),me({padding:8}),Ve({element:c})]});a.style.left=`${u}px`,a.style.top=`${p}px`,Ze(c,f,g.arrow);};await m();let d=()=>{m();};return window.addEventListener("scroll",d,true),window.addEventListener("resize",d),this.registerCleanup(()=>{window.removeEventListener("scroll",d,true),window.removeEventListener("resize",d);}),true}};var vo="__veo_preview__",yt=class{constructor(){this.singleStep=null;this.walkthrough=null;this.walkthroughGuide=null;this.walkthroughIndex=0;this.input=null;}preview(e){this.close(),this.input=e;let n=wo(e),o=typeof e.startStepIndex=="number"?e.startStepIndex:0,i=n.guideType==="walkthrough"?this.startWalkthrough(n,o):this.renderSingleStep(n);return {close:()=>this.close(),ready:i}}close(){this.singleStep&&(ie(this.singleStep),this.singleStep=null),this.walkthrough&&(ie(this.walkthrough),this.walkthrough=null),this.walkthroughGuide=null,this.walkthroughIndex=0,this.input=null;}async renderSingleStep(e){let n=yo(e.guideType);if(!n)return {rendered:false};this.singleStep=n;let o=false;try{await n.render({guide:e,onInteraction:i=>{i.action==="shown"&&(o=!0);},onClose:()=>this.close(),onTrack:()=>{},onFormSubmit:this.input?.formSubmit??(()=>Promise.resolve(!0)),isPreview:!0,...this.input?.formSubmit&&this.input.formSubmitNote!==void 0?{previewNote:this.input.formSubmitNote}:{}});}catch{return this.close(),{rendered:false}}return this.singleStep!==n?(ie(n),{rendered:false}):{rendered:o}}async startWalkthrough(e,n=0){if(e.guideSteps.length===0)return {rendered:false};this.walkthroughGuide=e;let o=Math.min(Math.max(0,Math.floor(n)),e.guideSteps.length-1);return this.walkthroughIndex=o,{rendered:await this.renderWalkthroughStep(o)}}async renderWalkthroughStep(e){let n=this.walkthroughGuide;if(!n)return false;this.walkthrough&&(ie(this.walkthrough),this.walkthrough=null);let o={onNext:()=>{let l=this.walkthroughIndex+1;if(l>=n.guideSteps.length){this.close();return}this.walkthroughIndex=l,this.renderWalkthroughStep(l);},onBack:()=>{let l=this.walkthroughIndex-1;l<0||(this.walkthroughIndex=l,this.renderWalkthroughStep(l));},onSkip:()=>this.close(),onComplete:()=>this.close()},r=n.guideSteps[e]?.style?.render;if(r==="modal"||r==="banner"){let l=r==="modal"?new Ie:new Se;try{l.render({guide:n,onInteraction:()=>{},onClose:()=>this.close(),nav:{stepIndex:e,totalSteps:n.guideSteps.length,callbacks:o}});}catch{return ie(l),false}return this.walkthroughGuide!==n?(ie(l),false):(this.walkthrough=l,true)}let s=new tt,a=false;try{a=await s.render({guide:n,currentStepIndex:e,callbacks:o});}catch{a=false;}return !a||this.walkthroughGuide!==n?(ie(s),false):(this.walkthrough=s,true)}},nt=null;function ot(t){return U()?(nt||(nt=new yt),nt.preview(t)):{close:()=>{},ready:Promise.resolve({rendered:false})}}function _e(){nt?.close();}function wo(t){let e=t.activationRules?.selector,n={url:t.activationRules?.url??{type:"prefix",pattern:"/"},trigger:"immediate",...e!==void 0?{selector:e}:{}};return {guideId:vo,guideName:t.guideName??"Preview",guideType:t.guideType,guideSteps:t.guideSteps,activationRules:n,displayFrequency:"always",displayPriority:0}}function yo(t){switch(t){case "modal":return new Ie;case "banner":return new Se;case "tooltip":return new et;case "custom":return new je;case "inline":return new Qe;case "inline-custom":return new qe;case "form":return new Xe;case "inline-form":return new Je;case "walkthrough":return null}}function ie(t){try{t.destroy();}catch{}}var we="veo-builder";var xo="/guides/design",mn=400,bo=640,fn=320,gn=320,xt=16;function hn(t){if(!F()||!U())return {target:()=>null,teardown:()=>{}};let e=Eo(t),n=document.createElement("div");n.setAttribute("data-veo-builder-panel","");let o=n.attachShadow({mode:"open"}),i=document.createElement("style");i.textContent=Co;let r=document.createElement("div");r.className="veo-panel";let s=Math.max(xt,window.innerWidth-mn-xt),a=xt;r.style.left=`${s}px`,r.style.top=`${a}px`,r.style.width=`${mn}px`,r.style.height=`${bo}px`;let l=document.createElement("div");l.className="veo-panel-header";let c=document.createElement("span");c.className="veo-panel-title",c.textContent="Veo \xB7 Editor";let m=document.createElement("div");m.className="veo-panel-actions";let d=document.createElement("button");d.className="veo-panel-btn",d.type="button",d.title="Abrir en ventana aparte",d.setAttribute("aria-label","Abrir en ventana aparte"),d.textContent="\u29C9";let u=document.createElement("button");u.className="veo-panel-btn veo-panel-close",u.type="button",u.title="Cerrar",u.setAttribute("aria-label","Cerrar"),u.textContent="\u2715",m.append(d,u),l.append(c,m);let p=document.createElement("iframe");p.className="veo-panel-frame",p.title="Editor de Veo",p.src=e;let f=document.createElement("div");f.className="veo-panel-resize",f.setAttribute("aria-hidden","true"),r.append(l,p,f),o.append(i,r),document.body.appendChild(n);let g=null,h,w=()=>{h!==void 0&&(clearInterval(h),h=void 0);};return u.addEventListener("click",()=>t.onClose()),d.addEventListener("click",()=>{let v=window.open(e,"veo-editor",`popup,width=${Math.round(r.offsetWidth)},height=${Math.round(r.offsetHeight)+60}`);v&&(g=v,r.style.display="none",h=setInterval(()=>{g?.closed&&(w(),t.onClose());},600));}),l.addEventListener("mousedown",v=>{if(v.target?.classList.contains("veo-panel-btn"))return;v.preventDefault();let y=v.clientX,x=v.clientY,C=s,E=a;p.style.pointerEvents="none";let P=R=>{s=it(C+(R.clientX-y),0,Math.max(0,window.innerWidth-r.offsetWidth)),a=it(E+(R.clientY-x),0,Math.max(0,window.innerHeight-40)),r.style.left=`${s}px`,r.style.top=`${a}px`;},_=()=>{window.removeEventListener("mousemove",P),window.removeEventListener("mouseup",_),p.style.pointerEvents="";};window.addEventListener("mousemove",P),window.addEventListener("mouseup",_);}),f.addEventListener("mousedown",v=>{v.preventDefault(),v.stopPropagation();let y=v.clientX,x=v.clientY,C=r.offsetWidth,E=r.offsetHeight;p.style.pointerEvents="none";let P=R=>{r.style.width=`${it(C+(R.clientX-y),fn,window.innerWidth)}px`,r.style.height=`${it(E+(R.clientY-x),gn,window.innerHeight)}px`;},_=()=>{window.removeEventListener("mousemove",P),window.removeEventListener("mouseup",_),p.style.pointerEvents="";};window.addEventListener("mousemove",P),window.addEventListener("mouseup",_);}),{target:()=>g&&!g.closed?g:p.contentWindow,teardown:()=>{w(),g&&!g.closed&&g.close(),n.remove();}}}function it(t,e,n){return Math.min(Math.max(t,e),n)}function Eo(t){let e=t.panelPath??xo,n=new URL(e,t.dashboardOrigin);return n.searchParams.set("veoToken",t.token),n.searchParams.set("veoApp",t.appOrigin),t.guide&&n.searchParams.set("veoGuide",t.guide),n.toString()}var Co=`
249
282
  :host { all: initial; }
250
283
  .veo-panel {
251
284
  position: fixed;
252
- min-width: ${rn}px; min-height: ${sn}px;
285
+ min-width: ${fn}px; min-height: ${gn}px;
253
286
  max-width: 96vw; max-height: 94vh;
254
287
  display: flex; flex-direction: column;
255
288
  background: #fff;
@@ -284,11 +317,11 @@ var veoBuilder=(function(exports){'use strict';function G(){return typeof window
284
317
  linear-gradient(135deg, transparent 50%, rgba(0,0,0,0.25) 50%, rgba(0,0,0,0.25) 60%,
285
318
  transparent 60%, transparent 72%, rgba(0,0,0,0.25) 72%, rgba(0,0,0,0.25) 82%, transparent 82%);
286
319
  }
287
- `;var ln=[/^css-[a-z0-9]{4,}$/i,/^_[a-z0-9]+_[a-z0-9]{4,}_\d+$/,/^[a-z]{2,4}-[a-z0-9]{6,}$/i,/^[a-f0-9]{6,}$/i,/^sc-[a-z0-9]+$/i];function io(e){return ln.some(t=>t.test(e))}function Je(e){return Array.from(e.classList).filter(t=>!io(t)&&t.length<64)}var ro=["data-testid","data-test","data-cy","name","aria-label","placeholder","alt","title","href","role","type"],so=100;function dt(e){return typeof CSS<"u"&&typeof CSS.escape=="function"?CSS.escape(e):e.replace(/[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~]/g,"\\$&")}function cn(e){return e.replace(/[\\"]/g,"\\$&")}function ao(e,t){for(let n of ro){let o=e.getAttribute(n);if(o&&o.length>0&&o.length<=so)return `${t}[${n}="${cn(o)}"]`}return null}function lo(e){let t=e.tagName.toLowerCase(),n=e.getAttribute("data-veo-tag");if(n)return `${t}[data-veo-tag="${cn(n)}"]`;if(e.id){let s=Je(e),a=s.length>0?`.${s.map(dt).join(".")}`:"";return `${t}#${dt(e.id)}${a}`}let o=ao(e,t);if(o)return o;let i=Je(e),r=i.length>0?`.${i.map(dt).join(".")}`:"";return `${t}${r}`}function Qe(e,t=5){let n=[],o=e,i=0;for(;o&&o!==document.documentElement&&i<=t;)n.unshift(lo(o)),o=o.parentElement,i++;return n.join(" > ")}var ut=2147483646,co="data-veo-picker",dn=5,uo=`
320
+ `;var vn=[/^css-[a-z0-9]{4,}$/i,/^_[a-z0-9]+_[a-z0-9]{4,}_\d+$/,/^[a-z]{2,4}-[a-z0-9]{6,}$/i,/^[a-f0-9]{6,}$/i,/^sc-[a-z0-9]+$/i];function ko(t){return vn.some(e=>e.test(t))}function rt(t){return Array.from(t.classList).filter(e=>!ko(e)&&e.length<64)}var So=["data-testid","data-test","data-cy","name","aria-label","placeholder","alt","title","href","role","type"],Po=100;function bt(t){return typeof CSS<"u"&&typeof CSS.escape=="function"?CSS.escape(t):t.replace(/[!"#$%&'()*+,./:;<=>?@[\\\]^`{|}~]/g,"\\$&")}function wn(t){return t.replace(/[\\"]/g,"\\$&")}function Ro(t,e){for(let n of So){let o=t.getAttribute(n);if(o&&o.length>0&&o.length<=Po)return `${e}[${n}="${wn(o)}"]`}return null}function Ao(t){let e=t.tagName.toLowerCase(),n=t.getAttribute("data-veo-tag");if(n)return `${e}[data-veo-tag="${wn(n)}"]`;if(t.id){let s=rt(t),a=s.length>0?`.${s.map(bt).join(".")}`:"";return `${e}#${bt(t.id)}${a}`}let o=Ro(t,e);if(o)return o;let i=rt(t),r=i.length>0?`.${i.map(bt).join(".")}`:"";return `${e}${r}`}function st(t,e=5){let n=[],o=t,i=0;for(;o&&o!==document.documentElement&&i<=e;)n.unshift(Ao(o)),o=o.parentElement,i++;return n.join(" > ")}var Et=2147483646,Lo="data-veo-picker",yn=5,To=`
288
321
  :host { all: initial; }
289
322
  .veo-pick-box {
290
323
  position: fixed;
291
- z-index: ${ut};
324
+ z-index: ${Et};
292
325
  pointer-events: none;
293
326
  box-sizing: border-box;
294
327
  background: rgba(99, 102, 241, 0.22);
@@ -298,7 +331,7 @@ var veoBuilder=(function(exports){'use strict';function G(){return typeof window
298
331
  }
299
332
  .veo-pick-label {
300
333
  position: fixed;
301
- z-index: ${ut};
334
+ z-index: ${Et};
302
335
  pointer-events: none;
303
336
  max-width: 360px;
304
337
  background: #1e1b4b;
@@ -315,7 +348,7 @@ var veoBuilder=(function(exports){'use strict';function G(){return typeof window
315
348
  top: 12px;
316
349
  left: 50%;
317
350
  transform: translateX(-50%);
318
- z-index: ${ut};
351
+ z-index: ${Et};
319
352
  pointer-events: none;
320
353
  background: #4338ca;
321
354
  color: #fff;
@@ -324,5 +357,5 @@ var veoBuilder=(function(exports){'use strict';function G(){return typeof window
324
357
  border-radius: 999px;
325
358
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
326
359
  }
327
- `,pt=class{constructor(){this.host=null;this.box=null;this.label=null;this.current=null;this.maxAncestors=dn;this.onPick=null;this.onCancel=null;this.onMove=t=>{let n=t.target;!(n instanceof Element)||this.isOwn(n)||(this.current=n,this.draw(n));};this.onClick=t=>{let n=this.current??(t.target instanceof Element?t.target:null);if(!n||this.isOwn(n))return;t.preventDefault(),t.stopPropagation(),t.stopImmediatePropagation();let o=this.describe(n),i=this.onPick;this.stop(),i?.(o);};this.onKey=t=>{if(t.key!=="Escape")return;t.preventDefault(),t.stopPropagation();let n=this.onCancel;this.stop(),n?.();};this.swallow=t=>{this.isOwn(t.target)||(t.preventDefault(),t.stopPropagation());};this.reposition=()=>{this.current&&this.draw(this.current);};}start(t){this.stop(),this.maxAncestors=t.maxAncestors??dn,this.onPick=t.onPick,this.onCancel=t.onCancel??null;let n=document.createElement("div");n.setAttribute(co,"");let o=n.attachShadow({mode:"open"}),i=document.createElement("style");i.textContent=uo,this.box=document.createElement("div"),this.box.className="veo-pick-box",this.box.style.display="none",this.label=document.createElement("div"),this.label.className="veo-pick-label",this.label.style.display="none";let r=document.createElement("div");r.className="veo-pick-hint",r.textContent=t.hint??"Seleccion\xE1 un elemento \xB7 Esc para cancelar",o.append(i,this.box,this.label,r),document.body.appendChild(n),this.host=n,document.addEventListener("mousemove",this.onMove,true),document.addEventListener("click",this.onClick,true),document.addEventListener("mousedown",this.swallow,true),document.addEventListener("mouseup",this.swallow,true),document.addEventListener("keydown",this.onKey,true),window.addEventListener("scroll",this.reposition,true),window.addEventListener("resize",this.reposition);}stop(){document.removeEventListener("mousemove",this.onMove,true),document.removeEventListener("click",this.onClick,true),document.removeEventListener("mousedown",this.swallow,true),document.removeEventListener("mouseup",this.swallow,true),document.removeEventListener("keydown",this.onKey,true),window.removeEventListener("scroll",this.reposition,true),window.removeEventListener("resize",this.reposition),this.host?.parentNode&&this.host.parentNode.removeChild(this.host),this.host=null,this.box=null,this.label=null,this.current=null,this.onPick=null,this.onCancel=null;}isOwn(t){return t instanceof Node&&this.host!==null&&this.host.contains(t)}draw(t){if(!this.box||!this.label)return;let n=t.getBoundingClientRect();this.box.style.display="block",this.box.style.top=`${n.top}px`,this.box.style.left=`${n.left}px`,this.box.style.width=`${n.width}px`,this.box.style.height=`${n.height}px`;let o=Qe(t,0);this.label.textContent="";let i=document.createElement("div");i.className="veo-pick-sel",i.textContent=o;let r=document.createElement("div");r.className="veo-pick-dim",r.textContent=`${Math.round(n.width)} \xD7 ${Math.round(n.height)}`,this.label.append(i,r),this.label.style.display="block";let s=48,a=n.bottom+8+s>window.innerHeight;this.label.style.top=a?`${Math.max(8,n.top-s-8)}px`:`${n.bottom+8}px`,this.label.style.left=`${Math.max(8,n.left)}px`;}describe(t){let n=t.getBoundingClientRect();return {selector:Qe(t,this.maxAncestors),shortSelector:Qe(t,0),tag:t.tagName.toLowerCase(),id:t.id||null,classes:Je(t),text:(t.textContent??"").trim().slice(0,120),rect:{x:Math.round(n.left),y:Math.round(n.top),width:Math.round(n.width),height:Math.round(n.height)}}}},Re=null;function Ze(e){return $()?(Re||(Re=new pt),Re.start(e),{stop:()=>Re?.stop()}):{stop:()=>{}}}function un(){Re?.stop();}function et(){if(!G()||!$())return null;let e=gt();if(!e)return null;let t=e.token,n=mo(e.origin);if(!n)return null;let o=null,i=null,r=null,s=()=>i?i.target():r,a=m=>{s()?.postMessage({source:he,token:t,...m},n);},c=m=>{switch(m.type){case "panel-ready":a({type:"ready"});break;case "start-picker":o?.stop(),o=Ze({onPick:h=>{o=null,a({type:"picked",payload:h});},onCancel:()=>{o=null,a({type:"pick-cancelled"});},...m.maxAncestors!==void 0?{maxAncestors:m.maxAncestors}:{},...m.hint!==void 0?{hint:m.hint}:{}});break;case "stop-picker":o?.stop(),o=null;break;case "preview":m.guide&&Xe(m.guide).ready;break;case "close-preview":Pe();break;case "teardown":p();break}},l=m=>{if(m.origin!==n)return;let h=m.data;!h||h.source!==he||h.token!==t||c(h);},d=()=>a({type:"closed"}),p=()=>{window.removeEventListener("message",l),window.removeEventListener("pagehide",d),o?.stop(),o=null,Pe(),a({type:"closed"}),i?.teardown(),i=null,vt();};if(e.panel)i=an({dashboardOrigin:n,token:t,appOrigin:window.location.origin,guide:e.guide,panelPath:e.panelPath,onClose:()=>p()});else if(r=fo(),!r)return null;let f=()=>{window.addEventListener("message",l),window.addEventListener("pagehide",d),e.panel||a({type:"ready"});},u=window.__veoBuilder;return !e.panel&&u?.apiKey&&u?.apiUrl?po(u.apiUrl,u.apiKey,t).then(m=>{m?f():window.console&&console.warn("[veo] token de builder inv\xE1lido \u2014 modo no activado");}):f(),{teardown:p}}async function po(e,t,n){try{let o=`${e.replace(/\/+$/,"")}/v1/builder/verify`,i=await fetch(o,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":t},body:JSON.stringify({token:n})});return i.ok?(await i.json().catch(()=>null))?.valid!==!1:!0}catch{return true}}function fo(){return window.opener&&window.opener!==window?window.opener:window.parent&&window.parent!==window?window.parent:null}function mo(e){if(e)try{return new URL(e).origin}catch{return null}if($()&&document.referrer)try{return new URL(document.referrer).origin}catch{return null}return null}var ho="popup,width=1280,height=860",go=600;function pn(e){if(!G())return xo();let t=e.dashboardOrigin??window.location.origin,n=wo(e.appUrl),o=vo(e.appUrl,e.token,t),i=e.frame??null,r=i!==null,s=null;r?i.src=o:s=window.open(o,e.windowName??"veo-builder",e.windowFeatures??ho);let a=()=>r?i?.contentWindow??null:s,c=f=>{let u=a();u&&(!r&&s?.closed||u.postMessage({source:he,token:e.token,...f},n??"*"));},l,d=()=>{window.removeEventListener("message",p),l!==void 0&&(clearInterval(l),l=void 0);},p=f=>{if(n&&f.origin!==n)return;let u=f.data;if(!(!u||u.source!==he||u.token!==e.token))switch(u.type){case "ready":e.onReady?.();break;case "picked":u.payload&&e.onPicked?.(u.payload);break;case "pick-cancelled":e.onCancelled?.();break;case "closed":d(),e.onClosed?.();break}};return window.addEventListener("message",p),r||(l=setInterval(()=>{s?.closed&&(d(),e.onClosed?.());},go)),{startPicker:f=>c({type:"start-picker",...f?.maxAncestors!==void 0?{maxAncestors:f.maxAncestors}:{},...f?.hint!==void 0?{hint:f.hint}:{}}),stopPicker:()=>c({type:"stop-picker"}),preview:f=>c({type:"preview",guide:f}),closePreview:()=>c({type:"close-preview"}),close:()=>{c({type:"teardown"}),r?i&&(i.src="about:blank"):s&&!s.closed&&s.close(),d();}}}function vo(e,t,n){try{let o=new URL(e,window.location.href);return o.searchParams.set(oe,t),o.searchParams.set(ie,n),o.toString()}catch{return e}}function wo(e){try{return new URL(e,window.location.href).origin}catch{return null}}function xo(){return {startPicker:()=>{},stopPicker:()=>{},preview:()=>{},closePreview:()=>{},close:()=>{}}}et();exports.closeGuidePreview=Pe;exports.createBuilderSession=pn;exports.initBuilderMode=et;exports.previewGuide=Xe;exports.startElementPicker=Ze;exports.stopElementPicker=un;return exports;})({});//# sourceMappingURL=veo-builder.js.map
360
+ `,Ct=class{constructor(){this.host=null;this.box=null;this.label=null;this.current=null;this.maxAncestors=yn;this.onPick=null;this.onCancel=null;this.onMove=e=>{let n=e.target;!(n instanceof Element)||this.isOwn(n)||(this.current=n,this.draw(n));};this.onClick=e=>{let n=this.current??(e.target instanceof Element?e.target:null);if(!n||this.isOwn(n))return;e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation();let o=this.describe(n),i=this.onPick;this.stop(),i?.(o);};this.onKey=e=>{if(e.key!=="Escape")return;e.preventDefault(),e.stopPropagation();let n=this.onCancel;this.stop(),n?.();};this.swallow=e=>{this.isOwn(e.target)||(e.preventDefault(),e.stopPropagation());};this.reposition=()=>{this.current&&this.draw(this.current);};}start(e){this.stop(),this.maxAncestors=e.maxAncestors??yn,this.onPick=e.onPick,this.onCancel=e.onCancel??null;let n=document.createElement("div");n.setAttribute(Lo,"");let o=n.attachShadow({mode:"open"}),i=document.createElement("style");i.textContent=To,this.box=document.createElement("div"),this.box.className="veo-pick-box",this.box.style.display="none",this.label=document.createElement("div"),this.label.className="veo-pick-label",this.label.style.display="none";let r=document.createElement("div");r.className="veo-pick-hint",r.textContent=e.hint??"Seleccion\xE1 un elemento \xB7 Esc para cancelar",o.append(i,this.box,this.label,r),document.body.appendChild(n),this.host=n,document.addEventListener("mousemove",this.onMove,true),document.addEventListener("click",this.onClick,true),document.addEventListener("mousedown",this.swallow,true),document.addEventListener("mouseup",this.swallow,true),document.addEventListener("keydown",this.onKey,true),window.addEventListener("scroll",this.reposition,true),window.addEventListener("resize",this.reposition);}stop(){document.removeEventListener("mousemove",this.onMove,true),document.removeEventListener("click",this.onClick,true),document.removeEventListener("mousedown",this.swallow,true),document.removeEventListener("mouseup",this.swallow,true),document.removeEventListener("keydown",this.onKey,true),window.removeEventListener("scroll",this.reposition,true),window.removeEventListener("resize",this.reposition),this.host?.parentNode&&this.host.parentNode.removeChild(this.host),this.host=null,this.box=null,this.label=null,this.current=null,this.onPick=null,this.onCancel=null;}isOwn(e){return e instanceof Node&&this.host!==null&&this.host.contains(e)}draw(e){if(!this.box||!this.label)return;let n=e.getBoundingClientRect();this.box.style.display="block",this.box.style.top=`${n.top}px`,this.box.style.left=`${n.left}px`,this.box.style.width=`${n.width}px`,this.box.style.height=`${n.height}px`;let o=st(e,0);this.label.textContent="";let i=document.createElement("div");i.className="veo-pick-sel",i.textContent=o;let r=document.createElement("div");r.className="veo-pick-dim",r.textContent=`${Math.round(n.width)} \xD7 ${Math.round(n.height)}`,this.label.append(i,r),this.label.style.display="block";let s=48,a=n.bottom+8+s>window.innerHeight;this.label.style.top=a?`${Math.max(8,n.top-s-8)}px`:`${n.bottom+8}px`,this.label.style.left=`${Math.max(8,n.left)}px`;}describe(e){let n=e.getBoundingClientRect();return {selector:st(e,this.maxAncestors),shortSelector:st(e,0),tag:e.tagName.toLowerCase(),id:e.id||null,classes:rt(e),text:(e.textContent??"").trim().slice(0,120),rect:{x:Math.round(n.left),y:Math.round(n.top),width:Math.round(n.width),height:Math.round(n.height)}}}},Oe=null;function at(t){return U()?(Oe||(Oe=new Ct),Oe.start(t),{stop:()=>Oe?.stop()}):{stop:()=>{}}}function xn(){Oe?.stop();}function lt(){if(!F()||!U())return null;let t=Lt();if(!t)return null;let e=t.token,n=Oo(t.origin);if(!n)return null;let o=null,i=null,r=null,s=()=>i?i.target():r,a=f=>{s()?.postMessage({source:we,token:e,...f},n);},l=f=>{switch(f.type){case "panel-ready":a({type:"ready"});break;case "start-picker":o?.stop(),o=at({onPick:g=>{o=null,a({type:"picked",payload:g});},onCancel:()=>{o=null,a({type:"pick-cancelled"});},...f.maxAncestors!==void 0?{maxAncestors:f.maxAncestors}:{},...f.hint!==void 0?{hint:f.hint}:{}});break;case "stop-picker":o?.stop(),o=null;break;case "preview":f.guide&&ot(f.guide).ready;break;case "close-preview":_e();break;case "teardown":d();break}},c=f=>{if(f.origin!==n)return;let g=f.data;!g||g.source!==we||g.token!==e||l(g);},m=()=>a({type:"closed"}),d=()=>{window.removeEventListener("message",c),window.removeEventListener("pagehide",m),o?.stop(),o=null,_e(),a({type:"closed"}),i?.teardown(),i=null,Tt();};if(t.panel)i=hn({dashboardOrigin:n,token:e,appOrigin:window.location.origin,guide:t.guide,panelPath:t.panelPath,onClose:()=>d()});else if(r=_o(),!r)return null;let u=()=>{window.addEventListener("message",c),window.addEventListener("pagehide",m),t.panel||a({type:"ready"});},p=window.__veoBuilder;return !t.panel&&p?.apiKey&&p?.apiUrl?Io(p.apiUrl,p.apiKey,e).then(f=>{f?u():window.console&&console.warn("[veo] token de builder inv\xE1lido \u2014 modo no activado");}):u(),{teardown:d}}async function Io(t,e,n){try{let o=`${t.replace(/\/+$/,"")}/v1/builder/verify`,i=await fetch(o,{method:"POST",headers:{"Content-Type":"application/json","X-Api-Key":e},body:JSON.stringify({token:n})});return i.ok?(await i.json().catch(()=>null))?.valid!==!1:!0}catch{return true}}function _o(){return window.opener&&window.opener!==window?window.opener:window.parent&&window.parent!==window?window.parent:null}function Oo(t){if(t)try{return new URL(t).origin}catch{return null}if(U()&&document.referrer)try{return new URL(document.referrer).origin}catch{return null}return null}var No="popup,width=1280,height=860",Bo=600;function bn(t){if(!F())return Ho();let e=t.dashboardOrigin??window.location.origin,n=Do(t.appUrl),o=Mo(t.appUrl,t.token,e),i=t.frame??null,r=i!==null,s=null;r?i.src=o:s=window.open(o,t.windowName??"veo-builder",t.windowFeatures??No);let a=()=>r?i?.contentWindow??null:s,l=u=>{let p=a();p&&(!r&&s?.closed||p.postMessage({source:we,token:t.token,...u},n??"*"));},c,m=()=>{window.removeEventListener("message",d),c!==void 0&&(clearInterval(c),c=void 0);},d=u=>{if(n&&u.origin!==n)return;let p=u.data;if(!(!p||p.source!==we||p.token!==t.token))switch(p.type){case "ready":t.onReady?.();break;case "picked":p.payload&&t.onPicked?.(p.payload);break;case "pick-cancelled":t.onCancelled?.();break;case "closed":m(),t.onClosed?.();break}};return window.addEventListener("message",d),r||(c=setInterval(()=>{s?.closed&&(m(),t.onClosed?.());},Bo)),{startPicker:u=>l({type:"start-picker",...u?.maxAncestors!==void 0?{maxAncestors:u.maxAncestors}:{},...u?.hint!==void 0?{hint:u.hint}:{}}),stopPicker:()=>l({type:"stop-picker"}),preview:u=>l({type:"preview",guide:u}),closePreview:()=>l({type:"close-preview"}),close:()=>{l({type:"teardown"}),r?i&&(i.src="about:blank"):s&&!s.closed&&s.close(),m();}}}function Mo(t,e,n){try{let o=new URL(t,window.location.href);return o.searchParams.set(re,e),o.searchParams.set(se,n),o.toString()}catch{return t}}function Do(t){try{return new URL(t,window.location.href).origin}catch{return null}}function Ho(){return {startPicker:()=>{},stopPicker:()=>{},preview:()=>{},closePreview:()=>{},close:()=>{}}}lt();exports.closeGuidePreview=_e;exports.createBuilderSession=bn;exports.initBuilderMode=lt;exports.previewGuide=ot;exports.startElementPicker=at;exports.stopElementPicker=xn;return exports;})({});//# sourceMappingURL=veo-builder.js.map
328
361
  //# sourceMappingURL=veo-builder.js.map