PageSourceSearch

https://planeta-avtodv.ru/_next/static/chunks/pages/cart-f8f1a0c09d69bfdc.js

js planeta-avtodv.ru collected 2026-10-08 10:00:32 UTC 18,423 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9190],{1742:function(e,t,s){(window.__NEXT_P=window.__NEXT_P||[]).push(["/cart",function(){return s(8755)}])},4604:function(e,t,s){"use strict";s.d(t,{Z:function(){return d}});var a=s(4335);let l="/groups",r="/users",n="/items",c="/orders",i="/carts",o="/companies";var d={groups:{index:e=>(0,a.R1)(`${l}`,e),show:(e,t,s)=>(t={...t,id:void 0},(0,a.R1)(`${l}/${e}`,t,s))},users:{index:e=>(0,a.R1)(`${r}`,e),create:e=>(0,a.sg)(`${r}`,e),show:e=>(0,a.R1)(`${r}/${e}`),init:e=>(0,a.sg)("/init"),profile:()=>(0,a.R1)(`${r}/profile`),signIn:e=>(0,a.sg)("/sign_in",e),update:(e,t)=>(0,a.nc)(`${r}/${e}`,t),change_password:e=>(0,a.nc)(`${r}/change_password`,e),remember_password:e=>(0,a.sg)(`${r}/remember_password`,e)},items:{show:e=>(0,a.R1)(`${n}/${e}`),rand:()=>(0,a.R1)(`${n}/rand`),set_favorite:e=>(0,a.sg)(`${n}/${e}/set_favorite`)},orders:{sync:e=>(0,a.sg)(`${c}/sync`,e),init:()=>(0,a.R1)(`${c}/init`),checkOut:e=>(0,a.sg)(`${c}/checkout`,e),index:e=>(0,a.R1)(`${c}`,{page:e}),show:e=>(0,a.R1)(`${c}/${e}`)},search:{index:e=>(0,a.R1)("/search",e)},carts:{index:()=>(0,a.R1)(`${i}`),show:e=>(0,a.R1)(`${i}/${e}`),quote:(e,t)=>(0,a.sg)(`${i}/${e}/quote`,{excludedItemIds:t}),add_item:e=>(0,a.sg)(`${i}/add_item`,e),create_cart:e=>(0,a.sg)(`${i}`,e),move_item:e=>(0,a.sg)([i,"move_item"].join("/"),e),deleteItem:e=>(0,a.sg)([i,"delete_item"].join("/"),e),checkout:e=>(0,a.sg)([i,"checkout"].join("/"),e)},companies:{index:()=>(0,a.R1)(`${o}`),create:e=>(0,a.sg)(o,e),update:(e,t)=>(0,a.nc)([o,e].join("/"),t)}}},7670:function(e,t){"use strict";t.Z=e=>e},284:function(e,t,s){"use strict";var a=s(5893),l=s(7294),r=s(4006),n=s(2294);t.Z=({qty:e,setQty:t,onFocus:s,onBlur:c,handleSubmit:i,min:o})=>{let[d,u]=l.useState(e),m=l.useRef(null);return l.useEffect(()=>{e!==d&&o&&d&&parseInt(d)>o&&t(d)},[d]),l.useEffect(()=>{e!==d&&o&&d&&parseInt(d)<o&&u(e)},[e]),l.useEffect(()=>{d!==e&&t(d)},[d]),(0,a.jsxs)("div",{className:"InputNumber InputNumber--arrows flex h-8 relative w-full",children:[(0,a.jsx)("input",{ref:m,onChange:e=>{u(e.target.value)},onFocus:s,onBlur:c,value:d,onKeyPress:e=>{"Enter"===e.key&&i(),/[0-9]/.test(e.key)||e.preventDefault()},className:"rounded-md overflow-hidden border pl-2 relative w-full text-sm focus:border-blue-500 hover:border-blue-500"}),(0,a.jsxs)("div",{className:"absolute right-0 top-0 bottom-0 border-l m-[1px]",children:[(0,a.jsx)("span",{role:"button","aria-label":"Увеличить количество",className:"flex items-center justify-center cursor-pointer h-[55%] px-2",onMouseDown:e=>{e.preventDefault(),m.current.focus(),u(e=>e?(parseInt(e)+1).toString():"1")},children:(0,a.jsx)(r.Z,{className:"h-2 w-2 text-gray-500"})}),(0,a.jsx)("span",{role:"button","aria-label":"Уменьшить количество",className:"flex items-center justify-center cursor-pointer h-[45%] px-2 border-t",onMouseDown:e=>{e.preventDefault(),m.current.focus(),u(e=>{if(e){let t=parseInt(e)-1;return t>0?t.toString():o?o.toString():""}})},children:(0,a.jsx)(n.Z,{className:"h-2 w-2 text-gray-500"})})]})]})}},1683:function(e,t,s){"use strict";var a=s(5893);s(7294);var l=s(7670);t.Z=({item:e,size:t="item"})=>(0,a.jsx)("img",{src:(0,l.Z)(e.image[t]),className:"select-none max-h-full flex justify-center items-center"})},9749:function(e,t,s){"use strict";s.d(t,{Ee:function(){return u},Iu:function(){return x},et:function(){return m},nI:function(){return d},o7:function(){return i}});var a=s(5893),l=s(1664),r=s.n(l),n=s(5457);let c=e=>`−${e.percent}% от ${e.minimumQuantity} шт.`;function i({detail:e,className:t=""}){return(0,a.jsxs)("span",{className:`inline-flex w-fit max-w-full items-center gap-1 ${t}`,children:[(0,a.jsx)("span",{className:"inline-flex items-center rounded-[3px] bg-[#fec949] px-1.5 py-1 text-[10px] font-bold uppercase leading-none !text-black",children:"Акция"}),(0,a.jsx)("span",{className:"inline-flex items-center whitespace-nowrap rounded-[3px] border border-[#fec949] bg-white px-1.5 py-[3px] text-[10px] font-bold leading-none !text-black",children:e})]})}let o=e=>{var t;return null===(t=e.promotionOffers)||void 0===t?void 0:t[0]};function d({item:e}){var t;let s=null===(t=e.rewardCampaignOffers)||void 0===t?void 0:t[0];return s?(0,a.jsx)(r(),{href:s.path,className:"inline-flex w-fit roun
1ded-[3px] !text-black transition-opacity hover:!text-black hover:opacity-80 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-orange-500 focus-visible:ring-offset-1",onClick:e=>e.stopPropagation(),children:(0,a.jsx)(i,{detail:"Покупка идёт в зачёт"})}):null}function u({item:e}){let t=o(e);if(!t)return null;let s=e.promotionOffers.length>1?`До −${t.percent}% по акциям`:c(t);return(0,a.jsx)(r(),{href:t.path,className:"inline-flex w-fit rounded-[3px] !text-black transition-opacity hover:!text-black hover:opacity-80 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-orange-500 focus-visible:ring-offset-1",onClick:e=>e.stopPropagation(),children:(0,a.jsx)(i,{detail:s})})}function m({item:e}){let t=o(e);return!t||t.unitPrice>=e.price?null:(0,a.jsxs)("div",{className:"mt-0.5 whitespace-nowrap text-[11px] font-semibold text-blue-700",children:[(0,n.Z)(t.unitPrice)," от ",t.minimumQuantity," шт."]})}function x({item:e}){let t=o(e);return(0,a.jsxs)("section",{className:"my-3 flex flex-wrap items-start justify-between gap-3","aria-label":"Цена и акции",children:[(0,a.jsxs)("div",{className:"flex flex-wrap gap-1",children:[t?(0,a.jsx)(u,{item:e}):null,(0,a.jsx)(d,{item:e})]}),(0,a.jsxs)("div",{className:"ml-auto text-right",children:[(0,a.jsx)("div",{className:"whitespace-nowrap text-base font-semibold text-slate-950",children:(0,n.Z)(e.price)}),(0,a.jsx)(m,{item:e})]})]})}},8755:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return A}});var a=s(5893),l=s(7294),r=s(7866),n=s(1683),c=s(5457),i=s(9302),o=s(4184),d=s.n(o),u=s(4604),m=s(8100),x=s(4335),h=s(1163),p=s.n(h),b=s(284),f=s(1594),j=s(4003),v=s(7851),g=s(4622),N=s(9749);let P=l.createContext(""),y={onlySelectedItems:!1,items:[],excludedItems:[]},T=(e,t)=>{switch(t.type){case"test_update":console.log(e);let s=e.excludedItems.indexOf(t.payload);if(s>=0)return{...e,excludedItems:[...e.excludedItems.slice(0,s),...e.excludedItems.slice(s+1,e.excludedItems.length)]};return{...e,excludedItems:[...e.excludedItems,t.payload]};case"setAll":return{...e,excludedItems:[]};case"setNone":return{...e,excludedItems:e.items};case"setItems":return{...e,items:t.payload};case"reset":return y;default:return e}},w=l.createContext({state:y,dispatch:()=>null}),I=async(...e)=>(await x.hi.get(`/${e[0]}/${e[1]}`)).data,C=l.memo(({item:e})=>{let{state:t,dispatch:s}=l.useContext(w);return(0,a.jsxs)("div",{className:d()(["ProductTable-row","ProductTable--cart",{"ProductTable-row__unavailable":!e.avaiable}]),children:[(0,a.jsx)("div",{className:"ProductTable-cart-select",children:(0,a.jsx)("input",{type:"checkbox","aria-label":`Выбрать ${e.title}`,className:"checkbox",checked:!t.excludedItems.includes(e.id),onChange:()=>s({type:"test_update",payload:e.id})})}),(0,a.jsx)("div",{className:"ProductTable-cell-image ProductTable-cart-image",style:{width:50,height:50},children:(0,a.jsx)(n.Z,{item:e,size:"thumb"})}),(0,a.jsxs)("div",{className:"ProductTable-content-props ProductTable-cell",children:[(0,a.jsx)("span",{className:"ProductTable-content-props-title",children:"Код:"}),(0,a.jsx)("span",{className:"ProductTable-content-props-value",children:e.code}),(0,a.jsx)("span",{className:"ProductTable-content-props-title",children:"Артикул:"}),(0,a.jsx)("span",{className:"ProductTable-content-props-value",children:e.article})]}),(0,a.jsxs)("div",{className:"ProductTable-content flex-col",children:[(0,a.jsx)("div",{className:"ProductTable-cell-title",style:{lineHeight:"24px",paddingTop:4,fontSize:14},children:e.title}),!e.appliedPromotionJson&&e.promotionProgress&&e.promotionProgress.remainingQuantity>0?(0,a.jsx)(N.o7,{className:"mt-1",detail:`Добавьте ещё ${e.promotionProgress.remainingQuantity} шт.`}):null]}),(0,a.jsxs)("div",{className:"ProductTable-cell-price ProductTable-cell ProductTable-cart-price",children:[(0,a.jsx)("span",{className:"ProductTable-mobile-label",children:"Цена"}),(0,a.jsx)("span",{className:"ProductTable-cart-price-value",children:(0,c.Z)(e.price)}),e.appliedPromotionJson&&e.basePrice>e.price?(0,a.jsx)("span",{className:"ProductTable-cart-price-base text-xs font-medium text-slate-400 line-through decoration-orange-500",children:(0,c.Z)(e.basePrice)}):null,(0,a.jsx)("span",{className:"ProductTable-unit-caption",children:"за единицу"}),e.appliedPromotionJson?(0,a.jsx)(N.o7,{detail:`−${e.appliedPromotionJson.percent}%`}):null,e.betterPriceRetained?(0,a.jsx)("span",{className:"ProductTable-cart-price-note text-[10px] font-medium leading-tight text-emerald-700",children:"Сохранена более выгодная цена"}):null]}),(0,a.jsxs)("div",{className:"ProductTable-cell ProductTable-cell-qty",children:[(0,a.jsx)("span",{className:"ProductTable-mobile-label",children:"Остаток"}),e.avaiable&&(0,a.jsxs)("div",{className:"ProductTable-stock-detail
1s",children:[(0,a.jsx)("span",{className:"ProductTable-stock-label",children:"Остаток:"}),(0,a.jsx)("span",{children:e.avaiableQty}),e.isRemote&&(0,a.jsx)("span",{className:"ProductTable-remote-badge",children:"13 дней"})]}),!e.avaiable&&(0,a.jsx)("span",{className:"ProductTable-stock-status ProductTable-stock-status--unavailable",children:"Нет на складе"})]}),(0,a.jsxs)("div",{className:"ProductTable-cell-form ProductTable-cell ProductTable-cart-form",style:{width:120,padding:"0px 10px"},children:[(0,a.jsx)("span",{className:"ProductTable-mobile-label",children:"Заказ"}),(0,a.jsx)(_,{item:e})]}),(0,a.jsxs)("div",{className:"ProductTable-cell-price ProductTable-cell ProductTable-cart-amount",children:[(0,a.jsx)("span",{className:"ProductTable-mobile-label",children:"Сумма:"}),(0,a.jsx)("span",{className:"ProductTable-cart-amount-value",children:(0,c.Z)(e.amount)}),e.promotionSavings>0?(0,a.jsxs)("span",{className:"ProductTable-cart-savings text-[10px] font-semibold text-blue-700",children:["Экономия ",(0,c.Z)(e.promotionSavings)]}):null]}),(0,a.jsx)("div",{className:"ProductTable-cart-delete",children:(0,a.jsx)(Z,{item:e})})]})}),$=()=>{let{state:e,dispatch:t}=l.useContext(w);return(0,a.jsxs)("div",{className:"ProductTable-head",children:[(0,a.jsx)("div",{className:"ProductTable-head-content",children:(0,a.jsx)("div",{children:(0,a.jsxs)("div",{className:"flex ml-3 space-x-2 items-center cursor-pointer",children:[(0,a.jsx)("input",{type:"checkbox",checked:e.items.length!==e.excludedItems.length&&(0===e.excludedItems.length&&e.items.length>0||e.excludedItems.length>0&&e.items.length>0||void 0),onChange:()=>{console.log(e.items.length,e.excludedItems.length),0===e.excludedItems.length?t({type:"setNone"}):t({type:"setAll"})},className:"checkbox",id:"select_all"}),(0,a.jsx)("label",{htmlFor:"select_all",className:"cursor-pointer",children:"Выбрать все"})," "]})})}),(0,a.jsx)("div",{className:"ProductTable-head-price ProductTable-head-price--cart",children:"Цена"}),(0,a.jsx)("div",{className:"ProductTable-head-qty",children:"Остаток"}),(0,a.jsx)("div",{className:"ProductTable-head-order",style:{width:120,padding:"0px 10px"},children:"заказ"}),(0,a.jsx)("div",{className:"ProductTable-head-price ProductTable-head-price--cart",children:"Сумма"}),(0,a.jsx)("div",{style:{width:50}})]})},k=({items:e})=>(0,a.jsxs)("div",{className:"ProductTable",children:[(0,a.jsx)($,{}),(0,a.jsx)("div",{className:"ProductTable-body",children:e.map(e=>(0,a.jsx)(C,{item:e},e.id))})]}),_=({item:e})=>{let t=l.useRef(!1),[s,r]=l.useState(e.qty),n=l.useContext(P);l.useEffect(()=>{!1===t.current&&e.qty!==s&&r(e.qty)},[e]);let c=(0,i.Z)(e=>{o()},500),o=async t=>{t&&t.preventDefault(),await u.Z.carts.add_item({itemId:e.itemId,qty:s||0,cartId:n,sourceAttribution:{origin:"other",selection:"regular"}}),(0,m.JG)(["carts",n]),(0,m.JG)("carts")};return(0,a.jsx)(a.Fragment,{children:(0,a.jsx)("form",{onSubmit:e=>o(e),children:(0,a.jsx)("div",{className:"Product-form-container",children:(0,a.jsx)("div",{className:"Product-form-container-input-container",children:(0,a.jsx)("div",{children:(0,a.jsx)(b.Z,{qty:s,setQty:e=>{let t;console.log(typeof e),"string"==typeof e?(t=parseInt(e),console.log("1-")):(console.log(t=e||void 0),console.log("2-")),t&&t>0?(console.log("3-"),r(t)):(console.log("4-"),r(void 0)),console.log("handle change"),c.callback(e)},min:1,onFocus:()=>{console.log("focus"),t.current=!0},onBlur:()=>{console.log("blur"),t.current=!1},handleSubmit:o})})})})})})},Z=({item:e})=>{let t=l.useContext(P),[s,r]=l.useState(!1),[n,c]=l.useState(!1),i=async()=>{if(!n){c(!0);try{await u.Z.carts.deleteItem({rowId:e.id}),r(!1),await Promise.all([(0,m.JG)("carts"),(0,m.JG)(["carts",t])])}finally{c(!1)}}};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("button",{type:"button","aria-label":`Удалить ${e.title} из корзины`,className:"ProductTable-delete-button cursor-pointer p-1 flex items-center justify-center",onClick:()=>r(!0),children:(0,a.jsx)(f.Z,{className:"h-5 w-5 text-red-600"})}
1),(0,a.jsxs)(j.V,{as:"div",className:"CartDeleteModal",open:s,onClose:()=>{n||r(!1)},children:[(0,a.jsx)("div",{className:"CartDeleteModal-backdrop","aria-hidden":"true"}),(0,a.jsx)("div",{className:"CartDeleteModal-scroll",children:(0,a.jsx)("div",{className:"CartDeleteModal-positioner",children:(0,a.jsxs)(j.V.Panel,{className:"CartDeleteModal-panel",children:[(0,a.jsx)(j.V.Title,{className:"CartDeleteModal-title",children:"Удалить товар?"}),(0,a.jsxs)(j.V.Description,{className:"CartDeleteModal-description",children:["\xab",e.title,"\xbb будет удалён из корзины."]}),(0,a.jsxs)("div",{className:"CartDeleteModal-actions",children:[(0,a.jsx)("button",{type:"button",className:"CartDeleteModal-button CartDeleteModal-button--cancel",onClick:()=>r(!1),disabled:n,children:"Отмена"}),(0,a.jsx)("button",{type:"button",className:"CartDeleteModal-button CartDeleteModal-button--confirm",onClick:i,disabled:n,children:n?"Удаление…":"Удалить"})]})]})})})]})]})},S=({setComment:e,comment:t})=>(0,a.jsx)("textarea",{className:"FormInput FormInput--comment",value:t,onChange:t=>e(t.target.value),placeholder:"Комментарий к заказу"});var R=({cart:e})=>{var t;let s=(0,g.Z)(),[r,n]=l.useState(""),[i,o]=l.useState(0),[d,x]=l.useState(!1),{data:h,error:b,mutate:f}=(0,m.ZP)(["carts",e.id],I,{focusThrottleInterval:5e3}),[j,N]=l.useReducer(T,y),[C,$]=l.useState([]),_=l.useRef(!1),Z=async()=>{if(!1===_.current&&e.amount>0&&!1===_.current){_.current=!0;let t=await u.Z.carts.checkout({cartId:e.id,comment:r,excludedItems:j.excludedItems});p().push(`/order?id=${t.orderId}`,`/orders/${t.orderId}`,{shallow:!0}),(0,m.JG)("carts"),f()}};return l.useEffect(()=>{h&&h.cart&&h.cart.items&&h.cart.items.length>0&&o(h.cart.items.map(e=>j.excludedItems.includes(e.id)?0:e.amount).reduce((e,t)=>e+t))},[h,j]),l.useEffect(()=>{N({type:"reset"})},[e]),l.useEffect(()=>{var e;(null==h?void 0:null===(e=h.cart)||void 0===e?void 0:e.items)&&N({type:"setItems",payload:h.cart.items.map(e=>e.id)})},[h]),l.useEffect(()=>{if(0===j.items.length)return;let t=!1;return u.Z.carts.quote(e.id,j.excludedItems).then(e=>{t||f(e,!1)}),()=>{t=!0}},[e.id,f,j.excludedItems,j.items.length]),(0,a.jsx)(w.Provider,{value:{state:j,dispatch:N},children:(0,a.jsxs)(P.Provider,{value:e.id,children:[(0,a.jsx)("h2",{children:e.isOwner?e.name:e.userName}),(0,a.jsx)(v.Z,{variant:"cart",clientId:null===(t=s.profile)||void 0===t?void 0:t.id}),h&&h.cart&&(0,a.jsx)(k,{items:h.cart.items}),h&&h.cart&&(0,a.jsxs)("div",{className:"CartTotal text-right font-semibold text-lg py-2",children:["Итого ",j.items.length-j.excludedItems.length," товаров на сумму ",(0,c.Z)(i)]}),(0,a.jsxs)("div",{className:"Cart_Footer",children:[(0,a.jsx)("div",{className:"Cart_Footer_leftBlock",children:(0,a.jsx)(S,{setComment:n,comment:r})}),(0,a.jsx)("div",{className:"Cart_Footer_rightBlock",children:(0,a.jsx)("button",{className:"cursor-pointer rounded-md px-2 py-2 font-medium text-lg bg-[#252728] text-white enabled:hover:bg-[#36393A] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[#252728] disabled:opacity-40 disabled:cursor-not-allowed",onClick:()=>Z(),disabled:j.excludedItems.length===j.items.length,children:"Оформить заказ"})})]})]})})},D=s(5192),E=s(9008),M=s.n(E),F=s(1664),q=s.n(F),A=()=>{let[e,t]=l.useState(void 0),[s,n]=l.useState(),[c]=(0,D.Z)(),i=Array.isArray(null==c?void 0:c.list)?c.list:[],o=void 0!==c&&!c.currentId&&0===i.length;return l.useEffect(()=>{c&&c.currentId&&void 0===e&&t(c.currentId)},[c,e]),l.useEffect(()=>{let t=!0;return(async()=>{if(e){n(void 0);let s=await u.Z.carts.show(e);t&&n(s.cart)}})(),()=>{t=!1}},[e]),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(M(),{children:(0,a.jsx)("title",{children:"Корзина - Планета-Авто"})}),(0,a.jsx)(r.Z,{children:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"CartSwitcher","aria-label":"Доступные корзины",children:i.length>1&&i.map(s=>{let l=e===s.id;return(0,a.jsxs)("button",{type:"button",onClick:()=>t(s.id),"aria-pressed":l,className:`CartThumb ${l?"CartThumb--active":""}
1`,children:[(0,a.jsx)("span",{className:"CartThumb-name",children:s.isOwner?s.name:s.userName}),(0,a.jsxs)("span",{className:"CartThumb-count",children:[s.itemsCount," поз."]})]},s.id)})}),o?(0,a.jsxs)("section",{className:"CartAuthState","aria-labelledby":"cart-auth-title",children:[(0,a.jsx)("h1",{id:"cart-auth-title",className:"CartAuthState-title",children:"Корзина"}),(0,a.jsxs)("p",{className:"CartAuthState-text",children:["Для просмотра корзины ",(0,a.jsx)(q(),{href:"/signin",children:"войдите"})," или ",(0,a.jsx)(q(),{href:"/registration",children:"зарегистрируйтесь"}),"."]})]}):null,s&&(0,a.jsx)(R,{cart:s}),e&&!s&&(0,a.jsx)("div",{className:"CartLoading","aria-live":"polite",children:"Загрузка корзины…"})]})})]})}}},function(e){e.O(0,[7272,2888,9774,179],function(){return e(e.s=1742)}),_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.