Skip to main content

yggdrasil/components/ui/
icons_data.rs

1// 由 libs/shared/scripts/generate-icons.ts 从 lucide-static 1.57.0(ISC)生成,勿手改。
2// 新增图标:在 libs/shared/src/icons.ts 的 ICONS 中添加后运行 `bun run icons`。
3
4/// Lucide 图标名。渲染见 [`super::Icon`]。
5#[allow(dead_code)] // 图标随页面重写逐步启用
6#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
7pub enum IconName {
8    Search,
9    X,
10    Menu,
11    PanelLeft,
12    PanelRight,
13    House,
14    LayoutDashboard,
15    Ellipsis,
16    Command,
17    Keyboard,
18    Sun,
19    Moon,
20    Monitor,
21    ChevronDown,
22    ChevronUp,
23    ChevronLeft,
24    ChevronRight,
25    ArrowLeft,
26    ArrowRight,
27    ArrowUp,
28    ArrowDown,
29    ArrowUpRight,
30    ExternalLink,
31    CornerDownLeft,
32    Copy,
33    Check,
34    Plus,
35    Minus,
36    Pencil,
37    Trash,
38    Save,
39    Send,
40    Reply,
41    Upload,
42    Download,
43    RotateCcw,
44    RotateCw,
45    RotateCcwClock,
46    RefreshCw,
47    GripVertical,
48    Funnel,
49    SlidersHorizontal,
50    List,
51    ZoomIn,
52    ZoomOut,
53    Eye,
54    EyeOff,
55    Image,
56    ImageOff,
57    Play,
58    Square,
59    LoaderCircle,
60    CircleCheck,
61    CircleAlert,
62    TriangleAlert,
63    Info,
64    Terminal,
65    FileText,
66    FileX,
67    BookOpen,
68    NotebookPen,
69    MessageSquare,
70    Tag,
71    Calendar,
72    Clock,
73    Link,
74    Rss,
75    Archive,
76    Folder,
77    Inbox,
78    SearchX,
79    User,
80    Users,
81    Lock,
82    KeyRound,
83    Plug,
84    Shield,
85    LogOut,
86    Settings,
87    Mail,
88    Github,
89    AtSign,
90    Database,
91    Server,
92    Cpu,
93    HardDrive,
94    ChartColumn,
95    Activity,
96}
97
98impl IconName {
99    /// 全部图标,供图鉴与测试遍历。
100    #[allow(dead_code)]
101    pub const ALL: [IconName; 88] = [
102        IconName::Search,
103        IconName::X,
104        IconName::Menu,
105        IconName::PanelLeft,
106        IconName::PanelRight,
107        IconName::House,
108        IconName::LayoutDashboard,
109        IconName::Ellipsis,
110        IconName::Command,
111        IconName::Keyboard,
112        IconName::Sun,
113        IconName::Moon,
114        IconName::Monitor,
115        IconName::ChevronDown,
116        IconName::ChevronUp,
117        IconName::ChevronLeft,
118        IconName::ChevronRight,
119        IconName::ArrowLeft,
120        IconName::ArrowRight,
121        IconName::ArrowUp,
122        IconName::ArrowDown,
123        IconName::ArrowUpRight,
124        IconName::ExternalLink,
125        IconName::CornerDownLeft,
126        IconName::Copy,
127        IconName::Check,
128        IconName::Plus,
129        IconName::Minus,
130        IconName::Pencil,
131        IconName::Trash,
132        IconName::Save,
133        IconName::Send,
134        IconName::Reply,
135        IconName::Upload,
136        IconName::Download,
137        IconName::RotateCcw,
138        IconName::RotateCw,
139        IconName::RotateCcwClock,
140        IconName::RefreshCw,
141        IconName::GripVertical,
142        IconName::Funnel,
143        IconName::SlidersHorizontal,
144        IconName::List,
145        IconName::ZoomIn,
146        IconName::ZoomOut,
147        IconName::Eye,
148        IconName::EyeOff,
149        IconName::Image,
150        IconName::ImageOff,
151        IconName::Play,
152        IconName::Square,
153        IconName::LoaderCircle,
154        IconName::CircleCheck,
155        IconName::CircleAlert,
156        IconName::TriangleAlert,
157        IconName::Info,
158        IconName::Terminal,
159        IconName::FileText,
160        IconName::FileX,
161        IconName::BookOpen,
162        IconName::NotebookPen,
163        IconName::MessageSquare,
164        IconName::Tag,
165        IconName::Calendar,
166        IconName::Clock,
167        IconName::Link,
168        IconName::Rss,
169        IconName::Archive,
170        IconName::Folder,
171        IconName::Inbox,
172        IconName::SearchX,
173        IconName::User,
174        IconName::Users,
175        IconName::Lock,
176        IconName::KeyRound,
177        IconName::Plug,
178        IconName::Shield,
179        IconName::LogOut,
180        IconName::Settings,
181        IconName::Mail,
182        IconName::Github,
183        IconName::AtSign,
184        IconName::Database,
185        IconName::Server,
186        IconName::Cpu,
187        IconName::HardDrive,
188        IconName::ChartColumn,
189        IconName::Activity,
190    ];
191
192    /// Lucide 原名,如 `arrow-up-right`。
193    pub const fn slug(self) -> &'static str {
194        match self {
195            IconName::Search => "search",
196            IconName::X => "x",
197            IconName::Menu => "menu",
198            IconName::PanelLeft => "panel-left",
199            IconName::PanelRight => "panel-right",
200            IconName::House => "house",
201            IconName::LayoutDashboard => "layout-dashboard",
202            IconName::Ellipsis => "ellipsis",
203            IconName::Command => "command",
204            IconName::Keyboard => "keyboard",
205            IconName::Sun => "sun",
206            IconName::Moon => "moon",
207            IconName::Monitor => "monitor",
208            IconName::ChevronDown => "chevron-down",
209            IconName::ChevronUp => "chevron-up",
210            IconName::ChevronLeft => "chevron-left",
211            IconName::ChevronRight => "chevron-right",
212            IconName::ArrowLeft => "arrow-left",
213            IconName::ArrowRight => "arrow-right",
214            IconName::ArrowUp => "arrow-up",
215            IconName::ArrowDown => "arrow-down",
216            IconName::ArrowUpRight => "arrow-up-right",
217            IconName::ExternalLink => "external-link",
218            IconName::CornerDownLeft => "corner-down-left",
219            IconName::Copy => "copy",
220            IconName::Check => "check",
221            IconName::Plus => "plus",
222            IconName::Minus => "minus",
223            IconName::Pencil => "pencil",
224            IconName::Trash => "trash",
225            IconName::Save => "save",
226            IconName::Send => "send",
227            IconName::Reply => "reply",
228            IconName::Upload => "upload",
229            IconName::Download => "download",
230            IconName::RotateCcw => "rotate-ccw",
231            IconName::RotateCw => "rotate-cw",
232            IconName::RotateCcwClock => "rotate-ccw-clock",
233            IconName::RefreshCw => "refresh-cw",
234            IconName::GripVertical => "grip-vertical",
235            IconName::Funnel => "funnel",
236            IconName::SlidersHorizontal => "sliders-horizontal",
237            IconName::List => "list",
238            IconName::ZoomIn => "zoom-in",
239            IconName::ZoomOut => "zoom-out",
240            IconName::Eye => "eye",
241            IconName::EyeOff => "eye-off",
242            IconName::Image => "image",
243            IconName::ImageOff => "image-off",
244            IconName::Play => "play",
245            IconName::Square => "square",
246            IconName::LoaderCircle => "loader-circle",
247            IconName::CircleCheck => "circle-check",
248            IconName::CircleAlert => "circle-alert",
249            IconName::TriangleAlert => "triangle-alert",
250            IconName::Info => "info",
251            IconName::Terminal => "terminal",
252            IconName::FileText => "file-text",
253            IconName::FileX => "file-x",
254            IconName::BookOpen => "book-open",
255            IconName::NotebookPen => "notebook-pen",
256            IconName::MessageSquare => "message-square",
257            IconName::Tag => "tag",
258            IconName::Calendar => "calendar",
259            IconName::Clock => "clock",
260            IconName::Link => "link",
261            IconName::Rss => "rss",
262            IconName::Archive => "archive",
263            IconName::Folder => "folder",
264            IconName::Inbox => "inbox",
265            IconName::SearchX => "search-x",
266            IconName::User => "user",
267            IconName::Users => "users",
268            IconName::Lock => "lock",
269            IconName::KeyRound => "key-round",
270            IconName::Plug => "plug",
271            IconName::Shield => "shield",
272            IconName::LogOut => "log-out",
273            IconName::Settings => "settings",
274            IconName::Mail => "mail",
275            IconName::Github => "github",
276            IconName::AtSign => "at-sign",
277            IconName::Database => "database",
278            IconName::Server => "server",
279            IconName::Cpu => "cpu",
280            IconName::HardDrive => "hard-drive",
281            IconName::ChartColumn => "chart-column",
282            IconName::Activity => "activity",
283        }
284    }
285
286    /// `<svg>` 内部标记(24×24 视口,描边绘制)。
287    pub(crate) const fn body(self) -> &'static str {
288        match self {
289            IconName::Search => "<path d=\"m21 21-4.34-4.34\"/><circle cx=\"11\" cy=\"11\" r=\"8\"/>",
290            IconName::X => "<path d=\"M18 6 6 18\"/><path d=\"m6 6 12 12\"/>",
291            IconName::Menu => "<path d=\"M4 5h16\"/><path d=\"M4 12h16\"/><path d=\"M4 19h16\"/>",
292            IconName::PanelLeft => "<rect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\"/><path d=\"M9 3v18\"/>",
293            IconName::PanelRight => "<rect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\"/><path d=\"M15 3v18\"/>",
294            IconName::House => "<path d=\"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8\"/><path d=\"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z\"/>",
295            IconName::LayoutDashboard => "<rect width=\"7\" height=\"9\" x=\"3\" y=\"3\" rx=\"1\"/><rect width=\"7\" height=\"5\" x=\"14\" y=\"3\" rx=\"1\"/><rect width=\"7\" height=\"9\" x=\"14\" y=\"12\" rx=\"1\"/><rect width=\"7\" height=\"5\" x=\"3\" y=\"16\" rx=\"1\"/>",
296            IconName::Ellipsis => "<circle cx=\"12\" cy=\"12\" r=\"1\"/><circle cx=\"19\" cy=\"12\" r=\"1\"/><circle cx=\"5\" cy=\"12\" r=\"1\"/>",
297            IconName::Command => "<path d=\"M15 6v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3\"/>",
298            IconName::Keyboard => "<path d=\"M10 8h.01\"/><path d=\"M12 12h.01\"/><path d=\"M14 8h.01\"/><path d=\"M16 12h.01\"/><path d=\"M18 8h.01\"/><path d=\"M6 8h.01\"/><path d=\"M7 16h10\"/><path d=\"M8 12h.01\"/><rect width=\"20\" height=\"16\" x=\"2\" y=\"4\" rx=\"2\"/>",
299            IconName::Sun => "<circle cx=\"12\" cy=\"12\" r=\"4\"/><path d=\"M12 2v2\"/><path d=\"M12 20v2\"/><path d=\"m4.93 4.93 1.41 1.41\"/><path d=\"m17.66 17.66 1.41 1.41\"/><path d=\"M2 12h2\"/><path d=\"M20 12h2\"/><path d=\"m6.34 17.66-1.41 1.41\"/><path d=\"m19.07 4.93-1.41 1.41\"/>",
300            IconName::Moon => "<path d=\"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401\"/>",
301            IconName::Monitor => "<rect width=\"20\" height=\"14\" x=\"2\" y=\"3\" rx=\"2\"/><line x1=\"8\" x2=\"16\" y1=\"21\" y2=\"21\"/><line x1=\"12\" x2=\"12\" y1=\"17\" y2=\"21\"/>",
302            IconName::ChevronDown => "<path d=\"m6 9 6 6 6-6\"/>",
303            IconName::ChevronUp => "<path d=\"m18 15-6-6-6 6\"/>",
304            IconName::ChevronLeft => "<path d=\"m15 18-6-6 6-6\"/>",
305            IconName::ChevronRight => "<path d=\"m9 18 6-6-6-6\"/>",
306            IconName::ArrowLeft => "<path d=\"m12 19-7-7 7-7\"/><path d=\"M19 12H5\"/>",
307            IconName::ArrowRight => "<path d=\"M5 12h14\"/><path d=\"m12 5 7 7-7 7\"/>",
308            IconName::ArrowUp => "<path d=\"m5 12 7-7 7 7\"/><path d=\"M12 19V5\"/>",
309            IconName::ArrowDown => "<path d=\"M12 5v14\"/><path d=\"m19 12-7 7-7-7\"/>",
310            IconName::ArrowUpRight => "<path d=\"M7 7h10v10\"/><path d=\"M7 17 17 7\"/>",
311            IconName::ExternalLink => "<path d=\"M15 3h6v6\"/><path d=\"M10 14 21 3\"/><path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\"/>",
312            IconName::CornerDownLeft => "<path d=\"M20 4v7a4 4 0 0 1-4 4H4\"/><path d=\"m9 10-5 5 5 5\"/>",
313            IconName::Copy => "<rect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\" ry=\"2\"/><path d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"/>",
314            IconName::Check => "<path d=\"M20 6 9 17l-5-5\"/>",
315            IconName::Plus => "<path d=\"M5 12h14\"/><path d=\"M12 5v14\"/>",
316            IconName::Minus => "<path d=\"M5 12h14\"/>",
317            IconName::Pencil => "<path d=\"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z\"/><path d=\"m15 5 4 4\"/>",
318            IconName::Trash => "<path d=\"M10 11v6\"/><path d=\"M14 11v6\"/><path d=\"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6\"/><path d=\"M3 6h18\"/><path d=\"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\"/>",
319            IconName::Save => "<path d=\"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z\"/><path d=\"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7\"/><path d=\"M7 3v4a1 1 0 0 0 1 1h7\"/>",
320            IconName::Send => "<path d=\"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z\"/><path d=\"m21.854 2.147-10.94 10.939\"/>",
321            IconName::Reply => "<path d=\"M20 18v-2a4 4 0 0 0-4-4H4\"/><path d=\"m9 17-5-5 5-5\"/>",
322            IconName::Upload => "<path d=\"M12 3v12\"/><path d=\"m17 8-5-5-5 5\"/><path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\"/>",
323            IconName::Download => "<path d=\"M12 15V3\"/><path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\"/><path d=\"m7 10 5 5 5-5\"/>",
324            IconName::RotateCcw => "<path d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\"/><path d=\"M3 3v5h5\"/>",
325            IconName::RotateCw => "<path d=\"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8\"/><path d=\"M21 3v5h-5\"/>",
326            IconName::RotateCcwClock => "<path d=\"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8\"/><path d=\"M3 3v5h5\"/><path d=\"M12 7v5l4 2\"/>",
327            IconName::RefreshCw => "<path d=\"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8\"/><path d=\"M21 3v5h-5\"/><path d=\"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16\"/><path d=\"M8 16H3v5\"/>",
328            IconName::GripVertical => "<circle cx=\"9\" cy=\"12\" r=\"1\"/><circle cx=\"9\" cy=\"5\" r=\"1\"/><circle cx=\"9\" cy=\"19\" r=\"1\"/><circle cx=\"15\" cy=\"12\" r=\"1\"/><circle cx=\"15\" cy=\"5\" r=\"1\"/><circle cx=\"15\" cy=\"19\" r=\"1\"/>",
329            IconName::Funnel => "<path d=\"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z\"/>",
330            IconName::SlidersHorizontal => "<path d=\"M10 5H3\"/><path d=\"M12 19H3\"/><path d=\"M14 3v4\"/><path d=\"M16 17v4\"/><path d=\"M21 12h-9\"/><path d=\"M21 19h-5\"/><path d=\"M21 5h-7\"/><path d=\"M8 10v4\"/><path d=\"M8 12H3\"/>",
331            IconName::List => "<path d=\"M3 5h.01\"/><path d=\"M3 12h.01\"/><path d=\"M3 19h.01\"/><path d=\"M8 5h13\"/><path d=\"M8 12h13\"/><path d=\"M8 19h13\"/>",
332            IconName::ZoomIn => "<circle cx=\"11\" cy=\"11\" r=\"8\"/><line x1=\"21\" x2=\"16.65\" y1=\"21\" y2=\"16.65\"/><line x1=\"11\" x2=\"11\" y1=\"8\" y2=\"14\"/><line x1=\"8\" x2=\"14\" y1=\"11\" y2=\"11\"/>",
333            IconName::ZoomOut => "<circle cx=\"11\" cy=\"11\" r=\"8\"/><line x1=\"21\" x2=\"16.65\" y1=\"21\" y2=\"16.65\"/><line x1=\"8\" x2=\"14\" y1=\"11\" y2=\"11\"/>",
334            IconName::Eye => "<path d=\"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0\"/><circle cx=\"12\" cy=\"12\" r=\"3\"/>",
335            IconName::EyeOff => "<path d=\"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49\"/><path d=\"M14.084 14.158a3 3 0 0 1-4.242-4.242\"/><path d=\"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143\"/><path d=\"m2 2 20 20\"/>",
336            IconName::Image => "<rect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\" ry=\"2\"/><circle cx=\"9\" cy=\"9\" r=\"2\"/><path d=\"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21\"/>",
337            IconName::ImageOff => "<line x1=\"2\" x2=\"22\" y1=\"2\" y2=\"22\"/><path d=\"M10.41 10.41a2 2 0 1 1-2.83-2.83\"/><line x1=\"13.5\" x2=\"6\" y1=\"13.5\" y2=\"21\"/><line x1=\"18\" x2=\"21\" y1=\"12\" y2=\"15\"/><path d=\"M3.59 3.59A1.99 1.99 0 0 0 3 5v14a2 2 0 0 0 2 2h14c.55 0 1.052-.22 1.41-.59\"/><path d=\"M21 15V5a2 2 0 0 0-2-2H9\"/>",
338            IconName::Play => "<path d=\"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z\"/>",
339            IconName::Square => "<rect width=\"18\" height=\"18\" x=\"3\" y=\"3\" rx=\"2\"/>",
340            IconName::LoaderCircle => "<path d=\"M21 12a9 9 0 1 1-6.219-8.56\"/>",
341            IconName::CircleCheck => "<circle cx=\"12\" cy=\"12\" r=\"10\"/><path d=\"m16 9-5.5 5.5L8 12\"/>",
342            IconName::CircleAlert => "<circle cx=\"12\" cy=\"12\" r=\"10\"/><line x1=\"12\" x2=\"12\" y1=\"8\" y2=\"12\"/><line x1=\"12\" x2=\"12.01\" y1=\"16\" y2=\"16\"/>",
343            IconName::TriangleAlert => "<path d=\"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3\"/><path d=\"M12 9v4\"/><path d=\"M12 17h.01\"/>",
344            IconName::Info => "<circle cx=\"12\" cy=\"12\" r=\"10\"/><path d=\"M12 16v-4\"/><path d=\"M12 8h.01\"/>",
345            IconName::Terminal => "<path d=\"M12 19h8\"/><path d=\"m4 17 6-6-6-6\"/>",
346            IconName::FileText => "<path d=\"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\"/><path d=\"M14 2v5a1 1 0 0 0 1 1h5\"/><path d=\"M10 9H8\"/><path d=\"M16 13H8\"/><path d=\"M16 17H8\"/>",
347            IconName::FileX => "<path d=\"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\"/><path d=\"M14 2v5a1 1 0 0 0 1 1h5\"/><path d=\"m14.5 12.5-5 5\"/><path d=\"m9.5 12.5 5 5\"/>",
348            IconName::BookOpen => "<path d=\"M12 5v16\"/><path d=\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\"/>",
349            IconName::NotebookPen => "<path d=\"M13.4 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7.4\"/><path d=\"M2 6h4\"/><path d=\"M2 10h4\"/><path d=\"M2 14h4\"/><path d=\"M2 18h4\"/><path d=\"M21.378 5.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z\"/>",
350            IconName::MessageSquare => "<path d=\"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z\"/>",
351            IconName::Tag => "<path d=\"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z\"/><circle cx=\"7.5\" cy=\"7.5\" r=\".5\" fill=\"currentColor\"/>",
352            IconName::Calendar => "<path d=\"M8 2v3\"/><path d=\"M16 2v3\"/><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\"/><path d=\"M3 9h18\"/>",
353            IconName::Clock => "<circle cx=\"12\" cy=\"12\" r=\"10\"/><path d=\"M12 6v6l4 2\"/>",
354            IconName::Link => "<path d=\"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71\"/><path d=\"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71\"/>",
355            IconName::Rss => "<path d=\"M4 11a9 9 0 0 1 9 9\"/><path d=\"M4 4a16 16 0 0 1 16 16\"/><circle cx=\"5\" cy=\"19\" r=\"1\"/>",
356            IconName::Archive => "<rect width=\"20\" height=\"5\" x=\"2\" y=\"3\" rx=\"1\"/><path d=\"M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8\"/><path d=\"M10 12h4\"/>",
357            IconName::Folder => "<path d=\"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z\"/>",
358            IconName::Inbox => "<polyline points=\"22 12 16 12 14 15 10 15 8 12 2 12\"/><path d=\"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z\"/>",
359            IconName::SearchX => "<path d=\"m13.5 8.5-5 5\"/><path d=\"m8.5 8.5 5 5\"/><circle cx=\"11\" cy=\"11\" r=\"8\"/><path d=\"m21 21-4.3-4.3\"/>",
360            IconName::User => "<path d=\"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2\"/><circle cx=\"12\" cy=\"7\" r=\"4\"/>",
361            IconName::Users => "<path d=\"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\"/><path d=\"M16 3.128a4 4 0 0 1 0 7.744\"/><path d=\"M22 21v-2a4 4 0 0 0-3-3.87\"/><circle cx=\"9\" cy=\"7\" r=\"4\"/>",
362            IconName::Lock => "<rect width=\"18\" height=\"11\" x=\"3\" y=\"11\" rx=\"2\" ry=\"2\"/><path d=\"M7 11V7a5 5 0 0 1 10 0v4\"/>",
363            IconName::KeyRound => "<path d=\"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z\"/><circle cx=\"16.5\" cy=\"7.5\" r=\".5\" fill=\"currentColor\"/>",
364            IconName::Plug => "<path d=\"M12 22v-5\"/><path d=\"M15 8V2\"/><path d=\"M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z\"/><path d=\"M9 8V2\"/>",
365            IconName::Shield => "<path d=\"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z\"/>",
366            IconName::LogOut => "<path d=\"m16 17 5-5-5-5\"/><path d=\"M21 12H9\"/><path d=\"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4\"/>",
367            IconName::Settings => "<path d=\"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915\"/><circle cx=\"12\" cy=\"12\" r=\"3\"/>",
368            IconName::Mail => "<path d=\"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7\"/><rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/>",
369            IconName::Github => "<path d=\"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.4 5.4 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4\"/><path d=\"M9 18c-4.51 2-5-2-7-2\"/>",
370            IconName::AtSign => "<circle cx=\"12\" cy=\"12\" r=\"4\"/><path d=\"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8\"/>",
371            IconName::Database => "<ellipse cx=\"12\" cy=\"5\" rx=\"9\" ry=\"3\"/><path d=\"M3 5V19A9 3 0 0 0 21 19V5\"/><path d=\"M3 12A9 3 0 0 0 21 12\"/>",
372            IconName::Server => "<rect width=\"20\" height=\"8\" x=\"2\" y=\"2\" rx=\"2\" ry=\"2\"/><rect width=\"20\" height=\"8\" x=\"2\" y=\"14\" rx=\"2\" ry=\"2\"/><line x1=\"6\" x2=\"6.01\" y1=\"6\" y2=\"6\"/><line x1=\"6\" x2=\"6.01\" y1=\"18\" y2=\"18\"/>",
373            IconName::Cpu => "<path d=\"M12 20v2\"/><path d=\"M12 2v2\"/><path d=\"M17 20v2\"/><path d=\"M17 2v2\"/><path d=\"M2 12h2\"/><path d=\"M2 17h2\"/><path d=\"M2 7h2\"/><path d=\"M20 12h2\"/><path d=\"M20 17h2\"/><path d=\"M20 7h2\"/><path d=\"M7 20v2\"/><path d=\"M7 2v2\"/><rect x=\"4\" y=\"4\" width=\"16\" height=\"16\" rx=\"2\"/><rect x=\"8\" y=\"8\" width=\"8\" height=\"8\" rx=\"1\"/>",
374            IconName::HardDrive => "<path d=\"M10 16h.01\"/><path d=\"M2.212 11.577a2 2 0 0 0-.212.896V18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-5.527a2 2 0 0 0-.212-.896L18.55 5.11A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z\"/><path d=\"M21.946 12.013H2.054\"/><path d=\"M6 16h.01\"/>",
375            IconName::ChartColumn => "<path d=\"M3 3v16a2 2 0 0 0 2 2h16\"/><path d=\"M18 17V9\"/><path d=\"M13 17V5\"/><path d=\"M8 17v-3\"/>",
376            IconName::Activity => "<path d=\"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2\"/>",
377        }
378    }
379}