import { DeviceType } from './types'
import {
  IconServer,
  IconRouter,
  IconDeviceDesktop,
  IconCloud,
  IconNotes,
  IconMap,
  IconShield,
  IconDatabase,
  IconDeviceMobile,
} from '@tabler/icons-vue'

/** 设备类型配置 */
export const DEVICE_TYPE_CONFIG: Record<DeviceType, { icon: any; label: string; color: string }> = {
  server: { icon: IconServer, label: '服务器', color: '#3B82F6' },
  router: { icon: IconRouter, label: '路由器', color: '#F59E0B' },
  switch: { icon: IconDeviceDesktop, label: '交换机', color: '#10B981' },
  desktop: { icon: IconDeviceDesktop, label: '终端', color: '#8B5CF6' },
  cloud: { icon: IconCloud, label: '云端节点', color: '#06B6D4' },
  text: { icon: IconNotes, label: '文本标注', color: '#6B7280' },
  region: { icon: IconMap, label: '区域', color: '#EF4444' },
}

/** 扩展设备类型配置（包含更多设备） */
export const EXTENDED_DEVICE_CONFIG = {
  ...DEVICE_TYPE_CONFIG,
  firewall: { icon: IconShield, label: '防火墙', color: '#DC2626' },
  storage: { icon: IconDatabase, label: '存储设备', color: '#7C3AED' },
  mobile: { icon: IconDeviceMobile, label: '移动设备', color: '#EC4899' },
}

/** 侧边栏宽度 */
export const DRAWER_WIDTH = 280
