{"version":3,"sources":["main.ts"],"names":["window","NodeList","prototype","forEach","Array","PriceView","_ref","priceViewCookieName","currentPageName","cashViewPages","pointsViewPages","toggleElements","pointsLogin","enablePayByPoints","propsDisablePoints","pointsUnvailLightbox","_classCallCheck","this","OCForm1","document","querySelector","currentView","_createClass","key","value","_this","cashTabs","querySelectorAll","concat","cashTabClass","pointsTabs","element","addEventListener","autoTogglePriceView","pointsTabClass","switchers","elements","checkboxName","undefined","length","i","_loop","checked","pointsLoginBtn","$","btn_login_points","on","thisPage","encodeURIComponent","location","pathname","replace","search","CommonUtils","setCookie","href","url","dilogBox","pointsLogoutBtn","btn_logout_points","ajax","type","cache","data","async","complete","sessionStorage","clear","reload","btn_cart_checkout","cartCheckoutBtnID","$button","html","addClass","_this2","getCookie","find","page","togglePriceView","toggledView","_this3","details","toggleClass","switchers2","subsContainer","subsMsgContainer","oneTimePurcContainer","currentFocusTab","activeElement","setAttribute","removeAttribute","classList","remove","toggleClassPoints","style","display","hasSubInCart","prop","removeClass","atcPointsUnavailNote","lbPointsUnavailNote","id","hideElement","addToCartBtn","div_lbCartBtns","showElement","verifySubInCart","add","click","focus","hasSubsNote","headerCheckoutBtnID","quickCartObj","displayPromoTotals"],"mappings":"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","file":"../priceView.min.js","sourcesContent":["/******** priceView.js ********/\n// .forEach fix for ie11\nif (window.NodeList && !NodeList.prototype.forEach) {\n ;(NodeList.prototype.forEach) = Array.prototype.forEach\n}\nclass PriceView implements PriceViewInterface {\n OCForm1: HTMLFormElement\n priceViewCookieName: string\n currentPageName: string\n cashViewPages: string[]\n pointsViewPages: string[]\n toggleElements: ToggleElements\n pointsLogin: PointsLogin\n enablePayByPoints: boolean\n propsDisablePoints: PropsDisablePoints\n pointsUnvailLightbox: DialogObj\n currentView: string\n\n constructor({\n priceViewCookieName,\n currentPageName,\n cashViewPages,\n pointsViewPages,\n toggleElements,\n pointsLogin,\n enablePayByPoints,\n propsDisablePoints,\n pointsUnvailLightbox\n }) {\n this.OCForm1 = document.querySelector('#OCForm1')\n this.priceViewCookieName = priceViewCookieName\n this.currentPageName = currentPageName\n this.cashViewPages = cashViewPages\n this.pointsViewPages = pointsViewPages\n this.toggleElements = toggleElements\n this.currentView = 'cash'\n this.pointsLogin = pointsLogin\n this.enablePayByPoints = enablePayByPoints\n this.propsDisablePoints = propsDisablePoints\n this.pointsUnvailLightbox = pointsUnvailLightbox\n }\n\n updateHasSubValue(value: boolean): void {\n this.propsDisablePoints['hasSubInCart'] = value\n }\n\n bindElementHandlers(): void {\n const cashTabs = document.querySelectorAll(\n `.${this.toggleElements.cashTabClass}`\n )\n if (cashTabs) {\n cashTabs.forEach((element) => {\n element.addEventListener('click', () => {\n this.autoTogglePriceView()\n })\n })\n }\n const pointsTabs = document.querySelectorAll(\n `.${this.toggleElements.pointsTabClass}`\n )\n if (pointsTabs) {\n pointsTabs.forEach((element) => {\n element.addEventListener('click', () => {\n this.autoTogglePriceView()\n })\n })\n }\n const switchers = this.OCForm1.elements[this.toggleElements.checkboxName]\n if (switchers) {\n if (switchers.length !== undefined) {\n for (let i = 0; i < switchers.length; i++) {\n switchers[i].addEventListener('click', () => {\n if (switchers[i].checked === false) {\n switchers[i].checked = true\n } else {\n switchers[i].checked = false\n }\n })\n }\n } else {\n switchers.addEventListener('click', () => {\n if (switchers.checked === false) {\n switchers.checked = true\n } else {\n switchers.checked = false\n }\n })\n }\n }\n const pointsLoginBtn = $(this.pointsLogin.btn_login_points)\n if (pointsLoginBtn.length) {\n $(pointsLoginBtn).on('click', () => {\n if (this.enablePayByPoints) {\n let thisPage = `${encodeURIComponent(window.location.pathname.replace('/', ''))}${encodeURIComponent(window.location.search)}`\n thisPage = thisPage === '' ? 'index.aspx' : thisPage\n CommonUtils.setCookie('returnPage', thisPage)\n window.location.href = this.pointsLogin.url\n } else {\n dilogBox(this.pointsUnvailLightbox)\n }\n })\n }\n const pointsLogoutBtn = $(this.pointsLogin.btn_logout_points)\n if (pointsLogoutBtn.length) {\n $(pointsLogoutBtn).on('click', () => {\n const ajaxURL = 'ajax/points.aspx'\n const ajaxParams = 'posting=TRUE&actionType=LOGOUTPOINTS'\n $.ajax({\n url: ajaxURL,\n type: 'POST',\n cache: false,\n data: ajaxParams,\n async: true,\n complete: () => {\n sessionStorage.clear()\n window.location.reload()\n }\n })\n })\n }\n const btn_cart_checkout = $(this.propsDisablePoints.cartCheckoutBtnID)\n if (btn_cart_checkout.length) {\n $(btn_cart_checkout).on('click', function () {\n const $button = $(this)\n $button.html('')\n $button.addClass('loader-light')\n window.location.href = 'checkout.aspx'\n })\n }\n }\n\n onLoadCheckPriceView(): void {\n const cookieValue = CommonUtils.getCookie(this.priceViewCookieName)\n if (cookieValue === 'points') {\n const cashViewPagesFound = this.cashViewPages.find(\n (page) => page === this.currentPageName\n )\n if (cashViewPagesFound !== undefined) {\n this.currentView = 'points'\n this.togglePriceView('cash')\n } else {\n this.togglePriceView('points')\n }\n } else {\n const pointsViewPagesFound = this.pointsViewPages.find(\n (page) => page === this.currentPageName\n )\n if (pointsViewPagesFound !== undefined) {\n this.togglePriceView('points')\n }\n }\n }\n\n autoTogglePriceView(): void {\n if (this.currentView === 'cash') return this.togglePriceView('points')\n if (this.currentView === 'points') return this.togglePriceView('cash')\n }\n\n togglePriceView(toggledView: string): void {\n if (this.currentView !== toggledView) {\n CommonUtils.setCookie(this.priceViewCookieName, toggledView)\n const details = document.querySelectorAll(\n `.${this.toggleElements.toggleClass}`\n )\n const switchers2 = this.OCForm1.elements[this.toggleElements.checkboxName]\n this.currentView = toggledView\n const subsContainer: HTMLElement = document.querySelector(\n this.toggleElements.subsContainer\n )\n const subsMsgContainer: HTMLElement = document.querySelector(\n this.toggleElements.subsMsgContainer\n )\n const oneTimePurcContainer: HTMLElement = document.querySelector(\n this.toggleElements.oneTimePurcContainer\n )\n const btn_cart_checkout: HTMLElement = document.querySelector(\n this.propsDisablePoints.cartCheckoutBtnID\n )\n const cashTabs = document.querySelectorAll(\n `.${this.toggleElements.cashTabClass}`\n )\n const pointsTabs = document.querySelectorAll(\n `.${this.toggleElements.pointsTabClass}`\n )\n const currentFocusTab: HTMLElement = document.activeElement as HTMLElement\n if (toggledView === 'cash') {\n cashTabs.forEach((element) => {\n element.setAttribute('aria-selected', 'true')\n element.removeAttribute('tabindex')\n })\n pointsTabs.forEach((element) => {\n element.setAttribute('aria-selected', 'false')\n element.setAttribute('tabindex', '-1')\n })\n details.forEach((element) => {\n element.classList.remove(this.toggleElements.toggleClassPoints)\n })\n if (switchers2) {\n if (switchers2.length !== undefined) {\n for (let i = 0; i < switchers2.length; i++) {\n switchers2[i].checked = false\n }\n } else {\n switchers2.checked = false\n }\n }\n if (subsContainer) {\n subsContainer.style.display = 'block'\n subsMsgContainer.style.display = 'none'\n }\n if (btn_cart_checkout && this.propsDisablePoints.hasSubInCart) {\n $(btn_cart_checkout).prop('disabled', false)\n $(btn_cart_checkout).removeClass('disabled')\n }\n ;[\n this.propsDisablePoints.atcPointsUnavailNote,\n this.propsDisablePoints.lbPointsUnavailNote\n ].forEach((id) => {\n CommonUtils.hideElement(id)\n })\n ;[\n this.propsDisablePoints.addToCartBtn,\n this.propsDisablePoints.div_lbCartBtns,\n this.propsDisablePoints.cartCheckoutBtnID\n ].forEach((id) => {\n CommonUtils.showElement(id)\n })\n this.verifySubInCart()\n } else {\n pointsTabs.forEach((element) => {\n element.setAttribute('aria-selected', 'true')\n element.removeAttribute('tabindex')\n })\n cashTabs.forEach((element) => {\n element.setAttribute('aria-selected', 'false')\n element.setAttribute('tabindex', '-1')\n })\n details.forEach((element) => {\n element.classList.add(this.toggleElements.toggleClassPoints)\n })\n if (switchers2) {\n if (switchers2.length !== undefined) {\n for (let i = 0; i < switchers2.length; i++) {\n switchers2[i].checked = true\n }\n } else {\n switchers2.checked = true\n }\n }\n if (subsContainer) {\n subsContainer.style.display = 'none'\n subsMsgContainer.style.display = 'block'\n oneTimePurcContainer.click()\n currentFocusTab.focus()\n }\n if (btn_cart_checkout && this.propsDisablePoints.hasSubInCart) {\n $(btn_cart_checkout).prop('disabled', true)\n $(btn_cart_checkout).addClass('disabled')\n }\n if (!this.enablePayByPoints) {\n ;[\n this.propsDisablePoints.atcPointsUnavailNote,\n this.propsDisablePoints.lbPointsUnavailNote\n ].forEach((id) => {\n CommonUtils.showElement(id)\n })\n ;[\n this.propsDisablePoints.addToCartBtn,\n this.propsDisablePoints.div_lbCartBtns,\n this.propsDisablePoints.cartCheckoutBtnID,\n this.toggleElements.subsMsgContainer,\n this.propsDisablePoints.hasSubsNote,\n this.propsDisablePoints.headerCheckoutBtnID\n ].forEach((id) => {\n CommonUtils.hideElement(id)\n })\n } else {\n this.verifySubInCart()\n }\n }\n //BMSM\n if (typeof quickCartObj !== 'undefined') {\n if (typeof quickCartObj.displayPromoTotals === 'function') {\n quickCartObj.displayPromoTotals(toggledView)\n }\n }\n }\n }\n\n}\n\ninterface PriceViewInterface {\n priceViewCookieName: string\n currentPageName: string\n cashViewPages: string[]\n pointsViewPages: string[]\n toggleElements: ToggleElements\n currentView: string\n pointsLogin: PointsLogin\n enablePayByPoints: boolean\n propsDisablePoints: PropsDisablePoints\n pointsUnvailLightbox: DialogObj\n}\n\ninterface ToggleElements {\n toggleClass: string\n toggleClassPoints: string\n cashTabClass: string\n pointsTabClass: string\n checkboxName: string\n subsContainer: string\n subsMsgContainer: string\n oneTimePurcContainer: string\n}\ninterface PointsLogin {\n btn_login_points: string\n btn_logout_points: string\n url: string\n}\ninterface PropsDisablePoints {\n hasSubInCart: boolean\n pointsTabContainerIDs: string[]\n cssClass: string\n ptSubtotalIDs: string[]\n cartCheckoutBtnID: string\n subtotalCopy: string\n addToCartBtn: string\n atcPointsUnavailNote: string\n lbPointsUnavailNote: string\n div_lbCartBtns: string\n hasSubsNote: string\n headerCheckoutBtnID: string\n}\n"]}