1"use strict";(self.webpackChunktheme_boilerplate=self.webpackChunktheme_boilerplate||[]).push([[6702],{6702:function(e,t,r){r.r(t),r.d(t,{default:function(){return S}});var n=r(7294),a=r(7754),o=r(6212),l=r(8668),c=r(2134),i=r(9223),u=r(5872);function s(e){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s(e)}function f(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function m(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?f(Object(r),!0).forEach((function(t){var n,a,o,l;n=e,a=t,o=r[t],l=function(e,t){if("object"!=s(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!=s(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(a),(a="symbol"==s(l)?l:String(l))in n?Object.defineProperty(n,a,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[a]=o})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):f(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var p=function(e){var t=e.fragment,r=e.channel,a=e.pageSize,s=e.pageNumber,f=e.setPageNumber,p=e.cardPlaceholders,d=e.selectedBranch;if(!t)return null;var b=(0,n.useRef)(null),y=(0,o.Z)({fragment:t,channel:r,count:a,pageNumber:s,branchId:null==d?void 0:d.id}),v=y.loading,h=y.foundProperties,g=y.pagination;return v?n.createElement(i.Z,{cardPlaceholders:p}):h&&0!==h.length?n.createElement("div",{className:"standalone-property-grid__grid",ref:b},null==h?void 0:h.map((function(e){return n.createElement(c.Z,{fullWidth:!0,removeAddressMargin:!0,data:m(m({},e),{},{address:e.displayAddress,propertyUrl:e.url,mainPropertyPhoto:e.photo?(0,l.Z)(e.photo,600):null,propertyType:e.type,priceValue:e.priceWithoutQualifier},"sales"!==r?{rentPw:e.rent_pw}:{}),key:e.property_id})})),g&&n.createElement(u.Z,{channel:r,pagination:g,setPageNumber:f,scrollToRef:b,selectedBranch:d})):n.createElement("div",{className:"standalone-property-grid__empty"},n.createElement("p",null,"No properties found."))},d=r(6419),b=r(3897),y=r(9652);function v(e){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v(e)}function h(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function g(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o,l,c=[],i=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;i=!1}else for(;!(i=(n=o.call(r)).done)&&(c.push(n.value),c.length!==t);i=!0);}catch(e){u=!0,a=e}finally{try{if(!i&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(u)throw a}}return c}}(e,t)||w(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function w(e,t){if(e){if("string"==typeof e)return E(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?E(e,t):void 0}}function E(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var S=function(e){var t=e.showBranchFilter,r=e.branches,o=e.cardPlaceholders,l=e.salesFragment,c=e.lettingsFragment,i=e.pageSize,u=(0,d.m$)().channel||"sales",s=g((0,n.use
1State)("sales"===u?"lettings":"sales"),2),f=s[0],m=s[1],S=g((0,n.useState)(u),2),_=S[0],A=S[1],O=g((0,n.useState)((0,d.m$)().page||1),2),j=O[0],P=O[1],N=(0,n.useMemo)((function(){if(!r)return[{text:"Select a branch",value:""}];var e,t=r.map((function(e){return function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?h(Object(r),!0).forEach((function(t){var n,a,o,l;n=e,a=t,o=r[t],l=function(e,t){if("object"!=v(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!=v(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(a),(a="symbol"==v(l)?l:String(l))in n?Object.defineProperty(n,a,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[a]=o})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):h(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({text:e.branchName,value:e.id},e)})).sort((function(e,t){return e.text.localeCompare(t.text)}));return[{text:"Select a branch",value:""}].concat(function(e){if(Array.isArray(e))return E(e)}(e=t)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||w(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())}),[r]),x=(0,d.m$)().branch,C=g((0,n.useState)(x?N.find((function(e){return e.branchURlLabel===x})):null),2),I=C[0],T=C[1],Z=(0,n.useMemo)((function(){return n.createElement(p,{fragment:l,channel:"sales",pageSize:i,pageNumber:j,setPageNumber:P,cardPlaceholders:o,selectedBranch:I})}),[l,i,j,o,I]),V=(0,n.useMemo)((function(){return n.createElement(p,{fragment:c,channel:"lettings",pageSize:i,pageNumber:j,setPageNumber:P,cardPlaceholders:o,selectedBranch:I})}),[c,i,j,o,I]);return n.createElement("div",{className:"standalone-property-grid display__container ".concat(t?"standalone-property-grid--with-branch-filter":"")},n.createElement(a.Z,{defaultValue:_,onTabChange:function(){return function(){f&&m(null);var e="sales"===_?"lettings":"sales";(0,y.Z)({channel:e,branchURlLabel:null==I?void 0:I.branchURlLabel,pageCount:1}),P(1),A(e)}()}},n.createElement(a.Z.List,{className:"standalone-property-grid__tabs-list"},n.createElement(a.Z.Tab,{value:"sales"},"Sales"),n.createElement(a.Z.Tab,{value:"lettings"},"Lettings")),t&&n.createElement("div",{className:"standalone-property-grid__branch-filter"},n.createElement(b.Z,{options:N,value:null==I?void 0:I.value,handleSelectChange:function(e){return function(e){P(1);var t=N.find((function(t){return t.value.toString()===e.target.value}));T(t),(0,y.Z)({channel:_,branchURlLabel:null==t?void 0:t.branchURlLabel,pageCount:1})}(e)}})),"sales"!==f&&n.createElement("div",{className:"".concat("sales"===_?"standalone-property-grid__wrapper":"standalone-property-grid__wrapper--hidden")},Z),"lettings"!==f&&n.createElement("div",{className:"".concat("lettings"===_?"standalone-property-grid__wrapper":"standalone-property-grid__wrapper--hidden")},V)))}},3897:function(e,t,r){var n=r(7294),a=r(5697),o=r.n(a),l=r(4586),c=function(e){var t=e.options,r=e.label,a=e.value,o=e.handleSelectChange;return n.createElement("div",{className:"form__group form__group--select validate form__group--success"},r&&n.createElement("label",{className:"form__label"},r,n.createElement("span",{className:"form__label-help"})),n.createElement("select",{className:"form__control",id:"select-zdcyn-repaymentTerm",name:"repaymentTerm","aria-label":"repaymentTerm",value:a,onChange:o},t.map((function(e){return e.selected?n.createElement("option",{key:(0,l.Z)(),value:e.value,selected:"selected"},e.text):n.createElement("option",{key:(0,l.Z)(),value:e.value},e.text)}))),n.createElement("div",{className:"form__select-arrow"}))};c.propTypes={options:o().array.isRequired,value:o().oneOfType([o().string,o().number]).isRequired,label:o().string,handleSelectChange:o().func.isRequired},c.defaultProps={label:""},t.Z=c},7245:function(e,t,r){var n=r(7294);t.Z=function(){return n.createElement("svg",{focusable:"false",className:"icon-solid icon-bathroom",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 52 48"},n.createElement("title",null,"Bathroom Icon"),n.createElement("desc",null,"Icon set Bathroom"),n.createElement("path",{d:"M52,29.5v2A1.5,1.5,0,0,1,50.5,33H50V43.4A1.8,1.8,0,0,1,48.2,45H3.8A1.8,1.8,0,0,1,2,43.4V33H1.5A1.5,1.5,0,0,1,0,31.5v-2A1.5,1.5,0,0,1,1.5,28H43.6V8.8a1.3,1.3,0,0,0-1.4-1.3H31.1a1.2,1.2,0,0,0-1.3,1.2v1.6h5A2.2,2.2,0,0,1,37,12.6a2.2,2.2,0,0,1-2.2,2.2H20.2A2.2,2.2,0,0,1,18,12.6a2.2,2.2,0,0,1,2.2-2.3h5.2V8.7A5.7,5.7,0,0,1,31.1,3H42.2A5.8,5.8,0,0,1,48,8.8V28h2.5A1.5,1.5,0,0,1,52,29.5Z"}))}},7514:function(e,t,r){var n=r(7294);t.Z=function(){return n.createElement("svg",{focusable:"false",className:"icon-solid icon-bedroom",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 52 48"},n.createElement("title",null,"Bedroom Icon"),n.createElement("desc",null,"Icon set Bedroom"),n.createElement("path",{d:"M52 19.5v22a1.5 1.5 0 0 1-1.5 1.5h-2a1.5 1.5 0 0 1-1.5-1.5V33H5v8.5A1.5 1.5 0 0 1 3.5 43h-2A1.5 1.5 0 0 1 0 41.5v-35A1.5 1.5 0 0 1 1.5 5h2A1.5 1.5 0 0 1 5 6.5V28h14V18h31.5a1.5 1.5 0 0 1 1.5 1.5zM12 26a5 5 0 0 0 0-10 5 5 0 0 0 0 10z"}))}},570:function(e,t,r){var n=r(7294);t.Z=function(){return n.createElement("svg",{focusable:"false",className:"icon-solid icon-reception",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 52 48"},n.createElement("title",null,"Reception Icon"),n.createElement("desc",null,"Icon set Reception"),n.createElement("path",{d:"M52,22.6v21a1.5,1.5,0,0,1-1.5,1.5h-7A1.5,1.5,0,0,1,42,43.6V42H10v1.6a1.5,1.5,0,0,1-1.5,1.5h-7A1.5,1.5,0,0,1,0,43.6v-21a1.5,1.5,0,0,1,1.5-1.5h7A1.5,1.5,0,0,1,10,22.6V32H42V22.6a1.5,1.5,0,0,1,1.5-1.5h7A1.5,1.5,0,0,1,52,22.6Zm-40-2V30H40V20.6a1.5,1.5,0,0,1,1.5-1.5h7.6V9a6,6,0,0,0-6-6H8.9a6,6,0,0,0-6,6V19.1h7.6A1.5,1.5,0,0,1,12,20.6Z"}))}},2134:function(e,t,r){r.d(t,{Z:function(){return m}});var n=r(7294),a=r(5697),o=r.n(a),l=r(7514),c=r(7245),i=r(570),u=function(e){var t=e.IconComponent,r=e.text;return n.createElement("div",{className:"icon-with-text-wrapper"},n.createElement("div",{className:"icon-with-text-wrapper__icons-icon"},n.createElement(t,null)),n.createElement("span",{className:"icon-with-text-wrapper__icons-text"},r))},s=["flat","apartment","penthouse","maisonnette"],f=function(e){var t,r=e.data,a=e.fullWidth,o=e.removeAddressMargin,f=r.address,m=r.channel,p=r.bedrooms,d=r.bathrooms,b=r.priceValue,y=r.propertyUrl,v=r.propertyType,h=r.receptionRooms,g=r.mainPropertyPhoto,w=r.mainPropertyThumbnail,E=r.rentPw,S=function(){return g||w||null},_=(t=v,s.some((function(e){return t.includes(e)}))),A="".concat(p>0?"".concat(p," bedrooms "):"").concat(v," ").concat("sales"===m?" for sale":" to let");return n.createElement("a",{href:y,className:"small-property-card ".concat(a?"small-property-card--w-full":"")},n.createElement("div",{className:"small-property-card__img-wrapper ".concat(a?"small-property-card__img-wrapper--w-full":"")}
1,S()&&n.createElement("img",{alt:"Thumbnail for ".concat(f),src:S(),className:"img"})),n.createElement("div",{className:"small-property-card__property-info property-info"},n.createElement("span",{className:"property-info__price"},"sales"===m?"£".concat(b.toLocaleString("en-GB")):"".concat(E||"£".concat(b.toLocaleString("en-GB")," pcm"))),f&&n.createElement("span",{className:"property-info__address ".concat(o?"property-info__address--no-margin":"")},f),A&&n.createElement("span",{className:"property-info__bedrooms"},A)),n.createElement("div",{className:"small-property-card__icons-wrapper"},Boolean(p||_)&&n.createElement(u,{IconComponent:l.Z,text:p||"Studio"}),h>0&&n.createElement(u,{IconComponent:i.Z,text:h}),d>0&&n.createElement(u,{IconComponent:c.Z,text:d})))};f.propTypes={data:o().object.isRequired,fullWidth:o().bool,removeAddressMargin:o().bool},f.defaultProps={fullWidth:!1,removeAddressMargin:!1};var m=f},7754:function(e,t,r){r.d(t,{Z:function(){return y}});var n=r(7294),a=r(5697),o=r.n(a),l=r(3967),c=r.n(l),i=(0,n.createContext)(null),u=function(){return(0,n.useContext)(i)},s=function(e){var t=e.className,r=e.children,a=e.value,o=u(),l=a===o.value;return n.createElement("div",{className:c()("tabs__tab",t,{"tabs__tab--active":l}),onClick:function(){o.onChange(a)},role:"tab",tabIndex:l||null===o.value?0:-1},r)};s.defaultProps={value:o().string.isRequired};var f=s;function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var p=function(e){var t,r,a=e.value,o=e.defaultValue,l=e.finalValue,c=e.onChange,i=void 0===c?function(){}:c,u=(t=(0,n.useState)(void 0!==o?o:l),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o,l,c=[],i=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;i=!1}else for(;!(i=(n=o.call(r)).done)&&(c.push(n.value),c.length!==t);i=!0);}catch(e){u=!0,a=e}finally{try{if(!i&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(u)throw a}}return c}}(t,r)||function(e,t){if(e){if("string"==typeof e)return m(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?m(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),s=u[0],f=u[1];return void 0!==a?[a,i,!0]:[s,function(e){f(e),null==i||i(e)},!1]};function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var b=function(e){var t,r,a=e.value,o=e.defaultValue,l=e.onTabChange,u=e.className,s=e.children,f=(t=p({value:a,defaultValue:o,finalValue:null,onChange:l}),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o,l,c=[],i=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;i=!1}else for(;!(i=(n=o.call(r)).done)&&(c.push(n.value),c.length!==t);i=!0);}catch(e){u=!0,a=e}finally{try{if(!i&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(u)throw a}}return c}}(t,r)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?d(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),m=f[0],b=f[1];return n.createElement(i.Provider,{value:{value:m,onChange:b}},n.createElement("div",{className:c()("tabs",u)},s))};b.propTypes={defaultValue:o().string.isRequired},b.List=function(e){var t=e.className,r=e.children;return n.createElement("div",{role:"tablist",className:c()("tabs__list",t)},r)},b.Tab=f,b.Panel=function(e){var t=e.className,r=e.children,a=e.value,o=u();return n.createElement("div",{role:"tabpanel",className:c()("tabs__panel",t,{"tabs__panel--show":a===o.value})},r)};var y=b},6419:function(e,t,r){function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}r.d(t,{$4:function(){return c},D:function(){return s},T4:function(){return m},X9:function(){return f},cR:function(){return a},cl:function(){return i},kl:function(){return u},m$:function(){return p}});var a=function(e){return Math.floor(e)===e?0:e.toString().split(".")[1].length||0},o=function(e){return e?e.charAt(0).toUpperCase()+e.slice(1):""},l=function(e){return"unspecified"===e?"":e},c=function(e,t){return"string"==typeof e||e>0?"".concat(e," bedroom ").concat(l(t)):o(l(t))},i=function(e){var t=arguments.length>3?arguments[3]:void 0,r=c(e,arguments.length>2&&void 0!==arguments[2]?arguments[2]:""),n=t?"for sale":"to rent";return o("".concat(r," ").concat(n).trim())},u=function(e,t){var r;return function(){for(var n=arguments.length,a=new Array(n),o=0;o<n;o++)a[o]=arguments[o];return clearTimeout(r),new Promise((function(n,o){r=setTimeout((function(){e.apply(void 0,a).then(n).catch(o)}),t)}))}},s=function(){var e=46656*Math.random()|0,t=46656*Math.random()|0;return(e="000".concat(e.toString(36)).slice(-3))+"000".concat(t.toString(36)).slice(-3)},f=function(e,t){var r=e.bedrooms,n=void 0===r?0:r,a=t.bedrooms;return n-(void 0===a?0:a)}
1,m=function(e){return"number"==typeof e?e.toLocaleString("en-GB"):e},p=function(){var e=window.location.hash.substring(1),t={};return e.split("&").forEach((function(e){var r,a,o=(r=e.split("="),a=2,function(e){if(Array.isArray(e))return e}(r)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,o,l,c=[],i=!0,u=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;i=!1}else for(;!(i=(n=o.call(r)).done)&&(c.push(n.value),c.length!==t);i=!0);}catch(e){u=!0,a=e}finally{try{if(!i&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(u)throw a}}return c}}(r,a)||function(e,t){if(e){if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}(r,a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),l=o[0],c=o[1];if(l&&c){var i=l.startsWith("/")?l.substring(1):l;t[i]=decodeURIComponent(c)}})),t}}}]);
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.