PageSourceSearch

https://a-class-metal-roofing-master.vercel.app/_next/static/chunks/app/layout-c9cf36034cb69498.js

js a-class-metal-roofing-master.vercel.app collected 2026-10-03 06:03:16 UTC 16,033 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[185],{513:function(e,t,s){Promise.resolve().then(s.t.bind(s,4089,23)),Promise.resolve().then(s.bind(s,8847)),Promise.resolve().then(s.bind(s,4525)),Promise.resolve().then(s.bind(s,3314)),Promise.resolve().then(s.bind(s,985)),Promise.resolve().then(s.t.bind(s,8291,23))},8847:function(e,t,s){"use strict";s.r(t),s.d(t,{Providers:function(){return l}});var a=s(7437),i=s(8298);function l(e){let{children:t}=e;return(0,a.jsx)(i.f,{attribute:"class",enableSystem:!1,defaultTheme:"light",children:t})}},4525:function(e,t,s){"use strict";var a=s(7437),i=s(2265),l=s(8614),n=s(6741);t.default=()=>{let[e,t]=(0,i.useState)(!1),[s,c]=(0,i.useState)(!1),[r,o]=(0,i.useState)({necessary:!0,analytics:!1,marketing:!1});(0,i.useEffect)(()=>{localStorage.getItem("cookieConsent")||t(!0)},[]);let d=e=>{localStorage.setItem("cookieConsent",JSON.stringify(e))},x=e=>{let{onClick:t,label:s}=e;return(0,a.jsx)("button",{onClick:t,className:"bg-gradient-to-r from-blue-500 to-blue-600 text-white py-2 px-4 rounded shadow hover:from-blue-600 hover:to-blue-700 transition w-full md:w-auto","aria-label":s,children:s})};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(l.M,{children:e&&(0,a.jsx)(n.E.div,{className:"fixed bottom-0 left-0 right-0 bg-white border-t border-gray-200 p-4 shadow-lg z-50",initial:{y:100,opacity:0},animate:{y:0,opacity:1},exit:{y:100,opacity:0},children:(0,a.jsxs)("div",{className:"flex flex-col space-y-4 md:flex-row md:space-y-0 md:justify-between md:items-center",children:[(0,a.jsx)("p",{className:"text-gray-900 text-center md:text-left",children:"We use cookies to enhance your experience and improve performance."}),(0,a.jsxs)("div",{className:"flex flex-col space-y-2 md:flex-row md:space-y-0 md:space-x-4 w-full md:w-auto",children:[(0,a.jsx)(x,{onClick:()=>c(!0),label:"Preferences"}),(0,a.jsx)(x,{onClick:()=>{d({necessary:!0,analytics:!0,marketing:!0}),t(!1)},label:"Accept All"}),(0,a.jsx)(x,{onClick:()=>{d({necessary:!0,analytics:!1,marketing:!1}),t(!1)},label:"Decline All"})]})]})})}),(0,a.jsx)(l.M,{children:s&&(0,a.jsx)(n.E.div,{className:"fixed inset-0 bg-black bg-opacity-50 flex justify-center items-center z-50",initial:{opacity:0}
1,animate:{opacity:1},exit:{opacity:0},children:(0,a.jsxs)(n.E.div,{className:"bg-white rounded-lg p-6 max-w-md w-full mx-4",initial:{scale:.8,opacity:0},animate:{scale:1,opacity:1},exit:{scale:.8,opacity:0},children:[(0,a.jsx)("h2",{className:"text-lg font-semibold mb-4",children:"Cookie Preferences"}),(0,a.jsx)("p",{className:"text-sm text-gray-600 mb-4",children:"Choose which cookies you allow. Necessary cookies are required for the site to function."}),(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("label",{className:"flex items-center",children:[(0,a.jsx)("input",{type:"checkbox",checked:r.necessary,disabled:!0,className:"mr-2"}),(0,a.jsx)("span",{children:"Necessary (Required)"})]}),(0,a.jsxs)("label",{className:"flex items-center",children:[(0,a.jsx)("input",{type:"checkbox",checked:r.analytics,onChange:()=>o(e=>({...e,analytics:!e.analytics})),className:"mr-2"}),(0,a.jsx)("span",{children:"Analytics"})]}),(0,a.jsxs)("label",{className:"flex items-center",children:[(0,a.jsx)("input",{type:"checkbox",checked:r.marketing,onChange:()=>o(e=>({...e,marketing:!e.marketing})),className:"mr-2"}),(0,a.jsx)("span",{children:"Marketing"})]})]}),(0,a.jsxs)("div",{className:"flex justify-end mt-6 space-x-4",children:[(0,a.jsx)(x,{onClick:()=>c(!1),label:"Cancel"}),(0,a.jsx)(x,{onClick:()=>{d(r),t(!1),c(!1)},label:"Save Preferences"})]})]})})})]})}},3314:function(e,t,s){"use strict";var a=s(7437),i=s(29),l=s.n(i),n=s(3145),c=s(7648),r=s(2265),o=s(6498),d=s(1273);t.default=()=>{let e=new Date().getFullYear(),t=(0,r.useRef)(null);return(0,r.useEffect)(()=>{t.current&&o.p8.fromTo(t.current.children,{y:0},{y:-4,duration:.4,stagger:.08,ease:"power2.out",paused:!0})},[]),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("section",{className:"jsx-2e51441db36fb599 bg-gradient-to-r from-blue-800 to-blue-900 py-10",children:(0,a.jsxs)("div",{className:"jsx-2e51441db36fb599 container mx-auto px-4 flex flex-col md:flex-row items-center justify-between gap-6",children:[(0,a.jsx)("h2",{className:"jsx-2e51441db36fb599 text-xl md:text-2xl font-semibold text-white",children:"Ready to start your roofing project?"}),(0,a.jsx)(c.default,{href:"/contact",className:"rounded-full bg-white px-8 py-3 text-sm font-semibold text-blue-900 hover:bg-gray-100 transition",children:"Get a Free Quote"})]})}),(0,a.jsx)("footer",{className:"jsx-2e51441db36fb599 bg-gradient-to-r from-blue-800 to-blue-900 pt-20 text-white",children:(0,a.jsxs)("div",{className:"jsx-2e51441db36fb599 container mx-auto px-4",children:[(0,a.jsxs)("div",{className:"jsx-2e51441db36fb599 grid gap-14 md:grid-cols-2 lg:grid-cols-4",children:[(0,a.jsxs)("div",{className:"jsx-2e51441db36fb599",children:[(0,a.jsx)(n.default,{src:"/assets/images/logo1.png",alt:"A Class Metal Roofing",width:200,height:200,className:"mb-6 object-contain"}),(0,a.jsx)("p",{className:"jsx-2e51441db36fb599 text-sm leading-relaxed text-white/80 max-w-sm",children:"Specialist zinc, copper and steel roofing and cladding suppliers and installers."})]}),(0,a.jsxs)("div",{className:"jsx-2e51441db36fb599",children:[(0,a.jsx)("h3",{className:"jsx-2e51441db36fb599 mb-6 text-lg font-semibold",children:"Social"}),(0,a.jsxs)("div",{ref:t,className:"jsx-2e51441db36fb599 flex items-center gap-4 text-base",children:[(0,a.jsx)(c.default,{href:"https://www.facebook.com/aclassmetalroofing",className:"social-icon",children:(0,a.jsx)(d.tBk,{})}),(0,a.jsx)(c.default,{href:"https://x.com/AClassRoofing",className:"social-icon",children:(0,a.jsx)(d.LCd,{})}),(0,a.jsx)(c.default,{href:"https://www.linkedin.com/company/a-class-metal-roofing",className:"social-icon",children:(0,a.jsx)(d.BUd,{})}),(0,a.jsx)(c.default,{href:"https://g.co/kgs/JNNjKPx",className:"social-icon",children:(0,a.jsx)(d.ldW,{})})]})]}),(0,a.jsxs)("div",{className:"jsx-2e51441db36fb599",children:[(0,a.jsx)("h3",{className:"jsx-2e51441db36fb599 mb-6 text-lg font-semibold",children:"Legal"}),(0,a.jsxs)("ul",{className:"jsx-2e51441db36fb599 space-y-3 text-sm text-white/80",children:[(0,a.jsx)("li",{className:"jsx-2e51441db36fb599",children:(0,a.jsx)(c.default,{href:"/",children:"Terms of Service"})}),(0,a.jsx)("li",{className:"jsx-2e51441db36fb599",children:(0,a.jsx)(c.default,{href:"/",children:"Privacy Policy"})}),(0,a.jsx)("li",{className:"jsx-2e51441db36fb599",children:(0,a.jsx)(c.default,{href:"/",children:"Safety Policy"})})]})]}),(0,a.jsxs)("div",{className:"jsx-2e51441db36fb599",children:[(0,a.jsx)("h3",{className:"jsx-2e51441db36fb599 mb-6 text-lg font-semibold",children:"Support"}),(0,a.jsxs)("ul",{className:"jsx-2e51441db36fb599 space-y-3 text-sm text-white/80",children:[(0,a.jsx)("li",{className:"jsx-2e51441db36fb599",children:(0,a.jsx)(c.default,{href:"/contact",children:"Open Support Ticket"})}),(0,a.jsx)("li",{className:"jsx-2e51441db36fb599",children:(0,a.jsx)(c.default,{href:"/about",children:"About"})})]})]})]}),(0,a.jsx)("div",{className:"jsx-2e51441db36fb599 my-12 h-px w-full bg-gradient-to-r from-transparent via-white/30 to-transparent"}),(0,a.jsxs)("div",{className:"jsx-2e51441db36fb599 pb-8 text-center text-xs text-white/70 space-y-2",children:[(0,a.jsxs)("p",{className:"jsx-2e51441db36fb599",children:["\xa9 ",e," A Class Metal Roofing. All rights reserved."]}),(0,a.jsxs)("p",{className:"jsx-2e51441db36fb599",children:["Designed by"," ",(0,a.jsx)(c.default,{href:"https://webpulsetech.co.uk",target:"_blank",className:"hover:text-purple-300 transition",children:"WebPulse Technologies"})]})]})]})}),(0,a.jsx)(l(),{id:"2e51441db36fb599",children:".social-icon{display:-webkit-inline-box;display:-webkit-inline-flex;display:-moz-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-moz-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;
1-webkit-justify-content:center;-moz-box-pack:center;-ms-flex-pack:center;justify-content:center;width:40px;height:40px;-webkit-border-radius:9999px;-moz-border-radius:9999px;border-radius:9999px;background:rgba(255,255,255,.12);-webkit-transition:all.3s ease;-moz-transition:all.3s ease;-o-transition:all.3s ease;transition:all.3s ease}.social-icon:hover{background:white;color:#1e3a8a;-webkit-transform:translatey(-3px);-moz-transform:translatey(-3px);-ms-transform:translatey(-3px);-o-transform:translatey(-3px);transform:translatey(-3px)}"})]})}},985:function(e,t,s){"use strict";s.d(t,{default:function(){return v}});var a=s(7437),i=s(3145),l=s(7648),n=s(9376),c=s(2265),r=s(8103),o=s(2345),d=s(6741),x=s(8614),h=s(9453),m=s(9089),f=[{id:1,title:"Home",path:"/",newTab:!1},{id:2,title:"About",path:"/about",newTab:!1},{id:3,title:"Services",path:"/roofing-services",newTab:!1},{id:4,title:"Portfolio",path:"/portfolio",newTab:!1},{id:5,title:"Materials",path:"/roofing-materials",newTab:!1},{id:6,title:"Systems",path:"/roofing-systems",newTab:!1},{id:7,title:"Contact",path:"/contact",newTab:!1}],b=()=>(0,a.jsxs)("div",{className:"grid grid-cols-3 gap-2 p-4",children:[(0,a.jsx)(i.default,{src:"/assets/images/accreditations/1.webp",alt:"Image 1",width:150,height:150}),(0,a.jsx)(i.default,{src:"/assets/images/accreditations/2.webp",alt:"Image 2",width:150,height:150}),(0,a.jsx)(i.default,{src:"/assets/images/accreditations/3.webp",alt:"Image 3",width:150,height:150}),(0,a.jsx)(i.default,{src:"/assets/images/accreditations/4.webp",alt:"Image 4",width:150,height:150}),(0,a.jsx)(i.default,{src:"/assets/images/accreditations/5.webp",alt:"Image 4",width:150,height:150}),(0,a.jsx)(i.default,{src:"/assets/images/accreditations/6.webp",alt:"Image 4",width:150,height:150})]}),u=s(9778),p=s(8931),g=s(5497),j=s(9967),w=s(7223),y=s(9152);let N={Home:u.Z,About:p.Z,Services:g.Z,Portfolio:j.Z,Materials:w.Z,Systems:y.Z,Contact:h.Z};var v=()=>{let e=(0,n.usePathname)(),t=(0,o.J)(),[s,u]=(0,c.useState)(!1),[p,g]=(0,c.useState)(!1),[j,w]=(0,c.useState)(!1),y=(0,c.useRef)(0);(0,c.useEffect)(()=>{u(!1)},[e]),(0,c.useEffect)(()=>(document.body.style.overflow=s||p?"hidden":"",()=>{document.body.style.overflow=""}),[s,p]),(0,c.useEffect)(()=>{let e=()=>{let e=window.scrollY;e>y.current&&e>120?w(!0):w(!1),y.current=e};return window.addEventListener("scroll",e,{passive:!0}),()=>window.removeEventListener("scroll",e)},[]);let v=t=>e===t;return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(d.E.header,{initial:!1,animate:{y:j?"-100%":"0%"},transition:{duration:t?0:.25},className:"fixed top-0 left-0 z-50 w-full bg-gradient-to-r from-blue-900 via-blue-800 to-blue-700 shadow-xl",children:(0,a.jsx)("div",{className:"mx-auto max-w-7xl px-4",children:(0,a.jsxs)("div",{className:"flex h-[80px] items-center justify-between",children:[(0,a.jsx)(l.default,{href:"/",className:"flex items-center gap-3",children:(0,a.jsx)(i.default,{src:"/assets/images/logo1.webp",alt:"A-Class Metal Roofing",width:160,height:120,priority:!0})}),(0,a.jsxs)("nav",{className:"hidden lg:flex items-center gap-10",children:[f.map(e=>(0,a.jsxs)(l.default,{href:e.path,className:"relative text-sm font-semibold tracking-tight transition ".concat(v(e.path)?"text-white":"text-white/80 hover:text-white"),children:[e.title,(0,a.jsx)("span",{className:"absolute -bottom-2 left-0 h-[2px] w-full rounded-full bg-white transition-opacity ".concat(v(e.path)?"opacity-100":"opacity-0")})]},e.id)),(0,a.jsxs)("button",{onClick:()=>g(!0),className:"ml-8 inline-flex items-center gap-2 rounded-full bg-white px-6 py-2.5 text-sm font-semibold text-blue-800 shadow hover:bg-blue-50 transition",children:[(0,a.jsx)(h.Z,{className:"h-4 w-4"}),"Call Now"]})]}),(0,a.jsxs)("div",{className:"lg:hidden flex items-center gap-3",children:[(0,a.jsxs)("button",{onClick:()=>g(!0),className:"inline-flex items-center gap-2 rounded-full bg-white px-4 py-2 text-sm font-semibold text-blue-800 shadow",children:[(0,a.jsx)(h.Z,{className:"h-4 w-4"}),"Call"]}),(0,a.jsx)("div",{className:"rounded-full bg-white shadow",children:(0,a.jsx)(r.y,{toggled:s,toggle:u,size:22,rounded:!0})})]})]})})}),(0,a.jsx)(x.M,{children:s&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(d.E.div,{className:"fixed inset-0 z-40 bg-black/60",onClick:()=>u(!1),initial:{opacity:0}
1,animate:{opacity:1},exit:{opacity:0}}),(0,a.jsxs)(d.E.aside,{className:"fixed right-0 top-0 z-50 h-dvh w-[88%] max-w-[420px] bg-gradient-to-b from-blue-900 to-blue-700 text-white shadow-2xl",initial:{x:"100%"},animate:{x:0},exit:{x:"100%"},transition:{duration:t?0:.22},children:[(0,a.jsxs)("div",{className:"flex items-center justify-between px-5 py-4 border-b border-white/10",children:[(0,a.jsx)(i.default,{src:"/assets/images/logo1.webp",alt:"A-Class Metal Roofing",width:120,height:80}),(0,a.jsx)(r.y,{toggled:!0,toggle:u,size:22,rounded:!0})]}),(0,a.jsxs)("nav",{className:"px-5 py-6",children:[(0,a.jsx)("ul",{className:"space-y-2",children:f.map(e=>{let t=N[e.title];return(0,a.jsx)("li",{children:(0,a.jsxs)(l.default,{href:e.path,onClick:()=>u(!1),className:"flex items-center gap-3 rounded-2xl px-4 py-3 text-[16px] font-semibold transition ".concat(v(e.path)?"bg-white/15":"hover:bg-white/10"),children:[t&&(0,a.jsx)(t,{className:"h-5 w-5 opacity-80"}),e.title]})},e.id)})}),(0,a.jsx)("div",{className:"mt-6 rounded-2xl bg-white/10 p-4",children:(0,a.jsx)(b,{})}),(0,a.jsxs)("div",{className:"mt-6 flex justify-center gap-5",children:[(0,a.jsx)(l.default,{href:"https://www.instagram.com/aclassmetalroofing/",target:"_blank",children:(0,a.jsx)(m.Zf_,{className:"h-5 w-5 opacity-80 hover:opacity-100"})}),(0,a.jsx)(l.default,{href:"https://www.facebook.com/aclassmetalroofing/?locale=en_GB",target:"_blank",children:(0,a.jsx)(m.tBk,{className:"h-5 w-5 opacity-80 hover:opacity-100"})}),(0,a.jsx)(l.default,{href:"https://www.linkedin.com/company/a-class-metal-roofing?originalSubdomain=uk",target:"_blank",children:(0,a.jsx)(m.ltd,{className:"h-5 w-5 opacity-80 hover:opacity-100"})}),(0,a.jsx)(l.default,{href:"https://share.google/D9HZ643wkSssaHWyt",target:"_blank",children:(0,a.jsx)(m.ldW,{className:"h-5 w-5 opacity-80 hover:opacity-100"})})]}),(0,a.jsxs)("button",{onClick:()=>{g(!0),u(!1)},className:"mt-6 flex w-full items-center justify-center gap-2 rounded-2xl bg-white px-4 py-3 text-sm font-semibold text-blue-800 shadow",children:[(0,a.jsx)(h.Z,{className:"h-4 w-4"}),"Call Now"]})]})]})]})}),(0,a.jsx)(x.M,{children:p&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(d.E.div,{className:"fixed inset-0 bg-black bg-opacity-40 flex items-center justify-center z-50",onClick:()=>g(!1),initial:{opacity:0}
1,animate:{opacity:1},exit:{opacity:0}}),(0,a.jsx)(d.E.div,{className:"fixed inset-0 z-50 grid place-items-center px-4",initial:{opacity:0,y:10},animate:{opacity:1,y:0},exit:{opacity:0,y:10},children:(0,a.jsxs)("div",{className:"w-full max-w-[420px] rounded-xl bg-white shadow-2xl p-6",onClick:e=>e.stopPropagation(),children:[(0,a.jsx)("button",{className:"absolute top-4 right-4 text-gray-500 hover:text-gray-700",onClick:()=>g(!1),children:"✕"}),(0,a.jsx)("h2",{className:"text-xl font-semibold text-gray-800 mb-4",children:"Call Now"}),(0,a.jsx)("p",{className:"text-gray-600 mb-6",children:"Call us now to get the best service for your needs!"}),(0,a.jsxs)("div",{className:"grid gap-3",children:[(0,a.jsx)(l.default,{href:"tel:+02083044448",className:"rounded-xl px-4 py-3 text-center text-sm font-semibold text-white bg-blue-700 hover:bg-blue-800 transition",children:"Office"}),(0,a.jsx)(l.default,{href:"tel:+447830962542",className:"rounded-xl px-4 py-3 text-center text-sm font-semibold text-white bg-blue-600 hover:bg-blue-700 transition",children:"Chris"}),(0,a.jsx)(l.default,{href:"tel:+447957482391",className:"rounded-xl px-4 py-3 text-center text-sm font-semibold text-white bg-blue-500 hover:bg-blue-600 transition",children:"Lee"})]})]})})]})})]})}},8291:function(){}},function(e){e.O(0,[74,699,240,922,741,648,145,642,971,117,744],function(){return e(e.s=513)}),_N_E=e.O()}]);

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.