Compare commits

..

No commits in common. "1f7abcbd85211dda680f280649d9ff9aaca9639b" and "76446cf84e875fc89e7e7836f525284c37fc722c" have entirely different histories.

4 changed files with 13 additions and 30 deletions

View File

@ -1,11 +1,11 @@
import en from './en.json'; import en from './en.json'; // Changed from enUS and path
import de from './de.json'; import de from './de.json';
import fr from './fr.json'; import fr from './fr.json';
import es from './es.json'; import es from './es.json';
export default { export default {
en, 'en': en, // Changed from 'en-US': enUS
de, 'de': de,
fr, 'fr': fr,
es 'es': es
}; };

View File

@ -5,10 +5,7 @@ import { BrowserTracing } from '@sentry/tracing';
import App from './App.vue'; import App from './App.vue';
import router from './router'; import router from './router';
import { createI18n } from 'vue-i18n'; import { createI18n } from 'vue-i18n';
import enMessages from './i18n/en.json'; // Import en.json directly import messages from '@/i18n';
import deMessages from './i18n/de.json';
import frMessages from './i18n/fr.json';
import esMessages from './i18n/es.json';
// Global styles // Global styles
import './assets/main.scss'; import './assets/main.scss';
@ -29,15 +26,10 @@ import { useAuthStore } from '@/stores/auth';
// // export interface DefineNumberFormat {} // // export interface DefineNumberFormat {}
// // } // // }
const i18n = createI18n({ const i18n = createI18n({
legacy: false, // Recommended for Vue 3 legacy: false, // Recommended for Vue 3
locale: 'en', // Default locale locale: 'en', // Default locale
fallbackLocale: 'en', // Fallback locale fallbackLocale: 'en', // Fallback locale
messages: { messages,
en: enMessages,
de: deMessages,
fr: frMessages,
es: esMessages,
},
}); });
const app = createApp(App); const app = createApp(App);

View File

@ -57,16 +57,8 @@ const router = useRouter();
const route = useRoute(); const route = useRoute();
const authStore = useAuthStore(); const authStore = useAuthStore();
const notificationStore = useNotificationStore(); const notificationStore = useNotificationStore();
const { t, locale, messages } = useI18n();
// Debug output const { t } = useI18n();
console.log('=== i18n Debug Info ===');
console.log('Current locale:', locale.value);
console.log('Available messages:', messages.value);
console.log('English messages:', messages.value.en);
console.log('LoginPage messages:', messages.value.en?.loginPage);
console.log('Test translation:', t('loginPage.emailLabel'));
console.log('Test fallback:', t('message.hello'));
const email = ref(''); const email = ref('');
const password = ref(''); const password = ref('');

View File

@ -44,7 +44,7 @@ const pwaOptions: Partial<VitePWAOptions> = {
'dev-sw.js', 'dev-sw.js',
'index.html', 'index.html',
], ],
maximumFileSizeToCacheInBytes: 15 * 1024 * 1024, // 5MB maximumFileSizeToCacheInBytes: 5 * 1024 * 1024, // 5MB
}, },
workbox: { workbox: {
cleanupOutdatedCaches: true, cleanupOutdatedCaches: true,
@ -57,10 +57,9 @@ export default defineConfig({
vue(), vue(),
VitePWA(pwaOptions), VitePWA(pwaOptions),
VueI18nPlugin({ VueI18nPlugin({
include: [path.resolve(path.dirname(fileURLToPath(import.meta.url)), './src/i18n/**.json')], include: [path.resolve(path.dirname(fileURLToPath(import.meta.url)), './src/i18n/**')],
strictMessage: false, strictMessage: false,
runtimeOnly: false, runtimeOnly: false,
compositionOnly: false,
}), }),
], ],
resolve: { resolve: {