{"version":3,"file":"static/js/120052eb360207d0c41b.bundle.js","mappings":"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","sources":["webpack://mattressfirm/./src/Utilities/analytics/utagCaller.ts?3814","webpack://mattressfirm/./src/data-actions/mfrm-notification.action.ts?70c5","webpack://mattressfirm/./src/modules/mfrm-notifications/components/notification-item.tsx?44b1","webpack://mattressfirm/./src/modules/mfrm-notifications/mfrm-notifications.tsx?86e2","webpack://mattressfirm/./src/modules/mfrm-notifications/mfrm-notifications.view.tsx?dc72","webpack://mattressfirm/./lib/mfrm-notifications/module-registration.js?08a1","webpack://mattressfirm/external var \"React\"?0d3b","webpack://mattressfirm/external var \"ReactDOM\"?853b"],"sourcesContent":["import { IAnalyticsConfiguration } from './clickTrack';\r\n\r\n// Interface for 3rd-party function. AKA utag.\r\ninterface ITealium {\r\n link(data: {}): void | false;\r\n view(data: {}): void | false;\r\n data(data: {}): void | false;\r\n}\r\n\r\nexport interface IPromotionConfig {\r\n event?: string | null;\r\n event_name?: string | null;\r\n search_term?: string | null;\r\n search_type?: string | null;\r\n event_category?: string | null;\r\n event_action?: string | null;\r\n event_label?: string | null;\r\n event_type?: string | null;\r\n event_noninteraction?: string;\r\n enhanced_action?: string | null;\r\n customer_email?: string | undefined;\r\n customer_phone_number?: string | undefined;\r\n first_name?: string | undefined;\r\n last_name?: string | undefined;\r\n address1?: string | undefined;\r\n address2?: string | undefined;\r\n city?: string | undefined;\r\n state?: string | undefined;\r\n zip_code?: string | undefined;\r\n order_subtotal?: string | undefined;\r\n order_currency?: string | undefined;\r\n country?: string | undefined;\r\n // productConfig?: IProductDataConfig;\r\n checkout_step?: string;\r\n checkout_option?:(string | undefined)[];\r\n checkout_type?:(string | undefined)[];\r\n product_id?: (string | undefined)[];\r\n product_name?: (string | undefined)[];\r\n product_category?: (string | undefined)[];\r\n product_brand?: (string | undefined)[];\r\n product_variant?: (string | undefined | number)[];\r\n product_price?: (string | undefined)[];\r\n product_quantity?: (string | undefined)[];\r\n product_url?: (string | undefined)[];\r\n product_size?: (string | undefined)[];\r\n product_image_url?: (string | undefined)[];\r\n core_item_flag?: string | null;\r\n funnel_type?: string | null;\r\n ga_title?: string | null;\r\n ga_location?: string | null;\r\n order_quantity?: string | null;\r\n master_customer_code?: string | null;\r\n order_number?: string | null;\r\n}\r\n\r\ninterface IProductDataConfig {\r\n product_variant?: (string | undefined)[];\r\n product_price?: (string | undefined)[];\r\n}\r\n\r\nexport interface IAnalyticsConfigurationData {\r\n productConfig?: IProductDataConfig;\r\n}\r\n\r\n\r\n// Legacy function\r\nexport const callUtag = async (objToCall: IPromotionConfig) => {\r\n void await callUtagLink(objToCall);\r\n};\r\n\r\n/**\r\n * Tealium dispatch click tracking.\r\n * @param objToCall\r\n */\r\nexport const callUtagLink = async (objToCall: IPromotionConfig | IAnalyticsConfiguration) => {\r\n try {\r\n Object.keys(objToCall).forEach(\r\n key => {\r\n if (objToCall[key] === null) {\r\n delete objToCall[key];\r\n }\r\n }\r\n );\r\n // If utag doesn't exist in the global scope, set as false.\r\n const utag: ITealium = global.hasOwnProperty('utag') ? global[\"utag\"] : false;\r\n if(utag) { utag.link(objToCall); }\r\n\r\n } catch (e) {\r\n console.log('Utag Error', e);\r\n }\r\n};\r\n\r\n/**\r\n * Tealium dispatch view tracking.\r\n * @param objToCall\r\n */\r\nexport const callUtagView = async (objToCall: {}) => {\r\n try {\r\n // If utag doesn't exist in the global scope, set as false.\r\n const utag: ITealium = global.hasOwnProperty('utag') ? global[\"utag\"] : false;\r\n if(utag) { utag.view(objToCall); }\r\n } catch (e) {\r\n console.log('utag View Error', e);\r\n }\r\n};\r\n\r\n/**\r\n * Not currently implemented.\r\n * @param objToCall\r\n * @param dataType\r\n */\r\nexport const callUtagData = ({ productConfig = {} }: IAnalyticsConfigurationData , dataType: string) => {\r\n try {\r\n // If utag doesn't exist in the global scope, set as false.\r\n const utag: ITealium = global.hasOwnProperty('utag') ? global[\"utag\"] : false;\r\n switch (dataType) {\r\n case 'data':\r\n // @ts-ignore\r\n if('utag' in window) { utag.data = {...utag.data, ...productConfig}; }\r\n break;\r\n case '_data':\r\n // @ts-ignore\r\n utag_data = {...utag_data , ...productConfig};\r\n break;\r\n default:\r\n null;\r\n }\r\n } catch (e) {\r\n console.log('Utag Error', e);\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 Msdyn365 from '@msdyn365-commerce/core';\r\n\r\n/**\r\n * MfrmNotification Input Action\r\n */\r\n\r\nexport class MfrmNotificationInput implements Msdyn365.IActionInput {\r\n // Construct the input needed to run the action\r\n\r\n // Determine if the results of this get action should cache the results and if so provide\r\n // a cache object type and an appropriate cache key\r\n public getCacheKey = () => `promoCode`;\r\n public getCacheObjectType = () => 'promoCode';\r\n public dataCacheType = (): Msdyn365.CacheType => 'application';\r\n}\r\n\r\n// Create a data model here or import one to capture the response of the action\r\nexport interface IMfrmNotificationState {\r\n notifications: [INotification];\r\n}\r\n\r\nexport interface INotification {\r\n id?: number | string | undefined;\r\n type?: string;\r\n value?: string | undefined;\r\n status?: string | undefined;\r\n}\r\n\r\n/**\r\n * Use this function to create the input required to make the action call\r\n */\r\nconst createInput = (args: Msdyn365.ICreateActionContext): Msdyn365.IActionInput => {\r\n return new MfrmNotificationInput();\r\n};\r\n\r\n/**\r\n * Use this function to call your action and process the results as needed\r\n */\r\nasync function action(input: MfrmNotificationInput, ctx: Msdyn365.IActionContext): Promise {\r\n // tslint:disable-next-line: no-unnecessary-local-variable\r\n const notifications: INotification[] = [];\r\n return notifications;\r\n}\r\n\r\nexport default Msdyn365.createObservableDataAction({\r\n action: >action,\r\n // Give your data action a unique id\r\n id: 'MfrmNotification',\r\n input: createInput\r\n // Uncomment the below line if this is a meant to be a batched data action\r\n // isBatched: true\r\n});\r\n","/* tslint:disable: no-duplicate-imports */\r\nimport MsDyn365 from '@msdyn365-commerce/core';\r\nimport * as React from 'react';\r\ninterface INotificationItemProps {\r\n id?: number | string;\r\n message?: string;\r\n status?: string;\r\n expiry: number | undefined;\r\n onDismiss?(index: number | string | undefined): void;\r\n}\r\n\r\nexport const NotificationItem: React.FC = (props: INotificationItemProps) => {\r\n React.useEffect(() => {\r\n MsDyn365.isBrowser &&\r\n setTimeout(() => {\r\n _disMissMessage();\r\n }, props.expiry && props.expiry * 1000);\r\n }, []);\r\n\r\n const _disMissMessage = () => {\r\n if (props.onDismiss) {\r\n props.onDismiss(props.id);\r\n }\r\n };\r\n\r\n const notificationClass = props.status === 'SUCCESS' ? props.status.toLowerCase() : 'error';\r\n // VSI Customization - {#52133} - Added TabIndex only\r\n return (\r\n
\r\n \r\n \r\n ×\r\n \r\n
\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 MsDyn365 from '@msdyn365-commerce/core';\r\nimport { INotification, MfrmNotificationInput } from '../../data-actions/mfrm-notification.action';\r\nimport { callUtagLink } from '../../Utilities/analytics/utagCaller';\r\nimport { NotificationItem } from './components/notification-item';\r\nimport { IMfrmNotificationsData } from './mfrm-notifications.data';\r\nimport { IMfrmNotificationsProps } from './mfrm-notifications.props.autogenerated';\r\n\r\nexport interface IMfrmNotificationsViewProps extends IMfrmNotificationsProps {\r\n notification: React.ReactNode;\r\n pageScrolled: boolean;\r\n}\r\n\r\ninterface IMfrmNotificationsState {\r\n isScrolled: boolean;\r\n}\r\n\r\n/**\r\n *\r\n * MfrmNotifications component\r\n * @extends {React.PureComponent, IMfrmNotificationsState>}\r\n */\r\nclass MfrmNotifications extends React.PureComponent, IMfrmNotificationsState> {\r\n constructor(props: IMfrmNotificationsProps) {\r\n super(props);\r\n this.state = {\r\n isScrolled: false\r\n };\r\n }\r\n\r\n public componentDidMount(): void {\r\n if (MsDyn365.isBrowser) {\r\n window.addEventListener('scroll', () => {\r\n if (window.scrollY >= 52) {\r\n this.setState({\r\n isScrolled: true\r\n });\r\n } else {\r\n this.setState({\r\n isScrolled: false\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n public _onDismiss = (itemId: number | undefined): void => {\r\n const notificationItems: INotification[] | undefined = this.props.data.notification.result?.map((item: INotification) => {\r\n return {\r\n id: item.id,\r\n value: item.value,\r\n type: item.type,\r\n status: item.status\r\n };\r\n });\r\n\r\n if (itemId && notificationItems) {\r\n const itemIndex = notificationItems.findIndex(x => x.id === itemId);\r\n notificationItems.splice(itemIndex, 1);\r\n }\r\n this.props.context.actionContext.update(new MfrmNotificationInput(), notificationItems);\r\n };\r\n\r\n public _onTealiumCall = (): void => {\r\n if (this.props.data.notification.result && MsDyn365.isBrowser) {\r\n this.props.data.notification.result?.map((item: INotification, index: number) => {\r\n let notificationMessage: string | undefined = '';\r\n if (item.type && item.type === 'promocode') {\r\n notificationMessage = item.status === 'SUCCESS' ? this.props.resources.promoSuccessMessage : this.props.resources.promoErrorMessage;\r\n notificationMessage = notificationMessage && item.value && notificationMessage?.replace('{0}', item.value);\r\n }\r\n\r\n const notificationwithoutquotes = notificationMessage?.replace(/[“”]+/g, '');\r\n if(notificationMessage!.length > 0) {\r\n void callUtagLink(\r\n {\r\n event: 'add-remove-promos',\r\n event_category: 'add/remove promos',\r\n event_action: item.status === 'SUCCESS' ? 'Add promo code click' : 'Remove promo code click',\r\n event_label: notificationwithoutquotes,\r\n event_noninteraction: 'false'\r\n }\r\n );\r\n }\r\n });\r\n }\r\n };\r\n\r\n public notificationMessage = (): JSX.Element[] | undefined | null => {\r\n this._onTealiumCall();\r\n const expiryTime = this.props.config.notificationExpireTime;\r\n if (this.props.data.notification.result) {\r\n return this.props.data.notification.result?.map((item: INotification, index: number) => {\r\n let notificationMessage: string | undefined = '';\r\n if (item.type && item.type === 'promocode') {\r\n notificationMessage =\r\n item.status === 'SUCCESS' ? this.props.resources.promoSuccessMessage : (item.status === 'NOT_APPLIED' ? this.props.resources.promoNotAppliedMessage : this.props.resources.promoErrorMessage);\r\n notificationMessage = notificationMessage && item.value && notificationMessage?.replace('{0}', item.value);\r\n }\r\n return (\r\n \r\n );\r\n });\r\n }\r\n\r\n return undefined;\r\n };\r\n\r\n public render(): JSX.Element | null {\r\n const renderProps = {\r\n ...this.props,\r\n notification: this.notificationMessage(),\r\n pageScrolled: this.state.isScrolled\r\n };\r\n return this.props.renderView(renderProps);\r\n }\r\n}\r\n\r\nexport default MfrmNotifications;\r\n","/*!\r\n * Copyright (c) Microsoft Corporation.\r\n * All rights reserved. See LICENSE in the project root for license information.\r\n */\r\n\r\nimport { Node } from '@msdyn365-commerce-modules/utilities';\r\nimport * as React from 'react';\r\nimport { IMfrmNotificationsViewProps } from './mfrm-notifications';\r\n\r\nexport default (props: IMfrmNotificationsViewProps) => {\r\n const { notification, pageScrolled } = props;\r\n const notificationClass = props.config.className || 'msc-notification-wrap';\r\n const pageScrollClass = pageScrolled ? 'msc-notification-wrap--fixed' : '';\r\n\r\n return {notification};\r\n};\r\n","const binding = { modules: {}, dataActions: {} };\n\n const registerActionId = (actionPath) => {\n if (binding.dataActions[actionPath] &&\n binding.dataActions[actionPath].default &&\n binding.dataActions[actionPath].default.prototype &&\n binding.dataActions[actionPath].default.prototype.id) {\n binding.dataActions[binding.dataActions[actionPath].default.prototype.id] = binding.dataActions[actionPath];\n } else {\n Object.keys(binding.dataActions[actionPath] || {}).forEach(exportName => {\n if (binding.dataActions[actionPath][exportName] &&\n binding.dataActions[actionPath][exportName].prototype &&\n binding.dataActions[actionPath][exportName].prototype.Action) {\n binding.dataActions[binding.dataActions[actionPath][exportName].prototype.id] = binding.dataActions[actionPath][exportName];\n }\n })\n }\n };\n\n const registerSanitizedActionPath = (sanitizedActionPath, dataAction) => {\n if (process.env.NODE_ENV === 'development') {\n if (!dataAction.default) {\n throw new Error('Data action path does not have a default export');\n }\n if (!(dataAction.default.prototype.id && binding.dataActions[dataAction.default.prototype.id]) || !binding.dataActions[sanitizedActionPath]) {\n binding.dataActions[sanitizedActionPath] = dataAction;\n }\n } else {\n binding.dataActions[sanitizedActionPath] = dataAction;\n if (!binding.dataActions[sanitizedActionPath].default) {\n throw new Error('Data action path ' + sanitizedActionPath + ' does not have a default export');\n }\n binding.dataActions[sanitizedActionPath].default.prototype.RegistrationId = sanitizedActionPath;\n if (binding.dataActions[sanitizedActionPath].default.prototype.id) {\n binding.dataActions[binding.dataActions[sanitizedActionPath].default.prototype.id] = sanitizedActionPath;\n }\n }\n };\n \n\n (binding.modules['mfrm-notifications'] = {\n c: () => require('partner/modules/mfrm-notifications/mfrm-notifications.tsx'),\n $type: 'contentModule',\n da: [{name:'notification', path:'data-actions/mfrm-notification.action', runOn: 0}],\n \n iNM: false,\n ns: '__local__',\n n: 'mfrm-notifications',\n p: '__local__',\n \n pdp: '',\n \n \n md: 'src/modules/mfrm-notifications'\n });\n \n\n {\n const sanitizedActionPath = 'data-actions/mfrm-notification.action';\n let dataAction = require('partner/data-actions/mfrm-notification.action');\n registerSanitizedActionPath(sanitizedActionPath, dataAction);\n }\n \n\n \n window.__bindings__ = window.__bindings__ || {};\n window.__bindings__.modules = {\n ...window.__bindings__.modules || {},\n ...binding.modules\n };\n \n window.__bindings__.dataActions = {\n ...window.__bindings__.dataActions || {},\n ...binding.dataActions\n };\n export const viewDictionary = {};\n viewDictionary['__local__|__local__|modules|mfrm-notifications|mfrm-notifications'] = {\n c: () => require('partner/modules/mfrm-notifications/mfrm-notifications.view.tsx'),\n cn: '__local__-__local__-mfrm-notifications'\n };\nwindow.__bindings__ = window.__bindings__ || {};\nwindow.__bindings__.viewDictionary = {\n ...window.__bindings__.viewDictionary || {},\n ...viewDictionary\n };","module.exports = React;","module.exports = ReactDOM;"],"names":["callUtag","async","callUtagLink","objToCall","Object","keys","forEach","key","utag","global","hasOwnProperty","link","e","console","log","callUtagView","view","MfrmNotificationInput","constructor","getCacheKey","getCacheObjectType","dataCacheType","Msdyn365","action","input","ctx","id","args","NotificationItem","props","React","MsDyn365","isBrowser","setTimeout","_disMissMessage","expiry","onDismiss","notificationClass","status","toLowerCase","className","tabIndex","role","message","onClick","MfrmNotifications","super","_onDismiss","itemId","_this$props$data$noti","notificationItems","this","data","notification","result","map","item","value","type","itemIndex","findIndex","x","splice","context","actionContext","update","_onTealiumCall","_this$props$data$noti2","index","_notificationMessage2","notificationMessage","_notificationMessage","resources","promoSuccessMessage","promoErrorMessage","replace","notificationwithoutquotes","length","event","event_category","event_action","event_label","event_noninteraction","expiryTime","config","notificationExpireTime","_this$props$data$noti3","_notificationMessage3","promoNotAppliedMessage","state","isScrolled","componentDidMount","window","addEventListener","scrollY","setState","render","renderProps","_objectSpread","pageScrolled","renderView","pageScrollClass","Node","binding","modules","dataActions","c","require","$type","da","name","path","runOn","iNM","ns","n","p","pdp","md","registerSanitizedActionPath","sanitizedActionPath","dataAction","default","Error","prototype","RegistrationId","__bindings__","viewDictionary","cn","module","exports","ReactDOM"],"sourceRoot":""}