{"version":3,"sources":["webpack:///./src/modules/cookbook-tagline/cookbook-tagline.tsx?1e45","webpack:///src/modules/notifications-list/notifications-list.view.tsx?6e9c","webpack:///./src/modules/copyright/copyright.tsx?0bcb","webpack:///src/modules/place-holder-for-container-preview/place-holder-for-container-preview.tsx?b150","webpack:///src/modules/default-page/default-page.tsx?0e08","webpack:///src/modules/spacer/spacer.tsx?3b03","webpack:///./src/modules/link-list/link-list.tsx?0ff7","webpack:///./src/modules/mailing-list/mailing-input-group.tsx?d1e4","webpack:///./src/modules/mailing-list/mailing-form.tsx?8e35","webpack:///./src/modules/mailing-list/mailing-list.tsx?749b","webpack:///src/modules/default-page-summary/default-page-summary.tsx?b254","webpack:///src/modules/spacer/spacer.view.tsx?bd25","webpack:///./src/modules/single-product-container/single-product-container.tsx?fc63","webpack:///./src/themes/emp/emp.tsx?208f","webpack:///./src/modules/logo-14hands/logo-14hands.data-logo.ts?fd08","webpack:///./src/modules/logo-14hands/logo-14hands.tsx?6329","webpack:///src/modules/notifications-list/notifications-list.tsx?8a0a","webpack:///./src/modules/product-link/product-link.tsx?c759","webpack:///./src/modules/cart-affiliations-maintainer/cart-affiliations-maintainer.tsx?7f37","webpack:///./src/modules/event-description/event-description.tsx?e41c"],"names":["CookbookTagline","React","constructor","_productCookbookTagLine","render","content","this","props","data","productSpecificationData","result","productAttribute","filter","attribute","Name","toUpperCase","length","TextValue","className","RichTextComponent","text","NotificationsListView","Module","Object","assign","container","notificationsList","Copyright","cssName","config","_copyrightTextFormatted","copyrightText","dateToUse","Date","getFullYear","toString","PlaceholderForContainerPreviewComponent","DefaultPageContainer","super","slots","telemetry","id","typeName","skipToMainText","log","LogLevel","Debug","values","context","app","platform","tabIndexSkipToMain","isEditorialMode","actionContext","requestContext","href","tabIndex","header","map","children","subheader","primary","subfooter","footer","Spacer","spacerClass","spacerHeight","viewProps","_objectSpread","classnames","renderView","LinkList","classname","links","_renderContent","currentPage","request","url","requestUrl","pathname","cta","index","_cta$linkUrl","isActive","linkUrl","destinationUrl","split","key","active","title","linkText","ariaLabel","target","openInNewTab","undefined","rel","MailingInputGroup","_internalValue","initialValue","_onInputChange","bind","_onBlur","label","type","value","onChange","onBlur","_renderValidation","onLoseFirstFocus","event","onValueChange","isValid","_validationMessage","validationMessage","__decorate","observable","observer","MailingFormComponent","_firstName","_zipCode","_email","_emailRegex","_zipCodeRegex","_onSubmitForm","_onFirstNameChange","_onZipCodeChange","_onEmailChange","_lostFocus","errorMessage","_isButtonDisabled","onClick","disabled","name","beenBlurred","_testForRequirement","code","_testForRegex","email","console","warn","onSubmit","firstName","zipCode","field","setState","regex","test","MailingList","_onSubmit","_formPage","_backgroundImage","userInfo","confirmationURL","image","imageURL","defaultImageSettings","viewports","xs","q","w","h","lg","lazyload","Image","gridSettings","imageSettings","marketingContactSupport","marketingDescription","_mailingListColType","dangerouslySetInnerHTML","getRichTextHtml","DefaultPageSummary","pageSummary","Error","description","keywords","sharingImageUrl","faviconUrl","canonicalUrl","sharingImage","src","pageTitle","_constructPageTitle","HtmlHeadInclude","disableOgTags","_renderOgTags","disableTwitterTags","_renderTwitterTags","property","moduleConfig","ignoreTitleSuffixPrefix","appConfig","pageTitlePrefix","pageTitleSuffix","SpacerView","renderModuleAttributes","SingleProductContainer","productAttributes","hasSlots","Emp","dataSvg","viewBox","paths","hover","d","Logo14hands","_renderLogo","link","_renderSvg","path","_getActivePath","NotificationComponentsList","Component","feed","ObjectExtensions","isNullOrUndefined","minTopOffset","maxTopOffset","_stickyConfiguration","_notificationsComponentList","state","notificationsComponentList","_handleTopUpdate","_getCurrentTopPosition","shouldComponentUpdate","nextProps","nextState","isPropsDifferent","maxNotificationsCount","isStateDifferent","top","every","find","otherValue","notification","componentDidMount","NotificationComponentsListsManager","subscribe","_instanceId","Random","Guid","generateGuid","MsDyn365","isBrowser","window","addEventListener","componentWillUnmount","unsubscribe","forEach","component","_component$props$noti","events","getValue","NotificationEvents","RemovedFromList","removeEventListener","addNotificationComponent","notificationComponent","_notificationComponen","instanceId","handler","_notificationComponen2","newList","unshift","_className","moduleProps","style","_renderNotificationsList","hasNotifications","ArrayExtensions","hasElements","containerClassName","createElement","maxHeight","ComponentClass","componentClass","configuration","pageYOffset","Math","max","min","newTop","ProductLink","_productLinkClick","e","location","parent","currentTarget","productUrl","product","status","getProductUrlSync","CartAffiliationsMaintainer","isLoggedIn","user","customerAccountNumber","isAuthenticated","_runAffiliationCheck","currentAffils","customer","CustomerAffiliations","cachedAffils","_cachedAffiliations","_cacheAffiliations","_updateCart","curAffil","cachedAffil","RecordId","_cart$cart$CartLines","cart","totalItemsInCart","firstLine","CartLines","line","updateCartLineQuantity","cartLineId","LineId","newQuantity","Quantity","isInitialized","initialize","setTimeout","async","cartInput","GlobalStateInput","BaseCartState","apiSettings","update","refreshCart","affilIds","affil","localStorage","setItem","AFFILIATION_LOCATION","JSON","stringify","affiliationStr","getItem","parse","EventDescription","eventDescription","intro","body","_renderEventDescription"],"mappings":"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","file":"static/js/13.7ea2cfe3ce002775f9ec.chunk.js","sourcesContent":["/*---------------------------------------------------------------------------------------------\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 { RichTextComponent } from '@msdyn365-commerce/core';\r\nimport * as React from 'react';\r\n\r\nimport { ICookbookTaglineData } from './cookbook-tagline.data';\r\nimport { ICookbookTaglineProps } from './cookbook-tagline.props.autogenerated';\r\n\r\n/**\r\n *\r\n * CookbookTagline component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass CookbookTagline extends React.PureComponent<\r\n ICookbookTaglineProps\r\n> {\r\n private _productCookbookTagLine: string = 'COOKBOOKTAGLINE';\r\n public render(): JSX.Element | null {\r\n const content: ICookbookTaglineData = this.props.data;\r\n if (\r\n !(\r\n content &&\r\n content.productSpecificationData &&\r\n content.productSpecificationData.result\r\n )\r\n ) {\r\n return null;\r\n }\r\n const productAttributes = content.productSpecificationData.result;\r\n const productAttribute = productAttributes.filter(\r\n attribute =>\r\n attribute.Name!.toUpperCase() === this._productCookbookTagLine\r\n );\r\n if (\r\n productAttribute &&\r\n productAttribute.length &&\r\n productAttribute[0].TextValue\r\n ) {\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n return null;\r\n }\r\n}\r\n\r\nexport default CookbookTagline;\r\n","/*!\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';\n\nimport { INotificationsListViewProps } from './notifications-list';\n\nexport const NotificationsListView: React.FC = props => {\n return {props.notificationsList};\n};\n\nexport default NotificationsListView;\n","// ==============================================================================\r\n// ==============================================================================\r\nimport * as React from 'react';\r\n\r\nimport { ICopyrightData } from './copyright.data';\r\nimport { ICopyrightProps } from './copyright.props.autogenerated';\r\n\r\n// ==============================================================================\r\n// CLASS DEFINITION\r\n// ==============================================================================\r\n/**\r\n * Copyright component\r\n * @extends {React.PureComponent>}\r\n */\r\nclass Copyright extends React.PureComponent> {\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 { cssName } = this.props.config;\r\n\r\n return (\r\n
\r\n {this._copyrightTextFormatted}\r\n
\r\n );\r\n }\r\n\r\n // -----------------------------------------------------------\r\n // -----------------------------------------------------------\r\n private get _copyrightTextFormatted(): JSX.Element {\r\n const {\r\n copyrightText,\r\n } = this.props.config;\r\n\r\n const dateToUse = new Date().getFullYear().toString();\r\n\r\n return (\r\n \r\n © {dateToUse} {copyrightText}\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default Copyright;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { PlaceholderForContainerPreviewComponent } from '@msdyn365-commerce/core';\n\nexport default PlaceholderForContainerPreviewComponent;\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { LogLevel } from '@msdyn365-commerce/telemetry-internal';\nimport * as React from 'react';\nimport { isEditorialMode } from '@msdyn365-commerce/core-internal';\nimport { IDefaultPageProps } from './default-page.props.autogenerated';\n\n/**\n *\n * CoreComponent component\n * @extends {React.PureComponent}\n */\nclass DefaultPageContainer extends React.PureComponent> {\n constructor(props: IDefaultPageProps<{}>) {\n super(props);\n }\n\n public render(): JSX.Element {\n const { slots, telemetry, id, typeName } = this.props;\n\n let skipToMainText = this.props.config && this.props.config.skipToMainText;\n telemetry.log(LogLevel.Debug, \"DefaultPageContainer rendering for '{id}/{typeName}'\", { values: [id, typeName] });\n\n if (!skipToMainText) {\n skipToMainText =\n this.props.context.app && this.props.context.app.platform ? this.props.context.app.platform.skipToMainText : '';\n }\n\n const tabIndexSkipToMain = isEditorialMode(this.props.context.actionContext.requestContext) ? -1 : 0;\n\n return (\n \n \n {skipToMainText}\n \n
\n {slots &&\n slots.header &&\n slots.header.map((children: React.ReactNode) => {\n return children;\n })}\n
\n {slots && slots.subheader && (\n
\n {slots.subheader.map((children: React.ReactNode) => {\n return children;\n })}\n
\n )}\n
\n {slots &&\n slots.primary &&\n slots.primary.map((children: React.ReactNode) => {\n return children;\n })}\n
\n {slots && slots.subfooter && (\n
\n {slots.subfooter.map((children: React.ReactNode) => {\n return children;\n })}\n
\n )}\n
\n {slots &&\n slots.footer &&\n slots.footer.map((children: React.ReactNode) => {\n return children;\n })}\n
\n
\n );\n }\n}\n\nexport default DefaultPageContainer;\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\nimport { ISpacerProps } from './spacer.props.autogenerated';\n\nexport interface ISpacerViewProps extends ISpacerProps<{}> {\n className?: string;\n}\n\n/**\n *\n * SpacerModule component.\n * @extends {React.PureComponent}\n */\nclass Spacer extends React.PureComponent> {\n public render(): JSX.Element | null {\n const { className } = this.props.config;\n const spacerClass = this.props.config.spacerHeight ? `ms-${this.props.config.spacerHeight}` : 'ms-spacer';\n const viewProps = {\n // Context for telemetry and raw data for C1 to do customization\n // Including computed data, state data and methods\n ...this.props,\n className: (className && classnames(spacerClass, className)) || spacerClass\n };\n\n return this.props.renderView(viewProps) as React.ReactElement;\n }\n}\n\nexport default Spacer;\n","import classname from 'classnames';\r\nimport * as React from 'react';\r\nimport { ILinkData } from '../clickable-container/clickable-container.props.autogenerated';\r\nimport { ILinkListProps } from './link-list.props.autogenerated';\r\n\r\n/**\r\n *\r\n * LinkList component\r\n * @extends {React.Component>}\r\n */\r\nclass LinkList extends React.Component> {\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n public render(): JSX.Element {\r\n const { config } = this.props;\r\n return (\r\n
\r\n {config.links && this._renderContent(config.links)}\r\n
\r\n );\r\n }\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n private _renderContent(links: ILinkData[]): JSX.Element {\r\n const currentPage = this.props.context.request.url.requestUrl.pathname;\r\n return (\r\n
\r\n {links.map((cta: ILinkData, index: number) => {\r\n const isActive = cta.linkUrl?.destinationUrl.split('?')[0] === currentPage;\r\n return \r\n {cta.linkText}\r\n ;\r\n })}\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default LinkList;\r\n","import { observable } from 'mobx';\r\nimport { observer } from 'mobx-react';\r\nimport * as React from 'react';\r\n\r\n// ==============================================================================\r\n// TYPE DEFINITIONS\r\n// ==============================================================================\r\n\r\ninterface IMailingInputGroupProps {\r\n label: string;\r\n isValid?: boolean;\r\n validationMessage?: string;\r\n initialValue: string;\r\n onValueChange(newValue: string): void;\r\n onLoseFirstFocus(labelBlurred: string): void;\r\n}\r\n\r\n// ==============================================================================\r\n// CLASS DEFINITIONS\r\n// ==============================================================================\r\n\r\n/**\r\n * class definition for a control group for mailing\r\n */\r\n@observer\r\nexport class MailingInputGroup extends React.Component {\r\n\r\n // ==========================================================================\r\n // FIELDS\r\n // ==========================================================================\r\n\r\n @observable private _internalValue: string = '';\r\n\r\n // ==========================================================================\r\n // PUBLIC METHODS\r\n // ==========================================================================\r\n\r\n public constructor(props: IMailingInputGroupProps) {\r\n super(props);\r\n this._internalValue = props.initialValue;\r\n\r\n this._onInputChange = this._onInputChange.bind(this);\r\n this._onBlur = this._onBlur.bind(this);\r\n }\r\n\r\n public render(): JSX.Element {\r\n return (\r\n
\r\n \r\n \r\n {this._renderValidation()}\r\n
\r\n );\r\n }\r\n\r\n // ==========================================================================\r\n // COMPONENT EVENTS\r\n // ==========================================================================\r\n\r\n private _onBlur(): void {\r\n this.props.onLoseFirstFocus(this.props.label);\r\n }\r\n\r\n private _onInputChange(event: React.ChangeEvent): void {\r\n this._internalValue = event.target.value;\r\n this.props.onValueChange(event.target.value);\r\n }\r\n\r\n // ==========================================================================\r\n // PRIVATE METHODS\r\n // ==========================================================================\r\n\r\n private _renderValidation(): JSX.Element | void {\r\n if (!this.props.isValid && this.props.isValid !== undefined) {\r\n return (\r\n

\r\n {this._validationMessage}\r\n

\r\n );\r\n }\r\n }\r\n\r\n private get _validationMessage(): string {\r\n return (this.props.validationMessage) ? this.props.validationMessage : 'Field is required';\r\n }\r\n\r\n}","import { observable } from 'mobx';\r\nimport { observer } from 'mobx-react';\r\nimport * as React from 'react';\r\nimport { MailingInputGroup } from './mailing-input-group';\r\n\r\n// ==============================================================================\r\n// TYPE DEFINITIONS\r\n// ==============================================================================\r\n\r\nexport type mailingFormUserInfo = {\r\n firstName: string;\r\n zipCode: string;\r\n email: string;\r\n};\r\n\r\ntype validationField = {\r\n value: string;\r\n label: string;\r\n isValid?: boolean;\r\n errorMessage?: string;\r\n beenBlurred?: boolean;\r\n};\r\n\r\ninterface IMailingFormComponentProps {\r\n onSubmit(userInfo: mailingFormUserInfo): unknown;\r\n}\r\n\r\n// ==============================================================================\r\n// CLASS DEFINITIONS\r\n// ==============================================================================\r\n\r\n/**\r\n * component responsible for gathering user information for mailing\r\n */\r\n@observer\r\nexport class MailingFormComponent extends React.Component {\r\n\r\n // ==========================================================================\r\n // FIELDS\r\n // ==========================================================================\r\n\r\n @observable private _firstName: validationField = {\r\n label: 'First Name*',\r\n value: ''\r\n };\r\n\r\n @observable private _zipCode: validationField = {\r\n label: 'Zip Code*',\r\n value: ''\r\n };\r\n @observable private _email: validationField = {\r\n label: 'Email*',\r\n value: ''\r\n };\r\n\r\n private _emailRegex: RegExp = /^[-a-z0-9!#$%&'*+/=?^_`{|}~]+(?:\\.[-a-z0-9!#$%&'*+/=?^_`{|}~]+)*@(?:[a-z0-9]+(?:-+[a-z0-9]+)*\\.)+(?:xn--[a-z0-9]+|[a-z]{2,16})$/i;\r\n private _zipCodeRegex: RegExp = /^[0-9]{5}(?:-[0-9]{4})?$/;\r\n\r\n // ==========================================================================\r\n // PUBLIC METHODS\r\n // ==========================================================================\r\n\r\n public constructor(props: IMailingFormComponentProps) {\r\n super(props);\r\n\r\n this._onSubmitForm = this._onSubmitForm.bind(this);\r\n\r\n this._onFirstNameChange = this._onFirstNameChange.bind(this);\r\n this._onZipCodeChange = this._onZipCodeChange.bind(this);\r\n this._onEmailChange = this._onEmailChange.bind(this);\r\n this._lostFocus = this._lostFocus.bind(this);\r\n }\r\n\r\n public render(): JSX.Element {\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n SUBMIT\r\n \r\n
\r\n );\r\n }\r\n\r\n // ==========================================================================\r\n // COMPONENT EVENTS\r\n //\r\n // ALL EVENTS ARE ALSO TIED TO THEIR RESPECTIVE VALIDATORS\r\n // ==========================================================================\r\n\r\n private _onFirstNameChange(name: string): void {\r\n this._firstName.value = name;\r\n if (!this._firstName.beenBlurred) { return; }\r\n this._testForRequirement(this._firstName, 'Please enter your first name.');\r\n }\r\n\r\n private _onZipCodeChange(code: string): void {\r\n this._zipCode.value = code;\r\n\r\n if (!this._zipCode.beenBlurred) { return; }\r\n this._testForRequirement(this._zipCode, 'Please enter your zip code.');\r\n if (this._zipCode.isValid) {\r\n this._testForRegex(this._zipCode, this._zipCodeRegex, 'Please enter a valid Zip Code.');\r\n }\r\n }\r\n private _onEmailChange(email: string): void {\r\n this._email.value = email;\r\n\r\n if (!this._email.beenBlurred) { return; }\r\n this._testForRequirement(this._email, 'Please enter your email address.');\r\n if (this._email.isValid) {\r\n this._testForRegex(this._email, this._emailRegex, 'Please enter a valid email address.');\r\n }\r\n }\r\n\r\n // ==========================================================================\r\n // PRIVATE METHODS\r\n // ==========================================================================\r\n\r\n /**\r\n * determines if the button is conditionally disabled currently\r\n */\r\n private _isButtonDisabled(): boolean {\r\n\r\n // button will only be disabled if all input fields are considered invalid\r\n // or undefined (meaning not filled out or touched)\r\n return !(this._firstName.isValid && this._zipCode.isValid && this._email.isValid);\r\n }\r\n\r\n /**\r\n * this method checks which field was blurred and sets the beenBlurred\r\n * boolean to true, meaning that it was noticed by the user and can now show\r\n * error messages\r\n *\r\n * @param label the label of the field that has lost its focus\r\n */\r\n private _lostFocus(label: string): unknown {\r\n\r\n // also run all change events related to the field so that the proper\r\n // errors propogate on blur\r\n switch (label) {\r\n case this._firstName.label:\r\n this._firstName.beenBlurred = true;\r\n return this._onFirstNameChange(this._firstName.value);\r\n case this._zipCode.label:\r\n this._zipCode.beenBlurred = true;\r\n return this._onZipCodeChange(this._zipCode.value);\r\n case this._email.label:\r\n this._email.beenBlurred = true;\r\n return this._onEmailChange(this._email.value);\r\n default:\r\n return console.warn('[mailing-form:MailingFormComponent._lostFocus] failed to link a field');\r\n }\r\n }\r\n\r\n /**\r\n * method responsible for sending all values submitted to the parent\r\n */\r\n private _onSubmitForm(): void {\r\n this.props.onSubmit({\r\n email: this._email.value,\r\n firstName: this._firstName.value,\r\n zipCode: this._zipCode.value\r\n });\r\n }\r\n\r\n // ==============================================================================\r\n // VALIDATION METHODS\r\n // ==============================================================================\r\n\r\n private _testForRequirement(field: validationField, errorMessage: string): void {\r\n if (field.value.length === 0) {\r\n field.isValid = false;\r\n field.errorMessage = errorMessage;\r\n } else {\r\n field.isValid = true;\r\n }\r\n\r\n // hack for not re-rendering field value for first time after blur for some\r\n // reason\r\n this.setState({});\r\n }\r\n\r\n private _testForRegex(field: validationField, regex: RegExp, errorMessage: string): void {\r\n if (regex.test(field.value)) {\r\n field.isValid = true;\r\n } else {\r\n field.isValid = false;\r\n field.errorMessage = errorMessage;\r\n }\r\n }\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 { getRichTextHtml, IImageSettings, Image } from '@msdyn365-commerce/core';\r\nimport { MailingFormComponent, mailingFormUserInfo } from './mailing-form';\r\nimport { IMailingListData } from './mailing-list.data';\r\nimport { IMailingListProps } from './mailing-list.props.autogenerated';\r\n\r\n// ==============================================================================\r\n// CLASS DEFINITIONS\r\n// ==============================================================================\r\n/**\r\n *\r\n * ColsolareMailingList component\r\n * @extends {React.Component>}\r\n */\r\nclass MailingList extends React.Component> {\r\n\r\n // ==========================================================================\r\n // PUBLIC METHODS\r\n // ==========================================================================\r\n\r\n public constructor(props: IMailingListProps) {\r\n super(props);\r\n\r\n this._onSubmit = this._onSubmit.bind(this);\r\n }\r\n\r\n public render(): JSX.Element {\r\n return (\r\n
\r\n {this._formPage}\r\n {this._backgroundImage}\r\n
\r\n );\r\n }\r\n\r\n // ==========================================================================\r\n // COMPONENT EVENTS\r\n // ==========================================================================\r\n\r\n private _onSubmit(userInfo: mailingFormUserInfo): void {\r\n console.log(userInfo);\r\n\r\n // TODO: send info to add to contact form via data action then change\r\n // page state\r\n\r\n console.log('%cUser will be navigated away from this page and to a confirmation page', 'color: green; font-size:55px;');\r\n console.log(`%c${this.props.config.confirmationURL} <--- url to use`, 'color: green; font-size:25px;');\r\n\r\n }\r\n\r\n // ==========================================================================\r\n // COMPONENT PAGES\r\n // ==========================================================================\r\n\r\n private get _backgroundImage(): JSX.Element | null {\r\n const image = this.props.config.imageURL;\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
\r\n );\r\n }\r\n return null;\r\n }\r\n\r\n private get _formPage(): JSX.Element {\r\n const {\r\n marketingContactSupport,\r\n marketingDescription\r\n } = this.props.config;\r\n return (\r\n
\r\n

Mailings

\r\n {\r\n marketingDescription &&\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n \r\n }\r\n

Please Enter Your Information

\r\n \r\n {\r\n marketingContactSupport &&\r\n // tslint:disable-next-line:react-no-dangerous-html\r\n \r\n }\r\n
\r\n );\r\n }\r\n\r\n private get _mailingListColType(): string {\r\n return (this.props.config.imageURL) ? 'col-4' : 'col';\r\n }\r\n}\r\n\r\nexport default MailingList;\r\n","/*!\n * Copyright (c) Microsoft Corporation.\n * All rights reserved. See LICENSE in the project root for license information.\n */\n\nimport { HtmlHeadInclude, IAny, IGeneric } from '@msdyn365-commerce/core';\nimport * as React from 'react';\n\nimport { IDefaultPageSummaryData } from './default-page-summary.data';\nimport { IDefaultPageSummaryProps } from './default-page-summary.props.autogenerated';\n\n/**\n *\n * DefaultPageSummaryMetadata component.\n * @extends {React.PureComponent}\n */\nclass DefaultPageSummary extends React.PureComponent> {\n public render(): JSX.Element {\n if (this.props.data.pageSummary.result === undefined) {\n throw new Error('PageSummaryData input to page-summary is undefined. Unable to generate page-summary');\n }\n let {\n data: {\n pageSummary: {\n result: { title, description, keywords, sharingImageUrl, faviconUrl }\n }\n }\n } = this.props;\n\n const {\n config,\n context,\n data: {\n pageSummary: {\n result: { canonicalUrl }\n }\n }\n } = this.props;\n\n // Override values coming from data action if config values are provided\n title = config.title || title;\n description = config.description || description;\n keywords = config.keywords || keywords;\n sharingImageUrl = (config.sharingImage && config.sharingImage.src) || sharingImageUrl;\n faviconUrl = config.faviconUrl || faviconUrl;\n\n const pageTitle = this._constructPageTitle(title, context && context.request && context.request.app);\n return (\n <>\n \n {pageTitle && {pageTitle}}\n {description && }\n {keywords && }\n {canonicalUrl && }\n {faviconUrl && }\n \n {!config.disableOgTags && this._renderOgTags(pageTitle, description, sharingImageUrl)}\n {!config.disableTwitterTags && this._renderTwitterTags(pageTitle, description, sharingImageUrl)}\n \n );\n }\n\n private _renderOgTags(title: string | undefined, description: string | undefined, sharingImageUrl: string | undefined): JSX.Element {\n return (\n \n {title && }\n {description && }\n {sharingImageUrl && }\n \n \n );\n }\n\n private _renderTwitterTags(\n title: string | undefined,\n description: string | undefined,\n sharingImageUrl: string | undefined\n ): JSX.Element {\n return (\n \n {title && }\n {description && }\n {sharingImageUrl && }\n \n \n );\n }\n\n private _constructPageTitle(title: string | undefined, app: IGeneric): string | undefined {\n if (!title) {\n title = '';\n }\n\n const moduleConfig = this.props.config;\n if (moduleConfig && moduleConfig.ignoreTitleSuffixPrefix) {\n return title;\n }\n\n const appConfig = app && app.platform;\n if (appConfig) {\n if (appConfig.pageTitlePrefix) {\n title = (appConfig.pageTitlePrefix as string) + title;\n }\n if (appConfig.pageTitleSuffix) {\n title += appConfig.pageTitleSuffix as string;\n }\n }\n\n return title;\n }\n}\n\nexport default DefaultPageSummary;\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\nimport { ISpacerViewProps } from './spacer';\n\nconst SpacerView: React.FC = props => (\n
\n);\n\nexport default SpacerView;\n","import * as React from 'react';\r\n\r\nimport classname from 'classnames';\r\nimport { ISingleProductContainerData } from './single-product-container.data';\r\nimport { ISingleProductContainerProps } from './single-product-container.props.autogenerated';\r\n\r\n/**\r\n *\r\n * SingleProductContainer component\r\n * @extends {React.Component>}\r\n */\r\nclass SingleProductContainer extends React.Component> {\r\n\r\n // ------------------------------------------------------\r\n // ------------------------------------------------------\r\n public render(): JSX.Element | null {\r\n if (!this.props.data.productAttributes.result) { return null; }\r\n\r\n const { slots } = this.props;\r\n const hasSlots = slots && slots.content && slots.content.length;\r\n return (\r\n
\r\n {hasSlots && slots.content}\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default SingleProductContainer;","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\nimport * as React from 'react';\r\n\r\n /**\r\n * CoreComponent component\r\n * @extends {React.PureComponent}\r\n */\r\n\r\nclass Emp extends React.PureComponent {\r\n constructor(props: {}) {\r\n super(props);\r\n }\r\n\r\n public render(): JSX.Element | null {\r\n return