const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./layers-widget-DfVKhofO.js","./layers-widget-CouLIq29.js","./layers-widget-EsaJEcap.js","./layers-widget-CglxezVK.js","./layers-widget-98ks9uNH.js","./layers-widget.js","./layers-widget-DeqaJRh1.js"])))=>i.map(i=>d[i]);
import{u as n,_ as r}from"./layers-widget.js";import{h}from"./layers-widget-EsaJEcap.js";import{c as a,S as p,X as d,a as c,C as m}from"./layers-widget-DeqaJRh1.js";const u='.layers-tooltip{position:absolute;top:-40px;left:50%;transform:translate(-50%);background-color:#fff;color:#000;padding:.5rem .75rem;border-radius:.25rem;font-size:.9rem;box-shadow:0 .125rem .5rem #00000026;white-space:nowrap;z-index:10;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;display:flex;align-items:center;gap:.5rem}.layers-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid;border-color:white transparent transparent transparent}.layers-tooltip-visible{opacity:1;visibility:visible}.layers-tooltip-text{font-weight:500}.layers-tooltip-close{background:none;border:none;padding:0;margin:0;cursor:pointer;color:#000;display:flex;align-items:center;justify-content:center;width:16px;height:16px}.layers-tooltip-close svg{width:100%;height:100%}.layers-tooltip-close:hover{opacity:.8}';class w extends HTMLElement{modal=null;templateId=null;uploadMode=null;tooltip=null;tooltipTimeout=null;tooltipDismissed=!1;tooltipShowCount=0;maxTooltipShows=15;tooltipDuration=15e3;showTooltipCloseButton=!0;translationManager=n();observer=null;connectedCallback(){const t=this.getAttribute("icon");let o=p;t==="Search"?o=c:t==="Camera"?o=m:t==="CameraSearch"&&(o=[["svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 30 30",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"}],["path",{d:"M3 7v-2a2 2 0 0 1 2-2h2"}],["path",{d:"M17 3h2a2 2 0 0 1 2 2v2"}],["path",{d:"M21 17v2a2 2 0 0 1-2 2h-2"}],["path",{d:"M7 21h-2a2 2 0 0 1-2-2v-2"}],["path",{d:"M13.2 8.16h-2.4l-1.2 1.44H8.16a.96.96 0 0 0-.96.96v4.32a.96.96 0 0 0 .96.96h7.68a.96.96 0 0 0 .96-.96v-4.32a.96.96 0 0 0-.96-.96h-1.44l-1.2-1.44z"}],["path",{d:"M12 13.92a1.44 1.44 0 1 0 0-2.88 1.44 1.44 0 0 0 0 2.88z"}]]),this.childElementCount===0&&this.appendChild(a(o)),this.insertAdjacentHTML("afterbegin",h``),this.templateId=this.getAttribute("template-id"),this.uploadMode=this.getAttribute("upload-mode"),this.addEventListener("click",this.handleClick),this.hasAttribute("tooltip-duration")&&(this.tooltipDuration=Number.parseInt(this.getAttribute("tooltip-duration")||"15000",10)),this.hasAttribute("tooltip-max-shows")&&(this.maxTooltipShows=Number.parseInt(this.getAttribute("tooltip-max-shows")||"15",10)),this.hasAttribute("tooltip-show-close-button")&&(this.showTooltipCloseButton=this.getAttribute("tooltip-show-close-button")!=="false");try{const i=`layers-tooltip-dismissed-${window.location.hostname}`;this.tooltipDismissed=sessionStorage.getItem(i)==="true";const l=`layers-tooltip-show-count-${window.location.hostname}`,s=sessionStorage.getItem(l);s&&(this.tooltipShowCount=Number.parseInt(s,10))}catch(i){console.warn("Failed to access sessionStorage for tooltip preferences:",i)}const e=this.getAttribute("tooltip-enabled")!=="false";this.isVisible()&&!this.tooltipDismissed&&this.tooltipShowCount{i.forEach(l=>{const s=this.getAttribute("tooltip-enabled")!=="false";l.isIntersecting&&!this.tooltipDismissed&&this.tooltipShowCount0&&t.height>0&&t.top>=0&&t.left>=0&&t.bottom<=o&&t.right<=e}createTooltip(){if(this.tooltip)return;this.tooltip=document.createElement("div"),this.tooltip.className="layers-tooltip";const t=document.createElement("span");t.className="layers-tooltip-text";const o=this.hasAttribute("tooltip-text")?this.getAttribute("tooltip-text"):this.translationManager.getTranslationByKey("image-search","tooltip.text");if(t.textContent=o,this.tooltip.appendChild(t),this.showTooltipCloseButton){const e=document.createElement("button");e.type="button",e.className="layers-tooltip-close",e.setAttribute("aria-label",this.translationManager.getTranslationByKey("image-search","tooltip.closeButton.ariaLabel")),e.appendChild(a(d)),e.addEventListener("click",this.handleTooltipDismiss),this.tooltip.appendChild(e)}this.appendChild(this.tooltip)}showTooltip(){if(!(this.tooltipDismissed||this.tooltipShowCount>=this.maxTooltipShows)&&(this.tooltip||this.createTooltip(),this.tooltip)){this.tooltip.classList.add("layers-tooltip-visible"),this.tooltipTimeout&&window.clearTimeout(this.tooltipTimeout),this.tooltipTimeout=window.setTimeout(()=>{this.hideTooltip()},this.tooltipDuration),this.tooltipShowCount++;try{sessionStorage.setItem(`layers-tooltip-show-count-${window.location.hostname}`,this.tooltipShowCount.toString())}catch(t){console.warn("Failed to save tooltip show count to sessionStorage:",t)}}}hideTooltip(){this.tooltip&&(this.tooltip.classList.remove("layers-tooltip-visible"),this.tooltipTimeout&&(window.clearTimeout(this.tooltipTimeout),this.tooltipTimeout=null))}handleTooltipDismiss=t=>{t.stopPropagation(),this.tooltipDismissed=!0,this.hideTooltip();try{sessionStorage.setItem(`layers-tooltip-dismissed-${window.location.hostname}`,"true")}catch(o){console.warn("Failed to save tooltip dismissed state to sessionStorage:",o)}};handleClick=async()=>{try{if(this.modal)this.modal.reset(),this.modal.open();else{await r(()=>import("./layers-widget-DfVKhofO.js"),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url),this.modal=document.createElement("layers-image-search-modal"),this.templateId&&this.modal.setAttribute("template-id",this.templateId),this.uploadMode&&this.modal.setAttribute("upload-mode",this.uploadMode);const t=this.getAttribute("show-instructions");t!==null&&this.modal.setAttribute("show-instructions",t),this.getAttribute("enable-paste")==="true"&&this.modal.setAttribute("enable-paste","true"),document.body.appendChild(this.modal),this.modal.addEventListener("layers-image-search-area-selected",this.handleAreaSelected)}}catch(t){console.error("Failed to initialize image search modal:",t)}};handleAreaSelected=t=>{const o=t.detail,e=new CustomEvent("layers-image-search-area-selected",{detail:o,bubbles:!0});this.dispatchEvent(e)}}customElements.get("layers-image-search-toggle")||customElements.define("layers-image-search-toggle",w);export{w as LayersImageSearchToggle};