// pangolin_icons.dart — Lucide 图标映射表
import 'package:flutter/widgets.dart';
import 'package:lucide_icons/lucide_icons.dart';

class PangolinIcons {
  PangolinIcons._();

  // ── 连接 / 状态 ──
  static const power        = LucideIcons.power;
  static const shieldCheck  = LucideIcons.shieldCheck;
  static const shield       = LucideIcons.shield;
  static const loader       = LucideIcons.loader;
  static const zap          = LucideIcons.zap;
  static const globe        = LucideIcons.globe;
  static const clock        = LucideIcons.clock;
  static const playCircle   = LucideIcons.playCircle;
  static const wifi         = LucideIcons.wifi;

  // ── 导航 / 操作 ──
  static const settings     = LucideIcons.settings;
  static const eye          = LucideIcons.eye;
  static const eyeOff       = LucideIcons.eyeOff;
  static const user         = LucideIcons.user;
  static const search       = LucideIcons.search;
  static const check        = LucideIcons.check;
  static const checkCircle  = LucideIcons.checkCircle;
  static const x            = LucideIcons.x;
  static const chevronRight = LucideIcons.chevronRight;
  static const chevronDown  = LucideIcons.chevronDown;
  static const arrowLeft    = LucideIcons.arrowLeft;
  static const arrowUp      = LucideIcons.arrowUp;
  static const arrowDown    = LucideIcons.arrowDown;
  static const refreshCw    = LucideIcons.refreshCw;
  static const compass      = LucideIcons.compass;
  static const barChart     = LucideIcons.barChart;
  static const mapPin       = LucideIcons.mapPin;

  // ── 主题 ──
  static const moon         = LucideIcons.moon;
  static const sun          = LucideIcons.sun;

  // ── 账户 / 套餐 / 兑换 ──
  static const crown        = LucideIcons.crown;
  static const ticket       = LucideIcons.ticket;
  static const creditCard   = LucideIcons.creditCard;
  static const shoppingBag  = LucideIcons.shoppingBag;
  static const mail         = LucideIcons.mail;
  static const lock         = LucideIcons.lock;
  static const logOut       = LucideIcons.logOut;
  static const send         = LucideIcons.send;
  static const messageCircle= LucideIcons.messageCircle;
  static const externalLink = LucideIcons.externalLink;

  // ── 设备 ──
  static const laptop       = LucideIcons.laptop;
  static const smartphone   = LucideIcons.smartphone;
  static const monitorSmartphone = LucideIcons.smartphone; // 回退

  static IconData? byName(String name) => _byName[name];

  static const Map<String, IconData> _byName = {
    'power': power, 'shield-check': shieldCheck, 'shield': shield, 'loader-circle': loader,
    'zap': zap, 'globe': globe, 'settings': settings, 'user': user, 'search': search,
    'check': check, 'check-circle': checkCircle, 'x': x, 'chevron-right': chevronRight,
    'chevron-down': chevronDown, 'arrow-left': arrowLeft, 'arrow-up': arrowUp, 'arrow-down': arrowDown,
    'refresh-cw': refreshCw, 'compass': compass, 'chart-no-axes-column': barChart, 'chart': barChart,
    'map-pin': mapPin, 'moon': moon, 'sun': sun, 'crown': crown, 'ticket': ticket,
    'credit-card': creditCard, 'shopping-bag': shoppingBag, 'mail': mail, 'lock': lock,
    'log-out': logOut, 'send': send, 'message-circle': messageCircle, 'external-link': externalLink,
    'laptop': laptop, 'smartphone': smartphone, 'monitor-smartphone': monitorSmartphone,
  };
}
