iconifyIconOffline.ts 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208
  1. import { h, defineComponent } from "vue";
  2. import { Icon as IconifyIcon, addIcon } from "@iconify/vue/dist/offline";
  3. // element-plus icon
  4. import Check from "@iconify-icons/ep/check";
  5. import Select from "@iconify-icons/ep/select";
  6. import Menu from "@iconify-icons/ep/menu";
  7. import HomeFilled from "@iconify-icons/ep/home-filled";
  8. import SetUp from "@iconify-icons/ep/set-up";
  9. import Edit from "@iconify-icons/ep/edit";
  10. import Setting from "@iconify-icons/ep/setting";
  11. import Lollipop from "@iconify-icons/ep/lollipop";
  12. import Link from "@iconify-icons/ep/link";
  13. import Position from "@iconify-icons/ep/position";
  14. import Histogram from "@iconify-icons/ep/histogram";
  15. import RefreshRight from "@iconify-icons/ep/refresh-right";
  16. import ArrowDown from "@iconify-icons/ep/arrow-down";
  17. import Close from "@iconify-icons/ep/close";
  18. import CloseBold from "@iconify-icons/ep/close-bold";
  19. import Bell from "@iconify-icons/ep/bell";
  20. import Guide from "@iconify-icons/ep/guide";
  21. import Iphone from "@iconify-icons/ep/iphone";
  22. import Location from "@iconify-icons/ep/location";
  23. import Tickets from "@iconify-icons/ep/tickets";
  24. import OfficeBuilding from "@iconify-icons/ep/office-building";
  25. import Notebook from "@iconify-icons/ep/notebook";
  26. import Rank from "@iconify-icons/ep/rank";
  27. import VideoPlay from "@iconify-icons/ep/video-play";
  28. import Monitor from "@iconify-icons/ep/monitor";
  29. import Search from "@iconify-icons/ep/search";
  30. import Refresh from "@iconify-icons/ep/refresh";
  31. import EditPen from "@iconify-icons/ep/edit-pen";
  32. import Delete from "@iconify-icons/ep/delete";
  33. import More from "@iconify-icons/ep/more-filled";
  34. import Loading from "@iconify-icons/ep/loading";
  35. import Coin from "@iconify-icons/ep/coin";
  36. import Stamp from "@iconify-icons/ep/stamp";
  37. import ArrowDown from "@iconify-icons/ep/arrow-down";
  38. import ArrowUp from "@iconify-icons/ep/arrow-up";
  39. import ScaleToOriginal from "@iconify-icons/ep/scale-to-original";
  40. import DoubleArrowLeft from "@iconify-icons/ep/d-arrow-left";
  41. import WarningFilled from "@iconify-icons/ep/warning-filled";
  42. import Excel from "@iconify-icons/fa-solid/file-excel";
  43. import Promotion from "@iconify-icons/ep/promotion";
  44. import BellFilled from "@iconify-icons/ep/bell-filled";
  45. import downloadLine from "@iconify-icons/ep/download";
  46. import SwitchArrow from "@iconify-icons/ep/switch";
  47. addIcon("switch-arrow", SwitchArrow);
  48. addIcon("download-line", downloadLine);
  49. addIcon("bell-filled", BellFilled);
  50. addIcon("success", Select);
  51. addIcon("excel", Excel);
  52. addIcon("promotion", Promotion);
  53. addIcon("warning-filled", WarningFilled);
  54. addIcon("d-arrow-left", DoubleArrowLeft);
  55. addIcon("coin", Coin);
  56. addIcon("scaletooriginal", ScaleToOriginal);
  57. addIcon("arrowdown", ArrowDown);
  58. addIcon("ArrowUp", ArrowUp);
  59. addIcon("stamp", Stamp);
  60. addIcon("check", Check);
  61. addIcon("menu", Menu);
  62. addIcon("home-filled", HomeFilled);
  63. addIcon("set-up", SetUp);
  64. addIcon("edit", Edit);
  65. addIcon("setting", Setting);
  66. addIcon("lollipop", Lollipop);
  67. addIcon("link", Link);
  68. addIcon("position", Position);
  69. addIcon("histogram", Histogram);
  70. addIcon("refresh-right", RefreshRight);
  71. addIcon("arrow-down", ArrowDown);
  72. addIcon("close", Close);
  73. addIcon("close-bold", CloseBold);
  74. addIcon("bell", Bell);
  75. addIcon("guide", Guide);
  76. addIcon("iphone", Iphone);
  77. addIcon("location", Location);
  78. addIcon("tickets", Tickets);
  79. addIcon("office-building", OfficeBuilding);
  80. addIcon("notebook", Notebook);
  81. addIcon("video-play", VideoPlay);
  82. addIcon("rank", Rank);
  83. addIcon("monitor", Monitor);
  84. addIcon("search", Search);
  85. addIcon("refresh", Refresh);
  86. addIcon("edits", EditPen);
  87. addIcon("delete", Delete);
  88. addIcon("more", More);
  89. addIcon("Loading", Loading);
  90. // remixicon
  91. import ArrowRightSLine from "@iconify-icons/ri/arrow-right-s-line";
  92. import ArrowLeftSLine from "@iconify-icons/ri/arrow-left-s-line";
  93. import LogoutCircleRLine from "@iconify-icons/ri/logout-circle-r-line";
  94. import NodeTree from "@iconify-icons/ri/node-tree";
  95. import UbuntuFill from "@iconify-icons/ri/ubuntu-fill";
  96. import QuestionLine from "@iconify-icons/ri/question-line";
  97. import CheckboxCircleLine from "@iconify-icons/ri/checkbox-circle-line";
  98. import InformationLine from "@iconify-icons/ri/information-line";
  99. import CloseCircleLine from "@iconify-icons/ri/close-circle-line";
  100. import ArrowUpLine from "@iconify-icons/ri/arrow-up-line";
  101. import ArrowDownLine from "@iconify-icons/ri/arrow-down-line";
  102. import Bookmark2Line from "@iconify-icons/ri/bookmark-2-line";
  103. import AddFill from "@iconify-icons/ri/add-circle-line";
  104. import ListCheck from "@iconify-icons/ri/list-check";
  105. import More2Fill from "@iconify-icons/ri/more-2-fill";
  106. import Database from "@iconify-icons/ri/database-2-line";
  107. import Dict from "@iconify-icons/ri/git-repository-line";
  108. import Card from "@iconify-icons/ri/bank-card-line";
  109. import Reset from "@iconify-icons/ri/restart-line";
  110. import Dept from "@iconify-icons/ri/git-branch-line";
  111. import Password from "@iconify-icons/ri/lock-password-line";
  112. import Ppt from "@iconify-icons/ri/file-ppt-2-line";
  113. import TerminalWindowLine from "@iconify-icons/ri/terminal-window-line";
  114. import View from "@iconify-icons/ep/view";
  115. import User from "@iconify-icons/ri/user-3-fill";
  116. import Lock from "@iconify-icons/ri/lock-fill";
  117. import MenuUnfold from "@iconify-icons/ri/menu-unfold-fill";
  118. import MenuFold from "@iconify-icons/ri/menu-fold-fill";
  119. addIcon("arrow-right-s-line", ArrowRightSLine);
  120. addIcon("arrow-left-s-line", ArrowLeftSLine);
  121. addIcon("logout-circle-r-line", LogoutCircleRLine);
  122. addIcon("node-tree", NodeTree);
  123. addIcon("ubuntu-fill", UbuntuFill);
  124. addIcon("question-line", QuestionLine);
  125. addIcon("checkbox-circle-line", CheckboxCircleLine);
  126. addIcon("information-line", InformationLine);
  127. addIcon("close-circle-line", CloseCircleLine);
  128. addIcon("arrow-up-line", ArrowUpLine);
  129. addIcon("arrow-down-line", ArrowDownLine);
  130. addIcon("bookmark-2-line", Bookmark2Line);
  131. addIcon("add", AddFill);
  132. addIcon("eye-view", View);
  133. addIcon("list-check", ListCheck);
  134. addIcon("more-vertical", More2Fill);
  135. addIcon("database", Database);
  136. addIcon("dict", Dict);
  137. addIcon("card", Card);
  138. addIcon("reset", Reset);
  139. addIcon("dept", Dept);
  140. addIcon("password", Password);
  141. addIcon("ppt", Ppt);
  142. addIcon("terminal-window-line", TerminalWindowLine);
  143. addIcon("user", User);
  144. addIcon("lock", Lock);
  145. addIcon("menu-unfold", MenuUnfold);
  146. addIcon("menu-fold", MenuFold);
  147. // Font Awesome 4
  148. import FaUser from "@iconify-icons/fa/user";
  149. import FaLock from "@iconify-icons/fa/lock";
  150. import FaSignOut from "@iconify-icons/fa/sign-out";
  151. addIcon("fa-user", FaUser);
  152. addIcon("fa-lock", FaLock);
  153. addIcon("fa-sign-out", FaSignOut);
  154. // Unicons
  155. import Import from "@iconify-icons/uil/import";
  156. import Export from "@iconify-icons/uil/export";
  157. import ArrowsShrinkV from "@iconify-icons/uil/arrows-shrink-v";
  158. addIcon("import", Import);
  159. addIcon("export", Export);
  160. addIcon("density", ArrowsShrinkV);
  161. // fluent
  162. import Role from "@iconify-icons/fluent/people-swap-28-filled";
  163. import FlUser from "@iconify-icons/fluent/person-12-filled";
  164. addIcon("role", Role);
  165. addIcon("flUser", FlUser);
  166. // Material Design Icons
  167. import Expand from "@iconify-icons/mdi/arrow-expand-down";
  168. import UnExpand from "@iconify-icons/mdi/arrow-expand-right";
  169. addIcon("expand", Expand);
  170. addIcon("unExpand", UnExpand);
  171. // carbon
  172. import LocationCompany from "@iconify-icons/carbon/location-company";
  173. addIcon("location-company", LocationCompany);
  174. // Iconify Icon在Vue里离线使用(用于内网环境)https://docs.iconify.design/icon-components/vue/offline.html
  175. export default defineComponent({
  176. name: "IconifyIconOffline",
  177. components: { IconifyIcon },
  178. props: {
  179. icon: {
  180. type: String,
  181. default: ""
  182. }
  183. },
  184. render() {
  185. const attrs = this.$attrs;
  186. return h(
  187. IconifyIcon,
  188. {
  189. icon: `${this.icon}`,
  190. style: attrs?.style
  191. ? Object.assign(attrs.style, { outline: "none" })
  192. : { outline: "none" },
  193. ...attrs
  194. },
  195. {
  196. default: () => []
  197. }
  198. );
  199. }
  200. });