{"version":3,"file":"default/js/shadeFinderPdp.js","mappings":"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","sources":["webpack:///./cartridges/app_custom_mufe/cartridges/app_custom_mufe/cartridge/client/default/js/product/pdpRework/shadeFinder.js","webpack:///./cartridges/app_custom_mufe/cartridges/app_custom_mufe/cartridge/client/default/js/product/pdpRework/vto-modal.js","webpack:///./cartridges/sfcc-core-ecom/storefront-reference-architecture/cartridges/app_storefront_base/cartridge/client/default/js/util.js","webpack:///webpack/bootstrap","webpack:///./cartridges/app_custom_mufe/cartridges/app_custom_mufe/cartridge/client/default/js/shadeFinderPdp.js"],"sourcesContent":["'use strict';\n\n$(document).on(\"sfvto:init\", function() {\n var shadefinderADAbutton = $('#shadefinder-ADA-button').val();\n $(\"#vto-sf-modal\").animate({ scrollTop: 150 }, 1000);\n\n var initParameters = {\n shadeFinderVersion: 'v4',\n disable2ColorComparison: true,\n hideAllButtonsOnResult: true,\n shadeFinderDeltaEThreshold: '3',\n skinSmoothStrength: 1,\n language: 'en',\n shadeFinderResultVersion: 'v2',\n showShadeFinderLogo: false,\n showBackAndCloseButton: true,\n userConsent: 'agree'\n };\n\n // Device type tablets Ipad Pro Ipad mini\n var windowSize = $(window).width();\n var windowHeight = $(window).height();\n if (windowSize < 500) {\n initParameters.width = windowSize;\n initParameters.height = windowHeight - ($('header').height());\n initParameters.showShadeFinderLogo = true;\n $('#vto-sf-modal').css('top', $('header').height() + 'px');\n\n } else if (windowSize > 500 && windowSize < 992){\n initParameters.width = 544;\n initParameters.height = 619;\n } else {\n initParameters.width = 510;\n initParameters.height = 656;\n }\n // Init SF module\n window.YMK.init(initParameters);\n // Open SF module\n window.YMK.openShadeFinder();\n $('body').addClass('lock-body');\n\n if ($(window).width() < 500) {\n $('.modal-backdrop').addClass('d-none');\n }\n\n window.YMK.addEventListener('backToLive', function () {\n $('.custom-shade-search').show();\n });\n \n window.YMK.addEventListener('enterTakePhoto', function () {\n $('.custom-shade-search').hide();\n }); \n\n window.YMK.addEventListener(\"closed\", function() {\n $('#one-to-one-initiation').removeClass('d-none');\n $(\".retry-vto-sf\").removeClass(\"hidden\");\n $('.sf-optin-logo').hide();\n $('.close-shade').hide();\n $(\"#vto-sf-modal .close\").trigger(\"click\");\n $('.custom-shade-search').hide();\n $('body').removeClass('lock-body');\n if ($(window).width() < 500) {\n $('.modal-backdrop').addClass('d-none');\n }\n });\n\n window.YMK.addEventListener('opened', function () {\n $.spinner().stop();\n $('.sf-optin-logo').show();\n $('.close-shade').show();\n });\n\n $(\"#vto-sf-modal .close-shade\").on('click', function () {\n window.YMK.closeEngine();\n $('.custom-shade-search').hide();\n $('#vto-sf-modal').modal('hide');\n $('.YMK-centent').removeClass('hide');\n $('.suggestions-shade-details').removeClass('show');\n $('body').removeClass('lock-body');\n })\n\n /**\n * Fill all elements regarding shade information\n * @param {*} shadeData \n * @param {*} shadeNameElt \n * @param {*} clickShadeElt \n * @param {*} squareShadeElt \n */\n function applyShade(shadeData, shadeNameElt, clickShadeElt, squareShadeElt) {\n if (shadeData) {\n $(clickShadeElt)\n .attr('data-value', shadeData.id)\n .attr('data-attr-value', shadeData.shadeID)\n .attr('aria-label', shadefinderADAbutton + ' ' + shadeData.shadeName)\n .attr('data-shade-oos',shadeData.shadeOOS);\n $(shadeNameElt).text(shadeData.shadeName);\n $(squareShadeElt).attr('fill', shadeData.colorCode);\n if (shadeData.shadeOOS) {\n $(clickShadeElt).append('');\n }\n }\n \n }\n\n /**\n * Event launched by Perfect Corp once the shade finder is completely loaded\n */\n window.YMK.addEventListener('shadeFinderComplete', function (data) {\n var matchedProductIds = [];\n var productIds = [];\n // Get recommendations from Perfect Corp\n var recommendations = data.recommendations;\n var productListIds = JSON.parse($('#product-list-ids').html());\n // Check each PC recommandations\n for (var i = 0; i < recommendations.length; i++) {\n // Check if product recommended exists on SFCC\n if (recommendations[i].matched && productListIds) {\n for (var j = 0; j < productListIds.length; j++) {\n if (recommendations[i].matched.skuId === productListIds[j].id) {\n matchedProductIds.push(productListIds[j]);\n productIds.push(productListIds[j].id);\n }\n }\n }\n }\n window.YMK.enableCompare();\n var nbShade = 3;\n // Best shade\n applyShade(matchedProductIds[0], '.skintone-shadename2', '.skintone-click2', '.square2 circle');\n $('.skintone-click2').trigger('click').addClass('click-first-button');\n // Hide shade if necessary\n if(!matchedProductIds[1]) {\n $('.skintone-circle-1').hide();\n nbShade--;\n } else {\n applyShade(matchedProductIds[1], '.skintone-shadename1', '.skintone-click1', '.square1 circle');\n }\n\n if (!matchedProductIds[2]) {\n $('.skintone-circle-3').hide();\n nbShade--;\n } else {\n applyShade(matchedProductIds[2], '.skintone-shadename3', '.skintone-click3', '.square3 circle');\n }\n\n $('.skintone-wrapper').show();\n $('.matching-wrapper').show();\n\n var dataUrl = $(\".gtmurl\").attr(\"data-url\") + '?products=' + productIds.slice(0, nbShade);\n\n $.ajax({\n url: dataUrl,\n type: 'get',\n dataType: 'json',\n success: function (data) {\n dataLayer.push(data.productListGtm);\n if (data.productListGtm.ecommerce.impressions[0]) {\n var productName = data.productListGtm.ecommerce.impressions[0].name;\n var vtoSite = $(\".gtmsite\").attr(\"data-site\");\n\n dataLayer.push({\n 'event': 'shade_finder_result',\n 'sf_product_name': productName,\n 'sf_site_name': vtoSite,\n });\n }\n },\n error: function () {\n }\n });\n });\n});\n\nvar minChars = 3;\n\nfunction getSuggestionsShadeWrapper() {\n return $('.suggestions-shade-details');\n}\n\nfunction isMobileSearch(scope) {\n return !!$(scope).closest('.search-mobile').length;\n}\n\nfunction toggleSuggestionsIcon(action) {\n var mobileSearchIcon = '.search-mobile span.';\n var iconSearch = 'icon-SEARCH';\n var iconSearchClose = 'fa-close';\n\n if (action === 'close') {\n $(mobileSearchIcon + iconSearch).removeClass(iconSearch).addClass(iconSearchClose);\n } else {\n $(mobileSearchIcon + iconSearchClose).removeClass(iconSearchClose).addClass(iconSearch);\n }\n}\n\nfunction handleMoreContentBelowIcon(scope) {\n if (($(scope).scrollTop() + $(scope).innerHeight()) >= $(scope)[0].scrollHeight) {\n $('.more-below').fadeOut();\n } else {\n $('.more-below').fadeIn();\n }\n}\n\nfunction positionSuggestions(scope) {\n var outerHeight;\n var $scope;\n var $suggestions;\n var top;\n\n if (isMobileSearch(scope)) {\n $scope = $(scope);\n top = $scope.offset().top;\n outerHeight = $scope.outerHeight();\n $suggestions.css('top', top + outerHeight);\n\n handleMoreContentBelowIcon(scope);\n\n $suggestions.scroll(function () {\n handleMoreContentBelowIcon(this);\n });\n }\n}\n\nfunction processResponseShade(response) {\n var $suggestionsWrapper = getSuggestionsShadeWrapper(this).empty();\n if (!(typeof (response) === 'object')) {\n $suggestionsWrapper.append(response).fadeIn();\n positionSuggestions(this);\n if (isMobileSearch(this)) {\n toggleSuggestionsIcon('close');\n }\n $('#no-result-search').text($('.search-field').val());\n $('body').trigger('LoadSliderImages');\n } else {\n $suggestionsWrapper.fadeOut();\n }\n $('.custom-shade-search').show();\n $('#YMK-wrapper').focus();\n}\n\nfunction getSuggestionsShadeProduct(scope) {\n if ($(scope).attr('data-value').length >= minChars) {\n $.ajax({\n context: scope,\n url: $(scope).attr('data-url') + $(scope).attr('data-value'),\n method: 'GET',\n success: processResponseShade,\n error: function () {\n }\n });\n $('.product-view-suggestion').removeClass('col-md-4').addClass('col-md-12');\n } else {\n toggleSuggestionsIcon('search');\n getSuggestionsShadeWrapper(scope).empty();\n }\n}\n\n$(document).on('click', '.skintone-click1, .skintone-click2, .skintone-click3', function (event, a, b) {\n $(this).parents('.skintone-item').addClass('active').siblings('.skintone-item').removeClass('active');\n if($('.skintone-click2').hasClass('click-first-button')){\n var datalayername = $(this).siblings('.datalayer-name').text();\n var productName = $(\".js_product-name\").attr(\"data-product\");\n var vtoSite = $(\".gtmsite\").attr(\"data-site\");\n if (productName && vtoSite) {\n dataLayer.push({\n 'sf_type': 'Shade',\n 'sf_name': datalayername.toString().replace(/[^a-z0-9\\s]/gi, '').trim(),\n 'sf_product_name': productName,\n 'sf_site_name': vtoSite,\n 'event':'shade_finder_click'\n });\n }\n }\n $('.shadefinder-shadesquare').removeClass('active');\n $(this).find('svg').addClass('active');\n $(\"#vto-sf-modal\").animate({ scrollTop: 150 }, 1000);\n getSuggestionsShadeProduct($(this), b);\n var shadeOOSValue = $(this).attr('data-shade-oos');\n var ariaLabelValue = $('input[name=\"ariaLabelShade\"]').val().trim();\n var addToCart2Value = $('input[name=\"addToCart2\"]').val().trim();\n var outOfStockValue = $('input[name=\"outOfStock\"]').val().trim();\n if (shadeOOSValue === 'true') {\n $('a.productLinktoShade-desktop').replaceWith('' + outOfStockValue + '');\n } else {\n $('a.productLinktoShade-desktop').replaceWith('' + addToCart2Value + '');\n }\n window.YMK.applyMakeupBySku($(this).attr('data-value'));\n});\n\n$('button.shade-circle-wrapper').each(function () {\n $(this).attr(\n 'tabindex',\n $(this).hasClass('skintone-click2') ? '0' : '-1'\n );\n $(this).attr('role', 'radio');\n});\n\n$('button.shade-circle-wrapper').on('keydown', function (event) {\n var $skintoneCircle = $(this).closest('.skintone-circle');\n var $buttons = $skintoneCircle.find('.shade-circle-wrapper');\n var currentIndex = $buttons.index(this);\n var nextIndex, prevIndex;\n\n if (event.key === 'ArrowRight') {\n nextIndex = (currentIndex + 1) % $buttons.length;\n $buttons.eq(nextIndex).attr('tabindex', '0').focus().click();\n $(this).attr('tabindex', '-1');\n } else if (event.key === 'ArrowLeft') {\n prevIndex =\n (currentIndex - 1 + $buttons.length) % $buttons.length;\n $buttons.eq(prevIndex).attr('tabindex', '0').focus().click();\n $(this).attr('tabindex', '-1');\n }\n});\n\n$(document).on('click', '#aquaresist-wrapper .shadefinder-shadesquare, #mascarapro-wrapper .shadefinder-shadesquare', function (event, a, b) {\n if(!($(this).hasClass('disabledshade'))){\n if($('.landing-rouge-shade-interact-module-shade-svg:first-child').hasClass('click-first-button')){\n var datalayername = $(this).attr('aria-label');\n dataLayer.push({\n 'sf_type': 'Shade',\n 'sf_name': datalayername,\n 'event':'red_shade_click'\n });\n }else{\n $('.landing-rouge-shade-interact-module-shade-svg:first-child').addClass('click-first-button');\n }\n $('#aquaresist-wrapper .shadefinder-shadesquare, #mascarapro-wrapper .shadefinder-shadesquare').removeClass('active');\n $(this).addClass('active');\n getSuggestionsShadeProduct($(this), b);\n window.YMK.reset()\n window.YMK.applyMakeupBySku($(this).attr('data-id'));\n $('.shade-name-tile').css('color', $(this).attr('fill'));\n }\n});\n\n$(document).on('keypress', '.landing-rouge-shade-interact-module-shade-svg path', function(e){\n if(e.which == 13) {\n $(this).trigger('click');\n }\n});\n\n$(document).on('click', '.retry-vto-sf', function() {\n if (!window.YMK.isLoaded()) {\n window.YMK.openShadeFinder();\n }\n $(\".retry-vto-sf\").addClass(\"hidden\");\n});\n\n$('.sr-only-focus a').click(function(e){\n e.preventDefault();\n var linktofocus = $(this).attr('href');\n if($(this).hasClass('skip-color-picker')){\n $(linktofocus).focus();\n } else {\n $(linktofocus).find('path:first-child').focus();\n }\n});\n","var isClickInprogress = false;\n\nfunction waitForElm(selector) {\n return new Promise((resolve) => {\n if (document.querySelector(selector)) {\n return resolve(document.querySelector(selector));\n }\n\n const observer = new MutationObserver(() => {\n if (document.querySelector(selector)) {\n resolve(document.querySelector(selector));\n observer.disconnect();\n }\n });\n\n observer.observe(document.body, {\n childList: true,\n subtree: true,\n });\n });\n}\n\nfunction handleRadioBtn() {\n $('.shade-circle-wrapper').each(function () {\n var $button = $(this);\n\n $button.attr('role', 'radio');\n $button.attr('tabindex', '-1');\n\n waitForElm('.click-first-button').then((elm) => {\n $(elm).attr('tabindex', '0').attr('aria-checked', 'true');\n });\n });\n\n $('.shade-circle-wrapper').on('keyup', function (event) {\n var $buttons = $('.shade-circle-wrapper');\n var currentIndex = $buttons.index(this);\n var nextIndex, prevIndex;\n \n if (event.key === 'ArrowRight') {\n nextIndex = (currentIndex + 1) % $buttons.length;\n $buttons\n .attr('tabindex', '-1')\n .eq(nextIndex)\n .attr('tabindex', '0')\n .attr('aria-checked', 'true')\n .focus()\n .click();\n } else if (event.key === 'ArrowLeft') {\n prevIndex = (currentIndex - 1 + $buttons.length) % $buttons.length;\n $buttons\n .attr('tabindex', '-1')\n .eq(prevIndex)\n .attr('tabindex', '0')\n .attr('aria-checked', 'true')\n .focus()\n .click();\n }\n });\n}\n\nfunction initShadeFinderVto() {\n var selectedValueUrl = $(\".display-vto-sf\").attr('data-href');\n isClickInprogress = true;\n if ($('#vto-sf-modal').length !== 0) {\n if (!$(\".skintone-wrapper\").length) {\n window.YMK.open();\n }\n $('#vto-sf-modal').modal('show');\n isClickInprogress = false;\n return;\n }\n var isIphoneClass = navigator.userAgent.match(/(iPod|iPhone|iPad)/) ? \" iphone-shade-finder\" : \"\"\n\n var htmlString = ''\n + '
'\n + '
'\n + ''\n + '
'\n + '
'\n + '
'\n + '
'\n + '
';\n $('body').append(htmlString);\n $('.modal-body').spinner().start();\n $.ajax({\n url: selectedValueUrl,\n method: 'GET',\n dataType: 'html',\n success: function (data) {\n var $html = $('
').append($.parseHTML(data));\n $('.shade-finder-vto-body').append($html);\n if ($('.shade-finder-vto-body').find('.vto-revamp').length) {\n $('.shade-finder-vto-body').parents('#vto-sf-modal').addClass('vto-revamp-modal');\n }\n $('#vto-sf-modal').modal('show');\n isClickInprogress = false;\n $(document).trigger('sfvto:init');\n handleRadioBtn();\n },\n error: function () {\n isClickInprogress = false;\n }\n });\n}\n\n$(window).on('load', function() {\n var optinAlreadyDisplayed = false;\n $(document).on('click', '.display-vto-sf', function (e) {\n e.preventDefault();\n\n $('#one-to-one-initiation').addClass('d-none');\n\n if (isClickInprogress) {\n return;\n }\n\n // Check if an optin should be displayed\n if ($(\"#optin-vto-shadefiner\").length && !optinAlreadyDisplayed) {\n $(\"#optin-vto-shadefiner\").modal(\"show\");\n \n $(\".button-optin-submit\").on(\"click\", function() {\n $(\"#optin-vto-shadefiner\").modal(\"hide\");\n optinAlreadyDisplayed = true;\n initShadeFinderVto();\n })\n } else {\n initShadeFinderVto();\n }\n });\n});","'use strict';\n\nmodule.exports = function (include) {\n if (typeof include === 'function') {\n include();\n } else if (typeof include === 'object') {\n Object.keys(include).forEach(function (key) {\n if (typeof include[key] === 'function') {\n include[key]();\n }\n });\n }\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","'use strict';\n\nvar processInclude = require('base/util');\n\n$(document).ready(function () {\n processInclude(require('./product/pdpRework/vto-modal'));\n processInclude(require('./product/pdpRework/shadeFinder'));\n});\n"],"names":["_typeof","o","Symbol","iterator","constructor","prototype","getSuggestionsShadeWrapper","$","isMobileSearch","scope","closest","length","toggleSuggestionsIcon","action","mobileSearchIcon","iconSearch","iconSearchClose","removeClass","addClass","handleMoreContentBelowIcon","scrollTop","innerHeight","scrollHeight","fadeOut","fadeIn","processResponseShade","response","outerHeight","$scope","$suggestions","top","$suggestionsWrapper","empty","append","this","offset","css","scroll","text","val","trigger","show","focus","getSuggestionsShadeProduct","attr","ajax","context","url","method","success","error","document","on","shadefinderADAbutton","animate","initParameters","shadeFinderVersion","disable2ColorComparison","hideAllButtonsOnResult","shadeFinderDeltaEThreshold","skinSmoothStrength","language","shadeFinderResultVersion","showShadeFinderLogo","showBackAndCloseButton","userConsent","windowSize","window","width","windowHeight","height","applyShade","shadeData","shadeNameElt","clickShadeElt","squareShadeElt","id","shadeID","shadeName","shadeOOS","colorCode","YMK","init","openShadeFinder","addEventListener","hide","spinner","stop","closeEngine","modal","data","matchedProductIds","productIds","recommendations","productListIds","JSON","parse","html","i","matched","j","skuId","push","enableCompare","nbShade","dataUrl","slice","type","dataType","dataLayer","productListGtm","ecommerce","impressions","productName","name","vtoSite","event","a","b","parents","siblings","hasClass","datalayername","toString","replace","trim","find","shadeOOSValue","ariaLabelValue","addToCart2Value","outOfStockValue","replaceWith","applyMakeupBySku","each","nextIndex","prevIndex","$buttons","currentIndex","index","key","eq","click","reset","e","which","isLoaded","preventDefault","linktofocus","isClickInprogress","initShadeFinderVto","selectedValueUrl","open","htmlString","navigator","userAgent","match","start","$html","parseHTML","selector","$button","Promise","resolve","querySelector","observer","MutationObserver","disconnect","observe","body","childList","subtree","then","elm","optinAlreadyDisplayed","module","exports","include","Object","keys","forEach","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","processInclude","require","ready"],"sourceRoot":""}