From dc79097843f56344fc297961983558c334316911 Mon Sep 17 00:00:00 2001 From: Red-Asuka Date: Thu, 14 Nov 2024 10:35:35 +0800 Subject: [PATCH 1/3] chore(fonts): remove iconfont --- eslint.config.mjs | 3 - packages/ui/src/assets/fonts/iconfont.css | 195 ----------- packages/ui/src/assets/fonts/iconfont.js | 68 ---- packages/ui/src/assets/fonts/iconfont.json | 324 ------------------ packages/ui/src/assets/fonts/iconfont.ttf | Bin 14588 -> 0 bytes packages/ui/src/assets/fonts/iconfont.woff | Bin 9196 -> 0 bytes packages/ui/src/assets/fonts/iconfont.woff2 | Bin 8024 -> 0 bytes .../ui/src/components/common/LeftMenu.vue | 6 +- packages/ui/src/styles/index.scss | 2 - 9 files changed, 4 insertions(+), 594 deletions(-) delete mode 100644 packages/ui/src/assets/fonts/iconfont.css delete mode 100644 packages/ui/src/assets/fonts/iconfont.js delete mode 100644 packages/ui/src/assets/fonts/iconfont.json delete mode 100644 packages/ui/src/assets/fonts/iconfont.ttf delete mode 100644 packages/ui/src/assets/fonts/iconfont.woff delete mode 100644 packages/ui/src/assets/fonts/iconfont.woff2 diff --git a/eslint.config.mjs b/eslint.config.mjs index 8e9bdb74d..d72b451ff 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -21,9 +21,6 @@ export default antfu( */ markdown: 'prettier', }, - ignores: [ - '**/assets/fonts', - ], }, { rules: { diff --git a/packages/ui/src/assets/fonts/iconfont.css b/packages/ui/src/assets/fonts/iconfont.css deleted file mode 100644 index ab68fd556..000000000 --- a/packages/ui/src/assets/fonts/iconfont.css +++ /dev/null @@ -1,195 +0,0 @@ -@font-face { - font-family: 'iconfont'; /* Project id 1257443 */ - src: - url('iconfont.woff2?t=1698396824633') format('woff2'), - url('iconfont.woff?t=1698396824633') format('woff'), - url('iconfont.ttf?t=1698396824633') format('truetype'); -} - -.iconfont { - font-family: 'iconfont' !important; - font-size: 16px; - font-style: normal; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -.icon-mqtt:before { - content: '\e79a'; -} - -.icon-a-createnew:before { - content: '\e792'; -} - -.icon-connections:before { - content: '\e790'; -} - -.icon-help:before { - content: '\e78b'; -} - -.icon-github:before { - content: '\e75b'; -} - -.icon-website:before { - content: '\e75a'; -} - -.icon-faq:before { - content: '\e759'; -} - -.icon-discord:before { - content: '\e66e'; -} - -.icon-cloud-logo:before { - content: '\e602'; -} - -.icon-download:before { - content: '\e6ab'; -} - -.icon-language:before { - content: '\e61b'; -} - -.icon-youtube:before { - content: '\e612'; -} - -.icon-linkedin:before { - content: '\e601'; -} - -.icon-more:before { - content: '\e6e5'; -} - -.icon-edit:before { - content: '\e6e2'; -} - -.icon-a-stopscrip:before { - content: '\e6e0'; -} - -.icon-a-clearhistory:before { - content: '\e6e4'; -} - -.icon-a-stoptiming:before { - content: '\e6df'; -} - -.icon-collapse:before { - content: '\e6e1'; -} - -.icon-copy:before { - content: '\e6e3'; -} - -.icon-a-bytesstatistics:before { - content: '\e6dd'; -} - -.icon-delete:before { - content: '\e6de'; -} - -.icon-log:before { - content: '\e6d8'; -} - -.icon-script:before { - content: '\e6dc'; -} - -.icon-new:before { - content: '\e6db'; -} - -.icon-a-timedmessage:before { - content: '\e6c6'; -} - -.icon-a-exportdata:before { - content: '\e6c9'; -} - -.icon-a-importdata:before { - content: '\e6cb'; -} - -.icon-search:before { - content: '\e6cc'; -} - -.icon-about:before { - content: '\e6ce'; -} - -.icon-right:before { - content: '\e6d1'; -} - -.icon-left:before { - content: '\e6d2'; -} - -.icon-middle:before { - content: '\e6d3'; -} - -.icon-a-newwindow:before { - content: '\e6d4'; -} - -.icon-settings:before { - content: '\e6d6'; -} - -.icon-a-usescript:before { - content: '\e6d7'; -} - -.icon-fold:before { - content: '\e6d9'; -} - -.icon-unfold:before { - content: '\e6da'; -} - -.icon-triangle:before { - content: '\e8e3'; -} - -.icon-qq:before { - content: '\e615'; -} - -.icon-weibo:before { - content: '\e73a'; -} - -.icon-we-chat:before { - content: '\e70e'; -} - -.icon-ttww:before { - content: '\e6c7'; -} - -.icon-slack:before { - content: '\e641'; -} - -.icon-send:before { - content: '\e62f'; -} diff --git a/packages/ui/src/assets/fonts/iconfont.js b/packages/ui/src/assets/fonts/iconfont.js deleted file mode 100644 index 7ce794310..000000000 --- a/packages/ui/src/assets/fonts/iconfont.js +++ /dev/null @@ -1,68 +0,0 @@ -;(window._iconfont_svg_string_1257443 - = ''), -(function (t) { - var c = (c = document.getElementsByTagName('script'))[c.length - 1] - const h = c.getAttribute('data-injectcss') - var c = c.getAttribute('data-disable-injectsvg') - if (!c) { - let a - let l - var s - var o - var i - const d = function (c, h) { - h.parentNode.insertBefore(c, h) - } - if (h && !t.__iconfont__svg__cssinject__) { - t.__iconfont__svg__cssinject__ = !0 - try { - document.write( - '', - ) - } - catch (c) { - console && console.log(c) - } - } - ;(a = function () { - let c - let h = document.createElement('div') - ;(h.innerHTML = t._iconfont_svg_string_1257443), - (h = h.getElementsByTagName('svg')[0]) - && (h.setAttribute('aria-hidden', 'true'), - (h.style.position = 'absolute'), - (h.style.width = 0), - (h.style.height = 0), - (h.style.overflow = 'hidden'), - (h = h), - (c = document.body).firstChild ? d(h, c.firstChild) : c.appendChild(h)) - }), - document.addEventListener - ? ~['complete', 'loaded', 'interactive'].indexOf(document.readyState) - ? setTimeout(a, 0) - : ((l = function () { - document.removeEventListener('DOMContentLoaded', l, !1), a() - }), - document.addEventListener('DOMContentLoaded', l, !1)) - : document.attachEvent - && ((s = a), - (o = t.document), - (i = !1), - e(), - (o.onreadystatechange = function () { - o.readyState == 'complete' && ((o.onreadystatechange = null), p()) - })) - } - function p() { - i || ((i = !0), s()) - } - function e() { - try { - o.documentElement.doScroll('left') - } - catch (c) { - return void setTimeout(e, 50) - } - p() - } -})(window) diff --git a/packages/ui/src/assets/fonts/iconfont.json b/packages/ui/src/assets/fonts/iconfont.json deleted file mode 100644 index 4f3fa34ad..000000000 --- a/packages/ui/src/assets/fonts/iconfont.json +++ /dev/null @@ -1,324 +0,0 @@ -{ - "id": "1257443", - "name": "MQTTX", - "font_family": "iconfont", - "css_prefix_text": "icon-", - "description": "", - "glyphs": [ - { - "icon_id": "32933818", - "name": "mqtt", - "font_class": "mqtt", - "unicode": "e79a", - "unicode_decimal": 59290 - }, - { - "icon_id": "32681832", - "name": "create new", - "font_class": "a-createnew", - "unicode": "e792", - "unicode_decimal": 59282 - }, - { - "icon_id": "32675792", - "name": "connections", - "font_class": "connections", - "unicode": "e790", - "unicode_decimal": 59280 - }, - { - "icon_id": "32483181", - "name": "Help", - "font_class": "help", - "unicode": "e78b", - "unicode_decimal": 59275 - }, - { - "icon_id": "29692593", - "name": "github", - "font_class": "github", - "unicode": "e75b", - "unicode_decimal": 59227 - }, - { - "icon_id": "29241652", - "name": "website", - "font_class": "website", - "unicode": "e75a", - "unicode_decimal": 59226 - }, - { - "icon_id": "29237198", - "name": "faq", - "font_class": "faq", - "unicode": "e759", - "unicode_decimal": 59225 - }, - { - "icon_id": "3876491", - "name": "discord", - "font_class": "discord", - "unicode": "e66e", - "unicode_decimal": 58990 - }, - { - "icon_id": "25711546", - "name": "cloud-logo", - "font_class": "cloud-logo", - "unicode": "e602", - "unicode_decimal": 58882 - }, - { - "icon_id": "2238873", - "name": "下载", - "font_class": "download", - "unicode": "e6ab", - "unicode_decimal": 59051 - }, - { - "icon_id": "17686988", - "name": "地球", - "font_class": "language", - "unicode": "e61b", - "unicode_decimal": 58907 - }, - { - "icon_id": "2591074", - "name": "youtube", - "font_class": "youtube", - "unicode": "e612", - "unicode_decimal": 58898 - }, - { - "icon_id": "12294078", - "name": "linkin", - "font_class": "linkedin", - "unicode": "e601", - "unicode_decimal": 58881 - }, - { - "icon_id": "22444844", - "name": "more", - "font_class": "more", - "unicode": "e6e5", - "unicode_decimal": 59109 - }, - { - "icon_id": "22444281", - "name": "edit", - "font_class": "edit", - "unicode": "e6e2", - "unicode_decimal": 59106 - }, - { - "icon_id": "22420295", - "name": "stop scrip", - "font_class": "a-stopscrip", - "unicode": "e6e0", - "unicode_decimal": 59104 - }, - { - "icon_id": "22419005", - "name": "clear history", - "font_class": "a-clearhistory", - "unicode": "e6e4", - "unicode_decimal": 59108 - }, - { - "icon_id": "22418847", - "name": "stop timing", - "font_class": "a-stoptiming", - "unicode": "e6df", - "unicode_decimal": 59103 - }, - { - "icon_id": "22418849", - "name": "collapse", - "font_class": "collapse", - "unicode": "e6e1", - "unicode_decimal": 59105 - }, - { - "icon_id": "22418851", - "name": "copy", - "font_class": "copy", - "unicode": "e6e3", - "unicode_decimal": 59107 - }, - { - "icon_id": "22416556", - "name": "bytes statistics", - "font_class": "a-bytesstatistics", - "unicode": "e6dd", - "unicode_decimal": 59101 - }, - { - "icon_id": "22416557", - "name": "delete", - "font_class": "delete", - "unicode": "e6de", - "unicode_decimal": 59102 - }, - { - "icon_id": "22414557", - "name": "log", - "font_class": "log", - "unicode": "e6d8", - "unicode_decimal": 59096 - }, - { - "icon_id": "22414310", - "name": "script", - "font_class": "script", - "unicode": "e6dc", - "unicode_decimal": 59100 - }, - { - "icon_id": "22413795", - "name": "new", - "font_class": "new", - "unicode": "e6db", - "unicode_decimal": 59099 - }, - { - "icon_id": "22406900", - "name": "timed message", - "font_class": "a-timedmessage", - "unicode": "e6c6", - "unicode_decimal": 59078 - }, - { - "icon_id": "22406907", - "name": "export data", - "font_class": "a-exportdata", - "unicode": "e6c9", - "unicode_decimal": 59081 - }, - { - "icon_id": "22406911", - "name": "import data", - "font_class": "a-importdata", - "unicode": "e6cb", - "unicode_decimal": 59083 - }, - { - "icon_id": "22406912", - "name": "search", - "font_class": "search", - "unicode": "e6cc", - "unicode_decimal": 59084 - }, - { - "icon_id": "22407879", - "name": "about", - "font_class": "about", - "unicode": "e6ce", - "unicode_decimal": 59086 - }, - { - "icon_id": "22407882", - "name": "right", - "font_class": "right", - "unicode": "e6d1", - "unicode_decimal": 59089 - }, - { - "icon_id": "22407883", - "name": "left", - "font_class": "left", - "unicode": "e6d2", - "unicode_decimal": 59090 - }, - { - "icon_id": "22407884", - "name": "middle", - "font_class": "middle", - "unicode": "e6d3", - "unicode_decimal": 59091 - }, - { - "icon_id": "22407886", - "name": "new window", - "font_class": "a-newwindow", - "unicode": "e6d4", - "unicode_decimal": 59092 - }, - { - "icon_id": "22407889", - "name": "settings", - "font_class": "settings", - "unicode": "e6d6", - "unicode_decimal": 59094 - }, - { - "icon_id": "22407891", - "name": "use script", - "font_class": "a-usescript", - "unicode": "e6d7", - "unicode_decimal": 59095 - }, - { - "icon_id": "22407905", - "name": "fold", - "font_class": "fold", - "unicode": "e6d9", - "unicode_decimal": 59097 - }, - { - "icon_id": "22407906", - "name": "unfold", - "font_class": "unfold", - "unicode": "e6da", - "unicode_decimal": 59098 - }, - { - "icon_id": "17752358", - "name": "down", - "font_class": "triangle", - "unicode": "e8e3", - "unicode_decimal": 59619 - }, - { - "icon_id": "1878149", - "name": "qq", - "font_class": "qq", - "unicode": "e615", - "unicode_decimal": 58901 - }, - { - "icon_id": "1937032", - "name": "weibo", - "font_class": "weibo", - "unicode": "e73a", - "unicode_decimal": 59194 - }, - { - "icon_id": "9277879", - "name": "we-chat", - "font_class": "we-chat", - "unicode": "e70e", - "unicode_decimal": 59150 - }, - { - "icon_id": "12313365", - "name": "twitter", - "font_class": "ttww", - "unicode": "e6c7", - "unicode_decimal": 59079 - }, - { - "icon_id": "3876355", - "name": "slack", - "font_class": "slack", - "unicode": "e641", - "unicode_decimal": 58945 - }, - { - "icon_id": "9559673", - "name": "send", - "font_class": "send", - "unicode": "e62f", - "unicode_decimal": 58927 - } - ] -} diff --git a/packages/ui/src/assets/fonts/iconfont.ttf b/packages/ui/src/assets/fonts/iconfont.ttf deleted file mode 100644 index 17490dbeda16a3a629c7cafd1cd17b56337439ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14588 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
- + +
- + +
diff --git a/packages/ui/src/styles/index.scss b/packages/ui/src/styles/index.scss index 301f4b9c0..84e254cd9 100644 --- a/packages/ui/src/styles/index.scss +++ b/packages/ui/src/styles/index.scss @@ -1,8 +1,6 @@ @use './variable.scss' as *; @forward './tailwind.scss'; -// FIXME: fix iconfont -// @forward '../assets/fonts/iconfont.css'; @forward './normalize.scss'; @forward './connections.scss'; From fd20faf10c21ddff85776a49a62fea20b6290d8d Mon Sep 17 00:00:00 2001 From: Red-Asuka Date: Thu, 14 Nov 2024 15:33:52 +0800 Subject: [PATCH 2/3] feat(icons): add new SVG icons for UI components --- packages/ui/src/assets/icons/about.svg | 1 + packages/ui/src/assets/icons/backup.svg | 1 + packages/ui/src/assets/icons/bytes-statistics.svg | 1 + packages/ui/src/assets/icons/chat.svg | 1 + packages/ui/src/assets/icons/clear-history.svg | 1 + packages/ui/src/assets/icons/cloud-logo.svg | 1 + packages/ui/src/assets/icons/collapse.svg | 1 + packages/ui/src/assets/icons/connections.svg | 1 + packages/ui/src/assets/icons/copy.svg | 1 + packages/ui/src/assets/icons/create-new.svg | 1 + packages/ui/src/assets/icons/delete.svg | 1 + packages/ui/src/assets/icons/disconnect.svg | 1 + packages/ui/src/assets/icons/discord.svg | 1 + packages/ui/src/assets/icons/down.svg | 1 + packages/ui/src/assets/icons/edit.svg | 1 + packages/ui/src/assets/icons/export-data.svg | 1 + packages/ui/src/assets/icons/faq.svg | 1 + packages/ui/src/assets/icons/fold.svg | 1 + packages/ui/src/assets/icons/frame.svg | 1 + packages/ui/src/assets/icons/github.svg | 1 + packages/ui/src/assets/icons/help.svg | 1 + packages/ui/src/assets/icons/hide-connections.svg | 1 + packages/ui/src/assets/icons/import-data.svg | 1 + packages/ui/src/assets/icons/language.svg | 1 + packages/ui/src/assets/icons/left.svg | 1 + packages/ui/src/assets/icons/linkedin.svg | 1 + packages/ui/src/assets/icons/log.svg | 1 + packages/ui/src/assets/icons/middle.svg | 1 + packages/ui/src/assets/icons/more.svg | 1 + packages/ui/src/assets/icons/mqtt.svg | 1 + packages/ui/src/assets/icons/new-window.svg | 1 + packages/ui/src/assets/icons/new.svg | 1 + packages/ui/src/assets/icons/qq.svg | 1 + packages/ui/src/assets/icons/refresh.svg | 1 + packages/ui/src/assets/icons/right.svg | 1 + packages/ui/src/assets/icons/run-script.svg | 1 + packages/ui/src/assets/icons/save.svg | 1 + packages/ui/src/assets/icons/script.svg | 1 + packages/ui/src/assets/icons/search.svg | 1 + packages/ui/src/assets/icons/send.svg | 1 + packages/ui/src/assets/icons/settings.svg | 1 + packages/ui/src/assets/icons/show-connections.svg | 1 + packages/ui/src/assets/icons/slack.svg | 1 + packages/ui/src/assets/icons/stop-script.svg | 1 + packages/ui/src/assets/icons/stop-timing.svg | 1 + packages/ui/src/assets/icons/timed-message.svg | 1 + packages/ui/src/assets/icons/tree-view.svg | 1 + packages/ui/src/assets/icons/unfold.svg | 1 + packages/ui/src/assets/icons/use-script.svg | 1 + packages/ui/src/assets/icons/website.svg | 1 + packages/ui/src/assets/icons/wechat.svg | 1 + packages/ui/src/assets/icons/weibo.svg | 1 + packages/ui/src/assets/icons/x.svg | 1 + packages/ui/src/assets/icons/youtube.svg | 1 + 54 files changed, 54 insertions(+) create mode 100644 packages/ui/src/assets/icons/about.svg create mode 100644 packages/ui/src/assets/icons/backup.svg create mode 100644 packages/ui/src/assets/icons/bytes-statistics.svg create mode 100644 packages/ui/src/assets/icons/chat.svg create mode 100644 packages/ui/src/assets/icons/clear-history.svg create mode 100644 packages/ui/src/assets/icons/cloud-logo.svg create mode 100644 packages/ui/src/assets/icons/collapse.svg create mode 100644 packages/ui/src/assets/icons/connections.svg create mode 100644 packages/ui/src/assets/icons/copy.svg create mode 100644 packages/ui/src/assets/icons/create-new.svg create mode 100644 packages/ui/src/assets/icons/delete.svg create mode 100644 packages/ui/src/assets/icons/disconnect.svg create mode 100644 packages/ui/src/assets/icons/discord.svg create mode 100644 packages/ui/src/assets/icons/down.svg create mode 100644 packages/ui/src/assets/icons/edit.svg create mode 100644 packages/ui/src/assets/icons/export-data.svg create mode 100644 packages/ui/src/assets/icons/faq.svg create mode 100644 packages/ui/src/assets/icons/fold.svg create mode 100644 packages/ui/src/assets/icons/frame.svg create mode 100644 packages/ui/src/assets/icons/github.svg create mode 100644 packages/ui/src/assets/icons/help.svg create mode 100644 packages/ui/src/assets/icons/hide-connections.svg create mode 100644 packages/ui/src/assets/icons/import-data.svg create mode 100644 packages/ui/src/assets/icons/language.svg create mode 100644 packages/ui/src/assets/icons/left.svg create mode 100644 packages/ui/src/assets/icons/linkedin.svg create mode 100644 packages/ui/src/assets/icons/log.svg create mode 100644 packages/ui/src/assets/icons/middle.svg create mode 100644 packages/ui/src/assets/icons/more.svg create mode 100644 packages/ui/src/assets/icons/mqtt.svg create mode 100644 packages/ui/src/assets/icons/new-window.svg create mode 100644 packages/ui/src/assets/icons/new.svg create mode 100644 packages/ui/src/assets/icons/qq.svg create mode 100644 packages/ui/src/assets/icons/refresh.svg create mode 100644 packages/ui/src/assets/icons/right.svg create mode 100644 packages/ui/src/assets/icons/run-script.svg create mode 100644 packages/ui/src/assets/icons/save.svg create mode 100644 packages/ui/src/assets/icons/script.svg create mode 100644 packages/ui/src/assets/icons/search.svg create mode 100644 packages/ui/src/assets/icons/send.svg create mode 100644 packages/ui/src/assets/icons/settings.svg create mode 100644 packages/ui/src/assets/icons/show-connections.svg create mode 100644 packages/ui/src/assets/icons/slack.svg create mode 100644 packages/ui/src/assets/icons/stop-script.svg create mode 100644 packages/ui/src/assets/icons/stop-timing.svg create mode 100644 packages/ui/src/assets/icons/timed-message.svg create mode 100644 packages/ui/src/assets/icons/tree-view.svg create mode 100644 packages/ui/src/assets/icons/unfold.svg create mode 100644 packages/ui/src/assets/icons/use-script.svg create mode 100644 packages/ui/src/assets/icons/website.svg create mode 100644 packages/ui/src/assets/icons/wechat.svg create mode 100644 packages/ui/src/assets/icons/weibo.svg create mode 100644 packages/ui/src/assets/icons/x.svg create mode 100644 packages/ui/src/assets/icons/youtube.svg diff --git a/packages/ui/src/assets/icons/about.svg b/packages/ui/src/assets/icons/about.svg new file mode 100644 index 000000000..7f738d483 --- /dev/null +++ b/packages/ui/src/assets/icons/about.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/backup.svg b/packages/ui/src/assets/icons/backup.svg new file mode 100644 index 000000000..4442f7040 --- /dev/null +++ b/packages/ui/src/assets/icons/backup.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/bytes-statistics.svg b/packages/ui/src/assets/icons/bytes-statistics.svg new file mode 100644 index 000000000..9699dfc39 --- /dev/null +++ b/packages/ui/src/assets/icons/bytes-statistics.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/chat.svg b/packages/ui/src/assets/icons/chat.svg new file mode 100644 index 000000000..47163ff36 --- /dev/null +++ b/packages/ui/src/assets/icons/chat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/clear-history.svg b/packages/ui/src/assets/icons/clear-history.svg new file mode 100644 index 000000000..1f32eef02 --- /dev/null +++ b/packages/ui/src/assets/icons/clear-history.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/cloud-logo.svg b/packages/ui/src/assets/icons/cloud-logo.svg new file mode 100644 index 000000000..88b40f346 --- /dev/null +++ b/packages/ui/src/assets/icons/cloud-logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/collapse.svg b/packages/ui/src/assets/icons/collapse.svg new file mode 100644 index 000000000..1f9aa72a1 --- /dev/null +++ b/packages/ui/src/assets/icons/collapse.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/connections.svg b/packages/ui/src/assets/icons/connections.svg new file mode 100644 index 000000000..a2934a971 --- /dev/null +++ b/packages/ui/src/assets/icons/connections.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/copy.svg b/packages/ui/src/assets/icons/copy.svg new file mode 100644 index 000000000..6e72cf308 --- /dev/null +++ b/packages/ui/src/assets/icons/copy.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/create-new.svg b/packages/ui/src/assets/icons/create-new.svg new file mode 100644 index 000000000..68b66b031 --- /dev/null +++ b/packages/ui/src/assets/icons/create-new.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/delete.svg b/packages/ui/src/assets/icons/delete.svg new file mode 100644 index 000000000..e2a53d643 --- /dev/null +++ b/packages/ui/src/assets/icons/delete.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/disconnect.svg b/packages/ui/src/assets/icons/disconnect.svg new file mode 100644 index 000000000..d34ab3673 --- /dev/null +++ b/packages/ui/src/assets/icons/disconnect.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/discord.svg b/packages/ui/src/assets/icons/discord.svg new file mode 100644 index 000000000..609c956fe --- /dev/null +++ b/packages/ui/src/assets/icons/discord.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/down.svg b/packages/ui/src/assets/icons/down.svg new file mode 100644 index 000000000..d910021a7 --- /dev/null +++ b/packages/ui/src/assets/icons/down.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/edit.svg b/packages/ui/src/assets/icons/edit.svg new file mode 100644 index 000000000..7fc89ade4 --- /dev/null +++ b/packages/ui/src/assets/icons/edit.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/export-data.svg b/packages/ui/src/assets/icons/export-data.svg new file mode 100644 index 000000000..b3694152a --- /dev/null +++ b/packages/ui/src/assets/icons/export-data.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/faq.svg b/packages/ui/src/assets/icons/faq.svg new file mode 100644 index 000000000..b1d148f05 --- /dev/null +++ b/packages/ui/src/assets/icons/faq.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/fold.svg b/packages/ui/src/assets/icons/fold.svg new file mode 100644 index 000000000..1ad417f95 --- /dev/null +++ b/packages/ui/src/assets/icons/fold.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/frame.svg b/packages/ui/src/assets/icons/frame.svg new file mode 100644 index 000000000..3f760e600 --- /dev/null +++ b/packages/ui/src/assets/icons/frame.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/github.svg b/packages/ui/src/assets/icons/github.svg new file mode 100644 index 000000000..c46f697da --- /dev/null +++ b/packages/ui/src/assets/icons/github.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/help.svg b/packages/ui/src/assets/icons/help.svg new file mode 100644 index 000000000..d2ddee775 --- /dev/null +++ b/packages/ui/src/assets/icons/help.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/hide-connections.svg b/packages/ui/src/assets/icons/hide-connections.svg new file mode 100644 index 000000000..057531408 --- /dev/null +++ b/packages/ui/src/assets/icons/hide-connections.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/import-data.svg b/packages/ui/src/assets/icons/import-data.svg new file mode 100644 index 000000000..0aa8efef2 --- /dev/null +++ b/packages/ui/src/assets/icons/import-data.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/language.svg b/packages/ui/src/assets/icons/language.svg new file mode 100644 index 000000000..4ebcc30bd --- /dev/null +++ b/packages/ui/src/assets/icons/language.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/left.svg b/packages/ui/src/assets/icons/left.svg new file mode 100644 index 000000000..f5d81fb14 --- /dev/null +++ b/packages/ui/src/assets/icons/left.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/linkedin.svg b/packages/ui/src/assets/icons/linkedin.svg new file mode 100644 index 000000000..101faa822 --- /dev/null +++ b/packages/ui/src/assets/icons/linkedin.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/log.svg b/packages/ui/src/assets/icons/log.svg new file mode 100644 index 000000000..a6c050429 --- /dev/null +++ b/packages/ui/src/assets/icons/log.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/middle.svg b/packages/ui/src/assets/icons/middle.svg new file mode 100644 index 000000000..e761ae58c --- /dev/null +++ b/packages/ui/src/assets/icons/middle.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/more.svg b/packages/ui/src/assets/icons/more.svg new file mode 100644 index 000000000..d4276c837 --- /dev/null +++ b/packages/ui/src/assets/icons/more.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/mqtt.svg b/packages/ui/src/assets/icons/mqtt.svg new file mode 100644 index 000000000..8fd25fc04 --- /dev/null +++ b/packages/ui/src/assets/icons/mqtt.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/new-window.svg b/packages/ui/src/assets/icons/new-window.svg new file mode 100644 index 000000000..57baef55c --- /dev/null +++ b/packages/ui/src/assets/icons/new-window.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/new.svg b/packages/ui/src/assets/icons/new.svg new file mode 100644 index 000000000..893077b4c --- /dev/null +++ b/packages/ui/src/assets/icons/new.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/qq.svg b/packages/ui/src/assets/icons/qq.svg new file mode 100644 index 000000000..fb0d10404 --- /dev/null +++ b/packages/ui/src/assets/icons/qq.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/refresh.svg b/packages/ui/src/assets/icons/refresh.svg new file mode 100644 index 000000000..cc010f771 --- /dev/null +++ b/packages/ui/src/assets/icons/refresh.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/right.svg b/packages/ui/src/assets/icons/right.svg new file mode 100644 index 000000000..f455b4edf --- /dev/null +++ b/packages/ui/src/assets/icons/right.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/run-script.svg b/packages/ui/src/assets/icons/run-script.svg new file mode 100644 index 000000000..a40208ca3 --- /dev/null +++ b/packages/ui/src/assets/icons/run-script.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/save.svg b/packages/ui/src/assets/icons/save.svg new file mode 100644 index 000000000..3966f18d4 --- /dev/null +++ b/packages/ui/src/assets/icons/save.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/script.svg b/packages/ui/src/assets/icons/script.svg new file mode 100644 index 000000000..919460a03 --- /dev/null +++ b/packages/ui/src/assets/icons/script.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/search.svg b/packages/ui/src/assets/icons/search.svg new file mode 100644 index 000000000..3f8ce5757 --- /dev/null +++ b/packages/ui/src/assets/icons/search.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/send.svg b/packages/ui/src/assets/icons/send.svg new file mode 100644 index 000000000..a5fb68d70 --- /dev/null +++ b/packages/ui/src/assets/icons/send.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/settings.svg b/packages/ui/src/assets/icons/settings.svg new file mode 100644 index 000000000..55c12dcd5 --- /dev/null +++ b/packages/ui/src/assets/icons/settings.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/show-connections.svg b/packages/ui/src/assets/icons/show-connections.svg new file mode 100644 index 000000000..09ab46f7b --- /dev/null +++ b/packages/ui/src/assets/icons/show-connections.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/slack.svg b/packages/ui/src/assets/icons/slack.svg new file mode 100644 index 000000000..2af35ac0c --- /dev/null +++ b/packages/ui/src/assets/icons/slack.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/stop-script.svg b/packages/ui/src/assets/icons/stop-script.svg new file mode 100644 index 000000000..e750338b0 --- /dev/null +++ b/packages/ui/src/assets/icons/stop-script.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/stop-timing.svg b/packages/ui/src/assets/icons/stop-timing.svg new file mode 100644 index 000000000..b172fa535 --- /dev/null +++ b/packages/ui/src/assets/icons/stop-timing.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/timed-message.svg b/packages/ui/src/assets/icons/timed-message.svg new file mode 100644 index 000000000..8ef5f376a --- /dev/null +++ b/packages/ui/src/assets/icons/timed-message.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/tree-view.svg b/packages/ui/src/assets/icons/tree-view.svg new file mode 100644 index 000000000..e6e65da19 --- /dev/null +++ b/packages/ui/src/assets/icons/tree-view.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/unfold.svg b/packages/ui/src/assets/icons/unfold.svg new file mode 100644 index 000000000..38e5e303e --- /dev/null +++ b/packages/ui/src/assets/icons/unfold.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/use-script.svg b/packages/ui/src/assets/icons/use-script.svg new file mode 100644 index 000000000..19567c4c0 --- /dev/null +++ b/packages/ui/src/assets/icons/use-script.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/website.svg b/packages/ui/src/assets/icons/website.svg new file mode 100644 index 000000000..6b4d2097d --- /dev/null +++ b/packages/ui/src/assets/icons/website.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/wechat.svg b/packages/ui/src/assets/icons/wechat.svg new file mode 100644 index 000000000..544e09622 --- /dev/null +++ b/packages/ui/src/assets/icons/wechat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/weibo.svg b/packages/ui/src/assets/icons/weibo.svg new file mode 100644 index 000000000..4afcf8776 --- /dev/null +++ b/packages/ui/src/assets/icons/weibo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/x.svg b/packages/ui/src/assets/icons/x.svg new file mode 100644 index 000000000..dd9d0293e --- /dev/null +++ b/packages/ui/src/assets/icons/x.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/ui/src/assets/icons/youtube.svg b/packages/ui/src/assets/icons/youtube.svg new file mode 100644 index 000000000..df699fdb4 --- /dev/null +++ b/packages/ui/src/assets/icons/youtube.svg @@ -0,0 +1 @@ + \ No newline at end of file From 51d148ae9fbafb6100c2493002aa5491bbd79eb9 Mon Sep 17 00:00:00 2001 From: Red-Asuka Date: Thu, 14 Nov 2024 15:43:51 +0800 Subject: [PATCH 3/3] feat(icons): integrate unplugin-icons for enhanced icon management --- apps/desktop/electron.vite.config.ts | 19 +++++- apps/desktop/package.json | 1 + apps/desktop/tsconfig.web.json | 2 +- apps/web/package.json | 1 + apps/web/tsconfig.app.json | 2 +- apps/web/vite.config.ts | 19 +++++- packages/ui/components.d.ts | 21 ++++++ packages/ui/package.json | 2 + .../ui/src/components/common/LeftMenu.vue | 40 ++++++----- packages/ui/tsconfig.json | 11 +++- packages/ui/vite.config.ts | 32 ++++++++- pnpm-lock.yaml | 66 +++++++++++++++++++ 12 files changed, 191 insertions(+), 25 deletions(-) create mode 100644 packages/ui/components.d.ts diff --git a/apps/desktop/electron.vite.config.ts b/apps/desktop/electron.vite.config.ts index eff738bd5..36b7bb66a 100644 --- a/apps/desktop/electron.vite.config.ts +++ b/apps/desktop/electron.vite.config.ts @@ -1,6 +1,9 @@ import { resolve } from 'node:path' import vue from '@vitejs/plugin-vue' import { defineConfig, externalizeDepsPlugin } from 'electron-vite' +import { FileSystemIconLoader } from 'unplugin-icons/loaders' +import IconsResolver from 'unplugin-icons/resolver' +import Icons from 'unplugin-icons/vite' import { ElementPlusResolver } from 'unplugin-vue-components/resolvers' import Components from 'unplugin-vue-components/vite' import VueRouter from 'unplugin-vue-router/vite' @@ -31,7 +34,21 @@ export default defineConfig({ dts: true, directoryAsNamespace: true, dirs: ['src/components', '../../../../packages/ui/src/components'], - resolvers: [ElementPlusResolver()], + resolvers: [ + ElementPlusResolver(), + IconsResolver({ + prefix: 'icon', + customCollections: [ + 'custom', + ], + }), + ], + }), + Icons({ + compiler: 'vue3', + customCollections: { + custom: FileSystemIconLoader('../../packages/ui/src/assets/icons'), + }, }), ], }, diff --git a/apps/desktop/package.json b/apps/desktop/package.json index 249fe4eb4..d57144974 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -51,6 +51,7 @@ "sass": "^1.80.6", "tailwindcss": "^3.4.14", "typescript": "^5.6.3", + "unplugin-icons": "^0.20.1", "unplugin-vue-components": "^0.27.4", "unplugin-vue-router": "^0.10.8", "vite": "^5.4.10", diff --git a/apps/desktop/tsconfig.web.json b/apps/desktop/tsconfig.web.json index 17ab5b109..fdd666751 100644 --- a/apps/desktop/tsconfig.web.json +++ b/apps/desktop/tsconfig.web.json @@ -7,7 +7,7 @@ "paths": { "@renderer/*": ["src/renderer/src/*"] }, - "types": ["element-plus/global", "node", "mqttx"], + "types": ["element-plus/global", "node", "mqttx", "unplugin-icons/types/vue"], "verbatimModuleSyntax": true }, "include": [ diff --git a/apps/web/package.json b/apps/web/package.json index bc49954ca..1729d0f0e 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -43,6 +43,7 @@ "sass": "^1.80.6", "tailwindcss": "^3.4.14", "typescript": "~5.6.3", + "unplugin-icons": "^0.20.1", "unplugin-vue-components": "^0.27.4", "unplugin-vue-router": "^0.10.8", "vite": "^5.4.10", diff --git a/apps/web/tsconfig.app.json b/apps/web/tsconfig.app.json index 0d78be539..04530faa6 100644 --- a/apps/web/tsconfig.app.json +++ b/apps/web/tsconfig.app.json @@ -6,7 +6,7 @@ "paths": { "@/*": ["./src/*"] }, - "types": ["element-plus/global", "node", "mqttx"], + "types": ["element-plus/global", "node", "mqttx", "unplugin-icons/types/vue"], "esModuleInterop": true }, "include": [ diff --git a/apps/web/vite.config.ts b/apps/web/vite.config.ts index e146cf6b0..d8218cf9d 100644 --- a/apps/web/vite.config.ts +++ b/apps/web/vite.config.ts @@ -2,6 +2,9 @@ import { fileURLToPath, URL } from 'node:url' import vue from '@vitejs/plugin-vue' import vueJsx from '@vitejs/plugin-vue-jsx' +import { FileSystemIconLoader } from 'unplugin-icons/loaders' +import IconsResolver from 'unplugin-icons/resolver' +import Icons from 'unplugin-icons/vite' import { ElementPlusResolver } from 'unplugin-vue-components/resolvers' import Components from 'unplugin-vue-components/vite' import VueRouter from 'unplugin-vue-router/vite' @@ -17,7 +20,21 @@ export default defineConfig({ dts: true, directoryAsNamespace: true, dirs: ['src/components', '../../packages/ui/src/components'], - resolvers: [ElementPlusResolver()], + resolvers: [ + ElementPlusResolver(), + IconsResolver({ + prefix: 'icon', + customCollections: [ + 'custom', + ], + }), + ], + }), + Icons({ + compiler: 'vue3', + customCollections: { + custom: FileSystemIconLoader('../../packages/ui/src/assets/icons'), + }, }), ], resolve: { diff --git a/packages/ui/components.d.ts b/packages/ui/components.d.ts new file mode 100644 index 000000000..b6a34fd23 --- /dev/null +++ b/packages/ui/components.d.ts @@ -0,0 +1,21 @@ +/* eslint-disable */ +// @ts-nocheck +// Generated by unplugin-vue-components +// Read more: https://github.com/vuejs/core/pull/3399 +export {} + +/* prettier-ignore */ +declare module 'vue' { + export interface GlobalComponents { + CommonEmptyView: typeof import('./src/components/common/EmptyView.vue')['default'] + CommonLeftMenu: typeof import('./src/components/common/LeftMenu.vue')['default'] + CommonMainView: typeof import('./src/components/common/MainView.vue')['default'] + CommonSplitView: typeof import('./src/components/common/SplitView.vue')['default'] + ConnectionsDetailsView: typeof import('./src/components/connections/DetailsView.vue')['default'] + ConnectionsListView: typeof import('./src/components/connections/ListView.vue')['default'] + ElAside: typeof import('element-plus/es')['ElAside'] + ElMain: typeof import('element-plus/es')['ElMain'] + RouterLink: typeof import('vue-router')['RouterLink'] + RouterView: typeof import('vue-router')['RouterView'] + } +} diff --git a/packages/ui/package.json b/packages/ui/package.json index 5f5f8fe7b..f2f042a44 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -42,6 +42,8 @@ "sass": "^1.80.6", "tailwindcss": "^3.4.14", "typescript": "^5.6.3", + "unplugin-icons": "^0.20.1", + "unplugin-vue-components": "^0.27.4", "vite": "^5.4.10", "vite-plugin-dts": "^4.3.0", "vitest": "^2.1.4", diff --git a/packages/ui/src/components/common/LeftMenu.vue b/packages/ui/src/components/common/LeftMenu.vue index 50a1544ef..3d56ddc56 100644 --- a/packages/ui/src/components/common/LeftMenu.vue +++ b/packages/ui/src/components/common/LeftMenu.vue @@ -1,40 +1,48 @@ @@ -46,14 +54,12 @@ const helpMenus = reactive({
- - +
- - +
diff --git a/packages/ui/tsconfig.json b/packages/ui/tsconfig.json index cef83b780..b1e557b72 100644 --- a/packages/ui/tsconfig.json +++ b/packages/ui/tsconfig.json @@ -8,7 +8,7 @@ /* Bundler mode */ "moduleResolution": "bundler", "resolveJsonModule": true, - "types": ["element-plus/global", "node", "mqttx", "vite/client"], + "types": ["element-plus/global", "node", "mqttx", "vite/client", "unplugin-icons/types/vue"], "allowImportingTsExtensions": true, /* Linting */ "strict": true, @@ -21,6 +21,13 @@ "skipLibCheck": true }, "references": [{ "path": "./tsconfig.node.json" }], - "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue", "__test__"], + "include": [ + "src/**/*.ts", + "src/**/*.d.ts", + "src/**/*.tsx", + "src/**/*.vue", + "__test__", + "./components.d.ts" + ], "exclude": ["node_modules"] } diff --git a/packages/ui/vite.config.ts b/packages/ui/vite.config.ts index f34a3e041..1c99c18ff 100644 --- a/packages/ui/vite.config.ts +++ b/packages/ui/vite.config.ts @@ -2,12 +2,40 @@ import type { UserConfig } from 'vite' import path from 'node:path' import vue from '@vitejs/plugin-vue' import vueJsx from '@vitejs/plugin-vue-jsx' +import { FileSystemIconLoader } from 'unplugin-icons/loaders' +import IconsResolver from 'unplugin-icons/resolver' +import Icons from 'unplugin-icons/vite' +import { ElementPlusResolver } from 'unplugin-vue-components/resolvers' +import Components from 'unplugin-vue-components/vite' import { defineConfig } from 'vite' - import dts from 'vite-plugin-dts' export default defineConfig({ - plugins: [vue(), vueJsx(), dts()], + plugins: [ + vue(), + vueJsx(), + dts(), + Components({ + dts: true, + directoryAsNamespace: true, + dirs: ['src/components'], + resolvers: [ + ElementPlusResolver(), + IconsResolver({ + prefix: 'icon', + customCollections: [ + 'custom', + ], + }), + ], + }), + Icons({ + compiler: 'vue3', + customCollections: { + custom: FileSystemIconLoader('./src/assets/icons'), + }, + }), + ], resolve: { alias: { '@': '/src', diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 48551723d..77e33d0d6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -196,6 +196,9 @@ importers: typescript: specifier: ^5.6.3 version: 5.6.3 + unplugin-icons: + specifier: ^0.20.1 + version: 0.20.1(@vue/compiler-sfc@3.5.12) unplugin-vue-components: specifier: ^0.27.4 version: 0.27.4(vue@3.5.12) @@ -293,6 +296,9 @@ importers: typescript: specifier: ~5.6.3 version: 5.6.3 + unplugin-icons: + specifier: ^0.20.1 + version: 0.20.1(@vue/compiler-sfc@3.5.12) unplugin-vue-components: specifier: ^0.27.4 version: 0.27.4(vue@3.5.12) @@ -414,6 +420,12 @@ importers: typescript: specifier: ^5.6.3 version: 5.6.3 + unplugin-icons: + specifier: ^0.20.1 + version: 0.20.1(@vue/compiler-sfc@3.5.12) + unplugin-vue-components: + specifier: ^0.27.4 + version: 0.27.4(vue@3.5.12) vite: specifier: ^5.4.10 version: 5.4.10(@types/node@22.9.0)(sass@1.80.6) @@ -1358,6 +1370,24 @@ packages: engines: {node: '>=18.18'} dev: true + /@iconify/types@2.0.0: + resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} + dev: true + + /@iconify/utils@2.1.33: + resolution: {integrity: sha512-jP9h6v/g0BIZx0p7XGJJVtkVnydtbgTgt9mVNcGDYwaa7UhdHdI9dvoq+gKj9sijMSJKxUPEG2JyjsgXjxL7Kw==} + dependencies: + '@antfu/install-pkg': 0.4.1 + '@antfu/utils': 0.7.10 + '@iconify/types': 2.0.0 + debug: 4.3.7 + kolorist: 1.8.0 + local-pkg: 0.5.0 + mlly: 1.7.2 + transitivePeerDependencies: + - supports-color + dev: true + /@intlify/core-base@10.0.4: resolution: {integrity: sha512-GG428DkrrWCMhxRMRQZjuS7zmSUzarYcaHJqG9VB8dXAxw4iQDoKVQ7ChJRB6ZtsCsX3Jse1PEUlHrJiyQrOTg==} engines: {node: '>= 16'} @@ -8448,6 +8478,42 @@ packages: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} + /unplugin-icons@0.20.1(@vue/compiler-sfc@3.5.12): + resolution: {integrity: sha512-0z5sYGx07Q69ZrJB4kjmx7a5LYLNSWwyq95Ox9OuSG2y/sbhJaHUapRPOJcKmKhOAyToDVRdy9P7gxJ05lYipw==} + peerDependencies: + '@svgr/core': '>=7.0.0' + '@svgx/core': ^1.0.1 + '@vue/compiler-sfc': ^3.0.2 || ^2.7.0 + svelte: ^3.0.0 || ^4.0.0 || ^5.0.0 + vue-template-compiler: ^2.6.12 + vue-template-es2015-compiler: ^1.9.0 + peerDependenciesMeta: + '@svgr/core': + optional: true + '@svgx/core': + optional: true + '@vue/compiler-sfc': + optional: true + svelte: + optional: true + vue-template-compiler: + optional: true + vue-template-es2015-compiler: + optional: true + dependencies: + '@antfu/install-pkg': 0.4.1 + '@antfu/utils': 0.7.10 + '@iconify/utils': 2.1.33 + '@vue/compiler-sfc': 3.5.12 + debug: 4.3.7 + kolorist: 1.8.0 + local-pkg: 0.5.0 + unplugin: 1.15.0 + transitivePeerDependencies: + - supports-color + - webpack-sources + dev: true + /unplugin-vue-components@0.27.4(vue@3.5.12): resolution: {integrity: sha512-1XVl5iXG7P1UrOMnaj2ogYa5YTq8aoh5jwDPQhemwO/OrXW+lPQKDXd1hMz15qxQPxgb/XXlbgo3HQ2rLEbmXQ==} engines: {node: '>=14'}