Update to v1.0.4: Multi-language Support (EN, RU, HE)

This commit is contained in:
Gemini AI
2025-12-06 23:59:22 +04:00
Unverified
parent 7cc3c0e3c0
commit e3d487b0b0
6 changed files with 764 additions and 222 deletions

Binary file not shown.

View File

@@ -1,6 +1,6 @@
{
"name": "mindshift-cbt-therapy",
"version": "1.0.3",
"version": "1.0.4",
"description": "MindShift - Your personal CBT therapy companion for Windows 11",
"main": "src/main.js",
"homepage": "./",

File diff suppressed because it is too large Load Diff

View File

@@ -54,6 +54,9 @@
MindShift
</div>
<div class="header-actions">
<button class="nav-item" onclick="showLanguageModal()" style="color: var(--primary);">
<span class="material-icons">language</span>
</button>
<div style="position: relative;">
<button class="nav-item" onclick="toggleNotifications()" style="color: white;">
<span class="material-icons">notifications</span>

View File

@@ -1292,3 +1292,72 @@ textarea:focus, input[type="text"]:focus {
.hold .breath-circle-main { background: rgba(255, 235, 59, 0.3); }
.exhale .breath-circle-main { background: rgba(255, 107, 107, 0.3); }
/* RTL Support Overrides */
html[dir="rtl"] {
text-align: right;
--direction: rtl;
}
html[dir="rtl"] .fab {
right: auto;
left: 24px;
}
html[dir="rtl"] .notification-badge {
right: auto;
left: 8px;
}
html[dir="rtl"] .notification-dropdown {
right: auto;
left: 0;
}
html[dir="rtl"] .card-title::after {
transform-origin: right;
left: auto;
right: 0;
}
html[dir="rtl"] .switch-form a {
margin-left: 0;
margin-right: 4px;
}
html[dir="rtl"] .form-group label {
margin-left: 0;
margin-right: 4px;
}
html[dir="rtl"] .guided-controls {
right: auto;
left: 20px;
}
/* Adjust history item hover transform for RTL */
html[dir="rtl"] .history-item:hover {
transform: translateX(-5px);
}
/* Adjust emotion value alignment */
html[dir="rtl"] .emotion-value {
text-align: left;
}
/* Adjust desktop sidebar for RTL */
@media (min-width: 1024px) {
html[dir="rtl"] .bottom-nav {
left: auto;
right: 20px;
}
html[dir="rtl"] .main-content {
margin-left: 0;
margin-right: 120px;
}
html[dir="rtl"] .nav-item.active::after {
left: auto;
right: 0;
}
}

View File

@@ -0,0 +1,401 @@
export const translations = {
en: {
// Meta
"app_title": "MindShift",
"app_subtitle": "Your personal CBT companion",
"init_loading": "Initializing MindShift...",
"init_error": "Error Loading App",
"proactive_badge": "✨ Time for a vibe check?",
// Navigation
"nav_home": "Home",
"nav_mood": "Mood",
"nav_thoughts": "Thoughts",
"nav_gratitude": "Gratitude",
"nav_progress": "Progress",
// Auth
"auth_welcome": "Welcome to MindShift",
"auth_login": "Login",
"auth_register": "Register",
"auth_name": "Name",
"auth_email": "Email",
"auth_password": "Password",
"auth_no_account": "Don't have an account?",
"auth_has_account": "Already have an account?",
"auth_login_failed": "Login failed",
"auth_reg_failed": "Registration failed",
// Home
"home_welcome": "Welcome Back! 🌟",
"home_subtitle": "Ready to shift your mind?",
"home_log_mood": "Log Mood",
"home_record_thought": "Record Thought",
"home_gratitude": "Gratitude",
"home_daily_vibe": "Daily Vibe Check 📊",
"home_quick_relief": "Quick Relief 🌿",
"home_breathe": "Breathe",
"home_relax": "Relax",
"home_stats_mood": "Today's Mood",
"home_stats_sessions": "Sessions",
"home_stats_avg": "Weekly Avg",
"home_stats_gratitude": "Gratitude",
"home_retry": "Tap to Retry",
// Mood
"mood_title": "How are you feeling?",
"mood_joy": "Joy",
"mood_peace": "Peace",
"mood_energy": "Energy",
"mood_anxiety": "Anxiety",
"mood_sadness": "Sadness",
"mood_anger": "Anger",
"mood_intensity": "Intensity",
"mood_notes_placeholder": "Any thoughts?",
"mood_save": "Save Mood",
"mood_saved_success": "Mood tracked successfully!",
"mood_select_warning": "Please select a mood",
// Thoughts
"thought_title": "Thought Record 🧠",
"thought_situation": "Situation (Who, what, where, when?)",
"thought_automatic": "Automatic Thoughts (What went through your mind?)",
"thought_emotions": "Emotions",
"thought_add_emotion": "+ Add Emotion",
"thought_evidence": "Evidence For/Against",
"thought_alternative": "Alternative Thought",
"thought_save": "Save Record",
"thought_saved_success": "Thought record saved successfully!",
"thought_fill_warning": "Please fill in at least the situation and thoughts",
// Gratitude
"gratitude_title": "Gratitude Journal 🙏",
"gratitude_intro": "List 3 things you are grateful for today:",
"gratitude_placeholder": "I am grateful for...",
"gratitude_add": "+ Add Another",
"gratitude_save": "Save Entry",
"gratitude_saved_success": "Gratitude entries saved successfully!",
"gratitude_empty_warning": "Please add at least one gratitude entry",
// Progress & History
"progress_title": "Your Progress 📈",
"progress_weekly": "Weekly Mood 📅",
"progress_history": "Recent History 📜",
"history_tab_moods": "Moods",
"history_tab_thoughts": "Thoughts",
"history_tab_gratitude": "Gratitude",
"history_empty_mood": "No mood entries yet. Start tracking! 📝",
"history_empty_thoughts": "No thought records yet. 🧠",
"history_empty_gratitude": "No gratitude entries yet. 🙏",
"history_select_prompt": "Select a category to view history",
// Quick Actions
"quick_title": "Quick Actions ⚡",
"quick_relax_now": "Relax Now",
"close": "Close",
// Guided Relaxation (Grounding)
"guided_sight_title": "Sight",
"guided_sight_instruction": "Look around you.",
"guided_sight_sub": "Find 5 things you can see.",
"guided_touch_title": "Touch",
"guided_touch_instruction": "Feel the textures.",
"guided_touch_sub": "Find 4 things you can touch.",
"guided_sound_title": "Sound",
"guided_sound_instruction": "Listen carefully.",
"guided_sound_sub": "Identify 3 sounds you hear.",
"guided_smell_title": "Smell",
"guided_smell_instruction": "Breathe in deep.",
"guided_smell_sub": "Notice 2 things you can smell.",
"guided_taste_title": "Taste",
"guided_taste_instruction": "Focus on your mouth.",
"guided_taste_sub": "Find 1 thing you can taste.",
"guided_found_btn": "I found one",
"guided_complete_title": "You did great!",
"guided_complete_sub": "Feeling more grounded?",
"guided_complete_btn": "Complete",
// Smart Breathing
"breath_balance": "Balance",
"breath_relax": "Relax",
"breath_focus": "Focus",
"breath_in": "Breathe In",
"breath_out": "Breathe Out",
"breath_hold": "Hold",
"breath_ready": "Get Ready...",
"breath_sit": "Sit comfortably",
"breath_complete": "Breathing session complete! 🌬️",
// Notifications
"notifications_empty": "No notifications",
"just_now": "Just now",
"ago_m": "m ago",
"ago_h": "h ago"
},
ru: {
// Meta
"app_title": "MindShift",
"app_subtitle": "Ваш личный помощник КПТ",
"init_loading": "Загрузка MindShift...",
"init_error": "Ошибка загрузки",
"proactive_badge": "✨ Время проверить настроение?",
// Navigation
"nav_home": "Главная",
"nav_mood": "Настроение",
"nav_thoughts": "Мысли",
"nav_gratitude": "Благодарность",
"nav_progress": "Прогресс",
// Auth
"auth_welcome": "Добро пожаловать в MindShift",
"auth_login": "Войти",
"auth_register": "Регистрация",
"auth_name": "Имя",
"auth_email": "Email",
"auth_password": "Пароль",
"auth_no_account": "Нет аккаунта?",
"auth_has_account": "Уже есть аккаунт?",
"auth_login_failed": "Ошибка входа",
"auth_reg_failed": "Ошибка регистрации",
// Home
"home_welcome": "С возвращением! 🌟",
"home_subtitle": "Готовы изменить мышление?",
"home_log_mood": "Настроение",
"home_record_thought": "Запись мыслей",
"home_gratitude": "Благодарность",
"home_daily_vibe": "Статистика дня 📊",
"home_quick_relief": "Быстрая помощь 🌿",
"home_breathe": "Дыхание",
"home_relax": "Релакс",
"home_stats_mood": "Настроение",
"home_stats_sessions": "Сессии",
"home_stats_avg": "Ср. за неделю",
"home_stats_gratitude": "Благодарности",
"home_retry": "Повторить",
// Mood
"mood_title": "Как вы себя чувствуете?",
"mood_joy": "Радость",
"mood_peace": "Покой",
"mood_energy": "Энергия",
"mood_anxiety": "Тревога",
"mood_sadness": "Грусть",
"mood_anger": "Гнев",
"mood_intensity": "Интенсивность",
"mood_notes_placeholder": "О чем думаете?",
"mood_save": "Сохранить",
"mood_saved_success": "Настроение сохранено!",
"mood_select_warning": "Выберите настроение",
// Thoughts
"thought_title": "Дневник мыслей 🧠",
"thought_situation": "Ситуация (Кто, что, где, когда?)",
"thought_automatic": "Автоматические мысли (Что пришло в голову?)",
"thought_emotions": "Эмоции",
"thought_add_emotion": "+ Добавить эмоцию",
"thought_evidence": "За и Против",
"thought_alternative": "Альтернативная мысль",
"thought_save": "Сохранить запись",
"thought_saved_success": "Запись сохранена!",
"thought_fill_warning": "Заполните ситуацию и мысли",
// Gratitude
"gratitude_title": "Дневник благодарности 🙏",
"gratitude_intro": "3 вещи, за которые вы благодарны:",
"gratitude_placeholder": "Я благодарен за...",
"gratitude_add": "+ Добавить еще",
"gratitude_save": "Сохранить",
"gratitude_saved_success": "Записи сохранены!",
"gratitude_empty_warning": "Добавьте хотя бы одну запись",
// Progress & History
"progress_title": "Ваш прогресс 📈",
"progress_weekly": "Настроение за неделю 📅",
"progress_history": "История 📜",
"history_tab_moods": "Настроение",
"history_tab_thoughts": "Мысли",
"history_tab_gratitude": "Благодарность",
"history_empty_mood": "Нет записей. Начните отслеживать! 📝",
"history_empty_thoughts": "Нет записей мыслей. 🧠",
"history_empty_gratitude": "Нет записей благодарности. 🙏",
"history_select_prompt": "Выберите категорию для просмотра",
// Quick Actions
"quick_title": "Быстрые действия ⚡",
"quick_relax_now": "Релакс сейчас",
"close": "Закрыть",
// Guided Relaxation
"guided_sight_title": "Зрение",
"guided_sight_instruction": "Оглянитесь вокруг.",
"guided_sight_sub": "Найдите 5 вещей, которые вы видите.",
"guided_touch_title": "Осязание",
"guided_touch_instruction": "Почувствуйте текстуры.",
"guided_touch_sub": "Найдите 4 вещи, которые можно потрогать.",
"guided_sound_title": "Слух",
"guided_sound_instruction": "Прислушайтесь.",
"guided_sound_sub": "Найдите 3 звука, которые вы слышите.",
"guided_smell_title": "Обоняние",
"guided_smell_instruction": "Сделайте глубокий вдох.",
"guided_smell_sub": "Найдите 2 запаха.",
"guided_taste_title": "Вкус",
"guided_taste_instruction": "Сосредоточьтесь на вкусе.",
"guided_taste_sub": "Найдите 1 вещь, которую можно попробовать.",
"guided_found_btn": "Найдено",
"guided_complete_title": "Отлично!",
"guided_complete_sub": "Чувствуете себя спокойнее?",
"guided_complete_btn": "Завершить",
// Smart Breathing
"breath_balance": "Баланс",
"breath_relax": "Релакс",
"breath_focus": "Фокус",
"breath_in": "Вдох",
"breath_out": "Выдох",
"breath_hold": "Пауза",
"breath_ready": "Приготовьтесь...",
"breath_sit": "Сядьте удобно",
"breath_complete": "Сессия завершена! 🌬️",
// Notifications
"notifications_empty": "Нет уведомлений",
"just_now": "Только что",
"ago_m": "м назад",
"ago_h": "ч назад"
},
he: {
// Meta
"app_title": "MindShift",
"app_subtitle": "המאמן האישי שלך ל-CBT",
"init_loading": "טוען MindShift...",
"init_error": "שגיאה בטעינת האפליקציה",
"proactive_badge": "✨ זמן לבדיקת מצב רוח?",
// Navigation
"nav_home": "בית",
"nav_mood": "מצב רוח",
"nav_thoughts": "מחשבות",
"nav_gratitude": "הוקרת תודה",
"nav_progress": "התקדמות",
// Auth
"auth_welcome": "ברוכים הבאים ל-MindShift",
"auth_login": "התחברות",
"auth_register": "הרשמה",
"auth_name": "שם",
"auth_email": "אימייל",
"auth_password": "סיסמה",
"auth_no_account": "אין לך חשבון?",
"auth_has_account": "יש לך כבר חשבון?",
"auth_login_failed": "התחברות נכשלה",
"auth_reg_failed": "הרשמה נכשלה",
// Home
"home_welcome": "ברוכים השבים! 🌟",
"home_subtitle": "מוכנים לשינוי מחשבתי?",
"home_log_mood": "יומן מצב רוח",
"home_record_thought": "יומן מחשבות",
"home_gratitude": "הוקרת תודה",
"home_daily_vibe": "בדיקה יומית 📊",
"home_quick_relief": "הקלה מהירה 🌿",
"home_breathe": "נשימה",
"home_relax": "הרפיה",
"home_stats_mood": "מצב רוח",
"home_stats_sessions": "אימונים",
"home_stats_avg": "ממוצע שבועי",
"home_stats_gratitude": "תודות",
"home_retry": "לחץ לנסות שוב",
// Mood
"mood_title": "איך אתם מרגישים?",
"mood_joy": "שמחה",
"mood_peace": "שלווה",
"mood_energy": "אנרגיה",
"mood_anxiety": "חרדה",
"mood_sadness": "עצב",
"mood_anger": "כעס",
"mood_intensity": "עוצמה",
"mood_notes_placeholder": "מחשבות נוספות?",
"mood_save": "שמור מצב רוח",
"mood_saved_success": "מצב רוח נשמר בהצלחה!",
"mood_select_warning": "אנא בחר מצב רוח",
// Thoughts
"thought_title": "יומן מחשבות 🧠",
"thought_situation": "סיטואציה (מי, מה, איפה, מתי?)",
"thought_automatic": "מחשבות אוטומטיות (מה עבר בראש?)",
"thought_emotions": "רגשות",
"thought_add_emotion": "+ הוסף רגש",
"thought_evidence": "בעד ונגד",
"thought_alternative": "מחשבה אלטרנטיבית",
"thought_save": "שמור רשומה",
"thought_saved_success": "הרשומה נשמרה בהצלחה!",
"thought_fill_warning": "אנא מלא לפחות את הסיטואציה והמחשבות",
// Gratitude
"gratitude_title": "יומן הוקרת תודה 🙏",
"gratitude_intro": "3 דברים שאתם מוקירים עליהם תודה היום:",
"gratitude_placeholder": "אני מוקיר תודה על...",
"gratitude_add": "+ הוסף עוד",
"gratitude_save": "שמור",
"gratitude_saved_success": "נשמר בהצלחה!",
"gratitude_empty_warning": "אנא הוסף לפחות פריט אחד",
// Progress & History
"progress_title": "ההתקדמות שלך 📈",
"progress_weekly": "מצב רוח שבועי 📅",
"progress_history": "היסטוריה 📜",
"history_tab_moods": "מצבי רוח",
"history_tab_thoughts": "מחשבות",
"history_tab_gratitude": "תודות",
"history_empty_mood": "אין עדיין רשומות. התחילו לתעד! 📝",
"history_empty_thoughts": "אין עדיין רשומות מחשבה. 🧠",
"history_empty_gratitude": "אין עדיין רשומות תודה. 🙏",
"history_select_prompt": "בחר קטגוריה לצפייה בהיסטוריה",
// Quick Actions
"quick_title": "פעולות מהירות ⚡",
"quick_relax_now": "הרפיה עכשיו",
"close": "סגור",
// Guided Relaxation
"guided_sight_title": "ראייה",
"guided_sight_instruction": "הביטו סביבכם.",
"guided_sight_sub": "מצאו 5 דברים שאתם רואים.",
"guided_touch_title": "מגע",
"guided_touch_instruction": "הרגישו מרקמים.",
"guided_touch_sub": "מצאו 4 דברים שאפשר לגעת בהם.",
"guided_sound_title": "שמיעה",
"guided_sound_instruction": "הקשיבו בתשומת לב.",
"guided_sound_sub": "זהו 3 צלילים שאתם שומעים.",
"guided_smell_title": "ריח",
"guided_smell_instruction": "קחו נשימה עמוקה.",
"guided_smell_sub": "שימו לב ל-2 ריחות.",
"guided_taste_title": "טעם",
"guided_taste_instruction": "התמקדו בפה.",
"guided_taste_sub": "מצאו דבר 1 שניתן לטעום.",
"guided_found_btn": "מצאתי",
"guided_complete_title": "כל הכבוד!",
"guided_complete_sub": "מרגישים מקורקעים יותר?",
"guided_complete_btn": "סיים",
// Smart Breathing
"breath_balance": "איזון",
"breath_relax": "רוגע",
"breath_focus": "מיקוד",
"breath_in": "שאיפה",
"breath_out": "נשיפה",
"breath_hold": "החזקה",
"breath_ready": "היכונו...",
"breath_sit": "שבו בנוחות",
"breath_complete": "אימון נשימה הסתיים! 🌬️",
// Notifications
"notifications_empty": "אין התראות",
"just_now": "כרגע",
"ago_m": "לפני דק'",
"ago_h": "לפני שע'"
}
};