{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./assets/src/js/checkout.js","webpack:///./assets/src/js/events/site-events.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","HtmlHelpers","this","sessionStorageKey","createCartItemHtml","swatch","remapLocalStorageProperties","category","collection","colorName","colorNumber","imageUrl","substring","lastIndexOf","styleId","productLine","swatchCatId","swatchCatName","swatchId","setDataLayerSwatchProperties","cart","swatches","swatchArr","length","window","isAuthenticated","getSwatchFromCartById","getSwatchCategoryForProduct","swatchbook","getItemById","push","item_category","item_category2","item_id","item_name","price","quantity","swatch_category","swatch_collection","swatch_color","swatch_number","swatch_product","swatch_type","sessionStorage","setItem","JSON","stringify","getDataLayerSwatchProperties","getItem","parse","deleteDataLayerSwatchProperties","removeItem","product","toLowerCase","indexOf","id","outputSmallCartToPage","outputOrderShippingSnippet","data","addr","ChooseSwatches","updateItemLabel","item","checked","ariaLabel","label","parentNode","querySelector","getAttribute","setAttribute","outputCartToPage","cartMaxCt","addSwatchToCart","getSwatchbookData","cartDiv","append","isCheckoutAvailable","orderCt","document","querySelectorAll","disableSubmit","submitBtn","removeClass","prop","addClass","$","htmlHelpers","init","clearCart","isInBook","j","removeSwatchFromCart","on","parseInt","attr","is","location","useLocalStorage","orderLoggedInUrl","orderLoginUrl","that","StorageActions","getItemsFromAccount","getAllOfType","PlaceOrder","mapFormFieldsToSwfWebService","phone","areaCode","match","RegExp","join","prefix","lineNumber","getSeparatedPhoneVals","epiHelpers","getValByMailchimpField","micrositeName","getSwatchesForOrder","arr","onPlaceOrderSuccess","custOrderNumber","createOrderObj","isBrandCommChecked","getCheckedByMailchimpField","isDealerCommChecked","getElementByMailchimpName","getCheckedRadioByMailchimpField","sendLeadToMailchimp","eventLabel","optinLabel","dispatchSiteEvent","siteEventNames","ON_ORDER_SUBMITTED","action","optin","requestConsultation","sendLeadToGtm","redirectTimer","setTimeout","clearTimeout","confirmationPage","placeOrder","request","XMLHttpRequest","open","setRequestHeader","onload","status","responseText","success","displayErrorMessage","checkoutEmailInUseErrorMsg","onPlaceOrderError","onerror","send","msg","reenableSubmitButton","formBtn","text","announceMessage","info","orderNumber","ls","setItemInObj","cookies","ordinfo","swatchCt","event","preventDefault","stopPropagation","disableSubmitButtonOnSend","validateForm","scrollFormToFirstError","convertInputTypeToPassword","getUserData","val","FormValidationUtils","formatPhone","mapUserDataToFormFields","Confirmation","addrDiv","orderNumDiv","emailDiv","getItemFromObj","ON_ORDER_CONFIRMATION","clearOrderData","ADD_EXPERT","ADD_SWATCH","DEALER_PHONE_CLICK","DEALER_WEBSITE_CLICK","ON_ACCOUNT_CREATED","ON_DEALER_SEARCH","ON_FORM_SUBMIT_SUCCESS","ON_LOGGED_IN","eventName","siteEventRegistry","keys","forEach","dispatchEvent","getEventData","initSiteEvents","Event"],"mappings":"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","file":"checkout.min.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","import {\n dispatchSiteEvent,\n siteEventNames,\n} from './events/site-events';\n/* \n 1 - Choose Swatches\n*/\nvar ChooseSwatches = function ChooseSwatches() {\n var swatches = [];\n var submitBtn = $('.o-form__submit');\n var cartDiv = $('.c-cart');\n var cartMaxCt = window.cartMaxCt;\n var htmlHelpers = new HtmlHelpers();\n \n this.init = function() {\n // console.log('checkout.js, init');\n if (swatches.length === 0) {\n // If there are no swatches in swatchbook, the cart should definitely be empty.\n window.swatchbook.clearCart();\n disableSubmit();\n // Display messaging, hide cart\n $('.c-checkoutStepError__wrapper').removeClass('hidden');\n $('.c-checkoutStep__wrapper').addClass('hidden');\n return;\n }\n \n // Tidy up cart. Remove any swatches from cart that are no longer in swatchbook\n var isInBook;\n var cart = window.swatchbook.getSwatchbookData().cart;\n for (var i = 0; i < cart.length; i++) {\n isInBook = false;\n for (var j = 0; j < swatches.length; j++) {\n if (swatches[j]['swatch-id'] === cart[i]) {\n isInBook = true; // the swatch is in there, pass\n }\n }\n if (!isInBook) {\n window.swatchbook.removeSwatchFromCart(cart[i]);\n }\n }\n \n outputCartToPage();\n isCheckoutAvailable();\n \n // Add checkbox event listeners for add/remove to cart\n $('.o-form__checkbox input').on('change', function() {\n var id = parseInt($(this).attr('id'), 10);\n if ($(this).is(':checked')) {\n window.swatchbook.addSwatchToCart(id);\n updateItemLabel(this, true);\n } else {\n window.swatchbook.removeSwatchFromCart(id);\n updateItemLabel(this, false);\n }\n isCheckoutAvailable(); \n }); \n\n submitBtn.on('click', function() {\n if (window.useLocalStorage) {\n window.location = window.orderLoggedInUrl;\n } else if (window.isAuthenticated) {\n window.location = window.orderLoggedInUrl;\n } else {\n window.location = window.orderLoginUrl;\n }\n });\n };\n\n function updateItemLabel(item, checked) {\n var label = item.parentNode.querySelector('label');\n var colorName = label.getAttribute('data-colorname');\n var ariaLabel = '';\n if (checked) {\n ariaLabel = 'Remove ' + colorName + ' swatch from order';\n } else {\n ariaLabel = 'Add ' + colorName + ' swatch to order';\n }\n label.setAttribute('aria-label', ariaLabel);\n }\n\n function outputCartToPage() {\n // Add swatchbook to DOM \n var checked, swatch, s = '';\n for (var i = 0; i < swatches.length; i++) {\n // If user is under max number swatches allowed, then check them all.\n // Otherwise only check swatches previously added to cart.\n checked = '';\n swatch = swatches[i];\n if (swatches.length <= cartMaxCt) {\n checked = 'checked';\n // Add to cart if swatch is not in there yet\n window.swatchbook.addSwatchToCart(swatch['swatch-id']);\n } else {\n var cart = window.swatchbook.getSwatchbookData().cart;\n if (cart.indexOf(swatch['swatch-id']) !== -1) {\n checked = 'checked';\n }\n }\n\n s += '
  • ' +\n '
    ' +\n '\"\"

    ' + swatch['color-name'] +\n '

  • ';\n }\n cartDiv.append(s);\n }\n \n function isCheckoutAvailable() {\n var orderCt = document.querySelectorAll('.c-cart :checked').length;\n // console.log('checkout.js, isCheckoutAvailable, orderCt: ' + orderCt);\n if (orderCt > cartMaxCt || orderCt === 0) {\n disableSubmit();\n } else {\n enableSubmit();\n }\n }\n \n function disableSubmit() {\n submitBtn\n .addClass('o-form__submit--disabled')\n .prop('disabled', true);\n }\n \n function enableSubmit() {\n submitBtn\n .removeClass('o-form__submit--disabled')\n .prop('disabled', false);\n }\n\n if (window.isAuthenticated) {\n var that = this;\n // console.log('checkout.js, isAuthenticated: ' + window.isAuthenticated);\n disableSubmit();\n window.StorageActions.getItemsFromAccount('swatch', function(data) {\n // Only get swatches that have not already been ordered\n swatches = data.swatches;\n // console.log(swatches);\n that.init();\n });\n } else {\n swatches = swatchbook.getAllOfType('swatch');\n // Remap localstorage data...\n for (var i = 0; i < swatches.length; i++) {\n swatches[i] = htmlHelpers.remapLocalStorageProperties(swatches[i]);\n }\n this.init();\n }\n\n return this;\n}\n/*\n 2 - Place Order\n*/\nvar PlaceOrder = function PlaceOrder() {\n var swatches = [],\n cartDiv = $('.c-cart'),\n form = '#epiFormWrapper form',\n formBtn = $(form + ' .o-form__submit'),\n cart = window.swatchbook.getSwatchbookData().cart,\n swatchCt = cart.length,\n cartMaxCt = window.cartMaxCt,\n custOrderNumber,\n htmlHelpers = new HtmlHelpers();\n\n this.init = function() {\n // Display messaging, hide cart if over swatch limit/no swatches in cart\n if (swatchCt > cartMaxCt || swatchCt === 0) {\n $('.c-checkoutStepError__wrapper').removeClass('hidden');\n if (swatchCt > cartMaxCt) {\n $('.c-checkoutStepError__wrapper .c-warning__overSwatchLimit').removeClass('hidden');\n } else if (swatchCt === 0) {\n $('.c-checkoutStepError__wrapper .c-warning__noSwatches').removeClass('hidden');\n }\n $('.c-checkoutStep__wrapper, .c-orderSummary').addClass('hidden');\n return;\n }\n // Add submit handler\n formBtn.on('click', function(event) {\n event.preventDefault();\n event.stopPropagation();\n epiHelpers.disableSubmitButtonOnSend(formBtn);\n // Episerver validation\n if (epiHelpers.validateForm()) {\n window.announceMessage('Submitting order');\n placeOrder();\n } else {\n epiHelpers.reenableSubmitButton(formBtn);\n epiHelpers.scrollFormToFirstError();\n }\n });\n // Append cart to page\n if (!window.isAuthenticated) {\n cartDiv.append(htmlHelpers.outputSmallCartToPage(cart));\n htmlHelpers.setDataLayerSwatchProperties(cart);\n } else {\n window.StorageActions.getItemsFromAccount('swatch', function(data) {\n swatches = data.swatches;\n cartDiv.append(htmlHelpers.outputSmallCartToPage(cart, data.swatches));\n htmlHelpers.setDataLayerSwatchProperties(cart, swatches);\n });\n }\n // Convert password input type (if exist) to password\n epiHelpers.convertInputTypeToPassword();\n // Prepopulate data, if authenticated\n if (window.isAuthenticated) {\n window.swatchbook.getUserData(function(data) {\n mapUserDataToFormFields(data);\n });\n }\n };\n \n function mapUserDataToFormFields(data) {\n epiHelpers.getElementByMailchimpName('FNAME').val(data['first-name']);\n epiHelpers.getElementByMailchimpName('LNAME').val(data['last-name']);\n epiHelpers.getElementByMailchimpName('EMAIL').val(data['username']);\n epiHelpers.getElementByMailchimpName('PHONE').val(window.FormValidationUtils.formatPhone(data['phone-number']));\n epiHelpers.getElementByMailchimpName('ADDR_LINE1').val(data['address']);\n epiHelpers.getElementByMailchimpName('ADDR_LINE2').val(data['address2']);\n epiHelpers.getElementByMailchimpName('ADDR_CITY').val(data['city']);\n epiHelpers.getElementByMailchimpName('ADDR_STATE').val(data['state-or-province']);\n epiHelpers.getElementByMailchimpName('ADDR_ZIP').val(data['postal-code']);\n epiHelpers.getElementByMailchimpName('ADDR_CNTRY').val(data['country']);\n }\n\n function mapFormFieldsToSwfWebService() {\n var phone = getSeparatedPhoneVals(epiHelpers.getValByMailchimpField('PHONE'));\n // Can just use mailchimp attrs\n return JSON.stringify({\n \"microsite-name\": window.micrositeName,\n \"first-name\": epiHelpers.getValByMailchimpField('FNAME'),\n \"last-name\": epiHelpers.getValByMailchimpField('LNAME'),\n \"phone-number-area-code\": phone.areaCode,\n \"phone-number-prefix\": phone.prefix,\n \"phone-number-line-number\": phone.lineNumber,\n \"email\": epiHelpers.getValByMailchimpField('EMAIL'),\n \"password\": epiHelpers.getValByMailchimpField('PASSWORD'),\n \"ship-to-address-line-1\": epiHelpers.getValByMailchimpField('ADDR_LINE1'),\n \"ship-to-address-line-2\": epiHelpers.getValByMailchimpField('ADDR_LINE2'),\n \"ship-to-city\": epiHelpers.getValByMailchimpField('ADDR_CITY'),\n \"ship-to-state\": epiHelpers.getValByMailchimpField('ADDR_STATE'),\n \"ship-to-zip-code\": epiHelpers.getValByMailchimpField('ADDR_ZIP'),\n \"ship-to-country\": epiHelpers.getValByMailchimpField('ADDR_CNTRY'),\n \"swatchlist\": getSwatchesForOrder()\n });\n }\n\n function sendLeadToMailchimp() {\n var isBrandCommChecked = epiHelpers.getCheckedByMailchimpField('INTEREST_BRAND');\n var isDealerCommChecked = false;\n if (epiHelpers.getElementByMailchimpName('INTEREST_DEALER').length > 1) {\n // *NEW* Radio group, get selected value\n var selectedVal = epiHelpers.getCheckedRadioByMailchimpField('INTEREST_DEALER');\n if (selectedVal.indexOf('yes') != -1) {\n isDealerCommChecked = true;\n }\n } else {\n isDealerCommChecked = epiHelpers.getCheckedByMailchimpField('INTEREST_DEALER');\n }\n if (isBrandCommChecked || isDealerCommChecked) {\n // console.log('checkout.js, sendLeadToMailchimp');\n epiHelpers.sendLeadToMailchimp();\n }\n }\n \n function sendLeadToGtm() {\n var eventLabel = '';\n if (epiHelpers.getElementByMailchimpName('INTEREST_DEALER').length > 1) {\n // *NEW* Radio group, get selected value\n eventLabel = epiHelpers.getCheckedRadioByMailchimpField('INTEREST_DEALER');\n } else {\n var isDealerCommChecked = epiHelpers.getCheckedByMailchimpField('INTEREST_DEALER');\n eventLabel = isDealerCommChecked ? 'yes' : 'no';\n }\n var optinLabel = epiHelpers.getCheckedRadioByMailchimpField('INTEREST_BRAND');\n dispatchSiteEvent(siteEventNames.ON_ORDER_SUBMITTED, {\n category: 'Swatch Lead',\n action: 'swatch-lead',\n label: eventLabel === 'yes',\n optin: optinLabel !== '',\n requestConsultation: eventLabel == 'yes',\n swatches:htmlHelpers.getDataLayerSwatchProperties(),\n value: '',\n });\n }\n\n function getSwatchesForOrder() {\n // console.log('checkout.js, getSwatchesForOrder');\n var arr = [];\n var swatch;\n for (var i = 0; i < cart.length; i++) {\n if (!window.isAuthenticated) {\n swatch = window.swatchbook.getItemById('sw-' + cart[i]);\n swatch = htmlHelpers.remapLocalStorageProperties(swatch);\n } else {\n swatch = htmlHelpers.getSwatchFromCartById(cart[i], swatches);\n }\n arr.push({\n 'style-id' : swatch['style-id'],\n 'swatch-category-id' : swatch['swatch-category-id'],\n 'swatch-id' : swatch['swatch-id'],\n 'microsite-name' : window.micrositeName,\n 'country' : epiHelpers.getValByMailchimpField('ADDR_CNTRY')\n });\n }\n return arr;\n }\n\n function onPlaceOrderSuccess(data) {\n // console.log('checkout.js, placeOrder, onPlaceOrderSuccess');\n // Set customer order number\n custOrderNumber = data['order-number'];\n // Add order info to cookie\n createOrderObj();\n // Send lead to Mailchimp?\n sendLeadToMailchimp();\n // Send lead \"...working with a dealer\" to GTM\n sendLeadToGtm();\n // Add timer\n var redirectTimer = setTimeout(function() {\n clearTimeout(redirectTimer);\n // Navigate to confirmation page\n // Send to either Order Confirmation -OR- Order/Account Confirmation\n window.location = window.confirmationPage;\n }, 500);\n }\n\n function onPlaceOrderError(data) {\n // console.log('checkout.js, placeOrder, onPlaceOrderError');\n if (data['friendly-error-message'] === 'Username') {\n displayErrorMessage(window.checkoutEmailInUseErrorMsg);\n return;\n }\n displayErrorMessage(data['friendly-error-message']);\n }\n\n function placeOrder() {\n // console.log('checkout.js, placeOrder');\n var requestUrl = '/api/swatchpage/checkout';\n var request = new XMLHttpRequest();\n request.open('POST', requestUrl, true);\n request.setRequestHeader('Content-type', 'application/json');\n request.onload = function() {\n if (request.status >= 200 && request.status < 400) {\n var data = JSON.parse(request.responseText);\n if (data.success) {\n onPlaceOrderSuccess(data);\n } else {\n onPlaceOrderError(data);\n }\n }\n };\n request.onerror = function() {\n var data = JSON.parse(request.responseText);\n displayErrorMessage(data);\n };\n request.send(JSON.stringify({\n data: mapFormFieldsToSwfWebService()\n }));\n // console.log(mapFormFieldsToSwfWebService());\n }\n\n function displayErrorMessage(msg) {\n epiHelpers.reenableSubmitButton(formBtn);\n $('#epiFormWrapper .Form__Errors .error-msg').text(msg)\n $('#epiFormWrapper .Form__Errors').removeClass('hidden');\n window.announceMessage('Error Submitting Form: ' + msg);\n }\n\n function getSeparatedPhoneVals(s) {\n var s = s.match(new RegExp(/\\d/g) || [])\n s = s.join('');\n return {\n areaCode: s.substring(0,3),\n prefix: s.substring(3,6),\n lineNumber: s.substring(6)\n }\n }\n\n function createOrderObj() {\n var info = {\n orderNumber: custOrderNumber,\n data: JSON.parse(mapFormFieldsToSwfWebService())\n };\n // Set cookie\n ls.setItemInObj(ls.cookies.ordinfo, info);\n // console.log(info);\n }\n\n return this;\n}\n/*\n 3 - Confirmation\n*/\nvar Confirmation = function Confirmation() {\n \n var cartDiv = $('.c-cart'),\n addrDiv = $('.c-cart__shippingAddress'),\n orderNumDiv = $('#custOrderNumber'),\n emailDiv = $('#custEmail'),\n cart = window.swatchbook.getSwatchbookData().cart,\n htmlHelpers = new HtmlHelpers();\n \n this.init = function() {\n var data = ls.getItemFromObj(ls.cookies.ordinfo);\n let orderNumber = 'N/A';\n if (data) {\n orderNumber = data.orderNumber;\n }\n dispatchSiteEvent(siteEventNames.ON_ORDER_CONFIRMATION, {\n orderNumber,\n swatches:htmlHelpers.getDataLayerSwatchProperties(),\n });\n // Display messaging, hide cart\n if (data === undefined || data === null) {\n $('.c-checkoutStepError__wrapper').removeClass('hidden');\n $('.c-checkoutStep__wrapper, .c-orderSummary').addClass('hidden');\n return;\n }\n // Check order country and display corresponding status messaging\n if (data.data['ship-to-country'] === 'CA') {\n $('.c_orderStatusMsg--us').addClass('hidden');\n $('.c_orderStatusMsg--ca').removeClass('hidden');\n }\n addrDiv.append(htmlHelpers.outputOrderShippingSnippet(data));\n // Append cart to page\n if (!window.isAuthenticated) {\n cartDiv.append(htmlHelpers.outputSmallCartToPage(cart));\n } else {\n window.StorageActions.getItemsFromAccount('swatch', function(data) {\n cartDiv.append(htmlHelpers.outputSmallCartToPage(cart, data.swatches));\n });\n }\n orderNumDiv.text('#' + data.orderNumber);\n emailDiv.text(data.data['email']);\n // Clear order data after page loads/cart content in dom...\n window.swatchbook.clearOrderData();\n htmlHelpers.deleteDataLayerSwatchProperties()\n };\n \n return this;\n}\n\nvar HtmlHelpers = function HtmlHelpers() {\n this.sessionStorageKey = '_swatchesInCart';\n\n this.createCartItemHtml = function(swatch) {\n return '
  • ' +\n '\"\"

    ' + swatch['color-name'] +\n '

    ' + swatch['color-number'] + ' ' + swatch['collection-name'] +\n ' Collection

    ' + swatch['style-title'] +\n '

    ' + swatch['swatch-category-name'] + '

  • ';\n };\n \n this.remapLocalStorageProperties = function(swatch) {\n return {\n 'category': swatch.category,\n 'collection-name': swatch.collection,\n 'color-name': swatch.colorName,\n 'color-number': swatch.colorNumber,\n 'large-image-path': swatch.imageUrl.substring(swatch.imageUrl.lastIndexOf('/')),\n 'style-id': swatch.styleId,\n 'style-title': swatch.productLine,\n 'swatch-category-id': swatch.swatchCatId,\n 'swatch-category-name': swatch.swatchCatName,\n 'swatch-id': swatch.swatchId\n };\n };\n\n this.setDataLayerSwatchProperties = function(cart, swatches) {\n var swatchArr = [];\n var swatch = {};\n for (var i = 0; i < cart.length; i++) {\n if (!window.isAuthenticated) {\n swatch = window.swatchbook.getItemById('sw-' + cart[i]);\n swatch = this.remapLocalStorageProperties(swatch);\n } else {\n swatch = this.getSwatchFromCartById(cart[i], swatches);\n swatch.category = this.getSwatchCategoryForProduct(swatch);\n }\n swatchArr.push({\n item_category: 'Swatches',\n item_category2: swatch.category,\n item_id: swatch['swatch-id'],\n item_name: swatch['color-name'],\n price: 0,\n quantity: 1,\n swatch_category: swatch.category, \n swatch_collection: swatch['collection-name'],\n swatch_color: swatch['color-name'],\n swatch_number: swatch['color-number'],\n swatch_product: swatch['product-line'],\n swatch_type: swatch['swatch-category-name'],\n });\n }\n // Add to session storage\n window.sessionStorage.setItem(this.sessionStorageKey, JSON.stringify(swatchArr));\n };\n\n this.getDataLayerSwatchProperties = function() {\n // Pull from session storage\n var swatches = window.sessionStorage.getItem(this.sessionStorageKey);\n if (swatches) {\n return JSON.parse(swatches);\n }\n return [];\n };\n\n this.deleteDataLayerSwatchProperties = function() {\n // Remove from session storage\n window.sessionStorage.removeItem(this.sessionStorageKey);\n };\n\n this.getSwatchCategoryForProduct = function(swatch) {\n const product = swatch['product-line'].toLowerCase();\n if (product.indexOf('shades') !== -1 || product === 'sliding panels') {\n return 'Shades';\n } else if (product.indexOf('blinds') !== -1) {\n return 'Blinds';\n } else if (product.indexOf('drape') !== -1) {\n return 'Drapery';\n }\n return '';\n };\n \n this.getSwatchFromCartById = function(id, swatches) {\n for (var i = 0; i < swatches.length; i++) {\n if (id === swatches[i]['swatch-id']) {\n return swatches[i];\n }\n }\n return null;\n };\n\n this.outputSmallCartToPage = function(cart, swatches) {\n var that = this;\n var swatch;\n var s = '';\n for (var i = 0; i < cart.length; i++) {\n if (!window.isAuthenticated) {\n swatch = window.swatchbook.getItemById('sw-' + cart[i]);\n swatch = this.remapLocalStorageProperties(swatch);\n } else {\n swatch = that.getSwatchFromCartById(cart[i], swatches);\n }\n if (swatch !== null) {\n s += this.createCartItemHtml(swatch);\n }\n }\n return s;\n };\n\n this.outputOrderShippingSnippet = function(data) {\n var p1 = '

    ';\n var p2 = '

    '\n var addr = p1 + data.data['ship-to-address-line-1'] + p2;\n // Is address 2?\n if (data.data['ship-to-address-line-2'] !== '') {\n addr += p1 + data.data['ship-to-address-line-2'] + p2;\n }\n // Output\n return p1 + data.data['first-name'] + ' ' + data.data['last-name'] + p2 +\n addr + \n p1 + data.data['ship-to-city'] + ', ' + data.data['ship-to-state'] + ' ' + data.data['ship-to-zip-code'] + p2;\n };\n}\n\n// Set global vars\nwindow.ChooseSwatches = ChooseSwatches;\nwindow.PlaceOrder = PlaceOrder;\nwindow.Confirmation = Confirmation;\n","const siteEventNames = {\n ADD_EXPERT: 'addexpert',\n ADD_SWATCH: 'addswatch',\n DEALER_PHONE_CLICK: 'dealerphoneclick',\n DEALER_WEBSITE_CLICK: 'dealerwebsiteclick',\n ON_ACCOUNT_CREATED: 'onaccountcreated',\n ON_DEALER_SEARCH: 'ondealersearch',\n ON_FORM_SUBMIT_SUCCESS: 'onformsubmitsuccess',\n ON_LOGGED_IN: 'onloggedin',\n ON_ORDER_SUBMITTED: 'onordersubmitted',\n ON_ORDER_CONFIRMATION: 'onorderconfirmation',\n};\n\nconst initSiteEvents = () => {\n if (window.siteEventRegistry) {\n return;\n }\n // Init events and add them to window scope here\n window.siteEventRegistry = {};\n Object.keys(siteEventNames).forEach((key) => {\n const value = siteEventNames[key];\n siteEventRegistry[value] = {\n event: new Event(value),\n data: {},\n }\n });\n};\n\nconst getEventData = (eventName) => {\n const { siteEventRegistry } = window;\n let data = {};\n Object.keys(siteEventRegistry).forEach((key) => {\n if (key === eventName) {\n data = siteEventRegistry[key].data;\n }\n });\n return data;\n}\n\nconst dispatchSiteEvent = (eventName, data) => {\n const { siteEventRegistry } = window;\n Object.keys(siteEventRegistry).forEach((key) => {\n if (key === eventName) {\n const event = siteEventRegistry[key].event;\n siteEventRegistry[key].data = data;\n window.dispatchEvent(event);\n }\n });\n};\n\nexport {\n dispatchSiteEvent,\n getEventData,\n initSiteEvents,\n siteEventNames,\n};\n"],"sourceRoot":""}