Merge remote-tracking branch 'origin/dev_pro2.0' into dev_pro2.0
| | |
| | | VITE_COMPANY=TEST |
| | | |
| | | VITE_BASE=/ |
| | | |
| | | # 请æ±è·¯å¾ |
| | |
| | | name: string; |
| | | /** logo å¾çè·¯å¾ï¼ç¸å¯¹äº public ç®å½ */ |
| | | logo: string; |
| | | /** ç½é¡µæ é¢å¾æ è·¯å¾ï¼ç¸å¯¹äº public ç®å½ */ |
| | | favicon: string; |
| | | } |
| | | |
| | | /** |
| | | * ææå
¬å¸é
ç½® |
| | | * æ°å¢å
¬å¸åªéå¨ä¸é¢å ä¸è¡å³å¯ |
| | | * |
| | | * æå
ï¼è®°å¾å¨å¨deploy.batæä»¶ä¸å°set "COMPANY=TEST"æ¹åå |
| | | * æå
å½ä»¤ï¼deploy.bat ä¸ä¿®æ¹ set "COMPANY=å
¬å¸key" |
| | | * 示ä¾ï¼set "COMPANY=TEST" |
| | | */ |
| | | export const companies: Record<string, CompanyConfig> = { |
| | | TEST: { name: 'æµè¯å
¬å¸', logo: '/logos/TEST.png' }, |
| | | TEST: { name: 'æµè¯å
¬å¸', logo: '/logos/TEST.png', favicon: '/logos/TEST.ico' }, |
| | | }; |
| | |
| | | echo [STEP 1/3] Building project for %COMPANY%... |
| | | echo [INFO] Running: pnpm run build |
| | | echo. |
| | | set COMPANY=%COMPANY% && call pnpm run build |
| | | set "COMPANY=!COMPANY!" && call pnpm run build |
| | | if !errorlevel! neq 0 ( |
| | | echo [ERROR] Build failed! Check your project configuration. |
| | | goto :error_exit |
| | |
| | | |
| | | import { $t } from '#/locales'; |
| | | |
| | | declare const __APP_LOGO__: string; |
| | | |
| | | const appName = computed(() => preferences.app.name); |
| | | const logo = computed(() => preferences.logo.source); |
| | | const logo = computed(() => __APP_LOGO__ || preferences.logo.source); |
| | | const logoDark = computed(() => preferences.logo.sourceDark); |
| | | </script> |
| | | |
| | |
| | | import { initPreferences } from './packages/preferences/src'; |
| | | import { initPreferences, preferencesManager } from './packages/preferences/src'; |
| | | import { unmountGlobalLoading } from './packages/utils/src'; |
| | | |
| | | import { overridesPreferences, preferencesExtension } from './preferences'; |
| | | |
| | | declare const __APP_LOGO__: string; |
| | | declare const __APP_FAVICON__: string; |
| | | |
| | | /** |
| | | * åºç¨åå§å宿ä¹ååè¿è¡é¡µé¢å 载渲æ |
| | |
| | | overrides: overridesPreferences, |
| | | }); |
| | | |
| | | // 强å¶è¦çå
¬å¸ logo å faviconï¼ç»è¿ localStorage ç¼å |
| | | if (__APP_LOGO__) { |
| | | preferencesManager.updatePreferences({ logo: { source: __APP_LOGO__ } }); |
| | | } |
| | | if (__APP_FAVICON__) { |
| | | const link = document.querySelector('link[rel="icon"]'); |
| | | if (link) { |
| | | link.setAttribute('href', __APP_FAVICON__); |
| | | } |
| | | } |
| | | |
| | | // å¯å¨åºç¨å¹¶æè½½ |
| | | // vueåºç¨ä¸»è¦é»è¾åè§å¾ |
| | | const { bootstrap } = await import('./bootstrap'); |
| | |
| | | definePreferencesExtension, |
| | | } from './packages/preferences/src'; |
| | | |
| | | declare const __APP_LOGO__: string; |
| | | |
| | | interface WebAntdPreferencesExtension { |
| | | defaultTableSize: number; |
| | | enableFormFullscreen: boolean; |
| | |
| | | companySiteLink: 'https://gitee.com/yudaocode/yudao-ui-admin-vben', |
| | | }, |
| | | logo: { |
| | | source: import.meta.env.VITE_APP_LOGO || undefined, |
| | | source: __APP_LOGO__ || undefined, |
| | | }, |
| | | tabbar: { |
| | | /** å·æ°æµè§å¨ååªä¿çå½å页é¢ï¼ä¸æä¹
åæææ ç¾é¡µ */ |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | declare const __APP_LOGO__: string; |
| | | declare const __APP_FAVICON__: string; |
| | |
| | | import { resolve } from "node:path"; |
| | | import { loadEnv } from "vite"; |
| | | import { defineConfig } from "./internal/vite-config/src"; |
| | | import { companies } from "./company.config"; |
| | | |
| | | const appLogo = process.env.COMPANY ? companies[process.env.COMPANY]?.logo : undefined; |
| | | /** å
¬å¸é
ç½®ï¼æ°å¢å
¬å¸åªéå ä¸è¡ï¼logo å¾çæ¾ public/logos/ ç®å½ */ |
| | | const companyConfigs: Record<string, { favicon: string; logo: string; name: string }> = { |
| | | TEST: { name: 'æµè¯å
¬å¸', logo: '/logos/TEST.png', favicon: '/logos/TEST.ico' }, |
| | | }; |
| | | |
| | | export default defineConfig(async () => { |
| | | export default defineConfig(async ({ mode }) => { |
| | | const env = loadEnv(mode, process.cwd(), 'VITE_'); |
| | | const companyKey = env.VITE_COMPANY || ''; |
| | | const company = companyConfigs[companyKey]; |
| | | const appLogo = company?.logo ?? ''; |
| | | const appFavicon = company?.favicon ?? ''; |
| | | console.log('[company]', companyKey, '-> logo:', appLogo, 'favicon:', appFavicon); |
| | | |
| | | return { |
| | | application: {}, |
| | | vite: { |
| | | define: { |
| | | 'import.meta.env.VITE_APP_LOGO': JSON.stringify(appLogo ?? ''), |
| | | __APP_LOGO__: JSON.stringify(appLogo), |
| | | __APP_FAVICON__: JSON.stringify(appFavicon), |
| | | }, |
| | | resolve: { |
| | | alias: { |