1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5966],{2927:(e,t,l)=>{Promise.resolve().then(l.t.bind(l,68544,19)),Promise.resolve().then(l.t.bind(l,80455,19)),Promise.resolve().then(l.t.bind(l,15783,19)),Promise.resolve().then(l.bind(l,77446)),Promise.resolve().then(l.t.bind(l,6874,23)),Promise.resolve().then(l.t.bind(l,69243,23)),Promise.resolve().then(l.bind(l,3567)),Promise.resolve().then(l.bind(l,9212)),Promise.resolve().then(l.bind(l,7504))},3567:(e,t,l)=>{"use strict";l.d(t,{default:()=>r});var s=l(95155),a=l(60046);function r(e){let{children:t,initialState:l}=e;return(0,s.jsx)(a.Y,{initialState:l,children:t})}},7011:(e,t,l)=>{"use strict";l.d(t,{A:()=>i});var s=l(95155),a=l(43203),r=l(4347),n=l(52596);let i=e=>{let{link:t,color:l,label:i="",target:o="_self",small:c=!1,srContext:d=""}=e,u=t.text||i||"Learn More";return(0,s.jsxs)(a.N5,{field:t,className:(0,n.A)("inline-flex tracking-wide justify-start gap-x-4 cursor-pointer bg-transparent text-".concat("black"===l?"text-black":"text-white"," hover:translate-x-[2px] transition ease-in-out duration-500 hover:text-gold px-0 py-0"),c?"text-base items-start":"uppercase text-xl items-center"),target:o,children:[(0,s.jsx)(r.A,{className:(0,n.A)("w-4",c?"mt-[4px]":"")}),u,d&&(0,s.jsxs)("span",{className:"sr-only",children:[" about ",d]})]})}},7504:(e,t,l)=>{"use strict";l.d(t,{default:()=>b});var s=l(95155),a=l(12115),r=l(7011),n=l(43203),i=l(20048),o=l(36046),c=l(58390),d=l(75861),u=l(43726);let m=e=>{let{dev:t}=e,[l,m]=(0,a.useState)(!1),{development_name:p,introduction:x,location:h,postcode:f,development_logo_black_version:v,feature_image:g}=t.data,b=t.plots.filter(e=>!["Reserved","Sold"].includes(e.data.plot_status)),w=b.reduce((e,t)=>{let l=parseInt(t.data.price,10);return Number.isNaN(l)?e:Math.min(e,l)},1/0),j=b.reduce((e,t)=>{let l=parseInt(t.data.price,10);return Number.isNaN(l)?e:Math.max(e,l)},-1/0);return(0,s.jsxs)("div",{children:[(0,s.jsx)(u.default,{delay:.3,translate:!0,children:(0,s.jsx)("div",{children:(0,s.jsxs)("div",{className:"mx-auto px-4 sm:px-8 lg:px-8 max-w-screen-2xl space-y-12 flex flex-col lg:flex-row justify-between gap-8",children:[(0,s.jsxs)("div",{className:"w-full lg:w-2/5 space-y-2 flex flex-col justify-between",children:[(0,s.jsxs)("div",{children:[v&&(null==v?void 0:v.url)&&(0,s.jsx)("div",{className:"mb-4",children:(0,s.jsx)(n.iu,{field:v,className:"w-[150px] h-auto"})}),(0,s.jsx)("p",{className:"text-sm mb-2",children:"Development"}),(0,s.jsx)("h2",{className:"font-semibold",children:p}),(0,s.jsxs)("div",{className:"space-y-8",children:[(0,s.jsxs)("p",{className:"text-gold font-medium text-2xl font-meno",children:[h,", ",f]}),(isFinite(w)||isFinite(j))&&(0,s.jsxs)("p",{className:"font-bold uppercase",children:["Prices from \xa3",isFinite(w)?w.toLocaleString():j.toLocaleString(),isFinite(w)&&isFinite(j)&&j>w&&(0,s.jsxs)(s.Fragment,{children:[" - ","\xa3",j.toLocaleString()]})]}),(0,s.jsx)("div",{className:"flex lg:hidden",children:(0,s.jsx)(n.iu,{field:g,className:"w-full object-cover aspect-video"})}),(0,s.jsx)(i.$,{field:x,components:{heading3:e=>{let{children:t}=e;return(0,s.jsx)("p",{children:t})}}})]})]}),(0,s.jsxs)("div",{className:"flex items-center justify-between mt-8",children:[(0,s.jsx)(r.A,{link:t,srContext:p}),(0,s.jsx)(c.default,{uid:t.uid,type:"development"})]})]}),(0,s.jsx)("div",{className:"hidden lg:flex flex-1",children:(0,s.jsx)(n.iu,{field:g,className:"w-full object-cover aspect-video"})})]})})}),t.plots.length>0&&(0,s.jsxs)("div",{className:"mt-8",children:[(0,s.jsx)("div",{className:"mx-auto px-4 sm:px-8 lg:px-8 max-w-screen-2xl",children:(0,s.jsxs)("button",{onClick:()=>m(e=>!e),className:"flex items-center gap-2 uppercase tracking-wide hover:opacity-70 transition-opacity mb-8 cursor-pointer","aria-expanded":l,children:[(0,s.jsx)("span",{children:l?"Hide Plots at ".concat(p):"View ".concat(b.length," Available Plot").concat(b.length>1?"s":""," at ").concat(p)}),(0,s.jsx)("svg",{className:"w-4 h-4 transition-transform duration-300 ease-in-out",style:{transform:l?"rotate(180deg)":"rotate(0deg)"},fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19 9l-7 7-7-7"})})]})}),(0,s.jsx)("div",{className:"grid transition-[grid-template-rows,opacity] duration-500 ease-in-out",style:{gridTemplateRows:l?"1fr":"0fr",opacity:+!!l},children:(0,s.jsx)("div",{className:"overflow-hidden",children:(0,s.jsx)("div",{className:"pt-4 lg:mb-32 md:mb-16 mb-8",children:(0,s.jsx)(d.A,{id:t.id,data:t,hideSold:!0})})})})]}),(0,s.jsx)(o.A,{size:"widest",children:(0,s.jsx)("div",{className:"bg-black w-full h-[1px] lg:mb-32 md:mb-16 mb-8"})})]})};var p=l(52200),x=l(91897),h=l(70887);let f={width:"100%",height:"100vh"},v=e=>{let{developments:t}=e,{isLoaded:l}=(0,p.RH)({googleMapsApiKey:"AIzaSyAfL3O_6u_iWJhYJRxOa__q-_jiB6nfe0E"}),[r,i]=(0,a.useState)(null),[c,d]=(0,a.useState)(null),[u,m]=(0,a.useState)({lat:51.5,lng:-.1});return((0,a.useEffect)(()=>{var e;if(t.length&&(null==(e=t[0].data)?void 0:e.geolocation)){let e=t[0].data.geolocation;m({lat:e.latitude,lng:e.longitude})}},[t]),l)?(0,s.jsx)(o.A,{size:"widest",children:(0,s.jsx)(p.u6,{mapContainerStyle:f,center:u,zoom:9,onClick:()=>d(null),options:{styles:x.A,disableDefaultUI:!0,zoomControl:!0,gestureHandling:"greedy",draggableCursor:"pointer"},children:t.map(e=>{let t=e.data.geolocation;return t?(0,s.jsx)(p.X0,{position:{lat:t.latitude,lng:t.longitude},icon:{url:"/MapPin.svg",scaledSize:r===e.id?new window.google.maps.Size(50,50):new window.google.maps.Size(40,40)},onMouseOver:()=>i(e.id),onMouseOut:()=>i(null),onClick:()=>d(t=>t===e.id?null:e.id),children:c===e.id&&(0,s.jsx)(p.i3,{position:{lat:t.latitude,lng:t.longitude},mapPaneName:p.i3.OVERLAY_MOUSE_TARGET,children:(0,s.jsxs)("div",{className:"space-y-4 max-w-[300px] bg-white/90 absolute left-[-320px] translate-y-[-50%] py-8 px-8 border-white pointer-events-auto",children:[(0,s.jsx)("p",{className:"uppercase text-3xl font-semibold",children:e.data.development_name}),(0,s.jsxs)("p",{className:"font-meno text-gold text-xl font-normal",children:[e.data.location,", ",e.data.postcode]}),(0,s.jsxs)("p",{className:"text-xl font-semibold",children:["Prices From ",(0,h.A)(e.data.prices_from)]}),(0,s.jsx)(n.iu,{field:e.data.feature_image,className:"aspect-sqaure w-full"}),(0,s.jsx)(n.N5,{field:e,children:"More Details"})]})})},e.id):null})})}):(0,s.jsx)(o.A,{size:"widest",className:"text-center",children:(0,s.jsx)("p",{children:"Loading Map..."})})};var g=l(60046);function b(e){let{enriched:t}=e,{searchStateParams:l}
1=(0,g.S)(),a=(null==l?void 0:l.view)||"list";return 0===t.length?(0,s.jsx)("p",{className:"text-center max-w-7xl mx-auto text-2xl",children:"Sorry, we could not find any results for your search. Please try updating your filters."}):"map"===a?(0,s.jsx)(v,{developments:t}):t.map(e=>(0,s.jsx)(m,{dev:e},e.id))}},9212:(e,t,l)=>{"use strict";l.d(t,{A:()=>x,PropertySearchFormWithContext:()=>h});var s=l(95155),a=l(12115),r=l(35695),n=l(52596),i=l(48555),o=l(57208),c=l(69994),d=l(39883),u=l(60046);let m=e=>"\xa3".concat(e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","));function p(e){let{layout:t="col",type:l,toggleSearch:u,onSetSearchStateParams:p}=e,x=(0,a.useRef)(null),h=(0,r.useSearchParams)(),f=(0,r.useRouter)(),[v,g]=(0,a.useState)(""),[b,w]=(0,a.useState)(""),[j,y]=(0,a.useState)(""),N=(0,a.useMemo)(()=>(()=>{let e=[];for(let t=2e5;t<=2e6;t+=5e4)e.push(t);return e})(),[]),[k,A]=(0,a.useState)(""),[S,E]=(0,a.useState)([]),[P,C]=(0,a.useState)(null),[M,T]=(0,a.useState)(!1),[I,L]=(0,a.useState)("list"),[R,_]=(0,a.useState)("Search");(0,a.useEffect)(()=>{let e=h.get("location"),t=h.get("placeId"),l=h.get("lat"),s=h.get("lng"),a=h.get("bedrooms"),r=h.get("priceFrom"),n=h.get("priceTo"),i=h.get("view");(e||a||r||n)&&_("Update"),e&&l&&s&&t&&(A(e),C({label:e,placeId:t,lat:parseFloat(l),lng:parseFloat(s)}),T(!0)),a&&g(a),r&&w(r),n&&y(n),i&&L(i)},[]),(0,a.useEffect)(()=>{if(k.length<2||M)return;let e=new AbortController;return(async()=>{let t=await fetch("/api/location-suggest?q=".concat(encodeURIComponent(k)),{signal:e.signal});E(await t.json())})().catch(()=>{}),()=>e.abort()},[k,M]);let z=async e=>{if(e.preventDefault(),!P)return;let t=await fetch("/api/geocode?place_id=".concat(P.placeId)),l=await t.json();if(!(null==l?void 0:l.lat)||!(null==l?void 0:l.lng))return;p&&p({location:P.label,geolocation:{lat:l.lat,lng:l.lng},bedrooms:v,priceFrom:b,priceTo:j,view:I});let s=x.current||I||"list";x.current=null,f.push("/find-a-home?location=".concat(encodeURIComponent(k),"&placeId=").concat(P.placeId,"&lat=").concat(l.lat,"&lng=").concat(l.lng,"&bedrooms=").concat(v,"&priceFrom=").concat(b,"&priceTo=").concat(j,"&view=").concat(s))};return(0,s.jsxs)("div",{children:[u&&(0,s.jsx)("button",{className:"relative top-0 left-1/2 translate-y-[50%] -translate-x-[50%] block xl:hidden z-50 bg-gold rounded-full p-2 cursor-pointer outline-0 hover:outline-2 transition ease-in-out duration-300","aria-label":"Toggle search",onClick:u,type:"button",children:(0,s.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor",className:"size-4",children:(0,s.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 18 18 6M6 6l12 12"})})}),(0,s.jsxs)("form",{onSubmit:z,className:(0,n.A)("bg-gold-45 backdrop-blur-lg p-6 md:p-8 border border-white/30 text-white w-full relative","row"===t?"grid grid-row-4 lg:grid-cols-4 space-y-4 lg:space-y-0 lg:space-x-8":"space-y-4 md:space-y-6"),children:[(0,s.jsxs)("div",{className:"relative",children:[(0,s.jsx)("label",{className:"block text-md mb-3",htmlFor:"location",children:"Location"}),(0,s.jsxs)("div",{className:"relative w-full",children:[(0,s.jsx)(o.A,{className:"w-5 h-5 text-white absolute left-3 top-1/2 -translate-y-1/2 pointer-events-none"}),(0,s.jsx)("input",{id:"location",type:"text",placeholder:"e.g. London",value:k,onChange:e=>{A(e.target.value),T(!1)},className:"w-full px-4 pl-10 py-2 border border-white/40 bg-transparent text-white placeholder-white/70 focus:outline-none focus:ring-2 focus:ring-white/40"})]}),S.length>0&&(0,s.jsx)("ul",{className:"absolute z-10 bg-white text-black mt-1 w-full border border-gray-300 max-h-60 overflow-y-auto shadow-md",children:S.map((e,t)=>(0,s.jsx)("li",{onMouseDown:()=>{C(e),A(e.label),E([]),T(!0)},className:"px-4 py-2 hover:bg-gray-100 cursor-pointer",children:e.label},"".concat(e.placeId||e.label,"-").concat(t)))})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("label",{className:"block text-md mb-3",htmlFor:"bedrooms",children:"Minimum Bedrooms"}),(0,s.jsxs)("div",{className:"relative w-full",children:[(0,s.jsx)(c.A,{className:"w-5 h-5 text-white absolute left-3 top-1/2 -translate-y-1/2 pointer-events-none"}),(0,s.jsxs)("select",{id:"bedrooms","aria-label":"Minimum Bedrooms",value:v,onCh
1ange:e=>g(e.target.value),className:"w-full pl-10 px-4 py-2 border border-white/40 bg-transparent text-white appearance-none focus:outline-none focus:ring-2 focus:ring-white/40",children:[(0,s.jsx)("option",{value:"",children:"Select"}),[1,2,3,4,5,6].map(e=>(0,s.jsx)("option",{value:e,className:"text-black",children:e},e))]})]})]}),(0,s.jsxs)("div",{children:[(0,s.jsx)("label",{className:"block text-md mb-3",children:"Price"}),(0,s.jsxs)("div",{className:"flex space-x-2",children:[(0,s.jsxs)("select",{"aria-label":"Price from",value:b,onChange:e=>{w(e.target.value),j&&parseInt(e.target.value)>parseInt(j)&&y("")},className:"w-1/2 px-4 py-2 border border-white/40 bg-transparent text-white appearance-none focus:outline-none focus:ring-2 focus:ring-white/40",children:[(0,s.jsx)("option",{value:"",children:"\xa3 From"}),N.map(e=>(0,s.jsx)("option",{value:e,className:"text-black",children:m(e)},e))]}),(0,s.jsxs)("select",{"aria-label":"Price to",value:j,onChange:e=>y(e.target.value),className:"w-1/2 px-4 py-2 border border-white/40 bg-transparent text-white appearance-none focus:outline-none focus:ring-2 focus:ring-white/40",children:[(0,s.jsx)("option",{value:"",children:"\xa3 To"}),N.filter(e=>!b||e>=parseInt(b)).map(e=>(0,s.jsx)("option",{value:e,className:"text-black",children:m(e)},e))]})]})]}),(0,s.jsxs)("div",{className:(0,n.A)("flex space-x-4","row"===t?"items-end justify-end":"items-center justify-between"),children:[(0,s.jsxs)("button",{type:"submit",disabled:!P,className:"px-4 py-3 flex items-center space-x-2 transition cursor-pointer ".concat(P?"bg-white text-black hover:bg-gray-100":"bg-white/50 text-gray-500 cursor-not-allowed"),children:[(0,s.jsx)("span",{className:"font-medium",children:"row"===t?R:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"hidden md:block",children:"FIND YOUR DREAM HOME"}),(0,s.jsx)("span",{className:"block md:hidden",children:"SEARCH"})]})}),(0,s.jsx)(i.A,{className:"w-4"})]}),(0,s.jsx)("button",{type:"button",className:"min-w-12 overflow-hidden relative border border-white py-2 px-4 hover:bg-white/20 transition cursor-pointer flex justify-end items-center space-x-2 group transition-all duration-500 ease-in-out ".concat("map"===I?"bg-white/50":""),"aria-label":"Open map search",onClick:e=>{if("home"===l){var t;x.current="map",null==(t=e.currentTarget.closest("form"))||t.requestSubmit()}else console.log("Toggling view from",I),L(e=>"map"===e?"list":"map"),p&&p(e=>({...e,view:"map"===e.view?"list":"map"}))},children:(0,s.jsx)(d.A,{className:"w-6"})})]})]})]})}function x(e){return(0,s.jsx)(p,{...e,onSetSearchStateParams:null})}function h(e){let{setSearchStateParams:t}=(0,u.S)();return(0,s.jsx)(p,{...e,onSetSearchStateParams:t})}},13147:(e,t,l)=>{"use strict";l.d(t,{C_:()=>s,PK:()=>o,Tv:()=>d,ZA:()=>c,ZN:()=>i,m_:()=>r,qQ:()=>a,wN:()=>n});var s=class extends Error{url;response;constructor(e="An invalid API response was returned",t,l){super(e),this.url=t,this.response=l}},a=class extends s{},r=class extends s{},n=class extends r{},i=class extends s{},o=class extends a{},c=class extends a{},d=class extends a{}},20048:(e,t,l)=>{"use strict";l.d(t,{$:()=>i});var s=l(95155),a=l(38441),r=l(7011);let n={heading1:e=>{let{children:t}=e;return(0,s.jsx)("h1",{children:t})},heading2:e=>{let{children:t}=e;return(0,s.jsx)("h2",{children:t})},heading3:e=>{let{children:t}=e;return(0,s.jsx)("h3",{children:t})},heading4:e=>{let{children:t}=e;return(0,s.jsx)("h4",{children:t})},paragraph:e=>{let{children:t}=e;return(0,s.jsx)("p",{children:t})},oList:e=>{let{children:t}=e;return(0,s.jsx)("ol",{className:"mb-7 pl-4 last:mb-0 md:pl-6",children:t})},oListItem:e=>{let{children:t}=e;return(0,s.jsx)("li",{className:"mb-1 list-decimal pl-1 last:mb-0 md:pl-2",children:t})},list:e=>{let{children:t}=e;return(0,s.jsx)("ul",{className:"mb-7 pl-4 last:mb-0 md:pl-6",children:t})},listItem:e=>{let{children:t}=e;return(0,s.jsx)("li",{className:"mb-4 list-disc pl-1 last:mb-0 md:pl-2",children:t})},preformatted:e=>{let{children:t}=e;return(0,s.jsx)("pre",{className:"mb-7 rounded bg-slate-100 p-4 text-sm last:mb-0 md:p-8 md:text-lg",children:(0,s.jsx)("code",{children:t})})},strong:e=>{let{children:t}=e;return(0,s.jsx)("strong",{className:"font-bold",children:t})},hyperlink:e=>{let{children:t,node:l}=e;return(0,s.jsx)(r.A,{link:l.data,label:t})},label:e=>{let{children:t,node:l}=e,a=l.data.label||"label";return"underlined"===a?(0,s.jsxs)("span",{className:"inline-flex flex-col items-center",children:[(0,s.jsx)("span",{className:"underline-label",children:t}),(0,s.jsx)("span",{className:"bg-white h-[1px] w-[85%] top-[-7px] block"})]}):(0,s.jsx)("span",{className:"label-".concat(a),children:t})}};
1function i(e){let{components:t,...l}=e;return(0,s.jsx)(a.$,{components:{...n,...t},...l})}},25610:(e,t,l)=>{"use strict";l.d(t,{db:()=>o,j:()=>i});var s=l(23915),a=l(24903),r=l(1834);let n=(0,s.Dk)().length?(0,s.Sx)():(0,s.Wp)({apiKey:"AIzaSyBSHEIDpj-0qsmUOR-fLOrMRAwVHjKp9Ik",authDomain:"city-and-country-cfd72.firebaseapp.com",projectId:"city-and-country-cfd72",storageBucket:"city-and-country-cfd72.firebasestorage.app",messagingSenderId:"1008402620667",appId:"1:1008402620667:web:c0d944199341942190d05e",measurementId:"G-X56B98M7K3"}),i=(0,a.xI)(n),o=(0,r.aU)(n)},35169:(e,t,l)=>{"use strict";l.d(t,{A:()=>s});let s=(0,l(19946).A)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},36046:(e,t,l)=>{"use strict";l.d(t,{A:()=>n});var s=l(95155),a=l(52596);let r={full:"max-w-none",three:"max-w-3xl",four:"max-w-4xl",five:"max-w-5xl",six:"max-w-6xl",seven:"max-w-7xl",widest:"max-w-screen-2xl"},n=e=>{let{children:t,className:l,size:n="full"}=e;return(0,s.jsx)("div",{className:(0,a.A)("mx-auto w-full px-4 sm:px-8 lg:px-8",r[n],l),children:t})}},39883:(e,t,l)=>{"use strict";l.d(t,{A:()=>a});var s=l(12115);let a=s.forwardRef(function(e,t){let{title:l,titleId:a,...r}=e;return s.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":a},r),l?s.createElement("title",{id:a},l):null,s.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M9 6.75V15m6-6v8.25m.503 3.498 4.875-2.437c.381-.19.622-.58.622-1.006V4.82c0-.836-.88-1.38-1.628-1.006l-3.869 1.934c-.317.159-.69.159-1.006 0L9.503 3.252a1.125 1.125 0 0 0-1.006 0L3.622 5.689C3.24 5.88 3 6.27 3 6.695V19.18c0 .836.88 1.38 1.628 1.006l3.869-1.934c.317-.159.69-.159 1.006 0l4.994 2.497c.317.158.69.158 1.006 0Z"}))})},43726:(e,t,l)=>{"use strict";l.r(t),l.d(t,{default:()=>n});var s=l(95155),a=l(93084),r=l(8018);function n(e){let{children:t,delay:l=0,translate:n=!0}=e,i=(0,a.I)(),o=i?void 0:{opacity:0,...n?{y:50}:{}},c=i?void 0:{opacity:1,...n?{y:0}:{}};return(0,s.jsx)(r.P.section,{initial:o,whileInView:c,viewport:{once:!0,amount:.2},transition:{duration:.5,ease:"easeOut",delay:l},children:t})}},48555:(e,t,l)=>{"use strict";l.d(t,{A:()=>a});var s=l(12115);let a=s.forwardRef(function(e,t){let{title:l,titleId:a,...r}=e;return s.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":a},r),l?s.createElement("title",{id:a},l):null,s.createElement("path",{fillRule:"evenodd",d:"M10.5 3.75a6.75 6.75 0 1 0 0 13.5 6.75 6.75 0 0 0 0-13.5ZM2.25 10.5a8.25 8.25 0 1 1 14.59 5.28l4.69 4.69a.75.75 0 1 1-1.06 1.06l-4.69-4.69A8.25 8.25 0 0 1 2.25 10.5Z",clipRule:"evenodd"}))})},56702:(e,t,l)=>{"use strict";l.d(t,{UIOverlayProvider:()=>i,o:()=>o});var s=l(95155),a=l(12115),r=l(35695);let n=(0,a.createContext)(null);function i(e){let{children:t}=e,[l,i]=(0,a.useState)(!1),[o,c]=(0,a.useState)(!1),d=(0,r.usePathname)();return(0,a.useEffect)(()=>(document.body.classList.toggle("overflow-hidden",l),()=>document.body.classList.remove("overflow-hidden")),[l]),(0,a.useEffect)(()=>{i(!1),c(!1)},[d]),(0,s.jsx)(n.Provider,{value:{menuOpen:l,userAuthOpen:o,openMenu:()=>i(!0),closeMenu:()=>i(!1),toggleMenu:()=>i(e=>!e),showAuth:()=>{i(!0),c(!0)},hideAuth:()=>c(!1),closeAll:()=>{i(!1),c(!1)},setMenuOpen:i,setUserAuthOpen:c},children:t})}function o(){let e=(0,a.useContext)(n);if(!e)throw Error("useUIOverlay must be used within UIOverlayProvider");return e}},57208:(e,t,l)=>{"use strict";l.d(t,{A:()=>a});var s=l(12115);let a=s.forwardRef(function(e,t){let{title:l,titleId:a,...r}=e;return s.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":a},r),l?s.createElement("title",{id:a},l):null,s.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M15 10.5a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z"}),s.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1 1 15 0Z"}))})},58390:(e,t,l)=>{"use strict";l.d(t,{default:()=>m});var s=l(95155),a=l(12115),r=l(25610),n=l(1834),i=l(35695),o=l(24903),c=l(56702),d=l(99949),u=l(38984);function m(e){let{uid:t,type:l,label:m=null,classes:p,makeWhite:x=!1}=e,[h,f]=(0,a.useState)(!1),[v,g]=(0,a.useState)(null),[b,w]=(0,a.useState)(!1);(0,i.useRouter)();let{showAuth:j}=(0,c.o)(),y=x?"text-white":"text-gold";(0,a.useEffect)(()=>{let e=(0,o.hg)(r.j,e=>g(e));return()=>e()},[]),(0,a.useEffect)(()=>{v&&t&&N(v.uid)},[t,v]);let N=async e=>{if(t&&e)try{let l=(0,n.H9)(r.db,"users",e,"favourites",t),s=await (0,n.x7)(l);f(s.exists())}catch(e){console.error("Error checking favourite:",e)}},k=async()=>
1{if(!v)return void j();let e=(0,n.H9)(r.db,"users",v.uid,"favourites",t);try{h?(await (0,n.kd)(e),f(!1)):(await (0,n.BN)(e,{uid:t,type:l,addedAt:(0,n.O5)()}),f(!0),w(!0),setTimeout(()=>w(!1),350))}catch(e){console.error("Toggle favourite failed:",e)}};return(0,s.jsxs)("div",{className:p||"flex items-center gap-4",children:[(0,s.jsx)("button",{onClick:k,className:"cursor-pointer relative inline-block w-6 h-6","aria-label":"Toggle Favourite","aria-pressed":h,children:h?(0,s.jsxs)("span",{className:"relative inline-block w-6 h-6",children:[(0,s.jsx)("span",{className:"absolute inset-0 rounded-full ".concat(x?"bg-white/40":"bg-gold/40"," pointer-events-none ").concat(b?"animate-ping":"hidden")}),(0,s.jsx)(u.A,{className:"relative z-10 ".concat(y," w-6 h-6 transition-transform duration-200 ease-out ").concat(b?"scale-125":"scale-100")})]}):(0,s.jsxs)("span",{className:"relative inline-block w-6 h-6 group","aria-hidden":"true",children:[(0,s.jsx)(d.A,{className:"absolute inset-0 w-6 h-6 ".concat(y," transition-opacity duration-300 ease-in-out opacity-100 group-hover:opacity-0")}),(0,s.jsx)(u.A,{className:"absolute inset-0 w-6 h-6 ".concat(y," transition-opacity duration-300 ease-in-out opacity-0 group-hover:opacity-100")})]})}),m&&(0,s.jsx)("p",{children:m})]})}},60046:(e,t,l)=>{"use strict";l.d(t,{S:()=>i,Y:()=>n});var s=l(95155),a=l(12115);let r=(0,a.createContext)(null);function n(e){let{children:t,initialState:l}=e,[n,i]=(0,a.useState)(l||{location:"",geolocation:null,bedrooms:"",priceFrom:"",priceTo:"",view:"list"});return(0,s.jsx)(r.Provider,{value:{searchStateParams:n,setSearchStateParams:i},children:t})}let i=()=>(0,a.useContext)(r)},66995:(e,t,l)=>{"use strict";l.d(t,{e:()=>s});let s=e=>/^[a-zA-Z0-9][-a-zA-Z0-9]{2,}[a-zA-Z0-9]$/.test(e)},69994:(e,t,l)=>{"use strict";l.d(t,{A:()=>a});var s=l(12115);let a=s.forwardRef(function(e,t){let{title:l,titleId:a,...r}=e;return s.createElement("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:1.5,stroke:"currentColor","aria-hidden":"true","data-slot":"icon",ref:t,"aria-labelledby":a},r),l?s.createElement("title",{id:a},l):null,s.createElement("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m2.25 12 8.954-8.955c.44-.439 1.152-.439 1.591 0L21.75 12M4.5 9.75v10.125c0 .621.504 1.125 1.125 1.125H9.75v-4.875c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125V21h4.125c.621 0 1.125-.504 1.125-1.125V9.75M8.25 21h8.25"}))})},70887:(e,t,l)=>{"use strict";l.d(t,{A:()=>s});let s=e=>e?"\xa3".concat(Number(e).toLocaleString()):"Any"},75861:(e,t,l)=>{"use strict";l.d(t,{A:()=>f});var s=l(95155),a=l(12115),r=l(27677),n=l(97469);l(2252),l(59408);var i=l(52596),o=l(43203);let c=(0,l(19946).A)("bed",[["path",{d:"M2 4v16",key:"vw9hq8"}],["path",{d:"M2 8h18a2 2 0 0 1 2 2v10",key:"1dgv2r"}],["path",{d:"M2 17h20",key:"18nfp3"}],["path",{d:"M6 8v9",key:"1yriud"}]]);var d=l(58390),u=l(70887);let m=e=>{var t,l;let{plot:a}=e,r=null!=(l=null==a?void 0:a.featured_home)?l:a;if(!r||!r.data)return null;let{plot_name:n,plot_number:i,number_of_bedrooms:m,feature_image:p,price:x}=r.data;return(0,s.jsxs)("div",{className:"min-w-[220px]",children:[(0,s.jsx)(o.N5,{field:r,className:"group",children:(0,s.jsxs)("div",{className:"aspect-[4/3] overflow-hidden mb-3",children:[(null==(t=a.data)?void 0:t.plot_status)==="Ready to move into"&&(0,s.jsx)("div",{className:"absolute z-10 bg-gold text-white px-4 py-2 text-md font-medium top-8 left-8 up
1percase",children:"Ready to move into"}),(0,s.jsx)(o.iu,{field:p,className:"w-full h-full object-cover transition ease-in-out duration-300 group-hover:scale-[1.01]"})]})}),(0,s.jsxs)("div",{className:"flex flex-col space-y-4 mt-8",children:[(0,s.jsxs)("div",{className:"flex justify-between",children:[(0,s.jsxs)("div",{className:"flex text-xl font-medium",children:["Home ",i]}),(0,s.jsx)("div",{children:(0,s.jsx)(d.default,{uid:r.uid,type:"plot"})})]}),(0,s.jsxs)("div",{className:"flex justify-between",children:[(0,s.jsxs)("div",{className:"max-w-1/3 md:max-w-2/3",children:[(0,s.jsx)(o.N5,{field:r,className:"font-europa text-md md:text-xl lg:text-2xl uppercase font-normal cursor-pointer hover:text-gold transition ease-in-out duration-300",children:n}),x&&(0,s.jsx)("p",{className:"font-europa text-md md:text-xl uppercase font-normal cursor-pointer",children:(0,u.A)(x)})]}),(0,s.jsx)("div",{children:(0,s.jsxs)("div",{className:"flex items-center gap-6",children:[(0,s.jsx)(c,{className:"text-gold",strokeWidth:"3",size:"30"}),(0,s.jsxs)("p",{className:"font-normal text-xl",children:[m," beds"]})]})})]})]})]})};var p=l(35169),x=l(92138),h=l(36046);let f=e=>{let{id:t,data:l,showTitle:o=!1,orderBy:c="asc",hideSold:d=!1}=e,u=(0,a.useMemo)(()=>{var e;let t=e=>!(e=>{var t,l;let s=(null!=(l=null==e||null==(t=e.data)?void 0:t.plot_status)?l:"").toString().trim().toLowerCase();return!!s&&(d?"sold"===s||"reserved"===s:"sold"===s)})(e),s=(e,t)=>{var l,s;let a=Number(null==e||null==(l=e.data)?void 0:l.price),r=Number(null==t||null==(s=t.data)?void 0:s.price),n=Number.isFinite(a),i=Number.isFinite(r);return n||i?n?i?a-r:-1:1:0},a=e=>"asc"===c?[...e].sort(s):e;if(Array.isArray(l)){let e=l.filter(e=>e&&e.featured_home).map(e=>e.featured_home).filter(t);return a(l.every(e=>{var t,l;return(null==(t=null!=(l=null==e?void 0:e.featured_home)?l:e)?void 0:t.id)!=null})?l.filter(t):e)}return a((null!=(e=null==l?void 0:l.plots)?e:[]).filter(t))},[l,c,d]),f=(0,a.useRef)(null),v=(0,a.useRef)(null),g=u.length>3;return(0,s.jsxs)("div",{className:"mt-12",children:[(0,s.jsx)(h.A,{size:"widest",children:(0,s.jsxs)("div",{className:(0,i.A)("flex items-center mb-8",o?"justify-between":"justify-end"),children:[o&&(0,s.jsxs)("div",{children:[(0,s.jsx)("h3",{className:"text-gold mb-1",children:"Your new home"}),(0,s.jsx)("h2",{className:"text-3xl font-semibold",children:"Featured Homes"})]}),g&&(0,s.jsxs)("div",{className:"flex gap-4",children:[(0,s.jsx)("button",{ref:f,"aria-label":"Previous",className:"group w-16 h-16 border border-gold rounded-full flex items-center justify-center text-gold transition cursor-pointer",children:(0,s.jsx)(p.A,{className:"size-8 transition-all duration-500 ease-in-out group-hover:-translate-x-1"})}),(0,s.jsx)("button",{ref:v,"aria-label":"Next",className:"group w-16 h-16 border border-gold rounded-full flex items-center justify-center text-gold transition cursor-pointer",children:(0,s.jsx)(x.A,{className:"size-8 transition-all duration-500 ease-in-out group-hover:translate-x-1"})})]})]})}),(0,s.jsx)("div",{className:(0,i.A)("overflow-hidden",u.length>3&&"xl:pl-[var(--container-padding)] md:ml-8 lg:ml-8 xl:ml-8 px-4 md:px-0",u.length<=3&&"px-4 md:px-8 max-w-screen-2xl mx-auto"),children:(0,s.jsx)(r.RC,{modules:[n.Vx],slidesPerView:1,centeredSlides:!0,centeredSlidesBounds:!0,spaceBetween:16,grabCursor:!0,watchOverflow:!0,onBeforeInit:e=>{e.params.navigation={...e.params.navigation||{},enabled:g,prevEl:f.current,nextEl:v.current}},onInit:e=>{e.params.navigation.prevEl=f.current,e.params.navigation.nextEl=v.current,e.navigation.destroy(),e.navigation.init(),e.navigation.update()},breakpoints:{768:{centeredSlides:!1,centeredSlidesBounds:!1,slidesPerView:1.5,spaceBetween:32},1024:{slidesPerView:2,spaceBetween:48},1280:{slidesPerView:3,spaceBetween:64}},children:u.map(e=>(0,s.jsx)(r.qr,{children:(0,s.jsx)(m,{plot:e})},e.id))})})]})}},77446:(e,t,l)=>{"use strict";l.d(t,{PrismicToolbar:()=>n});var s=l(12115),a=l(13147),r=l(66995);let n=e=>{let{repositoryName:t,onPreviewUpdate:l,onPreviewEnd:n}=e,i=(e=>{if((0,r.e)(e))return`https://static.cdn.prismic.io/prismic.js?new=true&repo=${e}`;throw new a.C_(`An invalid Prismic repository name was given: ${e}`,void 0,void 0)})(t),o=(0,s.useRef)(l);o.current=l;let c=(0,s.useRef)(n);return c.current=n,(0,s.useEffect)(()=>
1{if(!document.querySelector('script[src="'.concat(i,'"]'))){let e=document.createElement("script");e.src=i,e.defer=!0,e.dataset.prismicToolbar="",e.dataset.repositoryName=t,e._evaluateScript=!1,document.body.appendChild(e)}},[t,i]),(0,s.useEffect)(()=>{let e=new AbortController;return window.addEventListener("prismicPreviewUpdate",e=>{var t;return null==(t=o.current)?void 0:t.call(o,e)},{signal:e.signal}),window.addEventListener("prismicPreviewEnd",e=>{var t;return null==(t=c.current)?void 0:t.call(c,e)},{signal:e.signal}),()=>e.abort()},[]),null}},91897:(e,t,l)=>{"use strict";l.d(t,{A:()=>s});let s=[{elementType:"geometry",stylers:[{color:"#efefef"}]},{elementType:"labels.text.fill",stylers:[{color:"#333333"}]},{elementType:"labels.text.stroke",stylers:[{color:"#ffffff"}]},{featureType:"administrative",elementType:"geometry.stroke",stylers:[{color:"#eeeeee"}]},{featureType:"poi",elementType:"geometry",stylers:[{color:"#eeeeee"}]},{featureType:"road",elementType:"geometry",stylers:[{color:"#ffffff"}]},{featureType:"road",elementType:"labels.text.fill",stylers:[{color:"#efefef"}]},{featureType:"road",elementType:"labels.text.stroke",stylers:[{color:"#efefef"}]},{featureType:"water",elementType:"geometry",stylers:[{color:"#e1e1e1"}]},{featureType:"road.highway",elementType:"labels.icon",stylers:[{visibility:"off"}]},{featureType:"road.arterial",elementType:"labels.icon",stylers:[{visibility:"off"}]},{featureType:"poi",stylers:[{visibility:"off"}]}]},92138:(e,t,l)=>{"use strict";l.d(t,{A:()=>s});let s=(0,l(19946).A)("arrow-right",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]])},93084:(e,t,l)=>{"use strict";l.d(t,{I:()=>n});var s=l(69050),a=l(64917),r=l(12115);function n(){s.r.current||(0,a.Uu)();let[e]=(0,r.useState)(s.O.current);return e}}},e=>{e.O(0,[4213,8354,1823,6084,2693,4134,5690,6196,822,643,8018,8441,5964,7358],()=>e(e.s=2927)),_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.