voicedots-ai-widget 2.1.2 → 2.1.4

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.
@@ -39,7 +39,7 @@ return ie(Op,{children:/* @__PURE__ */ie("div",{className:"vd-modal-overlay",chi
39
39
  /* @__PURE__ */ie(Fe,{size:14}),
40
40
  /* @__PURE__ */ie("span",{children:"Confirmed & saved successfully"})]}:{children:[
41
41
  /* @__PURE__ */ie(Be,{size:14,className:"vd-spin"}),
42
- /* @__PURE__ */ie("span",{children:"Waiting for verbal confirmation..."})]})})})]})]})}):null}function Ap({title:e,agentId:t,avatars:n,logo:i,pos:o,mini:s,msg:r}){const[a,c]=_e(s);let d,l="default";t.includes("voicedots")||"agent_6401kktn9d03fncsk4j27psd9gtk"===t?(d=function(){const[e,t]=_e(!1),[n,i]=_e(null),[o,s]=_e(!1),[r,a]=_e(!1),[c,d]=_e(!1),l=ye(!1),[u,h]=_e(null),[p,m]=_e(null),[g,v]=_e(!1),[f,_]=_e(!1),[b,y]=_e(null),[k,w]=_e(!1),C=Ce(async e=>{if(!l.current&&!o&&!r){l.current=!0,a(!0),m(null);try{const n=await fetch(`https://token.voicedots.io/getToken?agent_id=${e}`);if(!n.ok)throw new Error("Failed to fetch token");const{token:o,ws_url:r}=await n.json(),a=new dh({adaptiveStream:!0,dynacast:!0,videoCaptureDefaults:{resolution:Bc.h720.resolution}});a.on(pc.ActiveSpeakersChanged,e=>{const t=e.find(e=>e instanceof ch);d(!!t)}),a.on(pc.TrackSubscribed,e=>{if("audio"===e.kind){const t=e.attach();document.body.appendChild(t)}}),a.on(pc.TrackUnsubscribed,e=>{e.detach().forEach(e=>e.remove())}),a.on(pc.DataReceived,async e=>{try{const t=JSON.parse((new TextDecoder).decode(e));if(console.log("Received data from agent:",t),"TOOL_CALL"===t.type)if("openValidationPopup"===t.function)w(!1),y({name:t.args?.name??"",email:t.args?.email??"",phone:t.args?.phone??""}),_(!0);else if("updateField"===t.function){const e=t.args?.field,n=t.args?.value;e&&void 0!==n&&(console.log(`[Tool] Updating field: ${e} = ${n}`),y(t=>({...t,[e]:n})))}else if("confirmSave"===t.function)console.log("[Tool] Data confirmed by agent — auto-saving"),w(!0),setTimeout(()=>{_(!1),w(!1)},2e3);else if("glowAvatar"===t.function){const e=t.args?.name;console.log(`Setting active avatar to: ${e}`),h(e)}else"endCall"===t.function?(console.log("[Tool] Agent initiated end call"),a&&await a.disconnect(),i(null),s(!1),d(!1),h(null),l.current=!1):"appointmentBooked"===t.function&&console.log("[Tool] Appointment booked:",t.args)}catch(ip){console.error("Error parsing data message",ip)}});const c=r;await a.connect(c,o),await a.localParticipant.setMicrophoneEnabled(!0),t(!1),i(a),s(!0)}catch(n){console.error("LiveKit connection error:",n),m(n.message||"Failed to start conversation")}finally{l.current=!1,a(!1)}}},[o,r]);return{start:C,stop:async()=>{l.current=!1,n&&(await n.disconnect(),i(null)),s(!1),d(!1),h(null)},isConnected:o,isConnecting:r,isSpeaking:c,activeAvatar:u,setActiveAvatar:h,toggleMic:async()=>{if(!n||!n.localParticipant)return;const i=!e;t(i);try{await n.localParticipant.setMicrophoneEnabled(!i)}catch(ip){console.error("Failed to toggle mic",ip)}},micMuted:e,error:p,setError:m,loginOpen:g,setLoginOpen:v,dataCollectionOpen:f,setDataCollectionOpen:_,handleUserDataCollected:async e=>{y(e)},userData:b,setUserData:y,dataConfirmed:k}}(),l="voicedots"):d=Rp();const u=ye({}),[h,p]=_e(360);return be(()=>{const e=d.activeAvatar;e&&(d.isSpeaking?u.current[e]?.startTalking():u.current[e]?.stopTalking())},[d.isSpeaking,d.activeAvatar]),be(()=>{let e;return d.isConnected&&(p(360),e=setInterval(()=>{p(e=>e>0?e-1:0)},1e3)),()=>clearInterval(e)},[d.isConnected]),/* @__PURE__ */ie("div",{className:`vd-widget-container vd-pos-${o}`,children:["voicedots"===l&&/* @__PURE__ */ie(Dp,{isOpen:d.dataCollectionOpen,title:"Verify Information",onClose:()=>d.setDataCollectionOpen(!1),data:d.userData,confirmed:d.dataConfirmed}),"voicedots"!==l&&/* @__PURE__ */ie(Lp,{isOpen:d.dataCollectionOpen,title:"Verify Information",onClose:()=>d.setDataCollectionOpen(!1),data:d.userData,onSubmit:d.handleUserDataCollected}),!a&&/* @__PURE__ */ie("div",{className:"vd-main-card",children:[
42
+ /* @__PURE__ */ie("span",{children:"Waiting for verbal confirmation..."})]})})})]})]})}):null}function Ap({title:e,agentId:t,avatars:n,logo:i,pos:o,mini:s,msg:r}){const[a,c]=_e(s);let d,l="default";t.includes("voicedots")||"agent_6401kktn9d03fncsk4j27psd9gtk"===t?(d=function(){const[e,t]=_e(!1),[n,i]=_e(null),[o,s]=_e(!1),[r,a]=_e(!1),[c,d]=_e(!1),l=ye(!1),[u,h]=_e(null),[p,m]=_e(null),[g,v]=_e(!1),[f,_]=_e(!1),[b,y]=_e(null),[k,w]=_e(!1),C=Ce(async e=>{if(!l.current&&!o&&!r){l.current=!0,a(!0),m(null);try{const n=await fetch(`https://token.voicedots.io/getToken?agent_id=${e}`);if(!n.ok)throw new Error("Failed to fetch token");const{token:o,ws_url:r}=await n.json(),a=new dh({adaptiveStream:!0,dynacast:!0,videoCaptureDefaults:{resolution:Bc.h720.resolution}});a.on(pc.ActiveSpeakersChanged,e=>{const t=e.find(e=>e instanceof ch);d(!!t)}),a.on(pc.TrackSubscribed,e=>{if("audio"===e.kind){const t=e.attach();document.body.appendChild(t)}}),a.on(pc.TrackUnsubscribed,e=>{e.detach().forEach(e=>e.remove())}),a.on(pc.DataReceived,async e=>{try{const t=JSON.parse((new TextDecoder).decode(e));if(console.log("Received data from agent:",t),"TOOL_CALL"===t.type)if("openValidationPopup"===t.function)w(!1),y({name:t.args?.name??"",email:t.args?.email??"",phone:t.args?.phone??""}),_(!0);else if("updateField"===t.function){const e=t.args?.field,n=t.args?.value;e&&void 0!==n&&(console.log(`[Tool] Updating field: ${e} = ${n}`),y(t=>({...t,[e]:n})))}else if("confirmSave"===t.function)console.log("[Tool] Data confirmed by agent — auto-saving"),w(!0),setTimeout(()=>{_(!1),w(!1)},2e3);else if("glowAvatar"===t.function){const e=t.args?.name?.split("_").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ");console.log(`Setting active avatar to: ${e}`),h(e)}else"endCall"===t.function?(console.log("[Tool] Agent initiated end call"),a&&await a.disconnect(),i(null),s(!1),d(!1),h(null),l.current=!1):"appointmentBooked"===t.function&&console.log("[Tool] Appointment booked:",t.args)}catch(ip){console.error("Error parsing data message",ip)}});const c=r;await a.connect(c,o),await a.localParticipant.setMicrophoneEnabled(!0),t(!1),i(a),s(!0)}catch(n){console.error("LiveKit connection error:",n),m(n.message||"Failed to start conversation")}finally{l.current=!1,a(!1)}}},[o,r]);return{start:C,stop:async()=>{l.current=!1,n&&(await n.disconnect(),i(null)),s(!1),d(!1),h(null)},isConnected:o,isConnecting:r,isSpeaking:c,activeAvatar:u,setActiveAvatar:h,toggleMic:async()=>{if(!n||!n.localParticipant)return;const i=!e;t(i);try{await n.localParticipant.setMicrophoneEnabled(!i)}catch(ip){console.error("Failed to toggle mic",ip)}},micMuted:e,error:p,setError:m,loginOpen:g,setLoginOpen:v,dataCollectionOpen:f,setDataCollectionOpen:_,handleUserDataCollected:async e=>{y(e)},userData:b,setUserData:y,dataConfirmed:k}}(),l="voicedots"):d=Rp();const u=ye({}),[h,p]=_e(360);return be(()=>{const e=d.activeAvatar;e&&(d.isSpeaking?u.current[e]?.startTalking():u.current[e]?.stopTalking())},[d.isSpeaking,d.activeAvatar]),be(()=>{let e;return d.isConnected&&(p(360),e=setInterval(()=>{p(e=>e>0?e-1:0)},1e3)),()=>clearInterval(e)},[d.isConnected]),/* @__PURE__ */ie("div",{className:`vd-widget-container vd-pos-${o}`,children:["voicedots"===l&&/* @__PURE__ */ie(Dp,{isOpen:d.dataCollectionOpen,title:"Verify Information",onClose:()=>d.setDataCollectionOpen(!1),data:d.userData,confirmed:d.dataConfirmed}),"voicedots"!==l&&/* @__PURE__ */ie(Lp,{isOpen:d.dataCollectionOpen,title:"Verify Information",onClose:()=>d.setDataCollectionOpen(!1),data:d.userData,onSubmit:d.handleUserDataCollected}),!a&&/* @__PURE__ */ie("div",{className:"vd-main-card",children:[
43
43
  /* @__PURE__ */ie("div",{className:"vd-header",children:[
44
44
  /* @__PURE__ */ie("div",{className:"vd-title-group",children:[
45
45
  /* @__PURE__ */ie("h3",{children:e}),d.isConnected&&/* @__PURE__ */ie("span",{className:"vd-timer",children:[Math.floor(h/60),":",(h%60).toString().padStart(2,"0")]})]}),
@@ -62,7 +62,7 @@ return ie(Op,{children:/* @__PURE__ */ie("div",{className:"vd-modal-overlay",chi
62
62
  /* @__PURE__ */ie("div",{className:"vd-pill-icon-container "+(d.isSpeaking?"pulse":""),children:/* @__PURE__ */ie("div",{className:"vd-pill-icon",children:/* @__PURE__ */ie("img",{src:i,alt:"VoiceDots Logo",className:"vd-pill-logo"})})}),
63
63
  /* @__PURE__ */ie("span",{className:"vd-pill-text",children:"VoiceDots"})]})]})]})}!function(e,t,n,i){function o(){var t,n=Reflect.construct(HTMLElement,[],o);return n._vdomComponent=e,i&&i.shadow?(n._root=n.attachShadow({mode:i.mode||"open",serializable:null!=(t=i.serializable)&&t}),i.adoptedStyleSheets&&(n._root.adoptedStyleSheets=i.adoptedStyleSheets)):n._root=n,n}(o.prototype=Object.create(HTMLElement.prototype)).constructor=o,o.prototype.connectedCallback=function(){Q.call(this,i)},o.prototype.attributeChangedCallback=X,o.prototype.disconnectedCallback=Z,n=n||e.observedAttributes||Object.keys(e.propTypes||{}),o.observedAttributes=n,e.formAssociated&&(o.formAssociated=!0),n.forEach(function(e){Object.defineProperty(o.prototype,e,{get:function(){return this._vdom?this._vdom.props[e]:this._props[e]},set:function(t){this._vdom?this.attributeChangedCallback(e,null,t):(this._props||(this._props={}),this._props[e]=t);var n=typeof t;null!=t&&"string"!==n&&"boolean"!==n&&"number"!==n||this.setAttribute(e,t)}})}),customElements.define(t,o)}(function({config:e}){const t=ye(null),[n,i]=_e(null);be(()=>{t.current&&i(t.current)},[]);const o=we(()=>{try{return JSON.parse(e)}catch(ip){return console.error("VoiceDots: JSON Parse Error",ip),{avatars:[]}}},[e]),s=o.themeColor||"#8B5CF6",r=o.widgetWidth||"300px";/* @__PURE__ */
64
64
  return ie(Mp.Provider,{value:n,children:[
65
- /* @__PURE__ */ie("style",{children:'.voicedots-widget-host .vd-modal-overlay{position:fixed!important;inset:0!important;z-index:10001!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:16px!important;pointer-events:auto!important}.voicedots-widget-host .vd-modal-backdrop{position:absolute!important;inset:0!important;background:#0006!important;-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important}.voicedots-widget-host .vd-modal-container{position:relative!important;width:100%!important;max-width:448px!important;max-height:85vh!important;background:#ffffffd9!important;-webkit-backdrop-filter:blur(20px)!important;backdrop-filter:blur(20px)!important;border-radius:24px!important;border:1px solid rgba(139,92,246,.3)!important;box-shadow:0 25px 50px -12px #7c4dff40!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}.voicedots-widget-host .vd-modal-glow{position:absolute!important;top:0!important;left:50%!important;transform:translate(-50%)!important;width:120px!important;height:2px!important;background:#7c4dff80!important;filter:blur(4px)!important}.voicedots-widget-host .vd-modal-header{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:20px 24px!important;border-bottom:1px solid rgba(139,92,246,.1)!important}.voicedots-widget-host .vd-modal-title-box{display:flex!important;align-items:center!important;gap:12px!important}.voicedots-widget-host .vd-modal-icon-wrapper{width:40px!important;height:40px!important;border-radius:50%!important;background:#7c4dff1a!important;color:#7c4dff!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all .4s ease!important}.voicedots-widget-host .vd-modal-title-box h3{margin:0!important;font-size:18px!important;font-weight:700!important;color:#1a1a1a!important}.voicedots-widget-host .vd-modal-close{background:transparent!important;border:none!important;color:#666!important;cursor:pointer!important;padding:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;transition:all .2s ease!important}.voicedots-widget-host .vd-modal-close:hover{background:#0000000d!important;color:#1a1a1a!important;transform:rotate(90deg)!important}.voicedots-widget-host .vd-modal-body{flex:1!important;overflow-y:auto!important;padding:24px!important}.voicedots-widget-host .vd-modal-loader{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:12px!important;height:160px!important}.voicedots-widget-host .vd-modal-loader p{font-size:13px!important;color:#666!important}.voicedots-widget-host .vd-form-grid{display:flex!important;flex-direction:column!important;gap:12px!important}.voicedots-widget-host .vd-field{display:flex!important;flex-direction:column!important;gap:6px!important;padding:12px!important;border-radius:12px!important;background:#7c4dff0d!important;border:1px solid transparent!important;transition:all .4s ease!important}.voicedots-widget-host .vd-field-updated{background:#7c4dff26!important;border:1px solid rgba(124,77,255,.4)!important;box-shadow:0 0 0 2px #7c4dff26!important}.voicedots-widget-host .vd-field label{font-size:10px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.05em!important;color:#7c4dff!important}.voicedots-widget-host .vd-value-text{font-size:14px!important;color:#1a1a1a!important;min-height:20px!important;font-weight:500!important}.voicedots-widget-host .vd-value-empty{opacity:.5!important;font-style:italic!important}.voicedots-widget-host .vd-modal-footer{padding:18px 24px!important;border-top:1px solid rgba(0,0,0,.05)!important}.voicedots-widget-host .vd-verify-badge{display:flex!important;align-items:center!important;gap:6px!important;font-size:12px!important;font-weight:500!important;color:#666!important;transition:all .4s ease!important}.voicedots-widget-host .vd-verify-success{color:#10b981!important}@keyframes vd-zoom-in{0%{opacity:0!important;transform:scale(.95)!important}to{opacity:1!important;transform:scale(1)!important}}.voicedots-widget-host .animate-zoom-in{animation:vd-zoom-in .2s ease-out!important}.voicedots-widget-host .vd-spin{animation:spin 1s linear infinite!important}@keyframes spin{0%{transform:rotate(0)!important}to{transform:rotate(360deg)!important}}.voicedots-widget-host .vd-pulse{animation:vd-pulse 1.2s ease-in-out infinite!important}@keyframes vd-pulse{0%,to{opacity:.5}50%{opacity:1}}.voicedots-widget-host .custom-scrollbar::-webkit-scrollbar{width:6px}.voicedots-widget-host .custom-scrollbar::-webkit-scrollbar-thumb{background:#7c4dff66;border-radius:10px}.voicedots-widget-host .custom-scrollbar::-webkit-scrollbar-track{background:transparent}.voicedots-widget-host .vd-lottie-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;aspect-ratio:1 / 1;box-sizing:border-box}.voicedots-widget-host .vd-lottie-container canvas{max-width:100%;max-height:100%;animation:vd-fade-in .5s ease-out;object-fit:contain}@keyframes vd-fade-in{0%{opacity:0}to{opacity:1}}.voicedots-widget-host .vd-widget-container{position:fixed;bottom:24px;z-index:2147483647;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:all .3s ease}.voicedots-widget-host .vd-widget-container.vd-pos-right{right:24px}.voicedots-widget-host .vd-widget-container.vd-pos-left{left:24px}.voicedots-widget-host .vd-main-card{container-type:inline-size;container-name:vd-widget;width:var(--widget-width);height:auto;background:#fff;border-radius:20px;box-shadow:0 10px 40px #0000001a;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}.voicedots-widget-host .vd-main-card::-webkit-scrollbar{width:6px}.voicedots-widget-host .vd-main-card::-webkit-scrollbar-track{background:transparent}.voicedots-widget-host .vd-main-card::-webkit-scrollbar-thumb{background-color:#0000001a;border-radius:10px}.voicedots-widget-host .vd-header{padding:14px 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,0,0,.05);flex-shrink:0}.voicedots-widget-host .vd-header h3{margin:0;font-size:16px;font-weight:600;color:#111827}.voicedots-widget-host .vd-icon-btn{background:transparent;border:none;cursor:pointer;color:#4b5563!important;display:flex;align-items:center;justify-content:center;padding:2px;border-radius:8px;transition:background .2s}.voicedots-widget-host .vd-icon-btn:hover{background:#0000000d}.voicedots-widget-host .vd-timer{color:#7c4dff;font-weight:600;border-radius:12px;font-size:13px;margin-left:12px}.voicedots-widget-host .vd-title-group{display:flex;align-items:center}.voicedots-widget-host .vd-avatar-grid{display:grid;gap:4px;padding:4px;justify-content:center;width:100%;box-sizing:border-box;flex-shrink:0}.voicedots-widget-host .vd-avatar-grid.count-1{grid-template-columns:minmax(auto,100%);max-width:280px;margin:0 auto}.voicedots-widget-host .vd-avatar-grid.count-2,.voicedots-widget-host .vd-avatar-grid.count-4,.voicedots-widget-host .vd-avatar-grid.count-3{grid-template-columns:1fr 1fr}.voicedots-widget-host .vd-avatar-grid.count-3 .vd-avatar-item:last-child{grid-column:span 2;justify-self:center;width:calc(50% - 6px)}.voicedots-widget-host .vd-avatar-item{background:#fff;border-radius:16px;padding:0 12px;text-align:center;transition:all .2s ease;border:1px solid #f0f0f0;cursor:pointer;display:flex;flex-direction:column;align-items:center;box-sizing:border-box;width:100%;min-width:0}.voicedots-widget-host .vd-avatar-item img{width:100%;height:auto;max-width:60px;object-fit:contain}.voicedots-widget-host .vd-avatar-item:hover{box-shadow:0 4px 12px #8b5cf626}.voicedots-widget-host .vd-avatar-item.active{background:#fff;box-shadow:0 0 0 2px #8b5cf6}.voicedots-widget-host .vd-avatar-item p{margin:8px 0 0;font-size:13px;font-weight:600;color:#1f2937;word-break:break-word}.voicedots-widget-host .vd-lottie-container{width:100%;max-width:160px;height:auto;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;margin:0 auto;flex-shrink:0}.voicedots-widget-host .vd-controls{padding:5px 20px;display:flex;flex-direction:column;gap:4px;width:100%;box-sizing:border-box;flex-shrink:0;margin-top:auto}.voicedots-widget-host .vd-btn-primary{width:100%;background:var(--theme-color, #8B5CF6);color:#fff!important;border:none;border-radius:100px;height:44px;font-weight:600;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;transition:opacity .2s;overflow:hidden;box-sizing:border-box;padding-left:44px;padding-right:12px}.voicedots-widget-host .vd-btn-primary:hover{opacity:.9}.voicedots-widget-host .vd-btn-icon-wrapper{position:absolute;left:8px;width:32px;height:32px;background:#fff!important;border-radius:50%;display:flex;align-items:center;justify-content:center}.voicedots-widget-host .vd-btn-icon-wrapper img{width:20px;height:20px}.voicedots-widget-host .vd-sliding{animation:vd-slide-right 1.5s infinite alternate ease-in-out}@keyframes vd-slide-right{0%{left:8px}to{left:calc(100% - 40px)}}.voicedots-widget-host .vd-active-controls{display:flex;gap:5px;width:100%;box-sizing:border-box}.voicedots-widget-host .vd-mic-btn{width:48px;height:40px;border-radius:50%;background:#fff;border:1px solid #E5E7EB;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.voicedots-widget-host .vd-end-btn{flex-grow:1;height:40px;border-radius:100px;background:#ef4444;color:#fff;border:none;font-weight:600;font-size:14px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.voicedots-widget-host .vd-watermark{display:block;text-align:center;font-size:13px;font-weight:500;color:#1201013d;text-decoration:none;margin-top:0;margin-bottom:0;opacity:5000;transition:opacity .2s}.voicedots-widget-host .vd-watermark:hover{opacity:1;text-decoration:underline}.voicedots-widget-host .vd-pill{display:flex;align-items:center;gap:10px;padding:6px 16px 6px 6px;background:#fff;border-radius:100px;border:1px solid rgba(139,92,246,.1);box-shadow:0 4px 12px #0000001a;cursor:pointer;transition:transform .2s,box-shadow .2s;max-width:calc(100vw - 48px);box-sizing:border-box}.voicedots-widget-host .vd-pill:hover{transform:translateY(-2px);box-shadow:0 6px 16px #8b5cf626}.voicedots-widget-host .vd-pill-icon-container{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#fff;box-shadow:0 2px 8px #0000000d;flex-shrink:0;position:relative;overflow:visible;z-index:2}.voicedots-widget-host .vd-pill-icon-container.pulse{background:red;animation:vd-container-pulse 2s infinite}.voicedots-widget-host .vd-pill-icon-container.pulse:before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--theme-color, #8B5CF6);animation:vd-ring-pulse 2s infinite ease-out;z-index:-1}@keyframes vd-ring-pulse{0%{transform:scale(1);opacity:.8}to{transform:scale(1.8);opacity:0}}.voicedots-widget-host .vd-pill-icon-container.pulse:after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--theme-color, #8B5CF6);animation:vd-ring-pulse 2s infinite ease-out 1s;z-index:-1}.voicedots-widget-host .vd-pill-icon{width:28px;height:28px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;position:relative;border:1px solid rgba(0,0,0,.05)}.voicedots-widget-host .vd-pill-logo{width:20px;height:20px;object-fit:contain}.voicedots-widget-host .vd-pill-text{font-size:16px;font-weight:700;color:#1f2937;letter-spacing:-.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voicedots-widget-host CSS .vd-pill-wrapper{position:relative;display:inline-flex;align-items:center}.voicedots-widget-host .vd-talk-prompt{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%);background:#fffc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#1e293b;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:600;white-space:nowrap;border:1px solid rgba(255,255,255,.4);box-shadow:0 4px 12px #0000001a;pointer-events:none;z-index:10;animation:slideUpFloat 2s ease-out forwards,floating 3s ease-in-out infinite 2s}.voicedots-widget-host .vd-talk-prompt:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:6px;border-style:solid;border-color:rgba(255,255,255,.8) transparent transparent transparent}@keyframes slideUpFloat{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@keyframes floating{0%{transform:translate(-50%)}50%{transform:translate(-50%,-4px)}to{transform:translate(-50%)}}@container vd-widget (max-width: 280px){.voicedots-widget-host .vd-header{padding:14px 18px}.voicedots-widget-host .vd-header h3{font-size:14px}.voicedots-widget-host .vd-avatar-grid{gap:4px;padding:0 8px}.voicedots-widget-host .vd-avatar-item{padding:10px 8px 12px}.voicedots-widget-host .vd-avatar-item p{font-size:12px;margin-top:6px}.voicedots-widget-host .vd-controls{padding:5px 20px 5px 16px}.voicedots-widget-host .vd-btn-primary{font-size:14px}}@container vd-widget (max-width: 210px){.voicedots-widget-host .vd-header{padding:14px 18px}.voicedots-widget-host .vd-header h3{font-size:13px}.voicedots-widget-host .vd-avatar-grid{gap:4px;padding:0 8px}.voicedots-widget-host .vd-avatar-item{padding:8px 6px;border-radius:12px}.voicedots-widget-host .vd-avatar-item p{font-size:11px;margin-top:4px}.voicedots-widget-host .vd-controls{padding:5px 10px}.voicedots-widget-host .vd-btn-primary{height:40px;font-size:13px;padding-left:36px}.voicedots-widget-host .vd-btn-icon-wrapper{width:26px;height:26px;left:6px}.voicedots-widget-host .vd-btn-icon-wrapper img{width:16px;height:16px}.voicedots-widget-host .vd-watermark{font-size:11px}}@media(max-width:480px){.voicedots-widget-host .vd-widget-container{bottom:16px}.voicedots-widget-host .vd-widget-container.vd-pos-right{right:16px}.voicedots-widget-host .vd-widget-container.vd-pos-left{left:16px}.voicedots-widget-host .vd-main-card{width:calc(100vw - 32px);max-height:calc(100vh - 54px);max-width:none}.voicedots-widget-host .vd-pill{max-width:calc(100vw - 32px)}}@media(max-height:550px){.voicedots-widget-host .vd-avatar-grid{padding:8px}.voicedots-widget-host .vd-lottie-container{max-width:120px}.voicedots-widget-host .vd-controls{padding:5px 16px}}'}),
65
+ /* @__PURE__ */ie("style",{children:'.voicedots-widget-host .vd-modal-overlay{position:fixed!important;inset:0!important;z-index:10001!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:16px!important;pointer-events:auto!important}.voicedots-widget-host .vd-modal-backdrop{position:absolute!important;inset:0!important;background:#0006!important;-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important}.voicedots-widget-host .vd-modal-container{position:relative!important;width:100%!important;max-width:448px!important;max-height:85vh!important;background:#ffffffd9!important;-webkit-backdrop-filter:blur(20px)!important;backdrop-filter:blur(20px)!important;border-radius:24px!important;border:1px solid rgba(139,92,246,.3)!important;box-shadow:0 25px 50px -12px #7c4dff40!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}.voicedots-widget-host .vd-modal-glow{position:absolute!important;top:0!important;left:50%!important;transform:translate(-50%)!important;width:120px!important;height:2px!important;background:#7c4dff80!important;filter:blur(4px)!important}.voicedots-widget-host .vd-modal-header{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:20px 24px!important;border-bottom:1px solid rgba(139,92,246,.1)!important}.voicedots-widget-host .vd-modal-title-box{display:flex!important;align-items:center!important;gap:12px!important}.voicedots-widget-host .vd-modal-icon-wrapper{width:40px!important;height:40px!important;border-radius:50%!important;background:#7c4dff1a!important;color:#7c4dff!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all .4s ease!important}.voicedots-widget-host .vd-modal-title-box h3{margin:0!important;font-size:18px!important;font-weight:700!important;color:#1a1a1a!important}.voicedots-widget-host .vd-modal-close{background:transparent!important;border:none!important;color:#666!important;cursor:pointer!important;padding:8px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;transition:all .2s ease!important}.voicedots-widget-host .vd-modal-close:hover{background:#0000000d!important;color:#1a1a1a!important;transform:rotate(90deg)!important}.voicedots-widget-host .vd-modal-body{flex:1!important;overflow-y:auto!important;padding:24px!important}.voicedots-widget-host .vd-modal-loader{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:12px!important;height:160px!important}.voicedots-widget-host .vd-modal-loader p{font-size:13px!important;color:#666!important}.voicedots-widget-host .vd-form-grid{display:flex!important;flex-direction:column!important;gap:12px!important}.voicedots-widget-host .vd-field{display:flex!important;flex-direction:column!important;gap:6px!important;padding:12px!important;border-radius:12px!important;background:#7c4dff0d!important;border:1px solid transparent!important;transition:all .4s ease!important}.voicedots-widget-host .vd-field-updated{background:#7c4dff26!important;border:1px solid rgba(124,77,255,.4)!important;box-shadow:0 0 0 2px #7c4dff26!important}.voicedots-widget-host .vd-field label{font-size:10px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.05em!important;color:#7c4dff!important}.voicedots-widget-host .vd-value-text{font-size:14px!important;color:#1a1a1a!important;min-height:20px!important;font-weight:500!important}.voicedots-widget-host .vd-value-empty{opacity:.5!important;font-style:italic!important}.voicedots-widget-host .vd-modal-footer{padding:18px 24px!important;border-top:1px solid rgba(0,0,0,.05)!important}.voicedots-widget-host .vd-verify-badge{display:flex!important;align-items:center!important;gap:6px!important;font-size:12px!important;font-weight:500!important;color:#666!important;transition:all .4s ease!important}.voicedots-widget-host .vd-verify-success{color:#10b981!important}@keyframes vd-zoom-in{0%{opacity:0!important;transform:scale(.95)!important}to{opacity:1!important;transform:scale(1)!important}}.voicedots-widget-host .animate-zoom-in{animation:vd-zoom-in .2s ease-out!important}.voicedots-widget-host .vd-spin{animation:spin 1s linear infinite!important}@keyframes spin{0%{transform:rotate(0)!important}to{transform:rotate(360deg)!important}}.voicedots-widget-host .vd-pulse{animation:vd-pulse 1.2s ease-in-out infinite!important}@keyframes vd-pulse{0%,to{opacity:.5}50%{opacity:1}}.voicedots-widget-host .custom-scrollbar::-webkit-scrollbar{width:6px}.voicedots-widget-host .custom-scrollbar::-webkit-scrollbar-thumb{background:#7c4dff66;border-radius:10px}.voicedots-widget-host .custom-scrollbar::-webkit-scrollbar-track{background:transparent}.voicedots-widget-host .vd-lottie-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;aspect-ratio:1 / 1;box-sizing:border-box}.voicedots-widget-host .vd-lottie-container canvas{max-width:100%;max-height:100%;animation:vd-fade-in .5s ease-out;object-fit:contain}@keyframes vd-fade-in{0%{opacity:0}to{opacity:1}}.voicedots-widget-host .vd-widget-container{position:fixed;bottom:24px;z-index:2147483647;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:all .3s ease}.voicedots-widget-host .vd-widget-container.vd-pos-right{right:24px}.voicedots-widget-host .vd-widget-container.vd-pos-left{left:24px}.voicedots-widget-host .vd-main-card{container-type:inline-size;container-name:vd-widget;width:var(--widget-width, 300px);height:auto;background:#fff;border-radius:20px;box-shadow:0 10px 40px #0000001a;overflow:hidden;display:flex;flex-direction:column}.voicedots-widget-host .vd-main-card::-webkit-scrollbar{width:6px}.voicedots-widget-host .vd-main-card::-webkit-scrollbar-track{background:transparent}.voicedots-widget-host .vd-main-card::-webkit-scrollbar-thumb{background-color:#0000001a;border-radius:10px}.voicedots-widget-host .vd-header{padding:14px 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,0,0,.05);flex-shrink:0}.voicedots-widget-host .vd-header h3{margin:0;font-size:16px;font-weight:600;color:#111827}.voicedots-widget-host .vd-icon-btn{background:transparent;border:none;cursor:pointer;color:#4b5563!important;display:flex;align-items:center;justify-content:center;padding:2px;border-radius:8px;transition:background .2s}.voicedots-widget-host .vd-icon-btn:hover{background:#0000000d}.voicedots-widget-host .vd-timer{color:#7c4dff;font-weight:600;border-radius:12px;font-size:13px;margin-left:12px}.voicedots-widget-host .vd-title-group{display:flex;align-items:center}.voicedots-widget-host .vd-avatar-grid{display:grid;gap:4px;padding:4px;justify-content:center;width:100%;box-sizing:border-box;flex-shrink:0}.voicedots-widget-host .vd-avatar-grid.count-1{grid-template-columns:minmax(auto,100%);max-width:280px;margin:0 auto}.voicedots-widget-host .vd-avatar-grid.count-2,.voicedots-widget-host .vd-avatar-grid.count-4,.voicedots-widget-host .vd-avatar-grid.count-3{grid-template-columns:1fr 1fr}.voicedots-widget-host .vd-avatar-grid.count-3 .vd-avatar-item:last-child{grid-column:span 2;justify-self:center;width:calc(50% - 6px)}.voicedots-widget-host .vd-avatar-item{background:#fff;border-radius:16px;padding:0 12px;text-align:center;transition:all .2s ease;border:1px solid #f0f0f0;cursor:pointer;display:flex;flex-direction:column;align-items:center;box-sizing:border-box;width:100%;min-width:0}.voicedots-widget-host .vd-avatar-item img{width:100%;height:auto;max-width:60px;object-fit:contain}.voicedots-widget-host .vd-avatar-item:hover{box-shadow:0 4px 12px #8b5cf626}.voicedots-widget-host .vd-avatar-item.active{background:#fff;box-shadow:0 0 0 2px #8b5cf6}.voicedots-widget-host .vd-avatar-item p{margin:8px 0 0;font-size:13px;font-weight:600;color:#1f2937;word-break:break-word;line-height:1}.voicedots-widget-host .vd-lottie-container{width:100%;max-width:160px;height:auto;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;margin:0 auto;flex-shrink:0}.voicedots-widget-host .vd-controls{padding:5px 20px;display:flex;flex-direction:column;gap:4px;width:100%;box-sizing:border-box;flex-shrink:0;margin-top:auto}.voicedots-widget-host .vd-btn-primary{width:100%;background:var(--theme-color, #8B5CF6);color:#fff!important;border:none;border-radius:100px;height:44px;font-weight:600;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;transition:opacity .2s;overflow:hidden;box-sizing:border-box;padding-left:44px;padding-right:12px}.voicedots-widget-host .vd-btn-primary:hover{opacity:.9}.voicedots-widget-host .vd-btn-icon-wrapper{position:absolute;left:8px;width:32px;height:32px;background:#fff!important;border-radius:50%;display:flex;align-items:center;justify-content:center}.voicedots-widget-host .vd-btn-icon-wrapper img{width:20px;height:20px}.voicedots-widget-host .vd-sliding{animation:vd-slide-right 1.5s infinite alternate ease-in-out}@keyframes vd-slide-right{0%{left:8px}to{left:calc(100% - 40px)}}.voicedots-widget-host .vd-active-controls{display:flex;gap:5px;width:100%;box-sizing:border-box}.voicedots-widget-host .vd-mic-btn{width:48px;height:40px;border-radius:50%;background:#fff;border:1px solid #E5E7EB;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.voicedots-widget-host .vd-end-btn{flex-grow:1;height:40px;border-radius:100px;background:#ef4444;color:#fff;border:none;font-weight:600;font-size:14px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.voicedots-widget-host .vd-watermark{display:block;text-align:center;font-size:13px;font-weight:500;color:#1201013d;text-decoration:none;margin-top:0;margin-bottom:0;opacity:5000;transition:opacity .2s}.voicedots-widget-host .vd-watermark:hover{opacity:1;text-decoration:underline}.voicedots-widget-host .vd-pill{display:flex;align-items:center;gap:10px;padding:6px 16px 6px 6px;background:#fff;border-radius:100px;border:1px solid rgba(139,92,246,.1);box-shadow:0 4px 12px #0000001a;cursor:pointer;transition:transform .2s,box-shadow .2s;max-width:calc(100vw - 48px);box-sizing:border-box}.voicedots-widget-host .vd-pill:hover{transform:translateY(-2px);box-shadow:0 6px 16px #8b5cf626}.voicedots-widget-host .vd-pill-icon-container{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#fff;box-shadow:0 2px 8px #0000000d;flex-shrink:0;position:relative;overflow:visible;z-index:2}.voicedots-widget-host .vd-pill-icon-container.pulse{background:red;animation:vd-container-pulse 2s infinite}.voicedots-widget-host .vd-pill-icon-container.pulse:before{content:"";position:absolute;inset:0;border-radius:50%;background:var(--theme-color, #8B5CF6);animation:vd-ring-pulse 2s infinite ease-out;z-index:-1}@keyframes vd-ring-pulse{0%{transform:scale(1);opacity:.8}to{transform:scale(1.8);opacity:0}}.voicedots-widget-host .vd-pill-icon-container.pulse:after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--theme-color, #8B5CF6);animation:vd-ring-pulse 2s infinite ease-out 1s;z-index:-1}.voicedots-widget-host .vd-pill-icon{width:28px;height:28px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;position:relative;border:1px solid rgba(0,0,0,.05)}.voicedots-widget-host .vd-pill-logo{width:20px;height:20px;object-fit:contain}.voicedots-widget-host .vd-pill-text{font-size:16px;font-weight:700;color:#1f2937;letter-spacing:-.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voicedots-widget-host CSS .vd-pill-wrapper{position:relative;display:inline-flex;align-items:center}.voicedots-widget-host .vd-talk-prompt{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%);background:#fffc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#1e293b;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:600;white-space:nowrap;border:1px solid rgba(255,255,255,.4);box-shadow:0 4px 12px #0000001a;pointer-events:none;z-index:10;animation:slideUpFloat 2s ease-out forwards,floating 3s ease-in-out infinite 2s}.voicedots-widget-host .vd-talk-prompt:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:6px;border-style:solid;border-color:rgba(255,255,255,.8) transparent transparent transparent}@keyframes slideUpFloat{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@keyframes floating{0%{transform:translate(-50%)}50%{transform:translate(-50%,-4px)}to{transform:translate(-50%)}}@container vd-widget (max-width: 280px){.voicedots-widget-host .vd-header{padding:14px 18px}.voicedots-widget-host .vd-header h3{font-size:14px}.voicedots-widget-host .vd-avatar-grid{gap:4px;padding:0 8px}.voicedots-widget-host .vd-avatar-item{padding:10px 8px 12px}.voicedots-widget-host .vd-avatar-item p{font-size:12px;margin-top:6px}.voicedots-widget-host .vd-controls{padding:5px 20px 5px 16px}.voicedots-widget-host .vd-btn-primary{font-size:14px}}@container vd-widget (max-width: 210px){.voicedots-widget-host .vd-header{padding:14px 18px}.voicedots-widget-host .vd-header h3{font-size:13px}.voicedots-widget-host .vd-avatar-grid{gap:4px;padding:0 8px}.voicedots-widget-host .vd-avatar-item{padding:8px 6px;border-radius:12px}.voicedots-widget-host .vd-avatar-item p{font-size:11px;margin-top:4px}.voicedots-widget-host .vd-controls{padding:5px 10px}.voicedots-widget-host .vd-btn-primary{height:40px;font-size:13px;padding-left:36px}.voicedots-widget-host .vd-btn-icon-wrapper{width:26px;height:26px;left:6px}.voicedots-widget-host .vd-btn-icon-wrapper img{width:16px;height:16px}.voicedots-widget-host .vd-watermark{font-size:11px}}@media(max-width:480px){.voicedots-widget-host .vd-widget-container{bottom:16px}.voicedots-widget-host .vd-widget-container.vd-pos-right{right:16px}.voicedots-widget-host .vd-widget-container.vd-pos-left{left:16px}.voicedots-widget-host .vd-main-card{width:50vw;max-width:50vw;max-height:calc(100vh - 54px)}.voicedots-widget-host .vd-pill{max-width:calc(100vw - 32px)}}@media(max-height:550px){.voicedots-widget-host .vd-avatar-grid{padding:8px}.voicedots-widget-host .vd-lottie-container{max-width:120px}.voicedots-widget-host .vd-controls{padding:5px 16px}}'}),
66
66
  /* @__PURE__ */ie("div",{className:"voicedots-widget-host",style:{"--theme-color":s,"--widget-width":r},children:[
67
67
  /* @__PURE__ */ie(Ap,{title:o.title,agentId:o.agentId,avatars:o.avatars,logo:o.logo,pos:o.pos||"right",mini:o.minimized||!1,msg:o.pillMessage||""}),
68
68
  /* @__PURE__ */ie("div",{className:"vd-portal-host",ref:t})]})]})},"voicedots-ai",["config"],{shadow:!0});