OOKNET                             [ /  search the index  ]  
──────────────────────────────────────────────────────────────────────────────────────
══════════════════════════════════════════════════════════════════════════════════════
OOKNET   [ /  search  ]  
────────────────────────────────────────────────
════════════════════════════════════════════════
 
HASH      93bf196c0d3d
DATE      2025-08-11
SUBJECT   challenge-mode: fix jindo reference
FILES     4 CHANGED
HASH      93bf196c0d3d
DATE      2025-08-11
SUBJECT   challenge-mode: fix jindo reference
FILES     4 CHANGED
 

diff --git a/nix/api/realm.nix b/nix/api/realm.nix
index c9a14d0..d177a64 100644
--- a/nix/api/realm.nix
+++ b/nix/api/realm.nix
@@ -53,7 +53,7 @@ in {
   giantstalker = mkRealm 4811 "eu" "Giantstalker";
   mandokir = mkRealm 4813 "eu" "Mandokir";
   thekal = mkRealm 4815 "eu" "Thekal";
-  "jin-do" = mkRealm 4816 "eu" "Jin'do";
+  "jindo" = mkRealm 4816 "eu" "Jin'do";
 
   # kr
   "shimmering-flats" = mkRealm 4417 "kr" "Shimmering Flats";

diff --git a/nix/api/realm.nix b/nix/api/rea
lm.nix
index c9a14d0..d177a64 100644
--- a/nix/api/realm.nix
+++ b/nix/api/realm.nix
@@ -53,7 +53,7 @@ in {
   giantstalker = mkRealm 4811 "eu" "Giantst
alker";
   mandokir = mkRealm 4813 "eu" "Mandokir";
   thekal = mkRealm 4815 "eu" "Thekal";
-  "jin-do" = mkRealm 4816 "eu" "Jin'do";
+  "jindo" = mkRealm 4816 "eu" "Jin'do";
 
   # kr
   "shimmering-flats" = mkRealm 4417 "kr" "S
himmering Flats";
 

diff --git a/web/src/data/realms.js b/web/src/data/realms.js
new file mode 100644
index 0000000..580b59e
--- /dev/null
+++ b/web/src/data/realms.js
@@ -0,0 +1,70 @@
+export const DATA_MAP = {
+  us: {
+    name: "US",
+    realms: {
+      angerforge: "Angerforge",
+      arugal: "Arugal",
+      ashkandi: "Ashkandi", 
+      atiesh: "Atiesh",
+      azuresong: "Azuresong",
+      benediction: "Benediction",
+      "bloodsail-buccaneers": "Bloodsail Buccaneers",
+      earthfury: "Earthfury",
+      eranikus: "Eranikus",
+      faerlina: "Faerlina",
+      grobbulus: "Grobbulus",
+      maladath: "Maladath",
+      mankrik: "Mankrik",
+      myzrael: "Myzrael",
+      "old-blanchy": "Old Blanchy",
+      pagle: "Pagle",
+      remulos: "Remulos",
+      skyfury: "Skyfury",
+      sulfuras: "Sulfuras",
+      westfall: "Westfall",
+      whitemane: "Whitemane",
+      windseeker: "Windseeker",
+      yojamba: "Yojamba",
+    },
+  },
+  eu: {
+    name: "EU",
+    realms: {
+      amnennar: "Amnennar",
+      ashbringer: "Ashbringer",
+      auberdine: "Auberdine",
+      chromie: "Chromie",
+      earthshaker: "Earthshaker",
+      everlook: "Everlook",
+      firemaw: "Firemaw",
+      flamegor: "Flamegor",
+      gehennas: "Gehennas",
+      giantstalker: "Giantstalker",
+      golemagg: "Golemagg",
+      "hydraxian-waterlords": "Hydraxian Waterlords",
+      "jindo": "Jin'do",
+      lakeshire: "Lakeshire",
+      mandokir: "Mandokir",
+      "mirage-raceway": "Mirage Raceway",
+      mograine: "Mograine",
+      "nethergarde-keep": "Nethergarde Keep",
+      patchwerk: "Patchwerk",
+      "pyrewood-village": "Pyrewood Village",
+      razorfen: "Razorfen",
+      sulfuron: "Sulfuron",
+      thekal: "Thekal",
+      transcendence: "Transcendence",
+      venoxis: "Venoxis",
+    },
+  },
+  kr: {
+    name: "KR",
+    realms: {
+      frostmourne: "Frostmourne",
+      iceblood: "Iceblood",
+      lokholar: "Lok'holar",
+      ragnaros: "Ragnaros",
+      "shimmering-flats": "Shimmering Flats",
+    },
+  },
+};
\ No newline at end of file

diff --git a/web/src/data/realms.js b/web/sr
c/data/realms.js
new file mode 100644
index 0000000..580b59e
--- /dev/null
+++ b/web/src/data/realms.js
@@ -0,0 +1,70 @@
+export const DATA_MAP = {
+  us: {
+    name: "US",
+    realms: {
+      angerforge: "Angerforge",
+      arugal: "Arugal",
+      ashkandi: "Ashkandi", 
+      atiesh: "Atiesh",
+      azuresong: "Azuresong",
+      benediction: "Benediction",
+      "bloodsail-buccaneers": "Bloodsail Bu
ccaneers",
+      earthfury: "Earthfury",
+      eranikus: "Eranikus",
+      faerlina: "Faerlina",
+      grobbulus: "Grobbulus",
+      maladath: "Maladath",
+      mankrik: "Mankrik",
+      myzrael: "Myzrael",
+      "old-blanchy": "Old Blanchy",
+      pagle: "Pagle",
+      remulos: "Remulos",
+      skyfury: "Skyfury",
+      sulfuras: "Sulfuras",
+      westfall: "Westfall",
+      whitemane: "Whitemane",
+      windseeker: "Windseeker",
+      yojamba: "Yojamba",
+    },
+  },
+  eu: {
+    name: "EU",
+    realms: {
+      amnennar: "Amnennar",
+      ashbringer: "Ashbringer",
+      auberdine: "Auberdine",
+      chromie: "Chromie",
+      earthshaker: "Earthshaker",
+      everlook: "Everlook",
+      firemaw: "Firemaw",
+      flamegor: "Flamegor",
+      gehennas: "Gehennas",
+      giantstalker: "Giantstalker",
+      golemagg: "Golemagg",
+      "hydraxian-waterlords": "Hydraxian Wa
terlords",
+      "jindo": "Jin'do",
+      lakeshire: "Lakeshire",
+      mandokir: "Mandokir",
+      "mirage-raceway": "Mirage Raceway",
+      mograine: "Mograine",
+      "nethergarde-keep": "Nethergarde Keep
",
+      patchwerk: "Patchwerk",
+      "pyrewood-village": "Pyrewood Village
",
+      razorfen: "Razorfen",
+      sulfuron: "Sulfuron",
+      thekal: "Thekal",
+      transcendence: "Transcendence",
+      venoxis: "Venoxis",
+    },
+  },
+  kr: {
+    name: "KR",
+    realms: {
+      frostmourne: "Frostmourne",
+      iceblood: "Iceblood",
+      lokholar: "Lok'holar",
+      ragnaros: "Ragnaros",
+      "shimmering-flats": "Shimmering Flats
",
+    },
+  },
+};
\ No newline at end of file
 

diff --git a/web/src/layouts/ChallengeModeLayout.astro b/web/src/layouts/Challenge
ModeLayout.astro
index 721f27c..ae765e0 100644
--- a/web/src/layouts/ChallengeModeLayout.astro
+++ b/web/src/layouts/ChallengeModeLayout.astro
@@ -4,6 +4,7 @@ import ControlPanel from "../components/ControlPanel.astro";
 import FormSelect from "../components/FormSelect.astro";
 import LoadingState from "../components/LoadingState.astro";
 import WoWClassColors from "../components/WoWClassColors.astro";
+import { DATA_MAP } from "../data/realms.js";
 
 export interface Props {
   initialRegion?: string;
@@ -447,78 +448,9 @@ const baseUrl = import.meta.env.BASE_URL;
 
 <script
   is:inline
-  define:vars={{ baseUrl, initialRegion, initialRealm, initialDungeon }}
+  define:vars={{ baseUrl, initialRegion, initialRealm, initialDungeon, DATA_MAP }
}
 >
-  const DATA_MAP = {
-    us: {
-      name: "US",
-      realms: {
-        angerforge: "Angerforge",
-        arugal: "Arugal",
-        ashkandi: "Ashkandi",
-        atiesh: "Atiesh",
-        azursong: "Azuresong",
-        benediction: "Benediction",
-        "bloodsail-buccaneers": "Bloodsail Buccaneers",
-        earthfury: "Earthfury",
-        eranikus: "Eranikus",
-        faerlina: "Faerlina",
-        grobbulus: "Grobbulus",
-        maladath: "Maladath",
-        mankrik: "Mankrik",
-        myzrael: "Myzrael",
-        "old-blanchy": "Old Blanchy",
-        pagle: "Pagle",
-        remulos: "Remulos",
-        skyfury: "Skyfury",
-        sulfuras: "Sulfuras",
-        westfall: "Westfall",
-        whitemane: "Whitemane",
-        windseeker: "Windseeker",
-        yojamba: "Yojamba",
-      },
-    },
-    eu: {
-      name: "EU",
-      realms: {
-        amnennar: "Amnennar",
-        ashbringer: "Ashbringer",
-        auberdine: "Auberdine",
-        chromie: "Chromie",
-        earthshaker: "Earthshaker",
-        everlook: "Everlook",
-        firemaw: "Firemaw",
-        flamegor: "Flamegor",
-        gehennas: "Gehennas",
-        giantstalker: "Giantstalker",
-        golemagg: "Golemagg",
-        "hydraxian-waterlords": "Hydraxian Waterlords",
-        "jin-do": "Jin'do",
-        lakeshire: "Lakeshire",
-        mandokir: "Mandokir",
-        "mirage-raceway": "Mirage Raceway",
-        mograine: "Mograine",
-        "nethergarde-keep": "Nethergarde Keep",
-        patchwerk: "Patchwerk",
-        "pyrewood-village": "Pyrewood Village",
-        razorfen: "Razorfen",
-        sulfuron: "Sulfuron",
-        thekal: "Thekal",
-        transcendence: "Transcendence",
-        venoxis: "Venoxis",
-      },
-    },
-    kr: {
-      name: "KR",
-      realms: {
-        frostmourne: "Frostmourne",
-        iceblood: "Iceblood",
-        lokholar: "Lok'holar",
-        ragnaros: "Ragnaros",
-        "shimmering-flats": "Shimmering Flats",
-      },
-    },
-  };
+  // DATA_MAP is now passed from Astro via define:vars
   // Dungeon name mapping
   const dungeonNames = {
     "2": "Temple of the Jade Serpent",

diff --git a/web/src/layouts/ChallengeModeLa
yout.astro b/web/src/layouts/ChallengeModeLa
yout.astro
index 721f27c..ae765e0 100644
--- a/web/src/layouts/ChallengeModeLayout.as
tro
+++ b/web/src/layouts/ChallengeModeLayout.as
tro
@@ -4,6 +4,7 @@ import ControlPanel from "..
/components/ControlPanel.astro";
 import FormSelect from "../components/FormS
elect.astro";
 import LoadingState from "../components/Loa
dingState.astro";
 import WoWClassColors from "../components/W
oWClassColors.astro";
+import { DATA_MAP } from "../data/realms.js
";
 
 export interface Props {
   initialRegion?: string;
@@ -447,78 +448,9 @@ const baseUrl = import.
meta.env.BASE_URL;
 
 <script
   is:inline
-  define:vars={{ baseUrl, initialRegion, in
itialRealm, initialDungeon }}
+  define:vars={{ baseUrl, initialRegion, in
itialRealm, initialDungeon, DATA_MAP }}
 >
-  const DATA_MAP = {
-    us: {
-      name: "US",
-      realms: {
-        angerforge: "Angerforge",
-        arugal: "Arugal",
-        ashkandi: "Ashkandi",
-        atiesh: "Atiesh",
-        azursong: "Azuresong",
-        benediction: "Benediction",
-        "bloodsail-buccaneers": "Bloodsail 
Buccaneers",
-        earthfury: "Earthfury",
-        eranikus: "Eranikus",
-        faerlina: "Faerlina",
-        grobbulus: "Grobbulus",
-        maladath: "Maladath",
-        mankrik: "Mankrik",
-        myzrael: "Myzrael",
-        "old-blanchy": "Old Blanchy",
-        pagle: "Pagle",
-        remulos: "Remulos",
-        skyfury: "Skyfury",
-        sulfuras: "Sulfuras",
-        westfall: "Westfall",
-        whitemane: "Whitemane",
-        windseeker: "Windseeker",
-        yojamba: "Yojamba",
-      },
-    },
-    eu: {
-      name: "EU",
-      realms: {
-        amnennar: "Amnennar",
-        ashbringer: "Ashbringer",
-        auberdine: "Auberdine",
-        chromie: "Chromie",
-        earthshaker: "Earthshaker",
-        everlook: "Everlook",
-        firemaw: "Firemaw",
-        flamegor: "Flamegor",
-        gehennas: "Gehennas",
-        giantstalker: "Giantstalker",
-        golemagg: "Golemagg",
-        "hydraxian-waterlords": "Hydraxian 
Waterlords",
-        "jin-do": "Jin'do",
-        lakeshire: "Lakeshire",
-        mandokir: "Mandokir",
-        "mirage-raceway": "Mirage Raceway",
-        mograine: "Mograine",
-        "nethergarde-keep": "Nethergarde Ke
ep",
-        patchwerk: "Patchwerk",
-        "pyrewood-village": "Pyrewood Villa
ge",
-        razorfen: "Razorfen",
-        sulfuron: "Sulfuron",
-        thekal: "Thekal",
-        transcendence: "Transcendence",
-        venoxis: "Venoxis",
-      },
-    },
-    kr: {
-      name: "KR",
-      realms: {
-        frostmourne: "Frostmourne",
-        iceblood: "Iceblood",
-        lokholar: "Lok'holar",
-        ragnaros: "Ragnaros",
-        "shimmering-flats": "Shimmering Fla
ts",
-      },
-    },
-  };
+  // DATA_MAP is now passed from Astro via 
define:vars
   // Dungeon name mapping
   const dungeonNames = {
     "2": "Temple of the Jade Serpent",
 

diff --git a/web/src/pages/challenge-mode/[...slug].astro b/web/src/pages/challeng
e-mode/[...slug].astro
index 2c0c0bd..b30b375 100644
--- a/web/src/pages/challenge-mode/[...slug].astro
+++ b/web/src/pages/challenge-mode/[...slug].astro
@@ -1,74 +1,8 @@
 ---
 import ChallengeModeLayout from "../../layouts/ChallengeModeLayout.astro";
+import { DATA_MAP } from "../../data/realms.js";
 
 export async function getStaticPaths() {
-  const DATA_MAP = {
-    us: {
-      realms: {
-        angerforge: "Angerforge",
-        arugal: "Arugal",
-        ashkandi: "Ashkandi", 
-        atiesh: "Atiesh",
-        azuresong: "Azuresong",
-        benediction: "Benediction",
-        "bloodsail-buccaneers": "Bloodsail Buccaneers",
-        earthfury: "Earthfury",
-        eranikus: "Eranikus",
-        faerlina: "Faerlina",
-        grobbulus: "Grobbulus",
-        maladath: "Maladath",
-        mankrik: "Mankrik",
-        myzrael: "Myzrael",
-        "old-blanchy": "Old Blanchy",
-        pagle: "Pagle",
-        remulos: "Remulos",
-        skyfury: "Skyfury",
-        sulfuras: "Sulfuras",
-        westfall: "Westfall",
-        whitemane: "Whitemane",
-        windseeker: "Windseeker",
-        yojamba: "Yojamba",
-      },
-    },
-    eu: {
-      realms: {
-        amnennar: "Amnennar",
-        ashbringer: "Ashbringer",
-        auberdine: "Auberdine",
-        chromie: "Chromie",
-        earthshaker: "Earthshaker",
-        everlook: "Everlook",
-        firemaw: "Firemaw",
-        flamegor: "Flamegor",
-        gehennas: "Gehennas",
-        giantstalker: "Giantstalker",
-        golemagg: "Golemagg",
-        "hydraxian-waterlords": "Hydraxian Waterlords",
-        "jin-do": "Jin'do",
-        lakeshire: "Lakeshire",
-        mandokir: "Mandokir",
-        "mirage-raceway": "Mirage Raceway",
-        mograine: "Mograine",
-        "nethergarde-keep": "Nethergarde Keep",
-        patchwerk: "Patchwerk",
-        "pyrewood-village": "Pyrewood Village",
-        razorfen: "Razorfen",
-        sulfuron: "Sulfuron",
-        thekal: "Thekal",
-        transcendence: "Transcendence",
-        venoxis: "Venoxis",
-      },
-    },
-    kr: {
-      realms: {
-        frostmourne: "Frostmourne",
-        iceblood: "Iceblood",
-        lokholar: "Lok'holar",
-        ragnaros: "Ragnaros",
-        "shimmering-flats": "Shimmering Flats",
-      },
-    },
-  };
 
   const dungeonNames = {
     "2": "Temple of the Jade Serpent",

diff --git a/web/src/pages/challenge-mode/[.
..slug].astro b/web/src/pages/challenge-mode
/[...slug].astro
index 2c0c0bd..b30b375 100644
--- a/web/src/pages/challenge-mode/[...slug]
.astro
+++ b/web/src/pages/challenge-mode/[...slug]
.astro
@@ -1,74 +1,8 @@
 ---
 import ChallengeModeLayout from "../../layo
uts/ChallengeModeLayout.astro";
+import { DATA_MAP } from "../../data/realms
.js";
 
 export async function getStaticPaths() {
-  const DATA_MAP = {
-    us: {
-      realms: {
-        angerforge: "Angerforge",
-        arugal: "Arugal",
-        ashkandi: "Ashkandi", 
-        atiesh: "Atiesh",
-        azuresong: "Azuresong",
-        benediction: "Benediction",
-        "bloodsail-buccaneers": "Bloodsail 
Buccaneers",
-        earthfury: "Earthfury",
-        eranikus: "Eranikus",
-        faerlina: "Faerlina",
-        grobbulus: "Grobbulus",
-        maladath: "Maladath",
-        mankrik: "Mankrik",
-        myzrael: "Myzrael",
-        "old-blanchy": "Old Blanchy",
-        pagle: "Pagle",
-        remulos: "Remulos",
-        skyfury: "Skyfury",
-        sulfuras: "Sulfuras",
-        westfall: "Westfall",
-        whitemane: "Whitemane",
-        windseeker: "Windseeker",
-        yojamba: "Yojamba",
-      },
-    },
-    eu: {
-      realms: {
-        amnennar: "Amnennar",
-        ashbringer: "Ashbringer",
-        auberdine: "Auberdine",
-        chromie: "Chromie",
-        earthshaker: "Earthshaker",
-        everlook: "Everlook",
-        firemaw: "Firemaw",
-        flamegor: "Flamegor",
-        gehennas: "Gehennas",
-        giantstalker: "Giantstalker",
-        golemagg: "Golemagg",
-        "hydraxian-waterlords": "Hydraxian 
Waterlords",
-        "jin-do": "Jin'do",
-        lakeshire: "Lakeshire",
-        mandokir: "Mandokir",
-        "mirage-raceway": "Mirage Raceway",
-        mograine: "Mograine",
-        "nethergarde-keep": "Nethergarde Ke
ep",
-        patchwerk: "Patchwerk",
-        "pyrewood-village": "Pyrewood Villa
ge",
-        razorfen: "Razorfen",
-        sulfuron: "Sulfuron",
-        thekal: "Thekal",
-        transcendence: "Transcendence",
-        venoxis: "Venoxis",
-      },
-    },
-    kr: {
-      realms: {
-        frostmourne: "Frostmourne",
-        iceblood: "Iceblood",
-        lokholar: "Lok'holar",
-        ragnaros: "Ragnaros",
-        "shimmering-flats": "Shimmering Fla
ts",
-      },
-    },
-  };
 
   const dungeonNames = {
     "2": "Temple of the Jade Serpent",
 
[ BACK TO LOG ]
──────────────────────────────────────────────────────────────────────────────────────
OOKNET
────────────────────────────────────────────────
OOKNET