PageSourceSearch

https://bigmebel-sochi.ru/_next/static/chunks/bb35d8d2442d9fef.js

js bigmebel-sochi.ru collected 2026-10-07 18:10:44 UTC 23,239 bytes, 1 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,32380,71432,e=>{"use strict";var t=e.i(43476),r=e.i(71645),n=e.i(14080),l=e.i(75157),s=e.i(62473),a=e.i(10958);let i=({entry:e,variant:i,onOpen:u,className:o,catalogMode:c=!1,isPriority:d=!1})=>{let h=(0,s.getPhotoEntryName)(e),x=(0,s.getPhotoEntryDescription)(e),m=(0,r.useMemo)(()=>(0,s.getPhotoFiles)(e),[e]),f=(0,r.useMemo)(()=>m.slice(0,4),[m]),p=f.length,[g,v]=(0,r.useState)(0),[b,y]=(0,r.useState)(!1),w=(0,r.useRef)(null),j=()=>{p<=1||b||y(!0)},k=e=>{if(p<=1)return;let t=w.current?.getBoundingClientRect();if(!t)return;let r=e-t.left,n=Math.max(0,Math.min(p-1,Math.floor((t.width?r/t.width:0)*p)));n!==g&&v(n)},N=b?f:f.slice(0,1);return(0,t.jsxs)("div",{className:(0,l.cn)("flex flex-col",o),children:[(0,t.jsxs)("div",{ref:w,className:(0,l.cn)("relative w-full bg-gray-900 rounded-lg overflow-hidden cursor-pointer",c?"aspect-square md:aspect-auto md:h-[262px]":"h-[262px]"),onClick:()=>{u(e,g)},onKeyDown:t=>{("Enter"===t.key||" "===t.key)&&(t.preventDefault(),u(e,g))},onMouseEnter:()=>{j()},onMouseMove:e=>{j(),k(e.clientX)},onTouchStart:e=>{j(),0!==e.touches.length&&k(e.touches[0].clientX)},onTouchMove:e=>{0!==e.touches.length&&k(e.touches[0].clientX)},onMouseLeave:()=>{p<=1||v(0)},tabIndex:0,role:"button","aria-label":`Открыть фотогалерею: ${h}`,children:[N.length>0?N.map((e,r)=>{let i,u=(i=e.formats?.small?.url||e.formats?.medium?.url||e.url)?(0,s.toAbsoluteStrapiUrl)(i):null;if(!u)return null;let o=(0,a.resolveClientImageSrc)(u),c=r===g;return(0,t.jsx)(n.default,{src:o,alt:h,fill:!0,unoptimized:(0,a.shouldBypassNextImageOptimizer)(o),className:(0,l.cn)("object-cover",c?"opacity-100":"opacity-0"),sizes:"(max-width: 640px) 50vw, (max-width: 1024px) 33vw, 400px",quality:65,priority:d&&0===r,"aria-hidden":!c},`${e.id}-${r}`)}):(0,t.jsx)("div",{className:"w-full h-full flex items-center justify-center bg-gray-800 text-gray-400",children:(0,t.jsx)("span",{className:"text-sm",children:"Нет фото"})}),"review"!==i?(0,t.jsx)("div",{className:"pointer-events-none absolute inset-x-0 bottom-[3px] bg-black/20 px-2 py-1.5 text-center",children:(0,t.jsx)("h3",{className:"truncate text-[11px] font-normal leading-tight text-white sm:text-xs",children:h})}):null,"review"===i&&x?(0,t.jsx)("div",{className:"pointer-events-none absolute inset-x-0 bottom-[3px] bg-black/20 px-2 py-1.5 text-center",children:(0,t.jsx)("p",{className:"truncate text-[11px] leading-tight text-white sm:text-xs",children:x})}):null,p>1?(0,t.jsx)("div",{className:"absolute inset-x-0 bottom-0 flex gap-px","aria-hidden":!0,children:f.map((e,r)=>(0,t.jsx)("div",{className:(0,l.cn)("h-[3px] flex-1",r===g?"bg-[#ddb15c]":"bg-gray-400/80")},r))}):null]}),"review"===i?(0,t.jsx)("h3",{className:"text-[#e8af40] text-sm font-semibold mt-2 line-clamp-2 text-center",children:h}):null]})},u=e=>({x:e.clientX,y:e.clientY}),o=(e,t)=>Math.hypot(t.x-e.x,t.y-e.y),c=(e,t)=>({x:(e.x+t.x)/2,y:(e.y+t.y)/2}),d=(e,t,r)=>Math.min(r,Math.max(t,e)),h=({entry:e,isOpen:i,onClose:h,initialIndex:x=0})=>{let m=(0,r.useMemo)(()=>e?(0,s.getPhotoFiles)(e):[],[e]),f=m.length,[p,g]=(0,r.useState)(0),[v,b]=(0,r.useState)(!0),[y,w]=(0,r.useState)(1),[j,k]=(0,r.useState)({x:0,y:0}),[N,M]=(0,r.useState)(!1),S=(0,r.useRef)(null),C=(0,r.useRef)(new Set([0])),[,E]=(0,r.useState)(0),D=(0,r.useRef)(null),L=(0,r.useRef)(null),R=(0,r.useRef)(null),I=(0,r.useRef)(!1),P=(0,r.useRef)(null),T=(0,r.useRef)(1),z=(0,r.useRef)({x:0,y:0}),B=(0,r.useRef)({x:0,y:0}),A=(0,r.useRef)({x:0,y:0}),X=(0,r.useRef)({x:0,y:0}),O=(0,r.useRef)(!1),W=(0,r.useRef)(!1),$=(0,r.useRef)(1),F=(0,r.useRef)({x:0,y:0}),U=(0,r.useRef)(null),K=(0,r.useRef)(!1);$.current=y,F.current=j;let Y=(0,r.useCallback)(()=>{S.current&&(clearTimeout(S.current),S.current=null)},[]),q=(0,r.useCallback)(()=>{b(!0),Y(),S.current=setTimeout(()=>{b(!1)},1e3)},[Y]),H=(0,r.useCallback)((e,t)=>{if(e<=1.01)return{x:0,y:0};let r=D.current,n=r?.clientWidth??window.innerWidth,l=r?.clientHeight??window.innerHeight,s=(e-1)*n/2,a=(e-1)*l/2;return{x:d(t.x,-s,s),y:d(t.y,-a,a)}},[]),G=(0,r.useCallback)(()=>{w(1),k({x:0,y:0}),$.current=1,F.current={x:0,y:0},O.current=!1,W.current=!1,P.current=null},[]),J=(0,r.useCallback)((e,t)=>{let r=D.current;if(!r){let t=d(e,1,4);w(t),k(H(t,F.current));return}let n=r.getBoundingClientRect(),l=t.x-n.left-n.width/2,s=t.y-n.top-n.height/2,a=$.current,i=d(e,1,4),u=i/a,o=H(i,{x:l-(l-F.current.x)*u,y:s-(s-F.current.y)*u});$.current=i,F.current=o,w(i),k(o)},[H]),Q=(0,r.useCallback)(e=>{if(f<=0)return;let t=new Set(C.current);t.add(e),f>1&&(t.add((e+1)%f),t.add((e-1+f)%f)),C.current=t,E(e=>e+1)},[f]),V=(0,r.useCallback)(()=>{f<=1||(q(),G(),g(e=>(e-1+f)%f))},[G,q,f]),Z=(0,r.useCallback)(()=>{f<=1||(q(),G(),g(e=>(e+1)%f))},[G,q,f]);(0,r.useEffect)(()=>
1{if(!i){Y(),b(!0),C.current=new Set,G();return}return document.body.style.overflow="hidden",q(),()=>{document.body.style.overflow="",Y()}},[Y,i,G,q]),(0,r.useEffect)(()=>{if(!i)return;let e=Number.isFinite(x)?Math.max(0,Math.min(x,Math.max(0,f-1))):0;g(e),Q(e),G()},[x,i,Q,G,f]),(0,r.useEffect)(()=>{i&&Q(p)},[p,i,Q]),(0,r.useEffect)(()=>{let e=e=>{if(i){if(q(),"Escape"===e.key)return $.current>1.01?void G():void h();if("ArrowLeft"===e.key)return void V();"ArrowRight"===e.key&&Z()}};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[Z,V,i,h,G,q]);let _=e=>{if(e.touches.length>=2)return;if(1===e.touches.length&&O.current){O.current=!1,P.current=null;let t=u(e.touches[0]);W.current=$.current>1.01,A.current=t,X.current=F.current,L.current=null,R.current=null;return}if(O.current){O.current=!1,P.current=null,$.current<=1.05&&G(),L.current=null,R.current=null,W.current=!1,M(!1);return}if(W.current){W.current=!1,$.current<=1.05&&G(),L.current=null,R.current=null,M(!1);return}if(K.current||$.current>1.01||f<=1||null==L.current){L.current=null,R.current=null,M(!1);return}let t=e.changedTouches[0],r=t.clientX-L.current,n=t.clientY-(R.current??t.clientY);if((L.current=null,R.current=null,M(!1),!(!I.current&&Math.abs(r)<=Math.abs(n)))&&!(50>Math.abs(r))){if(r<0)return void Z();V()}};if((0,r.useEffect)(()=>{let e=D.current;if(!e||!i)return;let t=e=>{(e.touches.length>=2||$.current>1.01)&&e.preventDefault()};return e.addEventListener("touchmove",t,{passive:!1}),()=>e.removeEventListener("touchmove",t)},[i]),!i||!e)return null;let ee=(0,s.getPhotoEntryName)(e);f>0&&!C.current.has(p)&&(C.current.add(p),f>1&&(C.current.add((p+1)%f),C.current.add((p-1+f)%f)));let et=Array.from(C.current).sort((e,t)=>e-t);return(0,t.jsxs)("div",{className:"fixed inset-0 z-50 bg-white",onClick:e=>{e.target===e.currentTarget&&h()},onMouseMove:q,"aria-modal":"true","aria-label":ee,role:"dialog",children:[(0,t.jsx)("button",{onClick:e=>{e.preventDefault(),e.stopPropagation(),h()},className:(0,l.cn)("absolute top-3 right-3 z-30 rounded-full bg-black/5 p-2 text-black/70 transition-opacity duration-150 hover:bg-black/10 hover:text-black md:top-5 md:right-5",v?"opacity-100":"opacity-0"),"aria-label":"Закрыть модальное окно",tabIndex:0,children:(0,t.jsx)("svg",{className:"h-6 w-6 md:h-7 md:w-7",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})}),(0,t.jsx)("div",{ref:D,className:(0,l.cn)("absolute inset-0 overflow-hidden touch-none",y>1.01?"cursor-grab":"cursor-default"),onTouchStart:e=>{if(q(),K.current=!1,M(!0),e.touches.length>=2){let t=u(e.touches[0]),r=u(e.touches[1]);O.current=!0,W.current=!1,I.current=!1,L.current=null,R.current=null,P.current=o(t,r),T.current=$.current,z.current=F.current,B.current=c(t,r),U.current=null;return}let t=u(e.touches[0]);L.current=t.x,R.current=t.y,I.current=!1,$.current>1.01?(W.current=!0,A.current=t,X.current=F.current):W.current=!1;let r=Date.now(),n=U.current;if(n&&r-n.time<=300&&28>=Math.hypot(t.x-n.x,t.y-n.y)){U.current=null,(K.current=!0,$.current>1.05)?G():J(2.5,t),L.current=null,R.current=null,W.current=!1,M(!1);return}U.current={time:r,x:t.x,y:t.y}},onTouchMove:e=>{if(e.touches.length>=2&&P.current){O.current=!0,W.current=!1;let t=u(e.touches[0]),r=u(e.touches[1]),n=o(t,r),l=c(t,r),s=d(T.current*n/P.current,1,4),a=D.current;if(!a){w(s),k(H(s,z.current));return}let i=a.getBoundingClientRect(),h=B.current.x-i.left-i.width/2,x=B.current.y-i.top-i.height/2,m=l.x-i.left-i.width/2,f=l.y-i.top-i.height/2,p=s/T.current,g=H(s,{x:m-(h-z.current.x)*p,y:f-(x-z.current.y)*p});$.current=s,F.current=g,w(s),k(g),K.current=!0;return}if(W.current&&$.current>1.01&&1===e.touches.length){let t=u(e.touches[0]),r=H($.current,{x:X.current.x+(t.x-A.current.x),y:X.current.y+(t.y-A.current.y)});F.current=r,k(r),K.current=!0;return}if(f<=1||null==L.current||null==R.current||$.current>1.01)return;let t=e.touches[0],r=t.clientX-L.current;Math.abs(r)>Math.abs(t.clientY-R.current)&&Math.abs(r)>10&&(I.current=!0)},onTouchEnd:_,onTouchCancel:_,children:(0,t.jsx)("div",{className:"absolute inset-0 origin-center will-change-transform",style:{transform:`translate3d(${j.x}px, ${j.y}px, 0) scale(${y})`,transition:N?"none":"transform 160ms ease-out"},children:0===et.length?(0,t.jsx)("div",{className:"flex h-full w-full items-center justify-center text-black/50",children:"Фото недоступно"}):et.map(e=>{let r=m[e],i=r?.url?(0,s.toAbsoluteStrapiUrl)(r.url):null;if(!i)return null;let u=e===p;return(0,t.jsx)(n.default,{src:i,alt:ee,fill:!0,unoptimized:(0,a.shouldBypassNextImageOptimizer)(i),className:(0,l.cn)("object-contain pointer-events-none select-none",u?"opacity-100":"opacity-0"),sizes:"100vw",priority:u,loading:"eager","aria-hidden":!u,draggable:!1},`${r.id}-${e}`)})})}),f>1?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("button",{onClick:e=>{e.preventDefault(),e.stopPropagation(),V()},className:(0,l.cn)("absolute left-2 top-1/2 z-30 -translate-y-1/2 roun
1ded-full bg-black/5 p-2 text-black/70 transition-opacity duration-150 hover:bg-black/10 hover:text-black md:left-5 md:p-3",v?"opacity-100":"opacity-0"),"aria-label":"Предыдущее фото",tabIndex:0,children:(0,t.jsx)("svg",{className:"h-5 w-5 md:h-6 md:w-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 19l-7-7 7-7"})})}),(0,t.jsx)("button",{onClick:e=>{e.preventDefault(),e.stopPropagation(),Z()},className:(0,l.cn)("absolute right-2 top-1/2 z-30 -translate-y-1/2 rounded-full bg-black/5 p-2 text-black/70 transition-opacity duration-150 hover:bg-black/10 hover:text-black md:right-5 md:p-3",v?"opacity-100":"opacity-0"),"aria-label":"Следующее фото",tabIndex:0,children:(0,t.jsx)("svg",{className:"h-5 w-5 md:h-6 md:w-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})})})]}):null]})};e.s(["PhotoModal",0,h],71432);let x=({photo:e,alt:r,onClick:i,onPointerDown:u,catalogMode:o=!1})=>{let c=(0,s.toAbsoluteStrapiUrl)(e.formats?.medium?.url||e.formats?.small?.url||e.url);return(0,t.jsx)("div",{className:(0,l.cn)("relative w-full bg-gray-900 rounded-lg overflow-hidden cursor-pointer group",o?"aspect-square md:aspect-auto md:h-[262px]":"h-[262px]"),onClick:e=>{e.preventDefault(),e.stopPropagation(),i()},onPointerDown:u,onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),i())},tabIndex:0,role:"button","aria-label":"Открыть фото",children:(0,t.jsx)(n.default,{src:c,alt:r,fill:!0,unoptimized:(0,a.shouldBypassNextImageOptimizer)(c),className:"object-cover group-hover:scale-105 transition-transform duration-200",sizes:"(max-width: 640px) 100vw, (max-width: 1024px) 50vw, 33vw"})})};e.s(["PhotoCardsSection",0,({entries:e,slider:n,count:s,variant:a,title:u,autoslide:o=!0,showMoreLabel:c="Показать все"})=>{let[d,x]=(0,r.useState)(null),[m,f]=(0,r.useState)(!1),[p,g]=(0,r.useState)(0),[v,b]=(0,r.useState)(!1),[y,w]=(0,r.useState)(0),[j,k]=(0,r.useState)(null),[N,M]=(0,r.useState)(null),[S,C]=(0,r.useState)(!1),[E,D]=(0,r.useState)(0),[L,R]=(0,r.useState)(!1),I=(0,r.useRef)(null),P=(0,r.useRef)(null),[T,z]=(0,r.useState)(!1),[B,A]=(0,r.useState)(0),[X,O]=(0,r.useState)(!1),[W,$]=(0,r.useState)(3);(0,r.useEffect)(()=>{let e=()=>{O(window.innerWidth<1024),$(window.innerWidth<768?1:3)};return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);let F=Array.isArray(s)?X?s[1]:s[0]:s;(0,r.useEffect)(()=>{if(!n)return;let e=I.current;if(!e)return;let t=()=>{A((e.offsetWidth-(W-1)*16)/W)};t();let r=new ResizeObserver(t);return r.observe(e),()=>r.disconnect()},[n,W]),n&&e.length;let U=n?Math.max(0,e.length-W):0;(0,r.useEffect)(()=>{n&&w(e=>Math.min(e,U))},[e.length,W,U,n]);let K=n||v?e:e.slice(0,F),Y=(e,t)=>{x(e),g(t),f(!0)},q=()=>{f(!1),x(null),g(0)},H=(0,r.useCallback)(t=>{n&&0!==e.length&&w(Math.max(0,Math.min(t,U)))},[e.length,U,n]),G=(0,r.useCallback)(()=>{y<U?H(y+1):H(0)},[y,H,U]),J=(0,r.useCallback)(()=>{y>0?H(y-1):H(U)},[y,H,U]);(0,r.useEffect)(()=>{if(!n||!S||null===j)return;let e=j,t=t=>{let r=t.clientX-j;D(r),e=t.clientX,M(t.clientX),Math.abs(r)>5&&R(!0)},r=()=>{let t=j-e;t>50?G():t<-50&&J(),k(null),M(null),D(0),C(!1),setTimeout(()=>R(!1),100)};return document.addEventListener("mousemove",t),document.addEventListener("mouseup",r),()=>{document.removeEventListener("mousemove",t),document.removeEventListener("mouseup",r)}},[G,J,S,50,n,j]);let Q=(0,r.useRef)(G);return(Q.current=G,(0,r.useEffect)(()=>{if(!n||e.length<=W)return;let t=P.current;if(!t)return;let r=new IntersectionObserver(e=>{let[t]=e;z(t?.isIntersecting??!1)},{threshold:.2});return r.observe(t),()=>r.disconnect()},[e.length,W,n]),(0,r.useEffect)(()=>{if(!n||!o||!T||e.length<=W)return;let t=setInterval(()=>{Q.current()},5500);return()=>clearInterval(t)},[o,e.length,T,W,n]),0===e.length)?null:n?(0,t.jsxs)("div",{ref:P,className:"[overflow-x:clip]",children:[(0,t.jsxs)("div",{className:"relative mb-4 md:mb-[30px]",children:[(0,t.jsx)("h2",{className:"mx-auto max-w-[90%] text-center text-2xl md:text-[48px] font-bold text-black leading-tight",children:u??"Фото"}),e.length>W?(0,t.jsxs)("div",{className:"absolute right-0 top-1/2 hidden -translate-y-1/2 items-center gap-2 md:flex",children:[(0,t.jsx)("button",{type:"button",onClick:J,disabled:0===y,"aria-label":"Предыдущий слайд",tabIndex:0,className:(0,l.cn)("inline-flex size-9 items-center justify-center rounded-full transition-all duration-300",0===y?"text-[#f5d89f] cursor-not-allowed":"text-[#DDAF5B] hover:text-white hover:bg-[#DDAF5B]"),children:(0,t.jsx)("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 19l-7-7 7-7"})})}),(0,t.jsx)("button",{type:"button",onClick:G,disabled:y===U,"aria-label":"Следующий слайд",tabIndex:0,className:(0,l.cn)("inline-flex size-9 items-center justify-center rounded-full transition-all duration-300",y===U?"text-[#f5d89f] cursor-not-allowed":"text-[#DDAF5B] hover:text-white hover:bg-[#DDAF5B]"),children:(0,t.jsx)("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})})})]}):null]}),(0,t.jsx)("div",{ref:I,className:"pt-4 pr-0 md:pr-[60px] [overflow-x:clip] relative w-full select-none",onTouchStart:e=>{n&&(M(null),k(e.targetTouches[0].clientX))},onTouchMove:e=>{n&&M(e.targetTouches[0].clientX)},onTouchEnd:()=>
1{if(!n||!j||!N)return;let e=j-N;e>50&&G(),e<-50&&J(),k(null),M(null)},onMouseDown:e=>{n&&(e.preventDefault(),M(null),k(e.clientX),D(0),R(!1),C(!0))},role:"region","aria-label":"Слайдер фото",tabIndex:0,children:(0,t.jsx)("div",{className:(0,l.cn)(n&&S?"cursor-grabbing":"cursor-grab"),children:(0,t.jsx)("div",{className:"flex",style:{gap:16,transform:`translateX(calc(-${y*((B||300)+16)}px + ${E}px))`,transition:S?"none":"transform 500ms ease-in-out"},children:e.map((e,r)=>(0,t.jsx)("div",{className:"flex-shrink-0",style:{width:B||300,minWidth:B||300},children:(0,t.jsx)(i,{entry:e,variant:a,isPriority:0===r,onOpen:(e,t)=>{L||S||Y(e,t)}})},e.id))})})}),(0,t.jsx)(h,{entry:d,isOpen:m,onClose:q,initialIndex:p})]}):(0,t.jsxs)("div",{className:"w-full",children:[(0,t.jsx)("div",{className:"grid grid-cols-2 md:grid-cols-3 gap-3 md:gap-4",children:K.map((e,r)=>(0,t.jsx)(i,{entry:e,variant:a,onOpen:Y,catalogMode:!0,isPriority:0===r},e.id))}),!v&&e.length>F?(0,t.jsx)("div",{className:"mt-6 text-center",children:(0,t.jsx)("button",{onClick:()=>b(!0),className:"w-full max-w-md px-6 py-3 bg-gray-800 text-[#e8af40] rounded-lg hover:bg-gray-900 transition-colors font-medium md:w-auto","aria-label":c,tabIndex:0,children:c})}):null,(0,t.jsx)(h,{entry:d,isOpen:m,onClose:q,initialIndex:p})]})},"PhotoMediaSection",0,({entry:e,slider:n,count:a,onOpen:i,showTitle:u=!0,autoslide:o=!0,showMoreLabel:c="Показать все"})=>{let d=(0,r.useMemo)(()=>(0,s.getPhotoFiles)(e),[e]),h=(0,s.getPhotoEntryName)(e),[m,f]=(0,r.useState)(!1),[p,g]=(0,r.useState)(!1),[v,b]=(0,r.useState)(3);(0,r.useEffect)(()=>{let e=()=>{g(window.innerWidth<1024),b(window.innerWidth<768?1:3)};return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]);let y=Array.isArray(a)?p?a[1]:a[0]:a,w=n||m?d:d.slice(0,y),j=n?Math.max(0,d.length-v):0,[k,N]=(0,r.useState)(0);(0,r.useEffect)(()=>{N(e=>Math.min(e,j))},[v,j]);let[M,S]=(0,r.useState)(null),[C,E]=(0,r.useState)(null),[D,L]=(0,r.useState)(!1),[R,I]=(0,r.useState)(0),[P,T]=(0,r.useState)(!1),z=(0,r.useRef)(null),B=(0,r.useRef)(null),[A,X]=(0,r.useState)(!1),[O,W]=(0,r.useState)(0),$=(0,r.useCallback)(e=>{n&&0!==d.length&&N(Math.max(0,Math.min(e,j)))},[j,d.length,n]),F=(0,r.useCallback)(()=>{k<j?$(k+1):$(0)},[k,$,j]),U=(0,r.useCallback)(()=>{k>0?$(k-1):$(j)},[k,$,j]),K=(0,r.useRef)(F);return(K.current=F,(0,r.useEffect)(()=>{if(!n||d.length<=v)return;let e=B.current;if(!e)return;let t=new IntersectionObserver(e=>{let[t]=e;X(t?.isIntersecting??!1)},{threshold:.2});return t.observe(e),()=>t.disconnect()},[d.length,v,n]),(0,r.useEffect)(()=>{if(!n||!o||!A||d.length<=v)return;let e=setInterval(()=>K.current(),5500);return()=>clearInterval(e)},[o,A,d.length,v,n]),(0,r.useEffect)(()=>{if(!n)return;let e=z.current;if(!e)return;let t=()=>W((e.offsetWidth-(v-1)*16)/v);t();let r=new ResizeObserver(t);return r.observe(e),()=>r.disconnect()},[n,v]),(0,r.useEffect)(()=>{if(!n||!D||null===M)return;let e=M,t=t=>{let r=t.clientX-M;I(r),e=t.clientX,E(t.clientX),Math.abs(r)>5&&T(!0)},r=()=>{let t=M-e;t>50?F():t<-50&&U(),S(null),E(null),I(0),L(!1),setTimeout(()=>T(!1),100)};return document.addEventListener("mousemove",t),document.addEventListener("mouseup",r),()=>{document.removeEventListener("mousemove",t),document.removeEventListener("mouseup",r)}},[F,U,D,50,n,M]),0===d.length)?null:n?(0,t.jsxs)("div",{ref:B,className:"w-full [overflow-x:clip]",children:[(0,t.jsxs)("div",{className:"relative mb-4 md:mb-[30px]",children:[(0,t.jsx)("h2",{className:"mx-auto max-w-[90%] text-center text-2xl md:text-[48px] font-bold text-black leading-tight",children:h}),d.length>v?(0,t.jsxs)("div",{className:"absolute right-0 top-1/2 hidden -translate-y-1/2 items-center gap-2 md:flex",children:[(0,t.jsx)("button",{type:"button",onClick:U,disabled:0===k,"aria-label":"Предыдущий слайд",tabIndex:0,className:(0,l.cn)("inline-flex size-9 items-center justify-center rounded-full transition-all duration-300",0===k?"text-[#f5d89f] cursor-not-allowed":"text-[#DDAF5B] hover:text-white hover:bg-[#DDAF5B]"),children:(0,t.jsx)("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M15 19l-7-7 7-7"})})}),(0,t.jsx)("button",{type:"button",onClick:F,disabled:k===j,"aria-label":"Следующий слайд",tabIndex:0,className:(0,l.cn)("inline-flex size-9 items-center justify-center rounded-full transition-all duration-300",k===j?"text-[#f5d89f] cursor-not-allowed":"text-[#DDAF5B] hover:text-white hover:bg-[#DDAF5B]"),children:(0,t.jsx)("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M9 5l7 7-7 7"})})})]}):null]}),(0,t.jsx)("div",{ref:z,className:"pt-4 pr-0 md:pr-[60px] [overflow-x:clip] relative w-full select-none",onTouchStart:e=>{n&&(E(null),S(e.targetTouches[0].clientX))},onTouchMove:e=>{n&&E(e.targetTouches[0].clientX)},onTouchEnd:()=>
1{if(!n||!M||!C)return;let e=M-C;e>50&&F(),e<-50&&U(),S(null),E(null)},onMouseDown:e=>{n&&(e.preventDefault(),E(null),S(e.clientX),I(0),T(!1),L(!0))},role:"region","aria-label":"Слайдер фото",tabIndex:0,children:(0,t.jsx)("div",{className:(0,l.cn)(D?"cursor-grabbing":"cursor-grab"),children:(0,t.jsx)("div",{className:"flex",style:{gap:16,transform:`translateX(calc(-${k*((O||300)+16)}px + ${R}px))`,transition:D?"none":"transform 500ms ease-in-out"},children:d.map((r,n)=>(0,t.jsx)("div",{className:"flex-shrink-0",style:{width:O||300,minWidth:O||300},children:(0,t.jsx)(x,{photo:r,alt:h,onClick:()=>{P||D||i(e,n)},onPointerDown:e=>{(P||D)&&(e.preventDefault(),e.stopPropagation())}})},`${r.id}-${n}`))})})})]}):(0,t.jsxs)("div",{className:"w-full",children:[u?(0,t.jsx)("h3",{className:"text-xl font-bold text-gray-900 mb-4",children:h}):null,(0,t.jsx)("div",{className:"grid grid-cols-2 md:grid-cols-3 gap-3 md:gap-4",children:w.map((r,n)=>(0,t.jsx)(x,{photo:r,alt:h,onClick:()=>i(e,n),catalogMode:!0},`${r.id}-${n}`))}),!m&&d.length>y?(0,t.jsx)("div",{className:"mt-6 text-center",children:(0,t.jsx)("button",{onClick:()=>f(!0),className:"w-full max-w-md px-6 py-3 bg-gray-800 text-[#e8af40] rounded-lg hover:bg-gray-900 transition-colors font-medium md:w-auto","aria-label":c,tabIndex:0,children:c})}):null]})}],32380)},379,e=>{"use strict";var t=e.i(43476),r=e.i(71645),n=e.i(32380),l=e.i(71432);e.s(["OverviewsPhotoSectionClient",0,({slider:e,count:s,entries:a,single:i,autoslide:u=!0})=>{let[o,c]=(0,r.useState)(null),[d,h]=(0,r.useState)(!1),[x,m]=(0,r.useState)(0);if(0===a.length)return null;let f=(e,t)=>{c(e),m(t),h(!0)},p=()=>{h(!1),c(null),m(0)};return i?(0,t.jsxs)("section",{className:"my-[2.5rem] md:my-[5.25rem]",children:[(0,t.jsx)("h2",{className:"text-2xl md:text-[48px] font-bold text-gray-900 mb-4 md:mb-8 text-center",children:"Фото обзоры"}),a.map(r=>(0,t.jsx)("div",{className:"mb-12",children:(0,t.jsx)(n.PhotoMediaSection,{entry:r,slider:e,count:s,onOpen:f,autoslide:u})},r.id)),(0,t.jsx)(l.PhotoModal,{entry:o,isOpen:d,onClose:p,initialIndex:x})]}):(0,t.jsxs)("section",{className:"my-[2.5rem] md:my-[5.25rem]",children:[!e&&(0,t.jsx)("h2",{className:"text-2xl md:text-[48px] font-bold text-gray-900 mb-4 md:mb-8 text-center",children:"Фото обзоры"}),(0,t.jsx)(n.PhotoCardsSection,{entries:a,slider:e,count:s,variant:"overview",title:e?"Фото обзоры":void 0,autoslide:u}),(0,t.jsx)(l.PhotoModal,{entry:o,isOpen:d,onClose:p,initialIndex:x})]})}])}]);

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.