| | |
| | | import { initPreferences } from './packages/preferences/src'; |
| | | import { initPreferences, preferencesManager } from './packages/preferences/src'; |
| | | import { unmountGlobalLoading } from './packages/utils/src'; |
| | | |
| | | import { overridesPreferences, preferencesExtension } from './preferences'; |
| | |
| | | overrides: overridesPreferences, |
| | | }); |
| | | |
| | | // 通过环境变量强制覆盖公司 logo 和 favicon,绕过缓存 |
| | | const envLogo = import.meta.env.VITE_APP_LOGO; |
| | | const envFavicon = import.meta.env.VITE_APP_FAVICON; |
| | | if (envLogo) { |
| | | preferencesManager.updatePreferences({ logo: { source: envLogo } }); |
| | | } |
| | | if (envFavicon) { |
| | | const link = document.querySelector('link[rel="icon"]'); |
| | | if (link) { |
| | | link.setAttribute('href', envFavicon); |
| | | } |
| | | } |
| | | |
| | | // 启动应用并挂载 |
| | | // vue应用主要逻辑及视图 |
| | | const { bootstrap } = await import('./bootstrap'); |
| | |
| | | import { defineConfig } from "./internal/vite-config/src"; |
| | | import { companies } from "./company.config"; |
| | | |
| | | const appLogo = process.env.COMPANY ? companies[process.env.COMPANY]?.logo : undefined; |
| | | const company = companies[process.env.COMPANY || '']; |
| | | if (company) { |
| | | process.env.VITE_APP_LOGO = company.logo; |
| | | process.env.VITE_APP_FAVICON = company.favicon; |
| | | } |
| | | |
| | | export default defineConfig(async () => { |
| | | return { |
| | | application: {}, |
| | | vite: { |
| | | define: { |
| | | 'import.meta.env.VITE_APP_LOGO': JSON.stringify(appLogo ?? ''), |
| | | }, |
| | | resolve: { |
| | | alias: { |
| | | '@vue-office/pdf': resolve(__dirname, 'node_modules/@vue-office/pdf/lib/v3/vue-office-pdf.mjs'), |