

Rigtigt meget at holde af. For mindre.
Med Apple Watch SE kan du bruge smarte sundheds- og sikkerhedsfunktioner, få motiverende målinger af din fysiske aktivitet og holde forbindelsen på nemme måder. Og nu kan du også vælge CO₂‑neutrale kombinationer af urkasser og remme. Der er rigtigt meget at holde af. For mindre.
Køb nu
-
Med mobilforbindelse kan du ringe og sende beskeder, også når din iPhone ikke er i nærheden.◊

-
Svømmesikkert, så du kan registrere baner i svømmehallen eller kortlægge din rute i åbent vand.◊Se ansvarsfraskrivelser

-
Hold dig aktiv med mange forskellige typer træning og motiverende målinger.

-
Få indsigt i dit mentale helbred ved at registrere, hvordan du har det lige nu, og følge dit humør fra dag til dag.

-
Kan registrere alvorlige bilulykker og ringe til alarmcentralen.◊Se ansvarsfraskrivelser

-
Bliv klogere på dit hjerte slag for slag. Og få besked, hvis en usædvanligt høj eller lav puls registreres.

-
Kom sovende til interessant viden ved at registrere din søvn med Søvn‑appen.

-
Opdaterede apps i watchOS 10 giver dig et hurtigt overblik over flere oplysninger.

-
Opdaterede apps i watchOS 10 giver dig et hurtigt overblik over flere oplysninger.

-

Det første Apple-produkt med CO₂‑neutrale kombinationer af urkasse og rem.
Læs mere på apple.com/dk/2030

Sammenlign
Hvilket Apple Watch passer til dig?
Apple Watch SE (2. generation)
Apple Watch Series 9
Apple Watch Ultra 2
Vælg modeller for at sammenligne.
Apple Watch SE (2. generation)
Apple Watch Series 9
Apple Watch Ultra 2
Apple Watch Series 8
Apple Watch Ultra
Apple Watch SE (1. generation)
Apple Watch Series 7
Apple Watch Series 6
Apple Watch Series 5
Apple Watch Series 4
Apple Watch Series 3
Apple Watch Series 2
Apple Watch Series 1
Vælg modeller for at sammenligne.
Vælg en modelApple Watch SE (2. generation)Apple Watch Series 9Apple Watch Ultra 2Apple Watch Series 8Apple Watch UltraApple Watch SE (1. generation)Apple Watch Series 7Apple Watch Series 6Apple Watch Series 5Apple Watch Series 4Apple Watch Series 3Apple Watch Series 2Apple Watch Series 1
Vælg en modelApple Watch SE (2. generation)Apple Watch Series 9Apple Watch Ultra 2Apple Watch Series 8Apple Watch Ultra Apple Watch SE (1. generation)Apple Watch Series 7Apple Watch Series 6Apple Watch Series 5Apple Watch Series 4Apple Watch Series 3Apple Watch Series 2Apple Watch Series 1
Vælg en modelApple Watch SE (2. generation)Apple Watch Series 9Apple Watch Ultra 2Apple Watch Series 8Apple Watch UltraApple Watch SE (1. generation)Apple Watch Series 7Apple Watch Series 6Apple Watch Series 5Apple Watch Series 4Apple Watch Series 3Apple Watch Series 2Apple Watch Series 1
Billeder
Kategori
GPS
GPS
—Ikke relevant
GPS
—Ikke relevant
GPS
GPS
GPS
GPS
GPS
GPS
GPS
—Ikke relevant
—Ikke relevant
GPS + Cellular
GPS + Cellular
GPS + Cellular
GPS + Cellular
GPS + Cellular
GPS + Cellular
GPS + Cellular
GPS + Cellular
GPS + Cellular
GPS + Cellular
GPS + Cellular
—Ikke relevant
—Ikke relevant
—Ikke relevant
Finish
—
Ikke relevant
—
Ikke relevant
Titanium
—
Ikke relevant
Titanium
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
Aluminium
Aluminium
Aluminium
—
Ikke relevant
Aluminium
—
Ikke relevant
Aluminium
Aluminium
Aluminium
Aluminium
Aluminium
Aluminium
Aluminium
Aluminium
Rustfrit stål
—
Ikke relevant
Rustfrit stål
—
Ikke relevant
Rustfrit stål
—
Ikke relevant
—
Ikke relevant
Rustfrit stål
Rustfrit stål
Rustfrit stål
Rustfrit stål
—
Ikke relevant
Rustfrit stål
—
Ikke relevant
Køb
Køb nu
Køb nu
Køb nu
Køb nu
Køb nu
Køb nu
Køb nu
Køb nu
Udgået
Udgået
Udgået
—
Ikke relevant
—
Ikke relevant
Overblik
Urkasse på 44 mm eller 40 mm
Urkasse på 45 mm eller 41 mm
Urkasse på 49 mm
Urkasse på 45 mm eller 41 mm
Urkasse på 49 mm
Urkasse på 44 mm eller 40 mm
Urkasse på 45 mm eller 41 mm
Urkasse på 44 mm eller 40 mm
Urkasse på 44 mm eller 40 mm
Urkasse på 44 mm eller 40 mm
Urkasse på 42 mm eller 38 mm
Urkasse på 42 mm eller 38 mm
Urkasse på 42 mm eller 38 mm
CO₂-neutrale kombinationer
Fås i CO₂-neutrale kombinationer
Fås i CO₂-neutrale kombinationer
Fås i CO₂-neutrale kombinationer
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
Skærm
Retina-skærm
Op til 1000 nits
Altid aktiv-Retina-skærm
Op til 2000 nits
Altid aktiv-Retina-skærm
Op til 3000 nits
Altid aktiv-Retina-skærm
Op til 1000 nits
Altid aktiv-Retina-skærm
Op til 2000 nits
Retina-skærm
Op til 1000 nits
Altid aktiv-Retina-skærm
Op til 1000 nits
Altid aktiv-Retina-skærm
Op til 1000 nits
Altid aktiv-Retina-skærm
Op til 1000 nits
Retina-skærm
Op til 1000 nits
Retina-skærm
Op til 1000 nits
Retina-skærm
Op til 1000 nits
Retina-skærm
Op til 450 nits
Chip
S8 SiP
—
Ikke relevant
Find iPhone
S9 SiP
Håndbevægelsen dobbelttryk◊ Se ansvarsfraskrivelser
Præcis søgning til iPhone◊ Se ansvarsfraskrivelser
S9 SiP
Håndbevægelsen dobbelttryk◊ Se ansvarsfraskrivelser
Præcis søgning til iPhone◊ Se ansvarsfraskrivelser
S8 SiP
—
Ikke relevant
Find iPhone
S8 SiP
—
Ikke relevant
Find iPhone
S5 SiP
—
Ikke relevant
Find iPhone
S7 SiP
—
Ikke relevant
Find iPhone
S6 SiP
—
Ikke relevant
Find iPhone
S5 SiP
—
Ikke relevant
Find iPhone
S4 SiP
—
Ikke relevant
Find iPhone
S3 SiP
—
Ikke relevant
Find iPhone
S2 SiP
—
Ikke relevant
Ping iPhone
S1P
—
Ikke relevant
Ping iPhone
Iltniveau i blodet
—Ikke relevant
—Ikke relevant
Notifikationer om
høj og lav puls
Notifikationer om uregelmæssig hjerterytme◊ Se ansvarsfraskrivelser
Notifikationer om lav kredsløbskondition
Iltniveau i blodet-app◊ Se ansvarsfraskrivelser
EKG-app◊ Se ansvarsfraskrivelser
Notifikationer om
høj og lav puls
Notifikationer om uregelmæssig hjerterytme◊ Se ansvarsfraskrivelser
Notifikationer om lav kredsløbskondition
Iltniveau i blodet-app◊ Se ansvarsfraskrivelser
EKG-app◊ Se ansvarsfraskrivelser
Notifikationer om
høj og lav puls
Notifikationer om uregelmæssig hjerterytme◊ Se ansvarsfraskrivelser
Notifikationer om lav kredsløbskondition
Iltniveau i blodet-app◊ Se ansvarsfraskrivelser
EKG-app◊ Se ansvarsfraskrivelser
Notifikationer om
høj og lav puls
Notifikationer om uregelmæssig hjerterytme◊ Se ansvarsfraskrivelser
Notifikationer om lav kredsløbskondition
Iltniveau i blodet-app◊ Se ansvarsfraskrivelser
EKG-app◊ Se ansvarsfraskrivelser
Notifikationer om
høj og lav puls
Notifikationer om uregelmæssig hjerterytme◊ Se ansvarsfraskrivelser
Notifikationer om lav kredsløbskondition
—Ikke relevant
—Ikke relevant
Notifikationer om
høj og lav puls
Notifikationer om uregelmæssig hjerterytme◊ Se ansvarsfraskrivelser
Notifikationer om lav kredsløbskondition
Iltniveau i blodet-app◊ Se ansvarsfraskrivelser
EKG-app◊ Se ansvarsfraskrivelser
Notifikationer om
høj og lav puls
Notifikationer om uregelmæssig hjerterytme◊ Se ansvarsfraskrivelser
Notifikationer om lav kredsløbskondition
Iltniveau i blodet-app◊ Se ansvarsfraskrivelser
EKG-app◊ Se ansvarsfraskrivelser
Notifikationer om
høj og lav puls
Notifikationer om uregelmæssig hjerterytme◊ Se ansvarsfraskrivelser
Notifikationer om lav kredsløbskondition
—Ikke relevant
EKG-app◊ Se ansvarsfraskrivelser
Notifikationer om
høj og lav puls
Notifikationer om uregelmæssig hjerterytme◊ Se ansvarsfraskrivelser
Notifikationer om lav kredsløbskondition
—Ikke relevant
EKG-app◊ Se ansvarsfraskrivelser
Notifikationer om
høj og lav puls
Notifikationer om uregelmæssig hjerterytme◊ Se ansvarsfraskrivelser
Notifikationer om lav kredsløbskondition
—Ikke relevant
—Ikke relevant
Notifikationer om
høj og lav puls
Notifikationer om uregelmæssig hjerterytme◊ Se ansvarsfraskrivelser
Notifikationer om lav kredsløbskondition
—Ikke relevant
—Ikke relevant
Notifikationer om
høj og lav puls
Notifikationer om uregelmæssig hjerterytme◊ Se ansvarsfraskrivelser
—Ikke relevant
—Ikke relevant
—Ikke relevant
Notifikationer om
høj og lav puls
Notifikationer om uregelmæssig hjerterytme◊ Se ansvarsfraskrivelser
—Ikke relevant
Temperaturmålinger
—Ikke relevant
Min cyklus◊ Se ansvarsfraskrivelser
Temperaturmålinger◊ Se ansvarsfraskrivelser
Min cyklus med estimeret tidspunkt for ægløsning◊ Se ansvarsfraskrivelser
Temperaturmålinger◊ Se ansvarsfraskrivelser
Min cyklus med estimeret tidspunkt for ægløsning◊ Se ansvarsfraskrivelser
Temperaturmålinger◊ Se ansvarsfraskrivelser
Min cyklus med estimeret tidspunkt for ægløsning◊ Se ansvarsfraskrivelser
Temperaturmålinger◊ Se ansvarsfraskrivelser
Min cyklus med estimeret tidspunkt for ægløsning◊ Se ansvarsfraskrivelser
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
—
Ikke relevant
Nødopkald SOS
Nødopkald SOS◊ Se ansvarsfraskrivelser
Internationalt nødopkald◊ Se ansvarsfraskrivelser
Faldregistrering og Registrering af ulykke◊ Se ansvarsfraskrivelser
—Ikke relevant
Nødopkald SOS◊ Se ansvarsfraskrivelser
Internationalt nødopkald◊ Se ansvarsfraskrivelser
Faldregistrering og Registrering af ulykke◊ Se ansvarsfraskrivelser
—Ikke relevant
Nødopkald SOS◊ Se ansvarsfraskrivelser
Internationalt nødopkald◊ Se ansvarsfraskrivelser
Faldregistrering og Registrering af ulykke◊ Se ansvarsfraskrivelser
Sirene
Nødopkald SOS◊ Se ansvarsfraskrivelser
Internationalt nødopkald◊ Se ansvarsfraskrivelser
Faldregistrering og Registrering af ulykke◊ Se ansvarsfraskrivelser
—Ikke relevant
Nødopkald SOS◊ Se ansvarsfraskrivelser
Internationalt nødopkald◊ Se ansvarsfraskrivelser
Faldregistrering og Registrering af ulykke◊ Se ansvarsfraskrivelser
Sirene
Nødopkald SOS◊ Se ansvarsfraskrivelser
Internationalt nødopkald◊ Se ansvarsfraskrivelser
Faldregistrering
—Ikke relevant
Nødopkald SOS◊ Se ansvarsfraskrivelser
Internationalt nødopkald◊ Se ansvarsfraskrivelser
Faldregistrering
—Ikke relevant
Nødopkald SOS◊ Se ansvarsfraskrivelser
Internationalt nødopkald◊ Se ansvarsfraskrivelser
Faldregistrering
—Ikke relevant
Nødopkald SOS◊ Se ansvarsfraskrivelser
Internationalt nødopkald◊ Se ansvarsfraskrivelser
Faldregistrering
—Ikke relevant
Nødopkald SOS◊ Se ansvarsfraskrivelser
Internationalt nødopkald◊ Se ansvarsfraskrivelser
Faldregistrering
—Ikke relevant
Nødopkald SOS◊ Se ansvarsfraskrivelser
—Ikke relevant
—Ikke relevant
—Ikke relevant
—
Ikke relevant
—
Ikke relevant
Vandafvisende
50 m
Vandafvisende◊ Se ansvarsfraskrivelser
Svømmesikkert
—Ikke relevant
—Ikke relevant
50 m
Vandafvisende◊ Se ansvarsfraskrivelser
Svømmesikkert
—Ikke relevant
—Ikke relevant
100 m
Vandafvisende◊ Se ansvarsfraskrivelser
Svømmesikkert
Vandsport i højt tempo
Fritidsdykning ned til 40 m
50 m
Vandafvisende◊ Se ansvarsfraskrivelser
Svømmesikkert
—Ikke relevant
—Ikke relevant
100 m
Vandafvisende◊ Se ansvarsfraskrivelser
Svømmesikkert
Vandsport i højt tempo
Fritidsdykning ned til 40 m
50 m
Vandafvisende◊ Se ansvarsfraskrivelser
Svømmesikkert
—Ikke relevant
—Ikke relevant
50 m
Vandafvisende◊ Se ansvarsfraskrivelser
Svømmesikkert
—Ikke relevant
—Ikke relevant
50 m
Vandafvisende◊ Se ansvarsfraskrivelser
Svømmesikkert
—Ikke relevant
—Ikke relevant
50 m
Vandafvisende◊ Se ansvarsfraskrivelser
Svømmesikkert
—Ikke relevant
—Ikke relevant
50 m
Vandafvisende◊ Se ansvarsfraskrivelser
Svømmesikkert
—Ikke relevant
—Ikke relevant
50 m
Vandafvisende◊ Se ansvarsfraskrivelser
Svømmesikkert
—Ikke relevant
—Ikke relevant
50 m
Vandafvisende◊ Se ansvarsfraskrivelser
Svømmesikkert
—Ikke relevant
—Ikke relevant
—Ikke relevant
Stænkafvisende◊ Se ansvarsfraskrivelser
—Ikke relevant
—Ikke relevant
—Ikke relevant
Mulighed for mobilforbindelse
GPS
Mulighed for mobilforbindelse◊ Se ansvarsfraskrivelser
GPS
Mulighed for mobilforbindelse◊ Se ansvarsfraskrivelser
Præcisions-GPS med dobbeltfrekvens
Mobilforbindelse◊ Se ansvarsfraskrivelser
GPS
Mulighed for mobilforbindelse◊ Se ansvarsfraskrivelser
Præcisions-GPS med dobbeltfrekvens
Mobilforbindelse◊ Se ansvarsfraskrivelser
GPS
Mulighed for mobilforbindelse◊ Se ansvarsfraskrivelser
GPS
Mulighed for mobilforbindelse◊ Se ansvarsfraskrivelser
GPS
Mulighed for mobilforbindelse◊ Se ansvarsfraskrivelser
GPS
Mulighed for mobilforbindelse◊ Se ansvarsfraskrivelser
GPS
Mulighed for mobilforbindelse◊ Se ansvarsfraskrivelser
GPS
—Ikke relevant
GPS
—Ikke relevant
—
Ikke relevant
Batteriet
Op til 18 timer◊ Se ansvarsfraskrivelser
Energibesparende funktion
—Ikke relevant
Op til 18 timer◊ Se ansvarsfraskrivelser
Energibesparende funktion, op til 36 timer
Hurtig opladning◊ Se ansvarsfraskrivelser
Op til 36 timer◊ Se ansvarsfraskrivelser
Energibesparende funktion, op til 72 timer
Hurtig opladning◊ Se ansvarsfraskrivelser
Op til 18 timer◊ Se ansvarsfraskrivelser
Energibesparende funktion, op til 36 timer
Hurtig opladning◊ Se ansvarsfraskrivelser
Op til 36 timer◊ Se ansvarsfraskrivelser
Energibesparende funktion, op til 60 timer
Hurtig opladning◊ Se ansvarsfraskrivelser
Op til 18 timer◊ Se ansvarsfraskrivelser
Energibesparende funktion
—Ikke relevant
Op til 18 timer◊ Se ansvarsfraskrivelser
Energibesparende funktion
Hurtig opladning◊ Se ansvarsfraskrivelser
Op til 18 timer◊ Se ansvarsfraskrivelser
Energibesparende funktion
—Ikke relevant
Op til 18 timer◊ Se ansvarsfraskrivelser
Energibesparende funktion
—Ikke relevant
Op til 18 timer◊ Se ansvarsfraskrivelser
Energibesparende funktion
—Ikke relevant
Op til 18 timer◊ Se ansvarsfraskrivelser
—Ikke relevant
—Ikke relevant
Op til 18 timer◊ Se ansvarsfraskrivelser
—Ikke relevant
—Ikke relevant
Op til 18 timer◊ Se ansvarsfraskrivelser
—Ikke relevant
—Ikke relevant
Remme
Ny rem. Nyt look.
De udskiftelige remme fås i mange forskellige design, materialer og farver. Så det er nemt at finde den rigtige stil til den rigtige anledning.
Køb remme

AppleCare+
Support fra eksperter og udvidet dækning.
-

Apple-certificeret service
-

Først i køen til Apples eksperter 24/7
-

Dækning af skadehændelser som følge af uheld
Læs mere om AppleCare+ til Apple Watch

◊ Ansvarsfraskrivelser
-
Mobilnetværk og trådløs teknologi: Mobilforbindelse kræver mobildataabonnement. Kontakt din udbyder, hvis du vil vide mere. Forbindelsen kan variere afhængigt af de tilgængelige netværk. Se listen med mobiludbydere og enheder på apple.com/watch/cellular. Få yderligere hjælp til indstilling på support.apple.com/da-dk/HT207578.
-
Vand- og støvafvisningsgrad: Apple Watch SE og Apple Watch Series 9 er klassificeret som vandafvisende ned til 50 meter i henhold til ISO-standard 22810:2010. Det betyder, at de kan bruges til aktiviteter i vandoverfladen, f.eks. svømning i en pool eller i havet. Apple Watch SE og Apple Watch Series 9 bør dog ikke bruges til aktiviteter som dykning, vandski eller andet, der involverer høj hastighed igennem vand eller nedsænkning i dybere vand. Apple Watch Ultra 2 er klassificeret som vandafvisende ned til 100 meter i henhold til ISO-standard 22810 og kan bruges til vandsport ved høj hastighed og fritidsdykning (sammen med en kompatibel tredjepartsapp fra App Store) ned til 40 m. Bør ikke bruges til dykning på mere end 40 meters dybde. Vandafvisningsgraden er ikke permanent og kan aftage over tid. Læs mere på support.apple.com/da-dk/HT205000. Apple Watch Series 9 og Apple Watch Ultra er også klassificeret som støvafvisende (IP6X).
-
Nødopkald SOS: Nødopkald SOS kræver mobilforbindelse eller Wi‑Fi-opkald med en internetforbindelse fra dit Apple Watch eller din iPhone i nærheden.
-
Håndbevægelse: Kommer sidst i 2023. Kræver Apple Watch Series 9 eller Ultra 2.
-
Præcis søgning til iPhone: Kræver iPhone og Apple Watch med andengenerations Ultra Wideband-chip.
-
Iltniveau i blodet: Appen Iltniveau i blodet bør kun bruges i forbindelse med almindelig velvære og er ikke beregnet til medicinsk brug.
-
EKG: EKG-appen er tilgængelig på Apple Watch Series 4 og nyere (eksklusive Apple Watch SE) og kan generere et EKG svarende til et enkeltafledningselektrokardiogram. Beregnet til at blive brugt af personer, der er fyldt 22 år
-
Notifikation om uregelmæssig hjerterytme: Notifikationer om uregelmæssig hjerterytme kræver den nyeste version af watchOS og iOS. Funktionen er ikke beregnet til at blive brugt af personer, der er under 22 år, eller som tidligere er blevet diagnosticeret med atrieflimren.
-
Temperaturmålinger: Funktionen til temperaturmålinger er ikke beregnet til medicinsk brug.
-
Min cyklus: Min cyklus-appen bør ikke bruges som præventionsmiddel eller til at diagnosticere en sygdom.
-
Internationale nødopkald: Kræver Apple Watch Series 7, SE, Ultra eller nyere. Se en liste over lande og områder, som understøtter funktionen, på apple.com/dk/watchos/feature‑availability.
-
Strøm og batteri: Batteritiden afhænger af brug og konfiguration. Læs mere på apple.com/dk/batteries.
-
Hurtig opladning: Hurtig opladning er kompatibel med Apple Watch Series 7 eller nyere, inklusive alle Ultra-modeller, men ikke med nogen af Apple Watch SE-modellerne.
-
(PRODUCT)RED: En del af overskuddet fra salget af (PRODUCT)RED går til Den Globale Fond for at bekæmpe aids og mindske påvirkningen af COVID‑19. Få mere at vide på apple.com/product-red.
-
Remme: Udbuddet af remme kan variere.
-
Kompatibilitet: Apple Watch kræver iPhone XS eller nyere med den nyeste version af iOS.
-
Tilgængelige funktioner: Funktionerne kan blive ændret. Visse funktioner, apps og tjenester er ikke tilgængelige på alle sprog eller i alle områder. Se en komplet liste på apple.com/dk/watchos/feature‑availability.
"use strict";const reorderDOM={selectorEls:null,headerEl:null,capturedEls:null,capturedElsQuery:null,clonedEls:[],cOrder:null,cMax:null,useStatic:null,selectorElsQuery:null,staticEl:null,staticElQuery:null,addListeners(){window.addEventListener("channel:reorder-dom",e=>{if(this.useStatic=e.detail.useStatic,this.cOrder=e.detail.order,this.cMax=e.detail.max,this.updateElements(),void 0!==e.detail.selectorIndex){document.querySelectorAll(this.selectorElsQuery).item(e.detail.selectorIndex).focus()}})},updateElements(){!this.useStatic&&this.updateSelectors(),!this.useStatic&&this.updateHeadersAX(),!this.useStatic&&this.updateRows(),this.useStatic&&this.updateStatic()},arrayFromNodeList(e){const t=[];return e.forEach(e=>{t.push(e)}),t},updateStatic(){this.clonedEls.forEach((e,t)=>{const i=this.capturedEls[t],r=e.cloneNode(!0),n=r.querySelector("[role=rowheader]"),s=r.querySelector("[id=hidden-columnheader]");let o=[];this.cOrder.forEach((e,t)=>{const i=`[index="${e}"]`,n=r.querySelector(i).parentElement;o.push(n)}),o.reverse().forEach((e,t)=>{e.setAttribute("added",!0),r.prepend(e)});for(let e=0;e ';document.querySelectorAll(this.selectorElsQuery).forEach((t,i)=>{const r=t.querySelector("[selected=true]").innerText.trim();"flex"===t.parentElement.parentElement.style.display&&(e+=`
${r}
`)}),this.headerEl.innerHTML=e},updateSelectors(){document.querySelectorAll(this.selectorElsQuery).forEach((e,t)=>{e.replaceWith(this.selectorEls[t])}),this.cOrder.forEach((e,t)=>{const i=this.selectorEls[t];let r=0;for(let t=0;t{const i=this.capturedEls[t],r=e.cloneNode(!0),n=r.querySelector("[role=rowheader]"),s=[];this.cOrder.forEach(e=>{const t=`[index="${e}"]`,i=r.querySelector(t).parentElement;s.push(i)}),s.reverse().forEach(e=>{r.prepend(e)});for(let e=0;e{const i=e[t];"function"!=typeof i.addEventListener?i.addListener(()=>{i.matches&&this.viewportObserve(t)}):i.addEventListener("change",()=>{i.matches&&this.viewportObserve(t)}),i.matches&&this.viewportObserve(t)})},viewportObserve:function(e){this.nState=e,this.cState!==this.nState&&(this.cState=this.nState,this.dispatch(this.cState))},dispatch:function(e){const t=new CustomEvent("channel:viewport-change",{detail:e});window.dispatchEvent(t)}},orientationManager={orienation:null,init:function(){window.matchMedia("(orientation: portrait)").addEventListener("change",e=>{e.matches?this.orienation="portrait":this.orienation="landscape",this.dispatch(this.orienation)})},dispatch:function(e){const t=new CustomEvent("channel:orientation-change",{detail:e});window.dispatchEvent(t)}},selectorManager={init:function(e,t){const i=document.querySelectorAll(e);i.forEach((e,t)=>{e.addEventListener("change",()=>{const r=e.selectedIndex,n=e.value,s=Number(e.options[r].getAttribute("value"));this.dispatch({elIndex:t,selectedIndex:s,value:n,selectorEls:i}),e.focus()})})},dispatch:function(e){const t=new CustomEvent("channel:pre-user-select",{detail:e});window.dispatchEvent(t)}},buyButtonManager={buyButtonQuery:null,init:function(e){this.buyButtonQuery=e,this.addListeners(),this.attachButtonListeners()},addListeners:function(){window.addEventListener("channel:reorder-dom",()=>{this.attachButtonListeners()})},attachButtonListeners:function(){document.querySelectorAll(this.buyButtonQuery).forEach(e=>{e.addEventListener("click",t=>{const i=0===t.screenX&&0===t.screenY?"Keyboard Interaction":"Mouse Click";this.dispatch({productName:e.id,eventSource:i})})})},dispatch:function(e){const t=new CustomEvent("channel:buy-button-click",{detail:e});window.dispatchEvent(t)}},dataManager={order:null,viewportKey:null,viewportOrder:null,viewportMax:null,init:function(e,t){this.order=e,this.useStatic=t,this.addListeners()},viewportChange(e){this.viewportKey=e,this.viewportOrder=this.order[this.viewportKey],this.viewportMax=this.order.max[this.viewportKey],this.dispatch({order:this.viewportOrder,max:this.viewportMax,useStatic:this.useStatic})},blurSelects(e){document.querySelectorAll(e).forEach(e=>{e.blur()})},flattenOrders(){this.viewportOrder=this.order[this.viewportKey],this.viewportMax=this.order.max[this.viewportKey],["small","medium","large"].forEach(e=>{this.order[e]=this.viewportOrder})},getLineupInfo(e,t){const i={};return e.forEach((e,r)=>{i[r]={columnIndex:r,deviceName:e.options[e.selectedIndex].text,hasChanged:r===t}}),i},userSelect(e){const{elIndex:t,selectedIndex:i}=e,r=this.viewportOrder[t],n=this.viewportOrder.find(e=>e===i),s=this.viewportOrder.indexOf(n);void 0!==n?(this.viewportOrder[s]=r,this.viewportOrder[t]=n):this.viewportOrder[t]=i,this.flattenOrders(),this.dispatch({order:this.viewportOrder,max:this.viewportMax,useStatic:this.useStatic,selectorIndex:t}),e.deviceLineup=this.getLineupInfo(e.selectorEls,t),delete e.selectorEls;const o=Object.keys(e.deviceLineup).slice(0,this.viewportMax).reduce((t,i)=>(t[i]=e.deviceLineup[i],t),{});this.dispatchPostUserSelect({deviceLineup:o})},addListeners:function(){window.addEventListener("channel:pre-user-select",e=>{this.userSelect(e.detail)}),window.addEventListener("channel:user-refresh",e=>{this.dispatch({order:this.viewportOrder,max:this.viewportMax,useStatic:this.useStatic})}),window.addEventListener("channel:viewport-change",e=>{this.viewportChange(e.detail),this.blurSelects(this.selectorElsQuery)}),window.addEventListener("change:orientation-change",()=>{this.blurSelects(this.selectorElsQuery)})},dispatch:function(e){const t=new CustomEvent("channel:reorder-dom",{detail:e});window.dispatchEvent(t)},dispatchPostUserSelect:function(e){const t=new CustomEvent("channel:user-select",{detail:e});window.dispatchEvent(t)}},channelCompare={inited:!1,init:function(e=null){if(this.inited)return;let t;if(this.isDev=window.location.host.indexOf("127.0.0.1")>-1,e)t=e;else if(!e){const e=document.querySelector("[data-channel-html-compare]");if(!e)return void console.warn("channelCompare: element[data-channel-html-compare not found]");try{const i=e.getAttribute("data-channel-html-compare");t=JSON.parse(i)}catch(e){return void console.warn("channelCompare: error parsing JSON",e)}}if(t.isConfigurableCompare){let e={large:[],medium:[],small:[]},i=[];const r=document.querySelector("[data-compare-lineup]");if(r)try{const e=r.getAttribute("data-compare-lineup"),t=JSON.parse(null!==e&&void 0!==e?e:"{}");t["apple-compare"]&&(i=t["apple-compare"])}catch(e){return void console.warn("channelCompare: error parsing JSON",e)}const n=new URL(window.location.toLocaleString()).searchParams;n.get("apple-compare")&&(i=n.get("apple-compare").split(",")),Object.keys(e).forEach(t=>{var r;e[t]=[...new Set(null!==(r=null===i||void 0===i?void 0:i.map(e=>Number(e)-1))&&void 0!==r?r:[])].filter(e=>Number(e)>=0)}),t.order=this.orderOverwrite(t.order,e)}const i=t.order,r=t.headerEl,n=t.selectorEls,s=t.swapEls,o=t.staticEl,a=t.useStatic;reorderDOM.init(s,n,r,o,a),!a&&selectorManager.init(n),buyButtonManager.init(".compare-button"),dataManager.init(i,a),viewportManager.init(),orientationManager.init(),this.inited=!0},orderOverwrite:function(e,t){const i=Object.assign({},e);return Object.keys(t).forEach(e=>{const r=i[e].filter(i=>!t[e].includes(i)),n=[...t[e],...r].slice(0,5);i[e]=n}),i}};window.addEventListener("pageshow",e=>{const{persisted:t}=e;if(t)window.addEventListener("scroll",()=>{const e=new CustomEvent("channel:user-refresh");window.dispatchEvent(e)});else{channelCompare.init(),document.querySelector(".channel-compare").classList.remove("channel-compare--hidden")}});