// Real data — pulled from _picks.json (live Shopify) + DOWNLOAD-LOG.md + research/* // Prices are verified AED values captured 2026-05-24. Never invent prices, ratings, follower counts. const PRODUCTS = [ // id matches local media filename. price strings preserved as-is from feed. { id: "01", img: "media/product-01-wooden-toys.webp", vendor: "Trixie", title: "Wooden Kitchen", price: "529.00", type: "Wooden Toys", tags: ["new"] }, { id: "08", img: "media/product-08-music-instruments.webp", vendor: "Trixie", title: "Wooden Xylophone", price: "129.00", type: "Music", tags: [] }, { id: "34", img: "media/product-34-doorway-theatre.webp", vendor: "MIMIKI", title: "Strawberry Doorway Theatre", price: "325.00", type: "Pretend Play", tags: ["editor"] }, { id: "14", img: "media/product-14-bicycle.webp", vendor: "Adam Bike", title: "The Dutch Style 24\"", price: "1732.50",type: "Bicycle", tags: ["heirloom"] }, { id: "15", img: "media/product-15-kids-furniture.webp", vendor: "Kids for Turath",title: "Beirut Doll House", price: "1680.00",type: "Furniture", tags: ["editor"] }, { id: "22", img: "media/product-22-nursery-light-train.webp",vendor: "Little Lights", title: "Train Nursery Light – Clay", price: "819.00", type: "Lighting", tags: ["editor"] }, { id: "20", img: "media/product-20-wallpaper-rainbows.webp", vendor: "Hibou Home", title: "Clouds & Rainbows Wallpaper", price: "200.00", type: "Wallpaper", tags: [] }, { id: "21", img: "media/product-21-rug-chess.webp", vendor: "OYOY", title: "Chess Rug", price: "121.00", type: "Rug", tags: [] }, { id: "23", img: "media/product-23-baby-carrier.webp", vendor: "Wild Ride", title: "Wild Ride Carrier – Army Green", price: "415.00", type: "Baby Gear", tags: ["new"] }, { id: "24", img: "media/product-24-elephant-mobile.webp", vendor: "Pehr", title: "Classic Elephant Parade Mobile", price: "262.50", type: "Mobiles", tags: [] }, { id: "25", img: "media/product-25-toddler-backpack.webp", vendor: "Tinycottons", title: "Tiny & Tiny Toddler Backpack – Green", price: "310.00", type: "Backpacks", tags: [] }, { id: "27", img: "media/product-27-kids-swimsuit.webp", vendor: "Tinycottons", title: "Cherries Swimsuit – Washed Emerald", price: "270.00", type: "Swimwear", tags: [] }, { id: "31", img: "media/product-31-fairy-costume.webp", vendor: "Konges Sløjd", title: "Fairy Frill Costume – Heart Mix Pink", price: "238.92", type: "Costume", tags: [] }, { id: "18", img: "media/product-18-girls-top.webp", vendor: "Konges Sløjd", title: "Coco Top – Amour Verde", price: "238.00", type: "Outfits", tags: [] }, { id: "19", img: "media/product-19-arabic-book.webp", vendor: "Dardasha", title: "Let's Eat – Arabic Children's Book", price: "63.00", type: "Books", tags: ["local"] }, { id: "06", img: "media/product-06-activity-books.webp", vendor: "OMY", title: "Yummy Colouring & Sticker Book", price: "80.00", type: "Activity", tags: [] }, { id: "09", img: "media/product-09-print-camera.webp", vendor: "Kidywolf", title: "Kidyprint Thermal Camera – Pink", price: "379.00", type: "Cameras", tags: ["new"] }, { id: "11", img: "media/product-11-photo-camera.webp", vendor: "Kidywolf", title: "Kidycam Camera – Red", price: "329.00", type: "Cameras", tags: [] }, { id: "10", img: "media/product-10-electrical-kit.webp", vendor: "Kidywolf", title: "Kidyelec Expert Electrical Kit", price: "249.00", type: "STEM", tags: [] }, { id: "12", img: "media/product-12-animal-headphone.webp", vendor: "Kidywolf", title: "Kidyears Animal Headphones – Rabbit", price: "149.00", type: "Audio", tags: [] }, { id: "29", img: "media/product-29-soap-craft-kit.webp", vendor: "Nailmatic", title: "Croco Soap Maker – DIY Kit", price: "81.00", type: "Craft", tags: [] }, { id: "30", img: "media/product-30-wall-art-baby.webp", vendor: "SF × Bookie", title: "Baby Page Wall Art", price: "150.00", type: "Wall Art", tags: ["collab"] }, { id: "35", img: "media/product-35-baby-comforter.webp", vendor: "Trixie", title: "Baby Comforter – Mrs. Rabbit", price: "109.00", type: "Comforter", tags: [] }, { id: "05", img: "media/product-05-organic-tattoos.webp", vendor: "OMY", title: "Flash Tattoo – Wild Rebel", price: "65.10", type: "Stickers", tags: [] }, { id: "07", img: "media/product-07-hair-chalk.webp", vendor: "OMY", title: "OMY Hair Chalk", price: "75.00", type: "Dress Up", tags: [] }, { id: "03", img: "media/product-03-gel-pens.webp", vendor: "OMY", title: "OMY Pen Duo", price: "35.00", type: "Stationery", tags: [] }, { id: "04", img: "media/product-04-eraser.webp", vendor: "OMY", title: "Eraser Buddies – Shaky", price: "20.00", type: "Stationery", tags: [] }, { id: "02", img: "media/product-02-band-aid.webp", vendor: "WAWA", title: "Plaster Kit – Abstract", price: "40.95", type: "Everyday", tags: [] }, { id: "13", img: "media/product-13-photo-paper.webp", vendor: "Kidywolf", title: "Kidyroll Thermal Photo Paper", price: "49.00", type: "Refill", tags: [] }, { id: "16", img: "media/product-16-gift-card.webp", vendor: "StrawberryFields",title: "e-Gift Card", price: "157.50", type: "Gift", tags: ["from"] }, ]; // Worlds == editorial buckets from research/services.md const WORLDS = [ { key: "rooms", title: "Room Interior", count: 84, img: "media/product-22-nursery-light-train.webp", contain: true, span: "w-rooms", dark: false }, { key: "baby", title: "Newborn & Baby", count: 96, img: "media/product-24-elephant-mobile.webp", contain: true, span: "w-baby", dark: true }, { key: "toys", title: "Toys", count: 132, img: "media/product-01-wooden-toys.webp", contain: true, span: "w-toys", dark: true }, { key: "books", title: "Books", count: 47, img: "media/product-19-arabic-book.webp", contain: true, span: "w-books", dark: true }, { key: "outfits", title: "Outfits", count: 61, img: "media/product-18-girls-top.webp", contain: true, span: "w-outfits", dark: true }, { key: "outdoors", title: "Outdoors", count: 28, img: "media/product-14-bicycle.webp", contain: true, span: "w-outdoors", dark: true }, { key: "celebrate", title: "Celebration", count: 39, img: "media/product-16-gift-card.webp", contain: true, span: "w-celebrate",dark: true }, { key: "sale", title: "Last Calls", count: 28, img: "media/product-05-organic-tattoos.webp", contain: true, span: "w-sale", dark: true }, ]; // Curated tabs for the picks section — never invent metrics const PICK_TABS = [ { id: "editor", label: "Editor's picks" }, { id: "new", label: "Just landed" }, { id: "under100",label: "Under AED 100" }, { id: "heirloom",label: "Heirloom" }, ]; // Brand list — drawn from research/services.md (real labels carried in store) const BRANDS = [ { name: "Trixie", count: 38 }, { name: "Konges Sløjd", count: 52 }, { name: "Tinycottons", count: 41 }, { name: "OMY", count: 26 }, { name: "Kidywolf", count: 18 }, { name: "Hibou Home", count: 22 }, { name: "OYOY", count: 29 }, { name: "PEHR", count: 17 }, { name: "Little Lights", count: 14 }, { name: "MeriMeri", count: 33 }, { name: "Moulin Roty", count: 24 }, { name: "Fabelab", count: 19 }, { name: "Adam Bike", count: 8 }, { name: "Dardasha", count: 12 }, { name: "Kids for Turath", count: 11 }, { name: "Maison Mangostan",count: 9 }, { name: "MIMIKI", count: 7 }, { name: "SF × Bookie", count: 6 }, ]; // Happenings — placeholder dates; copy intentionally generic until client confirms const HAPPENINGS = [ { day: "12", mon: "Jun", title: "Painting with Watercolours", meta: "Ages 4–7 · with Artist in Residence", cta: "Register" }, { day: "21", mon: "Jun", title: "Stories Under the Strawberry Tent", meta: "Storytime · ages 1–6 · drop in", cta: "Drop in" }, { day: "06", mon: "Jul", title: "Tiny Bakers Club", meta: "Ages 3–6 · with Maison Mangostan", cta: "Register" }, { day: "19", mon: "Jul", title: "Sound & Movement", meta: "Ages 2–5 · with Wooden Xylophone trio", cta: "Register" }, ]; // Hidden Playground official rates (verified from price list image) const HPG_RATES = { intro: "First 10 minutes on us.", rows: [ { key: "toddlers", label: "Toddlers", sub: "below 18 months", thirty: 50, sixty: "Free", extra: "Free" }, { key: "stayplay", label: "Stay N Play", sub: "with caregiver", thirty: 65, sixty: 80, extra: 50 }, { key: "dropngo", label: "Drop N Go", sub: "ages 1–6", thirty: 120, sixty: 120, extra: 100 }, ], }; Object.assign(window, { PRODUCTS, WORLDS, PICK_TABS, BRANDS, HAPPENINGS, HPG_RATES });