PageSourceSearch

https://www.redome.pro/_next/static/chunks/0g.6lkr8326kl.js

js redome.pro collected 2026-10-04 09:36:11 UTC 24,560 bytes, 3 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,98879,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return o}});let n=e.r(71645),a="u"<typeof window,i=a?()=>{}:n.useLayoutEffect,l=a?()=>{}:n.useEffect;function o(e){let{headManager:t,reduceComponentsToState:r}=e;function o(){if(t&&t.mountedInstances){let e=n.Children.toArray(Array.from(t.mountedInstances).filter(Boolean));t.updateHead(r(e))}}return a&&(t?.mountedInstances?.add(e.children),o()),i(()=>(t?.mountedInstances?.add(e.children),()=>{t?.mountedInstances?.delete(e.children)})),i(()=>(t&&(t._pendingUpdate=o),()=>{t&&(t._pendingUpdate=o)})),l(()=>(t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null),()=>{t&&t._pendingUpdate&&(t._pendingUpdate(),t._pendingUpdate=null)})),null}},25633,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return m},defaultHead:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let i=e.r(55682),l=e.r(90809),o=e.r(43476),s=l._(e.r(71645)),c=i._(e.r(98879)),d=e.r(42732);function u(){return[(0,o.jsx)("meta",{charSet:"utf-8"},"charset"),(0,o.jsx)("meta",{name:"viewport",content:"width=device-width"},"viewport")]}function f(e,t){return"string"==typeof t||"number"==typeof t?e:t.type===s.default.Fragment?e.concat(s.default.Children.toArray(t.props.children).reduce((e,t)=>"string"==typeof t||"number"==typeof t?e:e.concat(t),[])):e.concat(t)}e.r(33525);let p=["name","httpEquiv","charSet","itemProp"];function g(e){let t,r,n,a;return e.reduce(f,[]).reverse().concat(u().reverse()).filter((t=new Set,r=new Set,n=new Set,a={},e=>{let i=!0,l=!1;if(e.key&&"number"!=typeof e.key&&e.key.indexOf("$")>0){l=!0;let r=e.key.slice(e.key.indexOf("$")+1);t.has(r)?i=!1:t.add(r)}switch(e.type){case"title":case"base":r.has(e.type)?i=!1:r.add(e.type);break;case"meta":for(let t=0,r=p.length;t<r;t++){let r=p[t];if(e.props.hasOwnProperty(r))if("charSet"===r)n.has(r)?i=!1:n.add(r);else{let t=e.props[r],n=a[r]||new Set;("name"!==r||!l)&&n.has(t)?i=!1:(n.add(t),a[r]=n)}}}return i})).reverse().map((e,t)=>{let r=e.key||t;return s.default.cloneElement(e,{key:r})})}let m=function({children:e}){let t=(0,s.useContext)(d.HeadManagerContext);return(0,o.jsx)(c.default,{reduceComponentsToState:g,headManager:t,children:e})};("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},88143,(e,t,r)=>{"use strict";function n({widthInt:e,heightInt:t,blurWidth:r,blurHeight:a,blurDataURL:i,objectFit:l}){let o=r?40*r:e,s=a?40*a:t,c=o&&s?`viewBox='0 0 ${o} ${s}'`:"";return`%3Csvg xmlns='http://www.w3.org/2000/svg' ${c}%3E%3Cfilter id='b' color-interpolation-filters='sRGB'%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3CfeColorMatrix values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 100 -1' result='s'/%3E%3CfeFlood x='0' y='0' width='100%25' height='100%25'/%3E%3CfeComposite operator='out' in='s'/%3E%3CfeComposite in2='SourceGraphic'/%3E%3CfeGaussianBlur stdDeviation='20'/%3E%3C/filter%3E%3Cimage width='100%25' height='100%25' x='0' y='0' preserveAspectRatio='${c?"none":"contain"===l?"xMidYMid":"cover"===l?"xMidYMid slice":"none"}' style='filter: url(%23b);' href='${i}'/%3E%3C/svg%3E`}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImageBlurSvg",{enumerable:!0,get:function(){return n}})},87690,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={VALID_LOADERS:function(){return i},imageConfigDefault:function(){return l}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let i=["default","imgix","cloudinary","akamai","custom"],l={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],path:"/_next/image",loader:"default",loaderFile:"",domains:[],disableStaticImages:!1,minimumCacheTTL:14400,formats:["image/webp"],maximumDiskCacheSize:void 0,maximumRedirects:3,maximumResponseBody:5e7,dangerouslyAllowLocalIP:!1,dangerouslyAllowSVG:!1,
1contentSecurityPolicy:"script-src 'none'; frame-src 'none'; sandbox;",contentDispositionType:"attachment",localPatterns:void 0,remotePatterns:[],qualities:[75],unoptimized:!1,customCacheHandler:!1}},8927,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"getImgProps",{enumerable:!0,get:function(){return c}}),e.r(33525);let n=e.r(43369),a=e.r(88143),i=e.r(87690),l=["-moz-initial","fill","none","scale-down",void 0];function o(e){return void 0!==e.default}function s(e){return void 0===e?e:"number"==typeof e?Number.isFinite(e)?e:NaN:"string"==typeof e&&/^[0-9]+$/.test(e)?parseInt(e,10):NaN}function c({src:e,sizes:t,unoptimized:r=!1,priority:d=!1,preload:u=!1,loading:f,className:p,quality:g,width:m,height:h,fill:y=!1,style:b,overrideSrc:j,onLoad:x,onLoadingComplete:v,placeholder:w="empty",blurDataURL:_,fetchPriority:S,decoding:C="async",layout:P,objectFit:O,objectPosition:E,lazyBoundary:R,lazyRoot:I,...$},k){var M;let N,z,L,{imgConf:D,showAltText:T,blurComplete:A,defaultLoader:q}=k,F=D||i.imageConfigDefault;if("allSizes"in F)N=F;else{let e=[...F.deviceSizes,...F.imageSizes].sort((e,t)=>e-t),t=F.deviceSizes.sort((e,t)=>e-t),r=F.qualities?.sort((e,t)=>e-t);N={...F,allSizes:e,deviceSizes:t,qualities:r}}if(void 0===q)throw Object.defineProperty(Error("images.loaderFile detected but the file is missing default export.\nRead more: https://nextjs.org/docs/messages/invalid-images-config"),"__NEXT_ERROR_CODE",{value:"E163",enumerable:!1,configurable:!0});let U=$.loader||q;delete $.loader,delete $.srcSet;let G="__next_img_default"in U;if(G){if("custom"===N.loader)throw Object.defineProperty(Error(`Image with src "${e}" is missing "loader" prop.
2Read more: https://nextjs.org/docs/messages/next-image-missing-loader`),"__NEXT_ERROR_CODE",{value:"E252",enumerable:!1,configurable:!0})}else{let e=U;U=t=>{let{config:r,...n}=t;return e(n)}}if(P){"fill"===P&&(y=!0);let e={intrinsic:{maxWidth:"100%",height:"auto"},responsive:{width:"100%",height:"auto"}}[P];e&&(b={...b,...e});let r={responsive:"100vw",fill:"100vw"}[P];r&&!t&&(t=r)}let W="",B=s(m),V=s(h);if((M=e)&&"object"==typeof M&&(o(M)||void 0!==M.src)){let t=o(e)?e.default:e;if(!t.src)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include src. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E460",enumerable:!1,configurable:!0});if(!t.height||!t.width)throw Object.defineProperty(Error(`An object should only be passed to the image component src parameter if it comes from a static image import. It must include height and width. Received ${JSON.stringify(t)}`),"__NEXT_ERROR_CODE",{value:"E48",enumerable:!1,configurable:!0});if(z=t.blurWidth,L=t.blurHeight,_=_||t.blurDataURL,W=t.src,!y)if(B||V){if(B&&!V){let e=B/t.width;V=Math.round(t.height*e)}else if(!B&&V){let e=V/t.height;B=Math.round(t.width*e)}}else B=t.width,V=t.height}let X=!d&&!u&&("lazy"===f||void 0===f);(!(e="string"==typeof e?e:W)||e.startsWith("data:")||e.startsWith("blob:"))&&(r=!0,X=!1),N.unoptimized&&(r=!0),G&&!N.dangerouslyAllowSVG&&e.split("?",1)[0].endsWith(".svg")&&(r=!0);let H=s(g),J=Object.assign(y?{position:"absolute",height:"100%",width:"100%",left:0,top:0,right:0,bottom:0,objectFit:O,objectPosition:E}:{},T?{}:{color:"transparent"},b),K=A||"empty"===w?null:"blur"===w?`url("data:image/svg+xml;charset=utf-8,${(0,a.getImageBlurSvg)({widthInt:B,heightInt:V,blurWidth:z,blurHeight:L,blurDataURL:_||"",objectFit:J.objectFit})}")`:`url("${w}")`,Q=l.includes(J.objectFit)?"fill"===J.objectFit?"100% 100%":"cover":J.objectFit,Y=K?{backgroundSize:Q,backgroundPosition:J.objectPosition||"50% 50%",backgroundRepeat:"no-repeat",backgroundImage:K}:{},Z=function({config:e,src:t,unoptimized:r,width:a,quality:i,sizes:l,loader:o}){if(r){if(t.startsWith("/")&&!t.startsWith("//")){let e=(0,n.getDeploymentId)();if(e){let r=t.indexOf("?");if(-1!==r){let n=new URLSearchParams(t.slice(r+1));n.get("dpl")||(n.append("dpl",e),t=t.slice(0,r)+"?"+n.toString())}else t+=`?dpl=${e}`}}return{src:t,srcSet:void 0,sizes:void 0}}let{widths:s,kind:c}=function({deviceSizes:e,allSizes:t},r,n){if(n){let r=/(^|\s)(1?\d?\d)vw/g,a=[];for(let e;e=r.exec(n);)a.push(parseInt(e[2]));if(a.length){let r=.01*Math.min(...a);return{widths:t.filter(t=>t>=e[0]*r),kind:"w"}}return{widths:t,kind:"w"}}return"number"!=typeof r?{widths:e,kind:"w"}:{widths:[...new Set([r,2*r].map(e=>t.find(t=>t>=e)||t[t.length-1]))],kind:"x"}}(e,a,l),d=s.length-1;return{sizes:l||"w"!==c?l:"100vw",srcSet:s.map((r,n)=>`${o({config:e,src:t,quality:i,width:r})} ${"w"===c?r:n+1}${c}`).join(", "),src:o({config:e,src:t,quality:i,width:s[d]})}}({config:N,src:e,unoptimized:r,width:B,quality:H,sizes:t,loader:U}),ee=X?"lazy":f;return{props:{...$,loading:ee,fetchPriority:S,width:B,height:V,decoding:C,className:p,style:{...J,...Y},sizes:Z.sizes,srcSet:Z.srcSet,src:j||Z.src},meta:{unoptimized:r,preload:u||d,placeholder:w,fill:y}}}},18556,(e,t,r)=>{"use strict";
2Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ImageConfigContext",{enumerable:!0,get:function(){return i}});let n=e.r(55682)._(e.r(71645)),a=e.r(87690),i=n.default.createContext(a.imageConfigDefault)},65856,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"RouterContext",{enumerable:!0,get:function(){return n}});let n=e.r(55682)._(e.r(71645)).default.createContext(null)},70965,(e,t,r)=>{"use strict";function n(e,t){let r=e||75;return t?.qualities?.length?t.qualities.reduce((e,t)=>Math.abs(t-r)<Math.abs(e-r)?t:e,t.qualities[0]):r}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"findClosestQuality",{enumerable:!0,get:function(){return n}})},1948,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"default",{enumerable:!0,get:function(){return l}});let n=e.r(70965),a=e.r(43369);function i({config:e,src:t,width:r,quality:l}){let o=(0,a.getDeploymentId)();if(t.startsWith("/")&&!t.startsWith("//")){let e=t.indexOf("?");if(-1!==e){let r=new URLSearchParams(t.slice(e+1)),n=r.get("dpl");if(n){o=n,r.delete("dpl");let a=r.toString();t=t.slice(0,e)+(a?"?"+a:"")}}}if(t.startsWith("/")&&t.includes("?")&&e.localPatterns?.length===1&&"**"===e.localPatterns[0].pathname&&""===e.localPatterns[0].search)throw Object.defineProperty(Error(`Image with src "${t}" is using a query string which is not configured in images.localPatterns.
3Read more: https://nextjs.org/docs/messages/next-image-unconfigured-localpatterns`),"__NEXT_ERROR_CODE",{value:"E871",enumerable:!1,configurable:!0});let s=(0,n.findClosestQuality)(l,e);return`${e.path}?url=${encodeURIComponent(t)}&w=${r}&q=${s}${t.startsWith("/")&&o?`&dpl=${o}`:""}`}i.__next_img_default=!0;let l=i},18581,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"useMergedRef",{enumerable:!0,get:function(){return a}});let n=e.r(71645);function a(e,t){let r=(0,n.useRef)(null),a=(0,n.useRef)(null);return(0,n.useCallback)(n=>{if(null===n){let e=r.current;e&&(r.current=null,e());let t=a.current;t&&(a.current=null,t())}else e&&(r.current=i(e,n)),t&&(a.current=i(t,n))},[e,t])}function i(e,t){if("function"!=typeof e)return e.current=t,()=>{e.current=null};{let r=e(t);return"function"==typeof r?r:()=>e(null)}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},5500,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"Image",{enumerable:!0,get:function(){return x}});let n=e.r(55682),a=e.r(90809),i=e.r(43476),l=a._(e.r(71645)),o=n._(e.r(74080)),s=n._(e.r(25633)),c=e.r(8927),d=e.r(87690),u=e.r(18556);e.r(33525);let f=e.r(65856),p=n._(e.r(1948)),g=e.r(18581),m={deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image/",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0};function h(e,t,r,n,a,i,l){let o=e?.src;e&&e["data-loaded-src"]!==o&&(e["data-loaded-src"]=o,("decode"in e?e.decode():Promise.resolve()).catch(()=>{}).then(()=>{if(e.parentElement&&e.isConnected){if("empty"!==t&&a(!0),r?.current){let t=new Event("load");Object.defineProperty(t,"target",{writable:!1,value:e});let n=!1,a=!1;r.current({...t,nativeEvent:t,currentTarget:e,target:e,isDefaultPrevented:()=>n,isPropagationStopped:()=>a,persist:()=>{},preventDefault:()=>{n=!0,t.preventDefault()},stopPropagation:()=>{a=!0,t.stopPropagation()}})}n?.current&&n.current(e)}}))}function y(e){return l.use?{fetchPriority:e}:{fetchpriority:e}}"u"<typeof window&&(globalThis.__NEXT_IMAGE_IMPORTED=!0);let b=(0,l.forwardRef)(({src:e,srcSet:t,sizes:r,height:n,width:a,decoding:o,className:s,style:c,fetchPriority:d,placeholder:u,loading:f,unoptimized:p,fill:m,onLoadRef:b,onLoadingCompleteRef:j,setBlurComplete:x,setShowAltText:v,sizesInput:w,onLoad:_,onError:S,...C},P)=>{let O=(0,l.useCallback)(e=>{e&&(S&&(e.src=e.src),e.complete&&h(e,u,b,j,x,p,w))},[e,u,b,j,x,S,p,w]),E=(0,g.useMergedRef)(P,O);return(0,i.jsx)("img",{...C,...y(d),loading:f,width:a,height:n,decoding:o,"data-nimg":m?"fill":"1",className:s,style:c,sizes:r,srcSet:t,src:e,ref:E,onLoad:e=>{h(e.currentTarget,u,b,j,x,p,w)},onError:e=>{v(!0),"empty"!==u&&x(!0),S&&S(e)}})});function j({isAppRouter:e,imgAttributes:t}){let r={as:"image",imageSrcSet:t.srcSet,imageSizes:t.sizes,crossOrigin:t.crossOrigin,referrerPolicy:t.referrerPolicy,...y(t.fetchPriority)};return e&&o.default.preload?(o.default.preload(t.src,r),null):(0,i.jsx)(s.default,{children:(0,i.jsx)("link",{rel:"preload",href:t.srcSet?void 0:t.src,...r},"__nimg-"+t.src+t.srcSet+t.sizes)})}let x=(0,l.forwardRef)((e,t)=>{let r=(0,l.useContext)(f.RouterContext),n=(0,l.useContext)(u.ImageConfigContext),a=(0,l.useMemo)(()=>{let e=m||n||d.imageConfigDefault,t=[...e.deviceSizes,...e.imageSizes].sort((e,t)=>
3e-t),r=e.deviceSizes.sort((e,t)=>e-t),a=e.qualities?.sort((e,t)=>e-t);return{...e,allSizes:t,deviceSizes:r,qualities:a,localPatterns:"u"<typeof window?n?.localPatterns:e.localPatterns}},[n]),{onLoad:o,onLoadingComplete:s}=e,g=(0,l.useRef)(o);(0,l.useEffect)(()=>{g.current=o},[o]);let h=(0,l.useRef)(s);(0,l.useEffect)(()=>{h.current=s},[s]);let[y,x]=(0,l.useState)(!1),[v,w]=(0,l.useState)(!1),{props:_,meta:S}=(0,c.getImgProps)(e,{defaultLoader:p.default,imgConf:a,blurComplete:y,showAltText:v});return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(b,{..._,unoptimized:S.unoptimized,placeholder:S.placeholder,fill:S.fill,onLoadRef:g,onLoadingCompleteRef:h,setBlurComplete:x,setShowAltText:w,sizesInput:e.sizes,ref:t}),S.preload?(0,i.jsx)(j,{isAppRouter:!r,imgAttributes:_}):null]})});("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},94909,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={default:function(){return d},getImageProps:function(){return c}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let i=e.r(55682),l=e.r(8927),o=e.r(5500),s=i._(e.r(1948));function c(e){let{props:t}=(0,l.getImgProps)(e,{defaultLoader:s.default,imgConf:{deviceSizes:[640,750,828,1080,1200,1920,2048,3840],imageSizes:[32,48,64,96,128,256,384],qualities:[75],path:"/_next/image/",loader:"default",dangerouslyAllowSVG:!1,unoptimized:!0}});for(let[e,r]of Object.entries(t))void 0===r&&delete t[e];return{props:t}}let d=o.Image},57688,(e,t,r)=>{t.exports=e.r(94909)},93106,e=>{"use strict";var t=e.i(43476),r=e.i(71645),n=e.i(58249);e.s(["CategoryLeadForm",0,function({categoryTitle:e,heading:a="Рассчитаем ваш проект?",inline:i=!1}){let[l,o]=(0,r.useState)("idle"),[s,c]=(0,r.useState)(""),[d,u]=(0,r.useState)(!1),[f,p]=(0,r.useState)(!1),g=(0,r.useRef)(!1),m=async e=>{if(e.preventDefault(),!d)return;let t=e.currentTarget;o("sending"),c("");try{let e=await fetch("/api/bitrix.php",{method:"POST",body:new FormData(t)}),r=await e.json();if(!e.ok)throw Error(r.message||"Не удалось отправить заявку");o("success"),c("Заявка отправлена. Мы свяжемся с вами в ближайшее рабочее время."),t.reset(),u(!1),(0,n.reachGoal)(n.analyticsGoals.leadSuccess,{form:"category_inline"})}catch(e){o("error"),c(e instanceof Error?e.message:"Не удалось отправить заявку")}};return(0,t.jsxs)("section",{className:`category-cta section-pad${i?" category-cta-inline":""}${i&&f?" category-cta-expanded":""}`,"aria-labelledby":"category-cta-title",children:[(0,t.jsx)("p",{className:"category-cta-eyebrow",children:"Персональный расчёт"}),(0,t.jsxs)("div",{className:"category-cta-heading",children:[(0,t.jsx)("h2",{id:"category-cta-title",children:a}),(0,t.jsx)("p",{children:i?(0,t.jsxs)(t.Fragment,{children:["Оставьте заявку на расчет",(0,t.jsx)("br",{}),"Это бесплатно.",(0,t.jsx)("br",{}),"И ни к чему не обязывает."]}):"Оставьте заявку на расчет"})]}),i&&(0,t.jsxs)("button",{className:"category-cta-mobile-toggle",type:"button","aria-expanded":f,"aria-controls":"category-cta-mobile-content",onClick:()=>p(e=>!e),children:[(0,t.jsx)("span",{children:f?"Свернуть форму":"Оставить заявку"}),(0,t.jsx)("i",{"aria-hidden":"true",children:"⌄"})]}),(0,t.jsxs)("div",{className:"category-cta-body",id:i?"category-cta-mobile-content":void 0,children:[(0,t.jsxs)("form",{className:"category-lead-form",onSubmit:m,onInputCapture:()=>{g.current||(g.current=!0,(0,n.reachGoal)(n.analyticsGoals.formStart,{form:"category_inline"}))},children:[(0,t.jsx)("input",{name:"email",type:"email",autoComplete:"email",placeholder:"Ваш email","aria-label":"Ваш email"}),(0,t.jsx)("input",{name:"name",autoComplete:"name",required:!0,placeholder:"Ваше имя","aria-label":"Ваше имя"}),(0,t.jsx)("input",{name:"phone",type:"tel",autoComplete:"tel",required:!0,placeholder:"Контактный номер","aria-label":"Контактный номер"}),(0,t.jsx)("input",{type:"hidden",name:"question",value:`Заявка со страницы категории \xab${e}\xbb`}),(0,t.jsxs)("button",{type:"submit",disabled:"sending"===l||!d,children:["sending"===l?"Отправляем…":"Отправить заявку",(0,t.jsx)("span",{children:"→"})]}),(0,t.jsxs)("label",{className:"category-lead-consent",children:[(0,t.jsx)("input",{type:"checkbox",name:"privacyConsent",required:!0,checked:d,onChange:e=>u(e.target.checked)}),(0,t.jsx)("span",{className:"category-consent-box","aria-hidden":"true",children:"✓"}),(0,t.jsxs)("span",{children:["Соглашаюсь с обработкой персональных данных и ",(0,t.jsx)("a",{href:"/personal",children:"политикой конфиденциальности"}),"."]})]})]}),s&&(0,t.jsx)("p",{className:`category-lead-message ${l}`,children:s})]})]})}])},91815,e=>{"use strict";var t=e.i(43476),r=e.i(57688),n=e.i(71645),a=e.i(74080),i=e.i(93106);e.s(["CategoryProjectRows",0,function({projects:e,leadAfter:l,leadCategoryTitle:o,leadHeading:s}){let c,d,u=(0,n.useRef)({}
3),[f,p]=(0,n.useState)(null),[g,m]=(0,n.useState)({}),h=e=>{let t=u.current[e];if(!t)return;let r=Math.max(0,t.scrollWidth-t.clientWidth),n={canLeft:t.scrollLeft>4,canRight:t.scrollLeft<r-4};m(t=>{let r=t[e];return r?.canLeft===n.canLeft&&r?.canRight===n.canRight?t:{...t,[e]:n}})},y=(e,t)=>{let r=u.current[e];r&&r.scrollBy({left:t*r.clientWidth*.78,behavior:"smooth"})},b=t=>{p(r=>{if(!r)return null;let n=e[r.projectIndex].gallery;return{...r,imageIndex:(r.imageIndex+t+n.length)%n.length}})};return(0,n.useEffect)(()=>{let t=()=>e.forEach((e,t)=>h(t)),r=requestAnimationFrame(t);return window.addEventListener("resize",t),()=>{cancelAnimationFrame(r),window.removeEventListener("resize",t)}},[e]),(0,n.useEffect)(()=>{if(!f)return;document.body.classList.add("modal-open");let e=e=>{"Escape"===e.key&&p(null),"ArrowLeft"===e.key&&b(-1),"ArrowRight"===e.key&&b(1)};return document.addEventListener("keydown",e),()=>{document.body.classList.remove("modal-open"),document.removeEventListener("keydown",e)}},[f,e]),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"category-project-rows",children:e.map((e,a)=>(0,t.jsxs)(n.Fragment,{children:[(0,t.jsxs)("article",{className:"category-project-row",children:[(0,t.jsxs)("header",{className:"category-project-row-header",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("p",{children:[String(a+1).padStart(2,"0")," · ",e.location]}),(0,t.jsx)("h3",{children:(0,t.jsx)("a",{href:e.path,children:e.title})}
3),(0,t.jsx)("span",{children:e.subtitle})]}),(0,t.jsx)("div",{className:"category-project-row-actions",children:(0,t.jsx)("a",{href:e.path,children:"Открыть проект →"})})]}),(0,t.jsxs)("div",{className:"category-project-rail-wrap",children:[g[a]?.canLeft&&(0,t.jsx)("button",{className:"category-project-rail-nav category-project-rail-prev",type:"button",onClick:()=>y(a,-1),"aria-label":`Предыдущие фотографии проекта ${e.title}`,children:"←"}),(0,t.jsx)("div",{className:"category-project-rail",ref:e=>{u.current[a]=e},onScroll:()=>h(a),children:e.gallery.map((n,i)=>(0,t.jsxs)("button",{className:"category-project-thumb",type:"button",onClick:()=>p({projectIndex:a,imageIndex:i}),"aria-label":`Открыть фотографию ${i+1} проекта ${e.title}`,children:[(0,t.jsx)(r.default,{src:n,alt:`${e.title}, фотография ${i+1}`,fill:!0,sizes:"(max-width: 760px) 84vw, 42vw"}),(0,t.jsx)("span",{children:String(i+1).padStart(2,"0")})]},`${n}-${i}`))}),g[a]?.canRight&&(0,t.jsx)("button",{className:"category-project-rail-nav category-project-rail-next",type:"button",onClick:()=>y(a,1),"aria-label":`Следующие фотографии проекта ${e.title}`,children:"→"})]})]}),l===a+1&&o&&(0,t.jsx)(i.CategoryLeadForm,{categoryTitle:o,heading:s,inline:!0})]},e.path))}),f&&"u">typeof document&&(0,a.createPortal)((d=(c=e[f.projectIndex]).gallery[f.imageIndex],(0,t.jsx)("div",{className:"category-gallery-backdrop",role:"presentation",onMouseDown:e=>e.target===e.currentTarget&&p(null),children:(0,t.jsxs)("section",{className:"category-gallery-dialog",role:"dialog","aria-modal":"true","aria-label":`Галерея проекта ${c.title}`,children:[(0,t.jsxs)("header",{children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("span",{children:c.location}),(0,t.jsx)("strong",{children:c.title})]}),(0,t.jsx)("button",{type:"button",onClick:()=>p(null),"aria-label":"Закрыть галерею",children:"×"})]}),(0,t.jsxs)("div",{className:"category-gallery-stage",children:[(0,t.jsx)(r.default,{src:d,alt:`${c.title}, фотография ${f.imageIndex+1}`,fill:!0,priority:!0,sizes:"100vw"}),(0,t.jsx)("button",{className:"category-gallery-prev",type:"button",onClick:()=>b(-1),"aria-label":"Предыдущая фотография",children:"←"}),(0,t.jsx)("button",{className:"category-gallery-next",type:"button",onClick:()=>b(1),"aria-label":"Следующая фотография",children:"→"})]}),(0,t.jsxs)("footer",{children:[(0,t.jsxs)("span",{children:[String(f.imageIndex+1).padStart(2,"0")," / ",String(c.gallery.length).padStart(2,"0")]}),(0,t.jsx)("a",{href:c.path,children:"Открыть страницу проекта →"})]})]})})),document.body)]})}])},47133,e=>{"use strict";var t=e.i(43476),r=e.i(71645),n=e.i(11132);e.s(["ProjectInquiry",0,function({projectTitle:e}){let[a,i]=(0,r.useState)(!1);return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("button",{className:"project-detail-inquiry-button",type:"button",onClick:()=>i(!0),children:["Обсудить проект ",(0,t.jsx)("span",{children:"→"})]}),(0,t.jsx)(n.ProjectModal,{open:a,onClose:()=>i(!1),projectTitle:e,source:"project_page"})]})}])},9280,e=>{"use strict";var t=e.i(71645),r=e.i(58249);e.s(["AnalyticsViewTracker",0,function({category:e,project:n}){return(0,t.useEffect)(()=>{e&&(0,r.reachGoal)(r.analyticsGoals.categoryView,{category:e}),n&&(0,r.trackUniqueProjectView)(n)},[e,n]),null}])}]);

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.