PageSourceSearch

https://www.gq-magazine.co.uk/verso/static/9544.6b84daf1132778ae7410.js

js gq-magazine.co.uk collected 2026-09-24 08:26:00 UTC 63,306 bytes, 353 lines download raw bytes

1"use strict";(globalThis.webpackChunkverso=globalThis.webpackChunkverso||[]).push([[9544],{86504(e,t,i){i.d(t,{p:()=>a,r:()=>n});var o=i(22509);const a=({subscriptionUrl:e,modalConfig:t,redirectURL:i,action:a})=>{(0,o.Rf)({dangerousHed:t.hed,dangerousDek:t.dek,customCtaLabel:t.customCtaLabel,customCtaUrl:e,signInText:t.signInText,signInLinkText:t.signInLinkText,shouldHideHedSpanTag:!0,redirectURL:i||window.location.href,shouldHideIllustration:!0,shouldOpenCtaInNewTab:!0,isSubscriptionModal:!0,action:a})},n=(e,t)=>!e&&!!t},92867(e,t,i){i.d(t,{A:()=>o});const o=(0,i(72267).YK)({utilityLabel:{id:"ReviewListContainer.UtilityLabel",defaultMessage:"Back to top",description:"Utility label for review list container"},collapsedCommentsCtaLabel:{id:"Commenting.CollapsedCommentsCtaLabel",defaultMessage:"Join the discussion",description:"CTA label for expanding collapsed comments"},collapsedCommentsBackToTopLabel:{id:"Commenting.CollapsedCommentsBackToTopLabel",defaultMessage:"Back to top",description:"Utility link label for collapsed comments"},SavedCommentMsgTitle:{id:"Commenting.SavedCommentMsgTitle",defaultMessage:"Comment submitted",description:"Text for the MessageBanner title",isConfigurable:!0},SavedCommentDek:{id:"Commenting.SavedCommentDek",defaultMessage:"Comments are moderated in line with our",description:"Text for the MessageBanner body",isConfigurable:!0},CommunityGuidelines:{id:"Commenting.CommunityGuidelines",defaultMessage:"Community Guidelines",description:"Text for the community guidelines link",isConfigurable:!0},SavedCommentDekTrail:{id:"Commenting.SavedCommentDekTrail",defaultMessage:"before being added.",description:"Text for the MessageBanner body",isConfigurable:!0},SavedCommentSubContent:{id:"Commenting.SavedCommentSubContent",defaultMessage:"Thank you for contributing your thoughts.",description:"Text for the MessageBanner sub content",isConfigurable:!0},likeActionErrorMessage:{id:"Commenting.LikeActionErrorMessage",defaultMessage:"Unable to like this comment. Please try again.",description:"Error message to display while like action fails"},unlikeActionErrorMessage:{id:"Commenting.UnlikeActionErrorMessage",defaultMessage:"Unable to unlike this comment. Please try again.",description:"Error message to display while unlike action fails"},signInModalHed:{id:"Commenting.signInModalHed",defaultMessage:"Sign in to join the",description:"Hed for commenting sign in modal"},signInModalHedSpanTag:{id:"Commenting.signInModalHedSpanTag",defaultMessage:"{brandName} community",description:"Hed span for commenting sign in modal"},signInModalMessage:{id:"Commenting.signInModalMessage",defaultMessage:"Once you're signed in, add your comments and like or reply to others.",description:"Message for commenting sign in modal"},replyDiscardModalHed:{id:"Commenting.replyDiscardModalHed",defaultMessage:"Discard this reply?",description:"Hed for discard reply modal"},closeCommentStreamMessage:{id:"Commenting.closeCommentStreamMessage",defaultMessage:"Comments are closed on this story but you can still browse or upvote them.",description:"Hed for discard reply modal"},emptyCommentMsgHed:{id:"Commenting.emptyCommentMsgHed",defaultMessage:"There aren’t any comments yet.",description:"Hed for empty comments"},emptyCommentMsgDek:{id:"Commenting.emptyCommentMsgDek",defaultMessage:"Add the first to start the conversation.",description:"Dek for empty comments"},signInButtonLabel:{id:"Commenting.signInButtonLabel",defaultMessage:"Sign in or create account",description:"Text for the sign in or create account button"},subscribeButtonLabel:{id:"Commenting.subscribeButtonLabel",defaultMessage:"Subscribe",description:"Text for the subscribe button in dual CTA layout"},alreadySubscriberLabel:{id:"Commenting.alreadySubscriberLabel",defaultMessage:"Already a subscriber?",description:"Text for the secondary sign in link (will not be underlined)"},signInLabel:{id:"Commenting.orSignInLabel",defaultMessage:"sign in",description:"Text for the secondary sign in link (will be underlined)"},signOutEmptyCommentMsgDek:{id:"Commenting.signOutEmptyCommentMsgDek",defaultMessage:"Be the first to start the conversation!<br/> You need an account to add or like comments.",description:"Dek for empty comments for signed out users"},signUpMessageBannerHed:{id:"Commenting.signUpMessageBannerHed",defaultMessage:"Join the {brandName} community to add comments.",description:"Text for signout heading"},saveStory:{id:"Commenting.saveStory",defaultMessage:"Save story",description:"Label for the bookmark icon in commenting section"},pinnedReviewLabel:{id:"ReviewList.pinnedReviewLabel",defaultMessage:"Featured by",description:"Featured by label"},qaReviewLabel:{id:"ReviewList.qaReviewLabel",defaultMessage:"Q&A with",description:"Q&A label"},qaBannerTitle:{id:"Commenting.qaBannerTitle",defaultMessage:"Have a question we missed asking?",description:"Title for QA banner"}
1,qaBannerDek:{id:"Commenting.qaBannerDescription",defaultMessage:"Join the live Q&A",description:"Description for QA banner"},guidelinesLinkText:{id:"Commenting.guidelinesLinkText",defaultMessage:"guidelines.",description:"Text for the guidelines link"}})},57886(e,t,i){i.d(t,{A:()=>T});var o=i(5556),a=i.n(o),n=i(96540),r=i(6442),l=i(76399);const s=(0,i(72267).YK)({closeButtonAriaLabel:{id:"ReviewNoteModal.CloseButtonAriaLabel",defaultMessage:"Close ReviewNoteModal Modal",description:"ReviewNoteModal component close button aria label"},closeButtonLabel:{id:"ReviewNoteModal.CloseButtonLabel",defaultMessage:"close modal button label",description:"ReviewNoteModal component close button label"},continueLabel:{id:"ReviewNoteModal.continueLabel",defaultMessage:"No, still writing",description:"ReviewNoteModal component continue button text",isConfigurable:!0},dek:{id:"ReviewNoteModal.dek",defaultMessage:"Everything you've written will be lost",description:"ReviewNoteModal component dek text",isConfigurable:!0},discardLabel:{id:"ReviewNoteModal.discardLabel",defaultMessage:"Yes, discard it",description:"ReviewNoteModal discard button text",isConfigurable:!0},hed:{id:"ReviewNoteModal.Hed",defaultMessage:"Discard this comment?",description:"ReviewNoteModal component hed text",isConfigurable:!0}});var d=i(13465),c=i(53499),u=i(20312),p=i.n(u),m=i(38267),g=i(18608),h=i(26865),b=i(96472),y=i(73730),f=i(50531);const R=(0,m.Ay)(g.vm).withConfig({displayName:"ReviewNoteModalHed"}).attrs(e=>({as:"div",colorToken:"colors.interactive.base.brand-primary",topSpacing:1,typeIdentity:"typography.definitions.consumptionEditorial.display-large",...e}))`
2  margin-top: ${(0,h.Kq)(0)};
3  padding: ${(0,h.Kq)(2.5)} ${(0,h.Kq)(1.25)};
4  text-align: center;
5`,w=m.Ay.p.withConfig({displayName:"ReviewNoteModalDek"})`
6  ${(0,h.Gg)("typography.definitions.consumptionEditorial.body-core")}
7  margin-top: ${(0,h.Kq)(0)};
8  margin-bottom: ${(0,h.Kq)(5)};
9  text-align: center;
10  color: ${(0,h.HK)("colors.consumption.body.standard.body")};
11  @media (max-width: ${b.LO.md}) {
12    margin-bottom: ${(0,h.Kq)(5)};
13  }
14`,C=(0,m.Ay)(y.A.Utility).withConfig({displayName:"ReviewNoteModalButtonPrimary"})`
15  position: absolute;
16  top: ${(0,h.Kq)(1)};
17  right: ${(0,h.Kq)(1)};
18  padding: 0;
19  fill: ${(0,h.HK)("colors.interactive.base.black")};
20
21  .icon-close {
22    padding: 6px;
23  }
24
25  &,
26  &:focus,
27  &:hover {
28    border: 0;
29    background-color: transparent;
30  }
31  width: 42px;
32  height: 42px;
33`,A=(0,m.Ay)(y.A.Primary).withConfig({displayName:"ReviewNoteModalContinueButton"})`
34  display: flex;
35  justify-content: center;
36  margin-bottom: ${(0,h.Kq)(1)};
37  padding: ${(0,h.Kq)(2)} ${(0,h.Kq)(0)};
38  width: 100%;
39  ${f.Lj} {
40    padding: 0 ${(0,h.Kq)(2.5)};
41  }
42`,v=(0,m.Ay)(y.A.Primary).withConfig({displayName:"ReviewNoteDiscardSection"})`
43  display: flex;
44  justify-content: center;
45  padding: 17px ${(0,h.Kq)(0)};
46  width: 100%;
47  text-decoration: underline;
48  ${f.Lj} {
49    padding: 0 ${(0,h.Kq)(2.5)};
50  }
51`;function L({className:e,...t}){const i=`${e}__content`,o=`${e}__overlay`;return n.createElement(p(),{portalClassName:e,className:i,overlayClassName:o,...t,ref:t.configuredComponentRef})}L.propTypes={className:a().string,configuredComponentRef:a().func};const E=(0,m.Ay)(L).withConfig({displayName:"ReviewNoteModalBaseWrapper"})`
52  &__overlay {
53    position: fixed;
54    top: 0;
55    right: 0;
56    bottom: 0;
57    left: 0;
58    z-index: ${b.KV.interstitialLayer};
59
60    background-color: rgba(
61      ${(0,h.HK)("colors.background.black",{rgbOnly:!0})},
62      0
63    );
64
65    &.ReactModal__Overlay--after-open {
66      transition: background-color 500ms;
67      opacity: 1;
68      background-color: rgba(
69        ${(0,h.HK)("colors.background.black",{rgbOnly:!0})},
70        0.4
71      );
72    }
73
74    &.ReactModal__Overlay--after-close {
75      transition: background-color 500ms;
76      background-color: rgba(
77        ${(0,h.HK)("colors.background.black",{rgbOnly:!0})},
78        0
79      );
80    }
81  }
82
83  &__content {
84    position: relative;
85    top: 50%;
86    left: 50%;
87    transform: translateY(-50%) translateX(-50%);
88    border-radius: ${(0,h.Kq)(1)};
89    box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.1);
90    background-color: ${(0,h.HK)("colors.background.white")};
91    padding: ${(0,h.Kq)(6)} ${(0,h.Kq)(5)}
92      ${(0,h.Kq)(5)} ${(0,h.Kq)(5)};
93    width: ${(0,h.Kq)(57)};
94    height: 368px;
95    overflow-y: auto;
96    @media (max-width: ${b.LO.md}) {
97      transform: translateY(-50%)
98        translateX(calc(-50% - ${(0,h.Kq)(2,"px")}));
99
100      margin: 0 ${(0,h.Kq)(2,"px")};
101      padding: ${(0,h.Kq)(4)} ${(0,h.Kq)(5)}
102        ${(0,h.Kq)(4)} ${(0,h.Kq)(5)};
103      width: auto;
104      min-width: ${(0,h.Kq)(38)};
105      max-width: ${(0,h.Kq)(60)};
106    }
107  }
108`,M=({className:e,configuredComponentRef:t,modalProps:{hed:i,dek:o,continueLabel:a,discardLabel:d}={},confirmButtonCallback:u,onClose:p,isVisible:m=!1})=>{n.useEffect(()=>{window.Kendra.TRACK_COMPONENT.broadcast(c.G.RENDER,{name:"ReviewNoteSubmitModal"})},[]);const g=()=>{p()},{formatMessage:h}=(0,r.A)();return n.createElement(E,{configuredComponentRef:t,className:e,closeTimeoutMS:200,isOpen:m},n.createElement(C,{isIconButton:!0,ariaLabel:h(s.closeButtonAriaLabel),label:h(s.closeButtonLabel),onClickHandler:g,role:"button",ButtonIcon:l.A}),n.createElement(R,null,i||h(s.hed)),n.createElement(w,null,o||h(s.dek)),n.createElement(A,{label:a||h(s.continueLabel),onClickHandler:g}),n.createElement(v,{onClickHandler:u,label:d||h(s.discardLabel),btnStyle:"text",inputKind:"link"}))};M.propTypes={configuredComponentRef:a().func,className:a().string,confirmButtonCallback:a().func,isVisible:a().bool,modalProps:a().object,onClose:a().func},M.displayName="ReviewNoteModal";const T=(0,d.y)(M,"ReviewNoteModal")},24695(e,t,i){i.r(t),i.d(t,{Account:()=>o.A,AgeGate:()=>a.A,Arrow:()=>n.A,ArrowOut:()=>r.A,Article:()=>l.A,BadgeArtist:()=>s.A,BadgeDayOne:()=>d.A,BadgeStaff:()=>c.A,BlueSky:()=>g.A,Bookmark:()=>u.A,BookmarkActivated:()=>p.A,BookmarkNew:()=>m.A,CartFilled:()=>h.A,CartOutlined:()=>b.A,Check:()=>y.A,ChevronDown:()=>A.A,ChevronFill:()=>R.A,ChevronLeft:()=>w.A,ChevronRight:()=>f.A,ChevronUp:()=>C.A,Close:()=>v.A,Collapse:()=>L.A,Comment:()=>E.A,CopyLink:()=>M.A,Dot:()=>T.A,DownloadCloud:()=>k.A,DownloadWeb:()=>I.A,Email:()=>S.A,EmailFilled:()=>U.A,Enlarge:()=>x.A,Expand:()=>N.A,Facebook:()=>$.A,Filmstrip:()=>B.A,Flipboard:()=>H.A,Gallery:()=>_.A,GoogleNews:()=>P.A,Grid:()=>D.A,Headphone:()=>q.A,Information:()=>K.A,Instagram:()=>O.A,LargeChevron:()=>F.A,LeftChevron:()=>Xe.A,Like:()=>j.A,LikeFilled:()=>Y.A,Line:()=>G.A,LinkedIn:()=>W.A,List:()=>z.A,LocationPin:()=>J.A,Maximize:()=>X.A,Menu:()=>Q.A,NativeShare:()=>Z.A,Newsletter:()=>ee.A,NewsletterArrow:()=>te.A,OK:()=>ie.A,Paperclip:()=>oe.A,Passkey:()=>ce.A,Pause:()=>ae.A,PhotoStack:()=>ne.A,Pinterest:()=>re.A,PitchforkUpvote:()=>le.A,PitchforkUpvoteFilled:()=>se.A,Play:()=>de.A,PlayOutlined:()=>pe.A,Playlist:()=>ue.A,Print:()=>me.A,RatingFilled:()=>ge.A,RatingHalf:()=>he.A,RatingOutlined:()=>be.A,Replay:()=>ye.A,Rss:()=>fe.A,Search:()=>Re.A,Share:()=>we.A,Shopping:()=>Ce.A,SlimHeadphone:()=>Ae.A,Snapchat:()=>ve.A,SocialHandle:()=>Le.A,SplitView:()=>Me.A,Spotify:()=>Ee.A,Star:()=>Te.A,Subscribe:()=>Qe.A,Telegram:()=>ke.A,Threads:()=>Ie.A,Tiktok:()=>Se.A,Timestamp:()=>Ue.A,Triangle:()=>xe.A,TriangleDown:()=>Ne.A,TriangleUp:()=>$e.A,Tumblr:()=>Be.A,Twitter:()=>He.A,VK:()=>Fe.A,VerificationBadge:()=>_e.A,Vero:()=>Pe.A,Viber:()=>De.A,Video:()=>qe.A,VolumeHigh:()=>Ke.A,VolumeMute:()=>Oe.A,WeChat:()=>Ve.A,WebLink:()=>Ye.A,Weibo:()=>je.A,Whatsapp:()=>Ge.A,Xing:()=>We.A,YandexZen:()=>ze.A,YouTube:()=>Je.A,default:()=>Ze});var o=i(63104),a=i(83383),n=i(4262),r=i(25116),l=i(87793),s=i(95599),d=i(28538),c=i(44760),u=i(70931),p=i(64736),m=i(42605),g=i(72942),h=i(80809),b=i(19751),y=i(18635),f=i(69880),R=i(38537),w=i(9137),C=i(47749),A=i(19328),v=i(76399),L=i(73672),E=i(28650),M=i(19310),T=i(30408),k=i(7742),I=i(20821),S=i(43403),U=i(68579),x=i(28717),N=i(93467),$=i(23871),B=i(85803),H=i(76702),_=i(20381),P=i(25727),D=i(36355),q=i(43657),K=i(25965),O=i(25855),F=i(8228
1081),V=i(63208),j=i(50716),Y=i(27404),G=i(35105),W=i(22921),z=i(25963),J=i(78477),X=i(32209),Q=i(26488),Z=i(67977),ee=i(55020),te=i(66491),ie=i(32313),oe=i(19775),ae=i(57561),ne=i(26407),re=i(16401),le=i(99576),se=i(12256),de=i(69433),ce=i(23971),ue=i(65469),pe=i(77067),me=i(19368),ge=i(60614),he=i(60703),be=i(85348),ye=i(39184),fe=i(42223),Re=i(73767),we=i(44244),Ce=i(61599),Ae=i(8550),ve=i(37193),Le=i(50762),Ee=i(71369),Me=i(29246),Te=i(7171),ke=i(75260),Ie=i(92550),Se=i(97057),Ue=i(49811),xe=i(91583),Ne=i(84979),$e=i(1846),Be=i(10537),He=i(98152),_e=i(70417),Pe=i(56765),De=i(78041),qe=i(62524),Ke=i(82785),Oe=i(3052),Fe=i(98276),Ve=i(6133),je=i(97575),Ye=i(96989),Ge=i(69301),We=i(26835),ze=i(34013),Je=i(55166),Xe=i(66191),Qe=i(77035);const Ze={Account:o.A,AgeGate:a.A,Arrow:n.A,ArrowOut:r.A,Article:l.A,BadgeArtist:s.A,BadgeDayOne:d.A,BadgeStaff:c.A,Bookmark:u.A,BookmarkActivated:p.A,BookmarkNew:m.A,BlueSky:g.A,CartFilled:h.A,CartOutlined:b.A,Check:y.A,ChevronRight:f.A,ChevronFill:R.A,ChevronLeft:w.A,ChevronUp:C.A,ChevronDown:A.A,Close:v.A,Collapse:L.A,Comment:E.A,CopyLink:M.A,Dot:T.A,DownloadCloud:k.A,DownloadWeb:I.A,Email:S.A,EmailFilled:U.A,Enlarge:x.A,Expand:N.A,Facebook:$.A,Filmstrip:B.A,Flipboard:H.A,Gallery:_.A,GoogleNews:P.A,Grid:D.A,Headphone:q.A,Information:K.A,Instagram:O.A,LargeChevron:F.A,LeftChevron:Xe.A,Like:j.A,LikeFilled:Y.A,Line:G.A,LinkedIn:W.A,List:z.A,Lock:V.A,LocationPin:J.A,Maximize:X.A,Menu:Q.A,NativeShare:Z.A,Newsletter:ee.A,NewsletterArrow:te.A,OK:ie.A,Pa
108perclip:oe.A,Pause:ae.A,PhotoStack:ne.A,Pinterest:re.A,PitchforkUpvote:le.A,PitchforkUpvoteFilled:se.A,Play:de.A,Passkey:ce.A,Playlist:ue.A,PlayOutlined:pe.A,Print:me.A,RatingFilled:ge.A,RatingHalf:he.A,RatingOutlined:be.A,Replay:ye.A,Rss:fe.A,Search:Re.A,Share:we.A,Shopping:Ce.A,SlimHeadphone:Ae.A,Snapchat:ve.A,SocialHandle:Le.A,Spotify:Ee.A,SplitView:Me.A,Star:Te.A,Subscribe:Qe.A,Telegram:ke.A,Threads:Ie.A,Tiktok:Se.A,Timestamp:Ue.A,Triangle:xe.A,TriangleDown:Ne.A,TriangleUp:$e.A,Tumblr:Be.A,Twitter:He.A,VerificationBadge:_e.A,Vero:Pe.A,Viber:De.A,Video:qe.A,VolumeHigh:Ke.A,VolumeMute:Oe.A,VK:Fe.A,WeChat:Ve.A,Weibo:je.A,WebLink:Ye.A,Whatsapp:Ge.A,Xing:We.A,YandexZen:ze.A,YouTube:Je.A}},40381(e,t,i){i.d(t,{A:()=>R});var o=i(13465),a=i(57744),n=i(5556),r=i.n(n),l=i(96540),s=i(44741),d=i(53499);var c=i(57743),u=i(56892),p=i(53788);const m=async(e,t={})=>{if(!e)return null;try{const i=await(async e=>{const{file:t,brand:i,product:o,expirationDate:a,pixVaultUrl:n}=e;try{const e=`${n}/upload`,r=(0,u.getCookie)(p.A.oidcCookies.access);if(!r)throw new Error("Authentication token not found");const l=new FormData;l.append("files",t),l.append("brand",i),l.append("product",o),a&&l.append("expirationDate",a);const s=await(0,c.u)(e,{body:l,method:"POST",headers:{Authorization:`Bearer ${r}`}},18e4);if(!s.ok){const e=await s.json();throw new Error(e.message||`Server responded with status: ${s.status}`)}return await s.json()}catch(e){throw e}})({file:e,...t});return i}catch(e){throw e}};var g=i(32272);const h=["image/jpeg","image/png","image/jpg"],b=({allowedExtensions:e=h,brand:t,buttonText:i="Upload Image",configuredComponentRef:o,expirationDate:a,id:n="image-upload",imageUpload:{brandSlug:r,pixVaultUrl:c}={},maxFileSize:u=30,minFileSize:p=.1,onFileChange:b,onUploadStatusChange:y,placeholderImage:f='<svg width="82" height="82" viewBox="0 0 82 82" fill="none" xmlns="http://www.w3.org/2000/svg">\n<g clip-path="url(#clip0_6632_146663)">\n<rect x="1.5" y="1.5" width="79" height="79" stroke="white"/>\n<path d="M48.3724 32.5001C48.3508 32.5005 48.3291 32.5021 48.3076 32.5047C48.1567 32.5223 48.0177 32.5941 47.9173 32.7066C47.817 32.819 47.7624 32.964 47.764 33.1137V34.9411H45.9169C45.8993 34.9404 45.8816 34.9404 45.8639 34.9411C45.7063 34.9552 45.5602 35.0285 45.456 35.1459C45.3518 35.2633 45.2974 35.4157 45.3043 35.5716C45.3111 35.7274 45.3785 35.8747 45.4926 35.9828C45.6067 36.0909 45.7586 36.1516 45.9169 36.1523H47.764V37.9702C47.7634 38.0506 47.7789 38.1302 47.8097 38.2046C47.8405 38.279 47.886 38.3468 47.9434 38.4038C48.0009 38.4608 48.0692 38.5062 48.1445 38.5371C48.2198 38.5679 48.3006 38.5838 48.3821 38.5838C48.4637 38.5838 48.5444 38.5679 48.6197 38.5371C48.695 38.5062 48.7633 38.4608 48.8208 38.4038C48.8783 38.3468 48.9237 38.279 48.9545 38.2046C48.9853 38.1302 49.0008 38.0506 49.0002 37.9702V36.1523H50.8449C50.9289 36.1576 51.0131 36.1459 51.0924 36.1179C51.1716 36.0898 51.2441 36.046 51.3055 35.9892C51.3669 35.9325 51.4158 35.8639 51.4493 35.7878C51.4827 35.7117 51.5 35.6296 51.5 35.5466C51.5 35.4637 51.4827 35.3817 51.4493 35.3056C51.4158 35.2295 51.3669 35.1608 51.3055 35.1041C51.2441 35.0473 51.1716 35.0036 51.0924 34.9756C51.0131 34.9475 50.9289 34.9359 50.8449 34.9411H49.0002V33.1137C49.0012 33.0325 48.9856 32.9519 48.9543 32.8766C48.9231 32.8014 48.8768 32.7332 48.8182 32.6759C48.7597 32.6187 48.69 32.5736 48.6135 32.5434C48.5369 32.5131 48.4549 32.4985 48.3724 32.5001ZM44.7672 32.5138C44.7448 32.5134 44.7223 32.5142 44.6999 32.5162H41.7536C41.4904 32.5162 41.2235 32.5159 40.9624 32.5162C40.6464 32.5159 40.3626 32.5162 40.046 32.5162C39.4396 32.5162 38.9299 32.5072 38.4274 32.6159C37.9249 32.7237 37.4484 32.9703 37.0276 33.3861C37.0243 33.3891 37.021 33.3921 37.0178 33.3952C36.6389 33.7759 36.288 34.2047 35.9716 34.514C35.6552 34.8231 35.3925 34.9428 35.3463 34.9428H32.9989C31.6379 34.9428 30.5 36.0247 30.5 37.3722V47.0541C30.5 48.4016 31.6316 49.4965 32.9989 49.5H40.9814H48.9614C50.3307 49.5 51.4627 48.4016 51.4627 47.0541V38.3913C51.4633 38.311 51.4478 38.2312 51.417 38.1568C51.3862 38.0823 51.3408 38.0148 51.2833 37.9577C51.2258 37.9007 51.1575 37.8554 51.0822 37.8245C51.0069 37.7936 50.9262 37.7777 50.8446 37.7777C50.7631 37.7777 50.6823 37.7936 50.607 37.8245C50.5317 37.8554 50.4634 37.9007 50.4059 37.9577C50.3485 38.0148 50.303 38.0823 50.2722 38.1568C50.2415 38.2312 50.2259 38.311 50.2265 38.3913V47.0541C50.2265 47.7458 49.6734 48.2912 48.9614 48.2912H40.9816H32.9991C32.2853 48.2894 31.7365 47.7458 31.7365 47.0541V37.3721C31.7365 36.6803 32.279 36.1538 32.9991 36.1538H35.3465C36.0047 36.1538 36.454 35.7563 36.8449 35.3742C37.2358 34.9922 37.5869 34.5613 37.9007 34.2459C38.1843 33.9657 38.3796 33.862 38.6896 33.7955C38.9996 33.729 39.4396 33.7246 40.046 33.7246C40.3636 33.7246 40.6482 33.7242 40.9624 33.7246C41.2219 33.7243 41.4898 33.7245 41.7537 33.7246C41.8267 33.7246 44.6448 33.7246 44.6999 33.7246C44.7821 33.7317 44.865 33.7223 44.9436 33.6973C45.0221 33.6722 45.0947 33.6319 45.1571 33.5786C45.2195 33.5253 45.2704 33.4602 45.3067 33.3871C45.3431 33.314 45.3641 33.2345 45.3687 33.1532C45.3732 33.072 45.3611 32.9907 45.333 32.9141C45.305 32.8376 45.2617 32.7674 45.2056 32.7077C45.1495 32.648 45.0817 32.6 45.0064 32.5666C44.9311 32.5332 44.8498 32.5156 44.7672 32.5138ZM41.0009 38.5814C39.308 38.5814 37.9272 39.9492 37.9272 41.6175C37.9272 43.2857 39.308 44.6465 41.0009 44.6465C42.6938 44.6465 44.0818 43.2857 44.0818 41.6175C44.0818 39.9492 42.6938 38.5814 41.0009 38.5814ZM41.0009 39.7996C42.0283 39.7996 42.8552 40.605 42.8552 41.6175C42.8552 42.6299 42.0283 43.4354 41.0009 43.4354C39.9735 43.4354 39.1538 42.6299 39.1538 41.6175C39.1538 40.605 39.9735 39.7996 41.0009 39.7996Z" fill="#333333"/>\n</g>\n<rect x="0.5" y="0.5" width="81" height="81" rx="4.5" stroke="#C9C9C9"/>\n<defs>\n<clipPath id="clip0_6632_146663">\n<rect x="1" y="1" width="80" height="80" rx="4" fill="white"/>\n</clipPath>\n</defs>\n</svg>\n',product:R})=>{l.useEffect(()=>{window.Kendra.TRACK_COMPONENT.broadcast(d.G.RENDER,{name:"ImageUpload"})},[]);const[w,C]=(0,l.useState)(f),[A,v]=(0,l.useState)({width:0,height:0}),[L,E]=(0,l.useState)(!1),M=(0,l.useRef)(null),T=(0,l.useRef)(null),k=w&&w!==f&&w.startsWith("blob:");(0,l.useEffect)(()=>
108{if(T.current){const e=T.current.querySelector("svg");if(e){const{width:t,height:i}=e.getBoundingClientRect();v({width:t,height:i})}}},[f]),(0,l.useEffect)(()=>()=>{k&&URL.revokeObjectURL(w)},[w,f,k]);return l.createElement(s.ef,{ref:o,iconWidth:A.width,iconHeight:A.height},l.createElement("form",{onSubmit:e=>{e.preventDefault(),M.current.click()},id:`${n}-form`},l.createElement("label",{htmlFor:n,className:"upload-container","aria-label":i},l.createElement("div",{className:"upload-content"},!L&&w!==f&&l.createElement(s.tG,null,l.createElement("img",{src:w,alt:i})),L&&l.createElement(s.p8,{isUploading:L},l.createElement(s.hl,null,l.createElement(g.A,{className:"image-upload-loader"}))),!L&&w===f&&l.createElement("div",{className:"placeholder-icon",dangerouslySetInnerHTML:{__html:w},ref:T}))),l.createElement("input",{type:"file",accept:e,onChange:async()=>{const[i]=M.current.files;if(i){const n=(e=>{const t=e.size/1048576;return!(t<p||t>u)})(i),l=(o=i,!!e.includes(o.type));if(!n||!l)return void(M.current.value="");if(b){E(!0),y&&y(!0);try{const e=t||r,o=R||"test",n=await m(i,{brand:e,product:o,expirationDate:a,pixVaultUrl:c});if(k&&URL.revokeObjectURL(w),200===n?.statusCode&&n?.data?.[0]?.encodedURI){const e=URL.createObjectURL(i);C(e)}b(n)}catch(e){}finally{E(!1),y&&y(!1)}}}var o},ref:M,hidden:!0,id:n,name:n,disabled:L})))};b.propTypes={configuredComponentRef:r().func,allowedExtensions:r().arrayOf(r().string),brand:r().string,buttonText:r().string,expirationDate:r().string,id:r().string,imageUpload:r().shape({pixVaultUrl:r().string,brandSlug:r().string,product:r().string,userAgentValue:r().string}),maxFileSize:r().number,minFileSize:r().number,onFileChange:r().func,onUploadStatusChange:r().func,placeholderImage:r().string,product:r().string};const y=b,f=(0,a.M3)(y,{keysToPluck:["imageUpload"]}),R=(0,o.y)(f,"ImageUpload")},44741(e,t,i){i.d(t,{ef:()=>n,hl:()=>s,p8:()=>l,tG:()=>r});var o=i(38267),a=i(26865);const n=o.Ay.div.withConfig({displayName:"ImageUploadWrapper"})`
109  --icon-width: ${({iconWidth:e})=>e?`${e}px`:(0,a.Kq)(10)};
110  --icon-height: ${({iconHeight:e})=>e?`${e}px`:(0,a.Kq)(10)};
111
112  .upload-container {
113    cursor: pointer;
114  }
115
116  .upload-content {
117    position: relative;
118    width: var(--icon-width);
119    height: var(--icon-height);
120  }
121`,r=o.Ay.div.withConfig({displayName:"UploadedImageContainer"})`
122  width: var(--icon-width);
123  height: var(--icon-height);
124  overflow: hidden;
125
126  img {
127    width: 100%;
128    height: 100%;
129    object-fit: cover;
130  }
131`,l=o.Ay.div.withConfig({displayName:"LoadingOverlay"})`
132  display: flex;
133  position: absolute;
134  align-items: center;
135  justify-content: center;
136  transition: opacity 0.5s ease-in-out;
137  opacity: 0;
138  inset: 0;
139  pointer-events: none;
140  ${({isUploading:e})=>e&&"\n    opacity: 1;\n    pointer-events: auto;\n    "}
141
142  .image-upload-loader {
143    width: ${(0,a.Kq)(4)};
144    height: ${(0,a.Kq)(4)};
145  }
146`,s=o.Ay.div.withConfig({displayName:"LoadingOutline"})`
147  display: flex;
148  align-items: center;
149  justify-content: center;
150  border: ${(0,a.Kq)(.125)} solid
151    ${({theme:e})=>(0,a.HK)(e,"colors.interactive.base.black")};
152  border-radius: ${(0,a.Kq)(.5)};
153  width: var(--icon-width);
154  height: var(--icon-height);
155`},26800(e,t,i){i.d(t,{A:()=>Be});var o=i(5556),a=i.n(o),n=i(96540),r=i(6442),l=i(53499),s=i(21093),d=i(7285),c=i(72267);const u=(0,c.YK)({ReviewReplyLabel:{id:"ReviewReplyNote.ReviewReplyLabel",defaultMessage:"Replying to:",description:"The label for the reply note field"},ReplyFieldPlaceHolder:{id:"ReviewReplyNote.ReplyFieldPlaceHolder",defaultMessage:"Add your reply here...",description:"The placeholder for the reply note text field"},ReplyButtonLabel:{id:"ReviewReplyNote.ReplyButtonLabel",defaultMessage:"Reply",description:"The label for the reply button"},CancelButtonLabel:{id:"ReviewReplyNote.CancelButtonLabel",defaultMessage:"Discard",description:"The label for the cancel button"},ReplyTextFieldLabel:{id:"ReviewReplyNote.ReplyTextFieldLabel",defaultMessage:"Your Reply",description:"The label for the reply text field"},AddReplySuccessToastMessage:{id:"ReviewReplyNote.AddReplySuccessToastMessage",defaultMessage:"Reply added",description:"Success message to show on reply save"}
155,AddReplyFailedToastMessage:{id:"ReviewReplyNote.AddReplyFailedToastMessage",defaultMessage:"Unable to add your reply. Please try again.",description:"Failure message to show on reply save"},ReviewFieldAlertLimitErrorText:{id:"ReviewReplyNote.ReviewFieldAlertLimitErrorText",defaultMessage:"_CHARACTER_LIMIT_CURRENT_ of _CHARACTER_LIMIT_ character limit remaining.",description:"The error message for the review field alert limit"},ReviewFieldMaxLimitErrorText:{id:"ReviewReplyNote.ReviewFieldMaxLimitErrorText",defaultMessage:"_CHARACTER_LIMIT_ character limit met.",description:"The error message for the review field max limit"},ReviewFieldMinLimitErrorText:{id:"ReviewReplyNote.ReviewFieldMinLimitErrorText",defaultMessage:"Enter 2 characters or more to add a reply.",description:"The error message for the review field min limit"}});var p=i(60711),m=i(75454),g=i(38267),h=i(26865),b=i(73730),y=i(18608),f=i(96472),R=i(72081),w=i(44741);const C=(0,g.Ay)(y.vm).withConfig({displayName:"ReviewReplyUsername"})`
156  ${({theme:e})=>(0,h._o)(e,"color","colors.consumption.body.standard.body")};
157  ${({theme:e})=>(0,h.Gg)(e,"typography.definitions.globalEditorial.accreditation-core")};
158  padding-left: ${(0,h.Kq)(.5)};
159`,A=g.Ay.div.withConfig({displayName:"ReviewReplyNoteWrapper"})`
160  border: 1px solid ${(0,h.HK)("colors.foundation.menu.dividers")};
161  padding: ${(0,h.Kq)(3)};
162  gap: ${(0,h.Kq)(1.5)};
163  ${(0,h.L7)(f.LO.md)} {
164    margin-top: ${(0,h.Kq)(1.25)};
165  }
166`,v=(0,g.Ay)(b.A.Primary).withConfig({displayName:"ReviewReplyCancelLink"})`
167  margin-top: ${(0,h.Kq)(1.25)};
168  width: 100%;
169  ${(0,h.Gg)("typography.definitions.utility.button-core")}
170  text-decoration: underline;
171  ${({theme:e})=>(0,h._o)(e,"color","colors.interactive.base.brand-primary")};
172`,L=(0,g.Ay)(R.A.MultiLine).withConfig({displayName:"ReviewReplyMultilineTextField"})`
173  ${(0,h.Gg)("typography.definitions.utility.input-core")}
174  ${({theme:e})=>(0,h._o)(e,"color","colors.interactive.base.light")};
175`,E=g.Ay.span.withConfig({displayName:"ReviewReplyLabel"})`
176  ${({theme:e})=>(0,h._o)(e,"color","colors.consumption.body.standard.body-deemphasized")};
177  ${({theme:e})=>(0,h.Gg)(e,"typography.definitions.globalEditorial.accreditation-core")};
178`,M=g.Ay.div.withConfig({displayName:"ReviewReplyNoteInfo"})`
179  display: flex;
180`,T=(0,g.Ay)(b.A.Primary).withConfig({displayName:"ReviewReplyButton"})`
181  display: block;
182  margin-top: 0.5rem;
183  margin-bottom: 20px;
184  padding: 15px 9px;
185  width: 100%;
186  max-width: 100%;
187  height: unset;
188  text-align: center;
189
190  &:active::before {
191    top: 0;
192    left: 0;
193  }
194`,k=g.Ay.div.withConfig({displayName:"ReviewReplyButtonWrapper"})`
195  ${(0,h.H4)(f.LO.lg)} {
196    display: grid;
197    grid-template-columns: repeat(2, auto);
198    gap: 32px;
199  }
200  ${(0,h.L7)(f.LO.md)} {
201    display: flex;
202    flex-direction: column;
203  }
204`,I=g.Ay.div.withConfig({displayName:"ReviewReplyImageUploadWrapper"})`
205  ${w.ef} {
206    margin-top: ${(0,h.Kq)(2)};
207    margin-bottom: ${(0,h.Kq)(1)};
208
209    ${(0,h.H4)(f.LO.lg)} {
210      margin-top: ${(0,h.Kq)(3)};
211      margin-bottom: ${(0,h.Kq)(2)};
212    }
213  }
214`;var S=i(57886),U=i(40381),x=i(14307);const N=3e3,$=({commentId:e,configuredComponentRef:t,contentId:i,contentTitle:o="",documentType:a="",username:l,revisionId:s,commentingUrl:d,closeReply:c,reviewModalProps:g,showMessageBannerHandler:h,storyURL:b,source:y,isFeatured:f,shouldEnableRepliesImageUpload:R,shouldTruncateComments:w})=>{const{formatMessage:$}=(0,r.A)(),[B,H]=(0,n.useState)(!0),[_,P]=(0,n.useState)(0),[D,q]=(0,n.useState)(!1),[K,O]=(0,n.useState)(!1),[F,V]=(0,n.useState)(null),j=(0,n.useRef)(null),[Y,G]=(0,n.useState)(!1),W=e=>{const t={type:"discard",label:"YES, DISCARD IT",subject:y,...(0,m.i3)(f)};e.preventDefault(),c(),(0,x.Uw)(t,{skipDuplicateEvent:!1})};return n.createElement(A,{ref:t},n.createElement(M,null,n.createElement(E,null,$(u.ReviewReplyLabel)),n.createElement(C,null,l)),n.createElement(L,{name:"reviewReplyNoteText",formName:"reviewReplyNoteText",placeholder:$(u.ReplyFieldPlaceHolder),hasAutoFocus:!0,onInputChange:e=>{const t=e.target.value;P(t.length),e.target.value=t,H(0===t.trim().length),q(!1)},customHeightMultiplier:10,label:$(u.ReplyTextFieldLabel),hideLabel:!0,errorPosition:"belowTextField",errorText:D?$(u.ReviewFieldMinLimitErrorText):w?"":_>2900&&_<N?$(u.ReviewFieldAlertLimitErrorText).replace("_CHARACTER_LIMIT_CURRENT_",N-_).replace("_CHARACTER_LIMIT_",N):_===N?$(u.ReviewFieldMaxLimitErrorText).replace("_CHARACTER_LIMIT_",N):"",inputRef:j,max:w?1/0:N,charCountHandler:e=>{P(e)},shouldDisableTypingAtMaxChar:!w}),R&&n.createElement(I,null,n.createElement(U.A,{onFileChange:e=>{e?.data?.[0]?.filePath&&V({id:e.data[0].filePath,url:e.data[0].encodedURI})},onUploadStatusChange:e=>{O(e)},id:"review-reply-image-upload",product:"commenting"})),n.createElement(S.A,{modalProps:g,confirmButtonCallback:e=>W(e),onClose:()=>G(!1),isVisible:Y}),n.createElement(k,null,n.createElement(T,{inputKind:"submit",isDisabled:B||K,label:$(u.ReplyButtonLabel),onClickHandler:async t=>{let n;t.preventDefault();const r=j.current?.value?.trim();if(r.length<2)q(!0),H(!0);else if(r.length>0){const t={storyID:i,parentID:e,parentRevisionID:s,body:r,...F&&{images:[F]},clientMutationId:"0"};try{b||await(0,p.u2)({id:i,title:o,documentType:a,url:window.location.origin+window.location.pathname,commentingUrl:d,logger:console});await(0,p.Oe)(d,t)?(c(),h($(u.AddReplySuccessToastMessage))):h($(u.AddReplyFailedToastMessage))}catch(e){n=e?.message||"",h($(u.AddReplyFailedToastMessage))}const l={type:"submit",label:"Reply",subject:"community_reply",error:n,...(0,m.i3)(f)};(0,x.Uw)(l,{skipDuplicateEvent:!1})}}}),n.createElement(v,{btnStyle:"text",label:$(u.CancelButtonLabel),onClickHandler:e=>{j.current&&j.current.value.trim().length>0?G(!0):W(e),j.current.focus()}})))};$.propTypes={configuredComponentRef:a().func,closeReply:a().func,commentId:a().string,commentingUrl:a().string,contentId:a().string,contentTitle:a().string,documentType:a().string,isFeatured:a().bool,reviewModalProps:a().object,revisionId:a().string,
214shouldEnableRepliesImageUpload:a().bool,shouldTruncateComments:a().bool,showMessageBannerHandler:a().func,source:a().string,storyURL:a().string,username:a().string};const B=$;var H=i(26576),_=i(89957);const P=(e={},t=!1)=>{{const i={type:t?"attempt":"like",subject:"community_reply",...e};t&&(i.label="vote"),(0,x.Uw)(i,{skipDuplicateEvent:!1})}};var D=i(74657),q=i(53788),K=i(20656),O=i(24300),F=i(85554),V=i(22509),j=i(61057),Y=i(39311),G=i(91470),W=i(24695),z=i(16631),J=i(94373),X=i(87106);const Q=(0,c.YK)({repliesMarketRestrictedTooltip:{id:"ReviewReplyCta.RepliesMarketRestrictedTooltip",defaultMessage:"Reply is disabled for this region",description:"Tooltip shown when replies are market restricted"}}),Z=({id:e,enableRepliesMarketRestriction:t,repliesMarketRestrictedTitle:i,shouldEnableReply:o,onReplyClick:a,label:l,restrictedReplyTooltipId:s,tooltipRef:d,toggleRestrictedReplyTooltipForId:c})=>{const{formatMessage:u}=(0,r.A)();if(!o&&!t)return null;const p=t&&s===e;return n.createElement(X.Jg,{ref:p?d:null},n.createElement(X.Ei,{disabled:t,onClick:i=>{t?c(e):a&&a(i)}},n.createElement(W.Comment,null),n.createElement(X.Xu,{disabled:t},l)),n.createElement(J.A,{className:"alert__tooltip",arrowPosition:6,gaIdentifier:"reply-market-restriction-tooltip",isVisible:p,isTooltip:!0,shouldUseArrow:!0},n.createElement(X.QA,null,i||u(Q.repliesMarketRestrictedTooltip))))};Z.propTypes={id:a().string.isRequired,enableRepliesMarketRestriction:a().bool,repliesMarketRestrictedTitle:a().string,shouldEnableReply:a().bool,onReplyClick:a().func,label:a().string.isRequired,restrictedReplyTooltipId:a().string,tooltipRef:a().oneOfType([a().func,a().shape({current:a().any})]),toggleRestrictedReplyTooltipForId:a().func.isRequired,closeRestrictedReplyTooltip:a().func.isRequired};const ee=Z,te=(0,g.Ay)(y.vm).withConfig({displayName:"ReplyUserName"})`
215  ${({theme:e})=>(0,h._o)(e,"color","colors.interactive.base.dark")};
216  ${({theme:e})=>(0,h.Gg)(e,"typography.definitions.globalEditorial.accreditation-feature")};
217`,ie=(0,g.Ay)(z.sJ).withConfig({displayName:"ReplyDataInfo"})`
218  &:first-child {
219    margin-bottom: ${(0,h.Kq)(1)};
220  }
221
222  .icon-p4k-upvote,
223  .icon-p4k-upvote-filled {
224    margin-right: ${(0,h.Kq)(.5)};
225    cursor: pointer;
226    width: auto;
227    height: auto;
228
229    &:hover path[fill='#757575'] {
230      ${({theme:e})=>(0,h._o)(e,"fill","colors.interactive.base.brand-secondary")};
231    }
232  }
233`,oe=(0,g.Ay)(z.Wx).withConfig({displayName:"ReplierUserName"})``,ae=g.Ay.div.withConfig({displayName:"ReplyMetaData"})`
234  display: flex;
235  flex-direction: row;
236  align-items: center;
237  margin-bottom: ${(0,h.Kq)(.5)};
238`,ne=g.Ay.div.withConfig({displayName:"ReplyCommentsListWrapper"})`
239  margin-top: ${(0,h.Kq)(1.25)};
240  margin-left: ${(0,h.Kq)(6)};
241  ${(0,h.H4)(f.LO.md)} {
242    margin-left: ${(0,h.Kq)(8)};
243  }
244`,re=g.Ay.div.withConfig({displayName:"ReplyCommentItem"})`
245  margin-top: ${(0,h.Kq)(4)};
246
247  &:first-child {
248    margin-top: ${(0,h.Kq)(2)};
249  }
250  ${z.iA} {
251    grid-template-columns: repeat(4, max-content);
252    column-gap: ${(0,h.Kq)(.75)};
253  }
254
255  .icon-dots {
256    width: 12px;
257    height: 12px;
258
259    ${({theme:e})=>(0,h._o)(e,"fill","colors.interactive.base.dark")};
260
261    ${(0,h.L7)(f.LO.md)} {
262      padding-right: ${(0,h.Kq)(.5)};
263      padding-left: ${(0,h.Kq)(.5)};
264    }
265  }
266`,le=(0,g.Ay)(z.vX).withConfig({displayName:"ReplyLikeCount"})``,se=(0,g.Ay)(z.Pu).withConfig({displayName:"ReplyTimeStamp"})`
267  ${({theme:e})=>(0,h.Gg)(e,"typography.definitions.foundation.meta-secondary")}
268`,de=(0,g.Ay)(X.Xu).withConfig({displayName:"ReplyInfoLabel"})`
269  ${({theme:e})=>(0,h.Gg)(e,"typography.definitions.foundation.meta-secondary")};
270`,ce=(0,g.Ay)(z.iT).withConfig({displayName:"ReplyText"})``,ue=(0,g.Ay)(z.ow).withConfig({displayName:"ReplyImage"})`
271  margin-top: ${(0,h.Kq)(1)};
272`,pe=(0,g.Ay)(z.o).withConfig({displayName:"ReplyReactionButton"})``,me=g.Ay.div.withConfig({displayName:"ShowOrHideRepliesLabel"})`
273  display: flex;
274  flex-direction: row;
275  cursor: pointer;
276
277  ${({theme:e})=>(0,h.Gg)(e,"typography.definitions.foundation.link-secondary")};
278
279  ${({theme:e})=>(0,h._o)(e,"color","colors.interactive.base.dark")};
280`,ge=g.Ay.hr.withConfig({displayName:"ShowOrHideRepliesLabelRule"})`
281  ${({theme:e})=>(0,h._o)(e,"color","colors.discovery.body.dark.divider")};
282  align-self: center;
283  margin-right: ${(0,h.Kq)(1)};
284  width: ${(0,h.Kq)(4)};
285`;var he=i(30630),be=i(86504);const ye=(0,c.YK)({ReviewReplyLabel:{id:"ReviewReplyComment.ReviewReplyLabel",defaultMessage:"Replying to",de
285scription:"The label for the reply comment field"},ShowMoreRepliesLabel:{id:"ReviewReplyComment.ShowMoreRepliesLabel",defaultMessage:"Show more replies",description:"The label to show more replies"},ReviewReplyCommentLabel:{id:"ReviewReplyComment.ReviewReplyCommentLabel",defaultMessage:"Reply",description:"The label to show reply icon"},HideRepliesLabel:{id:"ReviewReplyComment.HideRepliesLabel",defaultMessage:"Hide replies",description:"The label to hide replies"},LoadingRepliesLabel:{id:"ReviewReplyComment.LoadingRepliesLabel",defaultMessage:"Loading…",description:"The label to hide replies"},upvoteLabel:{id:"ReviewReplyComment.upvoteLabel",defaultMessage:"Upvote",description:"Label for upvote button"}});var fe=i(90637),Re=i(48286);const{oidcCookies:we}=q.A,Ce=({commentingUrl:e,configuredComponentRef:t,contentId:i,documentType:o,replies:a,replyPageInfo:l,repliesOrderBy:s,username:d,reviewerBadges:c,reviewModalProps:u,commentReactionHandler:g,user:h={},signInHed:b,usernameSignInDek:y,signInHedSpanTag:f,signInMessage:R,commentId:w,replyLimit:C,shouldUsePrimaryColorForBadges:A,showMessageBannerHandler:v,userReactions:L,useVoteLabels:E=!1,updateUserReactions:M,siteUserName:T,handleUsernameChange:k,shouldEnableReply:I,shouldEnableUpvotes:S,isFeatured:U,spectraUrl:N,shouldEnableRepliesImageUpload:$,enableRepliesMarketRestriction:_,repliesMarketRestrictedTitle:D,upvoteIcon:q,upvoteIconFilled:J,showUpvoteLabel:X,shouldShowLocation:Q,shouldTruncateComments:Z,truncateLines:Ce,isSubscribed:Ae=!0,subscriptionUrl:ve="/subscribe",modalConfig:Le,isReadOnly:Ee,hideActions:Me=!1})=>{const{formatMessage:Te}=(0,r.A)(),[ke,Ie]=(0,n.useState)(null),[Se,Ue]=(0,n.useState)(!1),[xe,Ne]=(0,n.useState)([]),[$e,Be]=(0,n.useState)(!1),{activeId:He,tooltipRef:_e,toggleForId:Pe,close:De}=(0,F.Ew)(),qe=q&&(0,H.Rg)(q)||W.Like,Ke=J&&(0,H.Rg)(J)||W.LikeFilled,[Oe,Fe]=(0,n.useState)(l.hasNextPage??!1),[Ve,je]=(0,n.useState)(l.hasNextPage?Te(ye.ShowMoreRepliesLabel):""),[Ye,Ge]=(0,n.useState)(!1),[We,ze]=(0,n.useState)(!1),[Je,Xe]=(0,n.useState)(l.endCursor),[Qe,Ze]=(0,n.useState)(l.hasNextPage??!1),[et,tt]=(0,n.useState)([]),it="community_reply",ot=e=>{if(Ee)return;const t="COMMUNITY_LIKE_CLICK_REPLY",i={type:"login",source_type:t,...(0,m.i3)(U)},o=(0,m.i3)(U),a=(0,m.An)(U);P(o,E);const n={action:O.O,commentId:e.commentId,commentRevisionId:e.revisionId,featured:a,source:t},r=(0,F.$D)({href:window.location.href,hashValue:F.M$.LIKE_REPLY,queryParams:n});if((0,be.r)(Ae,ve))return void(0,be.p)({subscriptionUrl:ve,modalConfig:Le,redirectURL:r,action:F.M$.LIKE_REPLY});if(!h.isAuthenticated)return void(0,V.Rf)({dangerousDek:R,dangerousHed:b,dangerousHedSpanTag:f,redirectURL:r,shouldHideIllustration:!0,snowplowData:i,source:t});const l=L[e.commentId]?.viewerActionPresence,s={items:[{content_id:e.commentId}],...(0,m.i3)(U)};l?((e={},t=!1)=>{{const i={type:t?"discard":"unlike",subject:"community_reply",...e};t&&(i.label="discard vote"),(0,x.Uw)(i,{skipDuplicateEvent:!1})}})(s,E):P(s,E),g({item:e})};(0,n.useEffect)(()=>{Ye?je(Te(ye.LoadingRepliesLabel)):Oe&&je(Te(ye.ShowMoreRepliesLabel))},[Ye,Oe,Te]);const at=t=>{const a=((e,t,i)=>e?e.map(e=>{const{id:o,author:{orgRole:a}={},body:n,createdAt:r,siteUsername:l,parent:s,actionCounts:d,viewerActionPresence:c,revision:u,story:p,images:m=[]}=e;return{role:a,replyId:o,replyText:n,replyDate:(0,Y.BD)(r,t),replyAuthorName:l?.[0]?.name,replyAuthorLocation:l?.[0]?.location,parentAuthorName:(()=>{let e=i;return"Anonymous"===i?e=i:s?.siteUsername?.[0]?.name&&(e=s?.siteUsername?.[0]?.name),e})(),reactionCount:d?.reaction?.total||0,viewerActionPresence:c,revisionId:u?.id,storyURL:p?.url,images:m,coralBadges:l?.[0]?.badges||[],reviewerCreatedAt:l?.[0]?.createdAt}}):[])(t,Te,d);return a.map(t=>{const{role:a,replyId:r,replyAuthorName:l,replyAuthorLocation:s,replyDate:d,replyText:p,parentAuthorName:g,revisionId:w,storyURL:C,images:E,coralBadges:M=[],reviewerCreatedAt:P}=t||{},q={commentId:r,revisionId:w},{badgeValue:K,dateBadges:O,userSpecificBadges:Y}=(0,H.D4)({role:a,coralBadges:M,reviewerCreatedAt:P,reviewerBadges:c});return n.createElement(re,{key:r,"data-testid":"reply-comment-item"},n.createElement(z.iA,{badgeValue:K},l&&n.createElement(oe,null,l),K&&n.createElement(he.A,{badgeText:K,shouldUsePrimaryColorForBadges:A}),Q&&s&&n.createElement(n.Fragment,null,n.createElement(G.Dot,null),n.createElement(z.d0,null,(0,fe.J)(s)))),0===O.length||Y.length>0?null:O.map((e,t)=>{const i=(0,H.BM)(e);return i?n.createElement(z.Ig,{key:`coral-badge-${t}`},n.createElement(he.A,{badgeText:i,shouldUsePrimaryColorForBadges:A})):null}),n.createElement(ie,null,n.createElement(ae,null,n.createElement(de,null,Te(ye.ReviewReplyLabel)),g&&n.createElement(te,null,g)),n.createElement(ae,null,n.createElement(G.Dot,null),d&&n.createElement(se,null,d))),p&&(Z?n.createElement(Re.A,{lines:Ce,isCollapsible:!0,isLeftAlign:!0,linesInExtraLargeDesktop:Ce},n.createElement("span",{dangerouslySetInnerHTML:{__html:p}})):n.createElement(ce,{dangerouslySetInnerHTML:{__html:p}})),$&&E.map((e,t)=>n.createElement(ue,{key:t,src:(0,H.s_)(e?.url,N),"data-testid":"reply-image"})),!Me&&n.createElement(ie,null,S&&n.createElement(n.Fragment,null,n.createElement(pe,{isIconButton:!0,name:"reply-reaction",label:"Reaction",onClickHandler:()=>ot(q),ButtonIcon:L[r]?.viewerActionPresence?Ke:qe}),n.createElement(le,null,L[r]?.reactionCount&&L[r]?.reactionCount||X&&Te(ye.upvoteLabel))),n.createElement(ee,{id:r,enableRepliesMarketRestriction:_,repliesMarketRestrictedTitle:D,shouldEnableReply:I,onReplyClick:e=>((e,t)=>{if(e.preventDefault(),Ee)return;const i="COMMUNITY_REPLY_TO_REPLY",o={subject:it,label:"Reply",source_type:i,type:"login",...(0,m.i3)(U)},a=(0,m.An)(U),n=(0,F.$D)({href:window.location.href,hash:F.M$.REPLY_TO_REPLY,queryParams:{featured:a,source:i}});if((0,be.r)(Ae,ve))return void(0,be.p)({subscriptionUrl:ve,modalConfig:Le,redirectURL:n,action:F.M$.REPLY_TO_REPLY});if(h.isAuthenticated)if(T)Ie(t?.replyAuthorName),Ne(e=>[...e,t?.replyId]),Ue(!0);else{(0,j.Rf)({dangerousDek:y,successCallback:e=>{k(e),Ie(t?.replyAuthorName),Ne(e=>[...e,t?.replyId]),Ue(!0)},source:it,isFeatured:U});const e={type:"impression",subject:"username_modal",label:"Create Username",source_type:it,...(0,m.i3)(U)};(0,x.lV)(e)}else(0,V.Rf)({dangerousDek:R,dangerousHed:b,dangerousHedSpanTag:f,redirectURL:n,shouldHideIllustration:!0,source:i,snowplowData:o});const r={type:"attempt",subject:it,label:"reply",items:[{content_id:t?.replyId}],...(0,m.i3)(U)};(0,x.Uw)(r,{skipDuplicateEvent:!1})})(e,t),label:Te(ye.ReviewReplyCommentLabel),restrictedReplyTooltipId:He,tooltipRef:_e,toggleRestrictedReplyTooltipForId:Pe,closeRestrictedReplyTooltip:De})),Se&&xe.includes(r)&&h.isAuthenticated&&T&&n.createElement(B,{commentId:r,username:ke,contentId:i,revisionId:w,commentingUrl:e,closeReply:()=>{Ue(!1)},reviewModalProps:u,showMessageBannerHandler:v,source:"community_reply",documentType:o,storyURL:C,isFeatured:U,shouldEnableRepliesImageUpload:$,shouldTruncateComments:Z}))})};return n.createElement(ne,{ref:t,"data-testid":"reply-comments-list-wrapper"},at(a),!We&&at(et),n.createElement(ie,null,Oe&&n.createElement(me,{onClick:async()=>{let t;if(ze(!1),et.length>=1&&!Qe)tt([...et]),Be(!0),Fe(!1);else{Ge(!0);const i=Je??l.endCursor;try{const t=K.d.getCookieValue(we.id),{replies:o,page:{endCursor:a,hasNextPage:n}}=await(0,p.WE)({commentId:w,after:i,commentingUrl:e,logger:console,accessToken:t,replyLimit:C,repliesOrderBy:s});Xe(a),Ze(n),n||Be(!0),Fe(n),tt([...et,...o]),M(o)}catch(e){t=e?.message||""}Ge(!1)}const i={type:"show_more",label:"Show more replies",subject:it,error:t,...(0,m.i3)(U)};(0,x.Uw)(i,{skipDuplicateEvent:!1})},"data-testid":"show-more-replies-button"},n.createElement(ge,null),Ve),$e&&n.createElement(me,{onClick:()=>{Be(!1),ze(!0),Fe(!0)},"data-testid":"hide-replies-button"},n.createElement(ge,null),Te(ye.HideRepliesLabel))))};
285Ce.propTypes={configuredComponentRef:a().func,commentId:a().string,commentingUrl:a().string.isRequired,commentReactionHandler:a().func,contentId:a().string,documentType:a().string,coralBadges:a().arrayOf(a().shape({badge:a().string.isRequired,startDate:a().string,endDate:a().string,isUserSpecific:a().bool})),enableRepliesMarketRestriction:a().bool,hideActions:a().bool,isReadOnly:a().bool,repliesMarketRestrictedTitle:a().string,handleUsernameChange:a().func,isFeatured:a().bool,replies:a().array,repliesOrderBy:a().string,replyLimit:a().number,replyPageInfo:a().object,reviewerBadges:a().arrayOf(a().shape({role:a().string,badge:a().string})),reviewModalProps:a().object,shouldEnableRepliesImageUpload:a().bool,shouldEnableReply:a().bool,shouldEnableUpvotes:a().bool,shouldTruncateComments:a().bool,shouldUseAlternateColorToken:a().bool,shouldUsePrimaryColorForBadges:a().bool,shouldShowLocation:a().bool,showMessageBannerHandler:a().func,showUpvoteLabel:a().bool,signInHed:a().string,signInHedSpanTag:a().string,signInMessage:a().string,siteUserName:a().string,spectraUrl:a().string,truncateLines:a().number,updateUserReactions:a().func,upvoteIcon:a().string,upvoteIconFilled:a().string,useVoteLabels:a().bool,user:a().shape({isAuthenticated:a().bool.isRequired,amguuid:a().string}).isRequired,username:a().string,usernameSignInDek:a().string,userReactions:a().shape({reactionCount:a().number.isRequired,viewerActionPresence:a().bool}).isRequired,isSubscribed:a().bool,subscriptionUrl:a().string,modalConfig:a().object};var Ae=i(27517),ve=i(45135),Le=i(69657),Ee=i(73275),Me=i(30093);const Te=(0,g.Ay)(X.Xu).withConfig({displayName:"ReviewShareLabel"})`
286  padding-right: 0;
287`,ke=(0,g.Ay)(X.Ei).withConfig({displayName:"MobileShareButton"})`
288  display: none;
289
290  ${(0,h.L7)(f.LO.md)} {
291    display: inline-flex;
292    align-items: center;
293    column-gap: ${(0,h.Kq)(.5)};
294    padding-left: ${(0,h.Kq)(2)};
295    min-width: auto;
296    height: ${(0,h.Kq)(4)};
297
298    &:focus-visible {
299      outline: 2px solid
300        ${({theme:e})=>(0,h.HK)(e,"colors.interactive.base.black")};
301      outline-offset: 2px;
302    }
303
304    svg {
305      width: ${(0,h.Kq)(3)};
306      height: ${(0,h.Kq)(3)};
307    }
308
309    svg path {
310      ${({theme:e})=>(0,h._o)(e,"fill","colors.interactive.base.dark")};
311    }
312
313    &:hover {
314      ${Te} {
315        ${({theme:e})=>(0,h._o)(e,"color","colors.interactive.base.black")};
316      }
317
318      svg path {
319        ${({theme:e})=>(0,h._o)(e,"fill","colors.interactive.base.black")};
320      }
321    }
322  }
323`,Ie=(0,c.YK)({buttonLabel:{id:"ReviewShareTrigger.ButtonLabel",defaultMessage:"Share review",description:"Accessible label for the button that opens review sharing"},buttonDisplayLabel:{id:"ReviewShareTrigger.ButtonDisplayLabel",defaultMessage:"Share",description:"Visible label for the button that opens review sharing"},ratingLabel:{id:"ReviewShareTrigger.RatingLabel",defaultMessage:"My rating",description:"Label displayed beneath the rating in a shared review image"}}),Se=n.lazy(()=>Promise.all([i.e(4786),i.e(6677)]).then(i.bind(i,56677))),Ue=e=>{if(e?.canvasUrl)return e.canvasUrl;const t=(0,Me.V4)(e);return!t||t.startsWith("/")?t:`/api/review-share/image-proxy?url=${encodeURIComponent(t)}`},xe=({handle:e,name:t,profileImage:i,rating:o,username:a})=>{const{formatMessage:l}=(0,r.A)(),s=(0,ve.d4)(e=>e.invertedLogo),d=(0,ve.d4)(e=>e.brandName),[c,u]=n.useState(!1),p=l(Ie.buttonLabel),m=l(Ie.buttonDisplayLabel),g=e=>{e?.preventDefault(),e?.stopPropagation(),u(!0)},h=n.useMemo(()=>({handle:e,logo:s,name:t,profileImage:{...i,canvasUrl:Ue(i)},rating:o,ratingLabel:l(Ie.ratingLabel),username:a.startsWith("@")?a:`@${a}`}),[s,l,e,t,i,o,a]);return s&&d?n.createElement(n.Fragment,null,n.createElement(ke,{"aria-label":p,"data-testid":"ReviewShareTrigger",onClick:g,onKeyDown:e=>{"Enter"!==e.key&&" "!==e.key||g(e)},role:"button",tabIndex:0},n.createElement(Le.A,null),n.createElement(Te,null,m)),c&&n.createElement(n.Suspense,{fallback:null},n.createElement(Se,{asset:h,brandName:d,isVisible:!0,onClose:()=>u(!1)}))):null};xe.propTypes={handle:a().string.isRequired,name:a().string.isRequired,profileImage:a().shape(Ee.A.propTypes).isRequired,rating:a().oneOfType([a().number,a().string]).isRequired,username:a().string.isRequired};const Ne=xe,$e=({className:e,commentingUrl:t,commentReactionHandler:i,contentTitle:o,documentType:a,handleShowMore:c,handleUsernameChange:u,hasErrored:p=!1,shouldEnableCommentsImageUpload:g,shouldEnableRepliesImageUpload:h,hasNextPage:b=!1,id:y,isLoading:f=!1,items:R,replyLimit:w,reviewerBadges:C,repliesOrderBy:A,reviewModalProps:v,reviewShareAsset:L,shouldEnableRatings:E,shouldEnableReply:M,shouldEnableTags:T=!1,shouldEnableUpvotes:k,shouldUseAlternateColorToken:I,shouldUsePrimaryColorForBadges:S,shouldUseTagsInvertedTheme:U,shouldShowCircularRatings:N,shouldUseFullOpacity:$,ratingPlacement:P="ReviewMetaGrid",shouldShowLocation:q,showMessageBannerHandler:K,showUpvoteLabel:O,showMoreButtonLabel:Y,signInHed:J,signInHedSpanTag:X,signInMessage:Q,siteUserName:Z,updateUserReactions:te,upvoteIcon:ie,upvoteIconFilled:oe,useVoteLabels:ae=!1,user:ne,usernameSignInDek:re,userReactions:le,spectraUrl:se,enableRepliesMarketRestriction:de,repliesMarketRestrictedTooltip:ce,shouldTruncateComments:ue,truncateLines:pe,isSubscribed:me,subscriptionUrl:ge,modalConfig:ye,totalReplyCount:we,showReplyCount:ve=!1,shouldShowZeroCount:Le=!1,isReadOnly:Ee=!1,hideActions:Me=!1,showDivider:Te=!1})=>{n.useEffect(()=>{window.Kendra.TRACK_COMPONENT.broadcast(l.G.RENDER,{name:"ReviewList"})},[]);
323const[ke,Ie]=(0,n.useState)({}),[Se,Ue]=(0,n.useState)([]),{activeId:xe,tooltipRef:$e,toggleForId:Be,close:He}=(0,F.Ew)(),{formatMessage:_e}=(0,r.A)(),Pe=de?ce:null,De="ReviewListButton",qe=ie&&(0,H.Rg)(ie)||W.Like,Ke=oe&&(0,H.Rg)(oe)||W.LikeFilled,Oe=(0,n.useCallback)((e,t)=>{if(Ee)return;const i="COMMUNITY_REPLY_TO_COMMENT",o=(0,m.An)(t),a=new URL(window.location);a.hash=F.M$.LEAVE_REPLY,a.searchParams.set("featured",o),a.searchParams.set("source",i);const n={subject:"community_comment",label:"Reply",source_type:i,type:"login",...(0,m.i3)(t)};if((0,be.r)(me,ge))return void(0,be.p)({subscriptionUrl:ge,modalConfig:ye,redirectURL:a.href,action:F.M$.LEAVE_REPLY});if(ne?.isAuthenticated){if(Z)Ue(t=>[...t,e]),Ie(t=>({...t,[e]:!0}));else if(void 0!==Z){j.Rf({dangerousDek:re,successCallback:t=>{u(t),Ue(t=>[...t,e]),Ie(t=>({...t,[e]:!0}))},source:"community_reply",isFeatured:t});const i={type:"impression",subject:"username_modal",label:"Create Username",source_type:"community_reply",...(0,m.i3)(t)};(0,x.lV)(i)}}else V.Rf({dangerousDek:Q,dangerousHed:J,dangerousHedSpanTag:X,redirectURL:a.href,shouldHideIllustration:!0,source:i,snowplowData:n});const r={type:"attempt",subject:"community_comment",label:"reply",items:[{content_id:e}],...(0,m.i3)(t)};(0,x.Uw)(r,{skipDuplicateEvent:!1})},[Z,me,ge]),Fe=({item:e})=>
323{if(Ee)return;const t=le[e.commentId]?.viewerActionPresence,o=(0,m.i3)(e.isFeatured);t?((e={},t=!1)=>{{const i={type:t?"discard":"unlike",subject:"community_comment",...e};t&&(i.label="discard vote"),(0,x.Uw)(i,{skipDuplicateEvent:!1})}})(o,ae):((e={},t=!1)=>{{const i={type:t?"attempt":"like",subject:"community_comment",...e};t&&(i.label="vote"),(0,x.Uw)(i,{skipDuplicateEvent:!1})}})(o,ae),i({item:e})},Ve=Y??_e(D.A.showMoreButtonLabel);(0,_.ol)(`.${De}`,void 0,e=>{e&&(e=>{const t={type:"impression",label:e,subject:"community"};(0,x.Uw)(t)})(Ve)});return n.createElement(z.Yl,{className:e,id:y,tabIndex:"-1"},!!R?.length&&n.createElement(z.RF,null,R.map(e=>{const{id:r,commentId:l,text:c,username:p,date:m,rating:b,replies:y,replyPageInfo:f,recipeId:R,revisionId:x,role:_,tags:F,storyURL:V,images:j=[],isFeatured:Y,isReviewOwnedByViewer:W=!1,coralBadges:ce=[],reviewerCreatedAt:be}=e||{},Ue=null!=b,De=Boolean(L?.name&&L?.handle&&L?.profileImage&&Ue&&p&&W),Ve=le[l]||{},{viewerActionPresence:je=!1,reactionCount:Ye=0}=Ve,Ge="__RATING_ONLY_COMMENT_PLACEHOLDER__"===e.text,We=T&&!!F?.length,{badgeValue:ze,dateBadges:Je,userSpecificBadges:Xe}=(0,H.D4)({role:_,coralBadges:ce,reviewerCreatedAt:be,reviewerBadges:C}),Qe=E&&Ue&&(N?n.createElement(d.A,{rating:b}):n.createElement(z.Xt,{as:"div"},n.createElement(s.A,{averageRatingCount:b})));return n.createElement(z.an,{key:[r,c,p,m].join("-"),shouldUseFullOpacity:$,isRatingOnlyComment:Ge,shouldUseTagsInvertedTheme:U},n.createElement(z.iA,{badgeValue:ze},n.createElement(z.eI,{badgeValue:ze},p&&n.createElement(z.Wx,null,p),ze&&n.createElement(he.A,{badgeText:ze,shouldUsePrimaryColorForBadges:S}),0===Je.length||Xe.length>0?null:Je.map((e,t)=>{const i=(0,H.BM)(e);return i?n.createElement(z.Ig,{key:`coral-badge-${t}`},n.createElement(he.A,{badgeText:i,shouldUsePrimaryColorForBadges:S})):null})),"ReviewMetaGrid"===P&&Qe),n.createElement(z.sJ,{applyRowGap:!0},n.createElement(z.R9,null,"ReviewListMetaInfo"===P&&n.createElement(n.Fragment,null,Qe)),n.createElement(z.R9,null,We&&n.createElement(n.Fragment,null,"ReviewListMetaInfo"===P&&Qe&&n.createElement(G.Dot,null),F.map(e=>n.createElement(Ae.A,{key:e},e)))),n.createElement(z.R9,null,n.createElement(G.Dot,null),n.createElement(z.Pu,null,m)),n.createElement(z.R9,null,q&&e.location&&n.createElement(n.Fragment,null,n.createElement(G.Dot,null),n.createElement(z.d0,null,(0,fe.J)(e.location))))),n.createElement(z.sJ,null,c&&!Ge&&(ue?n.createElement(Re.A,{lines:pe,isCollapsible:!0,isLeftAlign:!0,linesInExtraLargeDesktop:pe},n.createElement("span",{dangerouslySetInnerHTML:{__html:c}})):n.createElement(z.iT,{dangerouslySetInnerHTML:{__html:c}}))),n.createElement(z.sJ,null,g&&j.map((e,t)=>n.createElement(z.ow,{key:t,src:(0,H.s_)(e?.url,se)}))),Te&&n.createElement(z.Es,null),n.createElement(z.sJ,null,k&&n.createElement(z.o,{isIconButton:!0,name:"comment-reaction",label:"Reaction",onClickHandler:()=>Fe({item:e}),ButtonIcon:je?Ke:qe}),k&&n.createElement(z.vX,null,(Le||Ye>0)&&n.createElement(n.Fragment,null,Ye??0)||O&&_e(D.A.upvoteLabel)),n.createElement(ee,{id:l,enableRepliesMarketRestriction:de,repliesMarketRestrictedTitle:Pe,shouldEnableReply:M,onReplyClick:()=>Oe(l,Y),label:(Ze=we??0,ve?0===Ze?"0":1===Ze?`${Ze} ${_e(D.A.reviewReplyCountSingular)}`:`${Ze} ${_e(D.A.reviewReplyCountPlural)}`:_e(D.A.reviewReplyLabel)),restrictedReplyTooltipId:xe,tooltipRef:$e,toggleRestrictedReplyTooltipForId:Be,closeRestrictedReplyTooltip:He}),De&&n.createElement(Ne,{...L,rating:b,username:p})),ke[l]&&Se.includes(l)&&ne?.isAuthenticated&&n.createElement(B,{commentId:l,username:p,contentId:R,revisionId:x,commentingUrl:t,closeReply:()=>(e=>{Ie(t=>({...t,[e]:!1}))})(l),reviewModalProps:v,showMessageBannerHandler:K,source:"community_comment",contentTitle:o,documentType:a,storyURL:V,isFeatured:Y,shouldEnableRepliesImageUpload:h,shouldTruncateComments:ue}),y&&y.length>0&&n.createElement(Ce,{shouldUseAlternateColorToken:I,shouldUsePrimaryColorForBadges:S,useVoteLabels:ae,reviewerBadges:C,username:p,replies:y,replyPageInfo:f,reviewModalProps:v,repliesOrderBy:A,commentReactionHandler:i,user:ne,userReactions:le,updateUserReactions:te,usernameSignInDek:re,signInHed:J,signInHedSpanTag:X,signInMessage:Q,shouldEnableReply:M,commentId:l,replyLimit:w,siteUserName:Z,handleUsernameChange:u,contentId:R,documentType:a,isSubscribed:me,subscriptionUrl:ge,showMessageBannerHandler:K,commentingUrl:t,shouldEnableUpvotes:k,isFeatured:Y,shouldEnableRepliesImageUpload:h,spectraUrl:se,upvoteIcon:ie,upvoteIconFilled:oe,showU
323pvoteLabel:O,shouldShowLocation:q,enableRepliesMarketRestriction:de,repliesMarketRestrictedTitle:Pe,shouldTruncateComments:ue,truncateLines:pe,modalConfig:ye,isReadOnly:Ee,hideActions:Me}));var Ze})),!p&&b&&n.createElement(z.TD,{className:De,inputKind:"button",onClickHandler:()=>{c(),(e=>{{const t={type:"click",label:e,subject:"community"};(0,x.Uw)(t,{skipDuplicateEvent:!1})}})(Ve)},label:f?_e(D.A.loading):Ve,isDisabled:f}),p?n.createElement(z.By,null,_e(D.A.reviewListError,{br:n.createElement("br",null)})):null)};$e.propTypes={className:a().string,commentingUrl:a().string.isRequired,commentReactionHandler:a().func,contentTitle:a().string,documentType:a().string,handleShowMore:a().func,handleUsernameChange:a().func,hasErrored:a().bool,hasNextPage:a().bool,hideActions:a().bool,id:a().string,isLoading:a().bool,isReadOnly:a().bool,items:a().arrayOf(a().shape({id:a().number,text:a().string,username:a().string,date:a().string,revisionId:a().string.isRequired,commentId:a().string.isRequired,viewerActionPresence:a().bool,reactionCount:a().number,isFeatured:a().bool,isReviewOwnedByViewer:a().bool,coralBadges:a().arrayOf(a().shape({badge:a().string.isRequired,startDate:a().string,endDate:a().string,isUserSpecific:a().bool})),reviewerCreatedAt:a().string})),ratingPlacement:a().oneOf(["ReviewMetaGrid","ReviewListMetaInfo"]),repliesOrderBy:a().string,replyLimit:a().number,reviewerBadges:a().arrayOf(a().shape({role:a().string,badge:a().string})),reviewModalProps:a().object,reviewShareAsset:a().shape({handle:a().string,name:a().string,profileImage:a().object,url:a().string}),shouldEnableCommentsImageUpload:a().bool,shouldEnableOptionalRating:a().bool,shouldEnableRatings:a().bool,shouldEnableRepliesImageUpload:a().bool,shouldEnableReply:a().bool,shouldEnableTags:a().bool,shouldEnableUpvotes:a().bool,showDivider:a().bool,showReplyCount:a().bool,shouldShowCircularRatings:a().bool,shouldUseAlternateColorToken:a().bool,shouldUsePrimaryColorForBadges:a().bool,shouldUseFullOpacity:a().bool,shouldUseTagsInvertedTheme:a().bool,shouldShowLocation:a().bool,shouldShowZeroCount:a().bool,shouldTruncateComments:a().bool,showMessageBannerHandler:a().func,showMoreButtonLabel:a().string,showUpvoteLabel:a().bool,signInHed:a().string,signInHedSpanTag:a().string,signInMessage:a().string,siteUserName:a().string,spectraUrl:a().string,totalReplyCount:a().number,truncateLines:a().number,updateUserReactions:a().func,upvoteIcon:a().string,upvoteIconFilled:a().string,useVoteLabels:a().bool,user:a().shape({amguuid:a().string,isAuthenticated:a().bool.isRequired}).isRequired,usernameSignInDek:a().string,enableRepliesMarketRestriction:a().bool,repliesMarketRestrictedTooltip:a().string,userReactions:a().objectOf(a().shape({viewerActionPresence:a().bool.isRequired,reactionCount:a().number.isRequired}).isRequired),isSubscribed:a().bool,subscriptionUrl:a().string,modalConfig:a().object};const Be=$e},74657(e,t,i){i.d(t,{A:()=>o});const o=(0,i(72267).YK)({loading:{id:"ReviewList.Loading",defaultMessage:"Loading…",description:"Button label while list loads"},reviewListError:{id:"ReviewList.ReviewListError",defaultMessage:"Sorry, more reviews can‘t be loaded right now. {br} Please try again later.",description:"Error message while loading list"},reviewReplyLabel:{id:"ReviewList.ReviewReplyLabel",defaultMessage:"Reply",description:"Reply Icon label"},reviewReplyCountSingular:{id:"ReviewList.ReviewReplyCountSingular",defaultMessage:"reply",description:"Reply count label for singular (1 reply)"},reviewReplyCountPlural:{id:"ReviewList.ReviewReplyCountPlural",defaultMessage:"replies",description:"Reply count label for plural (more than 1 reply)"},showMoreButtonLabel:{id:"ReviewList.showMoreButtonLabel",defaultMessage:"Read more comments",description:"Label for show more button"},pitchforkScoreLabel:{id:"ScoreComparison.PitchforkScoreLabel",defaultMessage:"Pitchfork score",description:"Label for Pitchfork score in score comparison component"},listenerScoreLabel:{id:"ScoreComparison.ListenerScoreLabel",defaultMessage:"Reader score",description:"Label for reader score in score comparison component"},upvoteLabel:{id:"ReviewList.upvoteLabel",defaultMessage:"Upvote",description:"Label for upvote button"},noListenerScoreYet:{id:"ScoreComparison.NoListenerScoreYet",defaultMessage:"* No reader score available yet.",description:"Message shown when there are no reader scores yet"},listenerScoreAvailableAfter:{id:"ScoreComparison.ListenerScoreAvailableAfter",defaultMessage:"* Reader score available once {count} listeners submit.",description:"Message shown when minimum reader score threshold is not met"},subscribeToSee:{id:"ScoreComparison.subscribeToSee",defaultMessage:"{subscribe} to see all scores",description:"Message shown when user is not subscribed, with subscribe CTA as a link"}})},26576(e,t,i){i.d(t,{BM:()=>s,D4:()=>l,Rg:()=>n,a0:()=>r,s_:()=>a});var o=i(91470);const a=(e,t)=>`${t}/eu-central-1/api/v2/optimize?format=type_jpeg&url=`+encodeURIComponent(e),n=e=>e&&o.default[e]?o.default[e]:null,r=(e,t=null)=>{let i=0;let o=null;const a=()=>
323{if(!window.jBus)return i++,void(i<=10&&(o=setTimeout(a,1e3)));o&&(clearTimeout(o),o=null),window.jBus.whenAnEventOccurs({id:"listener.score.unblurred",callback:i=>{e(!1),t&&t(!1)}}),window.jBus.whenAnEventOccurs({id:"listener.score.gated",callback:e=>{t&&t(!0)}})};return a(),()=>{o&&(clearTimeout(o),o=null)}},l=({role:e,coralBadges:t=[],reviewerCreatedAt:i,reviewerBadges:o=[]})=>{const{badge:a}=o?.find(t=>t.role===e)||{};if(!(("COMMENTER"===e||"MEMBER"===e)&&!!t?.length))return{badgeValue:a,dateBadges:[],userSpecificBadges:[],showCoralBadges:!1};const n=t.filter(e=>!0===e?.isUserSpecific);return{badgeValue:n.length>0?n[0].badge:a,dateBadges:0===n.length&&"COMMENTER"===e?t.filter(e=>{if(!0===e?.isUserSpecific)return!1;const{startDate:t,endDate:o}=e||{};if(!t||!o||!i)return!1;const a=new Date(i),n=new Date(t),r=new Date(o);return a>=n&&a<=r}):[],userSpecificBadges:n,showCoralBadges:!0}},s=e=>e?.badge||""},50317(e,t,i){i.d(t,{U:()=>a});var o=i(96540);const a=({query:e,initialValue:t=!1})=>{const i=(0,o.useCallback)(t=>{const i=window.matchMedia(e);return i.addEventListener("change",t),()=>{i.removeEventListener("change",t)}},[e]),a=(0,o.useCallback)(()=>window.matchMedia(e).matches,[e]),n=(0,o.useCallback)(()=>t,[t]);return(0,o.useSyncExternalStore)(i,a,n)}},87106(e,t,i){i.d(t,{Ei:()=>d,Jg:()=>c,QA:()=>u,Xu:()=>s});var o=i(38267),a=i(26865),n=i(96472),r=i(18608),l=i(17514);const s=(0,o.Ay)(r.vm).withConfig({displayName:"ReviewReplyLabel"})`
324  ${({theme:e,disabled:t})=>t?(0,a._o)(e,"color","colors.interactive.disabled.dark"):(0,a._o)(e,"color","colors.interactive.base.dark")};
325  ${({theme:e})=>(0,a.Gg)(e,"typography.definitions.foundation.link-secondary")};
326  opacity: ${({disabled:e})=>e?.5:1};
327  cursor: ${({disabled:e})=>e?"not-allowed":"pointer"};
328  padding-right: ${(0,a.Kq)(.5)};
329`,d=o.Ay.div.withConfig({displayName:"ReviewReplyWrapper"})`
330  display: flex;
331  flex-direction: row;
332  align-items: center;
333  opacity: ${({disabled:e})=>e?.5:1};
334  cursor: ${({disabled:e})=>e?"not-allowed":"pointer"};
335
336  svg {
337    opacity: ${({disabled:e})=>e?.5:1};
338    pointer-events: ${({disabled:e})=>e?"none":"auto"};
339  }
340`,c=o.Ay.div.withConfig({displayName:"ReviewReplyTooltipWrapper"})`
341  display: inline-block;
342  position: relative;
343  ${l.U7} {
344    margin-right: 0;
345  }
346`,u=(0,o.Ay)(r.vm).withConfig({displayName:"ReviewerTooltipText"})`
347  padding: ${(0,a.Kq)(1)};
348  ${({theme:e})=>(0,a._o)(e,"color","colors.consumption.lead.inverted.heading")};
349  ${({theme:e})=>(0,a.Gg)(e,"typography.definitions.utility.label")};
350  @media (max-width: calc(${n.LO.lg} - 1px)) {
351    width: ${(0,a.Kq)(25)};
352  }
353`},30093(e,t,i){i.d(t,{$Q:()=>a,EY:()=>o,V4:()=>r});const o=Object.freeze({width:341,height:601,card:Object.freeze({x:30,y:149,width:282,height:302,detailsHeight:249,footerHeight:45,radius:8}),details:Object.freeze({paddingTop:13,paddingX:13,paddingBottom:6}),media:Object.freeze({height:163,gap:10}),profileImage:Object.freeze({size:163}),rating:Object.freeze({offsetTop:45,size:83,innerSize:71,borderWidth:3,labelGap:8,labelLineHeight:16,labelBaseline:12}),identity:Object.freeze({marginTop:5,nameLineHeight:40,nameBaseline:31,usernameLineHeight:16,usernameBaseline:12}),footer:Object.freeze({gap:8,handleWidth:201,logoWidth:79,handleBaseline:27,x:13})}),a=Object.freeze({width:1080,height:1920}),n=["md","lg","xl","xxl","sm"],r=e=>{if(!e)return null;if(e.canvasUrl)return e.canvasUrl;for(const t of n)if(e.sources?.[t]?.url)return e.sources[t].url;return null}}}]);

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.