import React, { createContext, useContext, useState, useEffect } from 'react'; type Language = 'en' | 'ne'; interface LanguageContextType { language: Language; setLanguage: (lang: Language) => void; t: (key: string, defaultText: string) => string; } const LanguageContext = createContext(undefined); export const LanguageProvider: React.FC<{ children: React.ReactNode }> = ({ children }) => { const [language, setLanguage] = useState(() => { return (localStorage.getItem('rudraksha_lang') as Language) || 'en'; }); useEffect(() => { localStorage.setItem('rudraksha_lang', language); }, [language]); const t = (key: string, defaultText: string) => { if (language === 'en') return defaultText; const dictionary: Record = { // Navigation & Layout "Dashboard": "ड्यासबोर्ड", "ACADEMIC": "शैक्षिक", "Academic": "शैक्षिक", "Rudra AI": "रुद्र एआई", "Guru AI": "रुद्र एआई", "Assignments": "गृहकार्य", "Analytics": "तथ्याङ्क", "Culture": "संस्कृति", "Calendar": "पात्रो", "Community": "समुदाय", "Network": "सञ्जाल", "Wellness": "कल्याण", "FTL Rescue": "उद्धार", "E-Library": "ई-पुस्तकालय", "Plan": "योजना", "Map & Provinces": "नक्सा र प्रदेश", "Kitchen": "भान्छा", "Health": "स्वास्थ्य", "Safety": "सुरक्षा", "Karma Bazaar": "कर्म बजार", "Arcade": "आर्केड", "Chat": "कुराकानी", "Settings": "सेटिङ्स", "Good Morning": "शुभ प्रभात", "Good Afternoon": "शुभ दिन", "Good Evening": "शुभ सन्ध्या", "Karma": "कर्म", "Level": "स्तर", // AI Guru Features "Text Chat": "पाठ कुराकानी", "Live Voice": "प्रत्यक्ष आवाज", "Video Insight": "भिडियो विश्लेषण", "Visual Scan": "दृष्टि स्क्यान", "Quiz Game": "हाजिरीजवाफ", "Voice Interface": "आवाज इन्टरफेस", "Conversational AI with Gemini 2.5 Native Audio.": "जेमिनी २.५ नेटिभ अडियोको साथ संवादात्मक एआई।", "Video Analyst": "भिडियो विश्लेषक", "Visual Scanner": "दृष्टि स्क्यानर", "Ask Rudra AI anything...": "रुद्र एआईलाई केहि सोध्नुहोस्...", "Ask Guru AI anything...": "रुद्र एआईलाई केहि सोध्नुहोस्...", "Extracting Wisdom...": "ज्ञान निकाल्दै...", "Insight Dossier": "अन्तर्दृष्टि डोसियर", "No Intel yet": "अझै कुनै जानकारी छैन", "Upload Lesson": "पाठ अपलोड गर्नुहोस्", "Upload Video": "भिडियो अपलोड गर्नुहोस्", "QUICK SCAN": "द्रुत स्क्यान", "Ask short questions about the video...": "भिडियोको बारेमा छोटो प्रश्नहरू सोध्नुहोस्...", "What should Guru AI focus on?": "रुद्र एआईले केमा ध्यान दिनुपर्छ?", "Paste text to summarize...": "सारांश गर्न पाठ टाँस्नुहोस्...", "SCAN & ANALYZE": "स्क्यान र विश्लेषण", "SUMMARIZE INTEL": "जानकारी सारांश", "Result Extraction": "परिणाम निष्कर्षण", "Cam": "क्यामेरा", "Library": "पुस्तकालय", "Clear": "स्पष्ट", "Clear Chat": "संवाद मेटाउनुहोस्", "Session Feed": "वर्तमान सत्र", "Test your heritage knowledge and earn karma points from Guru AI.": "आफ्नो सम्पदा ज्ञान परीक्षण गर्नुहोस् र रुद्र एआईबाट कर्म अंकहरू कमाउनुहोस्।", "ENTER CHALLENGE": "चुनौतीमा प्रवेश", "Syncing Intel...": "जानकारी सिंक गर्दै...", "Ritual Progress": "प्रगति", "Wisdom Note": "ज्ञान नोट", "CONTINUE": "जारी राख्नुहोस्", "Mission Cleared": "मिशन पुरा", "Final Score": "अन्तिम स्कोर", "RESTART RITUAL": "पुनः सुरु", "CONNECT TO": "जडान गर्नुहोस्", "Voice Persona Selection": "आवाज व्यक्तित्व चयन", "Voice Tuning": "आवाज ट्युनिङ", "Voice Speed": "आवाजको गति", "Voice Pitch": "आवाजको उतारचढाव", // Wellness & Health "Wellness Centre": "स्वास्थ्य केन्द्र", "Environment": "वातावरण", "Daily Log": "दैनिक लग", "Yoga Flow": "योग प्रवाह", "Yoga": "योग", "Wisdom": "ज्ञान", "Sapana": "सपना", "Climate Tracker": "जलवायु ट्रयाकर", "Personal Health": "व्यक्तिगत स्वास्थ्य", "Air Quality Index": "वायु गुणस्तर सूचकांक", "Mask Advice": "मास्क सुझाव", "Pollutants": "प्रदूषकहरू", "Feels Like": "महसुस हुने", "Humidity": "आर्द्रता", "Wind": "हावा", "Daily Wellness Wisdom": "दैनिक स्वास्थ्य ज्ञान", "Hydration Track": "पानीको ट्रयाक", "Mood Ritual": "मनस्थिति विधि", "Recovery Sleep": "निद्रा र आराम", "Happy": "खुसी", "Neutral": "सामान्य", "Stressed": "तनाव", "Tired": "थकित", "Yog Flow & Vitality": "योग र प्राण शक्ति", "Benefits": "फाइदाहरू", "Movement Guide": "अभ्यास मार्गदर्शक", "Ayurvedic Rituals": "आयुर्वेदिक विधिहरू", "Longevity Secrets": "दीर्घायुको रहस्य", "Active Lifestyle": "सक्रिय जीवनशैली", "Sattvic Diet": "सात्त्विक आहार", "Social Connection": "सामाजिक सम्बन्ध", "Consistent Sleep": "नियमित निद्रा", "Community Health Secret": "सामुदायिक स्वास्थ्य रहस्य", "Sapana Interpreter": "सपना व्याख्याता", "Unlock the hidden messages of your subconscious through the lens of ancient Nepali folklore and modern psychology.": "प्राचीन नेपाली लोककथा र आधुनिक मनोविज्ञानको माध्यमबाट आफ्नो अवचेतन मनका लुकेका सन्देशहरू बुझ्नुहोस्।", "Describe your dream here... (e.g. I saw a snake in a temple)": "तपाईंको सपना यहाँ वर्णन गर्नुहोस्... (जस्तै: मैले मन्दिरमा सर्प देखेँ)", "REVEAL MEANING": "अर्थ खोल्नुहोस्", "Traditional Folklore": "परम्परागत लोकविश्वास", "Psychological View": "मनोवैज्ञानिक दृष्टिकोण", // Safety & FTL "Find The Lost": "हराएकाको खोजी", "Report Loss": "हराएको जानकारी", "I Found Something": "मैले केहि भेट्टाएँ", "Report Eye-Witness": "प्रत्यक्षदर्शी जानकारी", "Active Feed": "प्रत्यक्ष अपडेट", "My Rescue Logs": "मेरा रिपोर्टहरू", "Rescue Tags": "सुरक्षा ट्यागहरू", "Community Vault": "सामुदायिक भल्ट", "Find My Item": "मेरो सामान खोजनुहोस्", "Nepal Police": "नेपाल प्रहरी", "Ambulance": "एम्बुलेन्स", "Fire Brigade": "दमकल", "MISSION COMMAND": "मिशन कमान्ड", // Common "Loading...": "लोड हुँदैछ...", "Save Changes": "परिवर्तनहरू सुरक्षित गर्नुहोस्", "Cancel": "रद्द गर्नुहोस्", "Close": "बन्द गर्नुहोस्", "Edit": "सम्पादन", "Delete": "हटाउनुहोस्", "Search": "खोज्नुहोस्", }; return dictionary[key] || defaultText; }; return ( {children} ); }; export const useLanguage = () => { const context = useContext(LanguageContext); if (!context) throw new Error("useLanguage must be used within a LanguageProvider"); return context; };