@ihoomanai/chat-widget 2.2.0 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- const e={serverUrl:"https://api.ihooman.ai",theme:"light",position:"bottom-right",title:"Chat Support",subtitle:"We typically reply within minutes",welcomeMessage:"Hi there! 👋 How can we help you today?",placeholder:"Type a message...",primaryColor:"#00aeff",gradientFrom:"#00aeff",gradientTo:"#0066ff",showTimestamps:!0,showTypingIndicator:!0,enableSounds:!0,enableFileUpload:!0,startOpen:!1,persistSession:!0,zIndex:9999,width:380,height:560,buttonSize:60,borderRadius:16,fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',avatarUrl:"",poweredBy:!0},t='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg>',n='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>',o='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="22" y1="2" x2="11" y2="13"></line><polygon points="22 2 15 22 11 13 2 9 22 2"></polygon></svg>',i='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"></path></svg>',a='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="5" y1="12" x2="19" y2="12"></line></svg>',s='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="23 4 23 10 17 10"></polyline><polyline points="1 20 1 14 7 14"></polyline><path d="M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15"></path></svg>',r='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="3" y="11" width="18" height="10" rx="2"></rect><circle cx="12" cy="5" r="2"></circle><path d="M12 7v4"></path></svg>',c='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"></path><circle cx="12" cy="7" r="4"></circle></svg>',l='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="16" y1="13" x2="8" y2="13"></line><line x1="16" y1="17" x2="8" y2="17"></line><line x1="10" y1="9" x2="8" y2="9"></line></svg>';let d={widgetId:"",...e},p={isOpen:!1,isConnected:!1,messages:[],sessionId:null,visitorId:null,unreadCount:0},u=!1,h={};const m={};let g=null,b=null,f=0;function x(e=""){return e+Math.random().toString(36).slice(2,14)+Date.now().toString(36)}function v(e){const t=document.createElement("div");return t.textContent=e,t.innerHTML}function y(e,t){const n="ihooman_chat_"+e;try{if(void 0===t){const e=localStorage.getItem(n);return e?JSON.parse(e):null}return null===t?(localStorage.removeItem(n),null):(localStorage.setItem(n,JSON.stringify(t)),t)}catch{return null}}function w(e,t){(m[e]||[]).forEach(n=>{try{n(t)}catch(t){console.error(`Error in ${e} event handler:`,t)}});const n=`on${e.charAt(0).toUpperCase()}${e.slice(1)}`,o=d[n];if("function"==typeof o)try{o(t)}catch(e){console.error(`Error in ${n} callback:`,e)}}function V(){const e=document.createElement("style");e.id="ihooman-widget-styles",e.textContent=function(){const{primaryColor:e,gradientFrom:t,gradientTo:n,fontFamily:o,borderRadius:i,zIndex:a,width:s,height:r,buttonSize:c}=d,l="dark"===d.theme,p=l?"#1a1a2e":"#ffffff",u=l?"#e4e4e7":"#1f2937",h=l?"#71717a":"#6b7280",m=l?"rgba(255,255,255,0.1)":"rgba(0,0,0,0.08)",g=l?"#16162a":"#f9fafb",b=`linear-gradient(135deg, ${t}, ${n})`,f=l?"#252542":"#f1f5f9",x=d.position?.includes("right")??!0,v=d.position?.includes("bottom")??!0;return`\n .ihooman-widget * { box-sizing: border-box; margin: 0; padding: 0; }\n .ihooman-widget { font-family: ${o}; font-size: 14px; line-height: 1.5; color: ${u}; -webkit-font-smoothing: antialiased; }\n .ihooman-toggle { position: fixed; ${x?"right: 20px":"left: 20px"}; ${v?"bottom: 20px":"top: 20px"}; width: ${c}px; height: ${c}px; border-radius: 50%; background: linear-gradient(135deg, ${t}, ${n}); border: none; cursor: pointer; z-index: ${a}; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 20px rgba(0, 174, 255, 0.35); transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); overflow: hidden; }\n .ihooman-toggle:hover { transform: scale(1.08); box-shadow: 0 6px 28px rgba(0, 174, 255, 0.45); }\n .ihooman-toggle:active { transform: scale(0.95); }\n .ihooman-toggle::before { content: ''; position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(255,255,255,0.2), transparent); border-radius: 50%; }\n .ihooman-toggle svg { width: 26px; height: 26px; color: white; transition: transform 0.3s ease, opacity 0.2s ease; position: relative; z-index: 1; }\n .ihooman-toggle.open svg.chat-icon { transform: rotate(90deg) scale(0); opacity: 0; }\n .ihooman-toggle.open svg.close-icon { transform: rotate(0) scale(1); opacity: 1; }\n .ihooman-toggle svg.close-icon { position: absolute; transform: rotate(-90deg) scale(0); opacity: 0; }\n .ihooman-pulse { position: absolute; inset: 0; border-radius: 50%; background: ${e}; animation: ihooman-pulse 2s ease-out infinite; }\n @keyframes ihooman-pulse { 0% { transform: scale(1); opacity: 0.5; } 100% { transform: scale(1.6); opacity: 0; } }\n .ihooman-toggle.open .ihooman-pulse { display: none; }\n .ihooman-badge { position: absolute; top: -4px; right: -4px; min-width: 20px; height: 20px; padding: 0 6px; background: #ef4444; color: white; font-size: 11px; font-weight: 600; border-radius: 10px; display: flex; align-items: center; justify-content: center; z-index: 2; }\n .ihooman-badge:empty { display: none; }\n .ihooman-window { position: fixed; ${x?"right: 20px":"left: 20px"}; ${v?"bottom: 90px":"top: 90px"}; width: ${s}px; height: ${r}px; max-height: calc(100vh - 120px); z-index: ${(a??9999)-1}; display: flex; flex-direction: column; opacity: 0; visibility: hidden; transform: translateY(20px) scale(0.95); transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); }\n .ihooman-window.open { opacity: 1; visibility: visible; transform: translateY(0) scale(1); }\n .ihooman-container { position: relative; width: 100%; height: 100%; display: flex; flex-direction: column; border-radius: ${i}px; overflow: hidden; }\n .ihooman-container::before { content: ''; position: absolute; inset: 0; background: ${p}; opacity: 0.97; backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-radius: ${i}px; border: 1px solid ${m}; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25); }\n .ihooman-container > * { position: relative; z-index: 1; }\n .ihooman-header { padding: 16px 20px; background: linear-gradient(135deg, ${t}, ${n}); color: white; display: flex; align-items: center; gap: 12px; flex-shrink: 0; }\n .ihooman-header-avatar { width: 42px; height: 42px; border-radius: 50%; background: rgba(255,255,255,0.2); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }\n .ihooman-header-avatar img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }\n .ihooman-header-avatar svg { width: 22px; height: 22px; }\n .ihooman-header-info { flex: 1; min-width: 0; }\n .ihooman-header-title { font-size: 16px; font-weight: 600; margin-bottom: 2px; }\n .ihooman-header-status { display: flex; align-items: center; gap: 6px; font-size: 12px; opacity: 0.9; }\n .ihooman-status-dot { width: 8px; height: 8px; border-radius: 50%; background: #22c55e; }\n .ihooman-status-dot.offline { background: #f59e0b; }\n .ihooman-header-actions { display: flex; gap: 8px; }\n .ihooman-header-btn { width: 32px; height: 32px; border-radius: 8px; background: rgba(255,255,255,0.15); border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; color: white; transition: background 0.2s; }\n .ihooman-header-btn:hover { background: rgba(255,255,255,0.25); }\n .ihooman-header-btn svg { width: 16px; height: 16px; }\n .ihooman-messages { flex: 1; overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 12px; background: ${p}; }\n .ihooman-messages::-webkit-scrollbar { width: 6px; }\n .ihooman-messages::-webkit-scrollbar-track { background: transparent; }\n .ihooman-messages::-webkit-scrollbar-thumb { background: ${m}; border-radius: 3px; }\n .ihooman-message { display: flex; flex-direction: column; max-width: 85%; animation: ihooman-fadeIn 0.3s ease; }\n @keyframes ihooman-fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }\n .ihooman-message.user { align-self: flex-end; align-items: flex-end; }\n .ihooman-message.bot { align-self: flex-start; align-items: flex-start; }\n .ihooman-message-content { padding: 12px 16px; border-radius: 16px; word-wrap: break-word; }\n .ihooman-message.user .ihooman-message-content { background: ${b}; color: white; border-bottom-right-radius: 4px; }\n .ihooman-message.bot .ihooman-message-content { background: ${f}; color: ${u}; border-bottom-left-radius: 4px; }\n .ihooman-message-content code { background: rgba(0,0,0,0.1); padding: 2px 6px; border-radius: 4px; font-family: monospace; font-size: 13px; }\n .ihooman-message-time { font-size: 11px; color: ${h}; margin-top: 4px; padding: 0 4px; }\n .ihooman-typing { display: flex; align-items: center; gap: 8px; padding: 12px 16px; background: ${f}; border-radius: 16px; border-bottom-left-radius: 4px; max-width: 80px; align-self: flex-start; }\n .ihooman-typing-dots { display: flex; gap: 4px; }\n .ihooman-typing-dot { width: 8px; height: 8px; background: ${h}; border-radius: 50%; animation: ihooman-typing 1.4s infinite; }\n .ihooman-typing-dot:nth-child(2) { animation-delay: 0.2s; }\n .ihooman-typing-dot:nth-child(3) { animation-delay: 0.4s; }\n @keyframes ihooman-typing { 0%, 60%, 100% { transform: translateY(0); opacity: 0.4; } 30% { transform: translateY(-4px); opacity: 1; } }\n .ihooman-input-area { padding: 12px 16px; background: ${p}; border-top: 1px solid ${m}; flex-shrink: 0; }\n .ihooman-input-wrapper { display: flex; align-items: flex-end; gap: 8px; background: ${g}; border: 1px solid ${m}; border-radius: 12px; padding: 8px 12px; transition: border-color 0.2s, box-shadow 0.2s; }\n .ihooman-input-wrapper:focus-within { border-color: ${e}; box-shadow: 0 0 0 3px rgba(0, 174, 255, 0.1); }\n .ihooman-input { flex: 1; border: none; background: transparent; font-family: inherit; font-size: 14px; color: ${u}; resize: none; max-height: 100px; outline: none; line-height: 1.4; }\n .ihooman-input::placeholder { color: ${h}; }\n .ihooman-input-btn { width: 36px; height: 36px; border-radius: 10px; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: all 0.2s; background: transparent; color: ${h}; }\n .ihooman-input-btn:hover { background: ${m}; color: ${u}; }\n .ihooman-input-btn.send { background: linear-gradient(135deg, ${t}, ${n}); color: white; }\n .ihooman-input-btn.send:hover { transform: scale(1.05); box-shadow: 0 4px 12px rgba(0, 174, 255, 0.3); }\n .ihooman-input-btn.send:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }\n .ihooman-input-btn svg { width: 18px; height: 18px; }\n .ihooman-file-input { display: none; }\n .ihooman-powered { text-align: center; padding: 8px; font-size: 11px; color: ${h}; background: ${p}; }\n .ihooman-powered a { color: ${e}; text-decoration: none; }\n .ihooman-error { padding: 16px; text-align: center; color: #ef4444; background: ${p}; }\n .ihooman-escalation-actions { display: flex; gap: 8px; margin-top: 12px; flex-wrap: wrap; }\n .ihooman-escalation-btn { display: inline-flex; align-items: center; gap: 6px; padding: 10px 16px; border-radius: 8px; border: none; cursor: pointer; font-family: inherit; font-size: 13px; font-weight: 500; transition: all 0.2s ease; }\n .ihooman-escalation-btn svg { width: 16px; height: 16px; }\n .ihooman-escalation-btn.primary { background: linear-gradient(135deg, ${t}, ${n}); color: white; }\n .ihooman-escalation-btn.primary:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0, 174, 255, 0.3); }\n .ihooman-escalation-btn.secondary { background: ${l?"rgba(255,255,255,0.1)":"rgba(0,0,0,0.05)"}; color: ${u}; border: 1px solid ${m}; }\n .ihooman-escalation-btn.secondary:hover { background: ${l?"rgba(255,255,255,0.15)":"rgba(0,0,0,0.08)"}; }\n .ihooman-escalation-btn:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }\n .ihooman-status-bar { padding: 10px 16px; text-align: center; font-size: 13px; display: none; }\n .ihooman-status-bar.show { display: block; }\n .ihooman-status-bar.waiting { background: #fef3c7; color: #92400e; }\n .ihooman-status-bar.connected { background: #dcfce7; color: #166534; }\n .ihooman-chat-view { display: flex; flex-direction: column; flex: 1; overflow: hidden; }\n .ihooman-chat-view.hidden { display: none; }\n .ihooman-ticket-view { display: none; flex-direction: column; padding: 20px; gap: 16px; background: ${p}; flex: 1; overflow-y: auto; }\n .ihooman-ticket-view.show { display: flex; }\n .ihooman-ticket-title { font-size: 18px; font-weight: 600; color: ${u}; margin: 0; display: flex; align-items: center; gap: 8px; }\n .ihooman-ticket-subtitle { font-size: 13px; color: ${h}; margin: 0; }\n .ihooman-ticket-input { padding: 12px 14px; border: 1px solid ${m}; border-radius: 10px; font-size: 14px; font-family: inherit; background: ${g}; color: ${u}; outline: none; transition: border-color 0.2s; }\n .ihooman-ticket-input:focus { border-color: ${e}; }\n .ihooman-ticket-input::placeholder { color: ${h}; }\n .ihooman-ticket-textarea { min-height: 100px; resize: vertical; }\n .ihooman-ticket-submit { padding: 14px; background: linear-gradient(135deg, ${t}, ${n}); color: white; border: none; border-radius: 10px; font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.2s; }\n .ihooman-ticket-submit:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0, 174, 255, 0.3); }\n .ihooman-ticket-submit:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }\n .ihooman-ticket-back { padding: 10px; background: transparent; color: ${h}; border: 1px solid ${m}; border-radius: 10px; font-size: 13px; cursor: pointer; transition: all 0.2s; }\n .ihooman-ticket-back:hover { background: ${l?"rgba(255,255,255,0.05)":"rgba(0,0,0,0.03)"}; }\n .ihooman-action-buttons { display: flex; gap: 8px; padding: 0 16px 12px; }\n .ihooman-action-btn { flex: 1; padding: 10px; border: none; border-radius: 8px; font-size: 13px; font-weight: 500; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 6px; transition: all 0.2s; }\n .ihooman-action-btn svg { width: 16px; height: 16px; }\n .ihooman-action-btn.ticket { background: #6366f1; color: white; }\n .ihooman-action-btn.ticket:hover { background: #4f46e5; }\n .ihooman-action-btn.live { background: #10b981; color: white; }\n .ihooman-action-btn.live:hover { background: #059669; }\n .ihooman-action-btn:disabled { opacity: 0.5; cursor: not-allowed; }\n @media (max-width: 480px) { .ihooman-window { width: calc(100vw - 20px); height: calc(100vh - 100px); left: 10px; right: 10px; bottom: 80px; max-height: none; } .ihooman-toggle { ${x?"right: 16px":"left: 16px"}; bottom: 16px; } }\n `}(),document.head.appendChild(e);const c=document.createElement("div");c.className="ihooman-widget",c.innerHTML=`\n <button class="ihooman-toggle" aria-label="Open chat">\n <span class="ihooman-pulse"></span>\n <span class="ihooman-badge"></span>\n <span class="chat-icon">${t}</span>\n <span class="close-icon">${n}</span>\n </button>\n <div class="ihooman-window" role="dialog" aria-label="Chat window">\n <div class="ihooman-container">\n <div class="ihooman-header">\n <div class="ihooman-header-avatar">${d.avatarUrl?`<img src="${v(d.avatarUrl)}" alt="Support">`:r}</div>\n <div class="ihooman-header-info">\n <div class="ihooman-header-title">${v(d.title||"Chat Support")}</div>\n <div class="ihooman-header-status"><span class="ihooman-status-dot"></span><span class="ihooman-status-text">Online</span></div>\n </div>\n <div class="ihooman-header-actions">\n <button class="ihooman-header-btn" data-action="refresh" title="New conversation">${s}</button>\n <button class="ihooman-header-btn" data-action="minimize" title="Minimize">${a}</button>\n </div>\n </div>\n \n \x3c!-- Chat View --\x3e\n <div class="ihooman-chat-view">\n <div class="ihooman-status-bar"></div>\n <div class="ihooman-messages" role="log" aria-live="polite"></div>\n <div class="ihooman-action-buttons">\n <button class="ihooman-action-btn ticket" data-action="show-ticket">\n <svg viewBox="0 0 24 24" fill="currentColor"><path d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-5 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"/></svg>\n Submit Ticket\n </button>\n <button class="ihooman-action-btn live" data-action="live-agent">\n <svg viewBox="0 0 24 24" fill="currentColor"><path d="M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"/></svg>\n Live Agent\n </button>\n </div>\n <div class="ihooman-input-area">\n <div class="ihooman-input-wrapper">\n ${d.enableFileUpload?`<button class="ihooman-input-btn attach" title="Attach file">${i}</button><input type="file" class="ihooman-file-input">`:""}\n <textarea class="ihooman-input" placeholder="${v(d.placeholder||"Type a message...")}" rows="1" aria-label="Message input"></textarea>\n <button class="ihooman-input-btn send" title="Send message" disabled>${o}</button>\n </div>\n </div>\n </div>\n \n \x3c!-- Ticket Form View --\x3e\n <div class="ihooman-ticket-view">\n <h4 class="ihooman-ticket-title">📝 Submit a Ticket</h4>\n <p class="ihooman-ticket-subtitle">We'll get back to you via email</p>\n <input class="ihooman-ticket-input" id="ihooman-ticket-name" placeholder="Your name" required>\n <input class="ihooman-ticket-input" id="ihooman-ticket-email" type="email" placeholder="Your email" required>\n <textarea class="ihooman-ticket-input ihooman-ticket-textarea" id="ihooman-ticket-issue" placeholder="Describe your issue..."></textarea>\n <button class="ihooman-ticket-submit" id="ihooman-ticket-submit">Submit Ticket</button>\n <button class="ihooman-ticket-back" id="ihooman-ticket-back">← Back to Chat</button>\n </div>\n \n ${d.poweredBy?'<div class="ihooman-powered">Powered by <a href="https://ihooman.ai" target="_blank" rel="noopener">Ihooman AI</a></div>':""}\n </div>\n </div>\n `,document.body.appendChild(c),h={widget:c,toggle:c.querySelector(".ihooman-toggle"),badge:c.querySelector(".ihooman-badge"),window:c.querySelector(".ihooman-window"),chatView:c.querySelector(".ihooman-chat-view"),ticketView:c.querySelector(".ihooman-ticket-view"),messages:c.querySelector(".ihooman-messages"),input:c.querySelector(".ihooman-input"),sendBtn:c.querySelector(".ihooman-input-btn.send"),attachBtn:c.querySelector(".ihooman-input-btn.attach"),fileInput:c.querySelector(".ihooman-file-input"),statusDot:c.querySelector(".ihooman-status-dot"),statusText:c.querySelector(".ihooman-status-text"),statusBar:c.querySelector(".ihooman-status-bar"),ticketName:c.querySelector("#ihooman-ticket-name"),ticketEmail:c.querySelector("#ihooman-ticket-email"),ticketIssue:c.querySelector("#ihooman-ticket-issue"),ticketSubmitBtn:c.querySelector("#ihooman-ticket-submit"),ticketBackBtn:c.querySelector("#ihooman-ticket-back")},function(){if(!h.toggle||!h.sendBtn||!h.input)return;h.toggle.addEventListener("click",P),h.sendBtn.addEventListener("click",U),h.input.addEventListener("input",()=>{h.sendBtn&&(h.sendBtn.disabled=!h.input?.value.trim()),h.input&&(h.input.style.height="auto",h.input.style.height=Math.min(h.input.scrollHeight,100)+"px")}),h.input.addEventListener("keydown",e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),h.sendBtn?.disabled||U())}),h.attachBtn&&h.fileInput&&(h.attachBtn.addEventListener("click",()=>h.fileInput?.click()),h.fileInput.addEventListener("change",q));h.widget?.querySelector('[data-action="refresh"]')?.addEventListener("click",W),h.widget?.querySelector('[data-action="minimize"]')?.addEventListener("click",H),h.widget?.querySelector('[data-action="show-ticket"]')?.addEventListener("click",S),h.widget?.querySelector('[data-action="live-agent"]')?.addEventListener("click",C),h.ticketSubmitBtn&&h.ticketSubmitBtn.addEventListener("click",_);h.ticketBackBtn&&h.ticketBackBtn.addEventListener("click",()=>$("chat"))}()}function k(e,t="bot",n={}){const o={id:x("msg_"),content:e,sender:t,timestamp:new Date,metadata:n};if(p.messages.push(o),!h.messages)return o;const i=document.createElement("div");i.className=`ihooman-message ${t}`;const a="bot"===t&&!0===n?.escalation_offered;let s="";var r,u;if(a&&(s=`\n <div class="ihooman-escalation-actions">\n <button class="ihooman-escalation-btn primary" data-action="live-agent">\n ${c}\n <span>Talk to Agent</span>\n </button>\n <button class="ihooman-escalation-btn secondary" data-action="create-ticket">\n ${l}\n <span>Create Ticket</span>\n </button>\n </div>\n `),i.innerHTML=`\n <div class="ihooman-message-content">${u=e,u?v(u).replace(/\*\*(.*?)\*\*/g,"<strong>$1</strong>").replace(/\*(.*?)\*/g,"<em>$1</em>").replace(/`(.*?)`/g,"<code>$1</code>").replace(/\n/g,"<br>"):""}</div>\n ${s}\n ${d.showTimestamps?`<div class="ihooman-message-time">${r=o.timestamp,new Date(r).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}</div>`:""}\n `,a){const e=i.querySelector('[data-action="live-agent"]'),t=i.querySelector('[data-action="create-ticket"]');e&&e.addEventListener("click",()=>A("live-agent")),t&&t.addEventListener("click",()=>A("create-ticket"))}const m=h.messages.querySelector(".ihooman-typing");return m&&m.remove(),h.messages.appendChild(i),h.messages.scrollTop=h.messages.scrollHeight,"bot"!==t||p.isOpen||(p.unreadCount++,h.badge&&(h.badge.textContent=String(p.unreadCount)),d.enableSounds&&function(){try{const e=new Audio("data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4Ljc2LjEwMAAAAAAAAAAAAAAA//tQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWGluZwAAAA8AAAACAAABhgC7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7//////////////////////////////////////////////////////////////////8AAAAATGF2YzU4LjEzAAAAAAAAAAAAAAAAJAAAAAAAAAAAAYYNBrP/AAAAAAAAAAAAAAAAAAAAAP/7UMQAA8AAAaQAAAAgAAA0gAAABExBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tQxBKDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU=");e.volume=.3,e.play().catch(()=>{})}catch{}}()),w("message",o),o}function A(e){document.querySelectorAll(".ihooman-escalation-btn").forEach(e=>e.disabled=!0),"live-agent"===e?C():"create-ticket"===e&&S()}function $(e){h.chatView&&h.chatView.classList.toggle("hidden","chat"!==e),h.ticketView&&h.ticketView.classList.toggle("show","ticket"===e)}function S(){$("ticket"),setTimeout(()=>h.ticketName?.focus(),100)}function I(e,t){h.statusBar&&("hidden"!==e?(h.statusBar.classList.add("show"),h.statusBar.classList.remove("waiting","connected"),h.statusBar.classList.add(e),t&&(h.statusBar.textContent=t)):h.statusBar.classList.remove("show"))}async function _(){const e=h.ticketName?.value.trim(),t=h.ticketEmail?.value.trim(),n=h.ticketIssue?.value.trim();if(e&&t){h.ticketSubmitBtn&&(h.ticketSubmitBtn.disabled=!0,h.ticketSubmitBtn.textContent="Submitting...");try{const o=await fetch(`${d.serverUrl}/api/v1/public/submit-ticket`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({session_id:p.sessionId,user_name:e,user_email:t,issue:n||"No description provided",escalation_type:"ticket",widget_id:d.widgetId})}),i=await o.json();h.ticketName&&(h.ticketName.value=""),h.ticketEmail&&(h.ticketEmail.value=""),h.ticketIssue&&(h.ticketIssue.value=""),$("chat");k(`✅ Ticket submitted! We'll contact you at ${t}. Reference: #${i.ticket_id?i.ticket_id.slice(0,8):"submitted"}`,"bot",{is_system_message:!0})}catch(e){console.error("Error submitting ticket:",e),k("❌ Error submitting ticket. Please try again.","bot",{is_system_message:!0})}h.ticketSubmitBtn&&(h.ticketSubmitBtn.disabled=!1,h.ticketSubmitBtn.textContent="Submit Ticket")}else alert("Please fill in your name and email")}async function C(){if(!p.sessionId)return void k("Please send a message first to start a conversation.","bot",{is_system_message:!0});const e=h.widget?.querySelector('[data-action="live-agent"]');e&&(e.disabled=!0,e.innerHTML='<svg viewBox="0 0 24 24" fill="currentColor"><path d="M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"/></svg> Connecting...');try{const e=await fetch(`${d.serverUrl}/api/v1/public/live-agent`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({session_id:p.sessionId,visitor_id:p.visitorId,widget_id:d.widgetId})}),t=await e.json();u=!0,t.position_in_queue&&t.position_in_queue>1?I("waiting",`⏳ Waiting for agent (Position: #${t.position_in_queue})`):I("connected","🟢 Connected to live support");const n=h.widget?.querySelector(".ihooman-action-buttons");n&&(n.style.display="none"),function(){if(B)return;B=setInterval(async()=>{if(p.sessionId&&u)try{const e=await fetch(`${d.serverUrl}/api/v1/public/transcript/${p.sessionId}`,{headers:{"Content-Type":"application/json"}});if(!e.ok)return;const t=await e.json(),n=t.messages?.length||0;if(n>T){t.messages.slice(T).forEach(e=>{"agent"===e.sender_type?k(e.content,"bot",{agent_name:"Agent"}):"ai"===e.sender_type&&e.content.includes("connected to live support")&&k(e.content,"bot",{is_system_message:!0})}),T=n}if("closed"===t.status){u=!1,z(),I("hidden"),k("This conversation has been closed. Thank you for contacting us!","bot",{is_system_message:!0});const e=h.widget?.querySelector(".ihooman-action-buttons");e&&(e.style.display="flex")}try{const e=await fetch(`${d.serverUrl}/api/v1/public/escalation-status/${p.sessionId}`);if(e.ok){const t=await e.json();t.escalated&&("in_progress"===t.ticket_status?I("connected","🟢 Connected to live agent"):"open"===t.ticket_status&&t.position_in_queue>1&&I("waiting",`⏳ Waiting for agent (Position: #${t.position_in_queue})`))}}catch{}}catch(e){console.error("Error polling for messages:",e)}else z()},3e3)}()}catch(e){console.error("Error requesting live agent:",e),k("❌ Unable to connect to live support. Please try again.","bot",{is_system_message:!0})}e&&(e.disabled=!1,e.innerHTML='<svg viewBox="0 0 24 24" fill="currentColor"><path d="M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"/></svg> Live Agent')}let B=null,T=0;function z(){B&&(clearInterval(B),B=null)}function E(){if(!d.showTypingIndicator||!h.messages)return;if(h.messages.querySelector(".ihooman-typing"))return;const e=document.createElement("div");e.className="ihooman-typing",e.innerHTML='<div class="ihooman-typing-dots"><span class="ihooman-typing-dot"></span><span class="ihooman-typing-dot"></span><span class="ihooman-typing-dot"></span></div>',h.messages.appendChild(e),h.messages.scrollTop=h.messages.scrollHeight}function L(){const e=h.messages?.querySelector(".ihooman-typing");e&&e.remove()}function U(){const e=h.input?.value.trim();e&&(h.input&&(h.input.value="",h.input.style.height="auto"),h.sendBtn&&(h.sendBtn.disabled=!0),k(e,"user"),E(),async function(e){if(g&&g.readyState===WebSocket.OPEN)return void g.send(JSON.stringify({type:"message",content:e}));try{const t=await fetch(`${d.serverUrl}/api/v1/public/chat`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({message:e,session_id:p.sessionId,visitor_id:p.visitorId,widget_id:d.widgetId})}),n=await t.json();L(),n.session_id&&(p.sessionId=n.session_id,d.persistSession&&y("session_id",p.sessionId)),n.response&&k(n.response,"bot",{sources:n.sources,confidence:n.confidence})}catch(e){L(),k("Sorry, something went wrong. Please try again.","bot"),w("error",e)}}(e))}function q(e){const t=e.target,n=t.files?.[0];if(!n)return;k(`📎 Uploading: ${n.name}...`,"user"),E();const o=new FormData;o.append("file",n),o.append("session_id",p.sessionId||""),o.append("visitor_id",p.visitorId||""),o.append("widget_id",d.widgetId),fetch(`${d.serverUrl}/api/upload`,{method:"POST",body:o}).then(e=>e.json()).then(e=>{L(),e.message&&k(e.message,"bot")}).catch(()=>{L(),k("Failed to upload file.","bot")}),t.value=""}function M(e){if(!d.serverUrl&&!e)return;let t;if(d.widgetId){const e=d.serverUrl?.replace(/^http/,"ws"),n=new URLSearchParams({widget_id:d.widgetId});p.visitorId&&n.append("visitor_id",p.visitorId),p.sessionId&&n.append("session_id",p.sessionId),t=`${e}/public/ws?${n.toString()}`}else t=e||d.serverUrl?.replace(/^http/,"ws")+"/ws";try{g=new WebSocket(t),g.onopen=()=>{p.isConnected=!0,f=0,F(!0),w("connected")},g.onclose=()=>{if(p.isConnected=!1,F(!1),w("disconnected"),f<5){f++;const t=Math.min(1e3*Math.pow(2,f),3e4);setTimeout(()=>M(e),t)}else console.warn("WebSocket reconnection failed, falling back to polling"),j()},g.onerror=e=>{console.error("WebSocket error:",e)},g.onmessage=e=>{try{const t=JSON.parse(e.data);if("connected"===t.type)t.session_id&&(p.sessionId=t.session_id,d.persistSession&&y("session_id",p.sessionId)),t.visitor_id&&(p.visitorId=t.visitor_id,d.persistSession&&y("visitor_id",p.visitorId)),t.welcome_message&&0===p.messages.length&&k(t.welcome_message,"bot");else if("message"===t.type){L();const e="user"===t.sender?"user":"bot";k(t.content,e,{confidence:t.confidence,agent_name:t.agent_name,escalation_offered:t.escalation_offered,escalated:t.escalated})}else"typing"===t.type?t.is_typing?E():L():"pong"===t.type||"error"===t.type&&(console.error("WebSocket server error:",t.message),w("error",{message:t.message}))}catch{}},function(){if(O)return;O=setInterval(()=>{g&&g.readyState===WebSocket.OPEN&&g.send(JSON.stringify({type:"ping"}))},3e4)}()}catch{console.warn("WebSocket not supported, using polling"),j()}}let O=null;function j(){b||(b=setInterval(async()=>{if(p.sessionId)try{const e=await fetch(`${d.serverUrl}/api/messages?session_id=${p.sessionId}&since=${Date.now()-5e3}&widget_id=${d.widgetId}`),t=await e.json();t.messages&&t.messages.forEach(e=>{p.messages.find(t=>t.id===e.id)||k(e.content,e.sender_type,e.metadata)})}catch{}},5e3))}function F(e){h.statusDot&&h.statusDot.classList.toggle("offline",!e),h.statusText&&(h.statusText.textContent=e?"Online":"Offline")}function N(){p.isOpen||(p.isOpen=!0,p.unreadCount=0,h.badge&&(h.badge.textContent=""),h.toggle&&h.toggle.classList.add("open"),h.window&&h.window.classList.add("open"),setTimeout(()=>h.input?.focus(),300),w("open"))}function H(){p.isOpen&&(p.isOpen=!1,h.toggle&&h.toggle.classList.remove("open"),h.window&&h.window.classList.remove("open"),w("close"))}function P(){p.isOpen?H():N()}function W(){p.sessionId=null,p.messages=[],y("session_id",null),h.messages&&(h.messages.innerHTML=""),d.welcomeMessage&&k(d.welcomeMessage,"bot")}async function D(t){if(!t.widgetId)return console.error("IhoomanChat: widgetId is required"),null;d={...e,...t},p.visitorId=y("visitor_id")||x("v_"),y("visitor_id",p.visitorId),d.persistSession&&(p.sessionId=y("session_id"));const n=d.serverUrl||"https://api.ihooman.ai",o=await async function(e,t){try{const n=await fetch(`${t}/api/widget/config?widget_id=${encodeURIComponent(e)}`);return n.ok?await n.json():{success:!1,error:(await n.json().catch(()=>({}))).error||`HTTP ${n.status}`}}catch(e){return{success:!1,error:"Unable to connect. Please check your internet connection."}}}(d.widgetId,n);let i;var a;return o.success&&o.config?(a=o.config,d.title=a.title||d.title,d.subtitle=a.subtitle||d.subtitle,d.welcomeMessage=a.welcomeMessage||d.welcomeMessage,d.placeholder=a.placeholder||d.placeholder,d.position=a.position||d.position,a.theme&&(d.primaryColor=a.theme.primaryColor||d.primaryColor,d.gradientFrom=a.theme.gradientFrom||d.gradientFrom,d.gradientTo=a.theme.gradientTo||d.gradientTo,d.fontFamily=a.theme.fontFamily||d.fontFamily,a.theme.borderRadius&&(d.borderRadius=parseInt(a.theme.borderRadius,10)||d.borderRadius)),a.behavior&&(d.startOpen=a.behavior.startOpen??d.startOpen,d.showTypingIndicator=a.behavior.showTypingIndicator??d.showTypingIndicator,d.showTimestamps=a.behavior.showTimestamps??d.showTimestamps,d.enableSounds=a.behavior.enableSounds??d.enableSounds,d.enableFileUpload=a.behavior.enableFileUpload??d.enableFileUpload,d.persistSession=a.behavior.persistSession??d.persistSession),a.branding&&(d.avatarUrl=a.branding.avatarUrl||d.avatarUrl,d.poweredBy=a.branding.poweredBy??d.poweredBy),i=o.chatEndpoint):o.error&&(console.warn("IhoomanChat: Could not fetch server config:",o.error),"Widget not authorized for this domain"===o.error&&console.error("IhoomanChat: Widget configuration error. Please contact support.")),V(),p.messages.forEach(e=>k(e.content,e.sender,e.metadata)),0===p.messages.length&&d.welcomeMessage&&k(d.welcomeMessage,"bot"),M(i),d.startOpen&&setTimeout(N,500),w("ready"),Y}const Y={init:D,open:N,close:H,toggle:P,destroy:function(){O&&(clearInterval(O),O=null),z(),g&&(g.close(),g=null),b&&(clearInterval(b),b=null),h.widget&&h.widget.remove();const e=document.getElementById("ihooman-widget-styles");e&&e.remove(),p={isOpen:!1,isConnected:!1,messages:[],sessionId:null,visitorId:null,unreadCount:0},h={},f=0},sendMessage:function(e){e.trim()&&(h.input&&(h.input.value=e),U())},setUser:function(e){e.name&&y("user_name",e.name),e.email&&y("user_email",e.email),e.metadata&&y("user_metadata",e.metadata)},clearHistory:function(){W()},on:function(e,t){m[e]||(m[e]=[]),m[e].push(t)},off:function(e,t){m[e]&&(m[e]=m[e].filter(e=>e!==t))},getState:function(){return{...p}},version:"2.0.0"},R=Y;function J(){return{...Y}}!function(){if("undefined"==typeof document)return;let e=document.currentScript;if(!e){const t=document.getElementsByTagName("script");for(let n=0;n<t.length;n++)if(t[n].src&&t[n].src.includes("ihooman")){e=t[n];break}}if(!e)return;const t=e.getAttribute("data-widget-id");if(t){const n={widgetId:t},o=e.getAttribute("data-server-url");o&&(n.serverUrl=o);const i=e.getAttribute("data-theme");"light"!==i&&"dark"!==i||(n.theme=i);const a=e.getAttribute("data-position");a&&(n.position=a);"true"===e.getAttribute("data-start-open")&&(n.startOpen=!0),"loading"===document.readyState?document.addEventListener("DOMContentLoaded",()=>D(n)):D(n)}}(),"undefined"!=typeof window&&(window.IhoomanChat=R);export{R as IhoomanChat,J as createWidgetInstance,R as default};
1
+ const e={serverUrl:"https://api.ihooman.ai",theme:"light",position:"bottom-right",title:"Chat Support",subtitle:"We typically reply within minutes",welcomeMessage:"Hi there! 👋 How can we help you today?",placeholder:"Type a message...",primaryColor:"#00aeff",gradientFrom:"#00aeff",gradientTo:"#0066ff",showTimestamps:!0,showTypingIndicator:!0,enableSounds:!0,enableFileUpload:!0,startOpen:!1,persistSession:!0,zIndex:9999,width:380,height:560,buttonSize:60,borderRadius:16,fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',avatarUrl:"",poweredBy:!0},t='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg>',n='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>',o='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="22" y1="2" x2="11" y2="13"></line><polygon points="22 2 15 22 11 13 2 9 22 2"></polygon></svg>',i='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"></path></svg>',a='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><line x1="5" y1="12" x2="19" y2="12"></line></svg>',s='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="23 4 23 10 17 10"></polyline><polyline points="1 20 1 14 7 14"></polyline><path d="M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15"></path></svg>',r='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="3" y="11" width="18" height="10" rx="2"></rect><circle cx="12" cy="5" r="2"></circle><path d="M12 7v4"></path></svg>',c='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"></path><circle cx="12" cy="7" r="4"></circle></svg>',l='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="16" y1="13" x2="8" y2="13"></line><line x1="16" y1="17" x2="8" y2="17"></line><line x1="10" y1="9" x2="8" y2="9"></line></svg>';let d={widgetId:"",...e},p={isOpen:!1,isConnected:!1,messages:[],sessionId:null,visitorId:null,unreadCount:0},u=!1,h={};const m={};let g=null,b=null,f=0;function x(e=""){return e+Math.random().toString(36).slice(2,14)+Date.now().toString(36)}function v(e){const t=document.createElement("div");return t.textContent=e,t.innerHTML}function y(e,t){const n="ihooman_chat_"+e;try{if(void 0===t){const e=localStorage.getItem(n);return e?JSON.parse(e):null}return null===t?(localStorage.removeItem(n),null):(localStorage.setItem(n,JSON.stringify(t)),t)}catch{return null}}function w(e,t){(m[e]||[]).forEach(n=>{try{n(t)}catch(t){console.error(`Error in ${e} event handler:`,t)}});const n=`on${e.charAt(0).toUpperCase()}${e.slice(1)}`,o=d[n];if("function"==typeof o)try{o(t)}catch(e){console.error(`Error in ${n} callback:`,e)}}function V(){const e=document.createElement("style");e.id="ihooman-widget-styles",e.textContent=function(){const{primaryColor:e,gradientFrom:t,gradientTo:n,fontFamily:o,borderRadius:i,zIndex:a,width:s,height:r,buttonSize:c}=d,l="dark"===d.theme,p=l?"#1a1a2e":"#ffffff",u=l?"#e4e4e7":"#1f2937",h=l?"#71717a":"#6b7280",m=l?"rgba(255,255,255,0.1)":"rgba(0,0,0,0.08)",g=l?"#16162a":"#f9fafb",b=`linear-gradient(135deg, ${t}, ${n})`,f=l?"#252542":"#f1f5f9",x=d.position?.includes("right")??!0,v=d.position?.includes("bottom")??!0;return`\n .ihooman-widget * { box-sizing: border-box; margin: 0; padding: 0; }\n .ihooman-widget { font-family: ${o}; font-size: 14px; line-height: 1.5; color: ${u}; -webkit-font-smoothing: antialiased; }\n .ihooman-toggle { position: fixed; ${x?"right: 20px":"left: 20px"}; ${v?"bottom: 20px":"top: 20px"}; width: ${c}px; height: ${c}px; border-radius: 50%; background: linear-gradient(135deg, ${t}, ${n}); border: none; cursor: pointer; z-index: ${a}; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 20px rgba(0, 174, 255, 0.35); transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); overflow: hidden; }\n .ihooman-toggle:hover { transform: scale(1.08); box-shadow: 0 6px 28px rgba(0, 174, 255, 0.45); }\n .ihooman-toggle:active { transform: scale(0.95); }\n .ihooman-toggle::before { content: ''; position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(255,255,255,0.2), transparent); border-radius: 50%; }\n .ihooman-toggle svg { width: 26px; height: 26px; color: white; transition: transform 0.3s ease, opacity 0.2s ease; position: relative; z-index: 1; }\n .ihooman-toggle.open svg.chat-icon { transform: rotate(90deg) scale(0); opacity: 0; }\n .ihooman-toggle.open svg.close-icon { transform: rotate(0) scale(1); opacity: 1; }\n .ihooman-toggle svg.close-icon { position: absolute; transform: rotate(-90deg) scale(0); opacity: 0; }\n .ihooman-pulse { position: absolute; inset: 0; border-radius: 50%; background: ${e}; animation: ihooman-pulse 2s ease-out infinite; }\n @keyframes ihooman-pulse { 0% { transform: scale(1); opacity: 0.5; } 100% { transform: scale(1.6); opacity: 0; } }\n .ihooman-toggle.open .ihooman-pulse { display: none; }\n .ihooman-badge { position: absolute; top: -4px; right: -4px; min-width: 20px; height: 20px; padding: 0 6px; background: #ef4444; color: white; font-size: 11px; font-weight: 600; border-radius: 10px; display: flex; align-items: center; justify-content: center; z-index: 2; }\n .ihooman-badge:empty { display: none; }\n .ihooman-window { position: fixed; ${x?"right: 20px":"left: 20px"}; ${v?"bottom: 90px":"top: 90px"}; width: ${s}px; height: ${r}px; max-height: calc(100vh - 120px); z-index: ${(a??9999)-1}; display: flex; flex-direction: column; opacity: 0; visibility: hidden; transform: translateY(20px) scale(0.95); transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); }\n .ihooman-window.open { opacity: 1; visibility: visible; transform: translateY(0) scale(1); }\n .ihooman-container { position: relative; width: 100%; height: 100%; display: flex; flex-direction: column; border-radius: ${i}px; overflow: hidden; }\n .ihooman-container::before { content: ''; position: absolute; inset: 0; background: ${p}; opacity: 0.97; backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-radius: ${i}px; border: 1px solid ${m}; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25); }\n .ihooman-container > * { position: relative; z-index: 1; }\n .ihooman-header { padding: 16px 20px; background: linear-gradient(135deg, ${t}, ${n}); color: white; display: flex; align-items: center; gap: 12px; flex-shrink: 0; }\n .ihooman-header-avatar { width: 42px; height: 42px; border-radius: 50%; background: rgba(255,255,255,0.2); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }\n .ihooman-header-avatar img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }\n .ihooman-header-avatar svg { width: 22px; height: 22px; }\n .ihooman-header-info { flex: 1; min-width: 0; }\n .ihooman-header-title { font-size: 16px; font-weight: 600; margin-bottom: 2px; }\n .ihooman-header-status { display: flex; align-items: center; gap: 6px; font-size: 12px; opacity: 0.9; }\n .ihooman-status-dot { width: 8px; height: 8px; border-radius: 50%; background: #22c55e; }\n .ihooman-status-dot.offline { background: #f59e0b; }\n .ihooman-header-actions { display: flex; gap: 8px; }\n .ihooman-header-btn { width: 32px; height: 32px; border-radius: 8px; background: rgba(255,255,255,0.15); border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; color: white; transition: background 0.2s; }\n .ihooman-header-btn:hover { background: rgba(255,255,255,0.25); }\n .ihooman-header-btn svg { width: 16px; height: 16px; }\n .ihooman-messages { flex: 1; overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 12px; background: ${p}; }\n .ihooman-messages::-webkit-scrollbar { width: 6px; }\n .ihooman-messages::-webkit-scrollbar-track { background: transparent; }\n .ihooman-messages::-webkit-scrollbar-thumb { background: ${m}; border-radius: 3px; }\n .ihooman-message { display: flex; flex-direction: column; max-width: 85%; animation: ihooman-fadeIn 0.3s ease; }\n @keyframes ihooman-fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }\n .ihooman-message.user { align-self: flex-end; align-items: flex-end; }\n .ihooman-message.bot { align-self: flex-start; align-items: flex-start; }\n .ihooman-message-content { padding: 12px 16px; border-radius: 16px; word-wrap: break-word; }\n .ihooman-message.user .ihooman-message-content { background: ${b}; color: white; border-bottom-right-radius: 4px; }\n .ihooman-message.bot .ihooman-message-content { background: ${f}; color: ${u}; border-bottom-left-radius: 4px; }\n .ihooman-message-content code { background: rgba(0,0,0,0.1); padding: 2px 6px; border-radius: 4px; font-family: monospace; font-size: 13px; }\n .ihooman-message-time { font-size: 11px; color: ${h}; margin-top: 4px; padding: 0 4px; }\n .ihooman-typing { display: flex; align-items: center; gap: 8px; padding: 12px 16px; background: ${f}; border-radius: 16px; border-bottom-left-radius: 4px; max-width: 80px; align-self: flex-start; }\n .ihooman-typing-dots { display: flex; gap: 4px; }\n .ihooman-typing-dot { width: 8px; height: 8px; background: ${h}; border-radius: 50%; animation: ihooman-typing 1.4s infinite; }\n .ihooman-typing-dot:nth-child(2) { animation-delay: 0.2s; }\n .ihooman-typing-dot:nth-child(3) { animation-delay: 0.4s; }\n @keyframes ihooman-typing { 0%, 60%, 100% { transform: translateY(0); opacity: 0.4; } 30% { transform: translateY(-4px); opacity: 1; } }\n .ihooman-input-area { padding: 12px 16px; background: ${p}; border-top: 1px solid ${m}; flex-shrink: 0; }\n .ihooman-input-wrapper { display: flex; align-items: flex-end; gap: 8px; background: ${g}; border: 1px solid ${m}; border-radius: 12px; padding: 8px 12px; transition: border-color 0.2s, box-shadow 0.2s; }\n .ihooman-input-wrapper:focus-within { border-color: ${e}; box-shadow: 0 0 0 3px rgba(0, 174, 255, 0.1); }\n .ihooman-input { flex: 1; border: none; background: transparent; font-family: inherit; font-size: 14px; color: ${u}; resize: none; max-height: 100px; outline: none; line-height: 1.4; }\n .ihooman-input::placeholder { color: ${h}; }\n .ihooman-input-btn { width: 36px; height: 36px; border-radius: 10px; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: all 0.2s; background: transparent; color: ${h}; }\n .ihooman-input-btn:hover { background: ${m}; color: ${u}; }\n .ihooman-input-btn.send { background: linear-gradient(135deg, ${t}, ${n}); color: white; }\n .ihooman-input-btn.send:hover { transform: scale(1.05); box-shadow: 0 4px 12px rgba(0, 174, 255, 0.3); }\n .ihooman-input-btn.send:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }\n .ihooman-input-btn svg { width: 18px; height: 18px; }\n .ihooman-file-input { display: none; }\n .ihooman-powered { text-align: center; padding: 8px; font-size: 11px; color: ${h}; background: ${p}; }\n .ihooman-powered a { color: ${e}; text-decoration: none; }\n .ihooman-error { padding: 16px; text-align: center; color: #ef4444; background: ${p}; }\n .ihooman-escalation-actions { display: flex; gap: 8px; margin-top: 12px; flex-wrap: wrap; }\n .ihooman-escalation-btn { display: inline-flex; align-items: center; gap: 6px; padding: 10px 16px; border-radius: 8px; border: none; cursor: pointer; font-family: inherit; font-size: 13px; font-weight: 500; transition: all 0.2s ease; }\n .ihooman-escalation-btn svg { width: 16px; height: 16px; }\n .ihooman-escalation-btn.primary { background: linear-gradient(135deg, ${t}, ${n}); color: white; }\n .ihooman-escalation-btn.primary:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0, 174, 255, 0.3); }\n .ihooman-escalation-btn.secondary { background: ${l?"rgba(255,255,255,0.1)":"rgba(0,0,0,0.05)"}; color: ${u}; border: 1px solid ${m}; }\n .ihooman-escalation-btn.secondary:hover { background: ${l?"rgba(255,255,255,0.15)":"rgba(0,0,0,0.08)"}; }\n .ihooman-escalation-btn:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }\n .ihooman-status-bar { padding: 10px 16px; text-align: center; font-size: 13px; display: none; }\n .ihooman-status-bar.show { display: block; }\n .ihooman-status-bar.waiting { background: #fef3c7; color: #92400e; }\n .ihooman-status-bar.connected { background: #dcfce7; color: #166534; }\n .ihooman-chat-view { display: flex; flex-direction: column; flex: 1; overflow: hidden; }\n .ihooman-chat-view.hidden { display: none; }\n .ihooman-ticket-view { display: none; flex-direction: column; padding: 20px; gap: 16px; background: ${p}; flex: 1; overflow-y: auto; }\n .ihooman-ticket-view.show { display: flex; }\n .ihooman-ticket-title { font-size: 18px; font-weight: 600; color: ${u}; margin: 0; display: flex; align-items: center; gap: 8px; }\n .ihooman-ticket-subtitle { font-size: 13px; color: ${h}; margin: 0; }\n .ihooman-ticket-input { padding: 12px 14px; border: 1px solid ${m}; border-radius: 10px; font-size: 14px; font-family: inherit; background: ${g}; color: ${u}; outline: none; transition: border-color 0.2s; }\n .ihooman-ticket-input:focus { border-color: ${e}; }\n .ihooman-ticket-input::placeholder { color: ${h}; }\n .ihooman-ticket-textarea { min-height: 100px; resize: vertical; }\n .ihooman-ticket-submit { padding: 14px; background: linear-gradient(135deg, ${t}, ${n}); color: white; border: none; border-radius: 10px; font-size: 14px; font-weight: 500; cursor: pointer; transition: all 0.2s; }\n .ihooman-ticket-submit:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0, 174, 255, 0.3); }\n .ihooman-ticket-submit:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }\n .ihooman-ticket-back { padding: 10px; background: transparent; color: ${h}; border: 1px solid ${m}; border-radius: 10px; font-size: 13px; cursor: pointer; transition: all 0.2s; }\n .ihooman-ticket-back:hover { background: ${l?"rgba(255,255,255,0.05)":"rgba(0,0,0,0.03)"}; }\n .ihooman-action-buttons { display: flex; gap: 8px; padding: 0 16px 12px; }\n .ihooman-action-btn { flex: 1; padding: 10px; border: none; border-radius: 8px; font-size: 13px; font-weight: 500; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 6px; transition: all 0.2s; }\n .ihooman-action-btn svg { width: 16px; height: 16px; }\n .ihooman-action-btn.ticket { background: #6366f1; color: white; }\n .ihooman-action-btn.ticket:hover { background: #4f46e5; }\n .ihooman-action-btn.live { background: #10b981; color: white; }\n .ihooman-action-btn.live:hover { background: #059669; }\n .ihooman-action-btn:disabled { opacity: 0.5; cursor: not-allowed; }\n @media (max-width: 480px) { .ihooman-window { width: calc(100vw - 20px); height: calc(100vh - 100px); left: 10px; right: 10px; bottom: 80px; max-height: none; } .ihooman-toggle { ${x?"right: 16px":"left: 16px"}; bottom: 16px; } }\n `}(),document.head.appendChild(e);const c=document.createElement("div");c.className="ihooman-widget",c.innerHTML=`\n <button class="ihooman-toggle" aria-label="Open chat">\n <span class="ihooman-pulse"></span>\n <span class="ihooman-badge"></span>\n <span class="chat-icon">${t}</span>\n <span class="close-icon">${n}</span>\n </button>\n <div class="ihooman-window" role="dialog" aria-label="Chat window">\n <div class="ihooman-container">\n <div class="ihooman-header">\n <div class="ihooman-header-avatar">${d.avatarUrl?`<img src="${v(d.avatarUrl)}" alt="Support">`:r}</div>\n <div class="ihooman-header-info">\n <div class="ihooman-header-title">${v(d.title||"Chat Support")}</div>\n <div class="ihooman-header-status"><span class="ihooman-status-dot"></span><span class="ihooman-status-text">Online</span></div>\n </div>\n <div class="ihooman-header-actions">\n <button class="ihooman-header-btn" data-action="refresh" title="New conversation">${s}</button>\n <button class="ihooman-header-btn" data-action="minimize" title="Minimize">${a}</button>\n </div>\n </div>\n \n \x3c!-- Chat View --\x3e\n <div class="ihooman-chat-view">\n <div class="ihooman-status-bar"></div>\n <div class="ihooman-messages" role="log" aria-live="polite"></div>\n <div class="ihooman-action-buttons">\n <button class="ihooman-action-btn ticket" data-action="show-ticket">\n <svg viewBox="0 0 24 24" fill="currentColor"><path d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-5 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"/></svg>\n Submit Ticket\n </button>\n <button class="ihooman-action-btn live" data-action="live-agent">\n <svg viewBox="0 0 24 24" fill="currentColor"><path d="M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"/></svg>\n Live Agent\n </button>\n </div>\n <div class="ihooman-input-area">\n <div class="ihooman-input-wrapper">\n ${d.enableFileUpload?`<button class="ihooman-input-btn attach" title="Attach file">${i}</button><input type="file" class="ihooman-file-input">`:""}\n <textarea class="ihooman-input" placeholder="${v(d.placeholder||"Type a message...")}" rows="1" aria-label="Message input"></textarea>\n <button class="ihooman-input-btn send" title="Send message" disabled>${o}</button>\n </div>\n </div>\n </div>\n \n \x3c!-- Ticket Form View --\x3e\n <div class="ihooman-ticket-view">\n <h4 class="ihooman-ticket-title">📝 Submit a Ticket</h4>\n <p class="ihooman-ticket-subtitle">We'll get back to you via email</p>\n <input class="ihooman-ticket-input" id="ihooman-ticket-name" placeholder="Your name" required>\n <input class="ihooman-ticket-input" id="ihooman-ticket-email" type="email" placeholder="Your email" required>\n <textarea class="ihooman-ticket-input ihooman-ticket-textarea" id="ihooman-ticket-issue" placeholder="Describe your issue..."></textarea>\n <button class="ihooman-ticket-submit" id="ihooman-ticket-submit">Submit Ticket</button>\n <button class="ihooman-ticket-back" id="ihooman-ticket-back">← Back to Chat</button>\n </div>\n \n ${d.poweredBy?'<div class="ihooman-powered">Powered by <a href="https://ihooman.ai" target="_blank" rel="noopener">Ihooman AI</a></div>':""}\n </div>\n </div>\n `,document.body.appendChild(c),h={widget:c,toggle:c.querySelector(".ihooman-toggle"),badge:c.querySelector(".ihooman-badge"),window:c.querySelector(".ihooman-window"),chatView:c.querySelector(".ihooman-chat-view"),ticketView:c.querySelector(".ihooman-ticket-view"),messages:c.querySelector(".ihooman-messages"),input:c.querySelector(".ihooman-input"),sendBtn:c.querySelector(".ihooman-input-btn.send"),attachBtn:c.querySelector(".ihooman-input-btn.attach"),fileInput:c.querySelector(".ihooman-file-input"),statusDot:c.querySelector(".ihooman-status-dot"),statusText:c.querySelector(".ihooman-status-text"),statusBar:c.querySelector(".ihooman-status-bar"),ticketName:c.querySelector("#ihooman-ticket-name"),ticketEmail:c.querySelector("#ihooman-ticket-email"),ticketIssue:c.querySelector("#ihooman-ticket-issue"),ticketSubmitBtn:c.querySelector("#ihooman-ticket-submit"),ticketBackBtn:c.querySelector("#ihooman-ticket-back")},function(){if(!h.toggle||!h.sendBtn||!h.input)return;h.toggle.addEventListener("click",P),h.sendBtn.addEventListener("click",q),h.input.addEventListener("input",()=>{h.sendBtn&&(h.sendBtn.disabled=!h.input?.value.trim()),h.input&&(h.input.style.height="auto",h.input.style.height=Math.min(h.input.scrollHeight,100)+"px")}),h.input.addEventListener("keydown",e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),h.sendBtn?.disabled||q())}),h.attachBtn&&h.fileInput&&(h.attachBtn.addEventListener("click",()=>h.fileInput?.click()),h.fileInput.addEventListener("change",U));h.widget?.querySelector('[data-action="refresh"]')?.addEventListener("click",W),h.widget?.querySelector('[data-action="minimize"]')?.addEventListener("click",H),h.widget?.querySelector('[data-action="show-ticket"]')?.addEventListener("click",S),h.widget?.querySelector('[data-action="live-agent"]')?.addEventListener("click",C),h.ticketSubmitBtn&&h.ticketSubmitBtn.addEventListener("click",I);h.ticketBackBtn&&h.ticketBackBtn.addEventListener("click",()=>$("chat"))}()}function k(e,t="bot",n={}){const o={id:x("msg_"),content:e,sender:t,timestamp:new Date,metadata:n};if(p.messages.push(o),!h.messages)return o;const i=document.createElement("div");i.className=`ihooman-message ${t}`;const a="bot"===t&&!0===n?.escalation_offered;let s="";var r,u;if(a&&(s=`\n <div class="ihooman-escalation-actions">\n <button class="ihooman-escalation-btn primary" data-action="live-agent">\n ${c}\n <span>Talk to Agent</span>\n </button>\n <button class="ihooman-escalation-btn secondary" data-action="create-ticket">\n ${l}\n <span>Create Ticket</span>\n </button>\n </div>\n `),i.innerHTML=`\n <div class="ihooman-message-content">${u=e,u?v(u).replace(/\*\*(.*?)\*\*/g,"<strong>$1</strong>").replace(/\*(.*?)\*/g,"<em>$1</em>").replace(/`(.*?)`/g,"<code>$1</code>").replace(/\n/g,"<br>"):""}</div>\n ${s}\n ${d.showTimestamps?`<div class="ihooman-message-time">${r=o.timestamp,new Date(r).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}</div>`:""}\n `,a){const e=i.querySelector('[data-action="live-agent"]'),t=i.querySelector('[data-action="create-ticket"]');e&&e.addEventListener("click",()=>A("live-agent")),t&&t.addEventListener("click",()=>A("create-ticket"))}const m=h.messages.querySelector(".ihooman-typing");return m&&m.remove(),h.messages.appendChild(i),h.messages.scrollTop=h.messages.scrollHeight,"bot"!==t||p.isOpen||(p.unreadCount++,h.badge&&(h.badge.textContent=String(p.unreadCount)),d.enableSounds&&function(){try{const e=new Audio("data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4Ljc2LjEwMAAAAAAAAAAAAAAA//tQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWGluZwAAAA8AAAACAAABhgC7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7u7//////////////////////////////////////////////////////////////////8AAAAATGF2YzU4LjEzAAAAAAAAAAAAAAAAJAAAAAAAAAAAAYYNBrP/AAAAAAAAAAAAAAAAAAAAAP/7UMQAA8AAAaQAAAAgAAA0gAAABExBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//tQxBKDwAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU=");e.volume=.3,e.play().catch(()=>{})}catch{}}()),w("message",o),o}function A(e){document.querySelectorAll(".ihooman-escalation-btn").forEach(e=>e.disabled=!0),"live-agent"===e?C():"create-ticket"===e&&S()}function $(e){h.chatView&&h.chatView.classList.toggle("hidden","chat"!==e),h.ticketView&&h.ticketView.classList.toggle("show","ticket"===e)}function S(){$("ticket"),setTimeout(()=>h.ticketName?.focus(),100)}function _(e,t){h.statusBar&&("hidden"!==e?(h.statusBar.classList.add("show"),h.statusBar.classList.remove("waiting","connected"),h.statusBar.classList.add(e),t&&(h.statusBar.textContent=t)):h.statusBar.classList.remove("show"))}async function I(){const e=h.ticketName?.value.trim(),t=h.ticketEmail?.value.trim(),n=h.ticketIssue?.value.trim();if(e&&t){h.ticketSubmitBtn&&(h.ticketSubmitBtn.disabled=!0,h.ticketSubmitBtn.textContent="Submitting...");try{const o=await fetch(`${d.serverUrl}/api/v1/public/submit-ticket`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({session_id:p.sessionId,user_name:e,user_email:t,issue:n||"No description provided",escalation_type:"ticket",widget_id:d.widgetId})}),i=await o.json();h.ticketName&&(h.ticketName.value=""),h.ticketEmail&&(h.ticketEmail.value=""),h.ticketIssue&&(h.ticketIssue.value=""),$("chat");k(`✅ Ticket submitted! We'll contact you at ${t}. Reference: #${i.ticket_id?i.ticket_id.slice(0,8):"submitted"}`,"bot",{is_system_message:!0})}catch(e){console.error("Error submitting ticket:",e),k("❌ Error submitting ticket. Please try again.","bot",{is_system_message:!0})}h.ticketSubmitBtn&&(h.ticketSubmitBtn.disabled=!1,h.ticketSubmitBtn.textContent="Submit Ticket")}else alert("Please fill in your name and email")}async function C(){if(!p.sessionId)return void k("Please send a message first to start a conversation.","bot",{is_system_message:!0});const e=h.widget?.querySelector('[data-action="live-agent"]');e&&(e.disabled=!0,e.innerHTML='<svg viewBox="0 0 24 24" fill="currentColor"><path d="M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"/></svg> Connecting...');try{const e=await fetch(`${d.serverUrl}/api/v1/public/live-agent`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({session_id:p.sessionId,visitor_id:p.visitorId,widget_id:d.widgetId})}),t=await e.json();u=!0,t.position_in_queue&&t.position_in_queue>1?_("waiting",`⏳ Waiting for agent (Position: #${t.position_in_queue})`):_("waiting","⏳ Connecting to live support...");const n=h.widget?.querySelector(".ihooman-action-buttons");n&&(n.style.display="none"),function(){if(B)return;B=setInterval(async()=>{if(p.sessionId&&u)try{const e=await fetch(`${d.serverUrl}/api/v1/public/transcript/${p.sessionId}`,{headers:{"Content-Type":"application/json"}});if(!e.ok)return;const t=await e.json(),n=t.messages?.length||0;if(n>T){t.messages.slice(T).forEach(e=>{"agent"===e.sender_type?k(e.content,"bot",{agent_name:"Agent"}):"ai"===e.sender_type&&e.content.includes("connected to live support")&&k(e.content,"bot",{is_system_message:!0})}),T=n}if("closed"===t.status){u=!1,z(),_("hidden"),k("This conversation has been closed. Thank you for contacting us!","bot",{is_system_message:!0});const e=h.widget?.querySelector(".ihooman-action-buttons");e&&(e.style.display="flex")}try{const e=await fetch(`${d.serverUrl}/api/v1/public/escalation-status/${p.sessionId}`);if(e.ok){const t=await e.json();t.escalated&&("in_progress"===t.ticket_status?_("connected","🟢 Connected to live agent"):"open"===t.ticket_status&&(t.position_in_queue&&t.position_in_queue>1?_("waiting",`⏳ Waiting for agent (Position: #${t.position_in_queue})`):_("waiting","⏳ Waiting for agent...")))}}catch{}}catch(e){console.error("Error polling for messages:",e)}else z()},3e3)}()}catch(e){console.error("Error requesting live agent:",e),k("❌ Unable to connect to live support. Please try again.","bot",{is_system_message:!0})}e&&(e.disabled=!1,e.innerHTML='<svg viewBox="0 0 24 24" fill="currentColor"><path d="M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"/></svg> Live Agent')}let B=null,T=0;function z(){B&&(clearInterval(B),B=null)}function E(){if(!d.showTypingIndicator||!h.messages)return;if(h.messages.querySelector(".ihooman-typing"))return;const e=document.createElement("div");e.className="ihooman-typing",e.innerHTML='<div class="ihooman-typing-dots"><span class="ihooman-typing-dot"></span><span class="ihooman-typing-dot"></span><span class="ihooman-typing-dot"></span></div>',h.messages.appendChild(e),h.messages.scrollTop=h.messages.scrollHeight}function L(){const e=h.messages?.querySelector(".ihooman-typing");e&&e.remove()}function q(){const e=h.input?.value.trim();e&&(h.input&&(h.input.value="",h.input.style.height="auto"),h.sendBtn&&(h.sendBtn.disabled=!0),k(e,"user"),E(),async function(e){if(g&&g.readyState===WebSocket.OPEN)return void g.send(JSON.stringify({type:"message",content:e}));try{const t=await fetch(`${d.serverUrl}/api/v1/public/chat`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({message:e,session_id:p.sessionId,visitor_id:p.visitorId,widget_id:d.widgetId})}),n=await t.json();L(),n.session_id&&(p.sessionId=n.session_id,d.persistSession&&y("session_id",p.sessionId)),n.response&&k(n.response,"bot",{sources:n.sources,confidence:n.confidence})}catch(e){L(),k("Sorry, something went wrong. Please try again.","bot"),w("error",e)}}(e))}function U(e){const t=e.target,n=t.files?.[0];if(!n)return;k(`📎 Uploading: ${n.name}...`,"user"),E();const o=new FormData;o.append("file",n),o.append("session_id",p.sessionId||""),o.append("visitor_id",p.visitorId||""),o.append("widget_id",d.widgetId),fetch(`${d.serverUrl}/api/upload`,{method:"POST",body:o}).then(e=>e.json()).then(e=>{L(),e.message&&k(e.message,"bot")}).catch(()=>{L(),k("Failed to upload file.","bot")}),t.value=""}function M(e){if(!d.serverUrl&&!e)return;let t;if(d.widgetId){const e=d.serverUrl?.replace(/^http/,"ws"),n=new URLSearchParams({widget_id:d.widgetId});p.visitorId&&n.append("visitor_id",p.visitorId),p.sessionId&&n.append("session_id",p.sessionId),t=`${e}/public/ws?${n.toString()}`}else t=e||d.serverUrl?.replace(/^http/,"ws")+"/ws";try{g=new WebSocket(t),g.onopen=()=>{p.isConnected=!0,f=0,F(!0),w("connected")},g.onclose=()=>{if(p.isConnected=!1,F(!1),w("disconnected"),f<5){f++;const t=Math.min(1e3*Math.pow(2,f),3e4);setTimeout(()=>M(e),t)}else console.warn("WebSocket reconnection failed, falling back to polling"),j()},g.onerror=e=>{console.error("WebSocket error:",e)},g.onmessage=e=>{try{const t=JSON.parse(e.data);if("connected"===t.type)t.session_id&&(p.sessionId=t.session_id,d.persistSession&&y("session_id",p.sessionId)),t.visitor_id&&(p.visitorId=t.visitor_id,d.persistSession&&y("visitor_id",p.visitorId)),t.welcome_message&&0===p.messages.length&&k(t.welcome_message,"bot");else if("message"===t.type){L();const e="user"===t.sender?"user":"bot";k(t.content,e,{confidence:t.confidence,agent_name:t.agent_name,escalation_offered:t.escalation_offered,escalated:t.escalated})}else"typing"===t.type?t.is_typing?E():L():"pong"===t.type||"error"===t.type&&(console.error("WebSocket server error:",t.message),w("error",{message:t.message}))}catch{}},function(){if(O)return;O=setInterval(()=>{g&&g.readyState===WebSocket.OPEN&&g.send(JSON.stringify({type:"ping"}))},3e4)}()}catch{console.warn("WebSocket not supported, using polling"),j()}}let O=null;function j(){b||(b=setInterval(async()=>{if(p.sessionId)try{const e=await fetch(`${d.serverUrl}/api/messages?session_id=${p.sessionId}&since=${Date.now()-5e3}&widget_id=${d.widgetId}`),t=await e.json();t.messages&&t.messages.forEach(e=>{p.messages.find(t=>t.id===e.id)||k(e.content,e.sender_type,e.metadata)})}catch{}},5e3))}function F(e){h.statusDot&&h.statusDot.classList.toggle("offline",!e),h.statusText&&(h.statusText.textContent=e?"Online":"Offline")}function N(){p.isOpen||(p.isOpen=!0,p.unreadCount=0,h.badge&&(h.badge.textContent=""),h.toggle&&h.toggle.classList.add("open"),h.window&&h.window.classList.add("open"),setTimeout(()=>h.input?.focus(),300),w("open"))}function H(){p.isOpen&&(p.isOpen=!1,h.toggle&&h.toggle.classList.remove("open"),h.window&&h.window.classList.remove("open"),w("close"))}function P(){p.isOpen?H():N()}function W(){p.sessionId=null,p.messages=[],y("session_id",null),h.messages&&(h.messages.innerHTML=""),d.welcomeMessage&&k(d.welcomeMessage,"bot")}async function D(t){if(!t.widgetId)return console.error("IhoomanChat: widgetId is required"),null;d={...e,...t},p.visitorId=y("visitor_id")||x("v_"),y("visitor_id",p.visitorId),d.persistSession&&(p.sessionId=y("session_id"));const n=d.serverUrl||"https://api.ihooman.ai",o=await async function(e,t){try{const n=await fetch(`${t}/api/widget/config?widget_id=${encodeURIComponent(e)}`);return n.ok?await n.json():{success:!1,error:(await n.json().catch(()=>({}))).error||`HTTP ${n.status}`}}catch(e){return{success:!1,error:"Unable to connect. Please check your internet connection."}}}(d.widgetId,n);let i;var a;return o.success&&o.config?(a=o.config,d.title=a.title||d.title,d.subtitle=a.subtitle||d.subtitle,d.welcomeMessage=a.welcomeMessage||d.welcomeMessage,d.placeholder=a.placeholder||d.placeholder,d.position=a.position||d.position,a.theme&&(d.primaryColor=a.theme.primaryColor||d.primaryColor,d.gradientFrom=a.theme.gradientFrom||d.gradientFrom,d.gradientTo=a.theme.gradientTo||d.gradientTo,d.fontFamily=a.theme.fontFamily||d.fontFamily,a.theme.borderRadius&&(d.borderRadius=parseInt(a.theme.borderRadius,10)||d.borderRadius)),a.behavior&&(d.startOpen=a.behavior.startOpen??d.startOpen,d.showTypingIndicator=a.behavior.showTypingIndicator??d.showTypingIndicator,d.showTimestamps=a.behavior.showTimestamps??d.showTimestamps,d.enableSounds=a.behavior.enableSounds??d.enableSounds,d.enableFileUpload=a.behavior.enableFileUpload??d.enableFileUpload,d.persistSession=a.behavior.persistSession??d.persistSession),a.branding&&(d.avatarUrl=a.branding.avatarUrl||d.avatarUrl,d.poweredBy=a.branding.poweredBy??d.poweredBy),i=o.chatEndpoint):o.error&&(console.warn("IhoomanChat: Could not fetch server config:",o.error),"Widget not authorized for this domain"===o.error&&console.error("IhoomanChat: Widget configuration error. Please contact support.")),V(),p.messages.forEach(e=>k(e.content,e.sender,e.metadata)),0===p.messages.length&&d.welcomeMessage&&k(d.welcomeMessage,"bot"),M(i),d.startOpen&&setTimeout(N,500),w("ready"),Y}const Y={init:D,open:N,close:H,toggle:P,destroy:function(){O&&(clearInterval(O),O=null),z(),g&&(g.close(),g=null),b&&(clearInterval(b),b=null),h.widget&&h.widget.remove();const e=document.getElementById("ihooman-widget-styles");e&&e.remove(),p={isOpen:!1,isConnected:!1,messages:[],sessionId:null,visitorId:null,unreadCount:0},h={},f=0},sendMessage:function(e){e.trim()&&(h.input&&(h.input.value=e),q())},setUser:function(e){e.name&&y("user_name",e.name),e.email&&y("user_email",e.email),e.metadata&&y("user_metadata",e.metadata)},clearHistory:function(){W()},on:function(e,t){m[e]||(m[e]=[]),m[e].push(t)},off:function(e,t){m[e]&&(m[e]=m[e].filter(e=>e!==t))},getState:function(){return{...p}},version:"2.0.0"},R=Y;function J(){return{...Y}}!function(){if("undefined"==typeof document)return;let e=document.currentScript;if(!e){const t=document.getElementsByTagName("script");for(let n=0;n<t.length;n++)if(t[n].src&&t[n].src.includes("ihooman")){e=t[n];break}}if(!e)return;const t=e.getAttribute("data-widget-id");if(t){const n={widgetId:t},o=e.getAttribute("data-server-url");o&&(n.serverUrl=o);const i=e.getAttribute("data-theme");"light"!==i&&"dark"!==i||(n.theme=i);const a=e.getAttribute("data-position");a&&(n.position=a);"true"===e.getAttribute("data-start-open")&&(n.startOpen=!0),"loading"===document.readyState?document.addEventListener("DOMContentLoaded",()=>D(n)):D(n)}}(),"undefined"!=typeof window&&(window.IhoomanChat=R);export{R as IhoomanChat,J as createWidgetInstance,R as default};
2
2
  //# sourceMappingURL=index.esm.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.min.js","sources":["../src/widget.ts"],"sourcesContent":[null],"names":["defaultConfig","serverUrl","theme","position","title","subtitle","welcomeMessage","placeholder","primaryColor","gradientFrom","gradientTo","showTimestamps","showTypingIndicator","enableSounds","enableFileUpload","startOpen","persistSession","zIndex","width","height","buttonSize","borderRadius","fontFamily","avatarUrl","poweredBy","icons","config","widgetId","state","isOpen","isConnected","messages","sessionId","visitorId","unreadCount","isLiveAgentMode","elements","eventListeners","ws","pollInterval","reconnectAttempts","generateId","prefix","Math","random","toString","slice","Date","now","escapeHtml","text","div","document","createElement","textContent","innerHTML","storage","key","value","fullKey","undefined","item","localStorage","getItem","JSON","parse","removeItem","setItem","stringify","emit","event","data","forEach","fn","e","console","error","callbackName","charAt","toUpperCase","callback","createWidget","styleEl","id","isDark","bgColor","textColor","mutedColor","borderColor","inputBg","messageBgUser","messageBgBot","positionRight","includes","positionBottom","generateStyles","head","appendChild","widget","className","body","toggle","querySelector","badge","window","chatView","ticketView","input","sendBtn","attachBtn","fileInput","statusDot","statusText","statusBar","ticketName","ticketEmail","ticketIssue","ticketSubmitBtn","ticketBackBtn","addEventListener","handleSendClick","disabled","trim","style","min","scrollHeight","shiftKey","preventDefault","click","handleFileSelect","startNewConversation","close","handleShowTicketForm","handleRequestLiveAgent","handleSubmitTicket","showView","setupEventListeners","addMessage","content","sender","metadata","message","timestamp","push","el","showEscalationButtons","escalation_offered","escalationButtonsHtml","date","replace","toLocaleTimeString","hour","minute","liveAgentBtn","ticketBtn","handleEscalationAction","typing","remove","scrollTop","String","audio","Audio","volume","play","catch","playSound","action","querySelectorAll","btn","view","classList","setTimeout","focus","updateStatusBar","status","add","async","name","email","issue","response","fetch","method","headers","session_id","user_name","user_email","escalation_type","widget_id","json","ticket_id","is_system_message","alert","liveBtn","visitor_id","position_in_queue","actionsDiv","display","liveAgentPollInterval","setInterval","ok","msgCount","length","lastMessageCount","msg","sender_type","agent_name","stopLiveAgentPolling","escResponse","escData","escalated","ticket_status","startLiveAgentPolling","clearInterval","showTyping","hideTyping","readyState","WebSocket","OPEN","send","type","sources","confidence","sendMessageToServer","target","file","files","formData","FormData","append","then","r","connectWebSocket","chatEndpoint","wsUrl","baseWsUrl","params","URLSearchParams","onopen","updateStatus","onclose","delay","pow","warn","startPolling","onerror","onmessage","welcome_message","is_typing","heartbeatInterval","startHeartbeat","find","m","online","open","init","userConfig","configResponse","encodeURIComponent","success","fetchWidgetConfig","serverConfig","parseInt","behavior","branding","publicAPI","destroy","styles","getElementById","sendMessage","setUser","user","clearHistory","on","off","filter","getState","version","IhoomanChat","createWidgetInstance","script","currentScript","scripts","getElementsByTagName","i","src","getAttribute","autoConfig"],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.min.js","sources":["../src/widget.ts"],"sourcesContent":[null],"names":["defaultConfig","serverUrl","theme","position","title","subtitle","welcomeMessage","placeholder","primaryColor","gradientFrom","gradientTo","showTimestamps","showTypingIndicator","enableSounds","enableFileUpload","startOpen","persistSession","zIndex","width","height","buttonSize","borderRadius","fontFamily","avatarUrl","poweredBy","icons","config","widgetId","state","isOpen","isConnected","messages","sessionId","visitorId","unreadCount","isLiveAgentMode","elements","eventListeners","ws","pollInterval","reconnectAttempts","generateId","prefix","Math","random","toString","slice","Date","now","escapeHtml","text","div","document","createElement","textContent","innerHTML","storage","key","value","fullKey","undefined","item","localStorage","getItem","JSON","parse","removeItem","setItem","stringify","emit","event","data","forEach","fn","e","console","error","callbackName","charAt","toUpperCase","callback","createWidget","styleEl","id","isDark","bgColor","textColor","mutedColor","borderColor","inputBg","messageBgUser","messageBgBot","positionRight","includes","positionBottom","generateStyles","head","appendChild","widget","className","body","toggle","querySelector","badge","window","chatView","ticketView","input","sendBtn","attachBtn","fileInput","statusDot","statusText","statusBar","ticketName","ticketEmail","ticketIssue","ticketSubmitBtn","ticketBackBtn","addEventListener","handleSendClick","disabled","trim","style","min","scrollHeight","shiftKey","preventDefault","click","handleFileSelect","startNewConversation","close","handleShowTicketForm","handleRequestLiveAgent","handleSubmitTicket","showView","setupEventListeners","addMessage","content","sender","metadata","message","timestamp","push","el","showEscalationButtons","escalation_offered","escalationButtonsHtml","date","replace","toLocaleTimeString","hour","minute","liveAgentBtn","ticketBtn","handleEscalationAction","typing","remove","scrollTop","String","audio","Audio","volume","play","catch","playSound","action","querySelectorAll","btn","view","classList","setTimeout","focus","updateStatusBar","status","add","async","name","email","issue","response","fetch","method","headers","session_id","user_name","user_email","escalation_type","widget_id","json","ticket_id","is_system_message","alert","liveBtn","visitor_id","position_in_queue","actionsDiv","display","liveAgentPollInterval","setInterval","ok","msgCount","length","lastMessageCount","msg","sender_type","agent_name","stopLiveAgentPolling","escResponse","escData","escalated","ticket_status","startLiveAgentPolling","clearInterval","showTyping","hideTyping","readyState","WebSocket","OPEN","send","type","sources","confidence","sendMessageToServer","target","file","files","formData","FormData","append","then","r","connectWebSocket","chatEndpoint","wsUrl","baseWsUrl","params","URLSearchParams","onopen","updateStatus","onclose","delay","pow","warn","startPolling","onerror","onmessage","welcome_message","is_typing","heartbeatInterval","startHeartbeat","find","m","online","open","init","userConfig","configResponse","encodeURIComponent","success","fetchWidgetConfig","serverConfig","parseInt","behavior","branding","publicAPI","destroy","styles","getElementById","sendMessage","setUser","user","clearHistory","on","off","filter","getState","version","IhoomanChat","createWidgetInstance","script","currentScript","scripts","getElementsByTagName","i","src","getAttribute","autoConfig"],"mappings":"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"}
package/dist/index.umd.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @ihoomanai/chat-widget v2.2.0
2
+ * @ihoomanai/chat-widget v2.2.1
3
3
  * Universal chat support widget for any website - secure Widget ID based initialization
4
4
  *
5
5
  * @license MIT
@@ -639,12 +639,12 @@
639
639
  });
640
640
  const data = await response.json();
641
641
  isLiveAgentMode = true;
642
- // Show status bar
642
+ // Show status bar - always start with waiting since agent hasn't accepted yet
643
643
  if (data.position_in_queue && data.position_in_queue > 1) {
644
644
  updateStatusBar('waiting', `⏳ Waiting for agent (Position: #${data.position_in_queue})`);
645
645
  }
646
646
  else {
647
- updateStatusBar('connected', '🟢 Connected to live support');
647
+ updateStatusBar('waiting', ' Connecting to live support...');
648
648
  }
649
649
  // Hide action buttons when in live agent mode
650
650
  const actionsDiv = elements.widget?.querySelector('.ihooman-action-buttons');
@@ -716,17 +716,24 @@
716
716
  actionsDiv.style.display = 'flex';
717
717
  }
718
718
  }
719
- // Update queue position
719
+ // Update queue position and connection status
720
720
  try {
721
721
  const escResponse = await fetch(`${config.serverUrl}/api/v1/public/escalation-status/${state.sessionId}`);
722
722
  if (escResponse.ok) {
723
723
  const escData = await escResponse.json();
724
724
  if (escData.escalated) {
725
725
  if (escData.ticket_status === 'in_progress') {
726
+ // Agent has accepted - show connected status
726
727
  updateStatusBar('connected', '🟢 Connected to live agent');
727
728
  }
728
- else if (escData.ticket_status === 'open' && escData.position_in_queue > 1) {
729
- updateStatusBar('waiting', `⏳ Waiting for agent (Position: #${escData.position_in_queue})`);
729
+ else if (escData.ticket_status === 'open') {
730
+ // Still waiting in queue
731
+ if (escData.position_in_queue && escData.position_in_queue > 1) {
732
+ updateStatusBar('waiting', `⏳ Waiting for agent (Position: #${escData.position_in_queue})`);
733
+ }
734
+ else {
735
+ updateStatusBar('waiting', '⏳ Waiting for agent...');
736
+ }
730
737
  }
731
738
  }
732
739
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.js","sources":["../src/widget.ts","../src/index.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.umd.js","sources":["../src/widget.ts","../src/index.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}