various bundle optimizations (#1549)

* fix: missing "@element-plus/icons-vue" dependency

* fix: update vite (40% faster builds)

* fix: don't include sentry in non-nightly builds

* fix: swap to variable fonts & don't include font files in repo

* fix: lazy load languages to not keep them in memory

* nit: revert vite to stable

* nit: retain `.json` message files in bundle

* nit: remove bundle analyzer

* fix: availableLocales does not include unloaded locales
This commit is contained in:
Aries
2026-01-03 23:51:00 -07:00
committed by GitHub
parent 327e7d9b58
commit b02d287190
38 changed files with 574 additions and 619 deletions

View File

@@ -10,17 +10,17 @@
<el-dropdown trigger="click" size="small" style="float: right" @click.stop>
<el-button size="small">
<span>
{{ messages[bioLanguage]?.language || bioLanguage }}
{{ getLanguageName(bioLanguage) || bioLanguage }}
<el-icon class="el-icon--right"><ArrowDown /></el-icon>
</span>
</el-button>
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item
v-for="(obj, language) in messages"
v-for="language in languageCodes"
:key="language"
@click="setBioLanguage(language)"
v-text="obj.language" />
v-text="getLanguageName(language)" />
</el-dropdown-menu>
</template>
</el-dropdown>
@@ -108,6 +108,7 @@
import { storeToRefs } from 'pinia';
import { useI18n } from 'vue-i18n';
import { getLanguageName, languageCodes } from '../../../localization';
import { openExternalLink } from '../../../shared/utils';
import { useAdvancedSettingsStore } from '../../../stores';
@@ -132,7 +133,7 @@
setTranslationApiPrompt
} = advancedSettingsStore;
const { messages, t } = useI18n();
const { t } = useI18n();
const props = defineProps({
isTranslationApiDialogVisible: {