1import{p as V,o,s as k,k as S,a as t,m as U,d as E,aw as ee,c as p,w as te,U as ne,u as n,G as oe,b as f,N as H,i as w,Z as se,ax as R,l as N,q as M,n as F,ay as D,t as h,x as q,az as ae,C as j,Q as le,R as Q,X as T,g as O,ah as G,aj as W,F as $,h as A,e as B,_ as P,O as re,f as Y,aA as ie,aB as ue,aC as ce,am as de,D as z,K as pe,a8 as me,v as fe,M as _e}from"./DmK6yPRS.js";import{_ as ge}from"./DlAUqK2U.js";import{u as ve}from"./LyTTTKZh.js";import{_ as he}from"./DmuOrX78.js";import{_ as ye,a as xe}from"./CqEy6URE.js";import{_ as be}from"./y_cN-YF-.js";const we=V("/images/Aurora-Logo-2big.png"),ke={};function $e(b,m){const e=U;return o(),k(e,{to:"/"},{default:S(()=>[...m[0]||(m[0]=[t("img",{src:we,width:"581",height:"114",alt:"Aurora Asphalt & Concrete home",class:"w-56 sm:w-64"},null,-1)])]),_:1})}const Ce=ge(ke,[["render",$e]]),Se={class:"flex-1 max-w-lg relative"},Ie=E({__name:"SearchBar",setup(b){const m=ee(),e=w(""),s=()=>{e.value.trim()?m.push(`/store?search=${encodeURIComponent(e.value.trim())}`):m.push("/store")},r=c=>{c.key==="Enter"&&s()};return(c,g)=>{const _=H;return o(),p("section",Se,[te(t("input",{"onUpdate:modelValue":g[0]||(g[0]=d=>oe(e)?e.value=d:null),onKeydown:r,type:"text",placeholder:"Search products...",class:"w-full px-4 py-2 pr-10 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-brand-blue focus:border-transparent"},null,544),[[ne,n(e)]]),t("button",{onClick:s,class:"absolute pt-1 right-2 top-1/2 transform -translate-y-1/2 hover:bg-gray-100 rounded"},[f(_,{name:"ri:search-line",class:"h-5 text-gray-500"})])])}}}),Be={class:"flex items-center font-bold text-[15px] gap-4"},Le={class:"relative"},Me={key:0,class:"absolute -top-1 right-0 w-5 h-5 rounded-full text-white grid place-items-center bg-red-600 pointer-events-none"},Ae=E({__name:"StoreNav",setup(b){const{itemsCount:m}=ve();return se(),R(),N("authModal",()=>({showing:!1})),(e,s)=>{const r=U,c=H;return o(),p("section",Be,[M("",!0),t("div",Le,[f(r,{class:F(["hover:bg-brand-light-blue/10 p-2 rounded-full grid place-items-center group",{"opacity-35":(e._.provides[D]||e.$route).path==="/store/cart"}]),title:"Cart",to:"/store/cart"},{default:S(()=>[f(c,{name:"ri:shopping-cart-2-fill",class:"w-7 h-7 group-hover:bg-brand-blue"})]),_:1},8,["class"]),n(m)?(o(),p("span",Me,h(n(m)),1)):M("",!0)])])}}}),Ee=V("/images/aurora-logo-light.webp"),K=()=>{const b=N("home-page-data",()=>null);return{navigationData:q(()=>[...b.value?.navigationData?.filter(s=>s.visible_in_navigation).map(s=>{const r=s.slug.startsWith("/")?s.slug:"/"+s.slug,c=!!s?.service_items?.length;return{name:s.name,path:c?void 0:r,footerPath:r,navItems:s?.service_items?.map(g=>({...g,slug:`${r}/${g.slug}`})),hasNavItems:c}})||[],...ae])}},Ne={class:"block xl:hidden"},De=["aria-expanded"],Fe={class:"flex justify-end"},Ue={class:"text-center"},He={class:"space-y-4 mb-8"},Ve=["aria-expanded","aria-controls","onClick"],je=["id"],ze={class:"overflow-hidden"},Re=E({__name:"HamburgerMenu",setup(b){const{navigationData:m}=K(),e=w(!1),s=w(null),r=j("openButton"),c=j("closeButton"),g=j("menu"),_=le();Q(()=>_.fullPath,()=>e.value=!1);function d(a){document.documentElement.style.overflow=a?"hidden":"",document.getElementById("__nuxt")?.toggleAttribute("inert",a)}return Q(e,async a=>{const i=g.value?.contains(document.activeElement);d(a),a?(await T(),c.value?.focus()):i&&r.value?.focus()}),O(()=>d(!1)),(a,i)=>{const y=H,x=U,I=P;return o(),p("section",Ne,[t("button",{ref_key:"openButton",ref:r,type:"button","aria-label":"Open menu","aria-expanded":n(e),"aria-controls":"mobile-menu",onClick:i[0]||(i[0]=l=>e.value=!0),class:"grid place-items-center p-2 bg-gray-100 rounded"},[f(y,{name:"ri:menu-3-fill",class:"w-10 text-2xl"})],8,De),(o(),k(G,{to:"#teleports"},[t("div",{id:"mobile-menu",ref_key:"menu",ref:g,role:"dialog","aria-modal":"true","aria-label":"Menu",class:F(["fixed left-0 top-0 w-full z-50 bg-brand-blue font-montserrat h-dvh overflow-y-auto overscroll-contain pb-8 text-center",n(e)?"translate-x-0 opacity-100 transition-[transform,opacity]":"translate-x-1/2 opacity-0 pointer-events-none invisible transition-[transform,opacity,visibility]"]),onKeydown:i[6]||(i[6]=W(l=>e.value=!1,["esc"]))},[t("div",Fe,[t("button",{ref_key:"closeButton",ref:c,type:"button","aria-label":"Close menu",onClick:i[1]||(i[1]=l=>e.value=!1),class:"grid place-items-center p-4 rounded"},[f(y,{name:"ri:close-fill",class:"text-4xl text-white"})],512)]),t("div",Ue,[f(x,{to:"/",onClick:i[2]||(i[2]=l=>e.value=!1)},{default:S(()=>[...i[7]||(i[7]=[t("img",{src:Ee,width:"581",height:"114",loading:"lazy",alt:"Aurora Asphalt & Concrete home",class:"w-56 mx-auto mb-12"},null,-1)])]),_:1}),t("ul",He,[(o(!0),p($,null,A(n(m),(l,u)=>(o(),p("li",{key:l.name},[l.hasNavItems?(o(),p($,{key:0},[t("button",{type:"button",class:"!font-semibold text-xl text-white flex items-center justify-center w-full select-none","aria-expanded":n(s)===u,"aria-controls":`mobile-menu-${u}`,onClick:v=>s.value=n(s)===u?null:u},[B(h(l.name)+" ",1),f(y,{name:"ri:arrow-drop-down-fill",class:"text-3xl"})],8,Ve),t("div",{id:`mobile-menu-${u}`,class:F(["grid overflow-hidden transition-all duration-300 ease-in-out",n(s)===u?"grid-rows-[1fr] opacity-100":"grid-rows-[0fr] opacity-0 invisible"])},[t("div",ze,[(o(!0),p($,null,A(l?.navItems,v=>(o(),k(x,{key:v.id,class:"py-2 block capitalize text-white",to:v.slug,onClick:i[3]||(i[3]=L=>e.value=!1)},{default:S(()=>[B(h(v.name),1)]),_:2},1032,["to"]))),128))])],10,je)],64)):(o(),k(x,{key:1,to:l.path,class:"!font-semibold text-xl text-white flex items-center justify-center select-none",onClick:i[4]||(i[4]=v=>e.value=!1)},{default:S(()=>[B(h(l.name),1)]),_:2},1032,["to"]))]))),128))])]),f(I,{label:"Quick Free Estimate",to:"/free-estimate",variant:("BtnVariantsEnum"in a?a.BtnVariantsEnum:n(re)).GHOST,disabled:(a._.provides[D]||a.$route).path==="/free-estimate",class:"!py-1",onClick:i[5]||(i[5]=l=>e.value=!1)},null,8,["variant","disabled"])],34)]))])}}}),Te={class:"hidden xl:flex items-center font-bold text-[15px] uppercase flex-wrap gap-y-2"},Oe=["aria-expanded","aria-controls","onClick"],Pe=["id"],Ke={key:0},Ze=E({__name:"Header-nav",setup(b){const{navigationData:m}=K(),e=w(null),s=w(null),r=w();function c(d){const a=d.relatedTarget,i=d.currentTarget;a&&!i.contains(a)&&(e.value=null)}function g(d){if(e.value===null)return;e.value=null,d.currentTarget.querySelector("button")?.focus()}function _(d){r.value?.contains(d.target)||(e.value=null)}return Y(()=>document.addEventListener("pointerdown",_)),O(()=>document.removeEventListener("pointerdown",_)),(d,a)=>{const i=H,y=U,x=P,I=Re;return o(),p("div",null,[t("section",Te,[t("ul",{ref_key:"menu",ref:r,class:"flex mr-4 xl:mr-8 flex-wrap"},[(o(!0),p($,null,A(n(m),(l,u)=>(o(),p("li",{key:l.name,class:"flex items-center relative z-40 group/item",onMouseleave:a[0]||(a[0]=v=>s.value=null),onFocusout:c,onKeydown:W(g,["esc"])},[l.hasNavItems?(o(),p($,{key:0},[t("button",{type:"button",class:"header-link flex items-center select-none uppercase","aria-expanded":n(e)===u,"aria-controls":`nav-menu-${u}`,onClick:v=>e.value=n(e)===u?null:u},[B(h(l.name)+" ",1),f(i,{name:"ri:arrow-drop-down-fill",class:"text-3xl"})],8,Oe),t("ul",{id:`nav-menu-${u}`,class:F(["absolute left-2 top-10 bg-white shadow-lg ring-1 ring-black/5 rounded-md mt-2 hidden py-2",n(e)===u?"!block":n(s)!==u&&"group-hover/item:block"])},[(o(!0),p($,null,A(l?.navItems,v=>(o(),p("li",{key:v.id},[f(y,{class:F(["px-4 py-2 header-link flex items-center justify-between gap-2 group whitespace-nowrap capitalize",{"cursor-default":(d._.provides[D]||d.$route).path===v.slug}]),to:v.slug,onClick:L=>{e.value=null,s.value=u}},{default:S(()=>[B(h(v.name)+" ",1),f(i,{name:"ri:arrow-drop-right-line",class:"opacity-0 group-hover:opacity-100"})]),_:2},1032,["to","class","onClick"])]))),128))],10,Pe)],64)):(o(),k(y,{key:1,to:l.path,class:"header-link flex items-center select-none"},{default:S(()=>[B(h(l.name),1)]),_:2},1032,["to"]))],32))),128))],512),(d._.provides[D]||d.$route).path!=="/free-estimate"?(o(),p("div",Ke,[f(x,{label:"Quick Free Estimate",to:"/free-estimate",class:"!py-1"})])):M("",!0)]),f(I)])}}}),Qe=V("/logos/aurora.png"),qe=V("/logos/AngiSuperService2025.webp"),Ge={class:"bg-gradient-to-t to-brand-blue from-black pt-12 pb-24 relative px-4"},We={class:"max-w-screen-xl mx-auto text-white space-y-16 relative"},Ye={class:"flex justify-between md:items-center flex-col md:flex-row gap-12"},Xe={id:"footer_left"},Je={id:"footer_right",class:"flex flex-col justify-between"},et={class:"grid grid-cols-2 mb-10"},tt={class:"flex justify-between flex-col md:flex-row gap-4 items-center"},nt={class:"order-2 md:order-1"},ot=E({__name:"Footer",setup(b){const{navigationData:m}=K(),e=[{d:"M1568 732L1939 184H2382L2036.5 732H1568Z",rate:-.3},{d:"M720 702L1091 154H1534L1188.5 702H720Z",rate:.15},{d:"M262 874L633 326H1076L730.5 874H262Z",rate:-.1},{d:"M-527 548L-156 0H287L-58.5 548H-527Z",rate:.35}].map(s=>({...s,fill:"white",opacity:.08}));return(s,r)=>{const c=he,g=ye,_=U,d=xe;return o(),p("div",Ge,[f(c,{viewBox:"0 0 1900 616",shapes:n(e)},null,8,["shapes"]),t("div",We,[t("section",Ye,[t("div",Xe,[r[0]||(r[0]=t("img",{src:Qe,width:"150",height:"150",loading:"lazy",alt:"Aurora Asphalt & Concrete"},null,-1)),f(g)]),t("div",Je,[t("section",et,[t("nav",null,[(o(!0),p($,null,A(n(m),a=>(o(),k(_,{key:a.footerPath,to:a.footerPath,class:"text-white block text-sm sm:text-base"},{default:S(()=>[B(h(a.name),1)]),_:2},1032,["to"]))),128))]),t("nav",null,[(o(!0),p($,null,A("secondaryNavigationItems"in s?s.secondaryNavigationItems:n(ie),a=>(o(),k(_,{key:a.path,to:a.path,class:"text-white block text-sm sm:text-base"},{default:S(()=>[B(h(a.name),1)]),_:2},1032,["to"]))),128))])]),r[1]||(r[1]=t("div",null,[t("img",{src:qe,width:"600",height:"79",loading:"lazy",alt:"Angi Super Service Award 2025",class:"h-12 w-auto mx-auto"})],-1))])]),t("section",tt,[t("p",nt," © "+h(new Date().getFullYear())+" The Aurora Group Inc. ",1),r[2]||(r[2]=t("p",{class:"order-1 md:order-2"}," Residential Bldg Contractor Lic. #BC698278. ",-1)),f(d)])])])}}});function st(){const{login:b,register:m}=R(),e=w(structuredClone(ue)),s=w(structuredClone(ce)),r=w(!1),c=w(""),g=w(!1),_=N("authModal",()=>({showing:!1,isSignup:!1})),d=async()=>
1{if(c.value="",r.value=!0,_.value.isSignup)return i();a()},a=async()=>{try{const{email:l,password:u}=s.value;await b({identifier:l.value,password:u.value}),_.value.showing=!1}catch(l){c.value=l?.error?.message,document.getElementById("auth-password")?.focus()}finally{r.value=!1}},i=async()=>{const{email:l,password:u,c_password:v}=e.value;if(u.value!==v.value){c.value="Password do not match!",r.value=!1;return}try{await m({username:l.value,email:l.value,password:u.value});const{login:L}=R();await L({identifier:l.value,password:u.value}),s.value.email.value=l.value,s.value.password.value=u.value,g.value=!0,_.value.isSignup=!1}catch{c.value="Something went wrong. Try again!"}finally{r.value=!1}},y=async()=>{_.value.isSignup=!_.value.isSignup,I(),await T(),document.getElementById("email")?.focus()},x=q(()=>_.value.isSignup?{text:"Back to",title:"Login",action:()=>y(),icon:"ri:arrow-left-long-line"}:{text:"Don't have an account?",title:"Register",action:()=>y()}),I=()=>{c.value="",r.value=!1};return{onSubmit:d,switchBtn:x,loginFormInputs:s,signupFormInputs:e,loading:r,errorMsg:c,showingAccountCreatedMsg:g}}const at=["aria-labelledby"],lt={key:0,class:"p-6 sm:p-12 text-center space-y-6"},rt=["id"],it={class:"flex items-center justify-between"},ut=["id"],ct={key:0},dt=["for"],pt={class:"flex items-center justify-between"},mt={class:"text-brand-light-blue group-hover:text-brand-blue"},ft={key:1,class:"text-red-500 text-xs font-bold text-end"},_t=E({__name:"LoginModal",setup(b){const{onSubmit:m,switchBtn:e,loginFormInputs:s,signupFormInputs:r,loading:c,errorMsg:g,showingAccountCreatedMsg:_}=st(),d=N("authModal",()=>({showing:!1,isSignup:!1}));function a(){d.value.showing=!1,_.value=!1}const i=de();function y(l){l.key==="Escape"&&a()}function x(l){document.documentElement.style.overflow=l?"hidden":"",document.getElementById("__nuxt")?.toggleAttribute("inert",l)}let I=null;return Y(async()=>{I=document.activeElement,x(!0),document.addEventListener("keydown",y),d.value.isSignup=!1,await T(),document.getElementById("auth-email")?.focus()}),O(()=>{document.removeEventListener("keydown",y),x(!1),I?.focus()}),(l,u)=>{const v=H,L=P,X=be;return o(),k(G,{to:"body"},[t("div",{class:"fixed inset-0 bg-black/20 flex overflow-y-auto overscroll-contain p-4 z-50",onClick:z(a,["stop"])},[t("div",{role:"dialog","aria-modal":"true","aria-labelledby":n(i),class:"bg-white w-full max-w-[500px] m-auto",onClick:u[2]||(u[2]=z(()=>{},["stop"]))},[n(_)?(o(),p("section",lt,[f(v,{name:"ri:checkbox-circle-line",class:"flex-shrink-0 text-green-600 text-6xl"}),t("p",{id:n(i),class:"font-bold"}," Account created successfully! ",8,rt),u[3]||(u[3]=t("p",null,"You are now logged in.",-1)),f(L,{onClick:a,label:"Continue",class:"w-fit mx-auto"})])):(o(),p("form",{key:1,class:"p-6 sm:p-12 flex flex-col gap-y-5",onSubmit:u[1]||(u[1]=z((...C)=>n(m)&&n(m)(...C),["prevent"]))},[t("section",it,[t("h2",{id:n(i),class:"font-bold text-3xl sm:text-4xl"},h(n(d).isSignup?"Signup to the Aurora Asphalt Store":"Login to Aurora Asphalt"),9,ut)]),n(d).isSignup?M("",!0):(o(),p("p",ct," Login to view your account and order history. ")),(o(!0),p($,null,A(n(d).isSignup?n(r):n(s),(C,Z)=>(o(),p("section",{key:C.label},[t("label",{for:`auth-${Z}`,class:"block mb-1 text-lg capitalize"},h(C.label),9,dt),f(X,{modelValue:C.value,"onUpdate:modelValue":J=>C.value=J,type:C.type,id:`auth-${Z}`,required:""},null,8,["modelValue","onUpdate:modelValue","type","id"])]))),128)),t("section",pt,[t("button",{class:"group flex items-center gap-1",onClick:u[0]||(u[0]=(...C)=>n(e).action&&n(e).action(...C)),type:"button"},[n(e).icon?(o(),k(v,{key:0,name:n(e).icon},null,8,["name"])):M("",!0),t("span",null,h(n(e).text),1),t("span",mt,h(n(e).title),1)]),f(L,{type:"submit",label:"Submit",class:"w-fit",loading:n(c)},null,8,["loading"])]),n(g)?(o(),p("p",ft,h(n(g)),1)):M("",!0)],32))],8,at)])])}}}),gt={class:"text-dark font-montserrat"},vt={class:"flex justify-between items-center max-w-screen-xl mx-auto py-6 px-2 flex-wrap gap-4"},$t=E({__name:"default",async setup(b){let m,e;const s=N("authModal",()=>({showing:!1})),{data:r}=([m,e]=pe(()=>_e("home-page",()=>$fetch("/api/home-page"))),m=await m,e(),m);return N("home-page-data",()=>me(r)),(c,g)=>{const _=Ce,d=Ie,a=Ae,i=Ze,y=ot,x=_t;return o(),p("div",gt,[t("header",vt,[f(_),(c._.provides[D]||c.$route).path==="/store"||(c._.provides[D]||c.$route).path.startsWith("/store/")?(o(),p($,{key:0},[f(d),f(a)],64)):(o(),k(i,{key:1}))]),t("main",null,[fe(c.$slots,"default")]),f(y),n(s).showing?(o(),k(x,{key:0})):M("",!0)])}}});
1export{$t as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.