import"./hoisted.yFz1BYXO.js";const u="/api/v1/canada-crtc",t=e=>document.getElementById(e),s=e=>document.getElementById(e),h=new URLSearchParams(window.location.search),m=h.get("order")||"",l=h.get("token")||"";m&&(s("order_number").value=m);l&&sessionStorage.setItem("pw_portal_token",l);const o=l||sessionStorage.getItem("pw_portal_token")||"";function f(){const e={"Content-Type":"application/json"};return o&&(e.Authorization=`Bearer ${o}`),e}if(!o){const e=document.createElement("div");e.className="mt-4 rounded-lg bg-red-50 border border-red-200 p-4 text-sm text-red-800",e.textContent="This link has expired or is invalid. Please check your email for a new link.",document.querySelector(".max-w-lg")?.appendChild(e)}let c="";t("domain_input")?.addEventListener("input",()=>{const e=s("domain_input");e.value=e.value.toLowerCase().replace(/[^a-z0-9-]/g,"").replace(/^-/,"")});t("btn-search")?.addEventListener("click",async()=>{const e=s("domain_input").value.trim(),r=s("order_number").value.trim();if(!e){alert("Enter a domain name to search.");return}if(!r){alert("Order number is required.");return}const a=e.endsWith(".ca")?e:`${e}.ca`,n=t("btn-search");n.disabled=!0,n.textContent="Searching...",t("result-available")?.classList.add("hidden"),t("result-taken")?.classList.add("hidden"),t("result-error")?.classList.add("hidden"),t("search-result")?.classList.remove("hidden");try{const d=await fetch(`${u}/domain-search`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({domain:a,order_number:r})}),i=await d.json();d.ok?i.available?(c=i.domain,t("result-available")?.classList.remove("hidden"),t("result-domain-name").textContent=i.domain):(t("result-taken")?.classList.remove("hidden"),t("result-taken-name").textContent=i.domain):(t("result-error")?.classList.remove("hidden"),t("result-error-text").textContent=i.error||"Search failed.")}catch{t("result-error")?.classList.remove("hidden"),t("result-error-text").textContent="Network error. Please try again."}n.disabled=!1,n.textContent="Search"});t("domain_input")?.addEventListener("keydown",e=>{e.key==="Enter"&&t("btn-search")?.click()});t("btn-confirm")?.addEventListener("click",async()=>{if(!o){alert("Your link has expired. Please check your email for a new link.");return}const e=s("order_number").value.trim();if(!c||!e)return;const r=t("btn-confirm");r.disabled=!0,r.textContent="Registering...";try{const a=await fetch(`${u}/domain-confirm`,{method:"POST",headers:f(),body:JSON.stringify({domain:c,order_number:e})}),n=await a.json();if(a.status===401||a.status===403){alert("Your session has expired. Please check your email for a new link."),r.disabled=!1,r.textContent="Register this domain";return}a.ok&&n.success?(t("search-result")?.classList.add("hidden"),t("confirmed-domain")?.classList.remove("hidden"),t("confirmed-name").textContent=n.domain,s("domain_input").disabled=!0,t("btn-search").disabled=!0):(alert(n.error||"Could not confirm domain. Please try again."),r.disabled=!1,r.textContent="Register this domain")}catch{alert("Network error. Please try again."),r.disabled=!1,r.textContent="Register this domain"}});