"use strict";(self.__LOADABLE_LOADED_CHUNKS__=self.__LOADABLE_LOADED_CHUNKS__||[]).push([[6945],{1181:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.d(__webpack_exports__,{Z:()=>Seasonal_SeasonalEventCountdown});var react=__webpack_require__(7294),getRemainingDays=__webpack_require__(616),formatLeadingZero=__webpack_require__(3697),getRemainingHours=__webpack_require__(4659),getRemainingMinutes=__webpack_require__(2980),getRemainingSeconds=__webpack_require__(6546),HawkWidgetProviderContext=__webpack_require__(4412);const seasonal_event_countdown_item={container:"hawk-seasonal-event-countdown-item-container",value:"hawk-seasonal-event-countdown-item-value",label:"hawk-seasonal-event-countdown-item-label",merchantlink:"hawk-seasonal-event-countdown-item-merchantlink"},Seasonal_SeasonalEventCountdownItem=_ref=>{let{value,label,className}=_ref;const containerStyle=className&&seasonal_event_countdown_item[className]?className:"container";return react.createElement("div",{className:seasonal_event_countdown_item[containerStyle]},react.createElement("div",{className:seasonal_event_countdown_item.value},value),react.createElement("span",{className:seasonal_event_countdown_item.label},label))},seasonal_event_countdown={container:"hawk-seasonal-event-countdown-container",heading:"hawk-seasonal-event-countdown-heading",items:"hawk-seasonal-event-countdown-items",merchantlink:"hawk-seasonal-event-countdown-merchantlink"},Seasonal_SeasonalEventCountdown=_ref=>{let{className}=_ref;const{data,translate}=(0,HawkWidgetProviderContext.KF)(),[date,setDate]=(0,react.useState)(new Date),[interval,storeInterval]=(0,react.useState)(0);(0,react.useEffect)((()=>{const interval=window.setInterval((()=>{setDate(new Date)}),1e3);storeInterval(interval)}),[]),(0,react.useEffect)((()=>(data&&data.event&&(new Date).getTime()>new Date(1e3*data.event.end_time).getTime()&&clearInterval(interval),()=>{clearInterval(interval)})),[data]);const containerStyle=className&&seasonal_event_countdown[className]?className:"container";if(data&&data.event){const{event_name:eventName,end_time:endTime}=data.event,days=(0,getRemainingDays.Z)(endTime,date),daysFormatted=days>=0?(0,formatLeadingZero.Z)(days):"00",hours=(0,getRemainingHours.Z)(endTime,date),hoursFormatted=hours>=0?(0,formatLeadingZero.Z)(hours):"00",minutes=(0,getRemainingMinutes.Z)(endTime,date),minutesFormatted=minutes>=0?(0,formatLeadingZero.Z)(minutes):"00",seconds=(0,getRemainingSeconds.Z)(endTime,date),secondsFormatted=seconds>=0?(0,formatLeadingZero.Z)(seconds):"00",countdownString=()=>{const countdownText=[];return days>0&&countdownText.push(" ".concat(daysFormatted," ").concat(translate("seasonalEventCountdownDays"))),countdownText.push(" ".concat(hoursFormatted," ").concat(translate("seasonalEventCountdownHours"))),countdownText.push(" ".concat(minutesFormatted," ").concat(translate("seasonalEventCountdownMinutes"))),countdownText.push(" ".concat(secondsFormatted," ").concat(translate("seasonalEventCountdownSeconds"))),countdownText.toString()};return react.createElement("div",{className:seasonal_event_countdown[containerStyle]},react.createElement("div",{className:seasonal_event_countdown.heading},"merchantlink"===className?react.createElement("span",null,translate("seasonalEventCountdownTitle",[eventName])+countdownString()):react.createElement("span",null,translate("seasonalEventCountdownTitle",[eventName]))),"merchantlink"!==className&&react.createElement("div",{className:seasonal_event_countdown.items},days>0&&react.createElement(Seasonal_SeasonalEventCountdownItem,{value:daysFormatted,label:translate("seasonalEventCountdownDays"),className}),react.createElement(Seasonal_SeasonalEventCountdownItem,{value:hoursFormatted,label:translate("seasonalEventCountdownHours"),className}),react.createElement(Seasonal_SeasonalEventCountdownItem,{value:minutesFormatted,label:translate("seasonalEventCountdownMinutes"),className}),react.createElement(Seasonal_SeasonalEventCountdownItem,{value:secondsFormatted,label:translate("seasonalEventCountdownSeconds"),className})))}return null}},7552:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.d(__webpack_exports__,{Z:()=>Seasonal_SeasonalEventMerchants});var react=__webpack_require__(7294),HawkWidgetProviderContext=__webpack_require__(4412),main=__webpack_require__(3977),global=__webpack_require__(3426),isServerside=__webpack_require__(5947),TrackedLink_TrackedLink=__webpack_require__(9264);const seasonal_event_merchant={container:"hawk-seasonal-event-merchant-container",link:"hawk-seasonal-event-merchant-link","image-container":"hawk-seasonal-event-merchant-image-container",image:"hawk-seasonal-event-merchant-image",merchantlink:"hawk-seasonal-event-merchant-merchantlink"},SeasonalEventMerchant=_ref=>{let{merchant,className}=_ref;const linkRef=react.useRef(null),{site,area,xrayUuid,articleName,articleUrl,sendAnalytics,params,data,genericSharedComponents:{LazyImage,TrackedLink}}=(0,HawkWidgetProviderContext.KF)(),offerType=data&&data.offer_type,battle=params&¶ms[offerType]&¶ms[offerType].battle,getUrl=generateCustomTrackingId=>{const{customTrackingId:forcedCustomTrackingId}=(0,global.i)(),customTrackingId=generateCustomTrackingId?(0,main.getCustomTrackingId)({pageUrl:articleUrl,site,merchant,area,battle},forcedCustomTrackingId):null;return{url:(0,main.getRewrittenUrl)(merchant.merchant_url,site&&site.analyticsName,area,customTrackingId,xrayUuid,articleUrl,articleName),customTrackingId}},containerStyle=className&&seasonal_event_merchant[className]?className:"container";return react.createElement("div",{className:seasonal_event_merchant[containerStyle]},react.createElement(react.Fragment,null,react.createElement(TrackedLink,{trackLinkClick:event=>{if(sendAnalytics){const{url,customTrackingId}=getUrl(!0);sendAnalytics({label:merchant.merchant_name,clickType:"Seasonal event retailer",prefix:"Click from"},{offer:{custom_tracking_id:customTrackingId,link:url},merchant:{id:merchant.merchant_id,name:merchant.merchant_name,url:merchant.merchant_url}},event),linkRef.current&&(linkRef.current.href=url,linkRef.current.dataset.url=url)}},customTarget:TrackedLink_TrackedLink.Y.BLANK,attributes:{ref:linkRef,className:seasonal_event_merchant.link,href:getUrl((0,isServerside.W)()).url}},react.createElement("div",{className:seasonal_event_merchant["image-container"]},react.createElement(LazyImage,{src:merchant.logo,alt:merchant.merchant_name,width:100,height:50})))))},seasonal_event_merchants={container:"hawk-seasonal-event-merchants-container",description:"hawk-seasonal-event-merchants-description",merchants:"hawk-seasonal-event-merchants-merchants",merchantlink:"hawk-seasonal-event-merchants-merchantlink"},Seasonal_SeasonalEventMerchants=_ref=>{let{className}=_ref;return react.createElement(HawkWidgetProviderContext.$6,null,(value=>{const{translate}=value;let{data}=value;data=data||{};const{event}=data,containerStyle=className&&seasonal_event_merchants[className]?className:"container";return event&&event.merchants&&event.merchants.length>0?react.createElement("div",{className:seasonal_event_merchants[containerStyle]},react.createElement("div",{className:seasonal_event_merchants.description},react.createElement("span",{dangerouslySetInnerHTML:{__html:translate("seasonalEventMerchantsLabel",["",event.event_name,""])}})),react.createElement("div",{className:seasonal_event_merchants.merchants},(event.merchants||[]).map((merchant=>react.createElement(SeasonalEventMerchant,{merchant,key:merchant.merchant_id,className}))))):null}))}},8779:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.r(__webpack_exports__),__webpack_require__.d(__webpack_exports__,{default:()=>MerchantLinkWidget_MerchantLinkWidget});var react=__webpack_require__(7294),loadCSS=__webpack_require__(535),BaseFeatures=__webpack_require__(8238),HawkWidgetProviderContext=__webpack_require__(4412),SeasonalEventCountdown=__webpack_require__(1181),SeasonalEventMerchants=__webpack_require__(7552),getPriceType=__webpack_require__(6570);const available_from_container="hawk-available-from-container";(0,loadCSS.j)("available-from");const loadable=_ref=>{let{deal}=_ref;const{translate,availableFromClickable,genericSharedComponents:{DisplayPrice,Title}}=(0,HawkWidgetProviderContext.KF)(),className=availableFromClickable?"availableFromClickable":"availableFrom";return react.createElement("div",{className:available_from_container},react.createElement(Title,{title:translate("availableFrom").toUpperCase(),className:"merchantlink-title-buying-guide"}),react.createElement(DisplayPrice,{deal,className,type:(0,getPriceType.Z)(deal),forceAppear:!0}))};var HotDealFlag=__webpack_require__(2398),getButtonText=__webpack_require__(7910);const merchant_link_widget_item={wrapper:"hawk-merchant-link-widget-item-wrapper",container:"hawk-merchant-link-widget-item-container",transparent:"hawk-merchant-link-widget-item-transparent","mc-container":"hawk-merchant-link-widget-item-mc-container","primary-label":"hawk-merchant-link-widget-item-primary-label"},MerchantLinkWidget_MerchantLinkWidgetItem=_ref=>{var _deal$offer,_deal$offer2,_deal$offer3;let{deal}=_ref;const{translate,buttonType,site,showPrice,showPrimaryLabel,showHotDeal,inFocus,genericSharedComponents:{AffiliateLink,DisplayPrice},merchantlinkTextType}=(0,HawkWidgetProviderContext.KF)();if(!deal)return null;return react.createElement("div",{className:merchant_link_widget_item.wrapper},react.createElement("div",{className:merchant_link_widget_item["textbased"===buttonType?"transparent":!site||site.id!==BaseFeatures.Fx.MARIE_CLAIREUS&&site.id!==BaseFeatures.Fx.MARIE_CLAIREUK&&site.id!==BaseFeatures.Fx.WH&&site.id!==BaseFeatures.Fx.WINDOWS_CENTRAL?"container":"mc-container"],"data-product-type":null==deal?void 0:deal.product_type},(null==deal||null===(_deal$offer=deal.offer)||void 0===_deal$offer?void 0:_deal$offer.price)&&"showPrice"===showPrice&&react.createElement(DisplayPrice,{deal,className:buttonType?"merchantlink-transparent-price":"merchantlink-price",type:(0,getPriceType.Z)(deal)}),Boolean(showHotDeal)&&inFocus&&react.createElement(HotDealFlag.Z,{deal,className:"container"}),react.createElement(AffiliateLink,{deal,className:buttonType?"merchantlink-transparent-label":"merchantlink-label"},((deal,translate,merchantlinkTextType)=>{if(merchantlinkTextType){var _deal$merchant;const merchantName=null==deal||null===(_deal$merchant=deal.merchant)||void 0===_deal$merchant?void 0:_deal$merchant.name;return"primedayMerchantLinkText"===merchantlinkTextType&&"Amazon"!==merchantName?(0,getButtonText.Z)(deal,!0,translate):translate(merchantlinkTextType,[merchantName||""])}return(0,getButtonText.Z)(deal,!0,translate)})(deal,translate,merchantlinkTextType)),(null==deal||null===(_deal$offer2=deal.offer)||void 0===_deal$offer2?void 0:_deal$offer2.price)&&Number(deal.offer.price)>0&&"stream"===showPrice&&react.createElement(DisplayPrice,{deal,className:"merchantlink-price",type:(0,getPriceType.Z)(deal)})),showPrimaryLabel&&(null==deal||null===(_deal$offer3=deal.offer)||void 0===_deal$offer3?void 0:_deal$offer3.display_primary_label)&&react.createElement("div",{className:merchant_link_widget_item["primary-label"]},deal.offer.display_primary_label))},merchant_link_widget_widget_container="hawk-merchant-link-widget-widget-container",merchant_link_widget_main_container="hawk-merchant-link-widget-main-container",merchant_link_widget_wrapper="hawk-merchant-link-widget-wrapper";(0,loadCSS.j)("merchantlink");const MerchantLinkWidget_MerchantLinkWidget=props=>{const{genericSharedComponents:{HawkWidgetStandard,ModelCodeReviews,Title}}=props;return react.createElement(HawkWidgetStandard,props,react.createElement(HawkWidgetProviderContext.$6,null,(_ref=>{var _dealData$deals;let{dealData,widgetTitle,seasonal,params,defaultTab,availableFrom}=_ref;return react.createElement("div",{className:merchant_link_widget_widget_container},react.createElement(react.Fragment,null,availableFrom&&(null==dealData||null===(_dealData$deals=dealData.deals)||void 0===_dealData$deals?void 0:_dealData$deals.length)>0&&"deals"===(null==dealData?void 0:dealData.dealType)&&react.createElement(loadable,{deal:dealData.deals[0]}),react.createElement("div",{className:merchant_link_widget_main_container},react.createElement(Title,{title:widgetTitle,className:defaultTab&¶ms[defaultTab.value].article_type===BaseFeatures.Iq.BUYING_GUIDE?"merchantlink-title-buying-guide":"merchantlink-title-responsive"}),react.createElement("div",{className:merchant_link_widget_wrapper},"event"===seasonal&&defaultTab&&"review"===params[defaultTab.value].article_type&&react.createElement(SeasonalEventCountdown.Z,{className:"merchantlink"}),(dealData.deals||[]).map((deal=>react.createElement(MerchantLinkWidget_MerchantLinkWidgetItem,{deal,key:null==deal?void 0:deal.id}))),"event"===seasonal&&defaultTab&&"review"===params[defaultTab.value].article_type&&react.createElement(SeasonalEventMerchants.Z,{className:"merchantlink"}),react.createElement(ModelCodeReviews,null)))))})))}},5947:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.d(__webpack_exports__,{W:()=>isServerside});const isServerside=()=>"undefined"==typeof window},535:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.d(__webpack_exports__,{j:()=>loadCSS});var _getWidgetsEndpoint__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(5746);const loadCSS=component=>{if("undefined"!=typeof window&&!document.getElementById("hawkStyles-".concat(component))){const linkTag=document.createElement("link");linkTag.rel="stylesheet",linkTag.type="text/css",linkTag.id="hawkStyles-".concat(component),linkTag.href="".concat((0,_getWidgetsEndpoint__WEBPACK_IMPORTED_MODULE_0__.Z)(),"/css/browser/").concat("16.48.25-64c97a9493a5f3d88128056ba4e022ef5f515af0","/").concat(component,".min.css"),document.head.appendChild(linkTag)}}}}]); //# sourceMappingURL=merchantlink.js.map