/**
 * 环境配置工具
 */

// 环境类型
export const ENV_TYPES = {
  DEVELOPMENT: 'development',
  TEST: 'test',
}

// 获取当前用户Token
export function getUserAuth() {
  return import.meta.env.VITE_USER_AUTH
}

// 获取当前环境
export function getCurrentEnv() {
  return import.meta.env.VITE_NODE_ENV || import.meta.env.MODE || ENV_TYPES.DEVELOPMENT
}

// 获取 API 基础 URL
export function getApiBaseUrl() {
  return import.meta.env.VITE_API_BASE_URL || 'https://api.azizichat.com'
}

// 获取应用标题
export function getAppTitle() {
  return import.meta.env.VITE_APP_TITLE || 'Likei H5'
}

// 是否为开发环境
export function isDevelopment() {
  return getCurrentEnv() === ENV_TYPES.DEVELOPMENT
}

// 是否为测试环境
export function isTest() {
  return getCurrentEnv() === ENV_TYPES.TEST
}

// 是否为生产环境
export function isProduction() {
  return getCurrentEnv() === ENV_TYPES.PRODUCTION
}

// 是否启用调试模式
export function isDebugMode() {
  return isDevelopment() || isTest()
}

// 获取完整的环境配置
export function getEnvConfig() {
  return {
    env: getCurrentEnv(),
    apiBaseUrl: getApiBaseUrl(),
    appTitle: getAppTitle(),
    isDevelopment: isDevelopment(),
    isTest: isTest(),
    isProduction: isProduction(),
    isDebugMode: isDebugMode(),
  }
}

// 打印环境信息
export function logEnvInfo() {
  const config = getEnvConfig()
  console.group('🔧 Environment Configuration')
  console.log('📦 Environment:', config.env)
  console.log('📱 App Title:', config.appTitle)
  if (config.isDebugMode) {
    console.log('🐛 Debug Mode:', config.isDebugMode)
    console.log('🌐 API Base URL:', config.apiBaseUrl)
  }
  console.groupEnd()
}
