{"version":3,"file":"store.js","mappings":"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","sources":["webpack://build/../barrocaneon/node_modules/vanilla-lazyload/dist/lazyload.min.js","webpack://build/webpack/bootstrap","webpack://build/../barrocaneon/assets/javascripts/store.js"],"sourcesContent":["!function(n,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(n=\"undefined\"!=typeof globalThis?globalThis:n||self).LazyLoad=t()}(this,(function(){\"use strict\";function n(){return n=Object.assign||function(n){for(var t=1;t1,r={elements_selector:\".lazy\",container:e||t?document:null,threshold:300,thresholds:null,data_src:\"src\",data_srcset:\"srcset\",data_sizes:\"sizes\",data_bg:\"bg\",data_bg_hidpi:\"bg-hidpi\",data_bg_multi:\"bg-multi\",data_bg_multi_hidpi:\"bg-multi-hidpi\",data_bg_set:\"bg-set\",data_poster:\"poster\",class_applied:\"applied\",class_loading:\"loading\",class_loaded:\"loaded\",class_error:\"error\",class_entered:\"entered\",class_exited:\"exited\",unobserve_completed:!0,unobserve_entered:!1,cancel_on_exit:!0,callback_enter:null,callback_exit:null,callback_applied:null,callback_loading:null,callback_loaded:null,callback_error:null,callback_finish:null,callback_cancel:null,use_native:!1,restore_on_error:!1},c=function(t){return n({},r,t)},l=function(n,t){var e,i=\"LazyLoad::Initialized\",o=new n(t);try{e=new CustomEvent(i,{detail:{instance:o}})}catch(n){(e=document.createEvent(\"CustomEvent\")).initCustomEvent(i,!1,!1,{instance:o})}window.dispatchEvent(e)},u=\"src\",s=\"srcset\",d=\"sizes\",f=\"poster\",_=\"llOriginalAttrs\",g=\"data\",v=\"loading\",b=\"loaded\",p=\"applied\",m=\"error\",h=\"native\",E=\"data-\",I=\"ll-status\",y=function(n,t){return n.getAttribute(E+t)},k=function(n){return y(n,I)},w=function(n,t){return function(n,t,e){var i=\"data-ll-status\";null!==e?n.setAttribute(i,e):n.removeAttribute(i)}(n,0,t)},A=function(n){return w(n,null)},L=function(n){return null===k(n)},O=function(n){return k(n)===h},x=[v,b,p,m],C=function(n,t,e,i){n&&\"function\"==typeof n&&(void 0===i?void 0===e?n(t):n(t,e):n(t,e,i))},N=function(n,t){o?n.classList.add(t):n.className+=(n.className?\" \":\"\")+t},M=function(n,t){o?n.classList.remove(t):n.className=n.className.replace(new RegExp(\"(^|\\\\s+)\"+t+\"(\\\\s+|$)\"),\" \").replace(/^\\s+/,\"\").replace(/\\s+$/,\"\")},z=function(n){return n.llTempImage},T=function(n,t){if(t){var e=t._observer;e&&e.unobserve(n)}},R=function(n,t){n&&(n.loadingCount+=t)},G=function(n,t){n&&(n.toLoadCount=t)},j=function(n){for(var t,e=[],i=0;t=n.children[i];i+=1)\"SOURCE\"===t.tagName&&e.push(t);return e},D=function(n,t){var e=n.parentNode;e&&\"PICTURE\"===e.tagName&&j(e).forEach(t)},H=function(n,t){j(n).forEach(t)},V=[u],F=[u,f],B=[u,s,d],J=[g],P=function(n){return!!n[_]},S=function(n){return n[_]},U=function(n){return delete n[_]},$=function(n,t){if(!P(n)){var e={};t.forEach((function(t){e[t]=n.getAttribute(t)})),n[_]=e}},q=function(n,t){if(P(n)){var e=S(n);t.forEach((function(t){!function(n,t,e){e?n.setAttribute(t,e):n.removeAttribute(t)}(n,t,e[t])}))}},K=function(n,t,e){N(n,t.class_applied),w(n,p),e&&(t.unobserve_completed&&T(n,t),C(t.callback_applied,n,e))},Q=function(n,t,e){N(n,t.class_loading),w(n,v),e&&(R(e,1),C(t.callback_loading,n,e))},W=function(n,t,e){e&&n.setAttribute(t,e)},X=function(n,t){W(n,d,y(n,t.data_sizes)),W(n,s,y(n,t.data_srcset)),W(n,u,y(n,t.data_src))},Y={IMG:function(n,t){D(n,(function(n){$(n,B),X(n,t)})),$(n,B),X(n,t)},IFRAME:function(n,t){$(n,V),W(n,u,y(n,t.data_src))},VIDEO:function(n,t){H(n,(function(n){$(n,V),W(n,u,y(n,t.data_src))})),$(n,F),W(n,f,y(n,t.data_poster)),W(n,u,y(n,t.data_src)),n.load()},OBJECT:function(n,t){$(n,J),W(n,g,y(n,t.data_src))}},Z=[\"IMG\",\"IFRAME\",\"VIDEO\",\"OBJECT\"],nn=function(n,t){!t||function(n){return n.loadingCount>0}(t)||function(n){return n.toLoadCount>0}(t)||C(n.callback_finish,t)},tn=function(n,t,e){n.addEventListener(t,e),n.llEvLisnrs[t]=e},en=function(n,t,e){n.removeEventListener(t,e)},on=function(n){return!!n.llEvLisnrs},an=function(n){if(on(n)){var t=n.llEvLisnrs;for(var e in t){var i=t[e];en(n,e,i)}delete n.llEvLisnrs}},rn=function(n,t,e){!function(n){delete n.llTempImage}(n),R(e,-1),function(n){n&&(n.toLoadCount-=1)}(e),M(n,t.class_loading),t.unobserve_completed&&T(n,e)},cn=function(n,t,e){var i=z(n)||n;on(i)||function(n,t,e){on(n)||(n.llEvLisnrs={});var i=\"VIDEO\"===n.tagName?\"loadeddata\":\"load\";tn(n,i,t),tn(n,\"error\",e)}(i,(function(o){!function(n,t,e,i){var o=O(t);rn(t,e,i),N(t,e.class_loaded),w(t,b),C(e.callback_loaded,t,i),o||nn(e,i)}(0,n,t,e),an(i)}),(function(o){!function(n,t,e,i){var o=O(t);rn(t,e,i),N(t,e.class_error),w(t,m),C(e.callback_error,t,i),e.restore_on_error&&q(t,B),o||nn(e,i)}(0,n,t,e),an(i)}))},ln=function(n,t,e){!function(n){return Z.indexOf(n.tagName)>-1}(n)?function(n,t,e){!function(n){n.llTempImage=document.createElement(\"IMG\")}(n),cn(n,t,e),function(n){P(n)||(n[_]={backgroundImage:n.style.backgroundImage})}(n),function(n,t,e){var i=y(n,t.data_bg),o=y(n,t.data_bg_hidpi),r=a&&o?o:i;r&&(n.style.backgroundImage='url(\"'.concat(r,'\")'),z(n).setAttribute(u,r),Q(n,t,e))}(n,t,e),function(n,t,e){var i=y(n,t.data_bg_multi),o=y(n,t.data_bg_multi_hidpi),r=a&&o?o:i;r&&(n.style.backgroundImage=r,K(n,t,e))}(n,t,e),function(n,t,e){var i=y(n,t.data_bg_set);if(i){var o=i.split(\"|\"),a=o.map((function(n){return\"image-set(\".concat(n,\")\")}));n.style.backgroundImage=a.join(),\"\"===n.style.backgroundImage&&(a=o.map((function(n){return\"-webkit-image-set(\".concat(n,\")\")})),n.style.backgroundImage=a.join()),K(n,t,e)}}(n,t,e)}(n,t,e):function(n,t,e){cn(n,t,e),function(n,t,e){var i=Y[n.tagName];i&&(i(n,t),Q(n,t,e))}(n,t,e)}(n,t,e)},un=function(n){n.removeAttribute(u),n.removeAttribute(s),n.removeAttribute(d)},sn=function(n){D(n,(function(n){q(n,B)})),q(n,B)},dn={IMG:sn,IFRAME:function(n){q(n,V)},VIDEO:function(n){H(n,(function(n){q(n,V)})),q(n,F),n.load()},OBJECT:function(n){q(n,J)}},fn=function(n,t){(function(n){var t=dn[n.tagName];t?t(n):function(n){if(P(n)){var t=S(n);n.style.backgroundImage=t.backgroundImage}}(n)})(n),function(n,t){L(n)||O(n)||(M(n,t.class_entered),M(n,t.class_exited),M(n,t.class_applied),M(n,t.class_loading),M(n,t.class_loaded),M(n,t.class_error))}(n,t),A(n),U(n)},_n=[\"IMG\",\"IFRAME\",\"VIDEO\"],gn=function(n){return n.use_native&&\"loading\"in HTMLImageElement.prototype},vn=function(n,t,e){n.forEach((function(n){return function(n){return n.isIntersecting||n.intersectionRatio>0}(n)?function(n,t,e,i){var o=function(n){return x.indexOf(k(n))>=0}(n);w(n,\"entered\"),N(n,e.class_entered),M(n,e.class_exited),function(n,t,e){t.unobserve_entered&&T(n,e)}(n,e,i),C(e.callback_enter,n,t,i),o||ln(n,e,i)}(n.target,n,t,e):function(n,t,e,i){L(n)||(N(n,e.class_exited),function(n,t,e,i){e.cancel_on_exit&&function(n){return k(n)===v}(n)&&\"IMG\"===n.tagName&&(an(n),function(n){D(n,(function(n){un(n)})),un(n)}(n),sn(n),M(n,e.class_loading),R(i,-1),A(n),C(e.callback_cancel,n,t,i))}(n,t,e,i),C(e.callback_exit,n,t,i))}(n.target,n,t,e)}))},bn=function(n){return Array.prototype.slice.call(n)},pn=function(n){return n.container.querySelectorAll(n.elements_selector)},mn=function(n){return function(n){return k(n)===m}(n)},hn=function(n,t){return function(n){return bn(n).filter(L)}(n||pn(t))},En=function(n,e){var o=c(n);this._settings=o,this.loadingCount=0,function(n,t){i&&!gn(n)&&(t._observer=new IntersectionObserver((function(e){vn(e,n,t)}),function(n){return{root:n.container===document?null:n.container,rootMargin:n.thresholds||n.threshold+\"px\"}}(n)))}(o,this),function(n,e){t&&(e._onlineHandler=function(){!function(n,t){var e;(e=pn(n),bn(e).filter(mn)).forEach((function(t){M(t,n.class_error),A(t)})),t.update()}(n,e)},window.addEventListener(\"online\",e._onlineHandler))}(o,this),this.update(e)};return En.prototype={update:function(n){var t,o,a=this._settings,r=hn(n,a);G(this,r.length),!e&&i?gn(a)?function(n,t,e){n.forEach((function(n){-1!==_n.indexOf(n.tagName)&&function(n,t,e){n.setAttribute(\"loading\",\"lazy\"),cn(n,t,e),function(n,t){var e=Y[n.tagName];e&&e(n,t)}(n,t),w(n,h)}(n,t,e)})),G(e,0)}(r,a,this):(o=r,function(n){n.disconnect()}(t=this._observer),function(n,t){t.forEach((function(t){n.observe(t)}))}(t,o)):this.loadAll(r)},destroy:function(){this._observer&&this._observer.disconnect(),t&&window.removeEventListener(\"online\",this._onlineHandler),pn(this._settings).forEach((function(n){U(n)})),delete this._observer,delete this._settings,delete this._onlineHandler,delete this.loadingCount,delete this.toLoadCount},loadAll:function(n){var t=this,e=this._settings;hn(n,e).forEach((function(n){T(n,t),ln(n,e,t)}))},restoreAll:function(){var n=this._settings;pn(n).forEach((function(t){fn(t,n)}))}},En.load=function(n,t){var e=c(t);ln(n,e)},En.resetStatus=function(n){A(n)},t&&function(n,t){if(t)if(t.length)for(var e,i=0;e=t[i];i+=1)l(n,e);else l(n,t)}(En,window.lazyLoadOptions),En}));\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].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","const { default: LazyLoad } = require('vanilla-lazyload');\n\nwindow.$window = $(window);\nwindow.$body = $('body');\nwindow.page = $body.data('page');\nwindow.$header = $('#header');\nwindow.$wrapper = $('#wrapper');\nwindow.spaceToHeaderFixed;\nwindow.language = $('html').attr('lang');\nwindow.timeTransitionDefault = 350;\nwindow.texts = [];\n\ntexts['pt-BR'] = {\n quantity: 'quantidade',\n price: 'preço',\n cart_empty: 'O seu carrinho está vazio',\n go_product: 'Ir para a página do produto',\n btn_edit_cart: 'Editar pedido',\n btn_checkout: 'Finalizar pedido',\n btn_success: 'Adicionado!',\n errorsTxt: {\n withoutSku: 'Selecione um atributo para o produto',\n },\n};\n\nfunction getText(key, subKey) {\n if (typeof subKey == 'undefined') {\n return texts[language][key];\n } else {\n return texts[language][key][subKey];\n }\n}\n\nwindow.store = {\n config: {\n // Seletor do botão de comprar\n selectorBtnBuy: '[data-action=\"add-cart\"]',\n selectorBtnBuyAssinatura: '[data-action=\"add-cart-assinatura\"]',\n // Seletor do elemento que engloba um produto\n selectorWrapperProduct: '[data-box-produto]',\n selectorWrapperProductAssinatura: '[data-box-produto-assinatura]',\n selectorFormProduct: '[data-form-product]',\n selectorFormProductAssinatura: '[data-form-product-assinatura]',\n // Se a store tem versão internacional ou não\n hasInternacionalVersion: false,\n errorsTxt: {\n withoutSku: getText('errorsTxt', 'withoutSku'),\n },\n // configuração de comportamento ao add um produto\n addToCartOpenCartpopup: true,\n addToCartOpenCartpopupMobile: true,\n cartCount: {\n selector: '[data-cart-count]',\n attr: '[data-cart-count-attr]',\n text: '[data-cart-item-text]',\n },\n priceProds: {\n selector: '[data-update-price]',\n attr: 'data-update-price',\n processedAttr: 'data-price-processed',\n },\n },\n formatMoney: function (value) {\n // FORMATA UM VALOR\n return (\n 'R$ ' +\n value\n .toFixed(2)\n .replace('.', ',')\n .replace(/(\\d)(?=(\\d{3})+\\,)/g, '$1.')\n );\n },\n validateQuantity: function (_val) {\n // VALIDA SE A QUANTIDADE INFORMADA É UM NÚMERO\n if (!isNaN(_val)) {\n if (parseInt(_val) > 0) {\n return true;\n }\n }\n\n return false;\n },\n getClearNumber: function (_val) {\n // RETORNA UM NÚMERO LIMPO COMO INT\n if (!isNaN(_val)) {\n clearNumber = parseInt(_val);\n\n return clearNumber;\n }\n\n return false;\n },\n getPriceProd: function () {\n const { selector, attr, processedAttr } = store.config.priceProds;\n const products = document.querySelectorAll(selector);\n\n if (products.length > 0)\n products.forEach((product) => {\n const processed = product.getAttribute(processedAttr);\n\n if (processed != 'true') {\n const prodId = product.getAttribute(attr);\n const url = `/produto/preco/${prodId}`;\n\n if (prodId != null && prodId != '') {\n $.ajax({\n url: url,\n type: 'GET',\n })\n .done(function (resp) {\n // console.info(resp);\n product.innerHTML = resp;\n product.setAttribute(processedAttr, true);\n })\n .fail(function (resp) {\n // console.error(`Falha ao buscar o preço do produto ${prodId}`);\n // console.log(resp);\n });\n }\n }\n });\n },\n validateFormProduct: function (_$form) {\n // VALIDA O FORM DE PRODUTO PARA VER SE O PRODUTO PODE SER ADICIONADO\n var $parent = _$form.closest('[data-box-produto]');\n var $btnComprar = _$form.find('[data-action=\"add-cart\"]');\n var validated = true;\n var errorsTxt = [];\n\n if ($btnComprar.data('available') == 'false') {\n validated = false;\n errorsTxt.push('');\n } else {\n // verifica se o sku foi selecionado\n if (_$form.find('[name=\"sku\"]').val() == '') {\n validated = false;\n errorsTxt.push('Selecione um atributo para o produto');\n }\n\n // verifica se a quantidade é válida\n console.log(_$form.find('input[name=\"quantity\"]').val());\n if (_$form.find('input[name=\"quantity\"]').val() <= 0) {\n console.log('qtd invalida');\n validated = false;\n errorsTxt.push('Quantidade indisponível');\n }\n }\n\n return { validated: validated, errors: errorsTxt };\n },\n setRespValidateProduct: function (_resp, _$form, _$boxResponse) {\n // var $boxResult = _$form.find('.resp-validate');\n var $boxResult = _$boxResponse;\n var htmlErrors = '';\n\n if (_resp.validated) {\n $boxResult.empty();\n } else {\n for (var i = _resp.errors.length - 1; i >= 0; i--) {\n htmlErrors += '' + _resp.errors[i] + '';\n }\n\n $boxResult.html(htmlErrors);\n }\n },\n addItemResultDefault: function (_$form, _typeResult, _result, _$boxResponse) {\n var _this = this;\n if (_typeResult == 'produto-adicionado') {\n var $btnComprar = _$form.find(_this.config.selectorBtnBuy);\n\n //console.log(\"addItemResultDefault\");\n\n $btnComprar.addClass('success').html('Produto adicionado!');\n\n setTimeout(function () {\n // _$form.find('.msg-response').slideUp(350);\n $btnComprar.removeClass('success').html($btnComprar.data('text-available'));\n }, 3500);\n\n setTimeout(function () {\n window.location.href = urlCart;\n }, 150);\n } else if (_typeResult == 'erro-adicionar') {\n var errorText = JSON.parse(_result.responseText);\n\n if (typeof _$boxResponse != 'undefined' && _$boxResponse.length > 0) {\n $('html,body').animate(\n {\n scrollTop: _$boxResponse.offset().top,\n },\n '250'\n );\n\n //console.info(errorText);\n\n _$boxResponse.addClass('error');\n _$boxResponse.removeClass('success');\n\n _$boxResponse.find('span').html(errorText.error);\n _$boxResponse.slideDown(350);\n\n setTimeout(function () {\n _$boxResponse.slideUp(350);\n }, 3500);\n }\n }\n },\n addItemResultDefaultAssinatura: function (_$form, _typeResult, _result, _$boxResponse) {\n var _this = this;\n if (_typeResult == 'produto-adicionado') {\n var $btnComprar = _$form.find(_this.config.selectorBtnBuyAssinatura);\n\n $btnComprar.addClass('success').html('Adicionado!');\n\n setTimeout(function () {\n // _$form.find('.msg-response').slideUp(350);\n $btnComprar.removeClass('success').html($btnComprar.data('text-available'));\n }, 3500);\n\n setTimeout(function () {\n window.location.href = urlAssinaturaCart;\n }, 150);\n } else if (_typeResult == 'erro-adicionar') {\n if (typeof _result == 'object') {\n var errorText = _result;\n } else {\n var errorText = JSON.parse(_result);\n }\n\n if (typeof _$boxResponse != 'undefined' && _$boxResponse.length > 0) {\n console.info(errorText);\n\n _$boxResponse.addClass('error');\n _$boxResponse.removeClass('success');\n\n _$boxResponse.find('span').html(errorText.error);\n _$boxResponse.slideDown(350);\n }\n }\n },\n addItem: function (_$form, _$parent, addItemResult) {\n var _this = this;\n var $btnComprar = _$parent.find('[data-action=\"add-cart\"]');\n var urlAdd = '/carrinho/adicionar';\n var urlUpdate = '/carrinho';\n var url = urlAdd;\n var $boxResponse = _$parent.find('[data-form-product] .msg-response:not(.resp-validate)');\n var form = _$form.serializeArray();\n var quantity = _$form.find('input[name=\"quantity\"]').val();\n\n let customizations = form.filter((field) => field.name.includes('customizations'));\n for (let i = 1; i < quantity; i++) {\n form = form.concat(...customizations);\n }\n\n console.log('form', form);\n\n if (!$btnComprar.hasClass('adding')) {\n $.ajax({\n url: url,\n type: 'POST',\n dataType: 'json',\n data: form,\n beforeSend: function () {\n $btnComprar.addClass('adding');\n },\n })\n .done(function (resp) {\n // console.log('success');\n // console.info(resp);\n\n if (typeof template_store.addItemResult == 'function') {\n template_store.addItemResult(_$form, 'produto-adicionado', resp, $boxResponse);\n } else {\n template_store.addItemResultDefault(_$form, 'produto-adicionado', resp, $boxResponse);\n }\n })\n .fail(function (resp) {\n console.log('error');\n console.error(resp);\n console.error(resp.responseText);\n console.error(resp.responseText.error);\n\n if (typeof template_store.addItemResult == 'function') {\n template_store.addItemResult(_$form, 'erro-adicionar', resp, $boxResponse);\n } else {\n template_store.addItemResultDefault(_$form, 'erro-adicionar', resp, $boxResponse);\n }\n })\n .always(function () {\n // console.log('complete');\n $btnComprar.removeClass('adding');\n });\n }\n },\n addItemAssinatura: function (_$form, _$parent, addItemResult) {\n var _this = this;\n var $btnComprar = _$parent.find(store.config.selectorBtnBuyAssinatura);\n var url = urlAssinaturaCartAdd;\n var form = _$form.serialize();\n var $boxResponse = _$parent.find(\n store.config.selectorFormProductAssinatura + ' .msg-response:not(.resp-validate)'\n );\n var data = {};\n\n data.subscription_item = {\n quantity: _$form.find('[name=\"quantity\"]').val(),\n sku: _$form.find('[name=\"sku\"]').val(),\n extra: {\n vindi_plan_id: _$form.find('[name=\"extra[vindi_plan_id]\"]').val(),\n },\n };\n\n console.info('addItemAssinatura');\n console.info('addItemAssinatura', data);\n console.info('addItemAssinatura', JSON.stringify(data));\n\n if (!$btnComprar.hasClass('adding')) {\n $.ajax({\n url: url,\n type: 'POST',\n // dataType: 'json',\n contentType: 'application/json',\n data: JSON.stringify(data),\n xhrFields: { withCredentials: true },\n beforeSend: function () {\n $btnComprar.addClass('adding');\n },\n })\n .done(function (resp) {\n console.log('success');\n console.info(resp);\n\n if (typeof template_store.addItemResult == 'function') {\n template_store.addItemResult(_$form, 'produto-adicionado', resp, $boxResponse);\n } else {\n template_store.addItemResultDefaultAssinatura(\n _$form,\n 'produto-adicionado',\n resp,\n $boxResponse\n );\n }\n })\n .fail(function (xhr, status, error) {\n console.log('error');\n console.error(xhr);\n console.error(status);\n console.error(error);\n\n var resp = {\n error: 'Houve um problema ao adicionar. Tente mais tarde ou entre em contato.',\n };\n\n if (typeof template_store.addItemResult == 'function') {\n template_store.addItemResult(_$form, 'erro-adicionar', resp, $boxResponse);\n } else {\n template_store.addItemResultDefaultAssinatura(\n _$form,\n 'erro-adicionar',\n resp,\n $boxResponse\n );\n }\n })\n .always(function () {\n console.log('complete');\n $btnComprar.removeClass('adding');\n });\n }\n },\n deleteItem: function (_itemId, _$item, removeItemResult) {\n var _this = this;\n\n if (!_$item.hasClass('removing')) {\n $.ajax({\n url: '/carrinho',\n type: 'POST',\n dataType: 'json',\n data: {\n _method: 'delete',\n item_id: _itemId,\n },\n beforeSend: function () {\n _$item.addClass('removing');\n },\n })\n .done(function (_cart) {\n console.log('success');\n\n if ($body.width() > 768) {\n if (store.config.addToCartOpenCartpopup) {\n template_store.headerCart.updateCartCount(_cart);\n }\n } else {\n if (store.config.addToCartOpenCartpopupMobile) {\n template_store.headerCart.updateCartCount(_cart);\n }\n }\n\n if (typeof removeItemResult == 'function') {\n removeItemResult(_$item, _cart);\n }\n })\n .fail(function (error) {\n console.log('erro ao remover', error.responseText);\n })\n .always(function () {\n _$item.removeClass('removing');\n });\n }\n },\n setMsgResponse: function (_msg, _type, _$parent) {\n /*\n O tipo pode conter um dos 3 valores: success, warning, error ou CLEAR.\n O type CLEAR limpa as mensagens e faz sumir a mensagem\n */\n\n // Verifica se não há mais de uma mensagem\n // caso tenha, gera um html para cada mensagem\n if (Array.isArray(_msg)) {\n var msgArr = _msg;\n _msg = '';\n for (var i = msgArr.length - 1; i >= 0; i--) {\n _msg += '' + msgArr[i] + '';\n }\n }\n\n _$parent\n .find('[data-msg-retorno]')\n .removeClass('success')\n .removeClass('warning')\n .removeClass('error');\n\n _$parent.find('[data-msg-retorno] [data-msg]').empty();\n\n if (_type != 'clear') {\n _$parent.find('[data-msg-retorno]').addClass(_type);\n _$parent.find('[data-msg-retorno] [data-msg]').html(_msg);\n }\n },\n updateCartCount: function (_itemsCount) {\n var _this = this;\n\n // $(_this.cartCount.selector).empty().text(_itemsCount);\n\n $(_this.config.cartCount.attr).data('cart-count-attr', _itemsCount);\n $(_this.config.cartCount.attr).attr('data-cart-count-attr', _itemsCount);\n\n $(_this.config.cartCount.attr).html(_itemsCount);\n $(_this.config.cartCount.text).html(_itemsCount);\n $(_this.config.cartCount.textLabel).html(_itemsCount > 1 ? 'itens' : 'item');\n\n if (_itemsCount > 0) {\n $('[data-cart-body]').parent().addClass('active');\n } else {\n $('[data-cart-body]').parent().removeClass('active');\n }\n },\n getCartItens: async function () {\n try {\n const itens = await $.ajax({\n url: '/carrinho/itens',\n type: 'GET',\n dataType: 'text',\n });\n\n return itens;\n } catch (error) {\n console.error(error);\n }\n },\n submitForm: function (_$form) {\n console.log('Submit Form: ', _$form);\n _$form.find('[name=\"reply_to\"]').val(_$form.find('[name=\"email\"]').val());\n\n if (!_$form.hasClass('sending')) {\n $.ajax({\n url: '/webform',\n type: 'POST',\n data: _$form.serialize(),\n beforeSend: function () {\n _$form.addClass('sending');\n },\n })\n .done(function () {\n console.info('foi');\n store.setMsgResponse('Mensagem enviada com sucesso!', 'success', _$form);\n _$form.find('[data-msg-retorno] [data-msg-success]').addClass('visible');\n _$form.find('[data-msg-retorno] [data-msg-error]').removeClass('visible');\n _$form.find('button[type=submit]').text('Enviado');\n\n setTimeout(function () {\n _$form.find('button[type=submit]').text('Enviar');\n }, 3500);\n _$form[0].reset();\n })\n .fail(function () {\n console.info('foi, mas deu ruim');\n _$form.find('[data-msg-retorno] [data-msg-success]').removeClass('visible');\n _$form.find('[data-msg-retorno] [data-msg-error]').addClass('visible');\n _$form.find('button[type=submit]').text('Falha ao enviar');\n setTimeout(function () {\n _$form.find('button[type=submit]').text('Enviar');\n }, 3500);\n store.setMsgResponse(\n 'Houve um problema ao enviar sua mensagem, tente novamente! Ou entre em contato conosco pelo telefone (21) 99644-6925 ',\n 'error',\n $form\n );\n })\n .always(function () {\n console.log('complete');\n _$form.removeClass('sending');\n });\n }\n },\n login: {\n validateLogin: function (_$form) {\n var validated = true;\n var errorsTxt = [];\n\n if (_$form.find('[name=\"email\"]').val() == '') {\n validated = false;\n errorsTxt.push('Informe seu email!');\n }\n\n if (_$form.find('[name=\"password\"]').val() == '') {\n validated = false;\n errorsTxt.push('Informe a senha!');\n }\n\n return { validated: validated, errors: errorsTxt };\n },\n validateRegister: function (_$form) {\n var validated = true;\n var errorsTxt = [];\n\n if (_$form.find('[name=\"email\"]').val() == '') {\n validated = false;\n errorsTxt.push('Informe seu email!');\n }\n\n if (_$form.find('[name=\"password\"]').val() == '') {\n validated = false;\n errorsTxt.push('Informe uma senha!');\n }\n\n if (_$form.find('[name=\"password\"]').val() != '') {\n var pass = _$form.find('[name=\"password\"]').val();\n var confirmationPass = _$form.find('[name=\"password_confirmation\"]').val();\n\n if (pass != confirmationPass) {\n validated = false;\n errorsTxt.push('Senha e confirmação são diferentes!');\n }\n }\n\n return { validated: validated, errors: errorsTxt };\n },\n validateRecover: function (_$form) {\n var validated = true;\n var errorsTxt = [];\n\n if (_$form.find('[name=\"email\"]').val() == '') {\n validated = false;\n errorsTxt.push('Informe seu email!');\n }\n\n return { validated: validated, errors: errorsTxt };\n },\n logar: function (_$form) {\n if (!_$form.hasClass('sending')) {\n $.ajax({\n url: '/entrar',\n type: 'POST',\n dataType: 'json',\n data: _$form.serialize(),\n beforeSend: function () {\n _$form.addClass('sending');\n },\n })\n .done(function (resp) {\n console.log('success', resp);\n\n if (resp.error) {\n store.setMsgResponse(resp.error, 'error', _$form);\n }\n\n if (resp.client) {\n window.location.href = resp.redirect_to;\n }\n })\n .fail(function (resp) {\n console.error('error', error.responseText);\n })\n .always(function () {\n console.log('complete');\n _$form.removeClass('sending');\n });\n }\n },\n recoverPassord: function (_$form) {\n if (!_$form.hasClass('sending')) {\n $.ajax({\n url: '/recuperar_senha',\n type: 'POST',\n dataType: 'json',\n data: _$form.serialize(),\n beforeSend: function () {\n _$form.addClass('sending');\n },\n })\n .done(function (resp) {\n console.log('success', resp);\n\n if (resp.error) {\n store.setMsgResponse(resp.error, 'error', _$form);\n }\n\n if (resp.ok) {\n store.setMsgResponse(resp.ok, 'success', _$form);\n }\n\n /*if (resp.client) {\n window.location.href = resp.redirect_to;\n }*/\n })\n .fail(function (resp) {\n console.error('error', error.responseText);\n })\n .always(function () {\n console.log('complete');\n _$form.removeClass('sending');\n });\n }\n },\n },\n};\n\nwindow.template_store = {\n /* \n Manda um ajax para o form de avise-me e também para um form da plataforma para o cliente receber um email\n */\n submitFormNotify: function (_$form) {\n var formData = _$form.serialize();\n\n if (!_$form.hasClass('sending')) {\n $.ajax({\n url: _$form.attr('action'),\n type: 'post',\n dataType: 'json',\n data: formData,\n beforeSend: function () {\n _$form.addClass('sending');\n },\n })\n .done(function (resp) {\n console.log('success');\n console.info(resp);\n\n var msgSuccess = 'Você receberá um e-mail quando o produto estiver disponível';\n\n if (resp.error) {\n _$form.find('[data-msg-retorno] [data-msg-error]').html(resp.error);\n _$form.find('[data-msg-retorno] [data-msg-success]').removeClass('visible');\n _$form.find('[data-msg-retorno] [data-msg-error]').addClass('visible');\n } else {\n // Envia um email para o cliente saber que o usuário solicitou o avise-me\n $.ajax({\n url: '/webform',\n type: 'POST',\n data: {\n key: _$form.find('[name=\"key\"]').val(),\n reply_to: _$form.find('[name=\"email\"]').val(),\n email: _$form.find('[name=\"email\"]').val(),\n product_name: _$form.find('[name=\"nome\"]').val(),\n referencia: _$form.find('[name=\"referencia\"]').val(),\n sku: _$form.find('[name=\"sku\"]').val(),\n },\n })\n .done(function (resp) {\n _$form.find('[data-msg-retorno] [data-msg-success]').addClass('visible');\n _$form.find('[data-msg-retorno] [data-msg-error]').removeClass('visible');\n\n _$form[0].reset();\n })\n .fail(function (error) {\n _$form.find('[data-msg-retorno] [data-msg-success]').removeClass('visible');\n _$form.find('[data-msg-retorno] [data-msg-error]').addClass('visible');\n });\n }\n })\n .fail(function (resp) {\n console.log('error');\n console.error(resp);\n console.error(resp.responseText);\n console.error(resp.responseText.error);\n\n var errorText = JSON.parse(resp.responseText);\n console.info(errorText);\n\n _$form.find('[data-msg-retorno] [data-msg-error]').html(errorText.error);\n _$form.find('[data-msg-retorno] [data-msg-success]').removeClass('visible');\n _$form.find('[data-msg-retorno] [data-msg-error]').addClass('visible');\n })\n .always(function () {\n _$form.removeClass('sending');\n });\n }\n },\n /* \n Função que executa o comportamento de quando o produto é adicionado no carrinho\n */\n addItemResult: function (_$form, _typeResult, _result, _$boxResponse) {\n var _this;\n\n if (_typeResult == 'produto-adicionado') {\n var $btnComprar = _$form.find(store.config.selectorBtnBuy);\n\n $btnComprar.addClass('success').html(getText(language));\n\n setTimeout(function () {\n // _$form.find('.msg-response').slideUp(350);\n $btnComprar.removeClass('success').html($btnComprar.data('text-available'));\n }, 3500);\n\n if ($body.width() > 768) {\n if (store.config.addToCartOpenCartpopup) {\n template_store.headerCart.show();\n } else {\n setTimeout(function () {\n window.location.href = urlCart;\n }, 150);\n }\n } else {\n if (store.config.addToCartOpenCartpopupMobile) {\n template_store.headerCart.show();\n } else {\n setTimeout(function () {\n window.location.href = urlCart;\n }, 150);\n }\n }\n } else if (_typeResult == 'erro-adicionar') {\n var errorText = JSON.parse(_result.responseText);\n\n if (typeof _$boxResponse != 'undefined' && _$boxResponse.length > 0) {\n $('html,body').animate(\n {\n scrollTop: _$boxResponse.offset().top,\n },\n '250'\n );\n\n console.info(errorText);\n\n _$boxResponse.addClass('error');\n _$boxResponse.removeClass('success');\n\n _$boxResponse.find('span').html(errorText.error);\n _$boxResponse.slideDown(350);\n\n setTimeout(function () {\n _$boxResponse.slideUp(350);\n }, 3500);\n }\n }\n },\n headerCart: {\n button: document.getElementById('bt-drawer'),\n\n initDrawer: function () {\n const freeShipping = $('#component-cart-drawer-root').data('free-shipping-value');\n\n window.componentCartDrawer = new Vnda.Component.CartDrawer({\n display: 'list',\n startOpen: false,\n anchor: 'right',\n freeShipping,\n titleSuggested: 'PERFUME MAIS',\n suggestedProductsTag: 'sugeridos-carrinho',\n widthItemSuggested: 100,\n });\n componentCartDrawer.render(document.getElementById('component-cart-drawer-root'));\n\n if (this.button != null)\n this.button.addEventListener('click', window.componentCartDrawer.toggle);\n },\n loadCart: function (total) {\n store.updateCartCount(total.items_count);\n window.componentCartDrawer.open();\n },\n show: function () {\n window.componentCartDrawer.open();\n },\n handleTextShippingBar: function () {\n const cartEl = document.querySelectorAll('#component-cart-drawer-root');\n\n cartEl.forEach((cart) => {\n let observer = new MutationObserver((mutation) => {\n let shippingText = cart.querySelector('.vnda-shipping-text');\n console.log('entrou');\n if (shippingText.innerHTML.includes('(Sul e Sudeste)')) return;\n\n let replaceText = shippingText.innerHTML.replace(\n 'frete grátis',\n 'frete grátis (Sul e Sudeste)'\n );\n\n if (shippingText) shippingText.innerHTML = replaceText;\n });\n observer.observe(cart, { attributes: true, childList: true, subtree: true });\n });\n },\n },\n /*\n Debounce retorna uma função que enquanto continuar sendo chamada não é executada\n A função só será executada quando para de ser chamada por N milisegundos\n Útil para melhorar a performance de códigos que são executados muitas vezes por segundo, como o $(window).resize()\n\n Ex:\n \n $(window).resize(debounce(function() {\n // código a ser executado\n }, 500))\n \n No exemplo acima a função só será executada 500ms depois do último resize\n Abra o link abaixo e redimensione a janela branca e acompanhe o output do console\n Exemplo codepen: https://codepen.io/valkervieira/pen/oNgqyWY\n\n Um caso comum de uso é em lojas onde a seleção de um filtro na página de tag recarrega automáticamente a página\n Com o debounce o usuário pode escolher vários filtros rapidamente e a página só recarrega quando parar de escolher\n */\n debounce: function (func, wait, immediate = true) {\n var timeout;\n\n return function () {\n var context = this,\n args = arguments;\n\n var later = function () {\n timeout = null;\n if (!immediate) func.apply(context, args);\n };\n\n var callNow = immediate && !timeout;\n\n clearTimeout(timeout);\n\n timeout = setTimeout(later, wait);\n\n if (callNow) func.apply(context, args);\n };\n },\n\n /*\n Throttle diminui a frequencia que uma função é executada\n Enquanto no debounce a função só é executada quando para de ser chamada, no throttle ela\n continua sendo executada só que em um intervalo mínimo de N milisegundos (default = 250)\n\n Ex:\n\n $(window).resize(throttle() {\n // código a ser executado\n }, 500)\n\n No exemplo acima a função resize é chamada várias vezes por segundo mas só é executada 1 vez a cada 500ms\n Abra o link abaixo, redimensione a janela branca e acompanhe o console\n Exemplo codepen: https://codepen.io/valkervieira/pen/yLyKEPW\n\n Um caso comum de uso é checar se o scroll passou de um determinado ponto, para fixar um header ou alterar algum elemento do DOM\n */\n throttle: function (fn, threshhold, scope) {\n threshhold || (threshhold = 250);\n var last, deferTimer;\n return function () {\n var context = scope || this;\n\n var now = +new Date(),\n args = arguments;\n if (last && now < last + threshhold) {\n // hold on to it\n clearTimeout(deferTimer);\n deferTimer = setTimeout(function () {\n last = now;\n fn.apply(context, args);\n }, threshhold);\n } else {\n last = now;\n fn.apply(context, args);\n }\n };\n },\n setSearchForm: function () {\n const $openForm = $('[data-action=\"toggle-search\"]');\n const $searchForm = $('[data-form-search]');\n const $searchInput = $searchForm.find('input');\n const headerHeight = $('#header').height();\n const topBarHeight = $('.top-bar').height();\n\n $openForm.on('click', function () {\n const scrollTop = $window.scrollTop();\n\n scrollTop > topBarHeight\n ? $searchForm.css('top', headerHeight)\n : $searchForm.css('top', topBarHeight + headerHeight);\n\n $searchForm.toggleClass('open');\n\n if ($searchForm.hasClass('open')) {\n $(window).on('scroll', setTopSearch);\n $searchInput.focus();\n } else {\n $searchInput.blur();\n $(window).off('scroll', setTopSearch);\n }\n\n function setTopSearch() {\n $window.scrollTop() > topBarHeight\n ? $searchForm.css('top', headerHeight)\n : $searchForm.css('top', topBarHeight + headerHeight);\n\n if (!$searchForm.hasClass('open')) {\n $(window).off('scroll', setTopSearch);\n }\n }\n });\n },\n setMenuMobile: function () {\n const toggleMenu = document.querySelector('[data-toggle-mobile-menu]');\n const mobileMenu = document.querySelector('[data-mobile-menu]');\n const header = document.querySelector('#header');\n const wrapper = document.querySelector('#wrapper');\n\n const levelOneItems = document.querySelectorAll('.-main [data-level-1]');\n const levelTwoItems = document.querySelectorAll('.-sub [data-level-2]');\n const returnIcons = document.querySelectorAll('.-main .return-icon');\n const submenus = document.querySelectorAll('.-main .submenu');\n\n const observer = new IntersectionObserver(\n ([entry]) => {\n entry.target.classList.toggle('is-sticked', entry.intersectionRatio < 1);\n },\n { threshold: 1 }\n );\n observer.observe(header);\n\n toggleMenu.addEventListener('click', () => {\n mobileMenu.classList.toggle('-open');\n wrapper.classList.toggle('-no-overflow');\n document.body.classList.toggle('-no-scroll');\n\n if (header.classList.contains('is-sticked')) {\n header.classList.toggle('fixed');\n }\n\n levelOneItems.forEach((item) => {\n item.classList.contains('-hidden') ? item.classList.remove('-hidden') : '';\n });\n\n levelTwoItems.forEach((item) => {\n item.classList.add('-hidden');\n });\n\n submenus.forEach((item) => {\n item.classList.add('-hidden');\n });\n\n returnIcons.forEach((item) => {\n item.classList.add('-hidden');\n });\n });\n\n levelOneItems.forEach((item) => {\n item.addEventListener('click', (e) => {\n if (e.target.classList.contains('icon') || e.target.classList.contains('has-submenu')) {\n const parent = e.target.closest('.item[data-level-1]');\n const submenu = parent.querySelector('.submenu');\n const submenuItems = parent.querySelectorAll('.item[data-level-2]');\n const currentReturn = submenu.querySelector('.return-icon');\n\n e.preventDefault();\n\n levelOneItems.forEach((i) => {\n i.classList.add('-hidden');\n });\n\n submenu.classList.remove('-hidden');\n currentReturn.classList.remove('-hidden');\n\n submenuItems.forEach((i) => {\n i.classList.remove('-hidden');\n });\n }\n });\n });\n\n returnIcons.forEach((item) => {\n item.addEventListener('click', () => {\n item.classList.add('-hidden');\n\n levelOneItems.forEach((item) => {\n item.classList.contains('-hidden') ? item.classList.remove('-hidden') : '';\n });\n levelTwoItems.forEach((item) => {\n item.classList.add('-hidden');\n });\n submenus.forEach((item) => {\n item.classList.add('-hidden');\n });\n });\n });\n },\n home: {\n setFullbannersSlider: function () {\n const fullbannerSwiper = document.querySelectorAll('[data-home-fullbanner]');\n\n // FULLBANNERS SWIPER\n fullbannerSwiper.forEach((banner) => {\n banner = new Swiper(`#${banner.id}`, {\n slidesPerView: 1,\n speed: 800,\n watchOverflow: true,\n breakpoints: {\n 768: {\n speed: 1500,\n },\n },\n });\n });\n },\n setHighlightSlider: function () {\n const swiper = new Swiper('[data-highlight-products] .swiper', {\n slidesPerView: 1,\n spaceBetween: 10,\n watchOverflow: true,\n lazy: {\n checkInView: true,\n loadPrevNext: false,\n loadOnTransitionStart: true,\n },\n navigation: {\n nextEl: '[data-highlight-products] .swiper-button-next',\n prevEl: '[data-highlight-products] .swiper-button-prev',\n },\n breakpoints: {\n 768: {\n slidesPerView: 2,\n spaceBetween: 20,\n },\n 991: {\n slidesPerView: 3,\n spaceBetween: 20,\n },\n },\n });\n },\n setInstagramSlider: function () {\n const instagramSwiper = document.querySelector('[data-instagram-slider]');\n const instagramContainer = document.querySelector('section.instagram');\n\n // INSTAGRAM SWIPER\n const swiper = new Swiper(instagramSwiper, {\n slidesPerView: 1,\n spaceBetween: 0,\n watchOverflow: true,\n navigation: {\n nextEl: instagramContainer.querySelector('.swiper-button-next'),\n prevEl: instagramContainer.querySelector('.swiper-button-prev'),\n },\n breakpoints: {\n 768: {\n slidesPerView: 4,\n spaceBetween: 18,\n },\n },\n });\n },\n setKitSlider: function () {\n const kitSwiper = document.querySelector('[data-kit-slider]');\n\n const swiper = new Swiper(kitSwiper, {\n slidesPerView: 1,\n watchOverflow: true,\n //autoHeight: true,\n navigation: {\n nextEl: kitSwiper.querySelector('.swiper-button-next'),\n prevEl: kitSwiper.querySelector('.swiper-button-prev'),\n },\n breakpoints: {\n 280: {\n slidesPerView: 1,\n spaceBetween: 60,\n },\n 640: {\n slidesPerView: 2,\n spaceBetween: 50,\n },\n 992: {\n slidesPerView: 3,\n spaceBetween: 50,\n },\n 1200: {\n spaceBetween: 80,\n slidesPerView: 3,\n },\n 1600: {\n spaceBetween: 103,\n slidesPerView: 3,\n },\n },\n });\n },\n handleInstagram: () => {\n const section = document.querySelector('section.instagram');\n\n const observer = new IntersectionObserver(\n async (entries) => {\n if (entries[0].isIntersecting) {\n const loaded = section.getAttribute('data-loaded');\n\n if (loaded === 'false') {\n const url = `${urlHome}p/instagram`;\n\n const response = await fetch(url);\n const data = await response.text();\n\n const parser = new DOMParser();\n\n const doc = parser.parseFromString(data, 'text/html');\n\n const posts = doc.querySelectorAll('[data-instagram-post]');\n\n const wrapper = document.querySelector('[data-list-instagram]');\n wrapper.innerHTML = '';\n\n posts.forEach((post) => {\n wrapper.appendChild(post);\n });\n\n template_store.home.setInstagramSlider();\n\n lazyLoadInstance.update();\n\n section.setAttribute('data-loaded', 'true');\n }\n }\n },\n { threshold: 0 }\n );\n\n observer.observe(section);\n },\n mediaSectionSlider: function () {\n const mediaSection = document.querySelector('[data-media-section]');\n\n if (mediaSection) {\n const swiperContainer = mediaSection.querySelector('.swiper');\n\n const swiper = new Swiper(swiperContainer, {\n slidesPerView: 1,\n spaceBetween: 0,\n watchOverflow: true,\n pagination: {\n el: swiperContainer.querySelector('.swiper-pagination'),\n type: 'bullets',\n clickable: true,\n },\n breakpoints: {\n 768: {\n slidesPerView: 4,\n spaceBetween: 20,\n },\n },\n });\n }\n },\n init: function () {\n var _this = this;\n\n _this.setFullbannersSlider();\n _this.setHighlightSlider();\n _this.setKitSlider();\n _this.setInstagramSlider();\n _this.handleInstagram();\n _this.mediaSectionSlider();\n },\n },\n product: {\n // Aqui ficam os js do transacional\n $sectionProduct: $('[data-section-product]'),\n $wrapperImages: $('[data-section-product]').find('[data-product-images]'),\n $sliderProduct: $('[data-section-product]').find('[data-product-images] [data-main-slider]'),\n $thumbsProduct: $('[data-section-product]').find('[data-product-images] [data-slider-thumbs]'),\n sliderProduct: [],\n /* \n Exibe as primeiras imagens do produto\n ** Importante para quando houver imagem por sku **\n */\n showFirstImages: function () {\n var _this = this;\n var variants = vnda.variants.all();\n var $imagesWithoutSkus = _this.$sliderProduct.find('.image-without-sku');\n var $thumbsWithoutSkus = _this.$thumbsProduct.find('.image-without-sku');\n\n if ($imagesWithoutSkus.length > 0) {\n /* \n Todas as imagens sem skus são exibidas sempre\n */\n\n $imagesWithoutSkus.removeClass('inactive').addClass('active');\n\n $thumbsWithoutSkus.removeClass('inactive').addClass('active');\n } else {\n /* \n Percorre todas as variantes\n */\n for (var i = 0; i < variants.length; i++) {\n if (variants[i].main) {\n console.info(variants[i]);\n\n // Procura a imagem que contém o sku e a exibe\n _this.$sliderProduct\n .find('[data-image][data-skus-image*=\"' + variants[i].sku + '\"]')\n .addClass('active')\n .removeClass('inactive');\n\n _this.$thumbsProduct\n .find('[data-image-thumb][data-skus-image*=\"' + variants[i].sku + '\"]')\n .addClass('active')\n .removeClass('inactive');\n }\n }\n }\n },\n setGallery: function () {\n var _this = this;\n const swiperProducts = document.querySelector(\n '[data-section-product] [data-product-images] [data-main-slider]'\n );\n const swiperThumbs = document.querySelector(\n '[data-section-product] [data-product-images] [data-slider-thumbs]'\n );\n\n var galleryThumbs = new Swiper(swiperThumbs, {\n slidesPerView: 'auto',\n spaceBetween: 0,\n watchOverflow: true,\n passiveListeners: true,\n centerInsufficientSlides: true,\n direction: 'vertical',\n });\n\n var gallery = new Swiper(swiperProducts, {\n slidesPerView: 1,\n spaceBetween: 0,\n watchOverflow: true,\n passiveListeners: true,\n simulateTouch: false,\n loop: true,\n thumbs: {\n swiper: galleryThumbs,\n },\n navigation: {\n nextEl: document.querySelector('.wrapper-images .wrapper-slider .swiper-button-next'),\n prevEl: document.querySelector('.wrapper-images .wrapper-slider .swiper-button-prev'),\n },\n breakpoints: {\n 768: {\n slidesPerView: 1,\n spaceBetween: 30,\n watchOverflow: true,\n simulateTouch: false,\n loop: false,\n centeredSlides: false,\n },\n },\n });\n\n this.sliderProduct.push(gallery);\n this.sliderProduct.push(galleryThumbs);\n\n $('[data-slide-index]').on('click', function () {\n console.log('oie', $(this).data('slide-index') - 1);\n gallery.slideTo($(this).data('slide-index') - 1);\n });\n\n // gallery.on('slideChange', () => {\n // MagicZoom.refresh();\n // });\n\n $(document).on('click', '[data-image-thumb]:visible', function () {\n gallery.slideTo($(this).index('[data-image-thumb]:visible'));\n });\n },\n submitNotify: function () {\n $(document).on('submit', '[data-form-notify]', function (event) {\n event.preventDefault();\n template_store.submitFormNotify($(this));\n });\n },\n setSwiperRelated: function () {\n const swiperRelated = document.querySelector('[data-related-slider]');\n\n if (swiperRelated) {\n const swiper = new Swiper(swiperRelated, {\n slidesPerView: 2,\n spaceBetween: 20,\n watchOverflow: true,\n passiveListeners: true,\n simulateTouch: false,\n loop: false,\n navigation: {\n nextEl: document.querySelector('.product-related .container .swiper-button-next'),\n prevEl: document.querySelector('.product-related .container .swiper-button-prev'),\n },\n breakpoints: {\n 768: {\n slidesPerView: 3,\n spaceBetween: 25,\n },\n },\n });\n }\n },\n init: function () {\n var _this = this;\n\n _this.showFirstImages();\n _this.submitNotify();\n _this.setSwiperRelated();\n\n window.addEventListener('load', () => {\n _this.setGallery();\n });\n\n // console.log(\"next id:\", next);\n // console.log(\"prev id:\", prev);\n\n $('.tabs .titulo').on('click', function () {\n var id = $(this).data('content');\n\n $('.tabs .titulo').removeClass('active');\n $(this).addClass('active');\n\n $('.contents .content').removeClass('active');\n $(id).addClass('active');\n });\n\n $('.infos-compra .minus').on('click', function (e) {\n e.preventDefault();\n if ($('.infos-compra [name=\"quantity\"]').val() > 1) {\n $('.infos-compra [name=\"quantity\"]').val(\n parseInt($('.infos-compra [name=\"quantity\"]').val(), 10) - 1\n );\n }\n });\n\n $('.infos-compra .plus').on('click', function (e) {\n e.preventDefault();\n $('.infos-compra [name=\"quantity\"]').val(\n parseInt($('.infos-compra [name=\"quantity\"]').val(), 10) + 1\n );\n });\n\n $(document).on('submit', store.config.selectorFormProduct, function (event) {\n event.preventDefault();\n\n var $form = $(this);\n var $parent = $form.closest(store.config.selectorWrapperProduct);\n\n var $btnComprar = $parent.find(store.config.selectorBtnBuy);\n\n var respValidated = store.validateFormProduct($form);\n var $boxResponse = $parent.find('.resp-validate');\n\n if (respValidated.validated) {\n store.addItem($form, $parent);\n } else {\n //console.info('não foi');\n store.setRespValidateProduct(respValidated, $form, $boxResponse);\n }\n });\n },\n },\n tag: {\n //Aqui ficam os js da listagem\n init: function () {},\n },\n login: {\n init: function () {\n $('[data-content-login]').each(function (index, el) {\n // Animação\n $(el).on('click', '[data-forget-password]', function (event) {\n event.preventDefault();\n $(el).find('.wrapper-form-login').animate({ height: 'toggle' }, 500);\n $(el).find('.wrapper-form-recover').animate({ height: 'toggle' }, 500);\n });\n\n $(el).on('click', '[data-forget-password-back]', function (event) {\n event.preventDefault();\n $(el).find('.wrapper-form-login').animate({ height: 'toggle' }, 500);\n $(el).find('.wrapper-form-recover').animate({ height: 'toggle' }, 500);\n });\n\n $(el).on('submit', '[data-form-login]', function (event) {\n event.preventDefault();\n\n var $form = $(this);\n var respValidated = store.login.validateLogin($form);\n\n if (respValidated.validated) {\n store.login.logar($form);\n } else {\n store.setMsgResponse(respValidated.errors, 'error', $(this));\n }\n });\n\n $(el).on('submit', '[data-form-register]', function (event) {\n event.preventDefault();\n\n var $form = $(this);\n var respValidated = store.login.validateRegister($form);\n\n if (respValidated.validated) {\n store.login.logar($form);\n } else {\n store.setMsgResponse(respValidated.errors, 'error', $(this));\n }\n });\n\n $(el).on('submit', '[data-form-recover]', function (event) {\n event.preventDefault();\n\n var $form = $(this);\n var respValidated = store.login.validateRecover($form);\n\n if (respValidated.validated) {\n store.login.recoverPassord($form);\n } else {\n store.setMsgResponse(respValidated.errors, 'error', $(this));\n }\n });\n });\n },\n },\n page: {\n setFaqTabs: function () {\n const $tabHeading = $('[data-tab-heading]');\n const $tabsContent = $('[data-tabs-content]');\n const $tabs = $('[data-tab]');\n\n $tabHeading.on('click', function () {\n const index = $(this).data('index');\n\n $tabHeading.removeClass('active');\n $(this).addClass('active');\n\n $tabs.attr('open', false);\n\n $tabsContent.removeClass('active');\n $(`[data-tabs-content][data-index=\"${index}\"]`).addClass('active');\n });\n },\n\n setProductsSlider: function () {\n const productsSlider = document.querySelector('[data-products-slider]');\n\n if (productsSlider) {\n const swiper = new Swiper(productsSlider, {\n slidesPerView: 2,\n spaceBetween: 20,\n watchOverflow: true,\n simulateTouch: false,\n navigation: {\n nextEl: document.querySelector('.wrapper-products .swiper-button-next'),\n prevEl: document.querySelector('.wrapper-products .swiper-button-prev'),\n },\n });\n }\n },\n\n setWhereToFind: function () {\n const $countrySelect = $('[data-country-select]');\n const $stateSelect = $('[data-state-select]');\n const $wrapperStores = $('[data-wrapper-stores]');\n const stateOptions = $stateSelect.html();\n const emptyCities = $wrapperStores.html();\n const locals = window._locals;\n\n $countrySelect.on('change', function () {\n const selectedCountry = $(this).val();\n\n populateStateSelect(selectedCountry);\n $wrapperStores.html(emptyCities);\n });\n\n $stateSelect.on('change', function () {\n const selectedState = $(this).val();\n\n renderStoresByState(selectedState);\n });\n\n function populateStateSelect(country) {\n const statesArray = [];\n let htmlStateOptions = stateOptions;\n\n locals.forEach((local) => {\n if (local.country.toLowerCase() === country.toLowerCase()) {\n statesArray.push(local.state);\n }\n });\n const filteredStatesArray = [...new Set(statesArray)].sort();\n\n filteredStatesArray.forEach((state) => {\n htmlStateOptions += ``;\n });\n\n $stateSelect.html(htmlStateOptions);\n $stateSelect.attr('disabled', false);\n }\n\n function renderStoresByState(state) {\n let htmlCities = emptyCities;\n $wrapperStores.html(htmlCities);\n\n locals.forEach((local) => {\n if (local.state.toLowerCase() === state.toLowerCase()) {\n htmlCities += `
${local.content}
`;\n }\n });\n\n $wrapperStores.html(htmlCities);\n }\n },\n\n init: function () {\n this.setFaqTabs();\n this.setWhereToFind();\n\n if ($('body').width() < 768) {\n this.setProductsSlider();\n }\n\n const $text = $('[data-text]');\n setTimeout(() => {\n $text.addClass('visible');\n }, 1500);\n\n $('.tab h2').on('click', function () {\n if ($(this).hasClass('active')) {\n $('.tab').removeClass('active');\n $('h2').removeClass('active');\n } else {\n $('.tab').removeClass('active');\n $('h2').removeClass('active');\n $(this).closest('.tab').addClass('active');\n $(this).addClass('active');\n }\n });\n },\n },\n setParallax: function () {\n const multiplier = window.innerWidth <= 767 ? 0.08 : 0.2;\n\n window.addEventListener('scroll', function () {\n const elements = document.querySelectorAll('[data-set-parallax]');\n elements &&\n elements.forEach((element) => {\n let distance = element.parentNode.getBoundingClientRect().y;\n element.style.transform = `translateY(${distance * multiplier}px)`;\n element.querySelector('.wrapper').style.transform = `translateY(${\n distance * multiplier\n }px)`;\n });\n });\n },\n searchResults: function () {\n function displayResults(e) {\n e.preventDefault();\n\n var word = this.value;\n var url = document.location.origin + '/busca?q=' + word;\n\n if (word != '' && word != undefined) {\n const fetchHtml = async function () {\n const response = await fetch(url);\n const data = await response.text();\n const parser = new DOMParser();\n const doc = parser.parseFromString(data, 'text/html');\n const products = doc.querySelector('main .list-products');\n const size = doc.querySelectorAll('main .list-products .product-block')?.length || 0;\n const count =\n size > 1\n ? `

${size} produtos encontrados Ver todos

`\n : `

1 produto encontrado

`;\n\n document.querySelector('[data-action=\"display-count\"]').innerHTML = '';\n document\n .querySelector('[data-action=\"display-count\"]')\n .insertAdjacentHTML('beforeend', count);\n\n document.querySelector('[data-action=\"display-results\"]').innerHTML = '';\n document.querySelector('[data-action=\"display-results\"]').appendChild(products);\n\n lazyLoadInstance.update();\n Vnda.Component.Price.update();\n };\n\n fetchHtml();\n } else {\n document.querySelector('[data-action=\"display-count\"]').innerHTML = '';\n document.querySelector('[data-action=\"display-results\"]').innerHTML = '';\n }\n }\n\n var input = document.querySelector('[data-action=\"search-results\"]');\n if (input) {\n input.addEventListener('input', template_store.debounce(displayResults, 300, false));\n input.form.addEventListener('reset', template_store.debounce(displayResults, 300, false));\n }\n\n var formTerms = document.querySelector('[data-action=\"set-word-search\"]');\n if (formTerms) {\n formTerms.addEventListener('submit', (e) => {\n e.preventDefault();\n });\n }\n },\n\n submitWebForms: function () {\n const webForms = document.querySelectorAll('[data-webform]');\n webForms.length > 0 &&\n webForms.forEach((form) => {\n const button = form.querySelector('button'),\n fieldset = form.querySelector('fieldset'),\n msg = form.querySelector('[data-msg]');\n\n const vnda = form.querySelector('input[name=\"vnda\"]');\n vnda.addEventListener('input', () => fieldset.setAttribute('disabled', true));\n\n button &&\n button.addEventListener('click', (e) => {\n e.preventDefault();\n validate();\n });\n\n button &&\n button.addEventListener('keypress', (e) => {\n if (e.key === 'Enter') validate();\n });\n\n function validate() {\n let allowed = true;\n\n if (vnda.value == '') {\n vnda.setAttribute('required', false);\n const requiredField = form.querySelectorAll('[required]:not([required=false])');\n\n requiredField.forEach((input) => {\n if (input.value == '') {\n allowed = false;\n showMessage(input);\n }\n if (input.type == 'checkbox' && input.checked == false) {\n allowed = false;\n showMessage(input);\n }\n });\n\n if (allowed) store.submitForm($(form));\n\n function showMessage(input) {\n msg.classList.add('visible');\n msg.innerText = 'Preencha os campos obrigatórios';\n\n input.classList.add('-emphasis');\n\n setTimeout(() => {\n msg.classList.remove('visible');\n msg.innerText = '';\n input.classList.remove('-emphasis');\n }, 2000);\n }\n }\n }\n });\n\n /* ENVIO DE FORMULÁRIOS\n $('[data-webform]').on('submit', function (event) {\n event.preventDefault();\n var $form = $(this);\n var vnda = $(this).find('[name=\"vnda\"]');\n \n if (vnda.length > 0) {\n if (vnda.val() != '') {\n //console.info('ROBOT DETECTED');\n return false;\n }\n }\n \n store.submitForm($form);\n });*/\n },\n\n init: function () {\n var _this = this;\n\n AOS.init({\n startEvent: 'load',\n delay: 100,\n // once: true\n });\n\n store.getPriceProd();\n\n _this.setSearchForm();\n _this.headerCart.initDrawer();\n _this.headerCart.handleTextShippingBar();\n _this.setParallax();\n _this.searchResults();\n _this.submitWebForms();\n\n if (window.innerWidth <= 767) {\n _this.setMenuMobile();\n }\n\n window.addEventListener('load', () => {\n const topBarSwiper = document.querySelector('[data-top-bar-slider]');\n const swiper = new Swiper(topBarSwiper, {\n spaceBetween: 30,\n effect: 'fade',\n watchOverflow: true,\n centeredSlides: true,\n speed: 800,\n autoplay: {\n delay: 3000,\n disableOnInteraction: true,\n },\n });\n });\n },\n};\n\nwindow.addEventListener('DOMContentLoaded', () => {\n template_store.init();\n\n if (page == 'home') {\n template_store.home.init();\n }\n\n if (page == 'product') {\n template_store.product.init();\n }\n\n if (page == 'tag') {\n template_store.tag.init();\n }\n\n if (page == 'login') {\n template_store.login.init();\n }\n if (page == 'page') {\n template_store.page.init();\n }\n});\n\nconsole.log(\n '%cVnda - Tecnologia em Ecommerce',\n 'color: #f88d5b; font-size: 15px; font-family: \"Verdana\", sans-serif; font-weight: bold;'\n);\n"],"names":["module","exports","n","Object","assign","t","arguments","length","e","i","prototype","hasOwnProperty","call","apply","this","window","navigator","test","userAgent","o","document","createElement","a","devicePixelRatio","r","elements_selector","container","threshold","thresholds","data_src","data_srcset","data_sizes","data_bg","data_bg_hidpi","data_bg_multi","data_bg_multi_hidpi","data_bg_set","data_poster","class_applied","class_loading","class_loaded","class_error","class_entered","class_exited","unobserve_completed","unobserve_entered","cancel_on_exit","callback_enter","callback_exit","callback_applied","callback_loading","callback_loaded","callback_error","callback_finish","callback_cancel","use_native","restore_on_error","c","l","CustomEvent","detail","instance","createEvent","initCustomEvent","dispatchEvent","u","s","d","f","_","g","v","b","p","m","h","E","I","y","getAttribute","k","w","setAttribute","removeAttribute","A","L","O","x","C","N","classList","add","className","M","remove","replace","RegExp","z","llTempImage","T","_observer","unobserve","R","loadingCount","G","toLoadCount","j","children","tagName","push","D","parentNode","forEach","H","V","F","B","J","P","S","U","$","q","K","Q","W","X","Y","IMG","IFRAME","VIDEO","load","OBJECT","Z","nn","tn","addEventListener","llEvLisnrs","en","removeEventListener","on","an","rn","cn","ln","indexOf","backgroundImage","style","concat","split","map","join","un","sn","dn","fn","_n","gn","HTMLImageElement","vn","isIntersecting","intersectionRatio","target","bn","Array","slice","pn","querySelectorAll","mn","hn","filter","En","_settings","IntersectionObserver","root","rootMargin","_onlineHandler","update","disconnect","observe","loadAll","destroy","restoreAll","resetStatus","lazyLoadOptions","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","default","LazyLoad","getText","key","subKey","texts","language","$window","$body","page","data","$header","$wrapper","spaceToHeaderFixed","attr","timeTransitionDefault","quantity","price","cart_empty","go_product","btn_edit_cart","btn_checkout","btn_success","errorsTxt","withoutSku","store","config","selectorBtnBuy","selectorBtnBuyAssinatura","selectorWrapperProduct","selectorWrapperProductAssinatura","selectorFormProduct","selectorFormProductAssinatura","hasInternacionalVersion","addToCartOpenCartpopup","addToCartOpenCartpopupMobile","cartCount","selector","text","priceProds","processedAttr","formatMoney","value","toFixed","validateQuantity","_val","isNaN","parseInt","getClearNumber","clearNumber","getPriceProd","products","product","prodId","url","ajax","type","done","resp","innerHTML","fail","validateFormProduct","_$form","closest","validated","find","val","console","log","errors","setRespValidateProduct","_resp","_$boxResponse","$boxResult","htmlErrors","empty","html","addItemResultDefault","_typeResult","_result","$btnComprar","addClass","setTimeout","removeClass","location","href","urlCart","errorText","JSON","parse","responseText","animate","scrollTop","offset","top","error","slideDown","slideUp","addItemResultDefaultAssinatura","urlAssinaturaCart","info","addItem","_$parent","addItemResult","$boxResponse","form","serializeArray","customizations","field","name","includes","hasClass","dataType","beforeSend","template_store","always","addItemAssinatura","urlAssinaturaCartAdd","serialize","subscription_item","sku","extra","vindi_plan_id","stringify","contentType","xhrFields","withCredentials","xhr","status","deleteItem","_itemId","_$item","removeItemResult","_method","item_id","_cart","width","headerCart","updateCartCount","setMsgResponse","_msg","_type","isArray","msgArr","_itemsCount","textLabel","parent","getCartItens","async","submitForm","reset","$form","login","validateLogin","validateRegister","validateRecover","logar","client","redirect_to","recoverPassord","ok","submitFormNotify","formData","reply_to","email","product_name","referencia","show","button","getElementById","initDrawer","freeShipping","componentCartDrawer","Vnda","Component","CartDrawer","display","startOpen","anchor","titleSuggested","suggestedProductsTag","widthItemSuggested","render","toggle","loadCart","total","items_count","open","handleTextShippingBar","cart","MutationObserver","mutation","shippingText","querySelector","replaceText","attributes","childList","subtree","debounce","func","wait","immediate","timeout","context","args","callNow","clearTimeout","throttle","threshhold","scope","last","deferTimer","now","Date","setSearchForm","$openForm","$searchForm","$searchInput","headerHeight","height","topBarHeight","setTopSearch","css","off","toggleClass","focus","blur","setMenuMobile","toggleMenu","mobileMenu","header","wrapper","levelOneItems","levelTwoItems","returnIcons","submenus","entry","body","contains","item","submenu","submenuItems","currentReturn","preventDefault","home","setFullbannersSlider","banner","Swiper","id","slidesPerView","speed","watchOverflow","breakpoints","setHighlightSlider","spaceBetween","lazy","checkInView","loadPrevNext","loadOnTransitionStart","navigation","nextEl","prevEl","setInstagramSlider","instagramSwiper","instagramContainer","setKitSlider","kitSwiper","handleInstagram","section","entries","urlHome","response","fetch","posts","DOMParser","parseFromString","post","appendChild","lazyLoadInstance","mediaSectionSlider","mediaSection","swiperContainer","pagination","el","clickable","init","$sectionProduct","$wrapperImages","$sliderProduct","$thumbsProduct","sliderProduct","showFirstImages","variants","vnda","all","$imagesWithoutSkus","$thumbsWithoutSkus","main","setGallery","swiperProducts","swiperThumbs","galleryThumbs","passiveListeners","centerInsufficientSlides","direction","gallery","simulateTouch","loop","thumbs","swiper","centeredSlides","slideTo","index","submitNotify","event","setSwiperRelated","swiperRelated","_this","$parent","respValidated","tag","each","setFaqTabs","$tabHeading","$tabsContent","$tabs","setProductsSlider","productsSlider","setWhereToFind","$countrySelect","$stateSelect","$wrapperStores","stateOptions","emptyCities","locals","_locals","country","statesArray","htmlStateOptions","local","toLowerCase","state","Set","sort","populateStateSelect","htmlCities","content","renderStoresByState","$text","setParallax","multiplier","innerWidth","elements","element","distance","getBoundingClientRect","transform","searchResults","displayResults","word","origin","doc","size","count","insertAdjacentHTML","Price","fetchHtml","input","formTerms","submitWebForms","webForms","fieldset","msg","validate","allowed","showMessage","innerText","checked","AOS","startEvent","delay","topBarSwiper","effect","autoplay","disableOnInteraction"],"sourceRoot":""}