"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8791],{15274:(e,a,t)=>{t.d(a,{f:()=>l});var r=t(37876),i=t(15039),o=t.n(i),s=t(62467),d=t(90797),n=t.n(d);let l=e=>{let{"aria-hidden":a,ariaHidden:t=!1,children:i,className:d,"data-test":l="ribbon",hasBullseye:c=!1,renderLeading:u,renderTrailing:p,variant:f="white",..._}=e;return["neutral","inverse"].includes(f)?(0,r.jsxs)("div",{"aria-hidden":a,className:o()(n().ndsRibbonNew,(u||p)&&n().renderIcon,n()[f],d),..._,children:[u,(0,r.jsx)("div",{className:n().children,children:i}),p]}):(0,r.jsxs)("span",{"aria-hidden":a||t,className:o()(n().ndsRibbon,n()[f],d),"data-test":l,..._,children:[i,c&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(s.E,{children:" target"}),(0,r.jsx)("span",{"aria-hidden":!0,className:o()(n().bullseye,"black"===f&&n().bullseyeBlack),"data-test":"ribbon-bullseye-glyph",children:"\xac"})]})]})};l.displayName="Ribbon"},21415:(e,a,t)=>{t.d(a,{l:()=>o});var r=t(43803),i=t(37460);let o=e=>{if(!e)return;let a=(0,i.Eq)(e),t=(0,i.Zn)(e),o=a?e?.channel:t?e?.discount?.channel:void 0,s=a?e.id:t?e.offer_id:void 0;if(!o||!s)return;let d="";switch(o){case"DMR":d="dmr";break;case"DMC":d="dmc";break;case"CWL":case"CIR":d=e?.personalized||e?.tactic!=="Mass"?"circle_segmented":"circle_mass";break;default:d="mass"}return{deal:{id:s,type:d?.toUpperCase()??r.g.PLACEHOLDER_TYPE}}}},37460:(e,a,t)=>{t.d(a,{Dt:()=>u,Eq:()=>i,Ui:()=>n,Xp:()=>s,Zn:()=>o,ih:()=>d,n2:()=>l,uL:()=>p,y:()=>c});var r=t(60843);let i=e=>void 0!==e.channel,o=e=>e.discount?.channel!==void 0,s=e=>{let a=(e=>o(e)?e?.discount?.channel:i(e)?e?.channel:void 0)(e);return"CWL"===a||"DMC"===a||"DMR"===a},d=e=>e?.message?.short_description?.replace("Deal: ","").trim(),n=(e,a)=>"promotion"===a&&void 0!==e.promotion_id,l=(e,a)=>"circle"===a&&e?.id!==void 0,c=e=>{let{sortBy:a,isUnifiedOffersEnabled:t,shouldShowAllOffers:r,shouldShowCategoryOffersOrSubCategoryOffers:i,shouldShowRecommendedOffers:o}=e,s="";if(t)switch(a){case"tap_to_apply":s="deals_offer_grid_tap";break;case"newest_desc":s="deals_offer_grid_newest";break;case"popular_desc":s="deals_offer_grid_foryou_top";break;case"expiration_date_asc":s="deals_offer_grid_expiring";break;case"percent_off_desc":s="deals_offer_grid_discount";break;case"circle_deals":s="deals_offer_grid_circle";break;default:r||i?s="deals_offer_grid_foryou_top":o&&(s="deals_offer_grid_foryou_only")}else switch(a){case"tap_to_apply":s="deals_offer_grid_tap";break;case"newest_desc":s="circle_grid_newest";break;case"popular_desc":s="circle_grid_top_offers";break;case"expiration_date_asc":s="circle_grid_expiring";break;case"percent_off_desc":s="circle_grid_deep_discount";break;case"circle_deals":s="deals_offer_grid_circle";break;default:r||i?s="circle_grid_top_offers":o&&(s="circle_grid_foryou_only")}return s},u=async function(e,a,t){t.trackEvent({customInteraction:{location:e,type:"click",value:a},guest:{eventType:"customInteraction"},appState:{pageType:e}})},p=e=>{let a=Math.floor((e-Date.now())/864e5);return 0===a?"Expires today!":`${a} ${(0,r.td)("day",a)} left`}},85422:(e,a,t)=>{t.d(a,{I:()=>$});var r=t(37876),i=t(14232),o=t(93800),s=t(94107),d=t(60045),n=t(75186);let l=async e=>{let{apis:{loyaltyGuestOfferLists:a},baseUrl:t,circleOfferLoyaltyKeys:r}=(0,n.config)().services.apiPlatform,i={bookmarked:e?.bookmarked,offer_type:e?.offer_type,event_date_time:e?.event_date_time},o=`${t}/${a.endpointPaths.putOfferV1}/${e?.offerId}`,{data:s,ok:l,statusText:c}=await (0,d.yJ)(o,{headers:{Authorization:r.loyaltyClientKey,"x-api-key":r.loyaltyApiKey},credentials:"include",body:JSON.stringify(i)});if(l)return s??null;throw Error(`${c}`)},{useMutation:c}=(0,s.k)({name:"@web/domain-circle-offers/put-offer-v1",mutationFn:e=>l(e)});var u=t(37969),p=t(78930),f=t(6869),_=t(90858),m=t(43916),h=t(77216),b=t(50743),y=t(82018),k=t(73096),g=t(37371);let v={a:{"--_a-visibility":"visible","--_b-visibility":"hidden"},b:{"--_a-visibility":"hidden","--_b-visibility":"visible"}},w=(e,a)=>{if(CSS.supports("(transition-behavior: allow-discrete)"))return null;let t=(0,g.Z)(e),r=(0,i.useRef)(void 0),[o,s]=(0,i.useState)(v[e]);return(0,i.useEffect)(()=>{e!==t&&(window.clearTimeout(r.current),r.current=window.setTimeout(()=>{s(v[e])},a))},[a,t,e,r]),o};w.displayName="useA11yVisibility";let x=e=>{let{children:a,className:t,durationMs:o=300,shown:s,style:d,transitionTheme:n="crossfade"}=e,l=w(s,o),c=300*!window.matchMedia("(prefers-reduced-motion: reduce)").matches,u=(0,i.useMemo)(()=>({...d,...l,"--icon-transitioner-duration":`${c}ms`}),[l,c,d]);return(0,r.jsx)("div",{"aria-live":"polite",className:[k.iconTransitioner,`${s}-shown`,t,`transition-${n}`].join(" "),style:u,children:a})};x.displayName="IconTransitioner";var j=t(77232);let C=j.I4.button.withConfig({componentId:"sc-5612ab1d-0"})(["touch-action:manipulation;cursor:pointer;position:absolute;z-index:1;font-size:0;border-radius:50%;"]),T=j.I4.div.withConfig({componentId:"sc-5612ab1d-1"})(["border:",";border-radius:50%;padding:",";background-color:rgb(255,255,255,90%);width:max-content;"],e=>e.hasOutline?`1px solid ${y.Tj.palette.gray.medium};`:"",e=>e.iconPadding),E=j.I4.div.withConfig({componentId:"sc-5612ab1d-2"})(["position:relative;margin-left:auto;"]),I=j.I4.div.withConfig({componentId:"sc-5612ab1d-3"})(["border:1px solid ",";border-radius:50%;padding:3px;background-color:",";"],y.Tj.palette.green.default,y.Tj.palette.white),O=j.I4.div.withConfig({componentId:"sc-5612ab1d-4"})(["border-radius:50%;padding:4px;background-color:",";"],y.Tj.palette.red.default),R=e=>{let{adjustSize:a=!1,hasOutline:t=!1,isAdded:i=!1,isAutoApplied:o=!0,isSaved:s=!1}=e,{screenMdMax:d}=(0,b.e)();return(0,r.jsx)(r.Fragment,{children:o?(0,r.jsx)(T,{hasOutline:t,iconPadding:t?a&&!d?"11px":"7px":"4px",children:(0,r.jsxs)(x,{shown:s?"b":"a",transitionTheme:"circle-mask",children:[(0,r.jsx)(h.IconSave,{height:24}),(0,r.jsx)(h.IconSaveFill,{color:y.Tj.palette.gray.dark,"data-test":"DealBookmarkSaved",height:24})]})}):(0,r.jsxs)(x,{shown:i?"b":"a",transitionTheme:"circle-mask-rotate",children:[(0,r.jsx)(O,{children:(0,r.jsx)(h.IconScissors,{color:y.Tj.palette.white,width:24})}),(0,r.jsx)(I,{children:(0,r.jsx)(h.IconCheckmark,{color:y.Tj.palette.green.default,width:24})})]})})};R.displayName="BookmarkIcon";let $=(0,i.memo)(e=>{let{adjustSize:a=!1,ariaOfferLabel:t="",componentType:s,hasOutline:d=!1,isAutoApplied:n=!0,offerId:l,przTracking:h,saveOfferTrackingEventPayload:b}=e,y=(0,i.useRef)(null),[k,{refetch:g}]=(0,o.ei)(),v=k()?.[0]?.offers,w=(0,i.useMemo)(()=>v?.some(e=>e.offer_id===l&&e?.bookmarked),[l,v]),[x,j]=(0,i.useState)(w),T=(0,i.useMemo)(()=>v?.some(e=>e.offer_id===l&&e?.added),[l,v]),[I,O]=(0,i.useState)(T);(0,i.useEffect)(()=>{O(T),j(w)},[T,w]);let[$]=c({}),[A]=(0,u.zw)(),[F]=(0,p.cz)(),[S,N]=(0,i.useState)(!1),M=(0,i.useCallback)(()=>N(!0),[N]),D=(0,i.useCallback)(()=>N(!1),[N]),z=(0,i.useCallback)(()=>{$({offerId:l,bookmarked:!x,offer_type:"CWL",event_date_time:new Date().toISOString()}).then(()=>{g(),j(!x),M()})},[x,l,$,g,j,M]),{trackSaveOfferEvent:P}=(0,f.s)(),B=(0,i.useCallback)(()=>{I?F({offerId:l}).then(()=>{g(),O(!1),M()}):A({offerId:l}).then(()=>{g(),O(!0),M()})},[I,F,l,A,g,O,M]),{trackClick:L}=(0,_.f)(),K=(0,i.useCallback)(()=>{L.track((e=>{let a=e.isBookmarked?"REMOVE_BOOKMARKED_OFFER":"BOOKMARK_OFFER",t=e.isAdded?"REMOVE_OFFER":"APPLY_OFFER";return e.przTracking?{clickType:e.isAutoApplied?a:t,element:{id:e.offerId,type:"OFFER"},featureType:e.componentType,prz:e.przTracking}:{clickType:e.isAutoApplied?a:t,element:{id:e.offerId,type:"OFFER"},featureType:e.componentType}})({componentType:s,isAdded:I,isAutoApplied:n,isBookmarked:x,offerId:l,przTracking:h})),I||n||!b||P.track(b),n?z():B()},[s,B,z,I,n,x,l,h,b,L,P]),V=(e=>{let{ariaOfferLabel:a="this deal",isAdded:t,isAutoApplied:r,isBookmarked:i}=e;return r?i?`remove ${a} from your saved deals`:`add ${a} to your saved deals`:t?`unapply ${a} and remove from your saved deals`:`apply ${a} and add to your saved deals`})({ariaOfferLabel:t,isAdded:I,isAutoApplied:n,isBookmarked:x});return(0,r.jsxs)(E,{className:"h-margin-r-jumbo",children:[(0,r.jsx)(C,{"aria-label":V,"data-test":"BookmarkButton",id:`bookmark-button-${l}`,onClick:K,ref:y,type:"button",children:(0,r.jsx)(R,{adjustSize:a,hasOutline:d,isAdded:I,isAutoApplied:n,isSaved:x})}),(0,r.jsx)(m.y,{isOpen:S,message:`This deal was ${x||I?"added to":"removed from"} your saved deals.`,onClose:D,returnFocusEl:y.current,role:"dialog",variant:"timed"})]})});$.displayName="DealsBookmark"},93800:(e,a,t)=>{t.d(a,{ei:()=>l});var r=t(90733),i=t(88459),o=t(60045),s=t(75186),d=t(87092);let{useQuery:n}=(0,r.T)({name:"@web/domain-circle-offers/get-saved-offers-v1",defaultOptions:{staleTime:d.L},queryFn:async()=>{let{data:e,ok:a,statusText:t}=await (()=>{let{apis:{loyaltyGuestOfferLists:e},baseUrl:a,circleOfferLoyaltyKeys:t}=(0,s.config)().services.apiPlatform,r=`${a}/${e.endpointPaths.getSavedOffersV1}`;return{fetch:()=>(0,o.Jt)(r,{headers:{Authorization:t.loyaltyClientKey,"x-api-key":t.loyaltyApiKey},credentials:"include"})}})().fetch();if(a)return e??null;throw Error(`${t}`)}}),l=(0,i.L)(n,{allowAnonymous:!0})},95787:(e,a,t)=>{t.d(a,{Q:()=>o});var r=t(14232),i=t(81453);let o=()=>{let{openJoinCircleModal:e,closeJoinCircleModal:a,isCircleEnrolled:t,isGuestLoggedIn:o,slot:s}=(0,r.useContext)(i.x);return{closeJoinCircleModal:a,openJoinCircleModal:e,isCircleEnrolled:t,isGuestLoggedIn:o,slot:s}}}}]);