{"version":3,"sources":["before.js","main.js","after.js"],"names":["$","OpalWoocommerceMain","_classCallCheck","this","initCarousel","addedToCart","initSelectOrder","_createClass","key","value","instance","is","a","x","b","document","getElementsByClassName","elmnt","y","i","arrNo","push","c","length","indexOf","classList","add","j","selElmnt","$select","getElementsByTagName","createElement","setAttribute","innerHTML","options","selectedIndex","appendChild","addEventListener","e","k","s","h","parentNode","click","trigger","stopPropagation","closeAllSelect","toggle","each","index","element","$container","$slider","closest","flexslider","selector","animation","controlNav","smoothHeight","_this2","activeGalleryThumbnail","slider","currentSlide","after","start","setTimeout","data","resize","on","find","directionNav","slideshow","$gallery","removeClass","addClass","event","$item","hasClass","remove","$img","first","before","currentTarget","outerHTML","src","object","srcset","attr","$element","items","items980","items768","dots","responsive","0","768","980","1200","$product","button","productName","text","template","wp","$wishlist","ajax","action","dataType","success","beforeSend","complete","count","OpalTheme_Woocommerce_filter","selectorsClick","selectorsChange","url","initDisplayMode","init","initCategoriesDropdown","priceSlideChange","window","history","state","woofilter","_this3","renderHtml","_this4","join","preventDefault","$this","sendRequest","val","objUrl","URL","location","href","searchParams","URLSearchParams","search","set","toString","position","offset","top","outerHeight","scrollTop","animate","getCookie","get","_this5","arguments","undefined","replaceUrl","initLoading","post","$html","title","filter","sidebar","html","content","pagetitle","pushState","scrollUp","initPriceSlider","initOrdering","getInstance","check","append","recentlyContent","hide","recentlyTitle","show","scrollHeight","height","contentHeight","_this","parent","off","replace","_this6","min_price","range","min","max","max_price","values","current_min_price","current_max_price","create","body","slide","ui","change","_this7","ca","substring","name","cname","cvalue","exdays","d","setTime","getTime","cookie","expires","ready","jQuery"],"mappings":"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","file":"main.js","sourcesContent":["(function ($) {","class OpalWoocommerceMain {\n static instance;\n static getInstance() {\n if (!OpalWoocommerceMain.instance) {\n OpalWoocommerceMain.instance = new OpalWoocommerceMain();\n }\n return OpalWoocommerceMain.instance;\n }\n\n constructor() {\n this.initCarousel();\n this.addedToCart();\n this.initWishlist();\n //this.initSlideProduct();\n this.initSelectOrder();\n }\n\n initSelectOrder(){\n if($('body').is('.post-type-archive-product, .tax-product_cat')) {\n\n let x, i, j, selElmnt, a, b, c;\n /*look for any elements with the class \"custom-select\":*/\n x = document.getElementsByClassName(\"woocommerce-ordering\");\n let $select = $('.woocommerce-ordering .orderby');\n for (i = 0; i < x.length; i++) {\n selElmnt = x[i].getElementsByTagName(\"select\")[0];\n /*for each element, create a new DIV that will act as the selected item:*/\n a = document.createElement(\"DIV\");\n a.setAttribute(\"class\", \"select-selected\");\n a.innerHTML = selElmnt.options[selElmnt.selectedIndex].innerHTML;\n x[i].appendChild(a);\n /*for each element, create a new DIV that will contain the option list:*/\n b = document.createElement(\"DIV\");\n b.setAttribute(\"class\", \"select-items select-hide\");\n for (j = 1; j < selElmnt.length; j++) {\n /*for each option in the original select element,\n create a new DIV that will act as an option item:*/\n c = document.createElement(\"DIV\");\n c.innerHTML = selElmnt.options[j].innerHTML;\n c.addEventListener(\"click\", function (e) {\n /*when an item is clicked, update the original select box,\n and the selected item:*/\n let y, i, k, s, h;\n s = this.parentNode.parentNode.getElementsByTagName(\"select\")[0];\n h = this.parentNode.previousSibling;\n for (i = 0; i < s.length; i++) {\n if (s.options[i].innerHTML == this.innerHTML) {\n s.selectedIndex = i;\n h.innerHTML = this.innerHTML;\n y = this.parentNode.getElementsByClassName(\"same-as-selected\");\n for (k = 0; k < y.length; k++) {\n y[k].removeAttribute(\"class\");\n }\n this.setAttribute(\"class\", \"same-as-selected\");\n break;\n }\n }\n h.click();\n $select.trigger('change');\n });\n b.appendChild(c);\n }\n x[i].appendChild(b);\n a.addEventListener(\"click\", function (e) {\n /*when the select box is clicked, close any other select boxes,\n and open/close the current select box:*/\n e.stopPropagation();\n closeAllSelect(this);\n this.nextSibling.classList.toggle(\"select-hide\");\n this.classList.toggle(\"select-arrow-active\");\n });\n }\n\n function closeAllSelect(elmnt) {\n /*a function that will close all select boxes in the document,\n except the current select box:*/\n let x, y, i, arrNo = [];\n x = document.getElementsByClassName(\"select-items\");\n y = document.getElementsByClassName(\"select-selected\");\n for (i = 0; i < y.length; i++) {\n if (elmnt == y[i]) {\n arrNo.push(i)\n } else {\n y[i].classList.remove(\"select-arrow-active\");\n }\n }\n for (i = 0; i < x.length; i++) {\n if (arrNo.indexOf(i)) {\n x[i].classList.add(\"select-hide\");\n }\n }\n }\n\n /*if the user clicks anywhere outside the select box,\n then close all select boxes:*/\n document.addEventListener(\"click\", closeAllSelect);\n }\n }\n\n initSlideProduct() {\n $('.product-block .product-img-wrap').each((index, element) => {\n let $slider = $(element);\n let $container = $slider.closest('.product-block');\n $slider.flexslider({\n selector: '.inner > .product-image',\n animation: 'slide',\n controlNav: true,\n directionNav: true,\n slideshow: false,\n smoothHeight: false,\n before: (slider) => {\n\n if (slider.direction === 'next') {\n this.activeGalleryThumbnail($container, slider.currentSlide + 1);\n } else {\n this.activeGalleryThumbnail($container, slider.currentSlide - 1);\n }\n },\n after: (slider) => {\n this.activeGalleryThumbnail($container, slider.currentSlide);\n },\n start: function(){\n setTimeout(function(){\n $slider.addClass('flexslider-loaded');\n $slider.data('flexslider').resize();\n }, 500);\n }\n // 'animationSpeed': 500,\n });\n $('.gallery-nav-next', $container).on('click', function () {\n $container.find('.flex-nav-next a').trigger('click');\n });\n\n $('.gallery-nav-prev', $container).on('click', function () {\n $container.find('.flex-nav-prev a').trigger('click');\n });\n\n $('.gallery_item', $container).on('click', (event) => {\n let number = $(event.currentTarget).data('number');\n $slider.data('flexslider').flexAnimate(number);\n this.activeGalleryThumbnail($container, number);\n })\n })\n }\n\n activeGalleryThumbnail($container, key) {\n let $gallery = $('.woocommerce-loop-product__gallery', $container);\n $('.gallery_item', $gallery).removeClass('active');\n $('.gallery_item[data-number=\"' + key + '\"]', $gallery).addClass('active');\n }\n\n initVariableItem() {\n $('.otf-wrap-swatches .swatch').on('click', (event) => {\n event.preventDefault();\n let $item = $(event.currentTarget);\n let $container = $item.closest('.product');\n\n if ($item.hasClass('checked')) {\n $container.removeClass('product-swatched');\n $item.removeClass('checked');\n $container.find('.product-image-swatch').remove();\n } else {\n $item.closest('.otf-wrap-swatches').find('.swatch').removeClass('checked');\n $container.addClass('product-swatched product-swatch-loading');\n $item.addClass('checked');\n let object = $item.data('image');\n if (object.src) {\n let $img = $('').on('load', (event) => {\n $container.find('.product-image-swatch').remove();\n $container.removeClass('product-swatch-loading');\n $container.find('.product-image').first().before(`
${event.currentTarget.outerHTML}
`);\n }).attr({\n src: object.src,\n });\n if (object.srcset) {\n $img.attr(srcset, object.srcset);\n }\n }\n }\n })\n }\n\n initCarousel() {\n $('.woocommerce-product-carousel').each((index, element) => {\n let $element = $(element);\n let items = $element.data('columns');\n let itemMobile = 1;\n let items768 = 2;\n let items980 = items;\n if (items > 3) {\n items980 = items - 1;\n items768 = items - 2;\n }\n if (items < 2) {\n items768 = items;\n }\n $element.find('ul.products').owlCarousel({\n items: items,\n nav: true,\n dots: false,\n responsive: {\n 0: {\n items: itemMobile,\n },\n 480: {\n items: itemMobile,\n },\n 768: {\n items: items768\n },\n 980: {\n items: items980\n },\n 1200: {\n items: items\n }\n }\n })\n });\n }\n\n addedToCart() {\n let $product;\n $('body').on('adding_to_cart', function (event, button) {\n $product = button.closest('.product');\n }).on('added_to_cart', function () {\n let src = $product.find('img').first().attr('src');\n let productName = $product.find('.woocommerce-loop-product__title').text();\n let template = wp.template('added-to-cart-template');\n $('#page-title-bar').after(template({src: src, name: productName}));\n setTimeout(function () {\n $('.notification-added-to-cart').addClass('hide');\n }, 3000);\n });\n }\n\n initWishlist() {\n $(document).on('added_to_wishlist removed_from_wishlist', function () {\n let $wishlist = $('.opal-header-wishlist');\n $.ajax({\n url: yith_wcwl_l10n.ajax_url,\n data: {\n action: 'osf_update_wishlist_count'\n },\n dataType: 'json',\n success: function (data) {\n $wishlist.find('.count').text(data.count);\n },\n beforeSend: function () {\n },\n complete: function () {\n }\n });\n })\n\n $('body').on('woosw_change_count', function(event,count){\n let $wishlist = $('.opal-header-wishlist');\n $wishlist.find('.count').text(count);\n });\n }\n}\n\nclass OpalTheme_Woocommerce_filter {\n selectorsClick = []\n selectorsChange = []\n\n constructor() {\n this.selectorsClick = [\n '#secondary .widget .product-categories a',\n '#secondary .widget .product-brands a',\n '#secondary .widget .woocommerce-widget-layered-nav-list a',\n '#secondary .widget.widget_layered_nav_filters a',\n '#secondary .widget.widget_rating_filter a',\n '#secondary .widget_product_tag_cloud a',\n\n '#opal-canvas-filter .widget .product-categories a',\n '#opal-canvas-filter .widget .product-brands a',\n '#opal-canvas-filter .widget .woocommerce-widget-layered-nav-list a',\n '#opal-canvas-filter .widget.widget_layered_nav_filters a',\n '#opal-canvas-filter .widget.widget_rating_filter a',\n '#opal-canvas-filter .widget_product_tag_cloud a',\n\n '#main ul.products + .woocommerce-pagination a',\n '#secondary .widget .product-brands a',\n '.otf-active-filters .widget_layered_nav_filters a',\n '.otf-active-filters .clear-all',\n ];\n this.initDisplayMode();\n this.init();\n this.initCategoriesDropdown();\n this.initRecentlyReviewed();\n this.priceSlideChange();\n this.initOrdering();\n\n $(window).on(\"popstate\", () => {\n if (history.state && history.state.woofilter) {\n this.renderHtml(history.state);\n }\n });\n }\n\n init() {\n $('body').on('click', this.selectorsClick.join(','), (event) => {\n event.preventDefault();\n let $this = $(event.currentTarget);\n let url = $this.attr('href');\n this.sendRequest(url);\n }).on('click', '.display-mode button[type=\"submit\"]', (event) => {\n event.preventDefault();\n let $this = $(event.currentTarget);\n if (!$this.hasClass('active')) {\n let value = $this.val();\n let objUrl = new URL(window.location.href);\n let searchParams = new URLSearchParams(window.location.search);\n searchParams.set('display', value);\n objUrl.search = searchParams.toString();\n this.sendRequest(objUrl.toString(), false);\n }\n });\n }\n\n scrollUp() {\n\n let position = $('#primary').offset().top;\n if ($('body').hasClass('opal-header-sticky')) {\n position -= $('#opal-header-sticky').outerHeight();\n }\n\n if ($('#wpadminbar').length > 0) {\n position -= $('#wpadminbar').outerHeight();\n }\n if ($(window).scrollTop() > position) {\n $('html, body').animate({scrollTop: position}, 'slow');\n }\n }\n\n replaceUrl(url) {\n let layout = this.getCookie('otf_woocommerce_display', 'grid');\n if (layout === 'list') {\n if (url.indexOf('?') !== -1) {\n url = url + '&display=list';\n } else {\n url = url + '?display=list';\n }\n }\n\n return url;\n }\n\n initDisplayMode() {\n if ($('body').hasClass('opal-woocommerce-archive')) {\n let display = this.getCookie('otf_woocommerce_display', 'grid');\n if (display === 'list') {\n let url = window.location.href;\n let objUrl = new URL(url);\n let dp = objUrl.searchParams.get(\"display\");\n if (!dp) {\n this.sendRequest(url);\n }\n }\n }\n }\n\n sendRequest(url, replace = true) {\n if (replace) {\n url = this.replaceUrl(url);\n }\n this.initLoading(true);\n $.post(url, (data) => {\n if (data) {\n let $html = $(data);\n let state = {\n woofilter: true,\n title : $html.filter('title').text(),\n sidebar : $html.find('#secondary').html(),\n content : $html.find('#primary').html(),\n filter : $html.find('.opal-canvas-filter-wrap').html(),\n pagetitle: $html.find('#page-title-bar').html(),\n };\n this.renderHtml(state);\n $(document).trigger('opal-fill-success');\n window.history.pushState(state, state.title, url);\n }\n this.initLoading(false)\n })\n }\n\n renderHtml(state) {\n this.scrollUp();\n $('head title').text(state.title);\n $('#primary').html(state.content);\n $('#secondary').html(state.sidebar);\n $('#opal-canvas-filter .opal-canvas-filter-wrap').html(state.filter);\n $('#page-title-bar').html(state.pagetitle);\n this.initPriceSlider();\n this.initCategoriesDropdown();\n this.initOrdering();\n this.initLoading(false);\n //OpalWoocommerceMain.getInstance().initSlideProduct();\n OpalWoocommerceMain.getInstance().initSelectOrder();\n }\n\n initLoading(check) {\n if (check) {\n $('body').addClass('opal-filter-loading').append('
');\n } else {\n $('body').removeClass('opal-filter-loading');\n $('#opal-woocommerce-loading').remove();\n }\n }\n\n initRecentlyReviewed() {\n let recentlyTitle = $('h2.otf-woocommerce-recently-viewed');\n let recentlyContent = $('.otf-product-recently-content');\n recentlyContent.hide();\n\n recentlyTitle.on('click', function (e) {\n e.stopPropagation();\n if (!recentlyTitle.hasClass('active')) {\n recentlyContent.show(400);\n recentlyTitle.addClass('active');\n let scrollHeight = $(document).height();\n let contentHeight = $('.widget_recently_viewed_products').height();\n $(\"html, body\").animate({scrollTop: scrollHeight}, contentHeight + 10);\n } else {\n recentlyContent.hide(400);\n recentlyTitle.removeClass('active');\n }\n });\n\n }\n\n\n initCategoriesDropdown() {\n $('.widget_product_categories ul li.cat-item').each(function () {\n let _this = $(this);\n _this.find('ul.children').hide();\n if (_this.find('.current-cat').length > 0) {\n _this.find('ul.children').show();\n $(this).append('');\n } else if (_this.find('ul.children').length > 0) {\n $(this).append('');\n }\n\n });\n $(\"body\").on(\"click\", '.widget_product_categories ul li.cat-item .closed', function () {\n $(this).parent().find('ul.children').first().show(400);\n $(this).parent().addClass('open');\n $(this).removeClass('closed').removeClass('fa-chevron-down').addClass('opened').addClass('fa-chevron-up');\n });\n $(\"body\").on(\"click\", '.widget_product_categories ul li.cat-item .opened', function () {\n $(this).parent().find('ul.children').first().hide(400);\n $(this).parent().addClass('close').removeClass('open');\n $(this).removeClass('opened').removeClass('fa-chevron-up').addClass('closed').addClass('fa-chevron-down');\n });\n }\n\n initOrdering() {\n setTimeout(() => {\n $('.woocommerce-ordering').off('change');\n $('.woocommerce-ordering').on('change', (event) => {\n let $select = $(event.currentTarget).find('.orderby');\n let url = window.location.href.replace(/&orderby(=[^&]*)?|^orderby(=[^&]*)?&?/g, '')\n .replace(/\\?orderby(=[^&]*)?|^orderby(=[^&]*)?&?/g, '?')\n .replace(/\\?$/g, '')\n\n\n if (url.indexOf('?') !== -1) {\n url = url + `&orderby=${$select.val()}`;\n } else {\n url = url + `?orderby=${$select.val()}`;\n }\n this.sendRequest(url);\n })\n }, 100);\n }\n\n initPriceSlider() {\n setTimeout(() => {\n if ($('.price_slider:not(.ui-slider)').length <= 0) {\n return true;\n }\n $('input#min_price, input#max_price').hide();\n $('.price_slider, .price_label').show();\n\n let min_price = $('.price_slider_amount #min_price').data('min'),\n max_price = $('.price_slider_amount #max_price').data('max'),\n current_min_price = $('.price_slider_amount #min_price').val(),\n current_max_price = $('.price_slider_amount #max_price').val();\n\n $('.price_slider:not(.ui-slider)').slider({\n range : true,\n animate: true,\n min : min_price,\n max : max_price,\n values : [current_min_price, current_max_price],\n create : function () {\n\n $('.price_slider_amount #min_price').val(current_min_price);\n $('.price_slider_amount #max_price').val(current_max_price);\n\n $(document.body).trigger('price_slider_create', [current_min_price, current_max_price]);\n },\n slide : function (event, ui) {\n\n $('input#min_price').val(ui.values[0]);\n $('input#max_price').val(ui.values[1]);\n\n $(document.body).trigger('price_slider_slide', [ui.values[0], ui.values[1]]);\n },\n change : function (event, ui) {\n\n $(document.body).trigger('price_slider_change', [ui.values[0], ui.values[1]]);\n }\n });\n }, 200);\n }\n\n priceSlideChange() {\n $(document.body).bind('price_slider_change', (event, min, max) => {\n let url = window.location.href.replace(/(min_price=\\d+\\&*|max_price=\\d+\\&*)/g, '')\n .replace(/\\?$/g, '')\n if (url.indexOf('?') !== -1) {\n url = url + `&min_price=${min}&max_price=${max}`;\n } else {\n url = url + `?min_price=${min}&max_price=${max}`;\n }\n this.sendRequest(url);\n })\n }\n\n getCookie(cname, _default) {\n let name = cname + \"=\";\n let ca = document.cookie.split(';');\n for (let i = 0; i < ca.length; i++) {\n let c = ca[i];\n while (c.charAt(0) === ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) === 0) {\n return c.substring(name.length, c.length);\n }\n }\n return \"\";\n }\n\n setCookie(cname, cvalue, exdays = 10) {\n let d = new Date();\n d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));\n let expires = \"expires=\" + d.toUTCString();\n document.cookie = cname + \"=\" + cvalue + \";\" + expires + \";path=/\";\n }\n\n\n}\n\n$(document).ready(function () {\n OpalWoocommerceMain.getInstance();\n new OpalTheme_Woocommerce_filter();\n});","})(jQuery);"]}