globalThis.Component.register("Toast",t=>{t.toast=new bootstrap.Toast(t,{autohide:t.state.delay>0}),globalThis.Util.copyFunction(t,t.toast,"show","hide"),t.addEventListener("show.bs.toast",()=>{if(t.state.delay>0){let e;const s=()=>{t.state.left=t.state.delay/1e3,e=setInterval(()=>{(!t.isConnected||--t.state.left<=0)&&clearInterval(e)},1e3)};s(),t.addEventListener("mouseenter",()=>{clearInterval(e),t.state.left=void 0}),t.addEventListener("mouseleave",s)}})},globalThis.Util.makeDom('\n
\n
\n
\n
\n \n \n
\n \n
\n
\n
\n
\n'),globalThis.Util.makeDom('
')),globalThis.Toast={show(t,e={}){const s=e.delay??5e3,a=document.createElement("Toast");return a.state={delay:s,left:s?s/1e3:void 0,type:e.type||"primary",message:t,buttons:e.buttons??["{#Close#}"]},globalThis.$(`[toast-container="${e.container||"default"}"]`).appendChild(a),Promise.resolve().then(()=>(a.show(),a))},confirm(t,e={}){return new Promise(s=>this.show(t,{buttons:["{#Confirm#}"],...e}).then(t=>{t.addEventListener("hidden.bs.toast",()=>s(1===t.result),{once:!0})}).catch(()=>s(!1)))}};