{"version":3,"sources":["webpack:///src/modules/business-sign-up/components/sign-up-button.tsx?37a3","webpack:///src/modules/business-sign-up/components/sign-up-error.tsx?fbb9","webpack:///src/modules/business-sign-up/components/sign-up-input.tsx?4011","webpack:///src/modules/business-sign-up/components/sign-up-label.tsx?2025","webpack:///src/modules/business-sign-up/business-sign-up.tsx?df21","webpack:///src/modules/tab-item/tab-item.view.tsx?76f0","webpack:///./src/modules/smwe-breadcrumb/smwe-breadcrumb.tsx?d112","webpack:///./src/modules/youtube-modal/youtube-modal.tsx?73e0","webpack:///src/modules/iframe/iframe.tsx?d14a","webpack:///./src/modules/sort-and-filter-container/sort-and-filter-container.tsx?0bd0","webpack:///./src/themes/elicit/views/content-block.view.tsx?e06c","webpack:///./src/themes/fth/views/content-block.view.tsx?3551","webpack:///src/modules/back-top-footer/back-top-footer.tsx?0e13","webpack:///./src/modules/age-gate/age-gate.tsx?723b","webpack:///./src/themes/blend/views/content-block.view.tsx?5ee6","webpack:///./src/components/vimeo-iframe.tsx?2ca9","webpack:///./node_modules/@msdyn365-commerce/bootloader/node_modules/core-js/modules/es.string.match.js?044a","webpack:///./src/components/truetour-iframe.tsx?0fe2","webpack:///src/modules/checkout-google-pay/checkout-google-pay.view.tsx?b573","webpack:///./src/components/text-content-block.tsx?7c2a","webpack:///./src/modules/content-with-media/media-content-block.tsx?6f37","webpack:///./src/modules/content-with-media/content-with-media.tsx?4ebd","webpack:///src/modules/tile-list/tile-list.tsx?f539","webpack:///./src/themes/stemichelle-new/views/content-block.view.tsx?b343","webpack:///src/modules/fabrikam/views/ratings-histogram.view.tsx?96ae","webpack:///./src/components/call-to-action.tsx?535d","webpack:///./src/modules/mailing-list-form/components/text-input-group.tsx?86fc","webpack:///./src/components/input-group-mailing-list.tsx?c504","webpack:///./src/dataActions/mailing-list-signup.ts?9356","webpack:///./src/modules/mailing-list-form/mailing-list-form.tsx?50d1","webpack:///./src/themes/stemichelle/views/content-block.view.tsx?7641","webpack:///src/modules/checkout-google-pay/checkout-google-pay.tsx?876c","webpack:///src/modules/iframe/iframe.view.tsx?dd86","webpack:///src/modules/tile-list/tile-list.view.tsx?d2bd","webpack:///src/modules/tab/tab.tsx?d713","webpack:///src/modules/business-sign-up/business-sign-up.view.tsx?578b","webpack:///./src/modules/all-purpose-tasting-tours/all-purpose-tasting-tours.tsx?277a","webpack:///./src/modules/container-with-header/container-with-header.tsx?ee31","webpack:///./src/components/youtube-iframe.tsx?173c","webpack:///src/modules/tab-item/tab-item.tsx?d2c1","webpack:///./src/modules/mailing-list-popup-modal/mailing-list-popup-modal.tsx?49de","webpack:///./src/modules/timeline/timeline.tsx?2149","webpack:///./src/components/form/Form.tsx?bdb1","webpack:///./src/modules/gift-card-balance/gift-card-balance.tsx?27fc","webpack:///src/modules/tab/tab.view.tsx?701e","webpack:///./src/themes/emp/views/content-block.view.tsx?a8aa","webpack:///src/modules/fabrikam/views/order-details.view.tsx?2a61"],"names":["SignUpButton","_ref","id","className","text","ariaLabel","telemetryContent","disabled","link","onClick","payLoad","getPayloadObject","attributes","getTelemetryAttributes","React","Button","Object","assign","role","href","SignUpError","type","message","errorClassName","classnames","GetMaxLength","maxLength","parsedMaxLength","Number","parseInt","isNaN","SignUpInput","value","pattern","isRequired","onChange","fieldReference","InputType","TextArea","name","undefined","ref","SignUpLabel","forId","htmlFor","InputID","renderInputSection","inputs","needToReset","onInputChange","showErrors","addressForm","updateAddress","map","element","index","label","maxChars","customClass","baseSignUpItem","wrapper","errorMessage","Address","isAddressInput","input","updateForm","hasError","resetAddress","splice","BusinessSignUp","constructor","props","_this","super","this","BusinessSignUpDefaultInputs","FirstName","Text","resources","firstNameLabel","LastName","lastNameLabel","Email","emailAddressLabel","EmailRegex","defaultRegex","source","CompanyName","companyLabel","Department","departmentLabel","JobTitle","jobTitleLabel","Size","companySizeLabel","companyAddressLabel","Comment","commentLabel","formChildReference","moduleClassName","needsToReset","handleHeadingChange","event","config","heading","target","_onInputChange","newForm","state","formItems","forEach","item","setState","isReady","_isFormReady","hasSubmitErrors","_onAddressChange","errors","currentAddress","addressItem","find","address","addressHasErrors","showAddressErrors","currentInput","match","_onSubmit","preventDefault","context","firstName","_getItem","lastName","companyName","companyEmail","companyAddress","jobTitle","department","companySize","comments","newPartner","CompanySize","Comments","createProspectAsync","callerContext","actionContext","then","successPageURL","confirmationLink","linkUrl","destinationUrl","getUrlSync","window","location","catch","_onCancel","cleanForm","isAddress","arguments","length","_addedReference","getTelemetryObject","request","telemetryPageName","friendlyName","telemetry","componentDidMount","_this$formChildRefere","current","focus","shouldComponentUpdate","nextProps","nextState","data","render","viewProps","_objectSpread","businessSignUp","moduleProps","ContainerWrapper","editProps","onEdit","requestContext","businessSignUpForm","_renderForm","renderView","slots","signUpButtonArialabel","signUpButtonText","cancelButtonArialabel","cancelButtonText","partialAddressErrorMessage","addressSlot","form","FormWrapper","items","buttons","key","disclaimer","RichTextComponent","newFormFields","_renderTabItemContent","TabItemView","tabItemType","tabSlots","TabContentContainer","TabHeaderContainer","TabItemContent","tabHeader","TabItemType","TabContent","Module","Node","tabItemContent","TabHeader","Breadcrumb","breadcrumbData","categoryData","result","_getCategory","allWinesCategoryId","_renderBreadcrumbs","categories","currentUrl","pathname","searchedCategory","category","Children","child","Slug","includes","_isAllWines","RecordId","Url","_getParentBreadcrumbText","isAllWinesPage","allWinesBreadcrumbLink","linkText","staticBreadcrumbItemText","_getParentBreadcrumbLink","staticBreadcrumbItemLink","separator","breadcrumbSeparator","staticText","staticBreadcrumbItemLevel2Link","lastBreadcrumbLink","lastBreadcrumbText","staticBreadcrumbItemLevel2Text","CallToAction","title","color","Name","__decorate","observer","YoutubeModal","_modalState","_openModal","bind","_closeModal","cssEntry","onKeyPress","videoAriaLabel","tabIndex","_richText","_thumbnail","_modal","image","altText","src","imgSrc","alt","richText","dangerouslySetInnerHTML","getRichTextHtml","modalId","videoId","vimeoVideoId","trueTourId","Modal","isOpen","toggle","modalClassName","ModalHeader","ModalBody","_videoType","console","warn","YoutubeIFrame","youtubeId","VimeoIFrame","vimeoId","TourIFrame","observable","Iframe","iframeRef","isConsentGiven","cookies","srcURL","URL","error","exception","protocol","toLocaleLowerCase","iframeClassName","Heading","_createHeading","IframeContainer","IFrame","_createIframe","cookieConsentAccepted","alert","_renderAlert","cookieConsentRequiredMessage","targetURL","height","iframeAriaLabel","SortAndFilterContainer","_viewport","_modalExampleBtn","_toggleModal","_updateViewport","modalIsOpen","addEventListener","componentWillUnmount","removeEventListener","isMobile","_renderMobile","_renderDesktop","classname","refineMenu","choiceSummary","sorting","products","innerRef","mobileModalTitle","autoFocus","fade","applicationNode","returnFocusRef","horizontalPosition","verticalPosition","zIndex","ModalFooter","mobileModalCloseButtonText","_getViewport","device","Type","innerWidth","gridSettings","xs","w","sm","md","lg","computed","ContentBlockView","contentBlockContainer","imageContainer","detailsContainer","links","clickableContainerLink","content","openInNewTab","isModalOpen","_clickableContainerLi","isCustomTheme","colorTheme","colorThemeClass","style","backgroundColor","textColor","paragraphMobile","_renderParagraphs","_renderCustomLinks","youTubeLink","_renderYouTubeLink","_target","paragraph","buttonBackgroundColor","buttonBorderColor","buttonTextColor","cta","btnClass","borderColor","rel","youTubeText","prevState","BackTopFooter","backtoTopText","destination","BackToTop","AgeGateCookieName","AgeGate","_setCookie","cookie","hostname","setConsentCookie","log","_isAge21","_isPrivacyPage","centered","_newImage","_oldImage","ageGateBody","ageGateAgreement","ageGateBold","ageGateCTA","_privacyRightsLink","_myInformationLink","privacyLink","origin","set","path","maxAge","cookieMaxAge","ageGateCookie","get","ageGateImage","defaultImageSettings","viewports","q","h","lazyload","Image","imageSettings","newImage","ageGateLogo","ageGateMyInformation","ageGatePrivacyRights","iframeId","sandbox","frameBorder","allow","allowFullScreen","call","fixRegExpWellKnownSymbolLogic","anObject","isNullOrUndefined","toLength","toString","requireObjectCoercible","getMethod","advanceStringIndex","regExpExec","MATCH","nativeMatch","maybeCallNative","regexp","O","matcher","RegExp","string","rx","S","res","done","global","fullUnicode","unicode","lastIndex","A","n","matchStr","CheckoutGooglePayView","checkoutGooglePay","TextContentBlockComponent","_isModalOpen","_modalStateToFalse","_modalStateToTrue","_backgroundImage","_category","_title","_summary","_copy","_callToAction","newState","copy","contentBlockNoHeadings","summary","backgroundImage","imageGridSettings","callToActionYoutube","callToActionLink","ctaLink","_callToActionInModal","callToActionText","MediaContentBlockComponent","_media","mediaDisplayImage","mediaDisplayVimeo","mediaDisplayTrueTour","_imageMedia","_vimeoMedia","_tourMedia","TrueTourIFrame","mediaDisplayBackdrop","_constructImage","ContentWithMedia","_leftColumn","_rightColumn","orientation","_textColumn","_mediaColumn","contentBlockConfig","textBackgroundImage","textCallToActionLink","textCallToActionText","textCallToActionYoutube","textCategory","textCopy","textSummary","textTitle","TileList","_telemetryContent","StringExtensions","isNullOrWhitespace","headingTag","tag","_this$props$config$cl","propsCarousel","SingleSlideCarousel","flipperPrevLabel","flipperPrevious","flipperNextLabel","flipperNext","parentId","vertical","singleSlideCarouselComponentProps","tileItemContainer","tileListContainer","tileListHeading","tiles","histogramItem","buttonProps","starLabel","bar","percentage","RatingsHistogramView","histogramItems","histogramProps","callToActionContent","glyphClassName","ctaLayout","glyphPosition","createInnerCTAFragment","glyph","layout","callToActionClass","callToActionBaseClass","defaultProps","TextInputGroup","_internalValue","_errorMessage","_isFirstBlur","initialValue","isValid","_valueChanged","_blurred","typeSettings","useDatePicker","min","minDate","placeholder","required","autoComplete","onBlur","htmlProps","_jsxErrorMessage","currentlyInvalid","MailingListInputGroup","_formStructure","validity","email","regex","zip","_handleValidityUpdate","_handleValueFinish","_handleFormExport","_setExternalGroups","keys","fieldName","field","redirectEmail","urlQuery","search","URLSearchParams","externalGroup","labelText","_isFormValid","submitText","onFinish","fieldData","validationText","test","MailingListSignupInput","shouldCacheOutput","getCacheKey","getCacheObjectType","dataCacheType","createMailingListInput","inputData","appContext","mailingListID","mailingListSourceID","app","insertMailingListInput","zipCode","async","mailingListAction","ctx","execute","Msdyn365","action","MAILING_FORM_COOKIE","age","MailingListForm","displayInPopup","isSubmittedSuccessfully","onFinished","_signupSuccessJSX","_mailingListJSX","confirmationText","groups","constructMailingListGroupsFromResources","subtitle","description","submitButtonText","mailingListForm__submitButton","dataSet","requestFullfilled","IsSaved","isEssential","mailingListForm__emailServerInvalid","e","Error","JSON","stringify","mailingListForm__emailLabel","mailingListForm__emailValidation","mailingListForm__emailAriaLabel","mailingListForm__nameLabel","mailingListForm__nameValidation","mailingListForm__nameAriaLabel","mailingListForm__zipLabel","mailingListForm__zipValidation","mailingListForm__zipAriaLabel","enablePlaceholders","placeholders","CheckoutGooglePay","classNames","IFrameView","tileListView","createElement","tileItem","keyIndex","Tab","tabIndexQuery","_refHandler","activeLink","_onClick","activeTabState","activeContentIndex","tabId","update","createTabStateInput","currentTabIndex","newUrl","_setGetParameter","String","history","pushState","_onKeyDown","keyCode","slotLength","tabItems","defaultTabIndex","initialIndex","queryString","query","activeTab","queryTabIndex","indexOf","arr","split","_getTabHeader","_getTabContent","headingComponent","MsDyn365","tabViewProps","TabContainer","headerSection","tabsSection","tabItemContainer","tabContents","tabHeaders","componentDidUpdate","params","isEditor","dataActionTabId","selected","contentID","getContentID","onKeyDown","isSelected","itemIndex","paramName","paramValue","url","isBrowser","requestUrl","decodeURIComponent","BusinessSignUpItem","BusinesSignUpView","button","TastingTours","_showWidget","appInsights","correlationHeaderExcludedDomains","push","_injectScript","rcTarget","_image","_reservationClassName","_content","_consentGate","_integration","_header","_body","header","consentCTA","consentText","requireConsent","consentFooter","consentFooterClass","token","document","script","defer","setAttribute","getElementsByTagName","appendChild","widget","getElementById","consentGate","ContainerWithHeader","hasSlots","contentBlock","_renderHeader","_renderSlotItems","_renderLinkedTitle","_config$link","_renderTitle","slot","TabItem","moduleContentClassName","moduleHeaderClassName","_renderTabHeader","activeContentIDResult","shown","tabItemTitle","PopupModal","_cookieRecieved","_cookieRecievedPreForm","_delayStarted","_popupReady","_popupOpen","_cookie","remindTime","_remindLaterClose","_dismissClose","_cookieExist","_startCookiePolling","_startDelay","user","isAuthenticated","closeText","remindMeLaterText","disableForSignIn","_renderedModules","interval","setInterval","clearInterval","modules","_getCookiesDirectly","dismissTime","setTimeout","delay","curName","trim","deltaHoursFromToday","now","Date","setHours","getHours","expires","status","Timeline","yearPositions","yearCenter","minimalImageSettings","xl","disableLazyLoad","currentSlide","timelineItems","timelineItemTransition","_nextItem","_previousItem","_handleItemChange","timelineInterval","_getYearPositions","currentItem","paddingTop","paddingBottom","_getSelectors","class","timelineItem","timelineYear","_handleItemTransition","_recenter","currentTarget","getAttribute","el","desiredPosition","container","getElementsByClassName","scrollTo","top","left","behavior","years","i","offsetTop","scrollContainer","offsetHeight","Form","submit","_this$props","cssModule","inline","_objectWithoutProperties","_excluded","Tag","classes","mapToCssModules","GiftCardBalance","isFetchingGiftCard","giftCardNumber","giftCardMessage","inputState","_getGiftCardBalance","getGiftCardInquiryAsync","activeGiftCard","Id","_getGiftCardBalanceMessage","replace","BalanceInCardCurrency","BalanceCurrencyCode","setError","format","invalidGiftCardErrorMessage","finally","_giftCardNumberInputRef","_getFormattedPrice","price","currencyCode","cultureFormatter","formatCurrency","giftCardId","giftCardBalanceAmount","giftCardCurrencyCode","giftCardLastFour","substring","giftCardBalance","giftCardCurrency","giftCardBalanceMessage","_getUnauthorizedTagMessage","_handleSubmit","unauthorizedUserMessage2","onSubmit","giftCardLableText","giftCardButtonText","emptyInputError","signInUrl","unauthorizedUserMessage1","unauthorizedUserMessage3","tabView","OrderInfomation","orderInformationProps","salesId","receiptId","createdDate","count","amount","channelReferenceId","channelName","channelAddress","SalesLine","_ref2","salesLineProps","salesLine","buyAgainButton","GroupDelivery","_ref3","deliveryProps","Group","_ref4","groupProps","delivery","salesLinesProps","salesLines","isCashAndCarryTransaction","LineId","deliveryType","shipment","trackingInfo","salesStatus","showTimeslot","pickupProps","pickupDateTimeslot","Groups","_ref5","groupsProps","group","OrderSummary","_ref6","orderSummaryProps","subtotal","shipping","tax","totalAmount","earnedPoints","Payment","_ref7","paymentMethodsProps","methods","Help","_ref8","helpProps","needHelpLabel","helpLineNumberLabel","contactNumber","OrderDetailsView","_ref9","viewModes","tableViewActions","table","placedBy","loading","orderInfomation","orderSummary","payment","help"],"mappings":"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","file":"static/js/8.866e301f921ec9a4636f.chunk.js","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Button, getPayloadObject, getTelemetryAttributes, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nexport interface IBusinessSignUpButtonProps {\n id?: string;\n className: string;\n text: string;\n ariaLabel: string;\n disabled?: boolean;\n link?: string;\n telemetryContent: ITelemetryContent;\n onClick?(event: React.MouseEvent): void;\n}\n\nexport const SignUpButton: React.FC = ({\n id,\n className,\n text,\n ariaLabel,\n telemetryContent,\n disabled,\n link,\n onClick\n}) => {\n const payLoad = getPayloadObject('click', telemetryContent, text);\n const attributes = getTelemetryAttributes(telemetryContent, payLoad);\n return (\n \n {text}\n \n );\n};\n\nexport default SignUpButton;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nexport interface IBusinessSignUpErrorProps {\n id?: string;\n className: string;\n type?: string;\n message?: string;\n}\n\nexport const SignUpError: React.FC = ({ id, className, type = 'page', message }) => {\n const errorClassName = `${className}__${type}-error`;\n\n return (\n \n

{message}

\n \n );\n};\n\nexport default SignUpError;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { INodeProps } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { InputType } from '../business-sign-up';\n\nexport interface IBusinessSignUpInputProps {\n id?: string;\n type: InputType;\n value?: string;\n pattern?: string;\n className: string;\n maxLength?: string;\n isRequired: boolean;\n fieldReference?: React.RefObject;\n onChange?(event: React.ChangeEvent): void;\n}\n\nexport interface IBusinessSignUpInput {\n key: string;\n AddressItem: INodeProps;\n label: React.ReactNode;\n alert: React.ReactNode;\n input: React.ReactNode;\n}\n\nconst GetMaxLength = (maxLength?: string): number | undefined => {\n if (maxLength) {\n const parsedMaxLength = Number.parseInt(maxLength, 10);\n if (!isNaN(parsedMaxLength)) {\n return parsedMaxLength;\n }\n }\n\n return undefined;\n};\n\nexport const SignUpInput: React.FC = ({\n id,\n type,\n value,\n pattern,\n className,\n maxLength,\n isRequired,\n onChange,\n fieldReference\n}) => {\n if (type === InputType.TextArea) {\n return (\n \n );\n }\n\n return (\n \n );\n};\n\nexport default SignUpInput;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as React from 'react';\n\nexport interface IBusinessSignUpLabelProps {\n id: string;\n forId: string;\n className: string;\n text: string;\n}\n\nexport const SignUpLabel: React.FC = ({ id, forId, className, text }) => (\n \n);\n\nexport default SignUpLabel;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { ContentEditableEvent, getUrlSync, RichTextComponent, Text } from '@msdyn365-commerce/core';\nimport { Address, BusinessPartnerProspect } from '@msdyn365-commerce/retail-proxy';\nimport { createProspectAsync } from '@msdyn365-commerce/retail-proxy/dist/DataActions/BusinessPartnersDataActions.g';\nimport { EmailRegex } from '@msdyn365-commerce-modules/retail-actions';\nimport { getTelemetryObject, IModuleProps, INodeProps, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IBusinessSignUpConfig, IBusinessSignUpProps } from './business-sign-up.props.autogenerated';\nimport { SignUpButton, SignUpError, SignUpInput, SignUpLabel } from './components';\n\nexport interface IBusinessSignUpExtendedProps extends IBusinessSignUpProps {\n formItems?: IFormItem[];\n}\n\nexport interface IBusinessSignUpItem {\n wrapper: INodeProps;\n isAddressInput?: boolean;\n id: string;\n label: React.ReactNode;\n errorMessage: React.ReactNode;\n input?: React.ReactNode;\n}\n\nexport interface IBusinessState {\n isReady: boolean;\n formItems: IFormItem[];\n addressHasErrors: boolean;\n showAddressErrors: boolean;\n hasSubmitErrors: boolean;\n}\n\nexport interface IBusinessSignUpLocalAccount {\n FormWrapper: INodeProps;\n items: IBusinessSignUpItem[];\n buttons: React.ReactNode[];\n errorMessage: React.ReactNode[];\n disclaimer: React.ReactNode;\n}\n\nexport interface IBusinessSignUpViewProps {\n className: string;\n businessSignUp: IModuleProps;\n ContainerWrapper: INodeProps;\n heading: React.ReactNode;\n businessSignUpForm: IBusinessSignUpLocalAccount;\n formItems: IFormItem[];\n}\n\nexport interface IFormItem {\n id: string;\n type: InputType;\n label: string;\n value: string;\n maxChars?: string;\n isRequired: boolean;\n pattern?: string;\n address?: Address;\n customClass?: string;\n fieldReference?: React.RefObject;\n}\n\nexport enum InputType {\n // eslint-disable-next-line @typescript-eslint/no-shadow -- Text enum doesn't override the imported Text\n Text = 'text',\n Address = 'address',\n Email = 'email',\n TextArea = 'textarea'\n}\n\nexport enum InputID {\n FirstName = 'FirstName',\n LastName = 'LastName',\n Email = 'CompanyEmail',\n CompanyName = 'CompanyName',\n Address = 'CompanyAddress',\n JobTitle = 'JobTitle',\n Size = 'CompanySize',\n Department = 'Department',\n Comment = 'Comment'\n}\n\nexport const renderInputSection = (\n inputs: IFormItem[],\n className: string,\n needToReset: boolean,\n onInputChange: (event: React.ChangeEvent) => void,\n showErrors: boolean,\n addressForm?: React.ReactNode,\n updateAddress?: (errors: boolean, currAddress?: Address) => void\n): IBusinessSignUpItem[] => {\n return inputs.map((element, index) => {\n const { id, type, label, maxChars, isRequired, pattern, customClass, value, fieldReference } = element;\n\n const baseSignUpItem: IBusinessSignUpItem = {\n wrapper: {\n className: classnames(className, `${className}-${id}`, customClass)\n },\n id,\n label: ,\n errorMessage: \n };\n\n if (type === InputType.Address) {\n if (addressForm) {\n baseSignUpItem.isAddressInput = true;\n baseSignUpItem.input = (\n <>\n {React.cloneElement(addressForm as React.ReactElement, {\n updateForm: updateAddress,\n hasError: showErrors,\n isRequired: isRequired === undefined ? false : isRequired,\n resetAddress: needToReset\n })}\n \n );\n } else {\n // If the address slot is not filled, remove this input from the form\n inputs.splice(index, 1);\n }\n } else {\n baseSignUpItem.input = (\n \n );\n }\n\n return baseSignUpItem;\n });\n};\n\n/**\n *\n * Business Request Form Modules\n * Form that a business can use to submit a request to become a partner with Microsoft.\n * @extends {React.Component>}\n */\nclass BusinessSignUp extends React.Component {\n // Used as default data\n public BusinessSignUpDefaultInputs: IFormItem[] = [\n {\n id: InputID.FirstName,\n type: InputType.Text,\n label: this.props.resources.firstNameLabel,\n value: '',\n isRequired: true,\n customClass: 'width-25'\n },\n {\n id: InputID.LastName,\n type: InputType.Text,\n label: this.props.resources.lastNameLabel,\n value: '',\n isRequired: true,\n customClass: 'width-25'\n },\n {\n id: InputID.Email,\n type: InputType.Email,\n label: this.props.resources.emailAddressLabel,\n value: '',\n isRequired: true,\n pattern: EmailRegex.defaultRegex.source,\n customClass: 'width-50'\n },\n {\n id: InputID.CompanyName,\n type: InputType.Text,\n label: this.props.resources.companyLabel,\n value: '',\n isRequired: true,\n customClass: 'width-50'\n },\n {\n id: InputID.Department,\n type: InputType.Text,\n label: this.props.resources.departmentLabel,\n value: '',\n isRequired: false,\n customClass: 'width-50'\n },\n {\n id: InputID.JobTitle,\n type: InputType.Text,\n label: this.props.resources.jobTitleLabel,\n value: '',\n isRequired: false,\n customClass: 'width-50'\n },\n {\n id: InputID.Size,\n type: InputType.Text,\n label: this.props.resources.companySizeLabel,\n value: '',\n isRequired: false,\n customClass: 'width-50'\n },\n {\n id: InputID.Address,\n type: InputType.Address,\n label: this.props.resources.companyAddressLabel,\n value: '',\n isRequired: false,\n customClass: 'width-100'\n },\n {\n id: InputID.Comment,\n type: InputType.TextArea,\n label: this.props.resources.commentLabel,\n value: '',\n isRequired: false,\n customClass: 'width-100'\n }\n ];\n\n private readonly formChildReference: React.RefObject = React.createRef();\n\n private readonly moduleClassName: string = 'ms-business-sign-up';\n\n private needsToReset: boolean = false;\n\n private readonly telemetryContent: ITelemetryContent;\n\n constructor(props: IBusinessSignUpExtendedProps) {\n super(props);\n\n this.state = {\n isReady: false,\n formItems: this.props.formItems || this._addedReference(),\n addressHasErrors: false,\n showAddressErrors: false,\n hasSubmitErrors: false\n };\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public componentDidMount(): void {\n this.formChildReference.current?.focus();\n }\n\n public shouldComponentUpdate(nextProps: IBusinessSignUpExtendedProps, nextState: IBusinessState): boolean {\n if (this.state === nextState && this.props.data === nextProps.data) {\n return false;\n }\n return true;\n }\n\n public render(): JSX.Element {\n const { config } = this.props;\n const { formItems } = this.state;\n const { className, heading } = config;\n\n const viewProps = {\n ...this.props,\n businessSignUp: {\n moduleProps: this.props,\n className: classnames(this.moduleClassName, className)\n },\n ContainerWrapper: {\n className: `${this.moduleClassName}__container`\n },\n heading: (\n \n ),\n businessSignUpForm: this._renderForm(),\n formItems\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n /**\n * Handle the heading change event.\n * @param event - Content Editable Event.\n */\n public handleHeadingChange = (event: ContentEditableEvent): void => {\n this.props.config.heading.text = event.target.value;\n };\n\n private _renderForm(): IBusinessSignUpLocalAccount {\n const { config, resources, slots } = this.props;\n const { showAddressErrors, hasSubmitErrors, isReady, formItems } = this.state;\n const {\n signUpButtonArialabel,\n signUpButtonText,\n cancelButtonArialabel,\n cancelButtonText,\n errorMessage,\n partialAddressErrorMessage\n } = resources;\n const addressForm = (slots && slots.addressSlot && slots.addressSlot.length > 0 && slots.addressSlot[0]) || undefined;\n\n const form = {\n FormWrapper: {\n className: `${this.moduleClassName}__form `\n },\n items: renderInputSection(\n formItems,\n `${this.moduleClassName}__form-item`,\n this.needsToReset,\n this._onInputChange,\n showAddressErrors,\n addressForm,\n this._onAddressChange\n ),\n buttons: [\n ,\n \n ],\n errorMessage: [\n hasSubmitErrors && ,\n showAddressErrors && (\n \n )\n ],\n disclaimer: config.disclaimer && (\n \n )\n };\n\n if (this.needsToReset) {\n this.needsToReset = false;\n }\n\n return form;\n }\n\n private readonly _onInputChange = (event: React.ChangeEvent): void => {\n const newForm = this.state.formItems;\n newForm.forEach(item => {\n if (item.id === event.target.id) {\n item.value = event.target.value;\n }\n });\n\n // Check if form is ready, update state object with latest values, values have changed so reset hasSubmitErrros\n this.setState({\n isReady: this._isFormReady(),\n formItems: newForm,\n hasSubmitErrors: false\n });\n };\n\n private _addedReference(): IFormItem[] {\n const newFormFields = this.BusinessSignUpDefaultInputs;\n newFormFields[0].fieldReference = this.formChildReference;\n return newFormFields;\n }\n\n private readonly _onAddressChange = (errors: boolean, currentAddress?: Address): void => {\n // Find address item\n const newForm = this.state.formItems;\n const addressItem = newForm.find(item => {\n return item.type === InputType.Address;\n });\n\n // If found --> set to currentAddress\n if (addressItem) {\n addressItem.address = currentAddress;\n\n // Update state with new values and set errors to false if address is not required field\n this.setState(\n {\n formItems: newForm,\n addressHasErrors: errors,\n showAddressErrors: false\n },\n () => {\n this.setState({ isReady: this._isFormReady() });\n }\n );\n }\n };\n\n private readonly _isFormReady = (): boolean => {\n const { formItems } = this.state;\n\n for (const currentInput of formItems) {\n // Will return FALSE if:\n // - input field is required\n // IF is address AND addressHasErrors === true\n // ELSE value is undefined OR empty\n // OR\n // - pattern provided and value does not match pattern\n\n if (currentInput.isRequired) {\n if (currentInput.type === InputType.Address) {\n if (this.state.addressHasErrors) {\n return false;\n }\n } else if (currentInput.value === undefined || currentInput.value === '') {\n return false;\n }\n }\n if (currentInput.pattern !== undefined && currentInput.value.match(currentInput.pattern) === null) {\n return false;\n }\n }\n\n return true;\n };\n\n private readonly _onSubmit = (event: React.MouseEvent) => {\n if (this.state.addressHasErrors) {\n this.setState({\n showAddressErrors: true\n });\n\n event.preventDefault();\n return;\n }\n\n const { config, context } = this.props;\n\n // Check for matching id and if not empty\n const firstName = this._getItem(InputID.FirstName);\n const lastName = this._getItem(InputID.LastName);\n const companyName = this._getItem(InputID.CompanyName);\n const companyEmail = this._getItem(InputID.Email);\n const companyAddress = this._getItem(InputID.Address, true);\n const jobTitle = this._getItem(InputID.JobTitle);\n const department = this._getItem(InputID.Department);\n const companySize = this._getItem(InputID.Size);\n const comments = this._getItem(InputID.Comment);\n\n // API gets email as part of the address object, but I do not use the email input from the address component, thus we need to copy it over\n if (companyEmail && companyEmail.value && companyAddress && companyAddress.address) {\n companyAddress.address.Email = companyEmail.value;\n }\n\n const newPartner: BusinessPartnerProspect = {\n FirstName: firstName && firstName.value,\n LastName: lastName && lastName.value,\n CompanyName: companyName && companyName.value,\n Address: companyAddress && companyAddress.address && companyAddress.address,\n JobTitle: jobTitle && jobTitle.value,\n Department: department && department.value,\n CompanySize: (companySize && Number.parseInt(companySize.value, 10)) || 0,\n Comments: comments && comments.value\n };\n\n this.setState({\n isReady: false\n });\n\n // Create business partner request\n createProspectAsync({ callerContext: context.actionContext }, newPartner)\n .then(() => {\n const successPageURL =\n (config.confirmationLink && config.confirmationLink.linkUrl && config.confirmationLink.linkUrl.destinationUrl) ||\n getUrlSync('home', this.props.context.actionContext) ||\n '';\n window.location.href = successPageURL;\n })\n .catch(() => {\n this.setState({\n hasSubmitErrors: true\n });\n });\n };\n\n private readonly _onCancel = () => {\n // Reset values of the form\n const cleanForm = this.state.formItems;\n cleanForm.forEach(input => {\n input.value = '';\n });\n\n // Set reset flag so address input will get reset on next renderInputSection() call\n this.needsToReset = true;\n\n this.setState({\n isReady: false,\n formItems: cleanForm,\n addressHasErrors: true,\n showAddressErrors: false,\n hasSubmitErrors: false\n });\n };\n\n private readonly _getItem = (id: string, isAddress: boolean = false) => {\n if (isAddress) {\n return this.state.formItems.find(item => {\n return item.id === id && item.address;\n });\n }\n return this.state.formItems.find(item => {\n return item.id === id && item.value !== '';\n });\n };\n}\n\nexport default BusinessSignUp;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { ITabItemViewProps, TabItemType } from './tab-item';\n\nconst TabItemView: React.FC = props => {\n const { tabItemType, tabSlots, TabContentContainer, TabHeaderContainer, TabItemContent, tabHeader } = props;\n\n switch (tabItemType) {\n case TabItemType.TabContent:\n return (\n \n \n {tabSlots &&\n tabSlots.tabItemContent &&\n tabSlots.tabItemContent.length &&\n _renderTabItemContent(tabSlots.tabItemContent)}\n \n \n );\n case TabItemType.TabHeader:\n return {tabHeader};\n default:\n return null;\n }\n};\n\nconst _renderTabItemContent = (items: React.ReactNode[]): JSX.Element | null => {\n return (\n <>\n {items && items.length > 0\n ? items.map((item: React.ReactNode, index: number) => {\n return {item};\n })\n : null}\n \n );\n};\nexport default TabItemView;\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { SimpleText } from '@msdyn365-commerce-modules/data-types';\r\nimport { CategoryHierarchy } from '@msdyn365-commerce/commerce-entities';\r\nimport { observer } from 'mobx-react';\r\nimport * as React from 'react';\r\nimport CallToAction from '../../components/call-to-action';\r\nimport { ISmweBreadcrumbData } from './smwe-breadcrumb.data';\r\nimport { ISmweBreadcrumbProps } from './smwe-breadcrumb.props.autogenerated';\r\n\r\n/**\r\n *\r\n * Breadcrumb component\r\n * @extends {React.Component>}\r\n */\r\n@observer\r\nclass Breadcrumb extends React.Component> {\r\n\r\n public render(): JSX.Element | null {\r\n // This should never occur\r\n if (!(this.props && this.props.data && this.props.config)) {\r\n return null;\r\n }\r\n // Contruct the text for the current location (currently pulls either the category or product name)\r\n let breadcrumbData;\r\n let categoryData;\r\n if (this.props.data.breadcrumbData) {\r\n breadcrumbData = this.props.data.breadcrumbData.result;\r\n if (breadcrumbData) {\r\n categoryData = this._getCategory();\r\n } else if (this.props.config.allWinesCategoryId) {\r\n // waits for data actions on plp and pdp pages\r\n return null;\r\n }\r\n }\r\n return this._renderBreadcrumbs(categoryData, breadcrumbData);\r\n }\r\n // =========================================================================\r\n // PRIVATE METHODS\r\n // =========================================================================\r\n\r\n // ------------------------------------------------------\r\n // Returns parent category based off url path\r\n // ------------------------------------------------------\r\n private _getCategory(): CategoryHierarchy | undefined {\r\n if (!this.props.data.categories) { return; }\r\n const categories = this.props.data.categories.result;\r\n if (!categories) { return; }\r\n const currentUrl = window.location.pathname;\r\n let searchedCategory = {} as CategoryHierarchy;\r\n categories.forEach(category => {\r\n if (category.Children) {\r\n searchedCategory = category.Children.find(child => (child.Slug && currentUrl.includes(child.Slug))) || searchedCategory;\r\n }\r\n });\r\n return searchedCategory;\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _isAllWines(categoryData: CategoryHierarchy): boolean {\r\n if (!this.props.config.allWinesCategoryId) { return false; }\r\n return (categoryData.RecordId === this.props.config.allWinesCategoryId && categoryData.Url && categoryData.Url.includes(window.location.pathname)) ? true : false;\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _getParentBreadcrumbText(isAllWinesPage: boolean): string {\r\n const { config } = this.props;\r\n if (isAllWinesPage && config.allWinesBreadcrumbLink && config.allWinesBreadcrumbLink.linkText) {\r\n return config.allWinesBreadcrumbLink.linkText;\r\n } else {\r\n return config.staticBreadcrumbItemText || 'Home';\r\n }\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _getParentBreadcrumbLink(isAllWinesPage: boolean): string {\r\n const { config } = this.props;\r\n if (isAllWinesPage && config.allWinesBreadcrumbLink && config.allWinesBreadcrumbLink.linkUrl && config.allWinesBreadcrumbLink.linkUrl.destinationUrl) {\r\n return config.allWinesBreadcrumbLink.linkUrl.destinationUrl;\r\n } else {\r\n const link = config.staticBreadcrumbItemLink;\r\n return (link && link.linkUrl && link.linkUrl.destinationUrl) || '/';\r\n }\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _renderBreadcrumbs(categoryData: CategoryHierarchy | undefined, breadcrumbData: SimpleText | undefined): JSX.Element {\r\n const { config } = this.props;\r\n const separator = config.breadcrumbSeparator || '|';\r\n const isAllWinesPage = categoryData ? this._isAllWines(categoryData) : false;\r\n\r\n // Pull values from config for breadcrumb item links\r\n const staticText = this._getParentBreadcrumbText(isAllWinesPage);\r\n const link = config.staticBreadcrumbItemLevel2Link;\r\n const lastBreadcrumbLink = (link && link.linkUrl && link.linkUrl.destinationUrl) || '';\r\n const lastBreadcrumbText = (breadcrumbData && breadcrumbData.text) || (config.staticBreadcrumbItemLevel2Text || '');\r\n\r\n return (\r\n
\r\n {staticText && (\r\n \r\n )}\r\n\r\n {(categoryData && categoryData.Url && !categoryData.Url.includes(window.location.pathname) && categoryData.RecordId !== config.allWinesCategoryId) && (\r\n
\r\n \r\n \r\n
\r\n )}\r\n\r\n {lastBreadcrumbText && (\r\n
\r\n \r\n {lastBreadcrumbLink && (\r\n \r\n ) || (\r\n
{lastBreadcrumbText}
\r\n )}\r\n
\r\n )}\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default Breadcrumb;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport * as React from 'react';\r\n\r\nimport { Modal, ModalBody, ModalHeader } from '@msdyn365-commerce-modules/utilities';\r\nimport { getRichTextHtml } from '@msdyn365-commerce/core';\r\nimport { observable } from 'mobx';\r\nimport { observer } from 'mobx-react';\r\nimport TourIFrame from '../../components/truetour-iframe';\r\nimport VimeoIFrame from '../../components/vimeo-iframe';\r\nimport YoutubeIFrame from '../../components/youtube-iframe';\r\nimport { IYoutubeModalData } from './youtube-modal.data';\r\nimport { IYoutubeModalProps } from './youtube-modal.props.autogenerated';\r\n\r\n// ==============================================================================\r\n// CLASS DEFINITIONS\r\n// ==============================================================================\r\n/**\r\n *\r\n * YoutubeModal component\r\n * @extends {React.Component>}\r\n */\r\n@observer\r\nclass YoutubeModal extends React.Component> {\r\n\r\n // ==========================================================================\r\n // FIELDS\r\n // ==========================================================================\r\n\r\n @observable private _modalState: boolean = false;\r\n\r\n // ==========================================================================\r\n // PUBLIC METHODS\r\n // ==========================================================================\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n public constructor(props: IYoutubeModalProps) {\r\n super(props);\r\n\r\n this._openModal = this._openModal.bind(this);\r\n this._closeModal = this._closeModal.bind(this);\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n public render(): JSX.Element {\r\n return (\r\n
\r\n \r\n {this._richText}\r\n {this._thumbnail}\r\n
\r\n {this._modal}\r\n \r\n );\r\n }\r\n\r\n // ==========================================================================\r\n // JSX CONSTRUCTORS\r\n // ==========================================================================\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _thumbnail(): JSX.Element | null {\r\n if (this.props.config.image) {\r\n const {\r\n altText,\r\n src\r\n } = this.props.config.image;\r\n\r\n let imgSrc = src || '';\r\n if (!imgSrc.includes('&q=')) {\r\n imgSrc += '&q=80';\r\n }\r\n\r\n return (\r\n \r\n );\r\n }\r\n\r\n // No thumbnail supplied\r\n return null;\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _richText(): JSX.Element | null {\r\n if (this.props.config.richText) {\r\n return (\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n \r\n );\r\n }\r\n\r\n // No text area was supplied\r\n return null;\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _modal(): JSX.Element | null {\r\n\r\n let modalId;\r\n if (this.props.config.videoId) {\r\n modalId = `youtube-${this.props.config.videoId}`;\r\n }\r\n if (this.props.config.vimeoVideoId) {\r\n modalId = `vimeo-${this.props.config.vimeoVideoId}`;\r\n }\r\n if(this.props.config.trueTourId) {\r\n modalId = `truetour-${this.props.config.trueTourId}`;\r\n }\r\n\r\n if (modalId) {\r\n return (\r\n \r\n \r\n \r\n {\r\n this._modalState &&\r\n this._videoType\r\n }\r\n \r\n \r\n );\r\n }\r\n\r\n console.warn('[Youtube-Modal] video id is not defined');\r\n return null;\r\n }\r\n\r\n // ==========================================================================\r\n // COMPONENT EVENTS\r\n // ==========================================================================\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private _openModal(): void {\r\n this._modalState = true;\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private _closeModal(): void {\r\n this._modalState = false;\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _videoType(): JSX.Element | null {\r\n // uses youtube ID first regardless of vimeo ID\r\n if (this.props.config.videoId) {\r\n return ;\r\n }\r\n if (this.props.config.vimeoVideoId) {\r\n return ;\r\n }\r\n if (this.props.config.trueTourId) {\r\n return ;\r\n }\r\n return null;\r\n }\r\n}\r\n\r\nexport default YoutubeModal;","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Heading, IModuleProps } from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { IHeadingData, IIframeConfig, IIframeProps } from './iframe.props.autogenerated';\n\nexport interface IIframeViewProps extends IIframeProps {\n Heading: React.ReactNode;\n IframeContainer: IModuleProps;\n IFrame: React.ReactNode;\n alert?: React.ReactNode;\n cookieConsentAccepted?: boolean;\n}\n\n/**\n *\n * Iframe component.\n * @extends {React.PureComponent}\n */\nclass Iframe extends React.PureComponent> {\n private readonly iframeRef: React.RefObject;\n\n constructor(props: IIframeProps) {\n super(props);\n this.iframeRef = React.createRef();\n }\n\n public render(): JSX.Element | null {\n const { config, resources } = this.props;\n const isConsentGiven =\n this.props.context.request &&\n this.props.context.request.cookies &&\n this.props.context.request.cookies.isConsentGiven &&\n this.props.context.request.cookies.isConsentGiven();\n\n if (!(config && config.target && config.target.destinationUrl)) {\n return null;\n }\n\n let srcURL;\n try {\n srcURL = new URL(config.target.destinationUrl);\n } catch (error) {\n this.props.telemetry.exception(error);\n return null;\n }\n\n if (srcURL && srcURL.protocol && srcURL.protocol.toLocaleLowerCase() !== 'https:') {\n return null;\n }\n const iframeClassName = classnames('ms-iframe', config.className);\n\n let viewProps: IIframeViewProps = {\n ...(this.props as IIframeProps),\n Heading: this._createHeading(config.heading!),\n IframeContainer: {\n moduleProps: this.props,\n className: iframeClassName\n },\n IFrame: this._createIframe()\n };\n\n if (!isConsentGiven) {\n viewProps = {\n ...viewProps,\n alert: this._renderAlert(resources.cookieConsentRequiredMessage)\n };\n } else {\n viewProps = {\n ...viewProps,\n cookieConsentAccepted: true\n };\n }\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n\n private _createHeading(heading: IHeadingData): React.ReactNode | null {\n if (!heading || !heading.text || heading.text.length === 0) {\n return null;\n }\n\n return ;\n }\n\n private _renderAlert(message: string): React.ReactNode | null {\n return (\n

\n {message}\n

\n );\n }\n\n private _createIframe(): React.ReactNode | null {\n const { config } = this.props;\n const targetURL = config.target.destinationUrl;\n\n return (\n \n );\n }\n}\n\nexport default Iframe;\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { Button, Modal, ModalBody, ModalFooter, ModalHeader } from '@msdyn365-commerce-modules/utilities';\r\nimport classname from 'classnames';\r\nimport { computed, observable } from 'mobx';\r\nimport { observer } from 'mobx-react';\r\nimport * as React from 'react';\r\nimport { ISortAndFilterContainerProps } from './sort-and-filter-container.props.autogenerated';\r\nimport { GridSize, ISortAndFilterContainerState } from './sort-and-filter-container.state';\r\n\r\n/**\r\n *\r\n * SortAndFilterContainer component.\r\n * @extends {React.Component, ISortAndFilterContainerState>}\r\n */\r\n@observer\r\nclass SortAndFilterContainer extends React.Component, ISortAndFilterContainerState> {\r\n @observable\r\n private _viewport: GridSize;\r\n\r\n private _modalExampleBtn: React.RefObject;\r\n\r\n constructor(props: ISortAndFilterContainerProps<{}>) {\r\n super(props);\r\n\r\n this._viewport = 'lg';\r\n this._modalExampleBtn = React.createRef();\r\n this._toggleModal = this._toggleModal.bind(this);\r\n this._updateViewport = this._updateViewport.bind(this);\r\n\r\n this.state = {\r\n modalIsOpen: false\r\n };\r\n }\r\n\r\n @computed get isMobile(): boolean {\r\n return (this._viewport === 'xs' || this._viewport === 'sm' || this._viewport === 'md');\r\n }\r\n\r\n public componentDidMount(): void {\r\n // tslint:disable-next-line: no-typeof-undefined\r\n if (typeof window !== 'undefined' && window.addEventListener) {\r\n window.addEventListener('resize', this._updateViewport);\r\n this._updateViewport();\r\n }\r\n }\r\n\r\n public componentWillUnmount(): void {\r\n // tslint:disable-next-line: no-typeof-undefined\r\n if (typeof window !== 'undefined' && window.addEventListener) {\r\n window.removeEventListener('resize', this._updateViewport);\r\n }\r\n }\r\n\r\n /**\r\n * Renders both desktop and mobile versions of this container. The expectation is for the theme\r\n * to show/hide each based on viewport size.\r\n */\r\n public render(): JSX.Element {\r\n if (this.isMobile) {\r\n return this._renderMobile();\r\n }\r\n return this._renderDesktop();\r\n }\r\n\r\n private _renderDesktop(): JSX.Element {\r\n const { slots } = this.props;\r\n\r\n return (\r\n
\r\n
\r\n
\r\n {slots.refineMenu}\r\n
\r\n
\r\n
\r\n
\r\n {slots.choiceSummary}\r\n
\r\n
\r\n {slots.sorting}\r\n
\r\n
\r\n
\r\n
\r\n {slots.products}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n );\r\n }\r\n\r\n private _renderMobile(): JSX.Element {\r\n const { slots, resources } = this.props;\r\n const { modalIsOpen } = this.state;\r\n\r\n return (\r\n
\r\n
\r\n
\r\n
\r\n
\r\n {slots.choiceSummary}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n {resources.mobileModalTitle}\r\n \r\n \r\n {resources.mobileModalTitle}\r\n \r\n
{slots.sorting}
\r\n
\r\n
{slots.refineMenu}
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n {slots.products}\r\n
\r\n
\r\n
\r\n );\r\n }\r\n\r\n private _toggleModal(): void {\r\n this.setState({\r\n modalIsOpen: !this.state.modalIsOpen\r\n });\r\n }\r\n\r\n private _updateViewport(): void {\r\n this._viewport = this._getViewport();\r\n\r\n if (this.isMobile && this.state.modalIsOpen && !this.isMobile) {\r\n this._toggleModal();\r\n }\r\n }\r\n\r\n // TODO: if DCR 22025838 is approved then move this logic to SDK and reuse across Starter Kit modules\r\n private _getViewport(): GridSize {\r\n const { context } = this.props;\r\n\r\n // always render in mobile viewport on a mobile device\r\n if (context.request && context.request.device && context.request.device.Type === 'Mobile') {\r\n return 'xs';\r\n }\r\n\r\n if (typeof window !== undefined && window.innerWidth) {\r\n const gridSettings = context.request.gridSettings;\r\n if (gridSettings) {\r\n if (gridSettings.xs && window.innerWidth <= gridSettings.xs.w) {\r\n return 'xs';\r\n } else if (gridSettings.sm && window.innerWidth <= gridSettings.sm.w) {\r\n return 'sm';\r\n } else if (gridSettings.md && window.innerWidth <= gridSettings.md.w) {\r\n return 'md';\r\n } else if (gridSettings.lg && window.innerWidth <= gridSettings.lg.w) {\r\n return 'lg';\r\n } else {\r\n return 'xl';\r\n }\r\n }\r\n }\r\n\r\n return 'xs';\r\n }\r\n}\r\n\r\nexport default SortAndFilterContainer;\r\n","import { IContentBlockViewProps } from '@msdyn365-commerce-modules/content-block/dist/types/modules/content-block/content-block';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport { IClickableContainerLinkData, IContentBlockProps } from '../definition-extensions/content-block.ext.props.autogenerated';\r\n\r\nconst ContentBlockView: React.FC> = props => {\r\n const { contentBlockContainer, imageContainer, detailsContainer, title, text, links, image, config } = props;\r\n const clickableContainerLink = config.clickableContainerLink;\r\n const content = (\r\n \r\n \r\n {image}\r\n \r\n \r\n {title}\r\n {text}\r\n {links}\r\n \r\n \r\n );\r\n if (clickableContainerLink && clickableContainerLink.linkUrl.destinationUrl) {\r\n return (\r\n \r\n {content}\r\n \r\n );\r\n } else {\r\n return content;\r\n }\r\n};\r\n\r\nfunction _target(link: IClickableContainerLinkData): string | undefined {\r\n return (link.openInNewTab) ? '_blank' : undefined;\r\n}\r\n\r\nexport default ContentBlockView;\r\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { IContentBlockViewProps } from '@msdyn365-commerce-modules/content-block/src/modules/content-block/./content-block';\r\nimport { Modal, ModalBody, ModalHeader, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport { RichTextComponent } from '@msdyn365-commerce/core';\r\nimport classnames from 'classnames';\r\nimport * as React from 'react';\r\nimport YoutubeIFrame from '../../../components/youtube-iframe';\r\nimport { IClickableContainerLinkData, IContentBlockProps, ILinksData } from '../definition-extensions/content-block.ext.props.autogenerated';\r\n\r\ninterface IContentBlockState extends React.ComponentState {\r\n isModalOpen: boolean;\r\n}\r\n\r\n/**\r\n *\r\n * ContentBlockView component\r\n * @extends {React.PureComponent, IContentBlockState>}\r\n */\r\nclass ContentBlockView extends React.PureComponent, IContentBlockState> {\r\n constructor(props: IContentBlockViewProps & IContentBlockProps<{}>) {\r\n super(props);\r\n this.state = { isModalOpen: false };\r\n this._toggleModal = this._toggleModal.bind(this);\r\n }\r\n\r\n public render(): JSX.Element | null {\r\n const {\r\n config,\r\n contentBlockContainer,\r\n detailsContainer,\r\n image,\r\n imageContainer,\r\n links,\r\n text,\r\n title\r\n } = this.props;\r\n const clickableContainerLink = config.clickableContainerLink;\r\n const isCustomTheme = config.colorTheme === 'custom' ? true : false;\r\n const colorThemeClass = config.colorTheme && `colortheme__${config.colorTheme}`;\r\n\r\n const content = (\r\n \r\n \r\n {image}\r\n \r\n \r\n {title}\r\n {config.paragraphMobile ? this._renderParagraphs(this.props) : text}\r\n {isCustomTheme ? this._renderCustomLinks(this.props) : links}\r\n {config.youTubeLink && this._renderYouTubeLink(this.props)}\r\n \r\n \r\n );\r\n\r\n if (clickableContainerLink?.linkUrl?.destinationUrl) {\r\n return (\r\n \r\n {content}\r\n \r\n );\r\n } else {\r\n return content;\r\n }\r\n }\r\n\r\n private _target(link: IClickableContainerLinkData): string | undefined {\r\n return (link.openInNewTab) ? '_blank' : undefined;\r\n }\r\n\r\n private _renderParagraphs(props: IContentBlockProps<{}>): JSX.Element | null {\r\n const { paragraph, paragraphMobile } = props.config;\r\n return (\r\n <>\r\n {paragraph && }\r\n {paragraphMobile && }\r\n \r\n );\r\n }\r\n\r\n private _renderCustomLinks(props: IContentBlockProps<{}>): JSX.Element | null {\r\n const {\r\n buttonBackgroundColor,\r\n buttonBorderColor,\r\n buttonTextColor,\r\n links\r\n } = props.config;\r\n\r\n if (links && links.length > 0) {\r\n return (\r\n
\r\n {links.map((cta: ILinksData, index: number) => {\r\n const btnClass = index === 0 ? 'msc-cta__primary' : 'msc-cta__secondary';\r\n return (\r\n \r\n {cta.linkText}\r\n \r\n );\r\n })}\r\n
\r\n );\r\n }\r\n\r\n return null;\r\n }\r\n\r\n private _renderYouTubeLink(props: IContentBlockProps<{}>): JSX.Element | null {\r\n const modalId = `youtube-${props.config.youTubeLink}`;\r\n return (\r\n
\r\n \r\n {props.config.youTubeText || ''}\r\n
\r\n \r\n \r\n \r\n {this.state.isModalOpen &&\r\n \r\n }\r\n \r\n \r\n
\r\n );\r\n }\r\n\r\n private _toggleModal(): void {\r\n this.setState(prevState => ({\r\n isModalOpen: !prevState.isModalOpen\r\n }));\r\n }\r\n}\r\n\r\nexport default ContentBlockView;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport * as Msdyn365 from '@msdyn365-commerce/core';\nimport { BackToTop, getTelemetryObject, ITelemetryContent } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nimport { IBackTopFooterProps } from './back-top-footer.props.autogenerated';\n\n/**\n *\n * BackTopFooter component.\n * @extends {React.PureComponent>}\n */\nclass BackTopFooter extends React.PureComponent> {\n private readonly editProps: Msdyn365.ITextEditProps = {\n requestContext: this.props.context.request,\n onEdit: (event: Msdyn365.ContentEditableEvent) => (this.props.config.backtoTopText = event.target.value)\n };\n\n private readonly telemetryContent?: ITelemetryContent;\n\n constructor(props: IBackTopFooterProps<{}>) {\n super(props);\n this.telemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n }\n\n public render(): JSX.Element | null {\n if (!this.props.config.destination) {\n this.props.telemetry.error('BackToTop.destination has not been provided, module wont render.');\n return null;\n }\n\n return (\n \n );\n }\n}\n\nexport default BackTopFooter;\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport { ICookieValue, IImageSettings, Image } from '@msdyn365-commerce/core';\r\nimport * as React from 'react';\r\nimport Modal from 'reactstrap/lib/Modal';\r\nimport ModalBody from 'reactstrap/lib/ModalBody';\r\nimport { IAgeGateData } from './age-gate.data';\r\nimport { IAgeGateProps } from './age-gate.props.autogenerated';\r\n\r\n// =========================================================================\r\n// MODULE-WIDE CONSTANTS\r\n// =========================================================================\r\nexport const AgeGateCookieName = 'ageGateCookie';\r\n\r\n/**\r\n *\r\n * AgeGate component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass AgeGate extends React.PureComponent> {\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n constructor(props: IAgeGateProps) {\r\n super(props);\r\n this._setCookie = this._setCookie.bind(this);\r\n }\r\n\r\n // =========================================================================\r\n // PUBLIC METHODS\r\n // =========================================================================\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n public render(): JSX.Element | null {\r\n const { config } = this.props;\r\n const cookie = this.props.context.request.cookies;\r\n\r\n // tslint:disable-next-line: no-typeof-undefined\r\n if (typeof window !== 'undefined' && window.location.hostname === 'localhost') {\r\n return null;\r\n }\r\n\r\n try {\r\n cookie.setConsentCookie();\r\n } catch (error) {\r\n console.log(error);\r\n }\r\n\r\n // Check for ageGateCookie to determine if user has already accepted agreement\r\n // Also ensure the code is running in the web context. Don't show the modal in the CMS.\r\n switch (this._isAge21 || process.env.CURRENT_ENVIRONMENT !== 'web' || this._isPrivacyPage) {\r\n case true:\r\n return null;\r\n default:\r\n return (\r\n \r\n \r\n
\r\n {this._newImage}\r\n {this._oldImage}\r\n

{config.ageGateBody}

\r\n

{config.ageGateAgreement}

\r\n \r\n
\r\n {this._privacyRightsLink}\r\n {this._myInformationLink}\r\n
\r\n
\r\n
\r\n \r\n );\r\n }\r\n }\r\n\r\n // =========================================================================\r\n // PRIVATE METHODS\r\n // =========================================================================\r\n\r\n // ------------------------------------------------------\r\n // The privacy page should not show the age gate if the\r\n // privacy link is defined in the config. This checks\r\n // and ensures that the current page that is about to\r\n // recieve an age gate popup is the privacy page\r\n // ------------------------------------------------------\r\n private get _isPrivacyPage(): boolean {\r\n const { privacyLink } = this.props.config;\r\n if (privacyLink) {\r\n // we dont actually care about origin, we only need to extract the\r\n // exact pathname and the object requires an origin\r\n const privacyPath =\r\n new URL(privacyLink.linkUrl.destinationUrl, window.location.origin).pathname;\r\n\r\n return privacyPath === window.location.pathname;\r\n }\r\n return false;\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _closeModal(): void {\r\n this.setState(() => ({\r\n isOpen: false\r\n }));\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _setCookie(): void {\r\n this.props.context.request.cookies.set(AgeGateCookieName, true, { path: '/', maxAge: this.props.config.cookieMaxAge });\r\n this._closeModal();\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private get _isAge21(): boolean {\r\n const cookie = this.props.context.request.cookies;\r\n const ageGateCookie = cookie.get(AgeGateCookieName) as ICookieValue<{}> | undefined;\r\n\r\n if (ageGateCookie === undefined || ageGateCookie.value === 'false') { return false; }\r\n\r\n return (!!ageGateCookie.value);\r\n }\r\n\r\n // =========================================================================\r\n // JSX CONSTRUCTORS\r\n // =========================================================================\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private get _newImage(): JSX.Element | null {\r\n const image = this.props.config.ageGateImage;\r\n const defaultImageSettings: IImageSettings = {\r\n viewports: {\r\n xs: { q: `w=24&h=24&m=6`, w: 0, h: 0 },\r\n lg: { q: `w=24&h=24&m=6`, w: 0, h: 0 }\r\n },\r\n lazyload: true\r\n };\r\n\r\n if (image && image.src) {\r\n return (\r\n \r\n );\r\n } else { return null; }\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private get _oldImage(): JSX.Element | null {\r\n\r\n // If there's a new image, ignore any old image settings\r\n const newImage = this.props.config.ageGateImage;\r\n if (newImage && newImage.src) { return null; }\r\n\r\n // Use the old format: a raw string containing (hopefully) a URL\r\n const image = this.props.config.ageGateLogo;\r\n if (image) {\r\n return (\r\n winery logo\r\n );\r\n } else { return null; }\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _myInformationLink(): JSX.Element | null {\r\n\r\n const link = this.props.config.ageGateMyInformation;\r\n\r\n if (link && link.linkUrl.destinationUrl) {\r\n return (\r\n \r\n {link.linkText}\r\n \r\n );\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _privacyRightsLink(): JSX.Element | null {\r\n\r\n const link = this.props.config.ageGatePrivacyRights;\r\n\r\n if (link && link.linkUrl.destinationUrl) {\r\n return (\r\n \r\n {link.linkText}\r\n \r\n );\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n}\r\n\r\nexport default AgeGate;\r\n","import { IContentBlockViewProps } from '@msdyn365-commerce-modules/content-block/dist/types/modules/content-block/content-block';\r\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport { IClickableContainerLinkData, IContentBlockProps } from '../definition-extensions/content-block.ext.props.autogenerated';\r\n\r\nconst ContentBlockView: React.FC> = props => {\r\n const { contentBlockContainer, imageContainer, detailsContainer, title, text, links, image, config } = props;\r\n const clickableContainerLink = config.clickableContainerLink;\r\n const content = (\r\n \r\n \r\n {image}\r\n \r\n \r\n {title}\r\n {text}\r\n {links}\r\n \r\n \r\n );\r\n if (clickableContainerLink && clickableContainerLink.linkUrl.destinationUrl) {\r\n return (\r\n \r\n {content}\r\n \r\n );\r\n } else {\r\n return content;\r\n }\r\n};\r\n\r\nfunction _target(link: IClickableContainerLinkData): string | undefined {\r\n return (link.openInNewTab) ? '_blank' : undefined;\r\n}\r\n\r\nexport default ContentBlockView;\r\n","import * as React from 'react';\r\n\r\ninterface IVimeoIFrameProps {\r\n vimeoId: string;\r\n}\r\n\r\ndeclare module 'react' {\r\n // tslint:disable-next-line:interface-name\r\n interface HTMLAttributes extends DOMAttributes {\r\n frameborder?: string;\r\n allowfullscreen?: unknown;\r\n }\r\n}\r\n\r\n/**\r\n * class that renders a vimeo iframe\r\n */\r\nclass VimeoIFrame extends React.Component {\r\n public render(): JSX.Element | null {\r\n const {\r\n vimeoId\r\n } = this.props;\r\n const iframeId = `vimeo-${vimeoId}`;\r\n\r\n if (!vimeoId) {\r\n console.warn('Vimeo Video: Missing Vimeo ID');\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default VimeoIFrame;","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar getMethod = require('../internals/get-method');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.es/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = isNullOrUndefined(regexp) ? undefined : getMethod(regexp, MATCH);\n return matcher ? call(matcher, regexp, O) : new RegExp(regexp)[MATCH](toString(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@match\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeMatch, rx, S);\n\n if (res.done) return res.value;\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = toString(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","import * as React from 'react';\r\n\r\ninterface ITourIFrameProps {\r\n trueTourId: string;\r\n}\r\n\r\ndeclare module 'react' {\r\n // tslint:disable-next-line:interface-name\r\n interface HTMLAttributes extends DOMAttributes {\r\n frameborder?: string;\r\n }\r\n}\r\n\r\n/**\r\n * iframe renderer for truetour\r\n */\r\nclass TourIFrame extends React.Component {\r\n public render(): JSX.Element | null {\r\n const {\r\n trueTourId\r\n } = this.props;\r\n const iframeId = `truetour-${trueTourId}`;\r\n\r\n if (!trueTourId) {\r\n console.warn('TrueTour: Missing TrueTour ID');\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default TourIFrame;","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { Module } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\nimport { ICheckoutGooglePayViewProps } from './checkout-google-pay';\n\nconst CheckoutGooglePayView: React.FC = props => {\n const { alert, checkoutGooglePay } = props;\n\n return {alert};\n};\n\nexport default CheckoutGooglePayView;\n","import { Heading, Modal, ModalHeader } from '@msdyn365-commerce-modules/utilities';\r\nimport { getRichTextHtml, IGridSettings, IImageData, IImageSettings, Image, RichText } from '@msdyn365-commerce/core';\r\nimport { observable } from 'mobx';\r\nimport { observer } from 'mobx-react';\r\nimport * as React from 'react';\r\nimport ModalBody from 'reactstrap/lib/ModalBody';\r\nimport { ITextCallToActionLinkData, ITextCategoryData, ITextTitleData } from '../modules/content-with-media/content-with-media.props.autogenerated';\r\nimport CallToAction from './call-to-action';\r\nimport YoutubeIFrame from './youtube-iframe';\r\n\r\n// ==============================================================================\r\n// TYPE DEFINITIONS\r\n// ==============================================================================\r\n\r\ninterface ITextContentBlockProps {\r\n config: {\r\n backgroundImage?: IImageData;\r\n callToActionLink?: ITextCallToActionLinkData;\r\n callToActionYoutube?: string;\r\n callToActionText?: string;\r\n category?: ITextCategoryData;\r\n title?: ITextTitleData;\r\n summary?: string;\r\n copy?: RichText;\r\n className?: string;\r\n contentBlockNoHeadings?: React.ReactNode[];\r\n };\r\n\r\n imageGridSettings?: IGridSettings;\r\n}\r\n\r\n// ==============================================================================\r\n// CLASS DEFINITIONS\r\n// ==============================================================================\r\n\r\n/**\r\n * class definition containing all rendering regarding the text side of the\r\n * generic content block\r\n */\r\n@observer\r\nclass TextContentBlockComponent extends React.Component {\r\n\r\n // ==========================================================================\r\n // FIELDS\r\n // ==========================================================================\r\n\r\n @observable private _isModalOpen: boolean = false;\r\n\r\n // ==========================================================================\r\n // PUBLIC METHODS\r\n // ==========================================================================\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n public constructor(props: ITextContentBlockProps) {\r\n super(props);\r\n\r\n this._modalStateToFalse = this._modalStateToFalse.bind(this);\r\n this._modalStateToTrue = this._modalStateToTrue.bind(this);\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n public render(): JSX.Element {\r\n return (\r\n
\r\n {this._backgroundImage}\r\n {this._category}\r\n {this._title}\r\n {this._summary}\r\n {this._copy}\r\n {this._callToAction}\r\n
\r\n );\r\n }\r\n\r\n // ==========================================================================\r\n // COMPONENT EVENTS\r\n // ==========================================================================\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private _modalState(newState: boolean): void {\r\n this._isModalOpen = newState;\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // extrapolated _modalState for use in a callback\r\n // -----------------------------------------------------------\r\n private _modalStateToFalse(): void {\r\n this._modalState(false);\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private _modalStateToTrue(): void {\r\n this._modalState(true);\r\n }\r\n\r\n // ==========================================================================\r\n // JSX CONSTRUCTORS\r\n // ==========================================================================\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _copy(): JSX.Element | null {\r\n const { copy, contentBlockNoHeadings } = this.props.config;\r\n if (copy) {\r\n if (contentBlockNoHeadings) {\r\n return (\r\n <>\r\n \r\n <>{contentBlockNoHeadings}\r\n \r\n );\r\n }\r\n return (\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n \r\n\r\n );\r\n }\r\n if (contentBlockNoHeadings) {\r\n return (\r\n <>{contentBlockNoHeadings}\r\n );\r\n }\r\n else { return null; }\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _title(): JSX.Element | null {\r\n const title = this.props.config.title;\r\n\r\n if (title && title?.text) {\r\n return (\r\n \r\n );\r\n } else { return null; }\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _summary(): JSX.Element | null {\r\n const summary = this.props.config.summary;\r\n\r\n if (summary) {\r\n return (

{summary}

);\r\n } else { return null; }\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _category(): JSX.Element | null {\r\n const category = this.props.config.category;\r\n\r\n if (category && category?.text) {\r\n return (\r\n \r\n );\r\n } else { return null; }\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _backgroundImage(): JSX.Element | null {\r\n const image = this.props.config.backgroundImage;\r\n\r\n const defaultImageSettings: IImageSettings = {\r\n viewports: {\r\n xs: { q: `w=24&h=24&m=6`, w: 0, h: 0 },\r\n lg: { q: `w=24&h=24&m=6`, w: 0, h: 0 }\r\n },\r\n lazyload: true\r\n };\r\n\r\n if (image) {\r\n return (\r\n \r\n );\r\n } else { return null; }\r\n }\r\n\r\n // -----------------------------------------------------------\r\n /**\r\n * @returns anchor that sends you a link or clickable div that opens a modal\r\n */\r\n // -----------------------------------------------------------\r\n private get _callToAction(): JSX.Element | null {\r\n const {\r\n callToActionYoutube,\r\n callToActionLink: ctaLink\r\n } = this.props.config;\r\n\r\n // If there's a YouTube ID, assume it's in a modal\r\n if (callToActionYoutube) {\r\n return this._callToActionInModal;\r\n }\r\n\r\n // If there's a link (and not YouTube ID), display the CTA as a link\r\n if (ctaLink && ctaLink.linkUrl.destinationUrl && ctaLink.linkText) {\r\n return (\r\n \r\n );\r\n }\r\n\r\n return null;\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _callToActionInModal(): JSX.Element {\r\n const {\r\n callToActionText,\r\n callToActionYoutube\r\n } = this.props.config;\r\n const modalId = `youtube-${callToActionYoutube}`;\r\n\r\n return (\r\n
\r\n \r\n {callToActionText}\r\n
\r\n \r\n \r\n \r\n {this._isModalOpen &&\r\n \r\n }\r\n \r\n \r\n
\r\n );\r\n\r\n }\r\n}\r\n\r\nexport default TextContentBlockComponent;","import { IGridSettings, IImageData, IImageSettings, Image } from '@msdyn365-commerce/core';\r\nimport * as React from 'react';\r\nimport TrueTourIFrame from '../../components/truetour-iframe';\r\nimport VimeoIFrame from '../../components/vimeo-iframe';\r\nimport { IContentWithMediaConfig } from './content-with-media.props.autogenerated';\r\n\r\n// ==============================================================================\r\n// TYPE DEFINITIONS\r\n// ==============================================================================\r\n\r\ninterface IMediaContentBlockProps {\r\n config: IContentWithMediaConfig;\r\n imageGridSettings?: IGridSettings;\r\n}\r\n\r\n// ==============================================================================\r\n// CLASS DEFINITIONS\r\n// ==============================================================================\r\n\r\n/**\r\n * class responsible for the rendering of media content as an image or from vimeo\r\n */\r\nclass MediaContentBlockComponent extends React.Component {\r\n\r\n // ==========================================================================\r\n // PUBLIC METHODS\r\n // ==========================================================================\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n public render(): JSX.Element {\r\n return (\r\n
\r\n {this._media}\r\n
\r\n );\r\n }\r\n\r\n // ==========================================================================\r\n // JSX CONSTRUCTORS\r\n // ==========================================================================\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _media(): JSX.Element | null {\r\n const {\r\n mediaDisplayImage,\r\n mediaDisplayVimeo,\r\n mediaDisplayTrueTour\r\n } = this.props.config;\r\n\r\n if (mediaDisplayImage) {\r\n return this._imageMedia;\r\n }\r\n\r\n if (mediaDisplayVimeo) {\r\n return this._vimeoMedia;\r\n }\r\n\r\n if (mediaDisplayTrueTour) {\r\n return this._tourMedia;\r\n }\r\n\r\n console.warn('MEDIA DISPLAY IS NOT SET');\r\n return null;\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _vimeoMedia(): JSX.Element {\r\n const {\r\n mediaDisplayVimeo\r\n } = this.props.config;\r\n\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _tourMedia(): JSX.Element {\r\n const {\r\n mediaDisplayTrueTour\r\n } = this.props.config;\r\n\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _imageMedia(): JSX.Element {\r\n const {\r\n mediaDisplayImage,\r\n mediaDisplayBackdrop\r\n } = this.props.config;\r\n\r\n return (\r\n
\r\n {this._constructImage(mediaDisplayImage)}\r\n {this._constructImage(mediaDisplayBackdrop)}\r\n
\r\n );\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private _constructImage(image?: IImageData): JSX.Element | null {\r\n if (image) {\r\n const defaultImageSettings: IImageSettings = {\r\n viewports: {\r\n xs: { q: `w=24&h=24&m=6`, w: 0, h: 0 },\r\n lg: { q: `w=24&h=24&m=6`, w: 0, h: 0 }\r\n },\r\n lazyload: true\r\n };\r\n\r\n return (\r\n \r\n );\r\n }\r\n\r\n // No image to construct\r\n return null;\r\n }\r\n}\r\n\r\nexport default MediaContentBlockComponent;","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\n\r\nimport * as React from 'react';\r\n\r\nimport classname from 'classnames';\r\nimport TextContentBlockComponent from '../../components/text-content-block';\r\nimport { IContentWithMediaData } from './content-with-media.data';\r\nimport { IContentWithMediaProps } from './content-with-media.props.autogenerated';\r\nimport MediaContentBlockComponent from './media-content-block';\r\n\r\n// ==============================================================================\r\n// CLASS DEFINITIONS\r\n// ==============================================================================\r\n/**\r\n * ContentWithMedia component\r\n * @extends {React.Component>}\r\n */\r\nclass ContentWithMedia extends React.Component> {\r\n\r\n // ==============================================================================\r\n // PUBLIC METHODS\r\n // ==============================================================================\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n public render(): JSX.Element {\r\n const { className } = this.props.config;\r\n\r\n return (\r\n
\r\n
\r\n {this._leftColumn}\r\n
\r\n
\r\n {this._rightColumn}\r\n
\r\n
\r\n );\r\n }\r\n\r\n // ==========================================================================\r\n // JSX CONSTRUCTORS\r\n // ==========================================================================\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _leftColumn(): JSX.Element {\r\n const { orientation } = this.props.config;\r\n return (orientation === 'textLeft') ? this._textColumn : this._mediaColumn;\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _rightColumn(): JSX.Element {\r\n const { orientation } = this.props.config;\r\n return (orientation === 'textRight') ? this._textColumn : this._mediaColumn;\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _mediaColumn(): JSX.Element {\r\n return ();\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _textColumn(): JSX.Element {\r\n\r\n const config = this.props.config;\r\n const contentBlockNoHeadings = this.props.slots.contentBlockNoHeadings;\r\n\r\n const contentBlockConfig = {\r\n backgroundImage: config.textBackgroundImage,\r\n callToActionLink: config.textCallToActionLink,\r\n callToActionText: config.textCallToActionText,\r\n callToActionYoutube: config.textCallToActionYoutube,\r\n category: config.textCategory,\r\n className: 'content-with-media-text',\r\n copy: config.textCopy,\r\n summary: config.textSummary,\r\n title: config.textTitle,\r\n contentBlockNoHeadings:contentBlockNoHeadings\r\n };\r\n\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default ContentWithMedia;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { StringExtensions } from '@msdyn365-commerce-modules/retail-actions';\nimport {\n getTelemetryObject,\n Heading,\n IComponentNodeProps,\n INodeProps,\n ISingleSlideCarouselProps,\n ITelemetryContent,\n NodeTag,\n SingleSlideCarousel\n} from '@msdyn365-commerce-modules/utilities';\nimport classnames from 'classnames';\nimport * as React from 'react';\n\nimport { ITileListProps, ITitleData } from './tile-list.props.autogenerated';\n\n/**\n * Tile-list view props.\n */\nexport interface ITileListViewProps extends ITileListProps<{}> {\n title?: React.ReactNode;\n tiles: React.ReactNode[];\n tileItemContainer: INodeProps;\n tileListContainer: INodeProps;\n tileListHeading: INodeProps;\n singleSlideCarouselComponentProps: INodeProps;\n}\n\n/**\n *\n * TileList component.\n * @extends {React.PureComponent>}\n */\nexport class TileList extends React.PureComponent> {\n private readonly _telemetryContent: ITelemetryContent = getTelemetryObject(\n this.props.context.request.telemetryPageName!,\n this.props.friendlyName,\n this.props.telemetry\n );\n private static _createHeading(heading?: ITitleData): React.ReactNode | null {\n if (!heading || !heading.text || StringExtensions.isNullOrWhitespace(heading.text)) {\n return null;\n }\n return ;\n }\n public constructor(props: ITileListProps<{}>) {\n super(props);\n }\n\n public render(): JSX.Element | null {\n const { resources } = this.props;\n const { title, className } = this.props.config;\n const propsCarousel: IComponentNodeProps = {\n tag: SingleSlideCarousel,\n className: this.props.config.className ?? '',\n flipperPrevLabel: resources.flipperPrevious,\n flipperNextLabel: resources.flipperNext,\n parentId: this.props.id,\n telemetryContent: this._telemetryContent,\n vertical: false\n };\n\n const viewProps = {\n ...this.props,\n title: TileList._createHeading(title),\n singleSlideCarouselComponentProps: propsCarousel,\n tileItemContainer: {\n tag: 'li' as NodeTag,\n className: 'ms-tile__item',\n role: 'listitem'\n },\n tileListContainer: { className: classnames('ms-tile-list', className) },\n tileListHeading: { className: 'ms-tile-list__heading' },\n tiles: this.props.slots.content\n };\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n}\n\nexport default TileList;\n","/*---------------------------------------------------------------------------------------------\r\n * Copyright (c) Microsoft Corporation. All rights reserved.\r\n * Licensed under the MIT License. See License.txt in the project root for license information.\r\n *--------------------------------------------------------------------------------------------*/\r\nimport { IContentBlockViewProps } from '@msdyn365-commerce-modules/content-block/src/modules/content-block/./content-block';\r\nimport { Modal, ModalBody, ModalHeader, Module, Node } from '@msdyn365-commerce-modules/utilities';\r\nimport { RichTextComponent } from '@msdyn365-commerce/core';\r\nimport classnames from 'classnames';\r\nimport * as React from 'react';\r\nimport YoutubeIFrame from '../../../components/youtube-iframe';\r\nimport { IClickableContainerLinkData, IContentBlockProps, ILinksData } from '../definition-extensions/content-block.ext.props.autogenerated';\r\n\r\ninterface IContentBlockState extends React.ComponentState {\r\n isModalOpen: boolean;\r\n}\r\n\r\n/**\r\n *\r\n * ContentBlockView component\r\n * @extends {React.PureComponent, IContentBlockState>}\r\n */\r\nclass ContentBlockView extends React.PureComponent, IContentBlockState> {\r\n constructor(props: IContentBlockViewProps & IContentBlockProps<{}>) {\r\n super(props);\r\n this.state = { isModalOpen: false };\r\n this._toggleModal = this._toggleModal.bind(this);\r\n }\r\n\r\n public render(): JSX.Element | null {\r\n const {\r\n config,\r\n contentBlockContainer,\r\n detailsContainer,\r\n image,\r\n imageContainer,\r\n links,\r\n text,\r\n title\r\n } = this.props;\r\n const clickableContainerLink = config.clickableContainerLink;\r\n const isCustomTheme = config.colorTheme === 'custom' ? true : false;\r\n const colorThemeClass = config.colorTheme && `colortheme__${config.colorTheme}`;\r\n\r\n const content = (\r\n \r\n \r\n {image}\r\n \r\n \r\n {title}\r\n {config.paragraphMobile ? this._renderParagraphs(this.props) : text}\r\n {isCustomTheme ? this._renderCustomLinks(this.props) : links}\r\n {config.youTubeLink && this._renderYouTubeLink(this.props)}\r\n \r\n \r\n );\r\n\r\n if (clickableContainerLink?.linkUrl?.destinationUrl) {\r\n return (\r\n \r\n {content}\r\n \r\n );\r\n } else {\r\n return content;\r\n }\r\n }\r\n\r\n private _target(link: IClickableContainerLinkData): string | undefined {\r\n return (link.openInNewTab) ? '_blank' : undefined;\r\n }\r\n\r\n private _renderParagraphs(props: IContentBlockProps<{}>): JSX.Element | null {\r\n const { paragraph, paragraphMobile } = props.config;\r\n return (\r\n <>\r\n {paragraph && }\r\n {paragraphMobile && }\r\n \r\n );\r\n }\r\n\r\n private _renderCustomLinks(props: IContentBlockProps<{}>): JSX.Element | null {\r\n const {\r\n buttonBackgroundColor,\r\n buttonBorderColor,\r\n buttonTextColor,\r\n links\r\n } = props.config;\r\n\r\n if (links && links.length > 0) {\r\n return (\r\n
\r\n {links.map((cta: ILinksData, index: number) => {\r\n const btnClass = index === 0 ? 'msc-cta__primary' : 'msc-cta__secondary';\r\n return (\r\n \r\n {cta.linkText}\r\n \r\n );\r\n })}\r\n
\r\n );\r\n }\r\n\r\n return null;\r\n }\r\n\r\n private _renderYouTubeLink(props: IContentBlockProps<{}>): JSX.Element | null {\r\n const modalId = `youtube-${props.config.youTubeLink}`;\r\n return (\r\n
\r\n \r\n {props.config.youTubeText || ''}\r\n
\r\n \r\n \r\n \r\n {this.state.isModalOpen &&\r\n \r\n }\r\n \r\n \r\n
\r\n );\r\n }\r\n\r\n private _toggleModal(): void {\r\n this.setState(prevState => ({\r\n isModalOpen: !prevState.isModalOpen\r\n }));\r\n }\r\n}\r\n\r\nexport default ContentBlockView;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { IHistogramItemViewProps, IRatingsHistogramViewProps } from '@msdyn365-commerce-modules/ratings-reviews';\nimport { Module, Node } from '@msdyn365-commerce-modules/utilities';\nimport * as React from 'react';\n\nconst RatingsHistogramView: React.FC = props => {\n const { heading, histogramItems, histogramProps, moduleProps } = props;\n return (\n \n {heading}\n \n {histogramItems.map(item => {\n return histogramItem(item);\n })}\n \n \n );\n};\n\nconst histogramItem = (props: IHistogramItemViewProps) => {\n return (\n \n {props.starLabel}\n {props.bar}\n {props.percentage}\n \n );\n};\n\nexport default RatingsHistogramView;\n","import { Button } from '@msdyn365-commerce-modules/utilities';\r\nimport classnames from 'classnames';\r\nimport * as React from 'react';\r\n\r\nexport type CallToActionLayout = 'button' | 'glyphOnly' | 'noGlyph';\r\nexport type CallToActionMotion = 'separate' | 'revelio';\r\nexport type CallToActionGlyphPosition = 'start' | 'end';\r\n\r\ninterface ICallToAction {\r\n title: string;\r\n href?: string;\r\n openInNewTab?: boolean;\r\n 'aria-label'?: string;\r\n className?: string;\r\n color?: string;\r\n glyph?: string;\r\n layout: CallToActionLayout;\r\n glyphPosition?: CallToActionGlyphPosition;\r\n disabled?: boolean;\r\n onClick?(e: React.MouseEvent): void;\r\n}\r\n\r\nfunction createInnerCTAFragment(\r\n glyphClassName: string,\r\n title: string,\r\n ctaLayout: CallToActionLayout,\r\n glyphPosition?: CallToActionGlyphPosition\r\n): React.ReactFragment {\r\n if (ctaLayout === 'noGlyph') {\r\n return {title};\r\n }\r\n\r\n if (ctaLayout === 'glyphOnly') {\r\n return