); if (qz) { e.preventDefault(); qz.scrollIntoView({ behavior: 'smooth', block: 'start' }); } }
if (a && !a.hasAttribute('data-pick') && !a.hasAttribute('data-keep') && typeof self.state.pick === 'number') self.setState({ pick: null });
};
document.addEventListener('click', this.onQuizLink, true);
this.rvTimer = setTimeout(function () { self.setupReveal(); }, 60);
}
setupReveal() {
if (typeof IntersectionObserver === 'undefined') return;
if (window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches) return;
var els = [];
document.querySelectorAll('section:not(#top) > .w, footer > .w').forEach(function (w) {
Array.prototype.forEach.call(w.children, function (c) {
var cs = window.getComputedStyle(c);
if (cs.display === 'grid' && c.children.length > 1 && c.children.length < 13) {
Array.prototype.forEach.call(c.children, function (g, i) { g.style.setProperty('--rvd', Math.min(i * 0.12, 0.6) + 's'); els.push(g); });
} else { els.push(c); }
});
});
var io = new IntersectionObserver(function (entries) {
entries.forEach(function (e) { if (e.isIntersecting) { e.target.setAttribute('data-rv', '1'); io.unobserve(e.target); } });
}, { rootMargin: '0px', threshold: 0 });
els.forEach(function (el) { el.setAttribute('data-rv', '0'); io.observe(el); });
this.io = io;
}
componentWillUnmount() {
window.removeEventListener('scroll', this.onScroll);
document.removeEventListener('click', this.onQuizLink, true);
clearTimeout(this.rvTimer);
if (this.io) this.io.disconnect();
}
renderVals() {
var self = this;
var s = this.state;
var WA = '35795996805';
function waLink(t) { return 'https://wa.me/' + WA + '?text=' + encodeURIComponent(String(t).replace(/[ ]/g, ' ')); }
function fmt(n) { return '€' + String(n).replace(/\B(?=(\d{3})+(?!\d))/g, ' '); }
function bedsText(b) {
if (b === 'виллы') return 'виллы';
var parts = b.split(', ');
var studio = parts.indexOf('студия') > -1;
var nums = parts.filter(function (x) { return /^\d+$/.test(x); });
var t = nums.length > 1 ? nums.slice(0, -1).join(', ') + ' и ' + nums[nums.length - 1] : (nums[0] || '');
var res = [];
if (studio) res.push('студии');
if (t) res.push(t + ' ' + (nums.length === 1 && nums[0] === '1' ? 'спальня' : 'спальни'));
return res.join(', ');
}
var DATA = [{"name": "Golf Side", "type": "Комплекс закрытого типа", "dist": "Асоматос", "stat": "На этапе проекта", "q": "III кв. 2028", "beds": "1, 2", "price": 340000, "unit": "Квартиры с 1 спальней", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3061-3834-4332-b661-306262346364/09b47643d27a48d1984b.jpg", "slug": "golf-side", "title": "Квартиры с 1 и 2 спальнями в закрытом комплексе у гольф-поля", "href": "/novostroyki/golf-side"}, {"name": "Opalion", "type": "Комплекс закрытого типа", "dist": "Меса Гитония", "stat": "Строится", "q": "II кв. 2027", "beds": "1, 2, 3", "price": 367000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3139-3931-4432-a137-643562666364/opalion-oblozhka.webp", "slug": "opalion", "title": "Квартиры и пентхаусы с садом на крыше в зелёном квартале", "href": "/novostroyki/opalion"}, {"name": "Silicon Park", "type": "Комплекс закрытого типа", "dist": "Меса Гитония", "stat": "На этапе проекта", "q": "I кв. 2029", "beds": "1, 2", "price": 375000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3935-3230-4361-a665-636237393364/faedf257569cf683ad8d.webp", "slug": "silicon-park", "title": "", "href": "/novostroyki/silicon-park"}, {"name": "Imperio Portside", "type": "Комплекс закрытого типа", "dist": "Меса Гитония", "stat": "Строится", "q": "I кв. 2028", "beds": "1, 2", "price": 375000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3466-3261-4135-a130-316161636535/imperio-portside-obl.webp", "slug": "imperio-portside", "title": "", "href": "/novostroyki/imperio-portside"}, {"name": "Imperio Skyline", "type": "Комплекс закрытого типа", "dist": "Меса Гитония", "stat": "Строится", "q": "I кв. 2028", "beds": "1, 2", "price": 460000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3339-6263-4633-b338-643734633366/imperio-skyline-oblo.jpg", "slug": "imperio-skyline", "title": "Квартиры с 1 и 2 спальнями в комплексе закрытого типа", "href": "/novostroyki/imperio-skyline"}, {"name": "Amani", "type": "Комплекс закрытого типа", "dist": "Агиос Атанасиос", "stat": "На этапе проекта", "q": "II кв. 2029", "beds": "студия, 1, 2", "price": 499000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila6431-3464-4634-b364-356465613436/37a31d381a3498f19ecc.webp", "slug": "amani", "title": "", "href": "/novostroyki/amani"}, {"name": "Thalion", "type": "Стандартный комплекс", "dist": "Экали", "stat": "Строится", "q": "IV кв. 2026", "beds": "1, 2, 3", "price": 357440, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila6330-3033-4965-a131-393735633830/thalion-oblozhka.webp", "slug": "thalion", "title": "Квартиры с 1–3 спальнями и пентхаусы с садом на крыше в четырёх блоках", "href": "/novostroyki/thalion"}, {"name": "Simplicity 2", "type": "Стандартный комплекс", "dist": "Гермасойя", "stat": "Сдан", "q": "", "beds": "2", "price": 560000, "unit": "Квартиры с 2 спальнями", "vat": "без НДС", "img": "https://static.tildacdn.net/tila3665-3039-4134-a438-653936353262/339f26d42ea8a7dfbe32.webp", "slug": "simplicity-2", "title": "", "href": "/novostroyki/simplicity-2"}, {"name": "Simplicity 3", "type": "Стандартный комплекс", "dist": "Гермасойя", "stat": "Строится", "q": "IV кв. 2026", "beds": "2", "price": 506000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3264-3733-4034-b230-613164356537/simplicity-3-oblozhk.jpg", "slug": "simplicity-3", "title": "Светлые квартиры с 2 спальнями в туристической зоне у моря", "href": "/novostroyki/simplicity-3"}, {"name": "Mandarin", "type": "Стандартный комплекс", "dist": "Гермасойя", "stat": "На этапе проекта", "q": "IV кв. 2028", "beds": "1, 2", "price": 443500, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3666-6333-4038-b236-353939636130/36cd3668fb287584548f.webp", "slug": "mandarin", "title": "", "href": "/novostroyki/mandarin"}, {"name": "Romana", "type": "Стандартный комплекс", "dist": "Эрими", "stat": "На этапе проекта", "q": "IV кв. 2028", "beds": "2, 3", "price": 385000, "unit": "Квартиры с 3 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila6466-6461-4064-b031-313766363362/f75daea8d92c003451f9.jpg", "slug": "romana", "title": "Квартиры с 2–3 спальнями на западе Лимассола", "href": "/novostroyki/romana"}, {"name": "Evora", "type": "Стандартный комплекс", "dist": "Гермасойя", "stat": "Строится", "q": "III кв. 2027", "beds": "3", "price": 840000, "unit": "Квартиры с 3 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila6137-3038-4066-b834-393430323334/evora-oblozhka.jpg", "slug": "evora", "title": "", "href": "/novostroyki/evora"}, {"name": "Arles", "type": "Стандартный комплекс", "dist": "Католики", "stat": "Строится", "q": "III кв. 2027", "beds": "2", "price": 650000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3763-3532-4463-a365-383130303533/arles-oblozhka.webp", "slug": "arles", "title": "", "href": "/novostroyki/arles"}, {"name": "Siena", "type": "Стандартный комплекс", "dist": "Асоматос", "stat": "Строится", "q": "IV кв. 2027", "beds": "студия, 1, 2", "price": 380000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3363-3538-4036-b038-353961303331/siena-oblozhka.jpg", "slug": "siena", "title": "", "href": "/novostroyki/siena"}, {"name": "Hampton", "type": "Стандартный комплекс", "dist": "Неаполис", "stat": "Строится", "q": "III кв. 2028", "beds": "2, 3", "price": 530000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3465-3234-4537-b462-353031366338/hampton-oblozhka.jpg", "slug": "hampton", "title": "", "href": "/novostroyki/hampton"}, {"name": "Padua", "type": "Стандартный комплекс", "dist": "Агиос Атанасиос", "stat": "Строится", "q": "II кв. 2028", "beds": "1, 2, 3", "price": 405000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3639-3963-4231-a638-643266623331/padua-oblozhka.jpg", "slug": "padua", "title": "", "href": "/novostroyki/padua"}, {"name": "Aalto", "type": "Стандартный комплекс", "dist": "Агиос Зони", "stat": "На этапе проекта", "q": "III кв. 2028", "beds": "1, 2", "price": 440000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3538-6636-4738-b935-313663326365/73c98307b7955a3ba9c1.jpg", "slug": "aalto", "title": "", "href": "/novostroyki/aalto"}, {"name": "Delta", "type": "Стандартный комплекс", "dist": "Старый город", "stat": "На этапе проекта", "q": "III кв. 2028", "beds": "2, 3", "price": 450000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3036-6566-4933-b831-373535616262/delta-oblozhka.webp", "slug": "delta", "title": "", "href": "/novostroyki/delta"}, {"name": "Liora", "type": "Стандартный комплекс", "dist": "Асоматос", "stat": "На этапе проекта", "q": "IV кв. 2028", "beds": "1, 2, 3", "price": 360000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila6161-6264-4562-a131-316363656561/58c91dbe1486852a555d.jpg", "slug": "liora", "title": "", "href": "/novostroyki/liora"}, {"name": "Milford Heights", "type": "Стандартный комплекс", "dist": "Меса Гитония", "stat": "Предстарт продаж", "q": "IV кв. 2028", "beds": "1, 2", "price": 430000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila6262-6637-4735-b335-376636393131/56e7cac65a9f88fdafa2.jpg", "slug": "milford-heights", "title": "", "href": "/novostroyki/milford-heights"}, {"name": "Mantua", "type": "Стандартный комплекс", "dist": "Агиос Атанасиос", "stat": "Предстарт продаж", "q": "II кв. 2028", "beds": "2, 3", "price": 380000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3139-6236-4262-b738-663961303066/343c49851c67a0a41234.jpg", "slug": "mantua", "title": "", "href": "/novostroyki/mantua"}, {"name": "Albion", "type": "Стандартный комплекс", "dist": "Гермасойя", "stat": "Предстарт продаж", "q": "II кв. 2028", "beds": "1, 2, 4", "price": 600000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila6666-6236-4664-a439-363665613866/albion-oblozhka.jpg", "slug": "albion", "title": "", "href": "/novostroyki/albion"}, {"name": "Avon", "type": "Стандартный комплекс", "dist": "Гермасойя", "stat": "Предстарт продаж", "q": "III кв. 2028", "beds": "1, 2, 4", "price": 550000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3635-6134-4031-b032-376439313439/8c67886fda0ca5aa7c85.jpg", "slug": "avon", "title": "", "href": "/novostroyki/avon"}, {"name": "Arden", "type": "Стандартный комплекс", "dist": "Гермасойя", "stat": "Предстарт продаж", "q": "III кв. 2028", "beds": "1, 2, 3, 4", "price": 550000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3432-3838-4761-b964-396131373436/arden-oblozhka.jpg", "slug": "arden", "title": "", "href": "/novostroyki/arden"}, {"name": "Messina", "type": "Стандартный комплекс", "dist": "Католики", "stat": "Предстарт продаж", "q": "II кв. 2029", "beds": "1, 2, 3", "price": 390000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3962-6664-4461-b837-663266373331/messina-oblozhka.jpg", "slug": "messina", "title": "", "href": "/novostroyki/messina"}, {"name": "Navarre", "type": "Стандартный комплекс", "dist": "Элмали", "stat": "Предстарт продаж", "q": "II кв. 2029", "beds": "1, 2, 3", "price": 375000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3530-3539-4366-b062-373965353436/6a69ddd4c09539a641f4.jpg", "slug": "navarre", "title": "", "href": "/novostroyki/navarre"}, {"name": "Adiger A5", "type": "Стандартный комплекс", "dist": "Закаки", "stat": "На этапе проекта", "q": "будет объявлена", "beds": "1, 2, 3", "price": 360000, "unit": "Квартиры с 2 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila6138-3630-4562-a631-376135623466/adiger-a5-oblozhka.jpg", "slug": "adiger-a5", "title": "Новые квартиры с 1–3 спальнями в одном из самых растущих районов Лимассола", "href": "/novostroyki/adiger-a5"}, {"name": "Maydan Smart Home Villa", "type": "Виллы", "dist": "Парекклисия", "stat": "Строится", "q": "III кв. 2027", "beds": "3", "price": 530000, "unit": "Виллы с 3 спальнями", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3962-6439-4531-a330-663238653362/3e56319801874a234426.jpg", "slug": "maydan-smart-home-villa", "title": "Просторные виллы «умный дом» с 3 спальнями для всей семьи", "href": "/novostroyki/maydan-smart-home-villa"}, {"name": "Simplicity Villas", "type": "Виллы", "dist": "Агиос Тихонас", "stat": "Строится", "q": "будет объявлена", "beds": "виллы", "price": 1430000, "unit": "Виллы", "vat": "+ VAT", "img": "https://static.tildacdn.net/tila3732-6266-4932-b634-653631346566/63a071badbfc8fc706b3.webp", "slug": "simplicity-villas", "title": "", "href": "/novostroyki/simplicity-villas"}];
var P = DATA.map(function (p, i) {
var presale = p.stat === 'Предстарт продаж';
return Object.assign({}, p, {
i: i,
priceL: p.price ? 'от\u00a0' + fmt(p.price) : 'Цена по\u00a0запросу',
vatL: !p.price ? '' : (p.vat === '+ VAT' ? '+\u00a0VAT' : p.vat),
bedsL: bedsText(p.beds),
typeL: p.type.toLowerCase(),
qLabel: p.stat === 'Сдан' ? 'Дом сдан' : 'Сдача ' + p.q,
bcls: presale ? 'bdg bdgo' : 'bdg',
alt: p.name + ', ' + p.dist + ', Лимассол',
pick: function () { self.setState({ pick: i, step: 0 }); }
});
});
var pk = (typeof s.pick === 'number') ? P[s.pick] : null;
var QS = [
{ t: 'Какой бюджет на покупку рассматриваете?', o: ['€300 000 – €500 000', '€500 000 – €700 000', 'Больше €700 000'] },
{ t: 'Когда планируете покупку?', o: ['Готов(а) к покупке', 'В ближайшие 3 месяца', 'Через полгода'] }
];
var step = s.step;
var N = QS.length;
var ans = s.ans || [];
var isQ = step < N;
var qOpts = isQ ? QS[step].o.map(function (label) { return { label: label, pick: function () { var a = ans.slice(0, step); a[step] = label; self.setState({ step: step + 1, ans: a }); } }; }) : [];
var bars = [0, 1, 2].map(function (i) { return { cls: i <= Math.min(step, N) ? 'bar baron' : 'bar' }; });
var doneWa = waLink('Здравствуйте! Пишу с сайта BFM. Бюджет: ' + (ans[0] || '—') + '. Сроки: ' + (ans[1] || '—') + '.' + (pk ? ' Интересует объект: ' + pk.name + ' (' + pk.dist + ').' : '') + ' Пришлите, пожалуйста, подборку.');
var FAQ = [{"q": "Что такое закрытый предстарт продаж?", "a": "Это продажа квартир до официального старта проекта, когда застройщик ещё не опубликовал цены и планировки. Клиенты BFM получают доступ к таким предложениям раньше и выбирают квартиры первыми."}, {"q": "Сколько стоят ваши услуги?", "a": "Для покупателя — бесплатно. Комиссию нам платит застройщик по агентскому договору, а вы покупаете квартиру по его цене."}, {"q": "Зачем агентство, если можно купить напрямую?", "a": "Цена будет та же, но у застройщика вы увидите только его проекты. Мы подберём варианты из коллекции 29 проектов, юрист проверит документы, а эксперт проведёт вас до ключей."}, {"q": "Можно купить, не приезжая на Кипр?", "a": "Да. Покажем квартиры по видеосвязи, юрист проверит документы, а договор можно подписать удалённо — расскажем, как."}, {"q": "Как работает рассрочка?", "a": "Первый взнос — от 30% при подписании договора, остаток — по этапам строительства до сдачи. Без банков и процентов. Условия отличаются по объектам."}, {"q": "Даёт ли покупка право на ПМЖ?", "a": "При покупке новостройки от €300 000 + VAT можно подать документы на ПМЖ Кипра. Наши юристы подготовят и подадут пакет документов."}];
var faqs = FAQ.map(function (d, i) { var open = s.faq === i; return { q: d.q, a: d.a, open: open, sign: open ? '−' : '+', toggle: function () { self.setState({ faq: open ? -1 : i }); } }; });
var base = {
isQ: isQ,
isContact: step === N,
isDone: step === N + 1,
canBack: step > 0 && step < N + 1,
back: function () { self.setState({ step: Math.max(0, step - 1) }); },
qTitle: isQ ? QS[step].t : '',
qOpts: qOpts,
bars: bars,
stepLabel: step < N ? ('Вопрос ' + (step + 1) + ' из ' + N) : (step === N ? 'Последний шаг' : 'Готово'),
submit: function () { var ne = document.getElementById('b-name'), pe = document.getElementById('b-phone'); var nm = ne ? ne.value.trim() : '', ph = pe ? pe.value.trim() : ''; function bad(el, m) { if (!el) return; el.setCustomValidity(m); el.reportValidity(); el.oninput = function () { el.setCustomValidity(''); }; } if (!nm) { bad(ne, 'Укажите имя'); return; } if (ph.replace(/\D/g, '').length < 7) { bad(pe, 'Укажите номер с кодом страны'); return; } var lead = { name: nm, phone: ph, budget: ans[0] || '', timing: ans[1] || '', project: pk ? pk.name : '', method: 'WhatsApp', source: 'quiz' }; try { if (typeof window.bfmSendLead === 'function') window.bfmSendLead(lead); } catch (e) {} try { if (window.fbq) window.fbq('track', 'Lead', { content_name: 'quiz' }); if (window.gtag) window.gtag('event', 'generate_lead', { source: 'quiz' }); if (window.dataLayer) window.dataLayer.push({ event: 'Lead', source: 'quiz' }); } catch (e) {} try { localStorage.setItem('bfm_conv_until', String(Date.now() + 30 * 864e5)); } catch (e) {} self.setState({ step: N + 1 }); },
doneWa: doneWa,
hasPick: !!pk,
pickTitle: pk ? pk.name : '',
pickMeta: pk ? ((pk.title ? pk.title + '. ' : '') + pk.dist + ', Лимассол\u00a0· ' + pk.unit.toLowerCase() + ' ' + pk.priceL + ' ' + pk.vatL + ' · ' + (pk.stat === 'Сдан' ? 'дом сдан' : 'сдача ' + pk.q)) : '',
clearPick: function () { self.setState({ pick: null }); },
faqs: faqs,
upOp: s.up ? '1' : '0',
upTf: s.up ? 'none' : 'translateY(12px)',
upPe: s.up ? 'auto' : 'none',
toTop: function () { window.scrollTo({ top: 0, behavior: 'smooth' }); },
ckOpen: !s.ck,
ckClose: function () { try { localStorage.setItem('bfm_ck', '1'); } catch (e) {} self.setState({ ck: true }); },
hdrBg: s.sc ? 'rgba(7,7,7,.92)' : 'transparent',
hdrLine: s.sc ? 'rgba(212,180,124,.18)' : 'transparent',
hdrBlur: s.sc ? 'blur(10px)' : 'none',
menuOpen: !!s.mn,
menuAria: s.mn ? 'true' : 'false',
menuToggle: function () { self.setState({ mn: !s.mn }); },
menuClose: function () { self.setState({ mn: false }); }
};
var page = (function () {
P.forEach(function (p) {
p.pre = p.stat === 'Предстарт продаж';
p.loc = p.dist + ', Лимассол';
p.dh = ({"Гермасойя": "/rayony/germasojya", "Меса Гитония": "/rayony/mesa-gitonia", "Асоматос": "/rayony/asomatos", "Агиос Атанасиос": "/rayony/agios-athanasios", "Католики": "/rayony/katholiki", "Экали": "/rayony/ekali", "Эрими": "/rayony/erimi", "Элмали": "/rayony/elmali", "Старый город": "/rayony/staryj-gorod", "Неаполис": "/rayony/neapolis", "Агиос Зони": "/rayony/agios-zoni", "Закаки": "/rayony/zakaki", "Парекклисия": "/rayony/pareklisia", "Агиос Тихонас": "/rayony/agios-tychonas"})[p.dist] || '/rayony';
p.scls = p.stat === 'Строится' ? 'st1' : (p.stat === 'Сдан' ? 'st2' : 'st0');
p.stL = p.pre ? 'предстарт продаж' : (p.stat === 'Сдан' ? 'дом сдан' : p.stat.toLowerCase());
});
var DH = {"Гермасойя": "/rayony/germasojya", "Меса Гитония": "/rayony/mesa-gitonia", "Асоматос": "/rayony/asomatos", "Агиос Атанасиос": "/rayony/agios-athanasios", "Католики": "/rayony/katholiki", "Экали": "/rayony/ekali", "Эрими": "/rayony/erimi", "Элмали": "/rayony/elmali", "Старый город": "/rayony/staryj-gorod", "Неаполис": "/rayony/neapolis", "Агиос Зони": "/rayony/agios-zoni", "Закаки": "/rayony/zakaki", "Парекклисия": "/rayony/pareklisia", "Агиос Тихонас": "/rayony/agios-tychonas"};
var D = 'Закаки';
var dl = P.filter(function (p) { return p.dist === D; }).sort(function (a, b) { return a.price - b.price; });
var cnt = {};
P.forEach(function (p) { if (p.dist !== D) cnt[p.dist] = (cnt[p.dist] || 0) + 1; });
var n = dl.length;
return {
distList: dl,
distCount: n + '\u00a0' + ((n % 10 === 1 && n % 100 !== 11) ? 'проект' : ((n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20)) ? 'проекта' : 'проектов')),
otherDists: Object.keys(cnt).sort(function (a, b) { return cnt[b] - cnt[a]; }).map(function (d) { return { l: d + ' · ' + cnt[d], h: DH[d] || '/rayony/germasojya' }; })
};
})();
return Object.assign(base, page || {});
}
}
return Component; })();
})();