Files
iot-device-management-frontend/packages/effects/hooks/src/use-app-config.ts

37 lines
933 B
TypeScript
Raw Normal View History

import type {
ApplicationConfig,
VbenAdminProAppConfigRaw,
} from '@vben/types/global';
/**
* vite-inject-app-config
*/
export function useAppConfig(
env: Record<string, any>,
isProduction: boolean,
): ApplicationConfig {
// 生产环境下,直接使用 window._VBEN_ADMIN_PRO_APP_CONF_ 全局变量
const config = isProduction
? window._VBEN_ADMIN_PRO_APP_CONF_
: (env as VbenAdminProAppConfigRaw);
2025-07-25 22:02:55 +08:00
const {
VITE_GLOB_API_URL,
VITE_GLOB_AUTH_DINGDING_CORP_ID,
VITE_GLOB_AUTH_DINGDING_CLIENT_ID,
} = config;
2025-07-25 22:02:55 +08:00
const applicationConfig: ApplicationConfig = {
apiURL: VITE_GLOB_API_URL,
2025-07-25 22:02:55 +08:00
auth: {},
};
2025-07-25 22:02:55 +08:00
if (VITE_GLOB_AUTH_DINGDING_CORP_ID && VITE_GLOB_AUTH_DINGDING_CLIENT_ID) {
applicationConfig.auth.dingding = {
clientId: VITE_GLOB_AUTH_DINGDING_CLIENT_ID,
corpId: VITE_GLOB_AUTH_DINGDING_CORP_ID,
};
}
return applicationConfig;
}