PageSourceSearch

https://www.granngarden.se/dist/gg.fd917e57.js

js granngarden.se collected 2026-09-24 18:17:21 UTC 41,159 bytes, 1 lines download raw bytes

1"use strict";(self.fkaWebpackJsonp=self.fkaWebpackJsonp||[]).push([[1705],{7702:()=>{},2908:(t,e,r)=>{var n;r.d(e,{R:()=>n}),function(t){t[t.NotInStock=0]="NotInStock",t[t.FewInStock=1]="FewInStock",t[t.InStock=2]="InStock"}(n||(n={}))},4324:(t,e,r)=>{r.d(e,{m:()=>a});var n=r(641);const a=()=>(0,n.pM)({props:{lang:{type:Object,required:!0}},methods:{translate:function(...t){return t.reduce(((t,e)=>null==t?void 0:t[e]),this.lang)},translateFormat:function(t,...e){return((t,e)=>(e.forEach(((e,r)=>{const n=new RegExp(`\\{${r}\\}`,"g");t=t.replace(n,e.toString())})),t))(e.reduce(((t,e)=>null==t?void 0:t[e]),this.lang)??"",t)}}})},6877:(t,e,r)=>{r.d(e,{C:()=>o,s:()=>s});var n=r(8857);let a=null;const s=(t,e,r)=>{r?(a=new n.Ay(t,e),a.activate()):a?.deactivate()},o=()=>{a?.deactivate()}},9002:(t,e,r)=>{var n=r(3751),a=(r(6879),r(641));const s=(0,a.$V)((()=>Promise.all([r.e(2866),r.e(2304)]).then(r.bind(r,4170)))),o=(0,a.$V)((()=>r.e(5464).then(r.bind(r,9665)))),i=(0,a.$V)((()=>Promise.all([r.e(2543),r.e(472),r.e(5170)]).then(r.bind(r,472)))),c=(0,a.$V)((()=>Promise.all([r.e(2543),r.e(472),r.e(9962)]).then(r.bind(r,4211)))),u=(0,a.$V)((()=>Promise.all([r.e(4120),r.e(2305)]).then(r.bind(r,4120)))),d=(0,a.$V)((()=>Promise.all([r.e(4400),r.e(9144)]).then(r.bind(r,4400)))),l=(0,a.$V)((()=>r.e(1058).then(r.bind(r,3644)))),m=(0,a.$V)((()=>Promise.all([r.e(8055),r.e(6944),r.e(1724),r.e(2843),r.e(8063)]).then(r.bind(r,9371)))),h=(0,a.$V)((()=>r.e(9930).then(r.bind(r,617)))),p=(0,a.$V)((()=>r.e(7612).then(r.bind(r,7588)))),g=(0,a.$V)((()=>r.e(2089).then(r.bind(r,6885)))),f=(0,a.$V)((()=>r.e(1005).then(r.bind(r,63)))),b=(0,a.$V)((()=>Promise.all([r.e(6944),r.e(1724),r.e(2866),r.e(1226)]).then(r.bind(r,8126)))),y=(0,a.$V)((()=>Promise.all([r.e(8646),r.e(8868)]).then(r.bind(r,8646)))),w=(0,a.$V)((()=>Promise.all([r.e(1901),r.e(1381)]).then(r.bind(r,1901)))),v=(0,a.$V)((()=>Promise.all([r.e(2543),r.e(8055),r.e(6944),r.e(1724),r.e(2843),r.e(3067)]).then(r.bind(r,3106)))),A=(0,a.$V)((()=>r.e(8129).then(r.bind(r,2086)))),k=(0,a.$V)((()=>r.e(5406).then(r.bind(r,2634)))),S=(0,a.$V)((()=>r.e(8728).then(r.bind(r,7258)))),E=(0,a.$V)((()=>Promise.all([r.e(6944),r.e(1724),r.e(1225)]).then(r.bind(r,8025)))),C=(0,a.$V)((()=>Promise.all([r.e(6944),r.e(1724),r.e(8424)]).then(r.bind(r,9356)))),P=(0,a.$V)((()=>r.e(119).then(r.bind(r,4327)))),q=(0,a.$V)((()=>r.e(5506).then(r.bind(r,6455)))),$=(0,a.$V)((()=>r.e(8661).then(r.bind(r,9240)))),N=(0,a.$V)((()=>Promise.all([r.e(6944),r.e(1724),r.e(9521),r.e(3061)]).then(r.bind(r,9521)))),I=(0,a.$V)((()=>Promise.all([r.e(6944),r.e(1724),r.e(945)]).then(r.bind(r,1724)))),_=(0,a.$V)((()=>r.e(6944).then(r.bind(r,9004)))),F=(0,a.$V)((()=>r.e(3227).then(r.bind(r,6583)))),L=(0,a.$V)((()=>r.e(4473).then(r.bind(r,9239)))),T=(0,a.$V)((()=>r.e(5891).then(r.bind(r,8714)))),x=(0,a.$V)((()=>r.e(3577).then(r.bind(r,9557)))),V=(0,a.$V)((()=>r.e(5102).then(r.bind(r,4969)))),M=(0,a.$V)((()=>Promise.all([r.e(6944),r.e(1724),r.e(4400),r.e(1901),r.e(9521),r.e(4120),r.e(8646),r.e(1434)]).then(r.bind(r,3955)))),R=(0,a.$V)((()=>r.e(4456).then(r.bind(r,9898)))),j={Cart:s,CartSummary:o,ShippingOptions:i,Checkout:c,ProductVariants:u,ProductActions:d,ProfileDropdown:l,ProductList:m,ProductPrice:h,ProductCardPrice:p,StoreList:g,ProductLabel:f,ProductAddedToCart:b,ProductQuantity:y,ProductImages:w,SearchPage:v,ProductHeaderLabels:A,ProductSchema:k,Alert:S,ProductRecommendations:E,CartRecommendations:C,User:P,ProductExtraFreightCosts:q,ProductCampaignDisplay:$,ProductCampaignList:N,ProductCard:I,ProductCardFooter:_,ProductHazard:F,MegaMenu:L,QuickSearch:T,CustomerRating:x,DisplayCountry:V,ProductContent:M,CustomProductList:(0,a.$V)((()=>Promise.all([r.e(6944),r.e(1724),r.e(3896)]).then(r.bind(r,3773)))),ScrollPointer:R,ProductReviewSummary:(0,a.$V)((()=>r.e(8377).then(r.bind(r,4890)))),RelatedServices:(0,a.$V)((()=>Promise.all([r.e(6944),r.e(1724),r.e(8839)]).then(r.bind(r,6861))))};var Q=r(7350),H=r.n(Q);const O=()=>{!function(){const t=document.getElementById("to-the-top"),e=H()((()=>{t&&(0===window.scrollY?t.classList.add("is-hidden"):t.classList.remove("is-hidden"))}),500);t&&(window.addEventListener("scroll",e),t.addEventListener("click",(()=>{window.scrollTo({top:0,behavior:"smooth"})})))}()};var W=r(6663);function B(t){const e=t.querySelector("[data-embed-target]");let r=t.querySelector("iframe");const n=function(t){if(!t)return"";const e=(0,W.parseUrl)(t);if(e.url.includes("youtube")&&e.query.v)return`https://www.youtube.com/embed/${e.query.v}`;if(e.url.includes("youtu.be")){const t=e.url.match(/\/([A-Za-z0-9_-]+)$/);if(t)return`https://www.youtube.com/embed/${t[1]}`}if(e.url.includes("vimeo")){const t=e.url.match(/\/(\d+)$/);if(t)return`https://player.vimeo.com/video/${t[1]}?title=0&byline=0&portrait=0`}return""}(t.getAttribute("href"));n&&(r||(r=document.createElement("iframe"),r.classList.add("video-block__iframe"),r.setAttribute("src",n),r.setAttribute("frameborder","0"),r.setAttribute("allow","accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"),r.setAttribute("allowfullscreen",""),e?.appendChild(r)))}function D(t){if(t.getAttribute("data-initialized"))return;t.setAttribute("data-initialized","true");const e=null!=t.querySelector("picture img");t.addEventListener("click",(r=>{r.preventDefault(),e&&B(t)})),e||B(t)}function z(t){if(t.getAttribute("data-initialized"))return;t.setAttribute("data-initialized","true");const e=t.querySelectorAll("[role=tab]"),r=t.querySelectorAll("[role=tabpanel]"),n=n=>{e.forEach((t=>t.setAttribute("aria-selected","false"))),r.forEach((t=>t.setAttribute("aria-hidden","true"))),n.setAttribute("aria-selected","true"),t.querySelector(`#${n.getAttribute("aria-controls")}`)?.setAttribute("aria-hidden","false")};e.forEach((t=>{t.addEventListener("click",(t=>t.currentTarget instanceof HTMLElement&&n(t.currentTarget))),t.addEventListener("keydown",(t=>(13===t.which||32===t.which)&&t.currentTarget instanceof HTMLElement&&n(t.currentTarget)))}))}const U=(t,e)=>{if(!t)return;const r=document.getElementById(t);r&&(r.setAttribute("aria-hidden",(!e).toString()),X(r,e));document.querySelectorAll(`[aria-controls="${t}"]`).forEach((t=>{t.setAttribute("aria-expanded",e.toString())}))},X=(t,e)=>{t.querySelectorAll("a, button").forEach((t=>{t.setAttribute("tabindex",e?"0":"-1")}))};var G=r(6978);class J{element;title;content;close;ok;somethingWentWrong;popup;vm;button;target;constructor(t){this.element=t,this.title=t.getAttribute("data-modal-title")??"",this.content=t.getAttribute("data-modal-content")??"",this.close=t.getAttribute("data-modal-close")??"Ok",this.ok=t.getAttribute("data-modal-ok")??"Ok",this.somethingWentWrong=t.getAttribute("data-modal-something-went-wrong")??"",this.popup=t.hasAttribute("data-modal-popup"),this.createButton()}createButton(){const{element:t}=this,e=t.parentNode,r=document.createElement("button");r.id=t.id,r.classList.add("link"),r.classList.add("link--underline"),r.innerHTML=t.innerHTML,r.type="button",r.addEventListener("click",this.handleClick),e?.insertBefore(r,t),t.remove(),this.button=r}handleClick=()=>{const{title:t,content:e,popup:r,close:s,ok:o,somethingWentWrong:i}=this;this.target=document.createElement("div"),document.body.appendChild(this.target);const c={title:t,popup:r,lang:{close:s,ok:o,somethingWentWrong:i}};this.vm=(0,n.Ef)({render:()=>(0,a.h)(G.A,{props:c,onClose:this.handleClose},{default:()=>[(0,a.h)("div",{innerHTML:document.querySelector(e)?.innerHTML}),(0,a.h)("button",{class:"button button--primary",type:"button",style:{margin:"20px 0 0"},onClick:this.handleClose},s)]})}).mount(this.target)};handleClose=()=>{this.vm?.$unmount(),this.vm?.$el.remove()}}const K="tooltip--active",Y="tooltip__wrapper",Z="tooltip--bottom",tt="tooltip--align-right",et=new Set,rt=new Set;let nt=!1;const at=t=>{t?.wrapper&&t?.trigger&&t?.content&&(t.wrapper.classList.add(K),t.trigger.setAttribute("aria-expanded","true"),t.content.setAttribute("aria-hidden","false"),t.trigger.setAttribute("aria-describedby",t.content.id),(t=>{const{wrapper:e,content:r}=t;e.classList.remove(Z,tt);const n=r.getBoundingClientRect(),a=window.innerWidth;n.top<8&&e.classList.add(Z),n.right>a-8&&e.classList.add(tt)})(t),et.add(t))},st=t=>{t?.wrapper&&t?.trigger&&t?.content&&(t.wrapper.classList.remove(K,Z,tt),t.trigger.setAttribute("aria-expanded","fal
1se"),t.content.setAttribute("aria-hidden","true"),t.trigger.removeAttribute("aria-describedby"),t.isClickActive=!1,et.delete(t))},ot=t=>{et.forEach((e=>{const r=t&&e.trigger===t;st(e),r&&e.trigger.focus()}))},it=t=>{if(!t?.wrapper)return;const e=t.wrapper.classList?.contains(K);e&&t.isClickActive?st(t):(ot(),at(t),t.isClickActive=!0)};class ct{siteTheme;constructor(t){this.siteTheme=t}init=()=>{const t=this.siteTheme.enforceThemeAvailability();this.syncState(t),this.siteTheme.isEnabled()&&document.addEventListener("change",this.handleDocumentChange)};syncState=t=>{document.querySelectorAll("[data-theme-toggle]").forEach((e=>{const r="dark"===t,n=r?"true":"false";e.checked=r,e.setAttribute("aria-checked",n);const a=e.closest(".dark-mode-toggle, .theme-toggle");if(a){a.setAttribute("data-theme-current",t);const e=a.querySelector("[data-theme-toggle-label]");if(e){const t=e.getAttribute("data-label-light")||"",n=e.getAttribute("data-label-dark")||"";e.textContent=r?n:t}}}))};handleDocumentChange=t=>{const e=t.target;if(!(e instanceof HTMLInputElement))return;if(!e.matches("[data-theme-toggle]"))return;const r=this.siteTheme.toggleTheme();this.syncState(r)}}var ut=r(3346),dt=r(8857),lt=r(7985),mt=r(6877);class ht{header;menuItems;toggleMenu;pageHeader;closeMenuButtons;menuButtonItems;search;lastScrollPos;isSearchPage;closeButtonMobile;constructor(t){this.header=t,this.toggleMenu=document.querySelector("[data-page-header-toggle]"),this.closeMenuButtons=document.querySelectorAll("[data-close-device-menu]"),this.pageHeader=document.querySelector("[data-page-header]"),this.menuItems=document.querySelectorAll("[data-menu-item]"),this.menuButtonItems=document.querySelectorAll("[data-events]"),this.search=document.querySelector("[data-search]"),this.isSearchPage=document.body?.classList.contains("searchPage")||!1,this.closeButtonMobile=document.querySelector(".mega-menu__device-close-menu"),this.lastScrollPos=0,this.toggleMegaMenu(),this.initGlobalMessage(),this.initScrollDetection(),window.addEventListener("load",this.testFreaks),this.testFreakScore(),this.closeMenuButtons.forEach((t=>this.addCloseHandler(t)))}initScrollDetection(){window.addEventListener("scroll",this.scrollHandler,{passive:!0})}scrollHandler=H()((()=>{if(!this.pageHeader)return;if(this.isSearchPage)return void this.pageHeader?.setAttribute("data-no-scroll","true");const t=window.matchMedia("(max-width: 1279px)").matches,e="true"===this.pageHeader.getAttribute("data-scrolled"),r=e&&this.pageHeader.querySelector(".page-header__wrapper"),n=window.scrollY+(e?70:0)+(r?51:0);n<=350?(this.pageHeader.removeAttribute("data-scroll-up"),this.pageHeader.removeAttribute("data-scrolled")):n>400&&(this.pageHeader.setAttribute("data-scrolled","true"),this.pageHeader.removeAttribute("data-scroll-up")),t&&(n>this.lastScrollPos?this.pageHeader.removeAttribute("data-scroll-up"):n<this.lastScrollPos&&n>=400&&this.pageHeader.setAttribute("data-scroll-up","true")),this.lastScrollPos=n}),200);toggleMegaMenu(){this.toggleMenu?.addEventListener("click",(t=>{if(!t.currentTarget)return;if(!(t.currentTarget instanceof HTMLElement))return;this.pageHeader?.toggleAttribute("data-open");const e=this.pageHeader?.hasAttribute("data-open");void 0!==e&&((0,mt.s)(this.pageHeader,this.closeButtonMobile,e),(0,dt.jW)(e),this.toggleMenu?.setAttribute("aria-expanded",e.toString()))}))}addCloseHandler(t){t.addEventListener("click",(t=>this.close(t)))}close(t){if(!t.currentTarget)return;const e=this.pageHeader?.hasAttribute("data-open");e&&(this.pageHeader?.removeAttribute("data-open"),(0,mt.s)(this.pageHeader,this.closeButtonMobile,!e),this.toggleMenu?.setAttribute("aria-expanded",(!e).toString()),(0,dt.jW)(!1))}initGlobalMessage(){if(!document.querySelector(".page-header__message--collapsable"))return;const t=document.querySelector('[data-toggle="global-message"]');t&&t.addEventListener("click",this.toggleGlobalMessage)}toggleGlobalMessage(t){const e=document.querySelector(".page-header__message"),r="page-header__message--collapsed";if(!e)return;const n=e.querySelector(".page-header__message-text"),a=t?.currentTarget;e.classList.toggle(r);const s=e.classList.contains(r),o=e.getAttribute("data-hash")||window.localStorage.getItem("global-message")||"";a&&n&&(n.setAttribute("aria-hidden",s.toString()),a.setAttribute("aria-expanded",(!s).toString()));try{s?window.localStorage.setItem("global-message",o):window.localStorage.removeItem("global-message")}catch(t){console.error(t)}}testFreaks(){if(void 0!==window){(window.testFreaks||[]).push(["load",["seller"]])}}async testFreakScore(){try{const t=await lt.A.get("https://cr.testfreaks.com/seller_reviews.json?client_id=granngarden.se"),e=await t.json();if(e){const t=e.avg_score.toFixed(1),r=document.querySelector("[data-testfreaks-count-header]");r&&(r.innerHTML=`${t}`)}}catch(t){console.error(t)}}}var pt=r(1304);O(),(()=>{const t=document.querySelector("[data-page-header]");t&&new ht(t)})(),function(t=".video-block__link"){document.querySelectorAll(t).forEach(D)}(),(t=>{if(!t)return;const e=t.querySelectorAll("[data-breadcrumb-list]");if(!e||e.length<=2)return;const r=e[0],n=e[e.length-1],a=document.createElement("li");a.className="breadcrumb__item";const s=document.createElement("button");s.type="button",s.title=t.getAttribute("data-expand-label")||"",s.innerText="...",s.addEventListener("click",(()=>{a.remove(),e.forEach((t=>t.removeAttribute("style")))})),a.append(s),window.matchMedia("(max-width: 374px)").matches?(e.forEach((t=>{t!==n&&(t.style.display="none")})),t.insertBefore(a,r)):e.length>=3&&window.matchMedia("(max-width: 1023px)").matches&&(e.forEach((t=>{t!==n&&t!==r&&(t.style.display="none")})),t.insertBefore(a,n))})(document.querySelector("[data-breadcrumb-list]")),document.querySelectorAll(".tabs").forEach(z),document.querySelectorAll("[data-modal]").forEach((t=>new J(t))),document.querySelectorAll("[aria-controls]").forEach((t=>{if(t.hasAttribute("data-aria-ignore"))return;const e=t.getAttribute("aria-controls")??"";if(t.dataset.ariaInit)return;const r=document.getElementById(e),n=null!==t.offsetParent,a="tab"===t.getAttribute("role")?"true"!==t.getAttribute("aria-selected"):"true"!==t.getAttribute("aria-expanded");r&&n&&a&&(r.ariaHidden="true",X(r,!1)),t.addEventListener("click",(n=>{if(r)if(n.preventDefault(),"tab"===t.getAttribute("role")){if("true"===t.getAttribute("aria-selected"))return;const e=t.parentElement?.querySelectorAll('[aria-selected="true"]');e?.length&&e.forEach((t=>{t.removeAttribute("aria-selected");const e=t.getAttribute("aria-controls");e&&document.getElementById(e)?.setAttribute("aria-hidden","true")})),t.setAttribute("aria-selected","true"),r.setAttribute("aria-hidden","false")}else U(e,"true"===r.getAttribute("aria-hidden"));else console.error("Invalid [aria-controls] attribute, target is not val
1id",t,r)})),t.dataset.ariaInit="true"})),(()=>{const t=document.querySelectorAll(".editorial");t.length&&(t.forEach((t=>{t.querySelectorAll("abbr[data-tooltip-title], abbr[title]").forEach((t=>{const e=(t=>{try{const e=t.getAttribute("data-tooltip-title")??t.getAttribute("title");if(!e?.trim())return null;if(t.hasAttribute("title")&&(t.setAttribute("data-tooltip-title",e),t.removeAttribute("title")),t.closest(`.${Y}`))return null;const r=t.parentNode;if(!r)return null;const n=document.createElement("span");n.className=Y;const a=document.createElement("button");a.type="button",a.className="tooltip__trigger",a.setAttribute("aria-expanded","false"),a.setAttribute("aria-label",`Mer information om: ${t.textContent??""}`),a.innerHTML='<span class="tooltip-trigger__icon" aria-hidden="true">!</span>';const s=document.createElement("span");return s.className="tooltip__content",s.setAttribute("role","tooltip"),s.setAttribute("aria-hidden","true"),s.id=`tooltip-${crypto.randomUUID().slice(0,8)}`,s.textContent=e,a.setAttribute("aria-controls",s.id),r.insertBefore(n,t),n.appendChild(t),n.appendChild(a),n.appendChild(s),{wrapper:n,trigger:a,content:s,abbr:t,isClickActive:!1,cleanup:()=>{}}}catch(t){return console.error("Failed to create tooltip structure:",t),null}})(t);e&&((t=>{const{wrapper:e,trigger:r}=t,n=[],a=(t,e,r)=>{t.addEventListener(e,r),n.push({target:t,event:e,handler:r})};a(r,"click",(e=>{const r=e;r.preventDefault(),r.stopPropagation(),it(t)})),a(r,"keydown",(e=>{const r=e;"Enter"!==r.key&&" "!==r.key||(r.preventDefault(),it(t))})),a(e,"mouseenter",(()=>{t.isClickActive||at(t)})),a(e,"mouseleave",(()=>{t.isClickActive||st(t)})),a(r,"focus",(()=>{t.isClickActive||at(t)})),a(r,"blur",(()=>{t.isClickActive||st(t)})),t.cleanup=()=>{n.forEach((({target:t,event:e,handler:r})=>{t.removeEventListener(e,r)})),n.length=0}})(e),rt.add(e))}))})),(()=>{if(nt)return;nt=!0,document.addEventListener("keydown",(t=>{if("Escape"===t.key&&et.size>0){const t=Array.from(et).pop();ot(t?.trigger)}})),document.addEventListener("click",(t=>{t.target.closest(`.${Y}`)||ot()}))})())})(),(()=>{if("undefined"==typeof window||"undefined"==typeof document)return;if(window.__siteThemeToggleInitialized)return;const t=window.siteTheme;if(!t)return;window.__siteThemeToggleInitialized=!0;new ct(t).init()})(),window._voyado?.tenantId&&(0,pt.t5)({tenantId:window._voyado.tenantId,useStaging:window._voyado.useStaging||!1}),document.querySelector("[data-quantity]")&&(async()=>{const{init:t}=await r.e(2847).then(r.bind(r,6508));t()})();const gt=document.querySelectorAll("[data-episerver-forms]");gt.length&&(async()=>{const{init:t}=await r.e(7700).then(r.bind(r,1495));t(gt)})(),Array.isArray(window.WebComponents)&&window.WebComponents.forEach((([t,e,r])=>{const a=document.getElementById(t);if(!(a instanceof HTMLElement))throw`Element with id ${t} not found`;if(!(e in j))throw console.error(`Component ${e} not found`),`Component ${e} not found`;(0,n.m1)(j[e],r).use(ut.A).mount(a,a.childElementCount>0)}))},4303:(t,e,r)=>{r.d(e,{G:()=>n,s:()=>a});
1class n extends Error{status;constructor(t,e){super(t),this.name="RequestError",this.status=e,Object.setPrototypeOf(this,n.prototype)}}class a extends n{}},2649:(t,e,r)=>{function n(t){Array.isArray(window.dataLayer)||(window.dataLayer=[]),window.dataLayer.push(t)}r.d(e,{V:()=>n})},5094:(t,e,r)=>{function n(t){"undefined"!=typeof appInsights?appInsights.trackException({exception:"string"==typeof t?new Error(t):t}):console.error(t)}r.d(e,{z:()=>n})},7985:(t,e,r)=>{r.d(e,{A:()=>d});var n=r(6663),a=r(3318),s=r.n(a),o=r(4945),i=r.n(o),c=r(4303);const u={credentials:"same-origin",cache:"no-cache"};class d{static fetch=s()("undefined"!=typeof fetch?fetch:i(),{retries:3,retryDelay:1e3,retryOn:[500,502,503,504]});static post(t,e,r){const n={"X-Requested-With":"XMLHttpRequest",Accept:"application/json"};if(window){const t=window.document.querySelector('input[name="__RequestVerificationToken"]')?.value;t&&(n.RequestVerificationToken=t)}return!e||e instanceof FormData||(n["Content-Type"]="application/json"),this.fetch(t,{...u,headers:n,body:e?e instanceof FormData?e:JSON.stringify(e):void 0,signal:r,method:"post"}).then(this.handleErrors)}static delete(t,e){return this.fetch(t,{...u,headers:{"X-Requested-With":"XMLHttpRequest",Accept:"application/json"},signal:e,method:"delete"}).then(this.handleErrors)}static get(t,e){const r=n.parseUrl(t),a={...r.query,...e?.query};return this.fetch(`${r.url}?${n.stringify(a)}`,{...u,headers:{"X-Requested-With":"XMLHttpRequest",Accept:"application/json"},signal:e?.signal,method:"get"}).then(this.handleErrors)}static async getJSON(t){if(204!==t.status)return await t.json()}static async handleErrors(t){if(!t.ok){const e=t.headers.get("Content-Type");if(500!==t.status&&e?.includes("application/json")){const e=await t.clone().json();if(e?.message)throw new c.G(e.message,t.status);if("string"==typeof e&&e.trim())throw new c.G(e,t.status)}if(e?.includes("text/plain")){const e=await t.clone().text();if(e?.trim())throw new c.G(e,t.status)}if(t.statusText)throw new c.s(t.statusText,t.status);throw Error(`${t.status.toString()} - ${await t.clone().text()}`)}return t}}},762:(t,e,r)=>{r.d(e,{Qf:()=>b,TY:()=>u,U7:()=>k,cv:()=>f});var n=r(9089),a=r(8221),s=r.n(a),o=r(5094),i=r(7985),c=r(8857);const u={namespaced:!0,state:{campaigns:{},queue:{}},getters:{getCampaigns:t=>t.campaigns,getQueue:t=>t.queue,getQueued(t){const e={...t.queue};for(const t in e)e.hasOwnProperty(t)&&e[t]!==c.an.Queued&&delete e[t];return e}},mutations:{updateCampaigns(t,e){t.campaigns={...t.campaigns,...e}},updateQueue(t,e){t.queue={...t.queue,...e}},updateQueueStatus(t,{productNumbers:e,status:r}){const n=e.reduce(((t,e)=>(t[e]=r,t)),{});t.queue={...t.queue,...n}}},actions:{fetchCampaigns(t,e){const r=b(t),n=e.reduce(((t,e)=>(r.hasOwnProperty(e)||(t[e]=c.an.Queued),t)),{});Object.keys(n).length&&v(t,n),S(t)},async fetch(t){const e=y(t),r=Object.keys(e);if(!r.length)return;A(t,{productNumbers:r,status:c.an.Fetching});const n=r.length>30;try{if(n){const e=r.reduce(((t,e,r)=>{const n=Math.floor(r/30);return t[n]=[].concat(t[n]||[],e),t}),[]).map((e=>{E(t,{chunk:e})}));await Promise.all(e)}else await E(t,{chunk:r});A(t,{productNumbers:r,status:c.an.Fetched})}catch(e){A(t,{productNumbers:r,status:c.an.Failed}),o.z(e)}},async createRequest(t,e){const r={productNumbers:e.chunk.join(",")},n=await i.A.get("/api/campaigns",{query:r}),a=await n.json();a.productDiscounts&&w(t,a.productDiscounts)}}},{read:d,commit:l,dispatch:m}=(0,n.E)("campaign"),{getters:h,mutations:p,actions:g}=u;(0,c.Fx)(h,p,g);const f=d(h.getCampaigns),b=d(h.getQueue),y=d(h.getQueued),w=l(p.updateCampaigns),v=l(p.updateQueue),A=l(p.updateQueueStatus),k=m(g.fetchCampaigns),S=s()(m(g.fetch),250),E=m(g.createRequest)},6998:(t,e,r)=>{r.d(e,{Ar:()=>C,F1:()=>w,H2:()=>y,I3:()=>n,L_:()=>v,N5:()=>l,SK:()=>N,U4:()=>S,Uk:()=>E,b2:()=>L,gm:()=>T,kM:()=>_,nM:()=>$,qY:()=>P,rk:()=>A,v:()=>k,xz:()=>F});var n,a=r(9089),s=r(7985),o=r(2649),i=r(8857),c=r(4303),u=r(3233),d=r(1304);!function(t){t[t.None=0]="None",t[t.Fetching=1]="Fetching",t[t.Fetched=2]="Fetched"}(n||(n={}));const l={namespaced:!0,state:{addingToCart:{adding:!1},items:[],summary:null,status:n.None,recommendations:void 0,listName:void 0},getters:{getAddingToCart:t=>t.addingToCart,getSummary:t=>t.summary,getItems:t=>t.items,getStatus:t=>t.status,getRecommendations:t=>t.recommendations,getListName:t=>t.listName},mutations:{setAddingToCart(t,e){t.addingToCart=e},setItems(t,e){t.items=e},setSummary(t,e){t.summary=e},setStatus(t,e){t.status=e},setRecommendations(t,e){t.recommendations=e},setListName(t,e){t.listName=e},setResponse(t,e){t.items=e.items,t.summary=e.summary,t.recommendations=e.recommendations}},actions:{async addItems(t,e){q(t,n.Fetching),I(t,e.listName),e.addingToCart&&E(t,{...t.state.addingToCart,adding:!0,error:!1});const r={items:e.items,recommendations:e.recommendations,listName:e.listName,index:e.listIndex};try{const n=await s.A.post("/api/cart/items",r);await x(t,n.clone()),"campaign-gift"===e.listName&&N(t,void 0);const a={...t.state.addingToCart,adding:!1,error:!1};e.addingToCart&&(a.items=e.items.map((t=>({productNumber:t.productNumber,variantNumber:t.variantNumber}))));const o=await n.clone().json(),i=e.items.map((t=>o.items.filter((e=>e.productNumber===t.productNumber))[0]??null)).filter((t=>null!==t)),c={eventType:"add-to-cart",cartId:o.cartId,productDetails:i.map((t=>({product:{id:`p_${t.productNumber??t.variantNumber}`,primaryProductId:t.productNumber??t.variantNumber,type:"PRIMARY",variants:t.variantNumber?[{id:`v_${t.variantNumber}`,primaryProductId:t.productNumber??t.variantNumber,type:"VARIANT"}
1]:[],priceInfo:{price:t.totalPriceWithDiscount+"",originalPrice:(t.totalPrice||0)+"",currencyCode:"SEK"},title:t.name||t.productNumber},quantity:t.quantity})))},d=u.F.getAttributionFromUrl();d&&(c.attributionToken=d,i.forEach((t=>{u.F.addAttribution(t.productNumber,d)}))),u.F.trackRetailEvent(c),await E(t,a)}catch(e){console.error(e);let r=!0;r=(c.G,e.message),E(t,{...t.state.addingToCart,adding:!1,error:r})}finally{q(t,n.Fetched)}},async fetchCart(t){q(t,n.Fetching);const e=await s.A.get("/api/cart"),r=await e.json();if("undefined"!=typeof window&&r.cartId)try{window.sessionStorage.setItem("voyadoCartRef",r.cartId)}catch{}q(t,n.Fetched),$(t,r)},async remove(t,e){try{const r=await s.A.post("/api/cart/remove",e);return await x(t,r),r}catch(t){return new Promise(((e,r)=>r(t)))}},async update(t,e){try{const r=await s.A.post("/api/cart/update",e);return await x(t,r),r}catch(t){return new Promise(((e,r)=>r(t)))}},async handleCartResponse(t,e){const r=await e.json(),n="campaign-gift"===t.state.listName;if(r.dataLayers)try{r.dataLayers.forEach((t=>{const e=JSON.parse(t),r=e.event;n&&"view_item_list"===r||o.V(e)}))}catch(t){console.error(t)}$(t,r);try{const t=r.cartId||"undefined"!=typeof window&&window.sessionStorage.getItem("voyadoCartRef")||"";r.items&&r.items.length>0?(0,d.Io)({cartRef:t,items:r.items.map((t=>({itemId:t.variantNumber||t.productNumber,quantity:t.quantity})))}):t&&(0,d.ER)({cartRef:t})}catch(t){console.error("[Voyado] Cart tracking failed",t)}}}},{commit:m,read:h,dispatch:p}=(0,a.E)("cart"),{getters:g,mutations:f,actions:b}=l;(0,i.Fx)(g,f,b);const y=h(g.getAddingToCart),w=h(g.getItems),v=h(g.getSummary),A=h(g.getStatus),k=h(g.getRecommendations),S=h(g.getListName),E=m(f.setAddingToCart),C=m(f.setItems),P=m(f.setSummary),q=m(f.setStatus),$=m(f.setResponse),N=m(f.setRecommendations),I=m(f.setListName),_=p(b.addItems),F=p(b.fetchCart),L=p(b.remove),T=p(b.update),x=p(b.handleCartResponse)},3346:(t,e,r)=>{r.d(e,{A:()=>m});var n=r(2124),a=r(762),s=r(6998),o=r(9901),i=r(9590),c=r(9635),u=r(967),d=r(7483),l=r(3870);const m=(0,n.y$)({modules:{campaign:a.TY,cart:s.N5,product:o.qM,inventory:i.pf,price:c.q9,store:u.M_,user:d.kQ,recommendations:l.Jl}})},9590:(t,e,r)=>{r.d(e,{DQ:()=>$,Qf:()=>v,hj:()=>b,n$:()=>q,pf:()=>d,wj:()=>k,xy:()=>y,yw:()=>w});var n=r(9089),a=r(8221),s=r.n(a),o=r(5094),i=r(7985),c=r(8857);const u={variants:{},products:{},queue:{}},d={namespaced:!0,state:{...u},getters:{getVariants:t=>t.variants,getProducts:t=>t.products,getAll:t=>Object.values(t.products).concat(Object.values(t.variants)),getQueue:t=>t.queue,getQueued(t){const e={...t.queue};for(const t in e)e.hasOwnProperty(t)&&e[t]!==c.an.Queued&&delete e[t];return e},getInventoryByProductNumber:t=>e=>t.products[e]},mutations:{updateProducts(t,e){t.products={...t.products,...e}},updateVariants(t,e){t.variants={...t.variants,...e}},updateQueue(t,e){t.queue={...t.queue,...e}},updateQueueStatus(t,{productNumbers:e,status:r}){const n=e.reduce(((t,e)=>(t[e]=r,t)),{});t.queue={...t.queue,...n}},reset(t){t.products=u.products,t.queue=u.queue,t.variants=u.variants}},actions:{fetchProducts(t,e){const r=v(t),n=e.reduce(((t,e)=>(r.hasOwnProperty(e)||(t[e]=c.an.Queued),t)),{});Object.keys(n).length&&C(t,n),N(t)},async fetch(t){const e=A(t),r=Object.keys(e);if(!r.length)return;P(t,{productNumbers:r,status:c.an.Fetching});const n=r.length>30;try{if(n){const e=r.reduce(((t,e,r)=>{const n=Math.floor(r/30);return t[n]=[].concat(t[n]||[],e),t}),[]).map((e=>{I(t,{chunk:e})}));await Promise.all(e)}else await I(t,{chunk:r});P(t,{productNumbers:r,status:c.an.Fetched})}catch(e){P(t,{productNumbers:r,status:c.an.Failed}),o.z(e)}},async fetchProductsWithVariants(t,e){if(!e.length)return;P(t,{productNumbers:e,status:c.an.Fetching});const r={productCodes:e.join(",")};try{const n=await i.A.get("/api/availability",{query:r}),a=await n.json();a.products&&E(t,a.products),a.variants&&S(t,a.variants),P(t,{productNumbers:e,status:c.an.Fetched})}catch(r){P(t,{productNumbers:e,status:c.an.Failed}),o.z(r)}},async createRequest(t,e){const r={productCodes:e.chunk.join(",")},n=await i.A.get("/api/availability/best",{query:r}),a=await n.json();a.products&&E(t,a.products)}}},{read:l,commit:m,dispatch:h}=(0,n.E)("inventory"),{getters:p,mutations:g,actions:f}=d;(0,c.Fx)(p,g,f);const b=l(p.getVariants),y=l(p.getProducts),w=l(p.getAll),v=l(p.getQueue),A=l(p.getQueued),k=l(p.getInventoryByProductNumber),S=m(g.updateVariants),E=m(g.updateProducts),C=m(g.updateQueue),P=m(g.updateQueueStatus),q=(m(g.reset),h(f.fetchProducts)),$=h(f.fetchProductsWithVariants),N=s()(h(f.fetch),250),I=h(f.createRequest)},9635:(t,e,r)=>{r.d(e,{Qf:()=>y,RP:()=>b,Ro:()=>E,fA:()=>S,q9:()=>d});var n=r(9089),a=r(8221),s=r.n(a),o=r(5094),i=r(7985),c=r(8857);const u={prices:[],queue:{}},d={namespaced:!0,state:{...u},getters:{getPrices:t=>t.prices,getQueue:t=>t.queue,getQueued(t){const e={...t.queue};for(const t in e)e.hasOwnProperty(t)&&e[t]!==c.an.Queued&&delete e[t];return e}},mutations:{updatePrices(t,e){t.prices=[...t.prices,...e]},updateQueue(t,e){t.queue={...t.queue,...e}},updateQueueStatus(t,{productNumbers:e,status:r}){const n=e.reduce(((t,e)=>(t[e]=r,t)),{});t.queue={...t.queue,...n}},reset(t){t.prices=u.prices,t.queue=u.queue}},actions:{fetchPrices(t,e){const r=y(t),n=e.reduce(((t,e)=>(r.hasOwnProperty(e)||(t[e]=c.an.Queued),t)),{});Object.keys(n).length&&A(t,n),C(t)},async fetchPricesWithVariants(t,e){if(e.length)try{const r={productNumbers:e.join(",")};k(t,{productNumbers:e,status:c.an.Fetching});const n=await i.A.get("/api/price/prices",{query:r}),a=await n.json();a.prices&&v(t,a.prices),k(t,{productNumbers:e,status:c.an.Fetched})}catch(r){k(t,{productNumbers:e,status:c.an.Failed}),o.z(r)}},async fetch(t){const e=w(t),r=Object.keys(e);if(!r.length)return;k(t,{productNumbers:r,status:c.an.Fetching});const n=r.length>30;try{if(n){const e=r.reduce(((t,e,r)=>{const n=Math.floor(r/30);return t[n]=[].concat(t[n]||[],e),t}),[]).map((e=>{P(t,{chunk:e})}));await Promise.all(e)}else await P(t,{chunk:r});k(t,{productNumbers:r,status:c.an.Fetched})}catch(e){k(t,{productNumbers:r,status:c.an.Failed}),o.z(e)}},async createRequest(t,e){const r={productNumbers:e.chunk.join(",")},n=await i.A.get("/api/price/bestprice",{query:r}),a=await n.json();a.prices&&v(t,a.prices)}}},{read:l,commit:m,dispatch:h}=(0,n.E)("price"),{getters:p,mutations:g,actions:f}=d;(0,c.Fx)(p,g,f);const b=l(p.getPrices),y=l(p.getQueue),w=l(p.getQueued),v=m(g.updatePrices),A=m(g.updateQueue),k=m(g.updateQueueStatus),S=(m(g.reset),h(f.fetchPrices)),E=h(f.fetchPricesWithVariants),C=s()(h(f.fetch),250),P=h(f.createRequest)},9901:(t,e,r)=>{r.d(e,{Uo:()=>p,aK:()=>b,gT:()=>f,qM:()=>i,rj:()=>g});var n=r(9089),a=r(8857),s=r(7985),o=r(2649);const i={namespaced:!0,state:{variant:null},getters:{getVariant:t=>t.variant},actions:{async trackItemView(t,e){const r={productNumber:e.productNumber,variantNumber:e.variantNumber};try{const t=await s.A.get("/api/product/view-product",{query:r}),e=await s.A.getJSON(t);if(e)try{const t=JSON.parse(e);o.V(t)}catch(t){console.error(t)}}catch(t){console.error(t)}},async trackListItemView(t,e){let r=0;e.indexOffset&&(r=e.indexOffset);const n=e.products.map(((t,e)=>({productNumber:t.productNumber,variantNumber:t.variantNumber??"",index:r+e})));if(0===n.length)return;const a={listName:e.listName,recommendations:e.recommendations,viewProductRequests:n};try{const t=await s.A.post("/api/product/view-product-list",a),e=await t.json();if(e)try{const t=JSON.parse(e);o.V(t)}catch(t){console.error(t)}}catch(t){console.error(t)}}},mutations:{setVariant(t,e){t.variant=e}}},{commit:c,read:u,dispatch:d}=(0,n.E)("product"),{getters:l,mutations:m,actions:h}=i;(0,a.Fx)(l,m,h);
1const p=u(l.getVariant),g=c(m.setVariant),f=d(h.trackItemView),b=d(h.trackListItemView)},3870:(t,e,r)=>{r.d(e,{Jl:()=>i,cd:()=>b});var n=r(9089),a=r(7985),s=r(5094),o=r(8857);const i={namespaced:!0,state:()=>({product:{}}),getters:{getProductState:t=>t.product,getProductHasFetched:t=>e=>!!t.product[e]?.fetched},mutations:{setProductIsFetching(t,e){const r=t.product[e.url]||{isFetching:!1,error:!1,response:null,fetched:!1};r.isFetching=e.isFetching,t.product[e.url]=r},setProductError(t,e){const r=t.product[e.url]||{isFetching:!1,error:!1,response:null,fetched:!1};r.fetched=!0,r.error=e.error,t.product[e.url]=r},setProductResponse(t,e){const r=t.product[e.url]||{isFetching:!1,error:!1,response:null,fetched:!1};r.fetched=!0,r.error=!1,r.response=e.response,t.product[e.url]=r}},actions:{async fetchProduct(t,e){const r=t.state.product[e];if(!r?.isFetching&&!r?.fetched){await p(t,{url:e,isFetching:!0});try{const r=await a.A.get(e),n=await a.A.getJSON(r);n?f(t,{url:e,response:n}):g(t,{url:e,error:!0})}catch(r){s.z(r),g(t,{url:e,error:!0})}finally{p(t,{url:e,isFetching:!1})}}}}},{read:c,commit:u,dispatch:d}=(0,n.E)("recommendations"),{getters:l,mutations:m,actions:h}=i;(0,o.Fx)(l,m,h);c(l.getProductState),c(l.getProductHasFetched);const p=u(m.setProductIsFetching),g=u(m.setProductError),f=u(m.setProductResponse),b=d(h.fetchProduct)},967:(t,e,r)=>{r.d(e,{J7:()=>f,M_:()=>u,l3:()=>y});var n=r(9089),a=r(8221),s=r.n(a),o=r(5094),i=r(7985),c=r(8857);const u={namespaced:!0,state:{stores:{}},getters:{getStores:t=>t.stores},mutations:{updateStores(t,e){t.stores={...t.stores,...e}}},actions:{async fetchStores(t,e){try{const r={storeIds:e?.join(",")??""},n=await i.A.get("/api/stores",{query:r}),a=await n.json();b(t,a.storeInfos)}catch(t){o.z(t)}}}},{read:d,commit:l,dispatch:m}=(0,n.E)("store"),{getters:h,mutations:p,actions:g}=u;(0,c.Fx)(h,p,g);const f=d(h.getStores),b=l(p.updateStores),y=s()(m(g.fetchStores),250)},9089:(t,e,r)=>{r.d(e,{E:()=>a});const n={root:!0};function a(t){return{commit:e=>s("commit",e,t),dispatch:e=>s("dispatch",e,t),read:e=>{const r=o(e,t);return t=>t.rootGetters?t.rootGetters[r]:t.getters[r]}}}function s(t,e,r){const a=o(e,r);return(e,r)=>e[t](a,r,n)}function o(t,e){const r=t.name||t._vuexKey;if(!r)throw new Error("Vuex handler functions must not be anonymous. Vuex needs a key by which it identifies a handler. If you define handler as class member you must decorate it with @Handler.");return e?`${e}/${r}`:r}},7483:(t,e,r)=>{r.d(e,{jA:()=>g,kQ:()=>c,mp:()=>y});var n=r(9089),a=r(8221),s=r.n(a),o=r(7985),i=r(8857);const c={namespaced:!0,state:{fetched:!1,error:!1,user:null},getters:{getUserState:t=>t},mutations:{setUser(t,e){t.fetched=!0,t.user=e},setError(t,e){t.fetched=!0,t.error=e}},actions:{async fetchUser(t){try{const e=await o.A.get("/api/user"),r=204===e.status?null:await e.json();b(t,r),f(t,!1)}catch(e){f(t,!0)}}}},{commit:u,read:d,dispatch:l}=(0,n.E)("user"),{getters:m,mutations:h,actions:p}=c;(0,i.Fx)(m,h,p);const g=d(m.getUserState),f=u(h.setError),b=u(h.setUser),y=s()(l(p.fetchUser),100)},8857:(t,e,r)=>{r.d(e,{Ay:()=>P,Fx:()=>A,Ob:()=>g,Qf:()=>f,Sl:()=>p,Zr:()=>u,an:()=>n,eM:()=>v,gR:()=>d,h8:()=>m,hH:()=>b,jW:()=>y,kp:()=>w,m9:()=>l,vQ:()=>k,yI:()=>C,z2:()=>h});var n,a=r(2193),s=r.n(a),o=r(6663),i=r(2078),c=r(2908);function u(t){return t.charAt(0).toUpperCase()+t.slice(1)}function d(t){return t?t.reduce(((t,e)=>{if(e.values.some((t=>t.selected))){const r=e.values.filter((t=>t.selected)).map((t=>encodeURIComponent(t.value))).join("|");t.push(`${e.attribute}:${r}`)}return t}),new Array).join(","):""}function l(t,e,r,n){let a=r?.[t.storeId]??c.R.NotInStock,s=r?.[e.storeId]??c.R.NotInStock;return a==c.R.FewInStock&&(a=c.R.InStock),s==c.R.FewInStock&&(s=c.R.InStock),a-s==0?t.storeName.localeCompare(e.storeName,n):s-a}!function(t){t[t.Queued=0]="Queued",t[t.Fetching=1]="Fetching",t[t.Fetched=2]="Fetched",t[t.Failed=3]="Failed"}(n||(n={}));const m=t=>t===n.Fetching||t===n.Queued;function h(t){return!s()(t)}function p(t,e){if(!t)return t;const r=o.parseUrl(t),n=[];for(const t in e){const r=e[t];n.push(`${t}=${r}`)}return`${r.url}?${n.join("&")}`}function g(t,e){if(!t)return t;let r=o.parseUrl(t).url;(e?.width||e?.height)&&(r+=`__w=${e.width||0}_h=${e.height||0}`);const n=[];for(const t in e){const r=e[t];"width"!=t&&"height"!=t&&0!=r&&n.push(`${t}=${r}`)}return`${r}?${n.join("&")}`}function f(t,e,r){return e?t.map((t=>{const n={...r};return"number"==typeof n.width&&(n.width=n.width*t),"number"==typeof n.height&&(n.height=n.height*t),g(e,n)+` ${t}x`})).join(", "):e}function b(t,e,r){return e?t.map((t=>{const n={...r};return"number"==typeof n.width&&(n.width=n.width*t),"number"==typeof n.height&&(n.height=n.height*t),p(e,n)+` ${t}x`})).join(", "):e}function y(t){const e="scroll-lock",{classList:r}=document.documentElement,n=function(){const t=document.createElement("div");t.style.visibility="hidden",t.style.overflow="scroll",document.body.appendChild(t);const e=document.createElement("div");t.appendChild(e);const r=t.offsetWidth-e.offsetWidth;return t.parentNode?.removeChild(t),r}();return t?r.add(e):r.remove(e),document.body.setAttribute("style",t?`margin-right: ${n}px;`:""),n}function w(t,e,r){return t&&t.parentElement?r&&t.parentElement.matches(r)?null:t.parentElement.matches(e)?t.parentElement:w(t.parentElement,e,r):null}async function v(t,e,r){try{await navigator.clipboard.writeText(t),"function"==typeof e&&e()}catch(t){console.error("Error in copying text: ",t),"function"==typeof r&&r()}}"undefined"!=typeof window&&(window.copyTextToClipboard=v);const A=(...t)=>t.forEach((t=>Object.entries(t).forEach((([t,e])=>e._vuexKey=t))));function k(t){return new Set(t).size}function S(t){return t*Math.PI/180}function E(t,e,r,n){if(!(t&&e&&r&&n))return null;t=S(t),r=S(r),e=S(e);const a=((n=S(n))-e)*Math.cos((t+r)/2),s=r-t;return 6371*Math.sqrt(a*a+s*s)}function C(t,e,r){const n=t.map((t=>({item:t,distance:E(e,r,t.latitude,t.longitude)})));return n.sort(((t,e)=>(t.distance??1e9)-(e.distance??1e9))),n}class P{focusTrapInstance=null;element;focusElement;constructor(t,e,r){this.element=t,this.focusElement=e,this.focusTrapInstance=(0,i.K)(this.element||null,{allowOutsideClick:!0,clickOutsideDeactivates:!0,initialFocus:()=>this.focusElement||null,...r})}activate(){this.focusTrapInstance?.activate()}deactivate(){this.focusTrapInstance?.deactivate(),this.focusTrapInstance=null}}},5052:(t,e,r)=>{r.d(e,{A:()=>i});var n=r(641);const a=["aria-hidden"],s=["xlink:href"];const o=(0,n.pM)({props:{icon:String,ariaHidden:{type:Boolean,default:!0}},computed:{url(){return`#sprite-${this.icon}`}}});
1const i=(0,r(6262).A)(o,[["render",function(t,e,r,o,i,c){return(0,n.uX)(),(0,n.CE)("svg",{"aria-hidden":t.ariaHidden},[(0,n.Lk)("use",{"xlink:href":t.url},null,8,s)],8,a)}]])},6978:(t,e,r)=>{r.d(e,{A:()=>b});var n=r(641),a=r(33),s=r(3751);const o={key:0,class:"modal__title"},i={class:"modal__title-text"},c=["title"],u=["title"],d={key:0,class:"modal__alert"},l={key:2,class:"modal__actions"};var m=r(953),h=r(5052),p=r(4324),g=r(8857);const f=(0,n.pM)({name:"ModalComponent",components:{Icon:h.A},props:{title:String,popup:Boolean,confirm:String,cancel:String,alert:Boolean,white:Boolean},mixins:[(0,p.m)()],emits:["close","confirm"],setup(t,{emit:e}){const r=(0,m.KR)(null),a=(0,m.KR)(null),s=(0,n.EW)((()=>["modal",{"modal--popup":t.popup,"modal--modal":!t.popup}])),o=t=>{"Escape"===t.key&&e("close")};return(0,n.sV)((()=>{var t,e;t=r.value,e=document.querySelector(".modal__close"),a.value=new g.Ay(t,e),window.addEventListener("keydown",o),r.value&&a.value?.activate(),(0,g.jW)(!0)})),(0,n.xo)((()=>{window.removeEventListener("keydown",o),a.value?.deactivate(),(0,g.jW)(!1)})),{modalContainer:r,focusTrapInstance:a,className:s,handleKeyDown:o}}});const b=(0,r(6262).A)(f,[["render",function(t,e,r,m,h,p){const g=(0,n.g2)("Icon");return(0,n.uX)(),(0,n.CE)("section",{class:(0,a.C4)(t.className),onClick:e[4]||(e[4]=(0,s.D$)((e=>t.$emit("close")),["self"])),tabindex:"-1"},[(0,n.Lk)("div",{class:(0,a.C4)(["modal__wrapper",{"modal__wrapper--white":t.white}]),ref:"modalContainer"},[t.popup?(0,n.Q3)("",!0):((0,n.uX)(),(0,n.CE)("header",o,[(0,n.Lk)("span",i,[(0,n.bF)(g,{icon:"check-circle",width:"32",height:"32"}),(0,n.eW)(" "+(0,a.v_)(t.title),1)]),(0,n.Lk)("button",{class:"modal__close",type:"button",title:t.translate("close"),onClick:e[0]||(e[0]=(0,s.D$)((e=>t.$emit("close")),["prevent"]))},[(0,n.bF)(g,{icon:"cross-small-black",width:"20",height:"20"})],8,c)])),t.popup?((0,n.uX)(),(0,n.CE)(n.FK,{key:1},[(0,n.Lk)("button",{class:"modal__close",type:"button",title:t.translate("close"),onClick:e[1]||(e[1]=(0,s.D$)((e=>t.$emit("close")),["prevent"]))},[(0,n.bF)(g,{icon:"cross-small-black",width:"20",height:"20"})],8,u),(0,n.Lk)("h1",{class:(0,a.C4)(["modal__title",{"modal__title--alert":t.alert}])},[t.alert?((0,n.uX)(),(0,n.CE)("span",d,[(0,n.bF)(g,{icon:"warning",width:"32",height:"32"})])):(0,n.Q3)("",!0),(0,n.Lk)("span",null,(0,a.v_)(t.title),1)],2)],64)):(0,n.Q3)("",!0),(0,n.RG)(t.$slots,"default"),t.confirm||t.cancel?((0,n.uX)(),(0,n.CE)("div",l,[t.confirm?((0,n.uX)(),(0,n.CE)("button",{key:0,onClick:e[2]||(e[2]=(0,s.D$)((e=>t.$emit("confirm")),["prevent"])),type:"button",class:"modal__confirm button button--confirm button--small"},(0,a.v_)(t.confirm),1)):(0,n.Q3)("",!0),t.cancel?((0,n.uX)(),(0,n.CE)("button",{key:1,onClick:e[3]||(e[3]=(0,s.D$)((e=>t.$emit("close")),["prevent"])),type:"button",class:"modal__cancel link"},(0,a.v_)(t.cancel),1)):(0,n.Q3)("",!0)])):(0,n.Q3)("",!0)],2)],2)}]])}},t=>{var e=e=>t(t.s=e);t.O(0,[953,8750,4697,2376],(()=>(e(9002),e(7702))));t.O()}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.