mk-sdk-git 1.1.9 → 1.1.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/mk-sdk.js CHANGED
@@ -1 +1 @@
1
- (()=>{var He=Object.defineProperty;var E=(t,e)=>{for(var o in e)He(t,o,{get:e[o],enumerable:!0})};var st={collectorUrl:"https://api-collector.mk3dlabs.com",appUrl:"https://mkfashion.mk3dlabs.com/visualizer",apiUrl:"https://mkfashion-new-api.mk3dlabs.com"},Je={},N=null;function ut(){if(N)return N;let t=null;try{t=document.currentScript||document.querySelector("script[data-mk-project]")||document.querySelector('script[src*="mk-sdk"]')||document.querySelector('script[src*="mk-pixel"]')}catch(i){}let e=i=>{try{return t&&t.getAttribute(i)}catch(a){return null}},o=e("data-mk-project")||e("data-mk-client")||window.__MK&&(window.__MK.projectId||window.__MK.clientSlug)||null,r=e("data-mk-product")||window.__MK&&window.__MK.product||"mk-fashion",n=e("data-mk-collector")||window.__MK&&window.__MK.collectorUrl||Je.collectorUrl||st.collectorUrl;return N={projectId:o,product:r,collectorUrl:n,appUrl:window.__MK&&window.__MK.appUrl||st.appUrl,apiUrl:window.__MK&&window.__MK.apiUrl||st.apiUrl,debug:!!(e("data-mk-debug")!==null||window.__MK&&window.__MK.debug||/[?&]mkdebug\b/.test(location.search)),observe:!!(window.__MK&&window.__MK.observe),forceButton:!!(window.__MK&&window.__MK.forceButton),anchor:window.__MK&&window.__MK.anchor||null,cartRedirect:!(window.__MK&&window.__MK.cartRedirect===!1),cartBehavior:window.__MK&&window.__MK.cartBehavior||null,cartOpenSelector:window.__MK&&window.__MK.cartOpenSelector||null,autoTrack:e("data-mk-no-autotrack")===null,batchIntervalMs:2e3,batchMaxSize:20,engagementIntervalMs:15e3},N}function f(){return N||ut()}function h(...t){let e=f();e&&e.debug&&typeof console!="undefined"&&console.log("[mk-sdk]",...t)}var Ft="_mk_vid",qt="_mk_sid",M=null,U=null;function K(){return typeof crypto!="undefined"&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>{let e=Math.random()*16|0;return(t==="x"?e:e&3|8).toString(16)})}function zt(){if(M)return M;try{let t=localStorage.getItem(Ft);return t||(t="v_"+K(),localStorage.setItem(Ft,t)),M=t,t}catch(t){return M="v_"+K(),M}}function $t(){if(U)return U;try{let t=sessionStorage.getItem(qt);return t||(t="s_"+K(),sessionStorage.setItem(qt,t)),U=t,t}catch(t){return U="s_"+K(),U}}var Kt=[/email/i,/e-?mail/i,/cpf/i,/cnpj/i,/phone/i,/telefone/i,/celular/i,/address/i,/endereco/i,/cep/i,/zip/i,/card/i,/cartao/i,/cvv/i,/password/i,/senha/i,/token/i,/\bnome\b/i,/fullname/i,/firstname/i,/lastname/i,/sobrenome/i,/birth/i,/nascimento/i,/rg\b/i],Ht={imageUrl:1,image:1,thumbnail:1,photo:1,imageBase64:1,src:1},dt=2e3;function Jt(t){for(let e=0;e<Kt.length;e++)if(Kt[e].test(t))return!0;return!1}function Vt(t){if(!t||typeof t!="object"||Array.isArray(t))return typeof t=="string"&&t.length>dt?t.slice(0,200)+"...[truncated "+t.length+"B]":t;let e={};for(let o in t){if(!Object.prototype.hasOwnProperty.call(t,o)||Jt(o))continue;let r=t[o];if(Ht[o]){e[o+"Present"]=!!r;continue}if(typeof r=="string"&&r.length>dt){e[o]=r.slice(0,200)+"...[truncated "+r.length+"B]";continue}if(r&&typeof r=="object"&&!Array.isArray(r)){e[o]=Ve(r);continue}e[o]=r}return e}function Ve(t){let e={};for(let o in t){if(!Object.prototype.hasOwnProperty.call(t,o)||Jt(o))continue;let r=t[o];if(Ht[o]){e[o+"Present"]=!!r;continue}if(typeof r=="string"&&r.length>dt){e[o]=r.slice(0,200)+"...[truncated]";continue}e[o]=r}return e}var H=[],pt=null,L=null,Ge=["off","pdp_tryon","pdp","all"],ft,mt=null,J="unknown",I=[];function Wt(t){if(ft===void 0)return"hold";switch(ft){case"off":return"drop";case"all":return"collect";case"pdp":return t==="pdp"?"collect":"drop";case"pdp_tryon":return t!=="pdp"?"drop":J==="available"?"collect":J==="unavailable"?"drop":"hold";default:return"collect"}}function ht(t){if(!I.length)return;let e=[];for(let o of I){let r=Wt(o._pt);r==="collect"?Zt(o.name,o.params,o.ts):r==="hold"&&!t&&e.push(o)}I=e}function gt(t){ft=Ge.indexOf(t)>=0?t:"all",ht(!1)}function Xt(t){J=t==="available"?"available":"unavailable",ht(!1)}function Yt(t){ht(!0),L=t,mt=t&&t.pageType||null,J="unknown"}function l(t,e,o){if(!f().projectId){(l._pre=l._pre||[]).push({name:t,params:e,ts:o||Date.now()}),l._pre.length>50&&l._pre.shift();return}if(l._pre&&l._pre.length){let n=l._pre;l._pre=[];for(let i of n)Gt(i.name,i.params,i.ts)}Gt(t,e,o)}function Gt(t,e,o){let r=Wt(mt);if(r==="collect"){Zt(t,e,o);return}if(r==="drop"){h("descartado (escopo)",t);return}I.push({name:t,params:e,ts:o||Date.now(),_pt:mt}),I.length>300&&I.shift()}function Zt(t,e,o){let r=f(),n=Vt(e||{}),i="page_"+We(t);if(H.push({name:i,ts:o||Date.now(),params:n}),h("queued",t,n),r.observe)try{window.postMessage({__mkpixel:!0,event:{name:i,params:n},site:L?{pageType:L.pageType,platform:L.platform,url:L.url}:null},"*")}catch(a){}if(H.length>=r.batchMaxSize){D();return}pt||(pt=setTimeout(()=>{pt=null,D()},r.batchIntervalMs))}function We(t){if(typeof t!="string"||!t)return"unknown";let e=t.replace(/^on/,"");return e=e.replace(/[A-Z]/g,(o,r)=>(r>0?"_":"")+o.toLowerCase()),e.indexOf("page_")===0&&(e=e.slice(5)),e}function D(t){if(H.length===0)return;let e=f();if(!e.projectId||!e.collectorUrl)return;let o=H.splice(0,50),r=JSON.stringify({product:e.product||void 0,visitorId:zt(),sessionId:$t(),events:o,site:L||void 0}),n=e.collectorUrl+"/v1/track";if(t&&navigator.sendBeacon)try{let i=new Blob([r],{type:"application/json"});navigator.sendBeacon(n+"?projectId="+encodeURIComponent(e.projectId),i);return}catch(i){}fetch(n,{method:"POST",keepalive:!0,headers:{"Content-Type":"application/json","X-MK-Project-Id":e.projectId},body:r}).catch(()=>{})}function Qt(){try{window.addEventListener("pagehide",()=>D(!0)),window.addEventListener("beforeunload",()=>D(!0)),document.addEventListener("visibilitychange",()=>{document.hidden&&D(!0)})}catch(t){}}function C(t){let e=[];try{let o=document.querySelectorAll('script[type="application/ld+json"]');for(let r of o){let n;try{n=JSON.parse(r.textContent)}catch(a){continue}let i=[];Array.isArray(n)?i.push(...n):n["@graph"]?i.push(...n["@graph"]):i.push(n);for(let a of i){if(!a||!a["@type"])continue;let s=Array.isArray(a["@type"])?a["@type"]:[a["@type"]];(!t||t.some(u=>s.includes(u)))&&e.push(a)}}}catch(o){}return e}var te=["off","pdp_tryon","pdp","all"],Xe="all",Ye=30*60*1e3,P=null;function R(){if(P)return P;let t=f();return!t.projectId||!t.apiUrl?(P=Promise.resolve(null),P):(P=fetch(t.apiUrl+"/projects/"+t.projectId).then(e=>e.ok?e.json():null).then(e=>e&&e.project||e||null).catch(()=>null),P)}function ee(t){let e=t&&t.analytic&&t.analytic.scope;return te.indexOf(e)>=0?e:Xe}var re=t=>"mk_scope_"+t;function oe(t){try{let e=localStorage.getItem(re(t));if(!e)return null;let o=JSON.parse(e);return!o||typeof o.exp!="number"||o.exp<Date.now()?null:te.indexOf(o.scope)>=0?o.scope:null}catch(e){return null}}function ne(t,e){try{localStorage.setItem(re(t),JSON.stringify({scope:e,exp:Date.now()+Ye}))}catch(o){}}var yt={};E(yt,{addToCart:()=>er,detect:()=>Qe,id:()=>Ze,openCartDrawer:()=>nr,resolveSku:()=>tr});var Ze="shopify";function Qe(){return!!(window.Shopify||window.ShopifyAnalytics)}function tr(){let t=window;return t.ShopifyAnalytics&&t.ShopifyAnalytics.meta&&t.ShopifyAnalytics.meta.product?{value:String(t.ShopifyAnalytics.meta.product.id),source:"shopify"}:null}var V=t=>String(t==null?"":t).trim().toLowerCase();async function er({size:t,color:e,sku:o,quantity:r}){let n=(location.pathname.split("/products/")[1]||"").split(/[?#]/)[0];if(!n)throw new Error("shopify: sem handle de produto na URL (n\xE3o \xE9 PDP?)");let a=(await fetch("/products/"+n+".js").then(c=>c.json())).variants||[],s=c=>[c.option1,c.option2,c.option3].concat(String(c.title||"").split("/")).map(V).filter(Boolean),u=(c,x)=>s(c).indexOf(V(x))>=0,d=c=>(!t||u(c,t))&&(!e||u(c,e)),m=null;if((t||e)&&(m=a.find(c=>d(c)&&c.available)||a.find(d)),!m&&o&&(m=a.find(c=>V(c.sku)===V(o))),m||(m=a.find(c=>c.available)||a[0]),!m)throw new Error("shopify: variante n\xE3o encontrada");let g=await fetch("/cart/add.js",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({items:[{id:m.id,quantity:r||1}]})});if(!g.ok)throw new Error("shopify: /cart/add.js HTTP "+g.status);return{platform:"shopify",variantId:m.id,size:m.title,sku:m.sku||null}}var rr=["[data-cart-drawer-toggle]",'[data-action="open-cart-drawer"]','[data-action="open-cart"]',".js-cart-drawer-open",".js-drawer-open-cart",".cart-drawer-toggle",".js-cart-toggle",'[aria-controls="CartDrawer"]','[aria-controls="cart-drawer"]',"#cart-icon-bubble","#lk-cart-icon",".header__cart",".site-header__cart",".cart-link",".header-cart",'a[href="/cart"]','a[href$="/cart"]'];function or(t){try{let e=t.getBoundingClientRect();return e.width>0&&e.height>0&&getComputedStyle(t).visibility!=="hidden"}catch(e){return!1}}function nr(){let t=null;for(let e of rr)try{if(t=[...document.querySelectorAll(e)].find(or),t)break}catch(o){}return t?(setTimeout(()=>{try{t.click()}catch(e){}},300),!0):!1}var wt={};E(wt,{addToCart:()=>lr,detect:()=>ar,id:()=>ir,resolveSku:()=>cr});var ir="hybris";function ar(){return!!(window.ACC&&window.ACC.config)}function cr(){let t=(location.pathname||"").match(/\/p\/([^/?#]+)/);return t&&t[1]?{value:decodeURIComponent(t[1]),source:"hybris/url"}:null}var ie=t=>String(t==null?"":t).trim().toLowerCase();async function lr({size:t,quantity:e}){let o=[...document.querySelectorAll('.js-product-select-size, a[data-code], [class*="select-size"]')].filter(g=>g.getAttribute&&g.getAttribute("data-code")),r=t?o.find(g=>ie(g.textContent)===ie(t)):null;r||(r=o.find(g=>g.offsetParent!==null)||o[0]);let n=r&&r.getAttribute("data-code");if(!n)throw new Error("hybris: variante (data-code) n\xE3o encontrada");let i=document.getElementById("product--add-to-cart-form")||document.querySelector('form[action*="/cart/add"]'),a=i&&i.querySelector('[name="CSRFToken"]'),s=a&&a.value,u=i&&i.getAttribute("action")||"/cart/add";if(!s)throw new Error("hybris: CSRFToken n\xE3o encontrado");let d=new URLSearchParams;d.set("productCodePost",n),d.set("qty",String(e||1)),d.set("CSRFToken",s);let m=await fetch(u,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded","X-Requested-With":"XMLHttpRequest"},body:d.toString()});if(!m.ok)throw new Error("hybris: "+u+" HTTP "+m.status);return{platform:"hybris",productCode:n,size:r.textContent.trim()}}var xt={};E(xt,{addToCart:()=>pr,detect:()=>ur,id:()=>sr,resolveSku:()=>dr});var sr="vtex";function ur(){return!!(window.vtex||window.vtexjs||window.vtxctx||window.skuJson_0)}function dr(){let t=window;return t.vtxctx&&t.vtxctx.skus&&t.vtxctx.skus[0]?{value:String(t.vtxctx.skus[0]),source:"vtex/vtxctx"}:t.skuJson_0&&t.skuJson_0.skus&&t.skuJson_0.skus[0]?{value:String(t.skuJson_0.skus[0].sku),source:"vtex/skuJson"}:null}var G=t=>String(t==null?"":t).trim().toLowerCase();async function pr({size:t,quantity:e}){let o=window.skuJson_0&&window.skuJson_0.skus||[];if(!o.length)throw new Error("vtex: skuJson_0 indispon\xEDvel");let r=i=>G(i.skuname)===G(t)||i.dimensions&&Object.values(i.dimensions).some(a=>G(a)===G(t)),n=t?o.find(i=>r(i)&&i.available)||o.find(r):null;if(n||(n=o.find(i=>i.available)||o[0]),!n)throw new Error("vtex: variante n\xE3o encontrada");if(window.vtexjs&&window.vtexjs.checkout&&window.vtexjs.checkout.addToCart)return await window.vtexjs.checkout.addToCart([{id:parseInt(n.sku,10),quantity:e||1,seller:"1"}]),{platform:"vtex",skuId:n.sku,size:n.skuname||t};throw new Error("vtex: vtexjs.checkout indispon\xEDvel")}var bt={};E(bt,{addToCart:()=>yr,detect:()=>hr,id:()=>fr,resolveSku:()=>gr,skipRedirect:()=>mr});var fr="nuvemshop",mr=!0;function hr(){return!!(window.LS&&(window.LS.cart||window.LS.addToCart))}function gr(){try{let t=window.LS,e=t&&t.variants||[],o=document.querySelector('[name="variant_id"]'),r=o&&o.value?e.find(n=>String(n.id)===String(o.value)):null;if(r||(r=e.find(n=>n.available!==!1&&n.sku)||e.find(n=>n.sku)||e[0]),r&&r.sku)return{value:String(r.sku),source:"nuvemshop/variant"};if(t&&t.product&&t.product.sku)return{value:String(t.product.sku),source:"nuvemshop/product"}}catch(t){}return null}var W=t=>String(t==null?"":t).trim().toLowerCase();async function yr({size:t,quantity:e}){let o=document.getElementById("product_form")||document.querySelector('.js-product-form, form[action*="/comprar"]');if(!o)throw new Error("nuvemshop: #product_form n\xE3o encontrado");t&&o.querySelectorAll('select[name^="variation"]').forEach(i=>{let a=[...i.options].find(s=>W(s.textContent).includes(W(t))||W(s.value)===W(t));a&&(i.value=a.value,i.dispatchEvent(new Event("change",{bubbles:!0})))});let r=o.querySelector('[name="quantity"]');return r&&e&&(r.value=String(e)),await new Promise(i=>setTimeout(i,400)),typeof o.requestSubmit=="function"?o.requestSubmit():o.submit(),{platform:"nuvemshop",variantId:(o.querySelector('[name="variant_id"]')||{}).value||null}}var kt={};E(kt,{addToCart:()=>_r,detect:()=>br,id:()=>wr,resolveSku:()=>kr,skipRedirect:()=>xr});var wr="wake",xr=!0;function br(){return!!(window.StorefrontClient||typeof window.addOrCreateCheckout=="function"||typeof window.addToCartClick=="function")}function kr(){try{let t=document.querySelector('input[name="product-id"], [data-product-id]'),e=t?t.value||t.getAttribute("data-product-id"):null;if(e)return{value:String(e).trim(),source:"wake/product-id"};let o=(location.pathname||"").match(/-(\d+)\/?(?:[?#]|$)/);if(o)return{value:o[1],source:"wake/url"}}catch(t){}return null}var ae=t=>String(t==null?"":t).trim().toLowerCase();async function _r({size:t,quantity:e}){if(t){let i=[...document.querySelectorAll("input[attribute-value]")].find(a=>ae(a.getAttribute("attribute-value"))===ae(t));if(i){try{i.checked=!0}catch(a){}try{typeof window.selectAttribute=="function"?window.selectAttribute(i):i.click()}catch(a){}await new Promise(a=>setTimeout(a,600))}}let o=document.querySelector('[name="product-variant-id"]'),r=o&&o.value;if(!r)throw new Error("wake: product-variant-id n\xE3o encontrado");if(typeof window.addOrCreateCheckout!="function")throw new Error("wake: addOrCreateCheckout indispon\xEDvel");if(!await window.addOrCreateCheckout([{productVariantId:Number(r),quantity:e||1,customization:[]}]))throw new Error("wake: addOrCreateCheckout retornou false");return{platform:"wake",productVariantId:r,size:t||null}}var Ct={};E(Ct,{addToCart:()=>X,detect:()=>vr,id:()=>Cr,resolveSku:()=>_t});var Cr="generic";function vr(){return!0}function _t(){let t=C(["Product"]);if(t[0]){let e=t[0],o=e.sku||e.mpn||e.gtin13||e.productID;if(o)return{value:String(o),source:"jsonld"}}try{let e=document.querySelector('[itemprop="sku"]');if(e){let o=e.getAttribute("content")||(e.textContent||"").trim();if(o)return{value:String(o),source:"microdata"}}}catch(e){}try{let e=window.konfidencyData;if(e&&e.product&&e.product.variants&&e.product.variants[0])return{value:String(e.product.variants[0]),source:"konfidency"}}catch(e){}return null}var Sr=/(adicionar\s*(à|a|ao)?\s*(sacola|carrinho|cesta|bolsa))|adicionar ao carrinho|add to (cart|bag)|comprar agora/i,Tr=/continuar|como comprar|lista|desejos|favorito/i;async function X(){let t=document.querySelectorAll("button,[role=button],input[type=submit]");for(let e of t){let o=(e.textContent||e.value||"").replace(/\s+/g," ").trim();if(o&&o.length<40&&Sr.test(o)&&!Tr.test(o))try{return e.click(),{platform:"native-click",clicked:o}}catch(r){}}return{platform:"none",error:"bot\xE3o de carrinho nativo n\xE3o encontrado"}}var le=[yt,wt,xt,bt,kt],Ar=[["woocommerce",()=>!!(window.wc_add_to_cart_params||window.woocommerce_params)],["lojaintegrada",()=>!!window.LojaIntegrada]],Y;function Z(){return Y||(Y=le.find(t=>{try{return t.detect()}catch(e){return!1}})||Ct,Y)}function se(){let t=le.find(e=>{try{return e.detect()}catch(o){return!1}});if(t)return t.id;for(let[e,o]of Ar)try{if(o())return e}catch(r){}return null}function F(){let t=Z();if(t.id!=="generic"&&t.resolveSku)try{let e=t.resolveSku();if(e)return e}catch(e){}return _t()}async function ue(t){t=t||{};let e={size:t.size||t.selectedSize||t.tamanho||null,color:t.color||t.selectedColor||t.colour||t.cor||null,sku:t.sku||t.identifier||t.selectedIdentifier||null,quantity:t.quantity||1},o=Z();try{let r=o.addToCart?await o.addToCart(e):await X(e);return h("cart: adicionado",r),ce(),r}catch(r){h('cart: adapter "'+o.id+'" falhou \u2014 fallback clique nativo',r&&r.message);let n=await X(e);return ce(),n}}function ce(){["cart:refresh","cart:updated","cart:build","ajaxProduct:added","product:added-to-cart"].forEach(t=>{try{document.dispatchEvent(new CustomEvent(t))}catch(e){}})}async function de(){let t=Z(),e=f(),o=null;try{o=await R()}catch(i){}let r=o&&o.template&&o.template.cart||o&&o.cart||{},n=r.afterAdd||r.behavior||e.cartBehavior;if(n||(n=e.cartRedirect===!1?"none":"auto"),n==="none")return!1;if(n==="auto"||n==="drawer"){let i=r.openSelector||e.cartOpenSelector;if(i){let a=document.querySelector(i);if(a)return setTimeout(()=>{try{a.click()}catch(s){}},300),!1}else if(t&&t.openCartDrawer){let a=!1;try{a=t.openCartDrawer()}catch(s){}if(a)return!1}}return!0}function pe(){let t=Z();if(t&&t.skipRedirect)return;let e=t&&t.cartUrl||"/cart";setTimeout(()=>{try{window.location.href=e}catch(o){}},250)}var Er=/\/(thank[_-]?you|orders?\/|pedido[_-]?(confirmado|realizado|finalizado|sucesso)|sucesso|order[_-]?confirmation|compra[_-]?(finalizada|concluida)|orderplaced)/i,Lr=/\/checkout/i,Ir=/\/(cart|carrinho|sacola|bag)(\/|$|\?|#)/i,Pr=/\/(products?|produtos?|p)\//i,Rr=/\/(collections?|categoria|categorias|c|departamento)\//i,jr=/\/(search|busca|s)(\/|\?)/i;function fe(){try{if(window.__mkPageType)return window.__mkPageType}catch(e){}try{let e=C();for(let o of e){let r=Array.isArray(o["@type"])?o["@type"]:[o["@type"]];if(r.includes("Order")||r.includes("Invoice"))return"purchase";if(r.includes("Product"))return"pdp";if(r.includes("SearchResultsPage"))return"search";if(r.includes("CollectionPage")||r.includes("ItemList"))return"category"}}catch(e){}let t=(location.pathname||"").toLowerCase();return t==="/"||t===""||t==="/home"||t==="/index.html"?"home":Er.test(t)?"purchase":Lr.test(t)?"checkout":Ir.test(t)?"cart":Pr.test(t)?"pdp":Rr.test(t)?"category":jr.test(t)?"search":"other"}function me(t){let e=null;try{let o=new URLSearchParams(location.search),r=["utm_source","utm_medium","utm_campaign","utm_term","utm_content"],n={};for(let i of r){let a=o.get(i);a&&(n[i.replace("utm_","")]=a)}Object.keys(n).length&&(e=n)}catch(o){}return{url:location.href,pathname:location.pathname,referrer:document.referrer||null,title:document.title||null,pageType:t,utm:e,userAgent:navigator.userAgent,language:navigator.language,viewport:window.innerWidth+"x"+window.innerHeight,platform:Br()}}function Br(){return se()}var vt={},Or=null,q=0,he=!1;function ge(t){he||(he=!0,ye(t),Nr(),Mr(),Ur(),Dr(),Fr(t))}function ye(t){vt={};let e=fe(),o=me(e);if(Yt(o),l("view",{url:location.href,pathname:location.pathname,referrer:document.referrer||null,title:document.title||null,pageType:e}),typeof t=="function")try{t(e,o)}catch(r){}}function Nr(){if(!document.body)return;let t={A:1,BUTTON:1,INPUT:1,SELECT:1,TEXTAREA:1},e=0;document.body.addEventListener("click",o=>{try{let r=Date.now();if(r-e<100)return;e=r;let n=o.target;for(let s=0;s<5&&n&&n!==document.body&&!(t[n.tagName]||n.getAttribute&&n.getAttribute("role")==="button");s++)n=n.parentElement;if(!n||!t[n.tagName]&&!(n.getAttribute&&n.getAttribute("role")==="button"))return;let i={tag:n.tagName},a=n.tagName==="INPUT"||n.tagName==="TEXTAREA"?n.value:n.textContent;i.text=(a||"").replace(/\s+/g," ").trim().substring(0,100),n.href&&(i.href=String(n.href).substring(0,500)),n.id&&(i.id=n.id),n.className&&typeof n.className=="string"&&(i.classes=n.className.trim().substring(0,200)),l("click",i)}catch(r){}},{capture:!0,passive:!0})}function Mr(){let t=[25,50,75,100],e=null,o=()=>{try{let r=window.scrollY||document.documentElement.scrollTop||0,n=Math.max(document.body&&document.body.scrollHeight||0,document.documentElement&&document.documentElement.scrollHeight||0);if(n<=0)return;let i=Math.min(100,Math.floor((r+window.innerHeight)/n*100));for(let a of t)i>=a&&!vt[a]&&(vt[a]=!0,l("scroll_depth",{depth:a}))}catch(r){}};o(),window.addEventListener("scroll",()=>{e||(e=setTimeout(()=>{e=null,o()},250))},{passive:!0})}function Ur(){document.body&&document.body.addEventListener("submit",t=>{try{let e=t.target;if(!e||e.tagName!=="FORM"||e.querySelector('input[type="password"], input[name*="card"], input[name*="cpf"]'))return;let o="other",r=(e.className||"").toLowerCase(),n=(e.action||"").toLowerCase();e.querySelector('input[type="search"], input[name="q"], input[name="s"]')?o="search":/newsletter|subscribe|mailchimp/.test(r+n)?o="newsletter":/contact|contato/.test(r+n)&&(o="contact"),l("form_submit",{form_id:e.id||"",form_type:o})}catch(e){}},{capture:!0})}function Dr(){let t=f();q=Date.now(),Or=setInterval(()=>{if(document.hidden)return;let e=Date.now(),o=Math.round((e-q)/1e3);q=e,o>0&&o<60&&l("engagement",{url:location.pathname,dwellSec:o})},t.engagementIntervalMs),document.addEventListener("visibilitychange",()=>{if(document.hidden){let e=Math.round((Date.now()-q)/1e3);e>0&&e<600&&l("engagement",{url:location.pathname,dwellSec:e})}q=Date.now()})}function Fr(t){let e=location.href,o=()=>{location.href!==e&&(e=location.href,ye(t))};try{let r=history.pushState,n=history.replaceState;history.pushState=function(){r.apply(this,arguments),setTimeout(o,0)},history.replaceState=function(){n.apply(this,arguments),setTimeout(o,0)},window.addEventListener("popstate",o)}catch(r){}}function St(){let t=F(),e=C(["Product"]);if(e.length>0){let n=e[0],i=Array.isArray(n.offers)?n.offers[0]:n.offers;return{sku:t?t.value:n.sku||n.mpn||n.gtin13||n.productID||null,skuSource:t?t.source:null,name:typeof n.name=="string"?n.name:null,price:i&&parseFloat(i.price||i.lowPrice)||null,currency:i?i.priceCurrency:null,brand:n.brand?typeof n.brand=="string"?n.brand:n.brand.name:null,category:n.category||null}}let o=n=>{let i=document.querySelector('meta[property="og:'+n+'"], meta[property="product:'+n+'"]');return i?i.getAttribute("content"):null},r=n=>{let i=document.querySelector('[itemprop="'+n+'"]');return i?i.getAttribute("content")||(i.textContent||"").trim():null};if(t||o("type")==="product"||o("price:amount")||r("name")){let n=r("price")||o("price:amount");return{sku:t?t.value:null,skuSource:t?t.source:null,name:r("name")||o("title")||document.title||null,price:n&&parseFloat(String(n).replace(",","."))||null,currency:r("priceCurrency")||o("price:currency")||null,brand:r("brand")||null,category:null}}return null}function we(){let t=C(["Order","Invoice"]);if(t.length>0){let r=t[0],n=r.totalPaymentDue?parseFloat(r.totalPaymentDue.price):parseFloat(r.price||r.total);return{orderId:r.orderNumber||r.confirmationNumber||r.identifier||null,revenue:Number.isFinite(n)?n:null,currency:r.totalPaymentDue&&r.totalPaymentDue.priceCurrency||r.priceCurrency||null,source:"jsonld"}}try{if(Array.isArray(window.dataLayer))for(let r=window.dataLayer.length-1;r>=0;r--){let n=window.dataLayer[r];if(n&&n.event==="purchase"&&n.ecommerce){let i=n.ecommerce;return{orderId:i.transaction_id||i.transactionId||null,revenue:parseFloat(i.value||i.revenue)||null,currency:i.currency||i.currencyCode||null,itemCount:(i.items||i.products||[]).length||null,source:"datalayer"}}}}catch(r){}let e=document.querySelector('meta[property="order:total"], meta[name="order-total"]');if(e&&e.content)return{orderId:null,revenue:parseFloat(e.content)||null,source:"meta"};let o=qr();return o||null}function qr(){try{let t=[".order-total","#order-total",".total-price",".order__total","[data-order-total]",".summary-total",".grand-total"];for(let e of t){let o=document.querySelector(e);if(o){let r=$r(o.textContent);if(r)return{orderId:zr(),revenue:r,source:"dom"}}}return null}catch(t){return null}}function zr(){try{let e=(document.body.innerText||"").match(/(?:pedido|order|n[º°o]\.?)\s*#?\s*([A-Z0-9-]{4,})/i);return e?e[1]:null}catch(t){return null}}function $r(t){if(!t)return null;let e=String(t).replace(/[^\d.,]/g,"");if(!e)return null;let o;e.indexOf(",")>e.indexOf(".")?o=e.replace(/\./g,"").replace(",","."):o=e.replace(/,/g,"");let r=parseFloat(o);return Number.isFinite(r)&&r>0?r:null}function xe(){let t=C(["ItemList","CollectionPage"]);if(t.length===0)return null;let e=t[0],o=e.itemListElement||e.mainEntity&&e.mainEntity.itemListElement||[],r=[];for(let n of o.slice(0,50)){let i=n.item||n;i&&(i.sku||i.productID||i.name)&&r.push(i.sku||i.productID||i.name)}return r.length>0?{count:r.length,skus:r.slice(0,20)}:null}var be=!1,Q=[/\b(adicionar|adic\.?|colocar|incluir|jogar)\b.{0,30}\b(carrinho|sacola|sacolinha|bag)\b/i,/\bcomprar\b(?!\s+(em|por|sem))/i,/\bcomprar\s*$/i,/^add\s+to\s+(cart|bag)\b/i,/^buy\s+(now|it|this)\b/i,/^(sacolinha|carrinho|sacola)$/i],Kr=[/^finalizar(\s+(compra|pedido|pagamento))?\b/i,/^(fechar|confirmar)\s+(compra|pedido|pagamento)\b/i,/^pagar(\s+(agora|pedido))?\b/i,/^(complete|place)\s+(purchase|order)\b/i,/^checkout$/i];function z(t,e){for(let o=0;o<t.length;o++)if(t[o].test(e))return!0;return!1}function ke(t){switch(t){case"pdp":{let e=St();l("view_item",e||{sku:null});break}case"category":case"search":{let e=xe();l("view_item_list",e||{count:0});break}case"cart":l("view_cart",{});break;case"checkout":l("begin_checkout",{});break;case"purchase":Hr();break}}function Hr(){let t=we();if(t&&t.orderId){let e="_mk_purch_"+t.orderId;try{if(sessionStorage.getItem(e)){h("purchase j\xE1 contado",t.orderId);return}sessionStorage.setItem(e,"1")}catch(o){}}else if(be)return;be=!0,l("purchase",t||{revenue:null,_note:"no_order_data_extracted"}),h("purchase emitido",t)}function _e(){if(!document.body)return;let t=0;document.body.addEventListener("click",e=>{try{let o=Date.now();if(o-t<150)return;let r=e.target;for(let s=0;s<5&&r&&r!==document.body&&!(r.tagName==="BUTTON"||r.tagName==="A"||r.getAttribute&&r.getAttribute("role")==="button");s++)r=r.parentElement;if(!r)return;let n=r.tagName!=="A",i=(r.textContent||"").replace(/\s+/g," ").trim();if(!i||i.length>80)return;let a=!1;if((z([Q[0]],i)||n&&z([Q[1]],i)||n&&z([Q[2]],i)||z(Q.slice(3),i))&&(a=!0),a){t=o;let s=St();l("add_to_cart",{via:"click",buttonText:i,sku:s?s.sku:null,price:s?s.price:null});return}n&&z(Kr,i)&&(t=o,l("begin_checkout",{via:"click",buttonText:i}))}catch(o){}},{capture:!0,passive:!0})}var _=null,v=null,et=!1,rt=!1,j=null,Ce={},Tt=null,tt=0,b={onReady:null,onClose:null,onAddToCart:null,onProductLoaded:null,onError:null,onInteraction:null,onGenerationComplete:null},Jr={gregory:"698c7e791d3129430f15dddd"};function Se(t){return t?Jr[String(t).toLowerCase()]||t:null}async function B(t,e){let o=f(),r=Se(t);e=String(e||"").trim();let n=o.apiUrl+"/availability/"+r+"?sku="+encodeURIComponent(e),i=await fetch(n);if(!i.ok)throw new Error("availability HTTP "+i.status);return i.json()}async function Te(t,e){e||(e=t,t="698c7e791d3129430f15dddd");try{return(await B(t,e)).available===!0}catch(o){return!1}}async function ot(t){if(t=t||{},et)return;let e=Se(t.projectId||t.projectid||t.store),o=String(t.identifier||t.sku||"").trim();if(!e||!o){console.error("[mk-sdk] open: projectId e identifier obrigatorios");return}let r=e+":"+o;if(Ce[r]!==!0){try{if(!(await B(e,o)).available){alert("Produto nao disponivel para prova virtual.");return}}catch(n){alert("Produto nao encontrado ou indisponivel.");return}Ce[r]=!0}j={projectId:e,identifier:o,width:t.width||430,height:t.height||800},rt=!1,Le(),Vr(j),et=!0,tt=Date.now(),l("modal_opened",{projectId:e,identifier:o})}function Et(){if(!et)return;let t=rt;if(rt=!1,Gr(),et=!1,T("onClose"),l("modal_closed",{projectId:j&&j.projectId,identifier:j&&j.identifier}),t)try{pe()}catch(e){}}function Ae(t){try{let e=document.getElementById("mk-tryon-button-host");if(!e)return;t?(e.dataset.mkPrevDisplay===void 0&&(e.dataset.mkPrevDisplay=e.style.display),e.style.display="none"):(e.style.display=e.dataset.mkPrevDisplay||"",delete e.dataset.mkPrevDisplay)}catch(e){}}function Vr(t){_=document.createElement("div"),_.style.cssText="position:fixed;inset:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:2147483647;",Ae(!0);let e=document.createElement("div"),o=typeof t.width=="number"?t.width+"px":t.width,r=typeof t.height=="number"?t.height+"px":t.height;e.style.cssText="position:relative;width:"+o+";height:"+r+";max-width:100vw;max-height:100dvh;border-radius:12px;overflow:hidden;background:#fff;",v=document.createElement("iframe");let n=encodeURIComponent(t.identifier).replace(/\./g,"%2E");v.src=f().appUrl+"/"+t.projectId+"/"+n,v.style.cssText="width:100%;height:100%;border:none;",v.setAttribute("allow","camera *; microphone *"),v.setAttribute("allowfullscreen","true"),e.appendChild(v),_.appendChild(e),document.body.appendChild(_),h("try-on modal aberto",v.src)}function Gr(){_&&_.parentNode&&_.parentNode.removeChild(_),_=null,v=null,Ae(!1)}var ve=!1;function Ee(){Le()}function Le(){ve||(ve=!0,window.addEventListener("message",t=>{let e=t.data;if(!e||e.source!=="mkfashion-app")return;let o=e.action,r=e.data||{};switch(o){case"close_request":Et();break;case"ready":T("onReady",r);break;case"product_loaded":T("onProductLoaded",r),l("product_loaded",At(r));break;case"interaction":{T("onInteraction",r),r&&r.method&&(Tt=r.method),l(Wr(r),At(r));break}case"add_to_cart":l("add_to_cart",Object.assign({via:"tryon"},At(r))),typeof b.onAddToCart=="function"?T("onAddToCart",r):ue(r).then(()=>de()).then(n=>{rt=!!n}).catch(()=>{});break;case"generation_start":tt=Date.now();break;case"generation_complete":T("onGenerationComplete",r),l("generation_complete",{method:r.method||Tt||"unknown",durationMs:tt?Date.now()-tt:null,success:r.success!==!1,imageUrlPresent:!!r.imageUrl});break;case"generation_error":T("onError",r),l("generation_error",{method:Tt||"unknown",error:r&&r.error});break}}))}function Wr(t){return t&&t.action,"interaction"}function At(t){if(!t||typeof t!="object")return t;let e={};for(let o in t){if(o==="imageUrl"||o==="image"||o==="product"){o==="product"&&t[o]?(e.productSku=t[o].sku||null,e.productName=t[o].name||null):e[o+"Present"]=!!t[o];continue}e[o]=t[o]}return e}function T(t,e){if(typeof b[t]=="function")try{b[t](e)}catch(o){console.error("[mk-sdk]",o)}}function Ie(t){b.onReady=t}function Pe(t){b.onClose=t}function Re(t){b.onAddToCart=t}function je(t){b.onProductLoaded=t}function Be(t){b.onError=t}function Oe(t){b.onInteraction=t}function Ne(t){b.onGenerationComplete=t}var Yr=767,Zr=1024,Qr=/(adicionar\s*(à|a|ao)?\s*(sacola|carrinho|cesta|bolsa))|adicionar ao carrinho|add to (cart|bag)|comprar agora|^comprar$|finalizar compra|eu quero/i,to=/continuar|como comprar|lista|desejos|favorito|looks|cupom/i;function Lt(t){try{let e=t.getBoundingClientRect();if(e.width<=0||e.height<=0)return!1;let o=getComputedStyle(t);return o.display!=="none"&&o.visibility!=="hidden"&&o.opacity!=="0"}catch(e){return!1}}function eo(t){if(!t)return!1;try{let e=document.querySelector(t);return!!e&&Lt(e)}catch(e){return!1}}function ro(t){return(t.tagName==="INPUT"?t.value||"":t.textContent||"").replace(/\s+/g," ").trim()}function oo(t){if(!t||typeof t!="object"||t.selector)return t;let e=!1;if(["mobile","tablet","desktop"].forEach(r=>{let n=t[r];n&&n.mkAnchor===1&&n.anchor&&typeof n.anchor=="object"&&(e=!0)}),!e)return t;let o={};return["mobile","tablet","desktop"].forEach(r=>{let n=t[r];if(n){if(n.selector){o[r]=n;return}if(n.mkAnchor===1&&n.anchor&&typeof n.anchor=="object"){let i=n.anchor[r]||n.anchor.desktop||n.anchor.mobile||n.anchor.tablet;i&&i.selector&&(o[r]=i)}}}),["bpMobile","bpTablet","breakpoint"].forEach(r=>{t[r]!=null&&(o[r]=t[r])}),o}function It(t){if(!t||typeof t!="object")return null;if(t=oo(t),t.selector)return t;let e=[["mobile",t.mobile],["tablet",t.tablet],["desktop",t.desktop]].filter(u=>u[1]&&u[1].selector);if(e.length===0)return null;if(e.length===1)return e[0][1];let o=e.filter(([,u])=>eo(u.selector));if(o.length===1)return o[0][1];let r=window.innerWidth||1024,n=Number(t.bpMobile)||Number(t.breakpoint)||Yr,i=Number(t.bpTablet)||Zr,a=u=>(e.find(d=>d[0]===u)||[])[1],s=r<=n?["mobile","tablet","desktop"]:r<=i?["tablet","desktop","mobile"]:["desktop","tablet","mobile"];for(let u of s){let d=a(u);if(d)return d}return e[0][1]}function Me(){let t=f(),e=It(t&&t.anchor);if(e&&e.selector)try{let r=document.querySelector(e.selector);if(r&&Lt(r))return{el:r,position:e.position||"afterend",mode:e.mode||"flow",style:e.style||"",align:e.align||"top-left",selector:e.selector}}catch(r){}let o=document.querySelectorAll('button, [role="button"], a.btn, a.button, input[type="submit"], input[type="button"]');for(let r of o){let n=ro(r);if(!(!n||n.length>40)&&!to.test(n)&&Qr.test(n)&&Lt(r))return{el:r,position:"afterend",mode:"flow",style:"",selector:null}}return null}var w="'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",Pt={none:"0",sm:"4px",md:"8px",pill:"9999px"},Rt={none:"0",sm:"4px",md:"8px",lg:"16px"},no='<svg viewBox="0 0 17.5263 20.6862" fill="none" xmlns="http://www.w3.org/2000/svg" style="display:block;width:100%;height:100%"><g><path d="M8.49995 12.1862C10.1568 12.1862 11.5 10.8431 11.5 9.18622C11.5 7.52936 10.1568 6.18622 8.49995 6.18622C6.8431 6.18622 5.49995 7.52936 5.49995 9.18622C5.49995 10.8431 6.8431 12.1862 8.49995 12.1862Z" stroke="currentColor" shape-rendering="crispEdges"/><path d="M0.5 9.11152C0.5 6.56953 0.5 5.29894 1.1099 4.38664C1.375 3.9902 1.71424 3.65088 2.10821 3.38809C2.6945 2.9958 3.42899 2.85564 4.55351 2.80588C5.09013 2.80588 5.55183 2.39949 5.65687 1.87284C5.73715 1.48708 5.94572 1.14138 6.24735 0.894155C6.54898 0.646934 6.92516 0.51336 7.31231 0.516006H9.9734C10.7779 0.516006 11.4709 1.08412 11.6288 1.87284C11.7339 2.39949 12.1956 2.80588 12.7322 2.80588C13.8559 2.85564 12.9129 4.67413 13.5 5.06559C13.8949 5.32932 15.1484 3.80355 15.5 4.02647C16.1099 4.93876 16.7857 6.56953 16.7857 9.11152C16.7857 11.6535 16.7857 12.9233 16.1758 13.8364C15.9107 14.2328 15.5715 14.5722 15.1775 14.835C14.2647 15.4445 12.9936 15.4445 10.4522 15.4445H6.83351C4.29213 15.4445 3.02103 15.4445 2.10821 14.835C1.71446 14.5718 1.3755 14.2322 1.11071 13.8356C0.933802 13.5672 0.803519 13.2698 0.725557 12.9564" stroke="currentColor" stroke-linecap="round"/><path d="M12.676 0.607931C12.9446 -0.178095 14.0307 -0.2019 14.3491 0.536515L14.3761 0.60838L14.7385 1.66839C14.8216 1.91149 14.9559 2.13395 15.1322 2.32076C15.3086 2.50757 15.5229 2.65439 15.7608 2.75131L15.8583 2.78769L16.9183 3.14971C17.7044 3.41831 17.7282 4.50437 16.9902 4.82283L16.9183 4.84978L15.8583 5.21225C15.6151 5.29526 15.3926 5.42947 15.2057 5.60582C15.0188 5.78218 14.8719 5.99657 14.7749 6.23453L14.7385 6.33155L14.3765 7.39201C14.1079 8.17803 13.0219 8.20184 12.7039 7.46387L12.676 7.39201L12.314 6.332C12.231 6.08881 12.0968 5.86627 11.9204 5.67938C11.744 5.49249 11.5297 5.3456 11.2917 5.24863L11.1947 5.21225L10.1347 4.85022C9.34817 4.58163 9.32437 3.49557 10.0628 3.17756L10.1347 3.14971L11.1947 2.78769C11.4378 2.70462 11.6602 2.57039 11.847 2.39404C12.0339 2.21769 12.1807 2.00333 12.2776 1.76541L12.314 1.66839L12.676 0.607931Z" fill="currentColor"/></g></svg>',io='<svg viewBox="0 0 11.6122 12.7248" fill="none" xmlns="http://www.w3.org/2000/svg" style="display:block;width:12px;height:12px"><path d="M4.09055 2.01133C4.43939 0.9905 5.84989 0.959583 6.26347 1.91858L6.29847 2.01192L6.76922 3.38858C6.8771 3.7043 7.05144 3.99321 7.28047 4.23583C7.5095 4.47845 7.7879 4.66912 8.09689 4.795L8.22347 4.84225L9.60014 5.31242C10.621 5.66125 10.6519 7.07175 9.69347 7.48533L9.60014 7.52033L8.22347 7.99108C7.90764 8.09889 7.61862 8.2732 7.3759 8.50223C7.13318 8.73127 6.94241 9.0097 6.81647 9.31875L6.76922 9.44475L6.29905 10.822C5.95022 11.8428 4.53972 11.8737 4.12672 10.9153L4.09055 10.822L3.62039 9.44533C3.51258 9.12951 3.33827 8.84048 3.10924 8.59776C2.8802 8.35504 2.60177 8.16427 2.29272 8.03833L2.16672 7.99108L0.790054 7.52092C-0.231363 7.17208 -0.26228 5.76158 0.69672 5.34858L0.790054 5.31242L2.16672 4.84225C2.48244 4.73437 2.77135 4.56003 3.01397 4.331C3.25658 4.10197 3.44726 3.82357 3.57314 3.51458L3.62039 3.38858L4.09055 2.01133ZM9.86147 0C9.9706 0 10.0775 0.0306123 10.1701 0.0883584C10.2627 0.146104 10.3373 0.228668 10.3853 0.326667L10.4133 0.394917L10.6175 0.993417L11.2166 1.19758C11.3259 1.23474 11.4218 1.30353 11.492 1.39523C11.5623 1.48693 11.6037 1.59741 11.611 1.71268C11.6184 1.82795 11.5914 1.94281 11.5334 2.04271C11.4755 2.14261 11.3891 2.22305 11.2854 2.27383L11.2166 2.30183L10.6181 2.506L10.4139 3.10508C10.3767 3.21442 10.3078 3.31024 10.2161 3.38041C10.1244 3.45058 10.0139 3.49194 9.89859 3.49925C9.78333 3.50656 9.66849 3.47949 9.56863 3.42147C9.46876 3.36345 9.38837 3.27709 9.33764 3.17333L9.30964 3.10508L9.10547 2.50658L8.50639 2.30242C8.39702 2.26526 8.30115 2.19647 8.23092 2.10477C8.16069 2.01307 8.11926 1.90259 8.11189 1.78732C8.10452 1.67205 8.13153 1.55719 8.18951 1.45729C8.24749 1.35739 8.33381 1.27695 8.43755 1.22617L8.50639 1.19817L9.10489 0.994L9.30905 0.394917C9.34839 0.279665 9.42281 0.179613 9.52187 0.108791C9.62094 0.0379686 9.73969 -0.0000730808 9.86147 0Z" fill="currentColor"/></svg>';function p(t,e={}){let o=document.createElement(t);if(e.style&&(o.style.cssText=e.style),e.text!=null&&(o.textContent=e.text),e.html!=null&&(o.innerHTML=e.html),e.attrs)for(let r in e.attrs)o.setAttribute(r,e.attrs[r]);if(e.on)for(let r in e.on)o.addEventListener(r,e.on[r]);if(e.children)for(let r of e.children)r&&o.appendChild(r);return o}function nt(t){return p("span",{style:`width:24px;height:24px;padding:2px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;color:${t};flex-shrink:0;`,html:no})}function Ue(t){return p("span",{style:`width:12px;height:12px;display:inline-flex;align-items:center;justify-content:center;color:${t};flex-shrink:0;`,html:io})}function it(t){return t.borderWidth>0&&t.borderColor?`${t.borderWidth}px solid ${t.borderColor}`:"none"}function at(){if(!document.getElementById("mk-jakarta-font"))try{document.head.appendChild(p("link",{attrs:{id:"mk-jakarta-font",rel:"stylesheet",href:"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;600;700&display=swap"}}))}catch(t){}}function ao(t){return t.subtext?p("span",{style:`display:flex;align-items:center;justify-content:center;padding:4px;background:${t.badgeBgColor};font-family:${w};font-weight:700;font-size:16px;text-transform:uppercase;color:${t.badgeTextColor};line-height:1;white-space:nowrap;`,text:t.subtext}):null}function De(t,e){at();let o=p("span",{style:"display:inline-flex;align-items:center;gap:4px;",children:[nt(t.textColor),p("span",{text:t.text,style:`font-family:${w};font-weight:700;font-size:${t.fontSize}px;text-transform:uppercase;letter-spacing:2px;color:${t.textColor};white-space:nowrap;text-align:center;line-height:1;`})]});return p("button",{attrs:{type:"button"},style:`display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;width:100%;max-width:238px;box-sizing:border-box;background:${t.bgColor};border:${it(t)};border-radius:${t.borderRadiusPx};font-family:${w};cursor:pointer;transition:opacity 0.2s ease;line-height:1;-webkit-appearance:none;appearance:none;`,children:[o,ao(t)],on:{mouseenter:r=>{r.currentTarget.style.opacity="0.85"},mouseleave:r=>{r.currentTarget.style.opacity="1"},click:()=>{try{e&&e()}catch(r){}}}})}function lo(t){return t.subtext?p("span",{style:`display:flex;align-items:center;gap:4px;padding:4px;background:${t.badgeBgColor};font-family:${w};font-weight:600;font-size:10px;text-transform:uppercase;color:${t.badgeTextColor};line-height:1;white-space:nowrap;`,children:[Ue(t.badgeTextColor),p("span",{text:t.subtext})]}):null}function so(t,e){return p("button",{attrs:{type:"button"},style:`display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px 8px 8px;width:100%;margin-top:auto;box-sizing:border-box;background:${t.bgColor};border:${it(t)};border-radius:${t.borderRadiusPx};filter:drop-shadow(0 0 6px rgba(0,0,0,0.08));font-family:${w};cursor:pointer;transition:opacity 0.2s ease;line-height:1;-webkit-appearance:none;appearance:none;`,children:[nt(t.textColor),p("span",{text:t.text,style:`font-family:${w};font-weight:700;font-size:${t.fontSize}px;color:${t.textColor};white-space:nowrap;line-height:1;`})],on:{mouseenter:o=>{o.currentTarget.style.opacity="0.85"},mouseleave:o=>{o.currentTarget.style.opacity="1"},click:()=>{try{e&&e()}catch(o){}}}})}function Fe(t,e){at();let o=p("div",{style:"display:flex;flex-direction:column;gap:4px;",children:[t.cardTitle&&p("p",{text:t.cardTitle,style:`margin:0;font-family:${w};font-weight:700;font-size:16px;letter-spacing:1px;text-transform:uppercase;color:${t.cardTitleColor};line-height:1.2;`}),t.cardDescription&&p("p",{html:t.cardDescription,style:`margin:0;font-family:${w};font-weight:400;font-size:12px;max-width:177px;line-height:1.2;color:${t.cardTextColor};`})]}),r=p("div",{style:"display:flex;flex-direction:column;justify-content:space-between;gap:16px;flex:1 1 0;min-width:0;",children:[o,t.cardFooter&&p("p",{text:t.cardFooter,style:`margin:0;font-family:${w};font-weight:400;font-size:10px;color:${t.cardTextColor};line-height:1.2;`})]}),n=p("div",{style:"display:flex;flex-direction:column;align-items:flex-end;flex:1 1 0;min-width:0;",children:[lo(t),so(t,e)]}),i=p("div",{style:"display:flex;gap:16px;align-items:stretch;width:100%;flex:1;box-sizing:border-box;",children:[r,n]});return p("div",{style:`display:flex;flex-direction:column;align-items:flex-start;padding:12px;width:100%;max-width:402px;min-height:140px;box-sizing:border-box;background:${t.cardBgColor};border-radius:${t.cardBorderRadiusPx};font-family:${w};`,children:[i]})}var po={style:"gregory-black",text:"Provar Virtualmente",fontSize:14,subtext:"",bgColor:"#1E1E1E",textColor:"#FFFFFF",badgeBgColor:"#C51A1B",badgeTextColor:"#FFFFFF",borderRadius:"md",borderColor:"#1E1E1E",borderWidth:0,cardTitle:"",cardDescription:"",cardFooter:"",cardBgColor:"#F6F6F6",cardTitleColor:"#1E1E1E",cardTextColor:"#717171",cardBorderRadius:"md"};function jt(t,e){let o=(e?t&&t.mobile:t&&t.desktop)||t&&t.desktop||t&&t.mobile||{},r={...po,...o};return r.style==="gregory-card"&&e&&(r.style="gregory-black"),r.borderRadiusPx=Pt[r.borderRadius]!=null?Pt[r.borderRadius]:"0",r.cardBorderRadiusPx=Rt[r.cardBorderRadius]!=null?Rt[r.cardBorderRadius]:"0",r.fontSize=Number(r.fontSize)||14,r.borderWidth=Number(r.borderWidth)||0,r}var Bt={"gregory-black":De,"gregory-card":Fe},ln=Object.keys(Bt);function qe(t,e){return(Bt[t.style]||Bt["gregory-black"])(t,e)}var Ut="mk-tryon-button-host",fo=/^(transform|transform-origin|margin|margin-(top|right|bottom|left)|position|inset|top|right|bottom|left|z-index|width|min-width|max-width|height|min-height|max-height)$/i;function mo(t){return!t||typeof t!="string"?"":t.split(";").map(e=>e.trim()).filter(Boolean).filter(e=>fo.test(e.split(":")[0].trim().toLowerCase())).join(";")}var ct=null,Ot=!1,Nt={},ze=!1,Mt=null;function $e(){return Mt||(Mt=R().then(t=>t&&t.template&&t.template.tryOnButton||null).catch(()=>null)),Mt}function ho(){if(ze)return;ze=!0;let t=null;try{window.addEventListener("resize",()=>{clearTimeout(t),t=setTimeout(()=>{ct&&O("pdp")},200)})}catch(e){}}function Dt(){let t=document.getElementById(Ut);if(t){if(typeof t.__mkCleanup=="function")try{t.__mkCleanup()}catch(e){}t.parentNode&&t.parentNode.removeChild(t)}ct=null}var go={IMG:1,INPUT:1,VIDEO:1,CANVAS:1,EMBED:1,OBJECT:1,IFRAME:1,BR:1,HR:1,SELECT:1,TEXTAREA:1,SVG:1};function yo(t){switch(t){case"top-center":return"top:0;left:50%;transform:translateX(-50%);";case"top-right":return"top:0;right:0;";case"middle-left":return"top:50%;left:0;transform:translateY(-50%);";case"center":return"top:50%;left:50%;transform:translate(-50%,-50%);";case"middle-right":return"top:50%;right:0;transform:translateY(-50%);";case"bottom-left":return"bottom:0;left:0;";case"bottom-center":return"bottom:0;left:50%;transform:translateX(-50%);";case"bottom-right":return"bottom:0;right:0;";case"top-left":default:return"top:0;left:0;"}}function wo(t,e,o){let n=!go[t.tagName]?t:t.parentElement||document.body;try{getComputedStyle(n).position==="static"&&(n.style.position="relative")}catch(d){}if(n===t){e.style.cssText="position:absolute;z-index:2147483000;"+yo(o),t.appendChild(e);return}e.style.cssText="position:absolute;z-index:2147483000;",n.appendChild(e);let i=()=>{try{let d=t.getBoundingClientRect(),m=n.getBoundingClientRect(),g=e.offsetWidth,c=e.offsetHeight,x=d.top-m.top+n.scrollTop,A=d.left-m.left+n.scrollLeft,y=o||"top-left",$=x,S=A;y.indexOf("bottom")===0?$=x+d.height-c:(y.indexOf("middle")===0||y==="center")&&($=x+(d.height-c)/2),y.indexOf("right")>=0?S=A+d.width-g:y.indexOf("center")>=0&&(S=A+(d.width-g)/2),e.style.top=$+"px",e.style.left=S+"px"}catch(d){}};i();let a=()=>i();window.addEventListener("resize",a);let s=setTimeout(i,600),u=setTimeout(i,1500);e.__mkCleanup=()=>{window.removeEventListener("resize",a),clearTimeout(s),clearTimeout(u)}}function xo(t,e,o){try{return t.insertAdjacentElement(o||"afterend",e),!0}catch(r){try{return t.parentNode.insertBefore(e,t.nextSibling),!0}catch(n){return!1}}}async function O(t){let e=f();if(t!=="pdp"){Dt();return}if(!e.projectId)return;if(!e._anchorFromPicker){let u=await $e();u&&u.anchor&&(e.anchor=u.anchor)}if(Ot)return;let o=F(),r=o&&o.value,n=!!e.forceButton,i=It(e.anchor),a=[r||"demo",i?[i.selector,i.position,i.mode,i.align,i.style].join("~"):"heuristic"].join("|"),s=document.getElementById(Ut);if(!(s&&ct===a)){if(s&&Dt(),!r&&!n){h("auto-mount: SKU n\xE3o resolvido na PDP");return}Ot=!0;try{let u=n;n||(Nt[r]||(Nt[r]=B(e.projectId,r).then(k=>!!(k&&k.available)).catch(()=>!1)),u=await Nt[r]);try{Xt(u?"available":"unavailable")}catch(k){}if(!u){h("auto-mount: produto sem try-on",r);return}let d=await $e(),m=window.matchMedia("(max-width: 767px)").matches,g=jt(d,m),c=Me(),x=c&&c.mode||"flow",A=qe(g,()=>{let k=F(),lt=k&&k.value||r||"";l("button_clicked",{sku:lt,style:g.style,mode:x}),ot({projectId:e.projectId,identifier:lt})}),y=document.createElement("div");y.id=Ut,y.attachShadow({mode:"closed"}).appendChild(A);let S=!1;if(c&&c.el&&c.el.parentNode&&(x==="overlay"?(wo(c.el,y,c.align),S=!0):(y.style.cssText="display:contents;",S=xo(c.el,y,c.position))),S||(y.style.cssText="position:fixed;left:16px;bottom:16px;z-index:2147483000;",document.body.appendChild(y)),c&&c.style){let k=mo(c.style);if(k)try{A.style.cssText+=";"+k}catch(lt){}}ct=a,ho(),h("auto-mount: bot\xE3o injetado",{style:g.style,sku:r,anchorFound:!!c,position:c&&c.position,mode:x,forced:n}),l("button_rendered",{style:g.style,sku:r||null,skuSource:o&&o.source,anchorFound:!!c,position:c?c.position:null,mode:x,forced:n})}finally{Ot=!1}}}function Ke(){try{let t=f(),e={anchor:t.anchor,forceButton:t.forceButton};window.addEventListener("message",o=>{if(o.source!==window)return;let r=o.data;!r||!r.__mkCmd||(r.__mkCmd==="remount"||r.__mkCmd==="applyRecipe"?(t.anchor=r.anchor||null,t._anchorFromPicker=!0,t.forceButton=!0,O("pdp")):r.__mkCmd==="cancelPreview"&&(t.anchor=e.anchor,t._anchorFromPicker=!1,t.forceButton=e.forceButton,Dt(),O("pdp")))})}catch(t){}}(function(){"use strict";try{let o=function(){try{Qt(),Ke(),Ee(),e.autoTrack!==!1&&(ge((n,i)=>{ke(n,i),O(n)}),_e()),h("mk-sdk iniciado",{projectId:e.projectId,collectorUrl:e.collectorUrl})}catch(n){e.debug&&console.error("[mk-sdk] init erro",n)}},e=ut();if(e.projectId){let n=oe(e.projectId);n&&gt(n),R().then(i=>{let a=ee(i);gt(a),ne(e.projectId,a),h("escopo de coleta",a)})}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",o):o();let r={open:ot,close:Et,isAvailable:Te,getAvailability:B,onReady:Ie,onClose:Pe,onAddToCart:Re,onProductLoaded:je,onError:Be,onInteraction:Oe,onGenerationComplete:Ne,_version:"0.1.0",_isMkSdk:!0};typeof window!="undefined"&&(window.mk=r)}catch(e){typeof console!="undefined"&&console.error("[mk-sdk] boot fatal",e)}})();})();
1
+ (()=>{var Ze=Object.defineProperty;var E=(t,e)=>{for(var n in e)Ze(t,n,{get:e[n],enumerable:!0})};var dt={collectorUrl:"https://api-collector.mk3dlabs.com",appUrl:"https://mkfashion.mk3dlabs.com/visualizer",apiUrl:"https://mkfashion-new-api.mk3dlabs.com"},Qe={},M=null;function ft(){if(M)return M;let t=null;try{t=document.currentScript||document.querySelector("script[data-mk-project]")||document.querySelector('script[src*="mk-sdk"]')||document.querySelector('script[src*="mk-pixel"]')}catch(i){}let e=i=>{try{return t&&t.getAttribute(i)}catch(a){return null}},n=e("data-mk-project")||e("data-mk-client")||window.__MK&&(window.__MK.projectId||window.__MK.clientSlug)||null,r=e("data-mk-product")||window.__MK&&window.__MK.product||"mk-fashion",o=e("data-mk-collector")||window.__MK&&window.__MK.collectorUrl||Qe.collectorUrl||dt.collectorUrl;return M={projectId:n,product:r,collectorUrl:o,appUrl:window.__MK&&window.__MK.appUrl||dt.appUrl,apiUrl:window.__MK&&window.__MK.apiUrl||dt.apiUrl,debug:!!(e("data-mk-debug")!==null||window.__MK&&window.__MK.debug||/[?&]mkdebug\b/.test(location.search)),observe:!!(window.__MK&&window.__MK.observe),forceButton:!!(window.__MK&&window.__MK.forceButton),anchor:window.__MK&&window.__MK.anchor||null,cartRedirect:!(window.__MK&&window.__MK.cartRedirect===!1),cartBehavior:window.__MK&&window.__MK.cartBehavior||null,cartOpenSelector:window.__MK&&window.__MK.cartOpenSelector||null,autoTrack:e("data-mk-no-autotrack")===null,batchIntervalMs:window.__MK&&window.__MK.batchIntervalMs||8e3,batchMaxSize:window.__MK&&window.__MK.batchMaxSize||20,engagementIntervalMs:15e3},M}function m(){return M||ft()}function g(...t){let e=m();e&&e.debug&&typeof console!="undefined"&&console.log("[mk-sdk]",...t)}var qt="_mk_vid",zt="_mk_sid",U=null,D=null;function H(){return typeof crypto!="undefined"&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>{let e=Math.random()*16|0;return(t==="x"?e:e&3|8).toString(16)})}function $t(){if(U)return U;try{let t=localStorage.getItem(qt);return t||(t="v_"+H(),localStorage.setItem(qt,t)),U=t,t}catch(t){return U="v_"+H(),U}}function Kt(){if(D)return D;try{let t=sessionStorage.getItem(zt);return t||(t="s_"+H(),sessionStorage.setItem(zt,t)),D=t,t}catch(t){return D="s_"+H(),D}}var Vt=[/email/i,/e-?mail/i,/cpf/i,/cnpj/i,/phone/i,/telefone/i,/celular/i,/address/i,/endereco/i,/cep/i,/zip/i,/card/i,/cartao/i,/cvv/i,/password/i,/senha/i,/token/i,/\bnome\b/i,/fullname/i,/firstname/i,/lastname/i,/sobrenome/i,/birth/i,/nascimento/i,/rg\b/i],Ht={imageUrl:1,image:1,thumbnail:1,photo:1,imageBase64:1,src:1},pt=2e3;function Jt(t){for(let e=0;e<Vt.length;e++)if(Vt[e].test(t))return!0;return!1}function Gt(t){if(!t||typeof t!="object"||Array.isArray(t))return typeof t=="string"&&t.length>pt?t.slice(0,200)+"...[truncated "+t.length+"B]":t;let e={};for(let n in t){if(!Object.prototype.hasOwnProperty.call(t,n)||Jt(n))continue;let r=t[n];if(Ht[n]){e[n+"Present"]=!!r;continue}if(typeof r=="string"&&r.length>pt){e[n]=r.slice(0,200)+"...[truncated "+r.length+"B]";continue}if(r&&typeof r=="object"&&!Array.isArray(r)){e[n]=tr(r);continue}e[n]=r}return e}function tr(t){let e={};for(let n in t){if(!Object.prototype.hasOwnProperty.call(t,n)||Jt(n))continue;let r=t[n];if(Ht[n]){e[n+"Present"]=!!r;continue}if(typeof r=="string"&&r.length>pt){e[n]=r.slice(0,200)+"...[truncated]";continue}e[n]=r}return e}var J=[],mt=null,I=null,er=["off","pdp_tryon","pdp","all","tryon_engaged"],ht,gt=null,G="unknown",P=[],L=null;function Xt(){let t=m();return"mk_engaged_"+(t&&t.projectId||"")}function Yt(){if(L!==null)return L;try{L=localStorage.getItem(Xt())==="1"}catch(t){L=!1}return L}function Zt(){if(!Yt()){L=!0;try{localStorage.setItem(Xt(),"1")}catch(t){}W(!1)}}function Qt(t){if(ht===void 0)return"hold";switch(ht){case"off":return"drop";case"all":return"collect";case"pdp":return t==="pdp"?"collect":"drop";case"tryon_engaged":if(Yt())return"collect";case"pdp_tryon":return t!=="pdp"?"drop":G==="available"?"collect":G==="unavailable"?"drop":"hold";default:return"collect"}}function W(t){if(!P.length)return;let e=[];for(let n of P){let r=Qt(n._pt);r==="collect"?re(n.name,n.params,n.ts):r==="hold"&&!t&&e.push(n)}P=e}function yt(t){ht=er.indexOf(t)>=0?t:"all",W(!1)}function te(t){G=t==="available"?"available":"unavailable",W(!1)}function ee(t){W(!0),I=t,gt=t&&t.pageType||null,G="unknown"}function l(t,e,n){if(!m().projectId){(l._pre=l._pre||[]).push({name:t,params:e,ts:n||Date.now()}),l._pre.length>50&&l._pre.shift();return}if(l._pre&&l._pre.length){let o=l._pre;l._pre=[];for(let i of o)Wt(i.name,i.params,i.ts)}Wt(t,e,n)}function Wt(t,e,n){let r=Qt(gt);if(r==="collect"){re(t,e,n);return}if(r==="drop"){g("descartado (escopo)",t);return}P.push({name:t,params:e,ts:n||Date.now(),_pt:gt}),P.length>300&&P.shift()}function re(t,e,n){let r=m(),o=Gt(e||{}),i="page_"+rr(t);if(J.push({name:i,ts:n||Date.now(),params:o}),g("queued",t,o),r.observe)try{window.postMessage({__mkpixel:!0,event:{name:i,params:o},site:I?{pageType:I.pageType,platform:I.platform,url:I.url}:null},"*")}catch(a){}if(J.length>=r.batchMaxSize){F();return}mt||(mt=setTimeout(()=>{mt=null,F()},r.batchIntervalMs))}function rr(t){if(typeof t!="string"||!t)return"unknown";let e=t.replace(/^on/,"");return e=e.replace(/[A-Z]/g,(n,r)=>(r>0?"_":"")+n.toLowerCase()),e.indexOf("page_")===0&&(e=e.slice(5)),e}function F(t){if(J.length===0)return;let e=m();if(!e.projectId||!e.collectorUrl)return;let n=J.splice(0,50),r=JSON.stringify({product:e.product||void 0,visitorId:$t(),sessionId:Kt(),events:n,site:I||void 0}),o=e.collectorUrl+"/v1/track";if(t&&navigator.sendBeacon)try{let i=new Blob([r],{type:"application/json"});navigator.sendBeacon(o+"?projectId="+encodeURIComponent(e.projectId),i);return}catch(i){}fetch(o,{method:"POST",keepalive:!0,headers:{"Content-Type":"application/json","X-MK-Project-Id":e.projectId},body:r}).catch(()=>{})}function ne(){try{window.addEventListener("pagehide",()=>F(!0)),window.addEventListener("beforeunload",()=>F(!0)),document.addEventListener("visibilitychange",()=>{document.hidden&&F(!0)})}catch(t){}}function v(t){let e=[];try{let n=document.querySelectorAll('script[type="application/ld+json"]');for(let r of n){let o;try{o=JSON.parse(r.textContent)}catch(a){continue}let i=[];Array.isArray(o)?i.push(...o):o["@graph"]?i.push(...o["@graph"]):i.push(o);for(let a of i){if(!a||!a["@type"])continue;let s=Array.isArray(a["@type"])?a["@type"]:[a["@type"]];(!t||t.some(u=>s.includes(u)))&&e.push(a)}}}catch(n){}return e}var oe=["off","pdp_tryon","pdp","all","tryon_engaged"],nr="all",or=30*60*1e3,R=null;function j(){if(R)return R;let t=m();return!t.projectId||!t.apiUrl?(R=Promise.resolve(null),R):(R=fetch(t.apiUrl+"/projects/"+t.projectId).then(e=>e.ok?e.json():null).then(e=>e&&e.project||e||null).catch(()=>null),R)}function ie(t){let e=t&&t.analytic&&t.analytic.scope;return oe.indexOf(e)>=0?e:nr}var ae=t=>"mk_scope_"+t;function ce(t){try{let e=localStorage.getItem(ae(t));if(!e)return null;let n=JSON.parse(e);return!n||typeof n.exp!="number"||n.exp<Date.now()?null:oe.indexOf(n.scope)>=0?n.scope:null}catch(e){return null}}function le(t,e){try{localStorage.setItem(ae(t),JSON.stringify({scope:e,exp:Date.now()+or}))}catch(n){}}var wt={};E(wt,{addToCart:()=>lr,detect:()=>ar,getCartSummary:()=>sr,id:()=>ir,openCartDrawer:()=>fr,resolveSku:()=>cr});var ir="shopify";function ar(){return!!(window.Shopify||window.ShopifyAnalytics)}function cr(){let t=window;return t.ShopifyAnalytics&&t.ShopifyAnalytics.meta&&t.ShopifyAnalytics.meta.product?{value:String(t.ShopifyAnalytics.meta.product.id),source:"shopify"}:null}var X=t=>String(t==null?"":t).trim().toLowerCase();async function lr({size:t,color:e,sku:n,quantity:r}){let o=(location.pathname.split("/products/")[1]||"").split(/[?#]/)[0];if(!o)throw new Error("shopify: sem handle de produto na URL (n\xE3o \xE9 PDP?)");let a=(await fetch("/products/"+o+".js").then(c=>c.json())).variants||[],s=c=>[c.option1,c.option2,c.option3].concat(String(c.title||"").split("/")).map(X).filter(Boolean),u=(c,f)=>s(c).indexOf(X(f))>=0,d=c=>(!t||u(c,t))&&(!e||u(c,e)),h=null;if((t||e)&&(h=a.find(c=>d(c)&&c.available)||a.find(d)),!h&&n&&(h=a.find(c=>X(c.sku)===X(n))),h||(h=a.find(c=>c.available)||a[0]),!h)throw new Error("shopify: variante n\xE3o encontrada");let w=await fetch("/cart/add.js",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({items:[{id:h.id,quantity:r||1}]})});if(!w.ok)throw new Error("shopify: /cart/add.js HTTP "+w.status);return{platform:"shopify",variantId:h.id,size:h.title,sku:h.sku||null}}async function sr(){try{let t=await fetch("/cart.js",{headers:{Accept:"application/json"}}).then(e=>e.json());return{value:(Number(t.total_price)||0)/100,itemCount:Number(t.item_count)||0,currency:t.currency||null}}catch(t){return null}}var ur=["[data-cart-drawer-toggle]",'[data-action="open-cart-drawer"]','[data-action="open-cart"]',".js-cart-drawer-open",".js-drawer-open-cart",".cart-drawer-toggle",".js-cart-toggle",'[aria-controls="CartDrawer"]','[aria-controls="cart-drawer"]',"#cart-icon-bubble","#lk-cart-icon",".header__cart",".site-header__cart",".cart-link",".header-cart",'a[href="/cart"]','a[href$="/cart"]'];function dr(t){try{let e=t.getBoundingClientRect();return e.width>0&&e.height>0&&getComputedStyle(t).visibility!=="hidden"}catch(e){return!1}}function fr(){let t=null;for(let e of ur)try{if(t=[...document.querySelectorAll(e)].find(dr),t)break}catch(n){}return t?(setTimeout(()=>{try{t.click()}catch(e){}},300),!0):!1}var xt={};E(xt,{addToCart:()=>gr,detect:()=>mr,getCartSummary:()=>yr,id:()=>pr,resolveSku:()=>hr});var pr="hybris";function mr(){return!!(window.ACC&&window.ACC.config)}function hr(){let t=(location.pathname||"").match(/\/p\/([^/?#]+)/);return t&&t[1]?{value:decodeURIComponent(t[1]),source:"hybris/url"}:null}var se=t=>String(t==null?"":t).trim().toLowerCase();async function gr({size:t,quantity:e}){let n=[...document.querySelectorAll('.js-product-select-size, a[data-code], [class*="select-size"]')].filter(f=>f.getAttribute&&f.getAttribute("data-code")),r=t?n.find(f=>se(f.textContent)===se(t)):null;r||(r=n.find(f=>f.offsetParent!==null)||n[0]);let o=r&&r.getAttribute("data-code");if(!o)throw new Error("hybris: variante (data-code) n\xE3o encontrada");let i=document.getElementById("product--add-to-cart-form")||document.querySelector('form[action*="/cart/add"]'),a=i&&i.querySelector('[name="CSRFToken"]'),s=a&&a.value,u=i&&i.getAttribute("action")||"/cart/add";if(!s)throw new Error("hybris: CSRFToken n\xE3o encontrado");let d=new URLSearchParams;d.set("productCodePost",o),d.set("qty",String(e||1)),d.set("CSRFToken",s);let h=await fetch(u,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded","X-Requested-With":"XMLHttpRequest"},body:d.toString()});if(!h.ok)throw new Error("hybris: "+u+" HTTP "+h.status);let w=null,c=null;try{let f=await h.clone().json(),y=f&&f.cartData;y&&(w=ue(y.total!=null?y.total:y.totalPrice),c=y.totalUnitCount!=null?Number(y.totalUnitCount):Array.isArray(y.products)?y.products.length:null)}catch(f){}return{platform:"hybris",productCode:o,size:r.textContent.trim(),cartValue:w,itemCount:c,currency:"BRL"}}function ue(t){if(t==null||t==="")return null;if(typeof t=="number")return Number.isFinite(t)?t:null;let e=String(t).replace(/[^\d.,]/g,"");if(!e)return null;let n=e.indexOf(",")>e.indexOf(".")?parseFloat(e.replace(/\./g,"").replace(",",".")):parseFloat(e.replace(/,/g,""));return Number.isFinite(n)?n:null}function yr(){try{let t=[".js-cart-total",".cart-total",".total-price",".grand-total",'[class*="cart"][class*="total" i]'];for(let e of t){let n=document.querySelector(e),r=n&&ue(n.textContent);if(r)return{value:r,itemCount:null,currency:"BRL"}}}catch(t){}return null}var bt={};E(bt,{addToCart:()=>_r,detect:()=>xr,getCartSummary:()=>Cr,id:()=>wr,resolveSku:()=>br});var wr="vtex";function xr(){return!!(window.vtex||window.vtexjs||window.vtxctx||window.skuJson_0)}function br(){let t=window;return t.vtxctx&&t.vtxctx.skus&&t.vtxctx.skus[0]?{value:String(t.vtxctx.skus[0]),source:"vtex/vtxctx"}:t.skuJson_0&&t.skuJson_0.skus&&t.skuJson_0.skus[0]?{value:String(t.skuJson_0.skus[0].sku),source:"vtex/skuJson"}:null}var Y=t=>String(t==null?"":t).trim().toLowerCase();async function _r({size:t,quantity:e}){let n=window.skuJson_0&&window.skuJson_0.skus||[];if(!n.length)throw new Error("vtex: skuJson_0 indispon\xEDvel");let r=i=>Y(i.skuname)===Y(t)||i.dimensions&&Object.values(i.dimensions).some(a=>Y(a)===Y(t)),o=t?n.find(i=>r(i)&&i.available)||n.find(r):null;if(o||(o=n.find(i=>i.available)||n[0]),!o)throw new Error("vtex: variante n\xE3o encontrada");if(window.vtexjs&&window.vtexjs.checkout&&window.vtexjs.checkout.addToCart)return await window.vtexjs.checkout.addToCart([{id:parseInt(o.sku,10),quantity:e||1,seller:"1"}]),{platform:"vtex",skuId:o.sku,size:o.skuname||t};throw new Error("vtex: vtexjs.checkout indispon\xEDvel")}function Cr(){try{let t=window.vtexjs&&window.vtexjs.checkout&&window.vtexjs.checkout.orderForm;if(t&&typeof t.value=="number"){let e=t.storePreferencesData&&t.storePreferencesData.currencyCode||"BRL",n=(t.items||[]).reduce((r,o)=>r+(Number(o.quantity)||1),0);return{value:t.value/100,itemCount:n,currency:e}}}catch(t){}return null}var _t={};E(_t,{addToCart:()=>Ar,detect:()=>Sr,getCartSummary:()=>Er,id:()=>kr,resolveSku:()=>Tr,skipRedirect:()=>vr});var kr="nuvemshop",vr=!0;function Sr(){return!!(window.LS&&(window.LS.cart||window.LS.addToCart))}function Tr(){try{let t=window.LS,e=t&&t.variants||[],n=document.querySelector('[name="variant_id"]'),r=n&&n.value?e.find(o=>String(o.id)===String(n.value)):null;if(r||(r=e.find(o=>o.available!==!1&&o.sku)||e.find(o=>o.sku)||e[0]),r&&r.sku)return{value:String(r.sku),source:"nuvemshop/variant"};if(t&&t.product&&t.product.sku)return{value:String(t.product.sku),source:"nuvemshop/product"}}catch(t){}return null}var Z=t=>String(t==null?"":t).trim().toLowerCase();async function Ar({size:t,quantity:e}){let n=document.getElementById("product_form")||document.querySelector('.js-product-form, form[action*="/comprar"]');if(!n)throw new Error("nuvemshop: #product_form n\xE3o encontrado");t&&n.querySelectorAll('select[name^="variation"]').forEach(i=>{let a=[...i.options].find(s=>Z(s.textContent).includes(Z(t))||Z(s.value)===Z(t));a&&(i.value=a.value,i.dispatchEvent(new Event("change",{bubbles:!0})))});let r=n.querySelector('[name="quantity"]');return r&&e&&(r.value=String(e)),await new Promise(i=>setTimeout(i,400)),typeof n.requestSubmit=="function"?n.requestSubmit():n.submit(),{platform:"nuvemshop",variantId:(n.querySelector('[name="variant_id"]')||{}).value||null}}function Er(){try{let t=window.LS,e=t&&t.cart;if(!e)return null;let n=t.currency&&t.currency.code||"BRL",r=Array.isArray(e.items)?e.items.reduce((i,a)=>i+(Number(a.quantity)||1),0):Number(e.items)||0,o=e.subtotal!=null?Number(e.subtotal):null;return{value:o!=null?o/100:null,itemCount:r,currency:n}}catch(t){return null}}var Ct={};E(Ct,{addToCart:()=>jr,detect:()=>Pr,getCartSummary:()=>Br,id:()=>Lr,resolveSku:()=>Rr,skipRedirect:()=>Ir});var Lr="wake",Ir=!0;function Pr(){return!!(window.StorefrontClient||typeof window.addOrCreateCheckout=="function"||typeof window.addToCartClick=="function")}function Rr(){try{let t=document.querySelector('input[name="product-id"], [data-product-id]'),e=t?t.value||t.getAttribute("data-product-id"):null;if(e)return{value:String(e).trim(),source:"wake/product-id"};let n=(location.pathname||"").match(/-(\d+)\/?(?:[?#]|$)/);if(n)return{value:n[1],source:"wake/url"}}catch(t){}return null}var de=t=>String(t==null?"":t).trim().toLowerCase();async function jr({size:t,quantity:e}){if(t){let i=[...document.querySelectorAll("input[attribute-value]")].find(a=>de(a.getAttribute("attribute-value"))===de(t));if(i){try{i.checked=!0}catch(a){}try{typeof window.selectAttribute=="function"?window.selectAttribute(i):i.click()}catch(a){}await new Promise(a=>setTimeout(a,600))}}let n=document.querySelector('[name="product-variant-id"]'),r=n&&n.value;if(!r)throw new Error("wake: product-variant-id n\xE3o encontrado");if(typeof window.addOrCreateCheckout!="function")throw new Error("wake: addOrCreateCheckout indispon\xEDvel");if(!await window.addOrCreateCheckout([{productVariantId:Number(r),quantity:e||1,customization:[]}]))throw new Error("wake: addOrCreateCheckout retornou false");return{platform:"wake",productVariantId:r,size:t||null}}function Br(){try{let t=document.querySelectorAll('[class*="total" i],[class*="minicart" i],[class*="cart" i]');for(let e of t){let n=e.textContent||"";if(/total/i.test(n)){let r=n.match(/R\$\s*([\d.]+,\d{2})/);if(r){let o=parseFloat(r[1].replace(/\./g,"").replace(",","."));if(Number.isFinite(o)&&o>0)return{value:o,itemCount:null,currency:"BRL"}}}}}catch(t){}return null}var vt={};E(vt,{addToCart:()=>Q,detect:()=>Or,id:()=>Nr,resolveSku:()=>kt});var Nr="generic";function Or(){return!0}function kt(){let t=v(["Product"]);if(t[0]){let e=t[0],n=e.sku||e.mpn||e.gtin13||e.productID;if(n)return{value:String(n),source:"jsonld"}}try{let e=document.querySelector('[itemprop="sku"]');if(e){let n=e.getAttribute("content")||(e.textContent||"").trim();if(n)return{value:String(n),source:"microdata"}}}catch(e){}try{let e=window.konfidencyData;if(e&&e.product&&e.product.variants&&e.product.variants[0])return{value:String(e.product.variants[0]),source:"konfidency"}}catch(e){}return null}var Mr=/(adicionar\s*(à|a|ao)?\s*(sacola|carrinho|cesta|bolsa))|adicionar ao carrinho|add to (cart|bag)|comprar agora/i,Ur=/continuar|como comprar|lista|desejos|favorito/i;async function Q(){let t=document.querySelectorAll("button,[role=button],input[type=submit]");for(let e of t){let n=(e.textContent||e.value||"").replace(/\s+/g," ").trim();if(n&&n.length<40&&Mr.test(n)&&!Ur.test(n))try{return e.click(),{platform:"native-click",clicked:n}}catch(r){}}return{platform:"none",error:"bot\xE3o de carrinho nativo n\xE3o encontrado"}}var me=[wt,xt,bt,_t,Ct],Dr=[["woocommerce",()=>!!(window.wc_add_to_cart_params||window.woocommerce_params)],["lojaintegrada",()=>!!window.LojaIntegrada]],tt;function q(){return tt||(tt=me.find(t=>{try{return t.detect()}catch(e){return!1}})||vt,tt)}function he(){let t=me.find(e=>{try{return e.detect()}catch(n){return!1}});if(t)return t.id;for(let[e,n]of Dr)try{if(n())return e}catch(r){}return null}function z(){let t=q();if(t.id!=="generic"&&t.resolveSku)try{let e=t.resolveSku();if(e)return e}catch(e){}return kt()}async function ge(t){t=t||{};let e={size:t.size||t.selectedSize||t.tamanho||null,color:t.color||t.selectedColor||t.colour||t.cor||null,sku:t.sku||t.identifier||t.selectedIdentifier||null,quantity:t.quantity||1},n=q();try{let r=n.addToCart?await n.addToCart(e):await Q(e);return g("cart: adicionado",r),pe(),fe(n,r,e.sku),r}catch(r){g('cart: adapter "'+n.id+'" falhou \u2014 fallback clique nativo',r&&r.message);let o=await Q(e);return pe(),fe(n,o,e.sku),o}}async function fe(t,e,n){try{let r=null;e&&e.cartValue!=null?r={value:e.cartValue,itemCount:e.itemCount!=null?e.itemCount:null,currency:e.currency||null}:t&&t.getCartSummary&&(r=await t.getCartSummary()),r&&r.value!=null&&l("cart_value",{via:"tryon",value:r.value,itemCount:r.itemCount!=null?r.itemCount:null,currency:r.currency||null,sku:n||null})}catch(r){}}async function ye(){let t=q();if(t&&t.getCartSummary)try{return await t.getCartSummary()}catch(e){}return null}function pe(){["cart:refresh","cart:updated","cart:build","ajaxProduct:added","product:added-to-cart"].forEach(t=>{try{document.dispatchEvent(new CustomEvent(t))}catch(e){}})}async function we(){let t=q(),e=m(),n=null;try{n=await j()}catch(i){}let r=n&&n.template&&n.template.cart||n&&n.cart||{},o=r.afterAdd||r.behavior||e.cartBehavior;if(o||(o=e.cartRedirect===!1?"none":"auto"),o==="none")return!1;if(o==="auto"||o==="drawer"){let i=r.openSelector||e.cartOpenSelector;if(i){let a=document.querySelector(i);if(a)return setTimeout(()=>{try{a.click()}catch(s){}},300),!1}else if(t&&t.openCartDrawer){let a=!1;try{a=t.openCartDrawer()}catch(s){}if(a)return!1}}return!0}function xe(){let t=q();if(t&&t.skipRedirect)return;let e=t&&t.cartUrl||"/cart";setTimeout(()=>{try{window.location.href=e}catch(n){}},250)}var Fr=/\/(thank[_-]?you|orders?\/|pedido[_-]?(confirmado|realizado|finalizado|sucesso)|sucesso|order[_-]?confirmation|compra[_-]?(finalizada|concluida)|orderplaced)/i,qr=/\/checkout/i,zr=/\/(cart|carrinho|sacola|bag)(\/|$|\?|#)/i,$r=/\/(products?|produtos?|p)\//i,Kr=/\/(collections?|categoria|categorias|c|departamento)\//i,Vr=/\/(search|busca|s)(\/|\?)/i;function be(){try{if(window.__mkPageType)return window.__mkPageType}catch(e){}try{let e=v();for(let n of e){let r=Array.isArray(n["@type"])?n["@type"]:[n["@type"]];if(r.includes("Order")||r.includes("Invoice"))return"purchase";if(r.includes("Product"))return"pdp";if(r.includes("SearchResultsPage"))return"search";if(r.includes("CollectionPage")||r.includes("ItemList"))return"category"}}catch(e){}let t=(location.pathname||"").toLowerCase();return t==="/"||t===""||t==="/home"||t==="/index.html"?"home":Fr.test(t)?"purchase":qr.test(t)?"checkout":zr.test(t)?"cart":$r.test(t)?"pdp":Kr.test(t)?"category":Vr.test(t)?"search":"other"}function _e(t){let e=null;try{let n=new URLSearchParams(location.search),r=["utm_source","utm_medium","utm_campaign","utm_term","utm_content"],o={};for(let i of r){let a=n.get(i);a&&(o[i.replace("utm_","")]=a)}Object.keys(o).length&&(e=o)}catch(n){}return{url:location.href,pathname:location.pathname,referrer:document.referrer||null,title:document.title||null,pageType:t,utm:e,userAgent:navigator.userAgent,language:navigator.language,viewport:window.innerWidth+"x"+window.innerHeight,platform:Hr()}}function Hr(){return he()}var St={},Jr=null,$=0,Ce=!1;function ke(t){Ce||(Ce=!0,ve(t),Gr(),Wr(),Xr(),Yr(),Zr(t))}function ve(t){St={};let e=be(),n=_e(e);if(ee(n),l("view",{url:location.href,pathname:location.pathname,referrer:document.referrer||null,title:document.title||null,pageType:e}),typeof t=="function")try{t(e,n)}catch(r){}}function Gr(){if(!document.body)return;let t={A:1,BUTTON:1,INPUT:1,SELECT:1,TEXTAREA:1},e=0;document.body.addEventListener("click",n=>{try{let r=Date.now();if(r-e<100)return;e=r;let o=n.target;for(let s=0;s<5&&o&&o!==document.body&&!(t[o.tagName]||o.getAttribute&&o.getAttribute("role")==="button");s++)o=o.parentElement;if(!o||!t[o.tagName]&&!(o.getAttribute&&o.getAttribute("role")==="button"))return;let i={tag:o.tagName},a=o.tagName==="INPUT"||o.tagName==="TEXTAREA"?o.value:o.textContent;i.text=(a||"").replace(/\s+/g," ").trim().substring(0,100),o.href&&(i.href=String(o.href).substring(0,500)),o.id&&(i.id=o.id),o.className&&typeof o.className=="string"&&(i.classes=o.className.trim().substring(0,200)),l("click",i)}catch(r){}},{capture:!0,passive:!0})}function Wr(){let t=[25,50,75,100],e=null,n=()=>{try{let r=window.scrollY||document.documentElement.scrollTop||0,o=Math.max(document.body&&document.body.scrollHeight||0,document.documentElement&&document.documentElement.scrollHeight||0);if(o<=0)return;let i=Math.min(100,Math.floor((r+window.innerHeight)/o*100));for(let a of t)i>=a&&!St[a]&&(St[a]=!0,l("scroll_depth",{depth:a}))}catch(r){}};n(),window.addEventListener("scroll",()=>{e||(e=setTimeout(()=>{e=null,n()},250))},{passive:!0})}function Xr(){document.body&&document.body.addEventListener("submit",t=>{try{let e=t.target;if(!e||e.tagName!=="FORM"||e.querySelector('input[type="password"], input[name*="card"], input[name*="cpf"]'))return;let n="other",r=(e.className||"").toLowerCase(),o=(e.action||"").toLowerCase();e.querySelector('input[type="search"], input[name="q"], input[name="s"]')?n="search":/newsletter|subscribe|mailchimp/.test(r+o)?n="newsletter":/contact|contato/.test(r+o)&&(n="contact"),l("form_submit",{form_id:e.id||"",form_type:n})}catch(e){}},{capture:!0})}function Yr(){let t=m();$=Date.now(),Jr=setInterval(()=>{if(document.hidden)return;let e=Date.now(),n=Math.round((e-$)/1e3);$=e,n>0&&n<60&&l("engagement",{url:location.pathname,dwellSec:n})},t.engagementIntervalMs),document.addEventListener("visibilitychange",()=>{if(document.hidden){let e=Math.round((Date.now()-$)/1e3);e>0&&e<600&&l("engagement",{url:location.pathname,dwellSec:e})}$=Date.now()})}function Zr(t){let e=location.href,n=()=>{location.href!==e&&(e=location.href,ve(t))};try{let r=history.pushState,o=history.replaceState;history.pushState=function(){r.apply(this,arguments),setTimeout(n,0)},history.replaceState=function(){o.apply(this,arguments),setTimeout(n,0)},window.addEventListener("popstate",n)}catch(r){}}function Tt(){let t=z(),e=v(["Product"]);if(e.length>0){let o=e[0],i=Array.isArray(o.offers)?o.offers[0]:o.offers;return{sku:t?t.value:o.sku||o.mpn||o.gtin13||o.productID||null,skuSource:t?t.source:null,name:typeof o.name=="string"?o.name:null,price:i&&parseFloat(i.price||i.lowPrice)||null,currency:i?i.priceCurrency:null,brand:o.brand?typeof o.brand=="string"?o.brand:o.brand.name:null,category:o.category||null}}let n=o=>{let i=document.querySelector('meta[property="og:'+o+'"], meta[property="product:'+o+'"]');return i?i.getAttribute("content"):null},r=o=>{let i=document.querySelector('[itemprop="'+o+'"]');return i?i.getAttribute("content")||(i.textContent||"").trim():null};if(t||n("type")==="product"||n("price:amount")||r("name")){let o=r("price")||n("price:amount");return{sku:t?t.value:null,skuSource:t?t.source:null,name:r("name")||n("title")||document.title||null,price:o&&parseFloat(String(o).replace(",","."))||null,currency:r("priceCurrency")||n("price:currency")||null,brand:r("brand")||null,category:null}}return null}function Se(){let t=v(["Order","Invoice"]);if(t.length>0){let r=t[0],o=r.totalPaymentDue?parseFloat(r.totalPaymentDue.price):parseFloat(r.price||r.total);return{orderId:r.orderNumber||r.confirmationNumber||r.identifier||null,revenue:Number.isFinite(o)?o:null,currency:r.totalPaymentDue&&r.totalPaymentDue.priceCurrency||r.priceCurrency||null,source:"jsonld"}}try{if(Array.isArray(window.dataLayer))for(let r=window.dataLayer.length-1;r>=0;r--){let o=window.dataLayer[r];if(o&&o.event==="purchase"&&o.ecommerce){let i=o.ecommerce;return{orderId:i.transaction_id||i.transactionId||null,revenue:parseFloat(i.value||i.revenue)||null,currency:i.currency||i.currencyCode||null,itemCount:(i.items||i.products||[]).length||null,source:"datalayer"}}}}catch(r){}let e=document.querySelector('meta[property="order:total"], meta[name="order-total"]');if(e&&e.content)return{orderId:null,revenue:parseFloat(e.content)||null,source:"meta"};let n=Qr();return n||null}function Qr(){try{let t=[".order-total","#order-total",".total-price",".order__total","[data-order-total]",".summary-total",".grand-total"];for(let e of t){let n=document.querySelector(e);if(n){let r=en(n.textContent);if(r)return{orderId:tn(),revenue:r,source:"dom"}}}return null}catch(t){return null}}function tn(){try{let e=(document.body.innerText||"").match(/(?:pedido|order|n[º°o]\.?)\s*#?\s*([A-Z0-9-]{4,})/i);return e?e[1]:null}catch(t){return null}}function en(t){if(!t)return null;let e=String(t).replace(/[^\d.,]/g,"");if(!e)return null;let n;e.indexOf(",")>e.indexOf(".")?n=e.replace(/\./g,"").replace(",","."):n=e.replace(/,/g,"");let r=parseFloat(n);return Number.isFinite(r)&&r>0?r:null}function Te(){let t=v(["ItemList","CollectionPage"]);if(t.length===0)return null;let e=t[0],n=e.itemListElement||e.mainEntity&&e.mainEntity.itemListElement||[],r=[];for(let o of n.slice(0,50)){let i=o.item||o;i&&(i.sku||i.productID||i.name)&&r.push(i.sku||i.productID||i.name)}return r.length>0?{count:r.length,skus:r.slice(0,20)}:null}var Ae=!1,et=[/\b(adicionar|adic\.?|colocar|incluir|jogar)\b.{0,30}\b(carrinho|sacola|sacolinha|bag)\b/i,/\bcomprar\b(?!\s+(em|por|sem))/i,/\bcomprar\s*$/i,/^add\s+to\s+(cart|bag)\b/i,/^buy\s+(now|it|this)\b/i,/^(sacolinha|carrinho|sacola)$/i],rn=[/^finalizar(\s+(compra|pedido|pagamento))?\b/i,/^(fechar|confirmar)\s+(compra|pedido|pagamento)\b/i,/^pagar(\s+(agora|pedido))?\b/i,/^(complete|place)\s+(purchase|order)\b/i,/^checkout$/i];function K(t,e){for(let n=0;n<t.length;n++)if(t[n].test(e))return!0;return!1}function Ee(t){switch(t){case"pdp":{let e=Tt();l("view_item",e||{sku:null});break}case"category":case"search":{let e=Te();l("view_item_list",e||{count:0});break}case"cart":ye().then(e=>l("view_cart",e&&e.value!=null?{value:e.value,itemCount:e.itemCount,currency:e.currency}:{})).catch(()=>l("view_cart",{}));break;case"checkout":l("begin_checkout",{});break;case"purchase":nn();break}}function nn(){let t=Se();if(t&&t.orderId){let e="_mk_purch_"+t.orderId;try{if(sessionStorage.getItem(e)){g("purchase j\xE1 contado",t.orderId);return}sessionStorage.setItem(e,"1")}catch(n){}}else if(Ae)return;Ae=!0,l("purchase",t||{revenue:null,_note:"no_order_data_extracted"}),g("purchase emitido",t)}function Le(){if(!document.body)return;let t=0;document.body.addEventListener("click",e=>{try{let n=Date.now();if(n-t<150)return;let r=e.target;for(let s=0;s<5&&r&&r!==document.body&&!(r.tagName==="BUTTON"||r.tagName==="A"||r.getAttribute&&r.getAttribute("role")==="button");s++)r=r.parentElement;if(!r)return;let o=r.tagName!=="A",i=(r.textContent||"").replace(/\s+/g," ").trim();if(!i||i.length>80)return;let a=!1;if((K([et[0]],i)||o&&K([et[1]],i)||o&&K([et[2]],i)||K(et.slice(3),i))&&(a=!0),a){t=n;let s=Tt();l("add_to_cart",{via:"click",buttonText:i,sku:s?s.sku:null,price:s?s.price:null});return}o&&K(rn,i)&&(t=n,l("begin_checkout",{via:"click",buttonText:i}))}catch(n){}},{capture:!0,passive:!0})}var k=null,S=null,nt=!1,ot=!1,B=null,Ie={},At=null,rt=0,_={onReady:null,onClose:null,onAddToCart:null,onProductLoaded:null,onError:null,onInteraction:null,onGenerationComplete:null},on={gregory:"698c7e791d3129430f15dddd"};function Re(t){return t?on[String(t).toLowerCase()]||t:null}async function N(t,e){let n=m(),r=Re(t);e=String(e||"").trim();let o=n.apiUrl+"/availability/"+r+"?sku="+encodeURIComponent(e),i=await fetch(o);if(!i.ok)throw new Error("availability HTTP "+i.status);return i.json()}async function je(t,e){e||(e=t,t="698c7e791d3129430f15dddd");try{return(await N(t,e)).available===!0}catch(n){return!1}}async function it(t){if(t=t||{},nt)return;let e=Re(t.projectId||t.projectid||t.store),n=String(t.identifier||t.sku||"").trim();if(!e||!n){console.error("[mk-sdk] open: projectId e identifier obrigatorios");return}let r=e+":"+n;if(Ie[r]!==!0){try{if(!(await N(e,n)).available){alert("Produto nao disponivel para prova virtual.");return}}catch(o){alert("Produto nao encontrado ou indisponivel.");return}Ie[r]=!0}B={projectId:e,identifier:n,width:t.width||430,height:t.height||800},ot=!1,Oe(),an(B),nt=!0,rt=Date.now(),l("modal_opened",{projectId:e,identifier:n})}function Lt(){if(!nt)return;let t=ot;if(ot=!1,cn(),nt=!1,A("onClose"),l("modal_closed",{projectId:B&&B.projectId,identifier:B&&B.identifier}),t)try{xe()}catch(e){}}function Be(t){try{let e=document.getElementById("mk-tryon-button-host");if(!e)return;t?(e.dataset.mkPrevDisplay===void 0&&(e.dataset.mkPrevDisplay=e.style.display),e.style.display="none"):(e.style.display=e.dataset.mkPrevDisplay||"",delete e.dataset.mkPrevDisplay)}catch(e){}}function an(t){k=document.createElement("div"),k.style.cssText="position:fixed;inset:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:2147483647;",Be(!0);let e=document.createElement("div"),n=typeof t.width=="number"?t.width+"px":t.width,r=typeof t.height=="number"?t.height+"px":t.height;e.style.cssText="position:relative;width:"+n+";height:"+r+";max-width:100vw;max-height:100dvh;border-radius:12px;overflow:hidden;background:#fff;",S=document.createElement("iframe");let o=encodeURIComponent(t.identifier).replace(/\./g,"%2E");S.src=m().appUrl+"/"+t.projectId+"/"+o,S.style.cssText="width:100%;height:100%;border:none;",S.setAttribute("allow","camera *; microphone *"),S.setAttribute("allowfullscreen","true"),e.appendChild(S),k.appendChild(e),document.body.appendChild(k),g("try-on modal aberto",S.src)}function cn(){k&&k.parentNode&&k.parentNode.removeChild(k),k=null,S=null,Be(!1)}var Pe=!1;function Ne(){Oe()}function Oe(){Pe||(Pe=!0,window.addEventListener("message",t=>{let e=t.data;if(!e||e.source!=="mkfashion-app")return;let n=e.action,r=e.data||{};switch(n){case"close_request":Lt();break;case"ready":A("onReady",r);break;case"product_loaded":A("onProductLoaded",r),l("product_loaded",Et(r));break;case"interaction":{A("onInteraction",r),r&&r.method&&(At=r.method),l(ln(r),Et(r));break}case"add_to_cart":l("add_to_cart",Object.assign({via:"tryon"},Et(r))),typeof _.onAddToCart=="function"?A("onAddToCart",r):ge(r).then(()=>we()).then(o=>{ot=!!o}).catch(()=>{});break;case"generation_start":rt=Date.now();break;case"generation_complete":A("onGenerationComplete",r),l("generation_complete",{method:r.method||At||"unknown",durationMs:rt?Date.now()-rt:null,success:r.success!==!1,imageUrlPresent:!!r.imageUrl});break;case"generation_error":A("onError",r),l("generation_error",{method:At||"unknown",error:r&&r.error});break}}))}function ln(t){return t&&t.action,"interaction"}function Et(t){if(!t||typeof t!="object")return t;let e={};for(let n in t){if(n==="imageUrl"||n==="image"||n==="product"){n==="product"&&t[n]?(e.productSku=t[n].sku||null,e.productName=t[n].name||null):e[n+"Present"]=!!t[n];continue}e[n]=t[n]}return e}function A(t,e){if(typeof _[t]=="function")try{_[t](e)}catch(n){console.error("[mk-sdk]",n)}}function Me(t){_.onReady=t}function Ue(t){_.onClose=t}function De(t){_.onAddToCart=t}function Fe(t){_.onProductLoaded=t}function qe(t){_.onError=t}function ze(t){_.onInteraction=t}function $e(t){_.onGenerationComplete=t}var un=767,dn=1024,fn=/(adicionar\s*(à|a|ao)?\s*(sacola|carrinho|cesta|bolsa))|adicionar ao carrinho|add to (cart|bag)|comprar agora|^comprar$|finalizar compra|eu quero/i,pn=/continuar|como comprar|lista|desejos|favorito|looks|cupom/i;function It(t){try{let e=t.getBoundingClientRect();if(e.width<=0||e.height<=0)return!1;let n=getComputedStyle(t);return n.display!=="none"&&n.visibility!=="hidden"&&n.opacity!=="0"}catch(e){return!1}}function mn(t){if(!t)return!1;try{let e=document.querySelector(t);return!!e&&It(e)}catch(e){return!1}}function hn(t){return(t.tagName==="INPUT"?t.value||"":t.textContent||"").replace(/\s+/g," ").trim()}function gn(t){if(!t||typeof t!="object"||t.selector)return t;let e=!1;if(["mobile","tablet","desktop"].forEach(r=>{let o=t[r];o&&o.mkAnchor===1&&o.anchor&&typeof o.anchor=="object"&&(e=!0)}),!e)return t;let n={};return["mobile","tablet","desktop"].forEach(r=>{let o=t[r];if(o){if(o.selector){n[r]=o;return}if(o.mkAnchor===1&&o.anchor&&typeof o.anchor=="object"){let i=o.anchor[r]||o.anchor.desktop||o.anchor.mobile||o.anchor.tablet;i&&i.selector&&(n[r]=i)}}}),["bpMobile","bpTablet","breakpoint"].forEach(r=>{t[r]!=null&&(n[r]=t[r])}),n}function Pt(t){if(!t||typeof t!="object")return null;if(t=gn(t),t.selector)return t;let e=[["mobile",t.mobile],["tablet",t.tablet],["desktop",t.desktop]].filter(u=>u[1]&&u[1].selector);if(e.length===0)return null;if(e.length===1)return e[0][1];let n=e.filter(([,u])=>mn(u.selector));if(n.length===1)return n[0][1];let r=window.innerWidth||1024,o=Number(t.bpMobile)||Number(t.breakpoint)||un,i=Number(t.bpTablet)||dn,a=u=>(e.find(d=>d[0]===u)||[])[1],s=r<=o?["mobile","tablet","desktop"]:r<=i?["tablet","desktop","mobile"]:["desktop","tablet","mobile"];for(let u of s){let d=a(u);if(d)return d}return e[0][1]}function Ke(){let t=m(),e=Pt(t&&t.anchor);if(e&&e.selector)try{let r=document.querySelector(e.selector);if(r&&It(r))return{el:r,position:e.position||"afterend",mode:e.mode||"flow",style:e.style||"",align:e.align||"top-left",selector:e.selector}}catch(r){}let n=document.querySelectorAll('button, [role="button"], a.btn, a.button, input[type="submit"], input[type="button"]');for(let r of n){let o=hn(r);if(!(!o||o.length>40)&&!pn.test(o)&&fn.test(o)&&It(r))return{el:r,position:"afterend",mode:"flow",style:"",selector:null}}return null}var b="'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",Rt={none:"0",sm:"4px",md:"8px",pill:"9999px"},jt={none:"0",sm:"4px",md:"8px",lg:"16px"},yn='<svg viewBox="0 0 17.5263 20.6862" fill="none" xmlns="http://www.w3.org/2000/svg" style="display:block;width:100%;height:100%"><g><path d="M8.49995 12.1862C10.1568 12.1862 11.5 10.8431 11.5 9.18622C11.5 7.52936 10.1568 6.18622 8.49995 6.18622C6.8431 6.18622 5.49995 7.52936 5.49995 9.18622C5.49995 10.8431 6.8431 12.1862 8.49995 12.1862Z" stroke="currentColor" shape-rendering="crispEdges"/><path d="M0.5 9.11152C0.5 6.56953 0.5 5.29894 1.1099 4.38664C1.375 3.9902 1.71424 3.65088 2.10821 3.38809C2.6945 2.9958 3.42899 2.85564 4.55351 2.80588C5.09013 2.80588 5.55183 2.39949 5.65687 1.87284C5.73715 1.48708 5.94572 1.14138 6.24735 0.894155C6.54898 0.646934 6.92516 0.51336 7.31231 0.516006H9.9734C10.7779 0.516006 11.4709 1.08412 11.6288 1.87284C11.7339 2.39949 12.1956 2.80588 12.7322 2.80588C13.8559 2.85564 12.9129 4.67413 13.5 5.06559C13.8949 5.32932 15.1484 3.80355 15.5 4.02647C16.1099 4.93876 16.7857 6.56953 16.7857 9.11152C16.7857 11.6535 16.7857 12.9233 16.1758 13.8364C15.9107 14.2328 15.5715 14.5722 15.1775 14.835C14.2647 15.4445 12.9936 15.4445 10.4522 15.4445H6.83351C4.29213 15.4445 3.02103 15.4445 2.10821 14.835C1.71446 14.5718 1.3755 14.2322 1.11071 13.8356C0.933802 13.5672 0.803519 13.2698 0.725557 12.9564" stroke="currentColor" stroke-linecap="round"/><path d="M12.676 0.607931C12.9446 -0.178095 14.0307 -0.2019 14.3491 0.536515L14.3761 0.60838L14.7385 1.66839C14.8216 1.91149 14.9559 2.13395 15.1322 2.32076C15.3086 2.50757 15.5229 2.65439 15.7608 2.75131L15.8583 2.78769L16.9183 3.14971C17.7044 3.41831 17.7282 4.50437 16.9902 4.82283L16.9183 4.84978L15.8583 5.21225C15.6151 5.29526 15.3926 5.42947 15.2057 5.60582C15.0188 5.78218 14.8719 5.99657 14.7749 6.23453L14.7385 6.33155L14.3765 7.39201C14.1079 8.17803 13.0219 8.20184 12.7039 7.46387L12.676 7.39201L12.314 6.332C12.231 6.08881 12.0968 5.86627 11.9204 5.67938C11.744 5.49249 11.5297 5.3456 11.2917 5.24863L11.1947 5.21225L10.1347 4.85022C9.34817 4.58163 9.32437 3.49557 10.0628 3.17756L10.1347 3.14971L11.1947 2.78769C11.4378 2.70462 11.6602 2.57039 11.847 2.39404C12.0339 2.21769 12.1807 2.00333 12.2776 1.76541L12.314 1.66839L12.676 0.607931Z" fill="currentColor"/></g></svg>',wn='<svg viewBox="0 0 11.6122 12.7248" fill="none" xmlns="http://www.w3.org/2000/svg" style="display:block;width:12px;height:12px"><path d="M4.09055 2.01133C4.43939 0.9905 5.84989 0.959583 6.26347 1.91858L6.29847 2.01192L6.76922 3.38858C6.8771 3.7043 7.05144 3.99321 7.28047 4.23583C7.5095 4.47845 7.7879 4.66912 8.09689 4.795L8.22347 4.84225L9.60014 5.31242C10.621 5.66125 10.6519 7.07175 9.69347 7.48533L9.60014 7.52033L8.22347 7.99108C7.90764 8.09889 7.61862 8.2732 7.3759 8.50223C7.13318 8.73127 6.94241 9.0097 6.81647 9.31875L6.76922 9.44475L6.29905 10.822C5.95022 11.8428 4.53972 11.8737 4.12672 10.9153L4.09055 10.822L3.62039 9.44533C3.51258 9.12951 3.33827 8.84048 3.10924 8.59776C2.8802 8.35504 2.60177 8.16427 2.29272 8.03833L2.16672 7.99108L0.790054 7.52092C-0.231363 7.17208 -0.26228 5.76158 0.69672 5.34858L0.790054 5.31242L2.16672 4.84225C2.48244 4.73437 2.77135 4.56003 3.01397 4.331C3.25658 4.10197 3.44726 3.82357 3.57314 3.51458L3.62039 3.38858L4.09055 2.01133ZM9.86147 0C9.9706 0 10.0775 0.0306123 10.1701 0.0883584C10.2627 0.146104 10.3373 0.228668 10.3853 0.326667L10.4133 0.394917L10.6175 0.993417L11.2166 1.19758C11.3259 1.23474 11.4218 1.30353 11.492 1.39523C11.5623 1.48693 11.6037 1.59741 11.611 1.71268C11.6184 1.82795 11.5914 1.94281 11.5334 2.04271C11.4755 2.14261 11.3891 2.22305 11.2854 2.27383L11.2166 2.30183L10.6181 2.506L10.4139 3.10508C10.3767 3.21442 10.3078 3.31024 10.2161 3.38041C10.1244 3.45058 10.0139 3.49194 9.89859 3.49925C9.78333 3.50656 9.66849 3.47949 9.56863 3.42147C9.46876 3.36345 9.38837 3.27709 9.33764 3.17333L9.30964 3.10508L9.10547 2.50658L8.50639 2.30242C8.39702 2.26526 8.30115 2.19647 8.23092 2.10477C8.16069 2.01307 8.11926 1.90259 8.11189 1.78732C8.10452 1.67205 8.13153 1.55719 8.18951 1.45729C8.24749 1.35739 8.33381 1.27695 8.43755 1.22617L8.50639 1.19817L9.10489 0.994L9.30905 0.394917C9.34839 0.279665 9.42281 0.179613 9.52187 0.108791C9.62094 0.0379686 9.73969 -0.0000730808 9.86147 0Z" fill="currentColor"/></svg>';function p(t,e={}){let n=document.createElement(t);if(e.style&&(n.style.cssText=e.style),e.text!=null&&(n.textContent=e.text),e.html!=null&&(n.innerHTML=e.html),e.attrs)for(let r in e.attrs)n.setAttribute(r,e.attrs[r]);if(e.on)for(let r in e.on)n.addEventListener(r,e.on[r]);if(e.children)for(let r of e.children)r&&n.appendChild(r);return n}function at(t){return p("span",{style:`width:24px;height:24px;padding:2px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;color:${t};flex-shrink:0;`,html:yn})}function Ve(t){return p("span",{style:`width:12px;height:12px;display:inline-flex;align-items:center;justify-content:center;color:${t};flex-shrink:0;`,html:wn})}function ct(t){return t.borderWidth>0&&t.borderColor?`${t.borderWidth}px solid ${t.borderColor}`:"none"}function lt(){if(!document.getElementById("mk-jakarta-font"))try{document.head.appendChild(p("link",{attrs:{id:"mk-jakarta-font",rel:"stylesheet",href:"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;600;700&display=swap"}}))}catch(t){}}function xn(t){return t.subtext?p("span",{style:`display:flex;align-items:center;justify-content:center;padding:4px;background:${t.badgeBgColor};font-family:${b};font-weight:700;font-size:16px;text-transform:uppercase;color:${t.badgeTextColor};line-height:1;white-space:nowrap;`,text:t.subtext}):null}function He(t,e){lt();let n=p("span",{style:"display:inline-flex;align-items:center;gap:4px;",children:[at(t.textColor),p("span",{text:t.text,style:`font-family:${b};font-weight:700;font-size:${t.fontSize}px;text-transform:uppercase;letter-spacing:2px;color:${t.textColor};white-space:nowrap;text-align:center;line-height:1;`})]});return p("button",{attrs:{type:"button"},style:`display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;width:100%;max-width:238px;box-sizing:border-box;background:${t.bgColor};border:${ct(t)};border-radius:${t.borderRadiusPx};font-family:${b};cursor:pointer;transition:opacity 0.2s ease;line-height:1;-webkit-appearance:none;appearance:none;`,children:[n,xn(t)],on:{mouseenter:r=>{r.currentTarget.style.opacity="0.85"},mouseleave:r=>{r.currentTarget.style.opacity="1"},click:()=>{try{e&&e()}catch(r){}}}})}function _n(t){return t.subtext?p("span",{style:`display:flex;align-items:center;gap:4px;padding:4px;background:${t.badgeBgColor};font-family:${b};font-weight:600;font-size:10px;text-transform:uppercase;color:${t.badgeTextColor};line-height:1;white-space:nowrap;`,children:[Ve(t.badgeTextColor),p("span",{text:t.subtext})]}):null}function Cn(t,e){return p("button",{attrs:{type:"button"},style:`display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px 8px 8px;width:100%;margin-top:auto;box-sizing:border-box;background:${t.bgColor};border:${ct(t)};border-radius:${t.borderRadiusPx};filter:drop-shadow(0 0 6px rgba(0,0,0,0.08));font-family:${b};cursor:pointer;transition:opacity 0.2s ease;line-height:1;-webkit-appearance:none;appearance:none;`,children:[at(t.textColor),p("span",{text:t.text,style:`font-family:${b};font-weight:700;font-size:${t.fontSize}px;color:${t.textColor};white-space:nowrap;line-height:1;`})],on:{mouseenter:n=>{n.currentTarget.style.opacity="0.85"},mouseleave:n=>{n.currentTarget.style.opacity="1"},click:()=>{try{e&&e()}catch(n){}}}})}function Je(t,e){lt();let n=p("div",{style:"display:flex;flex-direction:column;gap:4px;",children:[t.cardTitle&&p("p",{text:t.cardTitle,style:`margin:0;font-family:${b};font-weight:700;font-size:16px;letter-spacing:1px;text-transform:uppercase;color:${t.cardTitleColor};line-height:1.2;`}),t.cardDescription&&p("p",{html:t.cardDescription,style:`margin:0;font-family:${b};font-weight:400;font-size:12px;max-width:177px;line-height:1.2;color:${t.cardTextColor};`})]}),r=p("div",{style:"display:flex;flex-direction:column;justify-content:space-between;gap:16px;flex:1 1 0;min-width:0;",children:[n,t.cardFooter&&p("p",{text:t.cardFooter,style:`margin:0;font-family:${b};font-weight:400;font-size:10px;color:${t.cardTextColor};line-height:1.2;`})]}),o=p("div",{style:"display:flex;flex-direction:column;align-items:flex-end;flex:1 1 0;min-width:0;",children:[_n(t),Cn(t,e)]}),i=p("div",{style:"display:flex;gap:16px;align-items:stretch;width:100%;flex:1;box-sizing:border-box;",children:[r,o]});return p("div",{style:`display:flex;flex-direction:column;align-items:flex-start;padding:12px;width:100%;max-width:402px;min-height:140px;box-sizing:border-box;background:${t.cardBgColor};border-radius:${t.cardBorderRadiusPx};font-family:${b};`,children:[i]})}var vn={style:"gregory-black",text:"Provar Virtualmente",fontSize:14,subtext:"",bgColor:"#1E1E1E",textColor:"#FFFFFF",badgeBgColor:"#C51A1B",badgeTextColor:"#FFFFFF",borderRadius:"md",borderColor:"#1E1E1E",borderWidth:0,cardTitle:"",cardDescription:"",cardFooter:"",cardBgColor:"#F6F6F6",cardTitleColor:"#1E1E1E",cardTextColor:"#717171",cardBorderRadius:"md"};function Bt(t,e){let n=(e?t&&t.mobile:t&&t.desktop)||t&&t.desktop||t&&t.mobile||{},r={...vn,...n};return r.style==="gregory-card"&&e&&(r.style="gregory-black"),r.borderRadiusPx=Rt[r.borderRadius]!=null?Rt[r.borderRadius]:"0",r.cardBorderRadiusPx=jt[r.cardBorderRadius]!=null?jt[r.cardBorderRadius]:"0",r.fontSize=Number(r.fontSize)||14,r.borderWidth=Number(r.borderWidth)||0,r}var Nt={"gregory-black":He,"gregory-card":Je},Co=Object.keys(Nt);function Ge(t,e){return(Nt[t.style]||Nt["gregory-black"])(t,e)}var Dt="mk-tryon-button-host",Sn=/^(transform|transform-origin|margin|margin-(top|right|bottom|left)|position|inset|top|right|bottom|left|z-index|width|min-width|max-width|height|min-height|max-height)$/i;function Tn(t){return!t||typeof t!="string"?"":t.split(";").map(e=>e.trim()).filter(Boolean).filter(e=>Sn.test(e.split(":")[0].trim().toLowerCase())).join(";")}var st=null,Ot=!1,Mt={},We=!1,Ut=null;function Xe(){return Ut||(Ut=j().then(t=>t&&t.template&&t.template.tryOnButton||null).catch(()=>null)),Ut}function An(){if(We)return;We=!0;let t=null;try{window.addEventListener("resize",()=>{clearTimeout(t),t=setTimeout(()=>{st&&O("pdp")},200)})}catch(e){}}function Ft(){let t=document.getElementById(Dt);if(t){if(typeof t.__mkCleanup=="function")try{t.__mkCleanup()}catch(e){}t.parentNode&&t.parentNode.removeChild(t)}st=null}var En={IMG:1,INPUT:1,VIDEO:1,CANVAS:1,EMBED:1,OBJECT:1,IFRAME:1,BR:1,HR:1,SELECT:1,TEXTAREA:1,SVG:1};function Ln(t){switch(t){case"top-center":return"top:0;left:50%;transform:translateX(-50%);";case"top-right":return"top:0;right:0;";case"middle-left":return"top:50%;left:0;transform:translateY(-50%);";case"center":return"top:50%;left:50%;transform:translate(-50%,-50%);";case"middle-right":return"top:50%;right:0;transform:translateY(-50%);";case"bottom-left":return"bottom:0;left:0;";case"bottom-center":return"bottom:0;left:50%;transform:translateX(-50%);";case"bottom-right":return"bottom:0;right:0;";case"top-left":default:return"top:0;left:0;"}}function In(t,e,n){let o=!En[t.tagName]?t:t.parentElement||document.body;try{getComputedStyle(o).position==="static"&&(o.style.position="relative")}catch(d){}if(o===t){e.style.cssText="position:absolute;z-index:2147483000;"+Ln(n),t.appendChild(e);return}e.style.cssText="position:absolute;z-index:2147483000;",o.appendChild(e);let i=()=>{try{let d=t.getBoundingClientRect(),h=o.getBoundingClientRect(),w=e.offsetWidth,c=e.offsetHeight,f=d.top-h.top+o.scrollTop,y=d.left-h.left+o.scrollLeft,x=n||"top-left",V=f,T=y;x.indexOf("bottom")===0?V=f+d.height-c:(x.indexOf("middle")===0||x==="center")&&(V=f+(d.height-c)/2),x.indexOf("right")>=0?T=y+d.width-w:x.indexOf("center")>=0&&(T=y+(d.width-w)/2),e.style.top=V+"px",e.style.left=T+"px"}catch(d){}};i();let a=()=>i();window.addEventListener("resize",a);let s=setTimeout(i,600),u=setTimeout(i,1500);e.__mkCleanup=()=>{window.removeEventListener("resize",a),clearTimeout(s),clearTimeout(u)}}function Pn(t,e,n){try{return t.insertAdjacentElement(n||"afterend",e),!0}catch(r){try{return t.parentNode.insertBefore(e,t.nextSibling),!0}catch(o){return!1}}}async function O(t){let e=m();if(t!=="pdp"){Ft();return}if(!e.projectId)return;if(!e._anchorFromPicker){let u=await Xe();u&&u.anchor&&(e.anchor=u.anchor)}if(Ot)return;let n=z(),r=n&&n.value,o=!!e.forceButton,i=Pt(e.anchor),a=[r||"demo",i?[i.selector,i.position,i.mode,i.align,i.style].join("~"):"heuristic"].join("|"),s=document.getElementById(Dt);if(!(s&&st===a)){if(s&&Ft(),!r&&!o){g("auto-mount: SKU n\xE3o resolvido na PDP");return}Ot=!0;try{let u=o;o||(Mt[r]||(Mt[r]=N(e.projectId,r).then(C=>!!(C&&C.available)).catch(()=>!1)),u=await Mt[r]);try{te(u?"available":"unavailable")}catch(C){}if(!u){g("auto-mount: produto sem try-on",r);return}let d=await Xe(),h=window.matchMedia("(max-width: 767px)").matches,w=Bt(d,h),c=Ke(),f=c&&c.mode||"flow",y=Ge(w,()=>{let C=z(),ut=C&&C.value||r||"";Zt(),l("button_clicked",{sku:ut,style:w.style,mode:f}),it({projectId:e.projectId,identifier:ut})}),x=document.createElement("div");x.id=Dt,x.attachShadow({mode:"closed"}).appendChild(y);let T=!1;if(c&&c.el&&c.el.parentNode&&(f==="overlay"?(In(c.el,x,c.align),T=!0):(x.style.cssText="display:contents;",T=Pn(c.el,x,c.position))),T||(x.style.cssText="position:fixed;left:16px;bottom:16px;z-index:2147483000;",document.body.appendChild(x)),c&&c.style){let C=Tn(c.style);if(C)try{y.style.cssText+=";"+C}catch(ut){}}st=a,An(),g("auto-mount: bot\xE3o injetado",{style:w.style,sku:r,anchorFound:!!c,position:c&&c.position,mode:f,forced:o}),l("button_rendered",{style:w.style,sku:r||null,skuSource:n&&n.source,anchorFound:!!c,position:c?c.position:null,mode:f,forced:o})}finally{Ot=!1}}}function Ye(){try{let t=m(),e={anchor:t.anchor,forceButton:t.forceButton};window.addEventListener("message",n=>{if(n.source!==window)return;let r=n.data;!r||!r.__mkCmd||(r.__mkCmd==="remount"||r.__mkCmd==="applyRecipe"?(t.anchor=r.anchor||null,t._anchorFromPicker=!0,t.forceButton=!0,O("pdp")):r.__mkCmd==="cancelPreview"&&(t.anchor=e.anchor,t._anchorFromPicker=!1,t.forceButton=e.forceButton,Ft(),O("pdp")))})}catch(t){}}(function(){"use strict";try{let n=function(){try{ne(),Ye(),Ne(),e.autoTrack!==!1&&(ke((o,i)=>{Ee(o,i),O(o)}),Le()),g("mk-sdk iniciado",{projectId:e.projectId,collectorUrl:e.collectorUrl})}catch(o){e.debug&&console.error("[mk-sdk] init erro",o)}},e=ft();if(e.projectId){let o=ce(e.projectId);o&&yt(o),j().then(i=>{let a=ie(i);yt(a),le(e.projectId,a),g("escopo de coleta",a)})}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",n):n();let r={open:it,close:Lt,isAvailable:je,getAvailability:N,onReady:Me,onClose:Ue,onAddToCart:De,onProductLoaded:Fe,onError:qe,onInteraction:ze,onGenerationComplete:$e,_version:"0.1.0",_isMkSdk:!0};typeof window!="undefined"&&(window.mk=r)}catch(e){typeof console!="undefined"&&console.error("[mk-sdk] boot fatal",e)}})();})();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mk-sdk-git",
3
- "version": "1.1.9",
3
+ "version": "1.1.11",
4
4
  "description": "SDK de tracking de e-commerce + try-on da MetaKosmos (core tracker, roda em todas as páginas)",
5
5
  "main": "dist/mk-sdk.js",
6
6
  "files": [
@@ -70,8 +70,14 @@ export function resolveConfig() {
70
70
  cartBehavior: (window.__MK && window.__MK.cartBehavior) || null,
71
71
  cartOpenSelector: (window.__MK && window.__MK.cartOpenSelector) || null,
72
72
  autoTrack: attr('data-mk-no-autotrack') === null, // autotrack ligado por padrão
73
- batchIntervalMs: 2000,
74
- batchMaxSize: 20,
73
+ // batchIntervalMs: janela do timer de flush. O batch fecha em batchMaxSize
74
+ // eventos OU batchIntervalMs (o que vier primeiro). Na navegação real o timer
75
+ // dispara antes de encher (poucos eventos por janela), então este valor é o
76
+ // que define o tamanho efetivo do batch — e, com isso, o nº de requests/PUTs
77
+ // no collector. 8s junta mais eventos por POST sem impacto real de freshness
78
+ // (o aggregator só roda de hora em hora). Overridável via window.__MK.
79
+ batchIntervalMs: (window.__MK && window.__MK.batchIntervalMs) || 8000,
80
+ batchMaxSize: (window.__MK && window.__MK.batchMaxSize) || 20,
75
81
  engagementIntervalMs: 15000
76
82
  };
77
83
  return _config;
@@ -5,7 +5,7 @@
5
5
 
6
6
  import { getConfig } from './config.js';
7
7
 
8
- const VALID = ['off', 'pdp_tryon', 'pdp', 'all'];
8
+ const VALID = ['off', 'pdp_tryon', 'pdp', 'all', 'tryon_engaged'];
9
9
  const DEFAULT_SCOPE = 'all'; // sem analytic.scope no CMS → coleta tudo (full)
10
10
  const LS_TTL_MS = 30 * 60 * 1000; // 30min — janela de propagação de mudança no CMS
11
11
 
@@ -11,22 +11,47 @@ let siteContext = null;
11
11
  // ─── Gate de coleta (escopo por página) ───────────────────────────────────
12
12
  // scope vem da receita do projeto (analytic.scope). Enquanto undefined, os
13
13
  // eventos ficam retidos (não sabemos a regra ainda). Decisão por evento:
14
- // off → nunca coleta
15
- // all → sempre coleta
16
- // pdp → coleta só em página de produto
17
- // pdp_tryon → coleta só em PDP COM provador disponível (espera a checagem)
18
- const VALID_SCOPES = ['off', 'pdp_tryon', 'pdp', 'all'];
14
+ // off → nunca coleta
15
+ // all → sempre coleta
16
+ // pdp → coleta só em página de produto
17
+ // pdp_tryon → coleta só em PDP COM provador disponível (espera a checagem)
18
+ // tryon_engaged como pdp_tryon ATÉ o usuário clicar no provador; aí marca o
19
+ // visitante (tag infinita) e passa a coletar a jornada inteira,
20
+ // em qualquer página e em visitas futuras.
21
+ const VALID_SCOPES = ['off', 'pdp_tryon', 'pdp', 'all', 'tryon_engaged'];
19
22
  let collectionScope; // undefined = pendente
20
23
  let currentPageType = null;
21
24
  let tryonState = 'unknown'; // 'unknown' | 'available' | 'unavailable'
22
25
  let held = []; // eventos retidos aguardando decisão
23
26
 
27
+ // ─── Tag de engajamento (escopo tryon_engaged) ─────────────────────────────
28
+ // Flag persistente por projeto. Setada quando o usuário clica no provador;
29
+ // NÃO expira. Marcado → coleta tudo (qualquer página, inclusive visitas futuras).
30
+ let _engaged = null; // cache da leitura do localStorage
31
+ function engagedKey() { const c = getConfig(); return 'mk_engaged_' + ((c && c.projectId) || ''); }
32
+ function isEngaged() {
33
+ if (_engaged !== null) return _engaged;
34
+ try { _engaged = localStorage.getItem(engagedKey()) === '1'; } catch (_) { _engaged = false; }
35
+ return _engaged;
36
+ }
37
+ /** Marca o visitante como engajado (clicou no provador). Idempotente, infinito. */
38
+ export function markEngaged() {
39
+ if (isEngaged()) return;
40
+ _engaged = true;
41
+ try { localStorage.setItem(engagedKey(), '1'); } catch (_) {}
42
+ resolveHeld(false); // libera eventuais eventos retidos que agora passam a coletar
43
+ }
44
+
24
45
  function decideFor(pageType) {
25
46
  if (collectionScope === undefined) return 'hold';
26
47
  switch (collectionScope) {
27
48
  case 'off': return 'drop';
28
49
  case 'all': return 'collect';
29
50
  case 'pdp': return pageType === 'pdp' ? 'collect' : 'drop';
51
+ case 'tryon_engaged':
52
+ if (isEngaged()) return 'collect'; // marcado → jornada inteira
53
+ // não marcado: igual pdp_tryon (coleta só na PDP com provador disponível)
54
+ /* falls through */
30
55
  case 'pdp_tryon':
31
56
  if (pageType !== 'pdp') return 'drop';
32
57
  if (tryonState === 'available') return 'collect';
@@ -4,6 +4,7 @@
4
4
  import { track } from '../core/transport.js';
5
5
  import { log } from '../core/config.js';
6
6
  import { extractProduct, extractOrder, extractItemList } from './extractors.js';
7
+ import { getCartSummary } from '../platforms/index.js';
7
8
 
8
9
  let purchaseEmittedThisLoad = false;
9
10
 
@@ -47,7 +48,10 @@ export function onPageView(pageType) {
47
48
  break;
48
49
  }
49
50
  case 'cart':
50
- track('view_cart', {});
51
+ // enriquece com o total do carrinho (valor) quando a plataforma expõe
52
+ getCartSummary()
53
+ .then((s) => track('view_cart', (s && s.value != null) ? { value: s.value, itemCount: s.itemCount, currency: s.currency } : {}))
54
+ .catch(() => track('view_cart', {}));
51
55
  break;
52
56
  case 'checkout':
53
57
  track('begin_checkout', {});
@@ -40,7 +40,42 @@ export async function addToCart({ size, quantity }) {
40
40
  body: body.toString()
41
41
  });
42
42
  if (!resp.ok) throw new Error('hybris: ' + action + ' HTTP ' + resp.status);
43
- return { platform: 'hybris', productCode: code, size: el.textContent.trim() };
43
+ // a resposta do Hybris traz cartData.total (visto na Marisa). Lê o valor do carrinho.
44
+ let cartValue = null, itemCount = null;
45
+ try {
46
+ const data = await resp.clone().json();
47
+ const cd = data && data.cartData;
48
+ if (cd) {
49
+ cartValue = toMoney(cd.total != null ? cd.total : cd.totalPrice);
50
+ itemCount = cd.totalUnitCount != null ? Number(cd.totalUnitCount)
51
+ : (Array.isArray(cd.products) ? cd.products.length : null);
52
+ }
53
+ } catch (_) {}
54
+ return { platform: 'hybris', productCode: code, size: el.textContent.trim(), cartValue, itemCount, currency: 'BRL' };
55
+ }
56
+
57
+ // Converte "R$ 1.234,56" | "1234.56" | 1234.56 → número (reais). null se vazio.
58
+ function toMoney(v) {
59
+ if (v == null || v === '') return null;
60
+ if (typeof v === 'number') return Number.isFinite(v) ? v : null;
61
+ const c = String(v).replace(/[^\d.,]/g, '');
62
+ if (!c) return null;
63
+ const n = (c.indexOf(',') > c.indexOf('.')) ? parseFloat(c.replace(/\./g, '').replace(',', '.')) : parseFloat(c.replace(/,/g, ''));
64
+ return Number.isFinite(n) ? n : null;
65
+ }
66
+
67
+ // Total do carrinho pro view_cart: raspa o total da página de carrinho (best-effort).
68
+ // ⚠️ NÃO validado ao vivo (anti-bot da Marisa bloqueia carrinho em automação).
69
+ export function getCartSummary() {
70
+ try {
71
+ const sels = ['.js-cart-total', '.cart-total', '.total-price', '.grand-total', '[class*="cart"][class*="total" i]'];
72
+ for (const s of sels) {
73
+ const el = document.querySelector(s);
74
+ const v = el && toMoney(el.textContent);
75
+ if (v) return { value: v, itemCount: null, currency: 'BRL' };
76
+ }
77
+ } catch (_) {}
78
+ return null;
44
79
  }
45
80
  // Sem openCartDrawer: a Marisa (Hybris) não tem sacola lateral no tema. Sem drawer,
46
81
  // o fluxo cai no redirect pro /cart ao fechar o provador (preservando o NPS).
@@ -6,6 +6,7 @@
6
6
 
7
7
  import { getConfig, log } from '../core/config.js';
8
8
  import { fetchProjectRecipe } from '../core/projectRecipe.js';
9
+ import { track } from '../core/transport.js';
9
10
  import * as shopify from './shopify.js';
10
11
  import * as hybris from './hybris.js';
11
12
  import * as vtex from './vtex.js';
@@ -60,15 +61,40 @@ export async function addToCart(payload) {
60
61
  const result = plat.addToCart ? await plat.addToCart(norm) : await generic.addToCart(norm);
61
62
  log('cart: adicionado', result);
62
63
  notifyTheme();
64
+ emitCartValue(plat, result, norm.sku);
63
65
  return result;
64
66
  } catch (e) {
65
67
  log('cart: adapter "' + plat.id + '" falhou — fallback clique nativo', e && e.message);
66
68
  const r = await generic.addToCart(norm);
67
69
  notifyTheme();
70
+ emitCartValue(plat, r, norm.sku);
68
71
  return r;
69
72
  }
70
73
  }
71
74
 
75
+ // Emite cart_value (valor do carrinho) após o add. Prefere o valor que o adapter
76
+ // já leu (ex.: Hybris, da resposta do /cart/add); senão lê via getCartSummary.
77
+ async function emitCartValue(plat, result, sku) {
78
+ try {
79
+ let s = null;
80
+ if (result && result.cartValue != null) {
81
+ s = { value: result.cartValue, itemCount: result.itemCount != null ? result.itemCount : null, currency: result.currency || null };
82
+ } else if (plat && plat.getCartSummary) {
83
+ s = await plat.getCartSummary();
84
+ }
85
+ if (s && s.value != null) {
86
+ track('cart_value', { via: 'tryon', value: s.value, itemCount: s.itemCount != null ? s.itemCount : null, currency: s.currency || null, sku: sku || null });
87
+ }
88
+ } catch (_) {}
89
+ }
90
+
91
+ /** Total do carrinho da plataforma ativa (value em reais, itemCount, currency) | null. */
92
+ export async function getCartSummary() {
93
+ const plat = currentPlatform();
94
+ if (plat && plat.getCartSummary) { try { return await plat.getCartSummary(); } catch (_) {} }
95
+ return null;
96
+ }
97
+
72
98
  function notifyTheme() {
73
99
  ['cart:refresh', 'cart:updated', 'cart:build', 'ajaxProduct:added', 'product:added-to-cart'].forEach((n) => {
74
100
  try { document.dispatchEvent(new CustomEvent(n)); } catch (_) {}
@@ -46,3 +46,16 @@ export async function addToCart({ size, quantity }) {
46
46
  const vId = (form.querySelector('[name="variant_id"]') || {}).value || null;
47
47
  return { platform: 'nuvemshop', variantId: vId };
48
48
  }
49
+
50
+ // Total do carrinho via window.LS.cart. subtotal segue a convenção _raw da
51
+ // Nuvemshop (CENTAVOS) → /100. ⚠️ unidade a confirmar em carrinho real.
52
+ export function getCartSummary() {
53
+ try {
54
+ const LS = window.LS; const c = LS && LS.cart;
55
+ if (!c) return null;
56
+ const cur = (LS.currency && LS.currency.code) || 'BRL';
57
+ const items = Array.isArray(c.items) ? c.items.reduce((n, i) => n + (Number(i.quantity) || 1), 0) : (Number(c.items) || 0);
58
+ const sub = c.subtotal != null ? Number(c.subtotal) : null;
59
+ return { value: sub != null ? sub / 100 : null, itemCount: items, currency: cur };
60
+ } catch (_) { return null; }
61
+ }
@@ -41,6 +41,15 @@ export async function addToCart({ size, color, sku, quantity }) {
41
41
  return { platform: 'shopify', variantId: v.id, size: v.title, sku: v.sku || null };
42
42
  }
43
43
 
44
+ // Total autoritativo do carrinho via /cart.js (total_price em CENTAVOS → /100).
45
+ // Validado ao vivo (LK): total_price 239999 = R$ 2.399,99.
46
+ export async function getCartSummary() {
47
+ try {
48
+ const c = await fetch('/cart.js', { headers: { Accept: 'application/json' } }).then((r) => r.json());
49
+ return { value: (Number(c.total_price) || 0) / 100, itemCount: Number(c.item_count) || 0, currency: c.currency || null };
50
+ } catch (_) { return null; }
51
+ }
52
+
44
53
  // Seletores comuns de gatilho da sacola lateral em temas Shopify (mais específico
45
54
  // → mais genérico). O último (`a[href="/cart"]`) degrada graciosamente: em tema
46
55
  // com drawer abre a sacola, sem drawer só navega pro /cart (= o redirect de antes).
@@ -32,3 +32,17 @@ export async function addToCart({ size, quantity }) {
32
32
  }
33
33
  throw new Error('vtex: vtexjs.checkout indisponível'); // → fallback clique nativo
34
34
  }
35
+
36
+ // Total do carrinho via vtexjs.checkout.orderForm.value (CENTAVOS → /100).
37
+ // ⚠️ API conhecida, NÃO validado ao vivo (sem loja VTEX de teste).
38
+ export function getCartSummary() {
39
+ try {
40
+ const of = window.vtexjs && window.vtexjs.checkout && window.vtexjs.checkout.orderForm;
41
+ if (of && typeof of.value === 'number') {
42
+ const cur = (of.storePreferencesData && of.storePreferencesData.currencyCode) || 'BRL';
43
+ const items = (of.items || []).reduce((n, i) => n + (Number(i.quantity) || 1), 0);
44
+ return { value: of.value / 100, itemCount: items, currency: cur };
45
+ }
46
+ } catch (_) {}
47
+ return null;
48
+ }
@@ -50,3 +50,20 @@ export async function addToCart({ size, quantity }) {
50
50
  if (!ok) throw new Error('wake: addOrCreateCheckout retornou false');
51
51
  return { platform: 'wake', productVariantId: variantId, size: size || null };
52
52
  }
53
+
54
+ // Total do carrinho — Wake não expõe um objeto global pronto; raspa o "TOTAL" do
55
+ // mini-cart (DOM). ⚠️ best-effort, NÃO validado ao vivo. Ideal futuro: query
56
+ // GraphQL no StorefrontClient (checkout.total) com o checkoutId.
57
+ export function getCartSummary() {
58
+ try {
59
+ const els = document.querySelectorAll('[class*="total" i],[class*="minicart" i],[class*="cart" i]');
60
+ for (const el of els) {
61
+ const t = (el.textContent || '');
62
+ if (/total/i.test(t)) {
63
+ const m = t.match(/R\$\s*([\d.]+,\d{2})/);
64
+ if (m) { const n = parseFloat(m[1].replace(/\./g, '').replace(',', '.')); if (Number.isFinite(n) && n > 0) return { value: n, itemCount: null, currency: 'BRL' }; }
65
+ }
66
+ }
67
+ } catch (_) {}
68
+ return null;
69
+ }
@@ -4,7 +4,7 @@
4
4
  // Também expõe um canal de preview pro picker de posição do addon.
5
5
 
6
6
  import { getConfig, log } from '../core/config.js';
7
- import { track, setTryonState } from '../core/transport.js';
7
+ import { track, setTryonState, markEngaged } from '../core/transport.js';
8
8
  import { fetchProjectRecipe } from '../core/projectRecipe.js';
9
9
  import { resolveSku } from '../ecommerce/extractors.js';
10
10
  import { getAvailability, open } from './bridge.js';
@@ -204,6 +204,7 @@ export async function maybeMountButton(pageType) {
204
204
  const id = (live && live.value) || sku || '';
205
205
  // Emite o clique IMEDIATAMENTE — antes de qualquer checagem async (disponibilidade
206
206
  // pode falhar e abortar open() sem registrar nada). Garante captura da interação.
207
+ markEngaged(); // escopo tryon_engaged: clicar no provador marca o visitante (tag infinita)
207
208
  track('button_clicked', { sku: id, style: config.style, mode });
208
209
  open({ projectId: cfg.projectId, identifier: id });
209
210
  });