1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[9806],{99806:function(a,e,t){t.r(e),t.d(e,{CART_STORAGE_KEY:function(){return l},COUPON_STORAGE_KEY:function(){return c},CartProvider:function(){return f},PENDING_ORDER_KEY:function(){return i},useCart:function(){return g},useOptionalCart:function(){return d}});var r=t(57437),n=t(2265),u=t(3290),o=t(24003);let l="lebrill-store-cart-v2",i="lebrill-store-pending-order",c="lebrill-store-coupon",s=(0,n.createContext)(null);function f(a){let{currency:e,shippingRates:t,children:f}=a,[d,g]=(0,n.useState)([]),[m,C]=(0,n.useState)(!1),[v,p]=(0,n.useState)(!1),[b,h]=(0,n.useState)(null);(0,n.useEffect)(()=>{g(function(){try{let a=localStorage.getItem(l);if(!a)return[];let e=JSON.parse(a);if(!Array.isArray(e))return[];return e.filter(a=>a&&"string"==typeof a.id&&"number"==typeof a.price&&"boolean"==typeof a.garrafa&&"number"==typeof a.qty&&a.qty>0)}catch(a){return[]}}()),h(function(){try{var a;let e=JSON.parse(null!==(a=localStorage.getItem(c))&&void 0!==a?a:"null");return e&&"string"==typeof e.code&&"number"==typeof e.amount?{code:e.code,amount:e.amount}:null}catch(a){return null}}()),C(!0)},[]),(0,n.useEffect)(()=>{if(m)try{b?localStorage.setItem(c,JSON.stringify(b)):localStorage.removeItem(c)}catch(a){}},[b,m]),(0,n.useEffect)(()=>{if(!m)return;let a=null;try{a=localStorage.getItem(i)}catch(a){return}if(!a)return;let e=!1;return fetch("/api/store/order-status?ref=".concat(encodeURIComponent(a))).then(a=>a.ok?a.json():null).then(a=>{if(!e&&(null==a?void 0:a.status)&&("pagado"===a.status&&(g([]),h(null)),"pendiente"!==a.status))try{localStorage.removeItem(i)}catch(a){}}).catch(()=>{}),()=>{e=!0}},[m]),(0,n.useEffect)(()=>{if(m)try{localStorage.setItem(l,JSON.stringify(d))}catch(a){}},[d,m]);let y=(0,n.useCallback)(function(a){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;g(t=>t.find(e=>e.id===a.id)?t.map(t=>t.id===a.id?{...t,qty:t.qty+e}:t):[...t,{...a,qty:e}])},[]),S=(0,n.useCallback)((a,e)=>{g(t=>e<=0?t.filter(e=>e.id!==a):t.map(t=>t.id===a?{...t,qty:e}:t))},[]),E=(0,n.useCallback)(a=>{g(e=>e.filter(e=>e.id!==a))},[]),A=(0,n.useCallback)(()=>{g([]),h(null)},[]),k=(0,n.useCallback)(()=>p(!0),[]),M=(0,n.useCallback)(()=>p(!1),[]),N=(0,n.useMemo)(()=>d.reduce((a,e)=>a+e.qty,0),[d]),O=(0,n.useMemo)(()=>{var a;return(0,o.Z1)(d,t,null!==(a=null==b?void 0:b.amount)&&void 0!==a?a:0)},[d,t,b]),G=O.subtotal,T=(0,n.useMemo)(()=>({items:d,hydrated:m,count:N,subtotal:G,totals:O,currency:e,format:a=>(0,u.T)(a,e),isOpen:v,open:k,close:M,addItem:y,setQty:S,removeItem:E,clear:A,coupon:b,setCoupon:h}),[d,m,N,G,O,e,v,k,M,y,S,E,A,b]);return(0,r.jsx)(s.Provider,{value:T,children:f})}function d(){return(0,n.useContext)(s)}function g(){let a=(0,n.useContext)(s);if(!a)throw Error("useCart must be used within a CartProvider");return a}},3290:function(a,e,t){t.d(e,{T:function(){return r}});function r(a,e){return new Intl.NumberFormat("es-ES",{style:"currency",currency:e}).format(a)}},57207:function(a,e,t){function r(a){return"garrafa"===a.shippingClass}t.d(e,{Ei:function(){return o},fu:function(){return r}}),t(60314);let n={amount:0,garrafaCount:0,garrafaCharge:0,baseCharge:0,otherSubtotal:0};function u(a){return Math.round(100*a)/100}function o(a,e){if(!e||0===a.length)return n;let t=0,r=0;for(let e of a)e.garrafa?t+=e.qty:r+=e.price*e.qty;r=u(r);let o=a.some(a=>!a.garrafa&&a.qty>0)?r<e.tierThreshold?e.tierUnder:e.tierAtOrOver:0,l=t>0?e.firstGarrafa+e.extraGarrafa*(t-1):0;return{amount:u(o+l),garrafaCount:t,garrafaCharge:u(l),baseCharge:u(o),otherSubtotal:r}}},24003:function(a,e,t){t.d(e,{Z1:function(){return o},qd:function(){return n}});var r=t(57207);let n=.21;function u(a){return Math.round(100*a)/100}function o(a,e){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,o=u(a.reduce((a,e)=>a+e.price*e.qty,0)),{amount:l,garrafaCount:i}=(0,r.Ei)(a,e);return function(a,e){let t=u(Math.min(Math.max(e,0),a.subtotal)),r=u(a.subtotal-t+a.shipping),o=r/(1+n);return{...a,discount:t,base:o,ivaIncluded:r-o,total:r}}({subtotal:o,shipping:l,garrafaCount:i,shippingQuoted:null!==e,discount:0,base:0,ivaIncluded:0,total:0},t)}},60314:function(a,e,t){t.d(e,{A0:function(){return u},Be:function(){return i},bY:function(){return c},lR:function(){return r},yM:function(){return n}});let r="Espa\xf1a",n="Pen\xednsula (Espa\xf1a peninsular)",u=["A Coru\xf1a","\xc1lava","Albacete","Alicante","Almer\xeda","Asturias","\xc1vila","Badajoz","Barcelona","Burgos","C\xe1ceres","C\xe1diz","Cantabria","Castell\xf3n","Ciudad Real","C\xf3rdoba","Cuenca","Girona","Granada","Guadalajara","Guip\xfazcoa","Huelva","Huesca","Ja\xe9n","La Rioja","Le\xf3n","Lleida","Lugo","Madrid","M\xe1laga","Murcia","Navarra","Ourense","Palencia","Pontevedra","Salamanca","Segovia","Sevilla","Soria","Tarragona","Teruel","Toledo","Valencia","Valladolid","Vizcaya","Zamora","Zaragoza"],o={"07":"Baleares",35:"Las Palmas (Canarias)",38:"Santa Cruz de Tenerife (Canarias)",51:"Ceuta",52:"Melilla"},l={"01":"\xc1lava","02":"Albacete","03":"Alicante","04":"Almer\xeda","05":"\xc1vila","06":"Bad
1ajoz","08":"Barcelona","09":"Burgos",10:"C\xe1ceres",11:"C\xe1diz",12:"Castell\xf3n",13:"Ciudad Real",14:"C\xf3rdoba",15:"A Coru\xf1a",16:"Cuenca",17:"Girona",18:"Granada",19:"Guadalajara",20:"Guip\xfazcoa",21:"Huelva",22:"Huesca",23:"Ja\xe9n",24:"Le\xf3n",25:"Lleida",26:"La Rioja",27:"Lugo",28:"Madrid",29:"M\xe1laga",30:"Murcia",31:"Navarra",32:"Ourense",33:"Asturias",34:"Palencia",36:"Pontevedra",37:"Salamanca",39:"Cantabria",40:"Segovia",41:"Sevilla",42:"Soria",43:"Tarragona",44:"Teruel",45:"Toledo",46:"Valencia",47:"Valladolid",48:"Vizcaya",49:"Zamora",50:"Zaragoza"};function i(a){let e=a.trim();return/^\d{2}/.test(e)?function(a){var e;let t=a.trim();return/^\d{1,2}$/.test(t)&&null!==(e=l[t.padStart(2,"0")])&&void 0!==e?e:null}(e.slice(0,2)):null}function c(a){let e=a.trim();if(!e)return{ok:!0};if(!/^\d{5}$/.test(e))return{ok:!1,message:"El c\xf3digo postal debe tener 5 d\xedgitos."};let t=e.slice(0,2),r=Number(t);if(r<1||r>52)return{ok:!1,message:"C\xf3digo postal no v\xe1lido."};let u=o[t];return u?{ok:!1,message:"No realizamos env\xedos a ".concat(u,". Solo servimos a ").concat(n,".")}:{ok:!0}}}}]);
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.