"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3739],{73309:function(t,a,e){e.d(a,{k:function(){return g}});var n=e(99021),r=e(7653),o=e(19426),i=e(18587),c=e(67624),l=e(87721),s=e(69262),d=e(33301);let u=(0,c.default)(l.default)(()=>({display:"flex",height:26})),p=(0,c.default)(s.ZP)(t=>{let{theme:a}=t;return{width:48,height:26,backgroundColor:"white",fontFamily:a.typography.fontFamily,input:{textAlign:"center"}}}),f=(0,c.default)(d.hU)(t=>{let{theme:a}=t;return{backgroundColor:a.palette.primary.main,borderRadius:0,color:a.palette.primary.contrastText,width:27,"*":{fontSize:"14px !important"},"&:disabled":{backgroundColor:a.palette.grey[200]},"&:hover:not(:disabled)":{backgroundColor:a.palette.primary.main,color:a.palette.primary.contrastText}}});function g(t){let{disabled:a=!1,index:e,max:c=1/0,maxDisabled:l,min:s=0,name:d,onChange:g,value:m=0}=t,[y,h]=(0,r.useState)(m);(0,r.useEffect)(()=>{y!==m&&h(m)},[y,m]);let v=a||m<=s,x=a||m>=c;return(0,n.BX)(u,{children:[(0,n.tZ)(f,{"aria-label":"Subtract quantity","data-testid":"subtract-quantity",disabled:v,name:"".concat(d,".subtract"),onClick:()=>{let t=m-1;m>s&&(h(t),g(t))},children:(0,n.tZ)(i.Z,{})}),(0,n.tZ)(p,{"data-quantity-index":e,"data-testid":"quantity-value",onChange:t=>{let a=t.target.value;h(a);let e=parseInt(a,10);!isNaN(e)&&(e>=s&&e<=c?g(e):e>c?g(c):e<s&&g(s))},value:y}),(0,n.tZ)(f,{"aria-label":"Add quantity","data-testid":"add-quantity",disabled:x||l,name:"".concat(d,".add"),onClick:()=>{let t=m+1;m<c&&(h(t),g(m+1))},children:(0,n.tZ)(o.Z,{})})]})}},30097:function(t,a,e){e.d(a,{ShopProvider:function(){return s},L:function(){return d}});var n=e(99021),r=e(7653),o=e(13908),i=e(74412);let c={"Content-Type":"application/json"},l=(0,r.createContext)(null);function s(t){let{children:a,type:e,offerId:s,shopId:d}=t,u=(0,r.useMemo)(()=>{switch(e){case"enviso":var t,a;return{addBasketReservation:async function(a){let{basketId:e,products:n}=a,r=i.Z.stringify({salespointid:t});return(await o.Z.post("/api/enviso/directsellingapi/v3/baskets/".concat(e,"/reservations?").concat(r),n,{headers:c})).data},createBasket:async function(a){let e=i.Z.stringify({salespointid:t});return(await o.Z.post("/api/enviso/directsellingapi/v3/baskets?".concat(e),a,{headers:c})).data},createOrder:async function(a){let{basketId:e,locale:n,visitor:r}=a,l=i.Z.stringify({language:n,salespointid:t});return(await o.Z.post("/api/enviso/directsellingapi/v3/baskets/".concat(e,"/checkout?").concat(l),{visitor:r},{headers:c})).data},getOrder:async function(t,a,e){return(await o.Z.get("/api/enviso/directsellingapi/v3/orders/".concat(t,"?").concat(null==a?void 0:a.toString(),"&language=").concat(e))).data},getOrderPassLink:async function(t,a){return(await o.Z.get("/api/enviso/directsellingapi/v3/orders/".concat(t,"/passes/link?language=").concat(a))).data},deleteBasketReservation:async function(t){let{basketId:a,reservationId:e}=t;return(await o.Z.delete("/api/enviso/directsellingapi/v3/baskets/".concat(a,"/reservations/").concat(e),{headers:c})).data},getBasket:async function(t){return(await o.Z.get("/api/enviso/directsellingapi/v3/baskets/".concat(t))).data},getOffers:async function(a){let e=i.Z.stringify({language:a});return(await o.Z.get("/api/enviso/directsellingapi/v3/salespoints/".concat(t,"/offers?").concat(e),{headers:{"Cache-Control":"max-age=600"}})).data.offers},getOfferDetail:async function(e,n){let r=i.Z.stringify({language:e});return(await o.Z.get("/api/enviso/directsellingapi/v3/salespoints/".concat(t,"/offers/").concat(n||a,"?").concat(r),{headers:{"Cache-Control":"max-age=600"}})).data.offer},getOfferTimeslots:async function(e){let{fromDate:n,toDate:r}=e,c=i.Z.stringify({fromdate:n,todate:r});return(await o.Z.get("/api/enviso/directsellingapi/v3/salespoints/".concat(t,"/offers/").concat(a,"/timeslots?").concat(c))).data.timeslots},getAvailableDays:async function(e){let{fromDate:n,toDate:r}=e,c=i.Z.stringify({fromdate:n,todate:r});return(await o.Z.get("/api/enviso/directsellingapi/v3/salespoints/".concat(t,"/offers/").concat(a,"/availabledays?").concat(c))).data},updateBasket:async function(t){let{basketId:a,reservationId:e,product:n}=t;return(await o.Z.put("/api/enviso/directsellingapi/v3/baskets/".concat(a,"/reservations/").concat(e),n,{headers:c})).data},getPrices:async function(e){let{fromDate:n,toDate:r}=e,c=i.Z.stringify({from:n,to:r});return(await o.Z.get("/api/enviso/directsellingapi/v3/salespoints/".concat(t,"/offers/").concat(a,"/prices?").concat(c))).data},shopId:t=null!=d?d:"",offerId:a=null!=s?s:""};case"maxxton":return{createOrder:async function(t,a){let e=i.Z.stringify({returnBill:!0,returnInstalments:!0});return(await o.Z.post("/api/maxxton/v1/reservations?".concat(e),t,{headers:{locale:a,"Accept-Language":a,"Content-Type":"application/json"}})).data},getAddOnAvailability:async function(t,a,e,n){let r=i.Z.stringify({distributionChannelCode:a,reservationCategoryCode:e,resourceId:t,size:100});return(await o.Z.get("/api/maxxton/v1/accommodationtypes/availability/additions?".concat(r),{headers:{locale:n,"Accept-Language":n}})).data},getAddOnDynamicFields:async function(t,a){return(await o.Z.get("/api/maxxton/v1/add-ons/".concat(t,"/dynamicfields"),{headers:{locale:a,"Accept-Language":a}})).data.content},getAccommodationTypeDetails:async function(t,a){return(await o.Z.get("/api/maxxton/v1/accommodationtypes/".concat(t,"/details"),{headers:{locale:a,"Accept-Language":a}})).data},getAccommodationTypeImages:async function(t,a){return(await o.Z.get("/api/maxxton/v1/accommodationtypes/".concat(t,"/images"),{headers:{locale:a,"Accept-Language":a}})).data},getAccommodationsAvailability:async function(t,a,e){return(await o.Z.post("/api/maxxton/v1/accommodationtypes/search?".concat(t),a,{headers:{locale:e,"Accept-Language":e}})).data},getAccommodationTypeResourceAvailability:async function(t){let{resourceId:a,distributionChannelId:e,distributionChannelCode:n,reservationCategoryCode:r,locale:c,arrivalDate:l,duration:s}=t,d=i.Z.stringify({distributionChannelCode:n,reservationCategoryCode:r,resourceId:a,distributionChannelId:e,size:100,arrivalDateFrom:l,duration:s});return(await o.Z.get("/api/maxxton/v1/accommodationtypes/availability?".concat(d),{headers:{locale:c,"Accept-Language":c}})).data},getCountries:async function(){return(await o.Z.get("/api/maxxton/v1/countries",{headers:{"Content-Type":"application/json"}})).data},getOfferRates:async function(t,a){return(await o.Z.get("/api/maxxton/v1/offers/".concat(t,"/rates"),{headers:{"Content-Type":"application/json",locale:a,"Accept-Language":a}})).data},getOrder:async function(t,a){return(await o.Z.get("/api/maxxton/v1/reservations/details".concat(t),{headers:{"Content-Type":"application/json",locale:a,"Accept-Language":a}})).data},getUnits:async function(t){return(await o.Z.get("/api/maxxton/v1/units/".concat(t,"/children"),{headers:{"Content-Type":"application/json"}})).data},postReservationProposal:async function(t,a){return(await o.Z.post("/api/maxxton/v1/reservations/proposals?returnAdditions=true&returnBill=true&returnUnits=true&returnInstalments=true&returnPaymentOptions=true",{...t},{headers:{locale:a,"Accept-Language":a}})).data},postReservation:async function(t,a){return(await o.Z.post("/api/maxxton/v1/reservations?returnBill=true&returnInstalments=true",{...t},{headers:{locale:a,"Accept-Language":a}})).data}};default:throw Error("Invalid shop type")}},[e,s,d]);return(0,n.tZ)(l.Provider,{value:u,children:a})}let d=()=>{let t=(0,r.useContext)(l);if(!t)throw Error("useShop must be used within a ShopContext");return t}},76445:function(t,a,e){e.d(a,{v:function(){return c}});var n=e(99021),r=e(59476),o=e(46121),i=e(59584);function c(t){let{className:a,component:e,basePrice:c,basePriceAlign:l="end",price:s,pricePrefix:d,priceSuffix:u,variant:p="h4",loading:f=!1,round:g=!1,sx:m}=t,y=(0,o.T4)({price:s,locale:"nl",currency:"EUR",showSymbol:!1,round:g}),h=(0,o.T4)({price:c,locale:"nl",currency:"EUR",showSymbol:!1,round:g});return(0,n.tZ)(i.bz,{alignItems:l,className:a,sx:m,children:f?(0,n.tZ)(r.default,{variant:"text",width:32}):(0,n.BX)(n.HY,{children:[null!==h&&(0,n.tZ)(i.ar,{children:h}),(0,n.BX)(i.tA,{variant:p,component:e,children:[d&&(0,n.tZ)(i.Xd,{children:d}),y,u&&(0,n.tZ)(i.Xd,{children:u})]})]})})}},59584:function(t,a,e){e.d(a,{Xd:function(){return s},ar:function(){return c},bz:function(){return i},tA:function(){return l}});var n=e(87721),r=e(67624),o=e(9878);let i=(0,r.default)(n.default)(t=>{let{theme:a}=t;return{display:"flex",gap:a.spacing(1)}}),c=(0,r.default)(o.default)(t=>{let{theme:a}=t;return{textAlign:"left",textDecoration:"line-through",color:a.palette.tertiary.contrastText,lineHeight:1.7}});c.defaultProps={variant:"body2",component:"span"};let l=(0,r.default)(o.default)(t=>{let{theme:a}=t;return{display:"flex",alignItems:"end",gap:a.spacing(1),textAlign:"left",fontWeight:600,color:a.palette.text.primary}}),s=(0,r.default)(o.default)(t=>{let{theme:a}=t;return{color:a.palette.text.primary}});s.defaultProps={variant:"body2",component:"span"}},33841:function(t,a,e){e.d(a,{Zb:function(){return l},T$:function(){return u},aY:function(){return m},ZB:function(){return h},ig:function(){return c}});var n=e(99021),r=e(7653),o=e(67624),i=e(49482);let c=(0,o.default)("div",{name:"Card",slot:"root",shouldForwardProp:t=>!["variant","sx","ownerState"].includes(t)})(t=>{var a,e;let{theme:n,ownerState:r,sx:o}=t;return n.unstable_sx({width:"100%",containerType:"inline-size",position:"relative",display:"flex",flex:1,flexShrink:0,flexDirection:"column",..."media"===r.variant&&{"> .CardContent-root":{".MuiTypography-h1, .MuiTypography-h2, .MuiTypography-h3, .MuiTypography-h4":{color:"white"}}},..."mediahover"===r.variant&&{minHeight:288,"> .CardContent-root":{display:"flex",textAlign:"left",alignItems:"flex-start",justifyContent:"flex-end",backgroundColor:"rgba(0, 0, 0, 0.2)",paddingBottom:n.spacing(1),color:"white",".MuiTypography-h1, .MuiTypography-h2, .MuiTypography-h3, .MuiTypography-h4":{color:"white"},"p, a":{display:"none"}},"&:hover > .CardContent-root":{justifyContent:"flex-start","p, a":{display:"block"},".MuiTypography-h1, .MuiTypography-h2, .MuiTypography-h3, .MuiTypography-h4":{color:n.palette[r.color||"background"].contrastText,..."transparent"===r.color&&{color:"inherit"}},backgroundColor:n.palette[r.color||"background"].main,color:n.palette[r.color||"background"].contrastText,..."transparent"===r.color&&{backgroundColor:"transparent",color:"inherit"}}},".MuiLink-root":{color:"inherit",textDecoration:"none"},..."text"===r.variant&&{backgroundColor:"transparent"},..."mini"===r.variant&&{flexDirection:{xs:"row",md:"column"}},..."contained"===r.variant&&{flexDirection:{xs:"row",md:"column"}},..."landscapecontained"===r.variant&&{flexDirection:{xs:"column",md:"row"}},..."landscapereversecontained"===r.variant&&{flexDirection:{xs:"column-reverse",md:"row-reverse"}},..."media"===r.variant&&{minHeight:{xs:180,lg:320}},backgroundColor:"transparent",color:"inherit",...!["mediahover","text"].includes(r.variant||"")&&r.color&&"transparent"!==r.color&&{backgroundColor:null===(a=n.palette[r.color])||void 0===a?void 0:a.main,color:null===(e=n.palette[r.color])||void 0===e?void 0:e.contrastText},...o})}),l=(0,r.forwardRef)((t,a)=>{let{color:e="background",variant:r="contained",children:o,sx:l,...s}=(0,i.default)({props:t,name:"Card"}),d={color:e,variant:r,...s};return(0,n.tZ)(c,{className:"Card-root",ownerState:d,ref:a,sx:l,children:o})});l.displayName="Card";var s=e(34453);let d=(0,o.default)(s.Z,{name:"CardActions",slot:"root",shouldForwardProp:t=>"variant"!==t&&"sx"!==t&&"ownerState"!==t})(t=>{let{theme:a,sx:e}=t;return a.unstable_sx({p:0,...e})}),u=(0,r.forwardRef)((t,a)=>{let{color:e="background",variant:r="contained",children:o,sx:c,...l}=(0,i.default)({props:t,name:"CardContent"}),s={color:e,variant:r,...l};return(0,n.tZ)(d,{ref:a,ownerState:s,sx:c,children:o})});u.displayName="CardActions";var p=e(10418),f=e(79142);let g=(0,o.default)("div",{name:"CardContent",slot:"root",shouldForwardProp:t=>"variant"!==t&&"sx"!==t&&"ownerState"!==t})(t=>{var a;let{theme:e,ownerState:n,sx:r}=t;return e.unstable_sx({display:"flex",flexDirection:"column",wordBreak:"break-word",p:{xs:2,md:3,lg:4},gap:{xs:1,md:2},flex:"1 1 0",justifyContent:"space-between",alignItems:"flex-start",backgroundColor:n.color,"h1, h2, h3, h4, h5":{fontSize:{xs:"1.05rem",lg:"1.5rem"},hyphens:"auto"},...(!n.variant||"text"===n.variant)&&{"h1, h2, h3, h4, h5":{fontSize:{xs:"1.15rem",md:"1.25rem"}}},...(null===(a=n.variant)||void 0===a?void 0:a.includes("media"))&&{position:"absolute",top:0,right:0,bottom:0,left:0,zIndex:1,color:"white",display:"flex",flex:1,textAlign:"center",alignItems:"center",justifyContent:"center",".MuiTypography-root":{color:"white"}},..."media"===n.variant&&{backgroundColor:(0,p.Fq)((0,p._j)(e.palette.primary.dark,.8),.5)},..."text"===n.variant&&{py:2,px:0},..."mini"===n.variant&&{p:{xs:2,sm:4},"h1, h2, h3, h4, h5":{fontSize:{xs:"1.15rem",sm:"1.25rem"}}},...r})}),m=(0,r.forwardRef)((t,a)=>{let{color:e="background",variant:r="contained",children:o,sx:i,...c}=(0,f.default)({props:t,name:"Card"}),l={color:e,variant:r,...c};return(0,n.tZ)(g,{className:"CardContent-root",ownerState:l,ref:a,sx:i,children:o})});m.displayName="CardContent";let y=(0,e(27175).Z)("div",{name:"CardMedia",slot:"root",shouldForwardProp:t=>"variant"!==t&&"sx"!==t&&"ownerState"!==t})(t=>{let{theme:a,ownerState:e,sx:n}=t;return a.unstable_sx({position:"relative",px:4,paddingTop:"".concat(9/16*100,"%"),..."contained"===e.variant&&{px:{xs:8,md:4},paddingTop:{xs:"".concat(2/8*100,"%"),md:"".concat(6/16*100,"%")}},..."landscapecontained"===e.variant&&{display:"flex",flex:"1 0 auto",paddingTop:{xs:"".concat(2/3*100,"%"),md:"".concat(6/16*100,"%")}},..."landscapereversecontained"===e.variant&&{display:"flex",flex:"1 0 auto",paddingTop:"".concat(6/16*100,"%")},..."mini"===e.variant&&{paddingTop:{xs:0,md:"".concat(9/16*100,"%")},minWidth:{xs:100,md:"auto"},img:{objectFit:"contain !important"}},...e.variant.includes("media")&&{position:"absolute",paddingTop:0,height:"100%",aspectRatio:"unset",top:0,right:0,bottom:0,left:0},...n})}),h=(0,r.forwardRef)((t,a)=>{let{color:e="background",variant:r="contained",children:o,sx:c,...l}=(0,i.default)({props:t,name:"CardMedia"}),s={color:e,variant:r,...l};return(0,n.tZ)(y,{ref:a,ownerState:s,sx:c,children:o})});h.displayName="CardMedia"},46121:function(t,a,e){e.d(a,{T4:function(){return o}});let n=t=>t.map(t=>"fraction"===t.type?{...t,value:(null==t?void 0:t.value)==="00"?"-":t.value}:t),r=t=>null==t?void 0:t.filter(t=>"currency"!==t.type),o=t=>{let{price:a,locale:e="nl",currency:o="EUR",round:i=!1,showSymbol:c=!0,showFormattedZeroFractions:l=!0}=t;if(null==a||Number.isNaN(a))return null;let s=new Intl.NumberFormat(e,{style:"currency",currency:o,currencyDisplay:c?"symbol":"code",minimumFractionDigits:2}).formatToParts(i?Math.round(a):a).filter(t=>"literal"!==t.type),d=l?n(s):s;return(c?d:r(d)).map(t=>t.value).join("")}}}]);