// Screens 15-19: Categories, Filters sheet, Addresses, Lab tests, Doctor consult // ═════════════════════════════════════════════════════════════ // 15) CATEGORIES (full grid) // ═════════════════════════════════════════════════════════════ function ScreenCategories() { const cats = [ { label: 'Pain relief', count: 142, hue: 'blue', Icon: IconPill }, { label: 'Diabetes care', count: 86, hue: 'mint', Icon: IconHeart }, { label: 'Heart & BP', count: 64, hue: 'rose', Icon: IconRx }, { label: 'Cold & flu', count: 58, hue: 'amber', Icon: IconShield }, { label: 'Digestive', count: 47, hue: 'mint', Icon: IconPill }, { label: 'Vitamins', count: 124, hue: 'amber', Icon: IconStar }, { label: 'Skin care', count: 92, hue: 'rose', Icon: IconHeart }, { label: 'Hair care', count: 68, hue: 'navy', Icon: IconUser }, { label: 'Baby & mom', count: 81, hue: 'rose', Icon: IconUser }, { label: 'Sexual wellness', count: 54, hue: 'blue', Icon: IconShield }, { label: 'Ayurveda', count: 102, hue: 'mint', Icon: IconStar }, { label: 'Devices', count: 38, hue: 'navy', Icon: IconScan }, ]; const palettes = { blue: { bg: C.blue100, fg: C.blue600 }, mint: { bg: C.mint100, fg: C.mint500 }, amber: { bg: C.amber100, fg: C.amber500 }, rose: { bg: C.rose100, fg: C.rose500 }, navy: { bg: '#E2E8FA', fg: C.navy800 }, }; return (
Categories
Browse all medicines & wellness
{/* Featured big banner */}
NEW · 2,400+ ITEMS
Ayurveda store
Curated by Dr. Sharma & team
{cats.map((c) => { const p = palettes[c.hue]; return (
{c.label}
{c.count} items
); })}
); } // ═════════════════════════════════════════════════════════════ // 16) FILTERS (bottom sheet over dimmed cart/search) // ═════════════════════════════════════════════════════════════ function ScreenFilters() { return (
{/* Dimmed background — mock of search list */}
{[0,1,2,3].map(i => (
))}
{/* Scrim */}
{/* Bottom sheet */}
Filters
Reset
{/* Form: Type */}
Type
{[{l:'Tablets', s: true}, {l:'Syrups', s: false}, {l:'Capsules', s: true}, {l:'Injections', s: false}, {l:'Drops', s: false}, {l:'Ointments', s: false}].map((c, i) => (
{c.s && } {c.l}
))}
{/* Brand */}
Brand
{[ { label: 'Cipla', count: 86, on: true }, { label: 'Sun Pharma', count: 124, on: true }, { label: 'Dr. Reddy\u2019s', count: 67, on: false }, { label: 'Pfizer', count: 42, on: false }, ].map((b, i) => (
{b.on && }
{b.label} {b.count}
))}
{/* Price slider */}
Price
₹40 — ₹650
{/* Toggles */}
{[ { label: 'In stock only', sub: 'Hide unavailable items', on: true }, { label: 'Generic alternatives', sub: 'Show cheaper substitutes', on: true }, ].map((t, i) => (
{t.label}
{t.sub}
{/* iOS toggle */}
))}
{/* Apply CTA */}
); } // ═════════════════════════════════════════════════════════════ // 17) ADDRESSES (list + add) // ═════════════════════════════════════════════════════════════ function ScreenAddresses() { const addrs = [ { label: 'Home', sub: 'Apt 4B, Maple Residency, 100ft Road, Indiranagar, Bengaluru 560038', Icon: IconHome, default: true, hue: 'blue' }, { label: 'Work', sub: '5th Floor, Prestige Tech Park, Marathahalli, Bengaluru 560103', Icon: IconBox, default: false, hue: 'mint' }, { label: 'Mom\u2019s place', sub: 'Plot 12, Sector 14, Whitefield, Bengaluru 560066', Icon: IconHeart, default: false, hue: 'rose' }, ]; return (
Saved addresses
3 places · used for delivery
{/* Map slot */}
{addrs.map((a, i) => (
{a.label} {a.default && Default}
{a.sub}
Edit {!a.default && Set default} Delete
))}
{/* Add new address */}
Add new address
Home, work, or anywhere else
); } // ═════════════════════════════════════════════════════════════ // 18) LAB TESTS booking // ═════════════════════════════════════════════════════════════ function ScreenLabTests() { const tests = [ { name: 'Complete blood count (CBC)', sub: '24 parameters · Fasting not required', price: 320, mrp: 480, hue: 'rose', tag: 'POPULAR' }, { name: 'HbA1c (Diabetes)', sub: '3-month sugar avg · 12-hr fasting', price: 480, mrp: 650, hue: 'blue', tag: null }, { name: 'Vitamin D 25-OH', sub: 'Deficiency screening', price: 1080, mrp: 1400, hue: 'amber', tag: null }, { name: 'Thyroid profile T3 T4 TSH', sub: '3 tests · Morning sample', price: 540, mrp: 720, hue: 'mint', tag: null }, ]; return (
{/* Hero */}
Lab tests
Home sample collection,
NABL-accredited labs
⚡ Reports in 12 hrs • Free sample pickup
{/* Search */}
Search 800+ tests & packages
{/* Quick chips */}
{['Popular', 'Diabetes', 'Heart', 'Thyroid', 'Liver', 'Kidney', 'Women', 'Full body'].map((f, i) => (
{f}
))}
{tests.map((t, i) => (
{t.name} {t.tag && {t.tag}}
{t.sub}
₹{t.price} ₹{t.mrp}
))}
{/* Packages teaser */}
Full body checkup · 62 tests
Recommended for ages 30+ annually
₹1,499
₹2,800
); } // ═════════════════════════════════════════════════════════════ // 19) DOCTOR CONSULTATION // ═════════════════════════════════════════════════════════════ function ScreenDoctorConsult() { const specs = [ { label: 'General', Icon: IconUser, hue: 'blue' }, { label: 'Skin', Icon: IconHeart, hue: 'rose' }, { label: 'Pediatrics', Icon: IconShield, hue: 'mint' }, { label: 'Mental', Icon: IconStar, hue: 'amber' }, ]; const docs = [ { name: 'Dr. Priya Mehta', spec: 'General physician · 12 yrs', rating: '4.9', lang: 'EN · HI · KN', price: 199, available: 'In 4 min', hue: 'blue' }, { name: 'Dr. Rohan Iyer', spec: 'Dermatologist · 8 yrs', rating: '4.8', lang: 'EN · HI', price: 349, available: 'In 12 min', hue: 'rose' }, { name: 'Dr. Anjali Rao', spec: 'Pediatrician · 15 yrs', rating: '4.9', lang: 'EN · HI · TA', price: 299, available: 'Tomorrow', hue: 'mint' }, ]; return (
Consult a doctor
Video or chat · in minutes
{/* Active consult card (if any) */}
PM
Dr. Priya replied to your chat
2 min ago · Follow-up consultation
{/* Spec grid */}
{specs.map((s) => (
{s.label}
))}
{docs.map((d, i) => (
{d.name.split(' ').slice(1).map(s => s[0]).join('')}
{d.name}
{d.spec}
{d.rating}
{d.lang}
₹{d.price}
● {d.available}
))}
); } Object.assign(window, { ScreenCategories, ScreenFilters, ScreenAddresses, ScreenLabTests, ScreenDoctorConsult });