{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./cartridges/app_livingproof_sfra/cartridge/client/default/js/experience.js","webpack:///./cartridges/app_livingproof_sfra/cartridge/client/default/js/experience/spacer.js","webpack:///./sfra/cartridges/app_storefront_base/cartridge/client/default/js/util.js","webpack:///./vendor/app_storefront_core/cartridge/client/default/js/components/instagram.js"],"names":[],"mappings":";QAAA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;;;;;;AClFa;;AAEb,qBAAqB,mBAAO,CAAC,4FAAW;;AAExC;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,IAAI;AACf;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,sBAAsB;AAC7C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,mBAAmB,mBAAO,CAAC,+GAAqB;AAChD;AACA,mBAAmB,mBAAO,CAAC,mHAA2B;;AAEtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,sDAAsD,EAAE;AACtF;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,CAAC;;AAED;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;;AAEA;;AAEA;AACA;AACA,CAAC;;AAED;AACA;AACA,CAAC;;;;;;;;;;;;;ACtMY;;AAEb;AACA;AACA;AACA,KAAK;AACL,CAAC;;;;;;;;;;;;;ACNY;;AAEb;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;;;;;;;;;;;;ACXA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,eAAe;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA,IAAI;AACJ;AACA;;AAEA,2DAA2D,KAAK,GAAG,uCAAuC,aAAa,GAAG,eAAe,KAAK,IAAI,KAAK,gCAAgC,KAAK,6DAA6D,+BAA+B,SAAS,KAAK,WAAW,GAAG,kCAAkC,QAAQ;AAC9V;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;;AAEA,WAAW,YAAY;AACvB;AACA;AACA,EAAE;AACF,E","file":"default/js/experience.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 = \"./cartridges/app_livingproof_sfra/cartridge/client/default/js/experience.js\");\n","'use strict';\n\nvar processInclude = require('base/util');\n\n/**\n * Init PD Slider\n */\nfunction pdSlider() {\n\n if ($('.pd-slider.slick-initialized').length) {\n $('.pd-slider').slick('unslick');\n }\n\n // Detect if page in in the editor\n if (window.location !== window.parent.location) {\n $(\".experience-page\").addClass('in-editor');\n\n $('.experience-component .carousel').each(function() {\n if(!$(this).hasClass('edit-mode')){\n $(this).find('.pd-slider').slick();\n }\n });\n } else {\n $('.experience-component .carousel').each(function() {\n $(this).find('.pd-slider').slick();\n });\n }\n}\n\n/**\n * Lighten or Darken Color\n *\n * The CSS preprocessors Sass and LESS can take any color and darken() or\n * lighten() it by a specific value. But no such ability is built into\n * JavaScript. This function takes colors in hex format (i.e. #F06D06, with or\n * without hash) and lightens or darkens them with a value.\n *\n * @param {String} colorCode The hex color code (with or without # prefix).\n * @param {Int} amount\n */\n\nfunction LightenDarkenColor(colorCode, amount) {\n var usePound = false;\n\n if (colorCode[0] == '#') {\n colorCode = colorCode.slice(1);\n usePound = true;\n }\n \n var num = parseInt(colorCode, 16);\n \n var r = (num >> 16) + amount;\n \n if (r > 255) {\n r = 255;\n } else if (r < 0) {\n r = 0;\n }\n \n var b = ((num >> 8) & 0x00FF) + amount;\n \n if (b > 255) {\n b = 255;\n } else if (b < 0) {\n b = 0;\n }\n \n var g = (num & 0x0000FF) + amount;\n \n if (g > 255) {\n g = 255;\n } else if (g < 0) {\n g = 0;\n }\n \n return (usePound ? '#' : '') + (g | (b << 8) | (r << 16)).toString(16);\n}\n\n/**\n * Get Custom colors for buttons\n */\nfunction getCustomColors () {\n let customBtn = document.querySelectorAll('.btn-custom');\n if (customBtn.length) {\n for (let b = 0; b < customBtn.length; b++) {\n customBtn[b].style.setProperty('--bgColor', customBtn[b].dataset.bgcolor);\n customBtn[b].style.setProperty('--bgColor2', LightenDarkenColor(customBtn[b].dataset.bgcolor, -33));\n customBtn[b].style.setProperty('--textColor', customBtn[b].dataset.textcolor);\n }\n }\n}\n\n$(document).ready(function () {\n // processInclude(require('./experience/imageAndText'));\n // processInclude(require('./experience/featureFocus'));\n // processInclude(require('./experience/videoTile'));\n processInclude(require('./experience/spacer'));\n // Include Instagram client JS\n processInclude(require('core/components/instagram'));\n\n $('.pd-text-slider').slick({\n dots: true,\n arrows: true,\n infinite: true,\n slidesToShow: 1,\n slidesToScroll: 1,\n customPaging: function () {\n setTimeout(() => { $('.pd-text-slider .slick-slide').removeAttr('role'); }, 10);\n }\n });\n\n // Detect if page is in the editor\n if (window.location !== window.parent.location) {\n $('.experience-page').addClass('in-editor');\n\n $('.experience-component .carousel').each(function (index) {\n if (!$(this).hasClass('edit-mode')) {\n $(this).find('.pd-slider').slick();\n }\n });\n } else {\n $('.pd-slider').slick();\n }\n\n pdSlider();\n getCustomColors();\n\n if ($('.js-sidebar-links').length > 0) {\n var sidebarLinks = $('.js-blogDetail[data-blogsidebarlink]');\n\n sidebarLinks = sidebarLinks.filter(function() {\n var linkText = $(this).data('blogsidebarlink');\n return linkText.trim() !== '';\n });\n\n if (sidebarLinks.length > 1) {\n sidebarLinks.each(function() {\n var linkText = $(this).data('blogsidebarlink');\n var linkId = $(this).data('blogsidebarid');\n\n var link = $('').attr('href', '#').attr('id', linkId).attr('class', 'anchor-link').text(linkText);\n var listItem = $('
  • ').append(link);\n $('.js-sidebar-links ul').append(listItem);\n });\n } else {\n $('.main-article-links').hide();\n }\n }\n\n $('.js-sidebar-links ul').on('click', 'a', function(event) {\n event.preventDefault();\n\n var targetId = $(this).attr('id');\n var targetSection = $('.js-blogDetail[data-blogsidebarid=\"' + targetId + '\"]');\n\n if (targetSection.length > 0) {\n var offsetTop = targetSection.offset().top - 130;\n\n $('html, body').animate({\n scrollTop: offsetTop\n }, 500);\n }\n });\n\n $('select.js-blogPost-pagination').on('change', function() {\n var selectedUrl = $(this).val();\n if (selectedUrl) {\n window.location.href = selectedUrl;\n }\n });\n});\n\n$(window).smartresize(function() {\n pdSlider();\n});\n\nfunction addClassOnScroll() {\n var windowTop = $(window).scrollTop();\n var elementTop = $('.main-blog-detail').offset().top - 128;\n var articleLinks = $('.main-article-links');\n var blogDetail = $('.main-blog-detail');\n var endPos = blogDetail.offset().top + blogDetail.height() - articleLinks.height() - 250;\n\n if (windowTop >= elementTop && $(window).scrollTop() < endPos) {\n $('.js-sidebar-links').addClass('fixed');\n } else {\n $('.js-sidebar-links').removeClass('fixed');\n }\n}\n\naddClassOnScroll();\n\n$(window).scroll(function() {\n addClassOnScroll();\n});\n\n$(window).resize(function () {\n endPos = blogDetail.offset().top + blogDetail.height() - articleLinks.height() - 250;\n});\n","'use strict';\n\n$(document).ready(function () {\n $('.experience-commerce_assets-spacer').each(function( index ) {\n $(this).prev(\"div[class^='experience-commerce_layouts'], div[class*=' experience-commerce_layouts']\").css('margin-bottom', '0');\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","\nfunction setTiles(container) {\n\tlet url = container.dataset.source,\n\t\tisCarousel = container.classList.contains('ig-gallery--carousel');\n\tfetch(url)\n\t.then(response => response.json())\n\t.then(data => {\n\t\tlet post = data.data,\n\t\t\ticon = ``;\n\t\t//console.log(post);\n\t\tfor (p=0; p`;\n\t\t\t} else if (type === \"VIDEO\") {\n\t\t\t\ticon = ``;\n\t\t\t} else {\n\t\t\t\ticon = ``;\n\t\t\t}\n\n\t\t\tcontainer.innerHTML += ` 0 ? 'hasCaption' : ''}\" data-id=\"${id}\" data-user=\"${user}\">${icon}\"${user}
    ${caption}
    `;\n\t\t}\n\t\t// Initialize slick for carousel component(s)\n\t\tif (isCarousel) {\n\t\t\tinitSlick(container);\n\t\t}\n\t});\n}\n\nfunction initSlick(container) {\n\n $(container).slick({\n\t\tcenterMode: true,\n\t\taccessibility: false,\n\t\tslidesToShow: 1,\n\t\tslidesToScroll: 1,\n\t\tmobileFirst: true,\n \tresponsive: [{\n \t\t\tbreakpoint: 480,\n \t\t\tsettings: {\n \t\t\t\tslidesToShow: 2,\n\t\t\t\t\tcenterMode: false\n \t\t\t}\n \t\t},\n \t\t{\n \t\t\tbreakpoint: 768,\n \t\t\tsettings: {\n \t\t\t\tslidesToShow: 4,\n\t\t\t\t\tcenterMode: false\n \t\t\t}\n \t\t}\n \t]\n })\n}\n\nmodule.exports = function () {\n\t$(document).ready(function(){\n\t\tlet ig = $('.ig-gallery');\n\n\t\tfor (i=0;i