1
0

icon.py 28 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513
  1. """Lucide Icon component."""
  2. from reflex.components.component import Component
  3. from reflex.utils import format
  4. from reflex.vars.base import Var
  5. class LucideIconComponent(Component):
  6. """Lucide Icon Component."""
  7. library = "lucide-react@0.359.0"
  8. class Icon(LucideIconComponent):
  9. """An Icon component."""
  10. tag = "None"
  11. # The size of the icon in pixels.
  12. size: Var[int]
  13. @classmethod
  14. def create(cls, *children, **props) -> Component:
  15. """Initialize the Icon component.
  16. Run some additional checks on Icon component.
  17. Args:
  18. *children: The positional arguments
  19. **props: The keyword arguments
  20. Raises:
  21. AttributeError: The errors tied to bad usage of the Icon component.
  22. ValueError: If the icon tag is invalid.
  23. Returns:
  24. The created component.
  25. """
  26. if children:
  27. if len(children) == 1 and isinstance(children[0], str):
  28. props["tag"] = children[0]
  29. children = []
  30. else:
  31. raise AttributeError(
  32. f"Passing multiple children to Icon component is not allowed: remove positional arguments {children[1:]} to fix"
  33. )
  34. if "tag" not in props:
  35. raise AttributeError("Missing 'tag' keyword-argument for Icon")
  36. if (
  37. not isinstance(props["tag"], str)
  38. or format.to_snake_case(props["tag"]) not in LUCIDE_ICON_LIST
  39. ):
  40. raise ValueError(
  41. f"Invalid icon tag: {props['tag']}. Please use one of the following: {', '.join(LUCIDE_ICON_LIST[0:25])}, ..."
  42. "\nSee full list at https://lucide.dev/icons."
  43. )
  44. props["tag"] = format.to_title_case(format.to_snake_case(props["tag"])) + "Icon"
  45. props["alias"] = f"Lucide{props['tag']}"
  46. props.setdefault("color", "var(--current-color)")
  47. return super().create(*children, **props)
  48. LUCIDE_ICON_LIST = [
  49. "a_arrow_down",
  50. "a_arrow_up",
  51. "a_large_small",
  52. "accessibility",
  53. "activity",
  54. "air_vent",
  55. "airplay",
  56. "alarm_clock",
  57. "alarm_clock_check",
  58. "alarm_clock_minus",
  59. "alarm_clock_off",
  60. "alarm_clock_plus",
  61. "alarm_smoke",
  62. "album",
  63. "align_center",
  64. "align_center_horizontal",
  65. "align_center_vertical",
  66. "align_end_horizontal",
  67. "align_end_vertical",
  68. "align_horizontal_distribute_center",
  69. "align_horizontal_distribute_end",
  70. "align_horizontal_distribute_start",
  71. "align_horizontal_justify_center",
  72. "align_horizontal_justify_end",
  73. "align_horizontal_justify_start",
  74. "align_horizontal_space_around",
  75. "align_horizontal_space_between",
  76. "align_justify",
  77. "align_left",
  78. "align_right",
  79. "align_start_horizontal",
  80. "align_start_vertical",
  81. "align_vertical_distribute_center",
  82. "align_vertical_distribute_end",
  83. "align_vertical_distribute_start",
  84. "align_vertical_justify_center",
  85. "align_vertical_justify_end",
  86. "align_vertical_justify_start",
  87. "align_vertical_space_around",
  88. "align_vertical_space_between",
  89. "ambulance",
  90. "ampersand",
  91. "ampersands",
  92. "anchor",
  93. "angry",
  94. "annoyed",
  95. "antenna",
  96. "anvil",
  97. "aperture",
  98. "app_window",
  99. "app_window_mac",
  100. "apple",
  101. "archive",
  102. "archive_restore",
  103. "archive_x",
  104. "area_chart",
  105. "armchair",
  106. "arrow_big_down",
  107. "arrow_big_down_dash",
  108. "arrow_big_left",
  109. "arrow_big_left_dash",
  110. "arrow_big_right",
  111. "arrow_big_right_dash",
  112. "arrow_big_up",
  113. "arrow_big_up_dash",
  114. "arrow_down",
  115. "arrow_down_0_1",
  116. "arrow_down_1_0",
  117. "arrow_down_a_z",
  118. "arrow_down_from_line",
  119. "arrow_down_left",
  120. "arrow_down_narrow_wide",
  121. "arrow_down_right",
  122. "arrow_down_to_dot",
  123. "arrow_down_to_line",
  124. "arrow_down_up",
  125. "arrow_down_wide_narrow",
  126. "arrow_down_z_a",
  127. "arrow_left",
  128. "arrow_left_from_line",
  129. "arrow_left_right",
  130. "arrow_left_to_line",
  131. "arrow_right",
  132. "arrow_right_from_line",
  133. "arrow_right_left",
  134. "arrow_right_to_line",
  135. "arrow_up",
  136. "arrow_up_0_1",
  137. "arrow_up_1_0",
  138. "arrow_up_a_z",
  139. "arrow_up_down",
  140. "arrow_up_from_dot",
  141. "arrow_up_from_line",
  142. "arrow_up_left",
  143. "arrow_up_narrow_wide",
  144. "arrow_up_right",
  145. "arrow_up_to_line",
  146. "arrow_up_wide_narrow",
  147. "arrow_up_z_a",
  148. "arrows_up_from_line",
  149. "asterisk",
  150. "at_sign",
  151. "atom",
  152. "audio_lines",
  153. "audio_waveform",
  154. "award",
  155. "axe",
  156. "axis_3d",
  157. "baby",
  158. "backpack",
  159. "badge",
  160. "badge_alert",
  161. "badge_cent",
  162. "badge_check",
  163. "badge_dollar_sign",
  164. "badge_euro",
  165. "badge_help",
  166. "badge_indian_rupee",
  167. "badge_info",
  168. "badge_japanese_yen",
  169. "badge_minus",
  170. "badge_percent",
  171. "badge_plus",
  172. "badge_pound_sterling",
  173. "badge_russian_ruble",
  174. "badge_swiss_franc",
  175. "badge_x",
  176. "baggage_claim",
  177. "ban",
  178. "banana",
  179. "banknote",
  180. "bar_chart",
  181. "bar_chart_2",
  182. "bar_chart_3",
  183. "bar_chart_4",
  184. "bar_chart_big",
  185. "bar_chart_horizontal",
  186. "bar_chart_horizontal_big",
  187. "barcode",
  188. "baseline",
  189. "bath",
  190. "battery",
  191. "battery_charging",
  192. "battery_full",
  193. "battery_low",
  194. "battery_medium",
  195. "battery_warning",
  196. "beaker",
  197. "bean",
  198. "bean_off",
  199. "bed",
  200. "bed_double",
  201. "bed_single",
  202. "beef",
  203. "beer",
  204. "beer_off",
  205. "bell",
  206. "bell_dot",
  207. "bell_electric",
  208. "bell_minus",
  209. "bell_off",
  210. "bell_plus",
  211. "bell_ring",
  212. "between_horizontal_end",
  213. "between_horizontal_start",
  214. "between_vertical_end",
  215. "between_vertical_start",
  216. "bike",
  217. "binary",
  218. "biohazard",
  219. "bird",
  220. "bitcoin",
  221. "blend",
  222. "blinds",
  223. "blocks",
  224. "bluetooth",
  225. "bluetooth_connected",
  226. "bluetooth_off",
  227. "bluetooth_searching",
  228. "bold",
  229. "bolt",
  230. "bomb",
  231. "bone",
  232. "book",
  233. "book_a",
  234. "book_audio",
  235. "book_check",
  236. "book_copy",
  237. "book_dashed",
  238. "book_down",
  239. "book_headphones",
  240. "book_heart",
  241. "book_image",
  242. "book_key",
  243. "book_lock",
  244. "book_marked",
  245. "book_minus",
  246. "book_open",
  247. "book_open_check",
  248. "book_open_text",
  249. "book_plus",
  250. "book_text",
  251. "book_type",
  252. "book_up",
  253. "book_up_2",
  254. "book_user",
  255. "book_x",
  256. "bookmark",
  257. "bookmark_check",
  258. "bookmark_minus",
  259. "bookmark_plus",
  260. "bookmark_x",
  261. "boom_box",
  262. "bot",
  263. "bot_message_square",
  264. "box",
  265. "box_select",
  266. "boxes",
  267. "braces",
  268. "brackets",
  269. "brain",
  270. "brain_circuit",
  271. "brain_cog",
  272. "brick_wall",
  273. "briefcase",
  274. "briefcase_business",
  275. "briefcase_medical",
  276. "bring_to_front",
  277. "brush",
  278. "bug",
  279. "bug_off",
  280. "bug_play",
  281. "building",
  282. "building_2",
  283. "bus",
  284. "bus_front",
  285. "cable",
  286. "cable_car",
  287. "cake",
  288. "cake_slice",
  289. "calculator",
  290. "calendar",
  291. "calendar_check",
  292. "calendar_check_2",
  293. "calendar_clock",
  294. "calendar_days",
  295. "calendar_fold",
  296. "calendar_heart",
  297. "calendar_minus",
  298. "calendar_minus_2",
  299. "calendar_off",
  300. "calendar_plus",
  301. "calendar_plus_2",
  302. "calendar_range",
  303. "calendar_search",
  304. "calendar_x",
  305. "calendar_x_2",
  306. "camera",
  307. "camera_off",
  308. "candlestick_chart",
  309. "candy",
  310. "candy_cane",
  311. "candy_off",
  312. "cannabis",
  313. "captions",
  314. "captions_off",
  315. "car",
  316. "car_front",
  317. "car_taxi_front",
  318. "caravan",
  319. "carrot",
  320. "case_lower",
  321. "case_sensitive",
  322. "case_upper",
  323. "cassette_tape",
  324. "cast",
  325. "castle",
  326. "cat",
  327. "cctv",
  328. "check",
  329. "check_check",
  330. "chef_hat",
  331. "cherry",
  332. "chevron_down",
  333. "chevron_first",
  334. "chevron_last",
  335. "chevron_left",
  336. "chevron_right",
  337. "chevron_up",
  338. "chevrons_down",
  339. "chevrons_down_up",
  340. "chevrons_left",
  341. "chevrons_left_right",
  342. "chevrons_right",
  343. "chevrons_right_left",
  344. "chevrons_up",
  345. "chevrons_up_down",
  346. "chrome",
  347. "church",
  348. "cigarette",
  349. "cigarette_off",
  350. "circle",
  351. "circle_alert",
  352. "circle_arrow_down",
  353. "circle_arrow_left",
  354. "circle_arrow_out_down_left",
  355. "circle_arrow_out_down_right",
  356. "circle_arrow_out_up_left",
  357. "circle_arrow_out_up_right",
  358. "circle_arrow_right",
  359. "circle_arrow_up",
  360. "circle_check_big",
  361. "circle_check",
  362. "circle_chevron_down",
  363. "circle_chevron_left",
  364. "circle_chevron_right",
  365. "circle_chevron_up",
  366. "circle_dashed",
  367. "circle_divide",
  368. "circle_dollar_sign",
  369. "circle_dot",
  370. "circle_dot_dashed",
  371. "circle_ellipsis",
  372. "circle_equal",
  373. "circle_fading_plus",
  374. "circle_gauge",
  375. "circle_help",
  376. "circle_minus",
  377. "circle_off",
  378. "circle_parking_off",
  379. "circle_parking",
  380. "circle_pause",
  381. "circle_percent",
  382. "circle_play",
  383. "circle_plus",
  384. "circle_power",
  385. "circle_slash",
  386. "circle_slash_2",
  387. "circle_stop",
  388. "circle_user",
  389. "circle_user_round",
  390. "circle_x",
  391. "circuit_board",
  392. "citrus",
  393. "clapperboard",
  394. "clipboard",
  395. "clipboard_check",
  396. "clipboard_copy",
  397. "clipboard_list",
  398. "clipboard_minus",
  399. "clipboard_paste",
  400. "clipboard_pen",
  401. "clipboard_pen_line",
  402. "clipboard_plus",
  403. "clipboard_type",
  404. "clipboard_x",
  405. "clock",
  406. "clock_1",
  407. "clock_10",
  408. "clock_11",
  409. "clock_12",
  410. "clock_2",
  411. "clock_3",
  412. "clock_4",
  413. "clock_5",
  414. "clock_6",
  415. "clock_7",
  416. "clock_8",
  417. "clock_9",
  418. "cloud",
  419. "cloud_cog",
  420. "cloud_download",
  421. "cloud_drizzle",
  422. "cloud_fog",
  423. "cloud_hail",
  424. "cloud_lightning",
  425. "cloud_moon",
  426. "cloud_moon_rain",
  427. "cloud_off",
  428. "cloud_rain",
  429. "cloud_rain_wind",
  430. "cloud_snow",
  431. "cloud_sun",
  432. "cloud_sun_rain",
  433. "cloud_upload",
  434. "cloudy",
  435. "clover",
  436. "club",
  437. "code",
  438. "code_xml",
  439. "codepen",
  440. "codesandbox",
  441. "coffee",
  442. "cog",
  443. "coins",
  444. "columns_2",
  445. "columns_3",
  446. "columns_4",
  447. "combine",
  448. "command",
  449. "compass",
  450. "component",
  451. "computer",
  452. "concierge_bell",
  453. "cone",
  454. "construction",
  455. "contact",
  456. "contact_round",
  457. "container",
  458. "contrast",
  459. "cookie",
  460. "cooking_pot",
  461. "copy",
  462. "copy_check",
  463. "copy_minus",
  464. "copy_plus",
  465. "copy_slash",
  466. "copy_x",
  467. "copyleft",
  468. "copyright",
  469. "corner_down_left",
  470. "corner_down_right",
  471. "corner_left_down",
  472. "corner_left_up",
  473. "corner_right_down",
  474. "corner_right_up",
  475. "corner_up_left",
  476. "corner_up_right",
  477. "cpu",
  478. "creative_commons",
  479. "credit_card",
  480. "croissant",
  481. "crop",
  482. "cross",
  483. "crosshair",
  484. "crown",
  485. "cuboid",
  486. "cup_soda",
  487. "currency",
  488. "cylinder",
  489. "database",
  490. "database_backup",
  491. "database_zap",
  492. "delete",
  493. "dessert",
  494. "diameter",
  495. "diamond",
  496. "diamond_percent",
  497. "dice_1",
  498. "dice_2",
  499. "dice_3",
  500. "dice_4",
  501. "dice_5",
  502. "dice_6",
  503. "dices",
  504. "diff",
  505. "disc",
  506. "disc_2",
  507. "disc_3",
  508. "disc_album",
  509. "divide",
  510. "dna",
  511. "dna_off",
  512. "dock",
  513. "dog",
  514. "dollar_sign",
  515. "donut",
  516. "door_closed",
  517. "door_open",
  518. "dot",
  519. "download",
  520. "drafting_compass",
  521. "drama",
  522. "dribbble",
  523. "drill",
  524. "droplet",
  525. "droplets",
  526. "drum",
  527. "drumstick",
  528. "dumbbell",
  529. "ear",
  530. "ear_off",
  531. "earth",
  532. "earth_lock",
  533. "eclipse",
  534. "egg",
  535. "egg_fried",
  536. "egg_off",
  537. "ellipsis",
  538. "ellipsis_vertical",
  539. "equal",
  540. "equal_not",
  541. "eraser",
  542. "euro",
  543. "expand",
  544. "external_link",
  545. "eye",
  546. "eye_off",
  547. "facebook",
  548. "factory",
  549. "fan",
  550. "fast_forward",
  551. "feather",
  552. "fence",
  553. "ferris_wheel",
  554. "figma",
  555. "file",
  556. "file_archive",
  557. "file_audio",
  558. "file_audio_2",
  559. "file_axis_3d",
  560. "file_badge",
  561. "file_badge_2",
  562. "file_bar_chart",
  563. "file_bar_chart_2",
  564. "file_box",
  565. "file_check",
  566. "file_check_2",
  567. "file_clock",
  568. "file_code",
  569. "file_code_2",
  570. "file_cog",
  571. "file_diff",
  572. "file_digit",
  573. "file_down",
  574. "file_heart",
  575. "file_image",
  576. "file_input",
  577. "file_json",
  578. "file_json_2",
  579. "file_key",
  580. "file_key_2",
  581. "file_line_chart",
  582. "file_lock",
  583. "file_lock_2",
  584. "file_minus",
  585. "file_minus_2",
  586. "file_music",
  587. "file_output",
  588. "file_pen",
  589. "file_pen_line",
  590. "file_pie_chart",
  591. "file_plus",
  592. "file_plus_2",
  593. "file_question",
  594. "file_scan",
  595. "file_search",
  596. "file_search_2",
  597. "file_sliders",
  598. "file_spreadsheet",
  599. "file_stack",
  600. "file_symlink",
  601. "file_terminal",
  602. "file_text",
  603. "file_type",
  604. "file_type_2",
  605. "file_up",
  606. "file_video",
  607. "file_video_2",
  608. "file_volume",
  609. "file_volume_2",
  610. "file_warning",
  611. "file_x",
  612. "file_x_2",
  613. "files",
  614. "film",
  615. "filter",
  616. "filter_x",
  617. "fingerprint",
  618. "fire_extinguisher",
  619. "fish",
  620. "fish_off",
  621. "fish_symbol",
  622. "flag",
  623. "flag_off",
  624. "flag_triangle_left",
  625. "flag_triangle_right",
  626. "flame",
  627. "flame_kindling",
  628. "flashlight",
  629. "flashlight_off",
  630. "flask_conical",
  631. "flask_conical_off",
  632. "flask_round",
  633. "flip_horizontal",
  634. "flip_horizontal_2",
  635. "flip_vertical",
  636. "flip_vertical_2",
  637. "flower",
  638. "flower_2",
  639. "focus",
  640. "fold_horizontal",
  641. "fold_vertical",
  642. "folder",
  643. "folder_archive",
  644. "folder_check",
  645. "folder_clock",
  646. "folder_closed",
  647. "folder_cog",
  648. "folder_dot",
  649. "folder_down",
  650. "folder_git",
  651. "folder_git_2",
  652. "folder_heart",
  653. "folder_input",
  654. "folder_kanban",
  655. "folder_key",
  656. "folder_lock",
  657. "folder_minus",
  658. "folder_open",
  659. "folder_open_dot",
  660. "folder_output",
  661. "folder_pen",
  662. "folder_plus",
  663. "folder_root",
  664. "folder_search",
  665. "folder_search_2",
  666. "folder_symlink",
  667. "folder_sync",
  668. "folder_tree",
  669. "folder_up",
  670. "folder_x",
  671. "folders",
  672. "footprints",
  673. "forklift",
  674. "forward",
  675. "frame",
  676. "framer",
  677. "frown",
  678. "fuel",
  679. "fullscreen",
  680. "gallery_horizontal",
  681. "gallery_horizontal_end",
  682. "gallery_thumbnails",
  683. "gallery_vertical",
  684. "gallery_vertical_end",
  685. "gamepad",
  686. "gamepad_2",
  687. "gantt_chart",
  688. "gauge",
  689. "gavel",
  690. "gem",
  691. "ghost",
  692. "gift",
  693. "git_branch",
  694. "git_branch_plus",
  695. "git_commit_horizontal",
  696. "git_commit_vertical",
  697. "git_compare",
  698. "git_compare_arrows",
  699. "git_fork",
  700. "git_graph",
  701. "git_merge",
  702. "git_pull_request",
  703. "git_pull_request_arrow",
  704. "git_pull_request_closed",
  705. "git_pull_request_create",
  706. "git_pull_request_create_arrow",
  707. "git_pull_request_draft",
  708. "github",
  709. "gitlab",
  710. "glass_water",
  711. "glasses",
  712. "globe",
  713. "globe_lock",
  714. "goal",
  715. "grab",
  716. "graduation_cap",
  717. "grape",
  718. "grid_2x2",
  719. "grid_3x3",
  720. "grip",
  721. "grip_horizontal",
  722. "grip_vertical",
  723. "group",
  724. "guitar",
  725. "ham",
  726. "hammer",
  727. "hand",
  728. "hand_coins",
  729. "hand_heart",
  730. "hand_helping",
  731. "hand_metal",
  732. "hand_platter",
  733. "handshake",
  734. "hard_drive",
  735. "hard_drive_download",
  736. "hard_drive_upload",
  737. "hard_hat",
  738. "hash",
  739. "haze",
  740. "hdmi_port",
  741. "heading",
  742. "heading_1",
  743. "heading_2",
  744. "heading_3",
  745. "heading_4",
  746. "heading_5",
  747. "heading_6",
  748. "headphones",
  749. "headset",
  750. "heart",
  751. "heart_crack",
  752. "heart_handshake",
  753. "heart_off",
  754. "heart_pulse",
  755. "heater",
  756. "hexagon",
  757. "highlighter",
  758. "history",
  759. "home",
  760. "hop",
  761. "hop_off",
  762. "hospital",
  763. "hotel",
  764. "hourglass",
  765. "ice_cream_bowl",
  766. "ice_cream_cone",
  767. "image",
  768. "image_down",
  769. "image_minus",
  770. "image_off",
  771. "image_plus",
  772. "image_up",
  773. "images",
  774. "import",
  775. "inbox",
  776. "indent_decrease",
  777. "indent_increase",
  778. "indian_rupee",
  779. "infinity",
  780. "info",
  781. "inspection_panel",
  782. "instagram",
  783. "italic",
  784. "iteration_ccw",
  785. "iteration_cw",
  786. "japanese_yen",
  787. "joystick",
  788. "kanban",
  789. "key",
  790. "key_round",
  791. "key_square",
  792. "keyboard",
  793. "keyboard_music",
  794. "lamp",
  795. "lamp_ceiling",
  796. "lamp_desk",
  797. "lamp_floor",
  798. "lamp_wall_down",
  799. "lamp_wall_up",
  800. "land_plot",
  801. "landmark",
  802. "languages",
  803. "laptop_minimal",
  804. "laptop",
  805. "lasso",
  806. "lasso_select",
  807. "laugh",
  808. "layers",
  809. "layers_2",
  810. "layers_3",
  811. "layout_dashboard",
  812. "layout_grid",
  813. "layout_list",
  814. "layout_panel_left",
  815. "layout_panel_top",
  816. "layout_template",
  817. "leaf",
  818. "leafy_green",
  819. "library",
  820. "library_big",
  821. "life_buoy",
  822. "ligature",
  823. "lightbulb",
  824. "lightbulb_off",
  825. "line_chart",
  826. "link",
  827. "link_2",
  828. "link_2_off",
  829. "linkedin",
  830. "list",
  831. "list_checks",
  832. "list_collapse",
  833. "list_end",
  834. "list_filter",
  835. "list_minus",
  836. "list_music",
  837. "list_ordered",
  838. "list_plus",
  839. "list_restart",
  840. "list_start",
  841. "list_todo",
  842. "list_tree",
  843. "list_video",
  844. "list_x",
  845. "loader",
  846. "loader_circle",
  847. "locate",
  848. "locate_fixed",
  849. "locate_off",
  850. "lock",
  851. "lock_keyhole_open",
  852. "lock_keyhole",
  853. "lock_open",
  854. "log_in",
  855. "log_out",
  856. "lollipop",
  857. "luggage",
  858. "magnet",
  859. "mail",
  860. "mail_check",
  861. "mail_minus",
  862. "mail_open",
  863. "mail_plus",
  864. "mail_question",
  865. "mail_search",
  866. "mail_warning",
  867. "mail_x",
  868. "mailbox",
  869. "mails",
  870. "map",
  871. "map_pin",
  872. "map_pin_off",
  873. "map_pinned",
  874. "martini",
  875. "maximize",
  876. "maximize_2",
  877. "medal",
  878. "megaphone",
  879. "megaphone_off",
  880. "meh",
  881. "memory_stick",
  882. "menu",
  883. "merge",
  884. "message_circle",
  885. "message_circle_code",
  886. "message_circle_dashed",
  887. "message_circle_heart",
  888. "message_circle_more",
  889. "message_circle_off",
  890. "message_circle_plus",
  891. "message_circle_question",
  892. "message_circle_reply",
  893. "message_circle_warning",
  894. "message_circle_x",
  895. "message_square",
  896. "message_square_code",
  897. "message_square_dashed",
  898. "message_square_diff",
  899. "message_square_dot",
  900. "message_square_heart",
  901. "message_square_more",
  902. "message_square_off",
  903. "message_square_plus",
  904. "message_square_quote",
  905. "message_square_reply",
  906. "message_square_share",
  907. "message_square_text",
  908. "message_square_warning",
  909. "message_square_x",
  910. "messages_square",
  911. "mic",
  912. "mic_vocal",
  913. "mic_off",
  914. "microscope",
  915. "microwave",
  916. "milestone",
  917. "milk",
  918. "milk_off",
  919. "minimize",
  920. "minimize_2",
  921. "minus",
  922. "monitor",
  923. "monitor_check",
  924. "monitor_dot",
  925. "monitor_down",
  926. "monitor_off",
  927. "monitor_pause",
  928. "monitor_play",
  929. "monitor_smartphone",
  930. "monitor_speaker",
  931. "monitor_stop",
  932. "monitor_up",
  933. "monitor_x",
  934. "moon",
  935. "moon_star",
  936. "mountain",
  937. "mountain_snow",
  938. "mouse",
  939. "mouse_pointer",
  940. "mouse_pointer_2",
  941. "mouse_pointer_click",
  942. "move",
  943. "move_3d",
  944. "move_diagonal",
  945. "move_diagonal_2",
  946. "move_down",
  947. "move_down_left",
  948. "move_down_right",
  949. "move_horizontal",
  950. "move_left",
  951. "move_right",
  952. "move_up",
  953. "move_up_left",
  954. "move_up_right",
  955. "move_vertical",
  956. "music",
  957. "music_2",
  958. "music_3",
  959. "music_4",
  960. "navigation",
  961. "navigation_2",
  962. "navigation_2_off",
  963. "navigation_off",
  964. "network",
  965. "newspaper",
  966. "nfc",
  967. "notebook",
  968. "notebook_pen",
  969. "notebook_tabs",
  970. "notebook_text",
  971. "notepad_text",
  972. "notepad_text_dashed",
  973. "nut",
  974. "nut_off",
  975. "octagon",
  976. "octagon_alert",
  977. "octagon_pause",
  978. "octagon_x",
  979. "option",
  980. "orbit",
  981. "package",
  982. "package_2",
  983. "package_check",
  984. "package_minus",
  985. "package_open",
  986. "package_plus",
  987. "package_search",
  988. "package_x",
  989. "paint_bucket",
  990. "paint_roller",
  991. "paintbrush",
  992. "paintbrush_2",
  993. "palette",
  994. "panel_bottom",
  995. "panel_bottom_close",
  996. "panel_bottom_dashed",
  997. "panel_bottom_open",
  998. "panel_left",
  999. "panel_left_close",
  1000. "panel_left_dashed",
  1001. "panel_left_open",
  1002. "panel_right",
  1003. "panel_right_close",
  1004. "panel_right_dashed",
  1005. "panel_right_open",
  1006. "panel_top",
  1007. "panel_top_close",
  1008. "panel_top_dashed",
  1009. "panel_top_open",
  1010. "panels_left_bottom",
  1011. "panels_right_bottom",
  1012. "panels_top_left",
  1013. "paperclip",
  1014. "parentheses",
  1015. "parking_meter",
  1016. "party_popper",
  1017. "pause",
  1018. "paw_print",
  1019. "pc_case",
  1020. "pen",
  1021. "pen_line",
  1022. "pen_tool",
  1023. "pencil",
  1024. "pencil_line",
  1025. "pencil_ruler",
  1026. "pentagon",
  1027. "percent",
  1028. "person_standing",
  1029. "phone",
  1030. "phone_call",
  1031. "phone_forwarded",
  1032. "phone_incoming",
  1033. "phone_missed",
  1034. "phone_off",
  1035. "phone_outgoing",
  1036. "pi",
  1037. "piano",
  1038. "pickaxe",
  1039. "picture_in_picture",
  1040. "picture_in_picture_2",
  1041. "pie_chart",
  1042. "piggy_bank",
  1043. "pilcrow",
  1044. "pill",
  1045. "pin",
  1046. "pin_off",
  1047. "pipette",
  1048. "pizza",
  1049. "plane",
  1050. "plane_landing",
  1051. "plane_takeoff",
  1052. "play",
  1053. "plug",
  1054. "plug_2",
  1055. "plug_zap",
  1056. "plug_zap_2",
  1057. "plus",
  1058. "pocket",
  1059. "pocket_knife",
  1060. "podcast",
  1061. "pointer",
  1062. "pointer_off",
  1063. "popcorn",
  1064. "popsicle",
  1065. "pound_sterling",
  1066. "power",
  1067. "power_off",
  1068. "presentation",
  1069. "printer",
  1070. "projector",
  1071. "proportions",
  1072. "puzzle",
  1073. "pyramid",
  1074. "qr_code",
  1075. "quote",
  1076. "rabbit",
  1077. "radar",
  1078. "radiation",
  1079. "radical",
  1080. "radio",
  1081. "radio_receiver",
  1082. "radio_tower",
  1083. "radius",
  1084. "rail_symbol",
  1085. "rainbow",
  1086. "rat",
  1087. "ratio",
  1088. "receipt",
  1089. "receipt_cent",
  1090. "receipt_euro",
  1091. "receipt_indian_rupee",
  1092. "receipt_japanese_yen",
  1093. "receipt_pound_sterling",
  1094. "receipt_russian_ruble",
  1095. "receipt_swiss_franc",
  1096. "receipt_text",
  1097. "rectangle_ellipsis",
  1098. "rectangle_horizontal",
  1099. "rectangle_vertical",
  1100. "recycle",
  1101. "redo",
  1102. "redo_2",
  1103. "redo_dot",
  1104. "refresh_ccw",
  1105. "refresh_ccw_dot",
  1106. "refresh_cw",
  1107. "refresh_cw_off",
  1108. "refrigerator",
  1109. "regex",
  1110. "remove_formatting",
  1111. "repeat",
  1112. "repeat_1",
  1113. "repeat_2",
  1114. "replace",
  1115. "replace_all",
  1116. "reply",
  1117. "reply_all",
  1118. "rewind",
  1119. "ribbon",
  1120. "rocket",
  1121. "rocking_chair",
  1122. "roller_coaster",
  1123. "rotate_3d",
  1124. "rotate_ccw",
  1125. "rotate_ccw_square",
  1126. "rotate_cw",
  1127. "rotate_cw_square",
  1128. "route",
  1129. "route_off",
  1130. "router",
  1131. "rows_2",
  1132. "rows_3",
  1133. "rows_4",
  1134. "rss",
  1135. "ruler",
  1136. "russian_ruble",
  1137. "sailboat",
  1138. "salad",
  1139. "sandwich",
  1140. "satellite",
  1141. "satellite_dish",
  1142. "save",
  1143. "save_all",
  1144. "scale",
  1145. "scale_3d",
  1146. "scaling",
  1147. "scan",
  1148. "scan_barcode",
  1149. "scan_eye",
  1150. "scan_face",
  1151. "scan_line",
  1152. "scan_search",
  1153. "scan_text",
  1154. "scatter_chart",
  1155. "school",
  1156. "scissors",
  1157. "scissors_line_dashed",
  1158. "screen_share",
  1159. "screen_share_off",
  1160. "scroll",
  1161. "scroll_text",
  1162. "search",
  1163. "search_check",
  1164. "search_code",
  1165. "search_slash",
  1166. "search_x",
  1167. "send",
  1168. "send_horizontal",
  1169. "send_to_back",
  1170. "separator_horizontal",
  1171. "separator_vertical",
  1172. "server",
  1173. "server_cog",
  1174. "server_crash",
  1175. "server_off",
  1176. "settings",
  1177. "settings_2",
  1178. "shapes",
  1179. "share",
  1180. "share_2",
  1181. "sheet",
  1182. "shell",
  1183. "shield",
  1184. "shield_alert",
  1185. "shield_ban",
  1186. "shield_check",
  1187. "shield_ellipsis",
  1188. "shield_half",
  1189. "shield_minus",
  1190. "shield_off",
  1191. "shield_plus",
  1192. "shield_question",
  1193. "shield_x",
  1194. "ship",
  1195. "ship_wheel",
  1196. "shirt",
  1197. "shopping_bag",
  1198. "shopping_basket",
  1199. "shopping_cart",
  1200. "shovel",
  1201. "shower_head",
  1202. "shrink",
  1203. "shrub",
  1204. "shuffle",
  1205. "sigma",
  1206. "signal",
  1207. "signal_high",
  1208. "signal_low",
  1209. "signal_medium",
  1210. "signal_zero",
  1211. "signpost",
  1212. "signpost_big",
  1213. "siren",
  1214. "skip_back",
  1215. "skip_forward",
  1216. "skull",
  1217. "slack",
  1218. "slash",
  1219. "slice",
  1220. "sliders_vertical",
  1221. "sliders_horizontal",
  1222. "smartphone",
  1223. "smartphone_charging",
  1224. "smartphone_nfc",
  1225. "smile",
  1226. "smile_plus",
  1227. "snail",
  1228. "snowflake",
  1229. "sofa",
  1230. "soup",
  1231. "space",
  1232. "spade",
  1233. "sparkle",
  1234. "sparkles",
  1235. "speaker",
  1236. "speech",
  1237. "spell_check",
  1238. "spell_check_2",
  1239. "spline",
  1240. "split",
  1241. "spray_can",
  1242. "sprout",
  1243. "square",
  1244. "square_activity",
  1245. "square_arrow_down_left",
  1246. "square_arrow_down_right",
  1247. "square_arrow_down",
  1248. "square_arrow_left",
  1249. "square_arrow_out_down_left",
  1250. "square_arrow_out_down_right",
  1251. "square_arrow_out_up_left",
  1252. "square_arrow_out_up_right",
  1253. "square_arrow_right",
  1254. "square_arrow_up_left",
  1255. "square_arrow_up_right",
  1256. "square_arrow_up",
  1257. "square_asterisk",
  1258. "square_bottom_dashed_scissors",
  1259. "square_check_big",
  1260. "square_check",
  1261. "square_chevron_down",
  1262. "square_chevron_left",
  1263. "square_chevron_right",
  1264. "square_chevron_up",
  1265. "square_code",
  1266. "square_dashed_bottom_code",
  1267. "square_dashed_bottom",
  1268. "square_dashed_kanban",
  1269. "square_dashed_mouse_pointer",
  1270. "square_divide",
  1271. "square_dot",
  1272. "square_equal",
  1273. "square_function",
  1274. "square_gantt_chart",
  1275. "square_kanban",
  1276. "square_library",
  1277. "square_m",
  1278. "square_menu",
  1279. "square_minus",
  1280. "square_mouse_pointer",
  1281. "square_parking_off",
  1282. "square_parking",
  1283. "square_pen",
  1284. "square_percent",
  1285. "square_pi",
  1286. "square_pilcrow",
  1287. "square_play",
  1288. "square_plus",
  1289. "square_power",
  1290. "square_radical",
  1291. "square_scissors",
  1292. "square_sigma",
  1293. "square_slash",
  1294. "square_split_horizontal",
  1295. "square_split_vertical",
  1296. "square_stack",
  1297. "square_terminal",
  1298. "square_user_round",
  1299. "square_user",
  1300. "square_x",
  1301. "squircle",
  1302. "squirrel",
  1303. "stamp",
  1304. "star",
  1305. "star_half",
  1306. "star_off",
  1307. "step_back",
  1308. "step_forward",
  1309. "stethoscope",
  1310. "sticker",
  1311. "sticky_note",
  1312. "store",
  1313. "stretch_horizontal",
  1314. "stretch_vertical",
  1315. "strikethrough",
  1316. "subscript",
  1317. "sun",
  1318. "sun_dim",
  1319. "sun_medium",
  1320. "sun_moon",
  1321. "sun_snow",
  1322. "sunrise",
  1323. "sunset",
  1324. "superscript",
  1325. "swatch_book",
  1326. "swiss_franc",
  1327. "switch_camera",
  1328. "sword",
  1329. "swords",
  1330. "syringe",
  1331. "table",
  1332. "table_2",
  1333. "table_cells_merge",
  1334. "table_cells_split",
  1335. "table_columns_split",
  1336. "table_properties",
  1337. "table_rows_split",
  1338. "tablet",
  1339. "tablet_smartphone",
  1340. "tablets",
  1341. "tag",
  1342. "tags",
  1343. "tally_1",
  1344. "tally_2",
  1345. "tally_3",
  1346. "tally_4",
  1347. "tally_5",
  1348. "tangent",
  1349. "target",
  1350. "telescope",
  1351. "tent_tree",
  1352. "terminal",
  1353. "test_tube_diagonal",
  1354. "test_tube",
  1355. "tent",
  1356. "test_tubes",
  1357. "text",
  1358. "text_cursor",
  1359. "text_cursor_input",
  1360. "text_quote",
  1361. "text_search",
  1362. "text_select",
  1363. "theater",
  1364. "thermometer",
  1365. "thermometer_snowflake",
  1366. "thermometer_sun",
  1367. "thumbs_down",
  1368. "thumbs_up",
  1369. "ticket",
  1370. "ticket_check",
  1371. "ticket_minus",
  1372. "ticket_percent",
  1373. "ticket_plus",
  1374. "ticket_slash",
  1375. "ticket_x",
  1376. "timer",
  1377. "timer_off",
  1378. "timer_reset",
  1379. "toggle_left",
  1380. "toggle_right",
  1381. "tornado",
  1382. "torus",
  1383. "touchpad",
  1384. "touchpad_off",
  1385. "tower_control",
  1386. "toy_brick",
  1387. "tractor",
  1388. "traffic_cone",
  1389. "train_front",
  1390. "train_front_tunnel",
  1391. "train_track",
  1392. "tram_front",
  1393. "trash",
  1394. "trash_2",
  1395. "tree_deciduous",
  1396. "tree_palm",
  1397. "tree_pine",
  1398. "trees",
  1399. "trello",
  1400. "trending_down",
  1401. "trending_up",
  1402. "triangle",
  1403. "triangle_right",
  1404. "triangle_alert",
  1405. "trophy",
  1406. "truck",
  1407. "turtle",
  1408. "tv",
  1409. "tv_2",
  1410. "twitch",
  1411. "twitter",
  1412. "type",
  1413. "umbrella",
  1414. "umbrella_off",
  1415. "underline",
  1416. "undo",
  1417. "undo_2",
  1418. "undo_dot",
  1419. "unfold_horizontal",
  1420. "unfold_vertical",
  1421. "ungroup",
  1422. "university",
  1423. "unlink_2",
  1424. "unlink",
  1425. "unplug",
  1426. "upload",
  1427. "usb",
  1428. "user",
  1429. "user_check",
  1430. "user_cog",
  1431. "user_minus",
  1432. "user_plus",
  1433. "user_round",
  1434. "user_round_check",
  1435. "user_round_cog",
  1436. "user_round_minus",
  1437. "user_round_plus",
  1438. "user_round_search",
  1439. "user_round_x",
  1440. "user_search",
  1441. "user_x",
  1442. "users",
  1443. "users_round",
  1444. "utensils",
  1445. "utensils_crossed",
  1446. "utility_pole",
  1447. "variable",
  1448. "vault",
  1449. "vegan",
  1450. "venetian_mask",
  1451. "vibrate",
  1452. "vibrate_off",
  1453. "video",
  1454. "video_off",
  1455. "videotape",
  1456. "view",
  1457. "voicemail",
  1458. "volume",
  1459. "volume_1",
  1460. "volume_2",
  1461. "volume_x",
  1462. "vote",
  1463. "wallet",
  1464. "wallet_minimal",
  1465. "wallet_cards",
  1466. "wallpaper",
  1467. "wand",
  1468. "wand_sparkles",
  1469. "warehouse",
  1470. "washing_machine",
  1471. "watch",
  1472. "waves",
  1473. "waypoints",
  1474. "webcam",
  1475. "webhook_off",
  1476. "webhook",
  1477. "weight",
  1478. "wheat",
  1479. "wheat_off",
  1480. "whole_word",
  1481. "wifi",
  1482. "wifi_off",
  1483. "wind",
  1484. "wine",
  1485. "wine_off",
  1486. "workflow",
  1487. "worm",
  1488. "wrap_text",
  1489. "wrench",
  1490. "x",
  1491. "youtube",
  1492. "zap",
  1493. "zap_off",
  1494. "zoom_in",
  1495. "zoom_out",
  1496. ]