feat: Add icons to the menu (#10650)

This commit is contained in:
2025-10-15 17:43:40 +08:00
committed by GitHub
parent 26e480f242
commit 1c16a0a69f
13 changed files with 327 additions and 51 deletions
+84 -4
View File
@@ -1,9 +1,9 @@
@font-face {
font-family: "iconfont"; /* Project id 4776196 */
src: url('iconfont.woff2?t=1755181498446') format('woff2'),
url('iconfont.woff?t=1755181498446') format('woff'),
url('iconfont.ttf?t=1755181498446') format('truetype'),
url('iconfont.svg?t=1755181498446#iconfont') format('svg');
src: url('iconfont.woff2?t=1760516880031') format('woff2'),
url('iconfont.woff?t=1760516880031') format('woff'),
url('iconfont.ttf?t=1760516880031') format('truetype'),
url('iconfont.svg?t=1760516880031#iconfont') format('svg');
}
.iconfont {
@@ -14,6 +14,86 @@
-moz-osx-font-smoothing: grayscale;
}
.p-run-menu:before {
content: "\e636";
}
.p-ssh-menu:before {
content: "\e668";
}
.p-mcp-menu:before {
content: "\e62b";
}
.p-ai-menu:before {
content: "\e7bf";
}
.p-moxing-menu:before {
content: "\e62c";
}
.p-ah-menu:before {
content: "\e6ba";
}
.p-tamper-menu:before {
content: "\e61c";
}
.p-ssl-menu:before {
content: "\e7b0";
}
.p-file-menu:before {
content: "\e609";
}
.p-system-monitor-menu:before {
content: "\e621";
}
.p-gpu-menu:before {
content: "\e631";
}
.p-waf-menu:before {
content: "\e623";
}
.p-xsetting-menu:before {
content: "\e624";
}
.p-disk-menu:before {
content: "\e6e5";
}
.p-exchange-menu:before {
content: "\e625";
}
.p-mobile-menu:before {
content: "\e628";
}
.p-process-menu:before {
content: "\ec35";
}
.p-firewalld-menu:before {
content: "\e798";
}
.p-monitor-menu:before {
content: "\e64a";
}
.p-node-menu:before {
content: "\e813";
}
.p-featureshitu:before {
content: "\e63e";
}
File diff suppressed because one or more lines are too long
+140
View File
@@ -5,6 +5,146 @@
"css_prefix_text": "p-",
"description": "",
"glyphs": [
{
"icon_id": "5041257",
"name": "运行环境",
"font_class": "run-menu",
"unicode": "e636",
"unicode_decimal": 58934
},
{
"icon_id": "36768791",
"name": "SSH密钥",
"font_class": "ssh-menu",
"unicode": "e668",
"unicode_decimal": 58984
},
{
"icon_id": "44603268",
"name": "MCP服务",
"font_class": "mcp-menu",
"unicode": "e62b",
"unicode_decimal": 58923
},
{
"icon_id": "44724034",
"name": "线性- AI建站",
"font_class": "ai-menu",
"unicode": "e7bf",
"unicode_decimal": 59327
},
{
"icon_id": "45110983",
"name": "大模型-大",
"font_class": "moxing-menu",
"unicode": "e62c",
"unicode_decimal": 58924
},
{
"icon_id": "15170483",
"name": "ahas 应用高可用",
"font_class": "ah-menu",
"unicode": "e6ba",
"unicode_decimal": 59066
},
{
"icon_id": "1598478",
"name": "网站防篡改",
"font_class": "tamper-menu",
"unicode": "e61c",
"unicode_decimal": 58908
},
{
"icon_id": "3141923",
"name": "SSL数字证书",
"font_class": "ssl-menu",
"unicode": "e7b0",
"unicode_decimal": 59312
},
{
"icon_id": "4608954",
"name": "文件夹,文件管理",
"font_class": "file-menu",
"unicode": "e609",
"unicode_decimal": 58889
},
{
"icon_id": "5653301",
"name": "监控",
"font_class": "system-monitor-menu",
"unicode": "e621",
"unicode_decimal": 58913
},
{
"icon_id": "7082471",
"name": "gpu",
"font_class": "gpu-menu",
"unicode": "e631",
"unicode_decimal": 58929
},
{
"icon_id": "7948556",
"name": "WAF",
"font_class": "waf-menu",
"unicode": "e623",
"unicode_decimal": 58915
},
{
"icon_id": "18270117",
"name": "界面设置",
"font_class": "xsetting-menu",
"unicode": "e624",
"unicode_decimal": 58916
},
{
"icon_id": "35113302",
"name": "磁盘管理",
"font_class": "disk-menu",
"unicode": "e6e5",
"unicode_decimal": 59109
},
{
"icon_id": "43864633",
"name": "文件互传",
"font_class": "exchange-menu",
"unicode": "e625",
"unicode_decimal": 58917
},
{
"icon_id": "397898",
"name": "移动端,手机端",
"font_class": "mobile-menu",
"unicode": "e628",
"unicode_decimal": 58920
},
{
"icon_id": "5767874",
"name": "任务进程",
"font_class": "process-menu",
"unicode": "ec35",
"unicode_decimal": 60469
},
{
"icon_id": "14095351",
"name": "防火墙",
"font_class": "firewalld-menu",
"unicode": "e798",
"unicode_decimal": 59288
},
{
"icon_id": "15009371",
"name": "监测数据",
"font_class": "monitor-menu",
"unicode": "e64a",
"unicode_decimal": 58954
},
{
"icon_id": "22231530",
"name": "Data server",
"font_class": "node-menu",
"unicode": "e813",
"unicode_decimal": 59411
},
{
"icon_id": "18536446",
"name": "feature视图",
+40
View File
@@ -14,6 +14,46 @@
/>
<missing-glyph />
<glyph glyph-name="run-menu" unicode="&#58934;" d="M888.875 740.25h-750c-20.625 0-37.5-16.875-37.5-37.5v-521.25c0-20.625 16.875-37.5 37.5-37.5h750c20.625 0 37.5 16.875 37.5 37.5V702.75c0 20.625-16.875 37.5-37.5 37.5z m-37.5-521.25h-675V665.25h675v-446.25zM740.75 65.25h-450c-20.625 0-37.5-16.875-37.5-37.5s16.875-37.5 37.5-37.5h450c20.625 0 37.5 16.875 37.5 37.5s-16.875 37.5-37.5 37.5zM384.5 273.375c7.5-3.75 15-5.625 22.5-5.625 7.5 0 16.875 1.875 24.375 5.625l238.125 138.75c15 9.375 22.5 24.375 22.5 41.25 0 16.875-9.375 31.875-22.5 41.25l-238.125 138.75c-15 9.375-31.875 9.375-46.875 0S362 609 362 592.125v-275.625c-1.875-18.75 7.5-33.75 22.5-43.125z m41.25 76.875v206.25l178.125-103.125-178.125-103.125z" horiz-adv-x="1024" />
<glyph glyph-name="ssh-menu" unicode="&#58984;" d="M830.068053 740.898133c-172.305067 0-315.665067 117.80096-317.412693 118.94784L494.086827 875.52l-18.568534-15.674027s-144.452267-118.94784-316.757333-118.94784H129.706667v-489.71776c1.14688-7.591253 24.958293-182.790827 355.095893-300.591786l9.885013-3.495254 9.8304 3.495254c329.64608 117.200213 354.003627 293.000533 355.150507 303.486293V740.898133h-29.600427zM494.086827 8.587947c-280.221013 103.273813-305.780053 246.033067-306.3808 246.033066V684.045653c144.50688 9.284267 262.30784 84.70528 306.3808 117.200214 44.127573-32.494933 162.52928-107.915947 306.981546-117.200214v-425.929386s-23.7568-145.65376-306.926933-249.52832zM624.667307 533.74976a130.74432 130.74432 0 0 1-130.525867 130.525867 130.74432 130.74432 0 0 1-130.58048-130.525867c0-62.09536 43.526827-113.759573 101.5808-127.085227v-244.886186h57.99936V270.9504h91.641173V328.840533h-91.641173V406.664533a130.635093 130.635093 0 0 1 101.5808 127.085227z m-203.106987 0a72.58112 72.58112 0 1 0 145.16224-0.054613 72.58112 72.58112 0 0 0-145.16224 0z" horiz-adv-x="1024" />
<glyph glyph-name="mcp-menu" unicode="&#58923;" d="M856.874667 233.6l51.285333-30.762667a21.333333 21.333333 0 0 0 0-36.608l-374.186667-224.512a42.666667 42.666667 0 0 0-43.946666 0l-374.186667 224.512a21.333333 21.333333 0 0 0 0 36.608l51.285333 30.762667L512 26.666667l344.874667 206.933333z m0 200.533333l51.285333-30.762666a21.333333 21.333333 0 0 0 0-36.608L512 129.109333l-396.16 237.653334a21.333333 21.333333 0 0 0 0 36.608l51.285333 30.762666L512 227.2l344.874667 206.933333z m-322.944 392.149334l374.229333-224.512a21.333333 21.333333 0 0 0 0-36.608L512 327.509333l-396.16 237.653334a21.333333 21.333333 0 0 0 0 36.608l374.186667 224.512a42.666667 42.666667 0 0 0 43.946666 0zM512 739.968L251.178667 583.466667 512 426.965333l260.821333 156.501334L512 739.968z" horiz-adv-x="1024" />
<glyph glyph-name="ai-menu" unicode="&#59327;" d="M905.75 766.5H118.25c-20.625 0-37.5-16.875-37.5-37.5v-590.625c0-20.625 16.875-37.5 37.5-37.5h176.25l-15-50.625c-3.75-11.25-1.875-24.375 5.625-33.75s18.75-15 30-15h393.75c11.25 0 22.5 5.625 30 15 7.5 9.375 9.375 22.5 5.625 33.75l-15 50.625H905.75c20.625 0 37.5 16.875 37.5 37.5V729c0 20.625-16.875 37.5-37.5 37.5zM365.75 76.5l7.5 22.5h277.5l7.5-22.5H365.75zM868.25 691.5v-515.625H155.75V691.5h712.5zM675.125 597.75h65.625v-328.125h-65.625zM399.5 348.375h91.875l24.375-78.75h95.625l-116.25 328.125H399.5l-116.25-328.125h93.75l22.5 78.75z m26.25 88.125c5.625 20.625 13.125 41.25 18.75 63.75v-1.875c5.625-20.625 11.25-41.25 18.75-61.875l5.625-20.625h-48.75l5.625 20.625z" horiz-adv-x="1024" />
<glyph glyph-name="moxing-menu" unicode="&#58924;" d="M386.95424 773.65248a187.20768 187.20768 0 0 0 187.00288 0l197.40672-113.80736a187.20768 187.20768 0 0 0 93.70112-162.18624v-41.81504a38.52288 38.52288 0 1 0-77.04064 0v41.81504c0 9.02656-1.12128 17.8944-3.23584 26.43968l-267.7504-154.58816v-316.7488a110.19776 110.19776 0 0 1 18.44224 8.4736l61.72672 35.64032a38.53312 38.53312 0 0 0 52.62848-14.10048 38.53824 38.53824 0 0 0-14.1056-52.62848l-61.72672-35.63008a187.19232 187.19232 0 0 0-187.10016-0.05632l-197.35552 113.77152a187.21792 187.21792 0 0 0-93.70624 162.18624V497.65888a187.2128 187.2128 0 0 0 93.70624 162.18624l197.40672 113.80736z m-211.456-252.2112a110.1824 110.1824 0 0 1-2.6112-23.7824v-227.24096a110.1824 110.1824 0 0 1 55.1424-95.44192l197.3504-113.77152c4.73088-2.72896 9.6256-5.06368 14.61248-7.02976v314.55744l-264.4992 152.704z m359.97696 185.45664a110.16192 110.16192 0 0 1-110.03904 0L228.02944 593.09568c-3.67616-2.11456-7.18848-4.43904-10.5472-6.92736l260.352-150.3232 263.27552 151.99232a109.568 109.568 0 0 1-8.23296 5.26336l-197.4016 113.79712zM744.09472 370.16576a35.11296 35.11296 0 0 1-32.60416 22.15424 35.14368 35.14368 0 0 1-32.66048-22.07232l-83.66592-208.9216a29.07136 29.07136 0 0 1 53.98016-21.62176l18.10944 45.19936h87.9616l17.95584-45.12768a29.06112 29.06112 0 0 1 37.76-16.27648 29.0816 29.0816 0 0 1 16.27136 37.76512l-83.10784 208.90112z m-53.52448-127.10912l20.84352 52.0448 20.69504-52.0448h-41.53856z m198.98368 159.54944a29.0816 29.0816 0 0 1-29.07648-29.07648v-223.01696a29.06624 29.06624 0 1 1 58.14784 0v223.01696a29.07136 29.07136 0 0 1-29.07136 29.07648z" horiz-adv-x="1024" />
<glyph glyph-name="ah-menu" unicode="&#59066;" d="M243.2 531.456l-2.048-301.056 260.096-153.6 264.704 147.456 2.048 300.544-262.144 153.6-262.656-146.944z m241.152-401.408l-206.848 119.296 2.048 243.2L486.4 384l-2.048-253.952z m243.2 115.2l-206.848-115.2 2.048 256 206.848 104.448-2.048-245.248zM505.856 415.744L307.2 520.704l200.704 115.2 198.144-117.248c0-0.512-200.704-102.912-200.192-102.912zM665.6 744.448L631.296 691.2l208.896-125.952-4.096-381.952-64-38.4 31.744-55.296 93.696 55.296 4.096 456.704v2.048L665.6 744.448zM170.496 573.952l336.896 189.952 66.048-40.448 31.744 53.248-95.232 57.344h-2.048l-399.36-221.696-2.048-277.504h61.952l2.048 239.104z m330.752-582.656l-334.848 196.096 2.048 76.8-61.952 2.048-2.048-115.2 394.752-232.448h2.048l241.152 136.704 2.048 2.048-31.744 55.296-211.456-121.344z" horiz-adv-x="1024" />
<glyph glyph-name="tamper-menu" unicode="&#58908;" d="M850.743179 382.724365c0 192.372531-155.988712 348.338664-348.338663 348.338664h-0.440264l-0.406397-0.022577c-192.011288-0.440263-347.492003-156.214487-347.492003-348.316087 0-192.056444 155.480715-347.853246 347.492003-348.316086l0.406397-0.022578h0.440264c192.349953 0 348.338664 155.988712 348.338663 348.338664zM431.578551 679.665098c-25.817498-26.901223-47.661336-67.766698-63.239887-117.809971a464.839134 464.839134 0 0 0-83.24365 34.498589 307.281279 307.281279 0 0 0 146.483537 83.311382z m-164.963311-103.800564a490.047037 490.047037 0 0 1 94.442145-39.849482c-10.803386-42.649106-17.271872-90.728128-18.253999-141.753528H197.053622a306.039511 306.039511 0 0 0 69.561618 181.60301zM197.053622 367.518344h145.749764c0.982126-51.002822 7.450612-99.081844 18.253999-141.719661a492.587018 492.587018 0 0 1-94.442145-39.883349 305.994355 305.994355 0 0 0-69.561618 181.60301z m87.951082-202.001881a464.263405 464.263405 0 0 0 83.311383 34.521166c15.578551-50.088429 37.422389-91.010348 63.262464-117.934148a307.507056 307.507056 0 0 0-146.573847 83.412982z m205.862653-90.366887c-36.316087 9.482597-73.196614 57.764816-96.654751 131.988712a463.676388 463.676388 0 0 0 96.654751 12.925682v-144.914394z m0 171.634996a490.4873 490.4873 0 0 1-103.94732-13.919097c-10.01317 39.409219-16.233302 84.84666-17.204138 134.652869h121.162746v-120.733772z m0 147.465663H369.715899c0.982126 49.851364 7.213547 95.322671 17.226716 134.754469a491.90969 491.90969 0 0 1 103.93603-13.862653v-120.891816z m0 147.601129a463.247413 463.247413 0 0 0-96.609596 12.925683c23.469427 74.144873 60.327375 122.370649 96.609596 131.830667v-144.75635z m320.568202-147.601129H664.850424c-0.982126 50.980245-7.439323 98.980245-18.231421 141.595485a493.772343 493.772343 0 0 1 95.187206 40.086547 306.005645 306.005645 0 0 0 69.62935-181.682032z m-88.05268 202.11477a466.780809 466.780809 0 0 0-84.011289-34.735654c-15.634995 50.302916-37.580433 91.349012-63.522107 118.306679a307.721542 307.721542 0 0 0 147.533396-83.571025z m-205.772343 89.937911c36.045156-9.979304 72.564441-58.024459 95.841956-131.729069a466.137347 466.137347 0 0 0-95.841956-12.722483V686.302916z m0-171.183443c35.435559 0.970838 69.92286 5.644402 103.134525 13.738476 10.01317-39.409219 16.222013-84.824083 17.19285-134.596425H517.610536V515.119473z m0-147.601129h120.327375c-0.982126-49.727187-7.17968-95.085607-17.158984-134.472248a490.182502 490.182502 0 0 1-103.168391 13.738476V367.518344z m0-292.052681V220.06397c32.929445-0.936971 64.967075-5.305738 95.864534-12.745062-23.266228-73.738476-59.796802-121.873942-95.864534-131.853245z m58.227657 6.400753c25.98683 26.946378 47.932268 68.026341 63.578552 118.408279a466.080903 466.080903 0 0 0 84.056444-34.78081 307.382879 307.382879 0 0 0-147.634996-83.627469z m70.814676 144.180621c10.76952 42.592662 17.215428 90.570084 18.197555 141.460019h146.585135a305.937911 305.937911 0 0 0-69.550328-181.580433 493.580433 493.580433 0 0 1-95.232362 40.120414zM928.060207 226.261524c-7.766698 0-12.936971-5.170273-12.93697-12.936971v-155.266227c0-49.162747-41.407338-90.570084-90.570086-90.570085H695.160866c-7.766698 0-12.936971-5.170273-12.936972-12.936971s5.170273-12.936971 12.936972-12.936971h129.380997a115.958608 115.958608 0 0 1 116.444026 116.444027V213.324553c0.011288 7.766698-5.170273 12.936971-12.925682 12.936971zM89.121355 548.69238c7.766698 0 12.936971 5.170273 12.936971 12.936971V714.310442c0 49.162747 41.407338 90.570084 90.570084 90.570085h160.436501c7.766698 0 12.936971 5.170273 12.936971 12.936971s-5.170273 12.936971-12.936971 12.936971H192.62841A115.958608 115.958608 0 0 1 76.184383 714.310442v-152.669802c0-7.766698 5.170273-12.94826 12.936972-12.94826zM339.089369-32.50047H181.249294c-49.162747 0-90.570084 41.407338-90.570084 90.570084V215.920978c0 7.766698-5.170273 12.936971-12.936971 12.936971s-12.936971-5.170273-12.936971-12.936971v-157.851364a115.958608 115.958608 0 0 1 116.444026-116.444027h157.851365c7.766698 0 12.936971 5.170273 12.93697 12.936972 0 7.75541-5.181562 12.936971-12.94826 12.936971zM824.541863 830.754469H669.286924c-7.766698 0-12.936971-5.170273-12.936971-12.936971s5.170273-12.936971 12.936971-12.936971h155.266227c49.162747 0 90.570084-41.407338 90.570086-90.570085v-152.669802c0-7.766698 5.170273-12.936971 12.93697-12.936972s12.936971 5.170273 12.936971 12.936972V714.310442c0 64.684854-51.759172 116.444026-116.455315 116.444027z" horiz-adv-x="1024" />
<glyph glyph-name="ssl-menu" unicode="&#59312;" d="M167.1 796.9v-825h684.6v825H167.1z m653.5-790.8H198.2V762.7h622.4v-756.6zM704 399.3c-2.2 3.3-2.1 2.9-7.9 9.2-2.8 3.1-5.8 5.7-9.2 8-83.6 54.1-171.5-4.6-171.5-83.8 0-17.4 4.2-33.8 11.7-48.2l-76-151.6 69.8 7.6 35.7-60.4 62.1 124 71-123.7 32.2 62.3L792 139l-81.1 141.5c18.8 32.6 20.6 76.2-6.9 118.8zM554.9 129.6l-21.3 36.1-41.7-4.5 50.7 101.2c15.8-17.4 37.4-29.5 61.8-33.2l0.3-0.5-49.8-99.1z m7.9 145.9c-15.3 15.3-23.7 35.7-23.7 57.3 0 21.6 8.4 42 23.7 57.3 15.3 15.3 35.7 23.7 57.3 23.7s42-8.4 57.3-23.7 23.7-35.7 23.7-57.3c0-21.6-8.4-42-23.7-57.3-15.3-15.3-35.7-23.7-57.3-23.7s-42 8.3-57.3 23.7z m187.1-110.6l-41.9 2.2-19.3-37.3-56.7 98.9c24.8 2.8 47 14.2 63.4 31.2l54.5-95z m30.7 573.2H238.2V722h542.4v16.1z m-73.9-129.8H279.2v-32.5h427.6v32.5zM279.2 466h244.9v32.5H279.2V466z m0-109.8h183.7v32.5H279.2v-32.5z m340.9 45.4v-16.3c29 0 52.6-23.6 52.6-52.6s-23.6-52.6-52.6-52.6v-16.3c38 0 68.8 30.9 68.8 68.9 0.1 38-30.8 68.9-68.8 68.9z" horiz-adv-x="1024" />
<glyph glyph-name="file-menu" unicode="&#58889;" d="M791.375 574.59375c-10.96875 58.6875-62.53125 103.3125-124.40625 103.3125H521.5625c-26.34375 33-67.21875 54.1875-113.0625 54.1875H236.1875c-79.40625 0-144-63.5625-144-141.65625v-415.875c0-78.09375 64.59375-141.65625 144-141.65625h552.1875c79.40625 0 144 63.5625 144 141.65625V433.125c0 77.0625-63 139.875-141 141.46875z m-124.40625 52.6875c33.75 0 62.34375-22.125 72.1875-52.5H552.5v15.75c0 12.75-1.875 25.03125-5.0625 36.75h119.53125z m-524.15625-36.75c0 52.03125 41.90625 94.40625 93.375 94.40625h172.40625c51.46875 0 93.375-42.375 93.375-94.40625v-15.75h-359.0625v15.75z m738.84375-415.875c0-52.03125-41.90625-94.40625-93.375-94.40625h-552.1875c-51.46875 0-93.375 42.375-93.375 94.40625V527.53125h645.46875c51.46875 0 93.375-42.375 93.375-94.40625v-258.46875z" horiz-adv-x="1024" />
<glyph glyph-name="system-monitor-menu" unicode="&#58913;" d="M152 744c-22.08 0-39.84-17.76-39.84-39.84v-480c0-22.08 17.76-39.84 39.84-39.84h720c22.08 0 39.84 17.76 39.84 39.84v480c0 22.08-17.76 39.84-39.84 39.84H152z m0 39.84h720c44.16 0 80.16-36 80.16-80.16v-480c0-44.16-36-80.16-80.16-80.16H152c-44.16 0-80.16 36-80.16 80.16v480c0 44.64 36 80.16 80.16 80.16zM825.44 407.04l-141.12 201.6c-2.4 3.84-4.32 6.24-6.72 9.12-4.32 4.32-8.64 6.24-13.44 6.24-4.8 0-9.6-1.92-13.44-6.24-3.36-3.84-3.36-4.8-6.72-9.12l-166.08-237.12-120 153.6c-7.68 9.6-18.72 10.08-26.4 5.28-4.32-2.88-6.24-5.28-9.12-9.12L189.44 326.4c-7.68-11.04-5.76-20.16 5.28-27.84 11.04-7.68 20.16-5.76 27.84 5.28L341.6 480l120.48-154.56c8.16-10.56 20.16-10.56 27.84-3.36 2.88 2.4 6.72 8.16 10.08 12.96l163.2 233.28 128.64-183.84c7.68-11.04 16.8-12.48 27.84-4.8 11.52 7.2 13.44 16.32 5.76 27.36zM172.16 24h680.16c13.44 0 20.16-6.72 20.16-20.16 0-13.44-6.72-20.16-20.16-20.16H172.16c-13.44 0-20.16 6.72-20.16 20.16 0 13.44 6.72 20.16 20.16 20.16zM371.84 183.84c13.44 0 20.16-6.72 20.16-20.16v-159.84c0-13.44-6.72-20.16-20.16-20.16-13.44 0-20.16 6.72-20.16 20.16v159.84c0.48 13.44 7.2 20.16 20.16 20.16zM652.16 183.84c13.44 0 20.16-6.72 20.16-20.16v-159.84c0-13.44-6.72-20.16-20.16-20.16-13.44 0-20.16 6.72-20.16 20.16v159.84c0 13.44 6.72 20.16 20.16 20.16z" horiz-adv-x="1024" />
<glyph glyph-name="gpu-menu" unicode="&#58929;" d="M725.333333 96H298.666667c-41.1712 0-74.666667 33.495467-74.666667 74.666667V597.333333c0 41.1712 33.495467 74.666667 74.666667 74.666667h426.666666c41.1712 0 74.666667-33.495467 74.666667-74.666667v-426.666666c0-41.1712-33.495467-74.666667-74.666667-74.666667zM298.666667 629.333333c-17.6448 0-32-14.3552-32-32v-426.666666c0-17.6448 14.3552-32 32-32h426.666666c17.6448 0 32 14.3552 32 32V597.333333c0 17.6448-14.3552 32-32 32H298.666667zM627.2 218.666667H396.8c-27.643733 0-50.133333 22.4896-50.133333 50.133333V499.2c0 27.643733 22.4896 50.133333 50.133333 50.133333h230.4c27.643733 0 50.133333-22.4896 50.133333-50.133333v-230.4c0-27.643733-22.4896-50.133333-50.133333-50.133333zM396.8 506.666667c-4.117333 0-7.466667-3.349333-7.466667-7.466667v-230.4c0-4.116267 3.349333-7.466667 7.466667-7.466667h230.4c4.116267 0 7.466667 3.3504 7.466667 7.466667V499.2c0 4.117333-3.3504 7.466667-7.466667 7.466667H396.8zM346.666667 632.5568c-11.7824 0-21.333333 9.550933-21.333334 21.333333V781.8848c0 11.7824 9.550933 21.333333 21.333334 21.333333s21.333333-9.550933 21.333333-21.333333v-127.9936c0-11.7824-9.550933-21.3344-21.333333-21.3344zM456.888533 632.5568c-11.7824 0-21.333333 9.550933-21.333333 21.333333V781.8848c0 11.7824 9.550933 21.333333 21.333333 21.333333s21.333333-9.550933 21.333334-21.333333v-127.9936c0-11.7824-9.550933-21.3344-21.333334-21.3344zM567.1104 632.5568c-11.7824 0-21.333333 9.550933-21.333333 21.333333V781.8848c0 11.7824 9.550933 21.333333 21.333333 21.333333s21.333333-9.550933 21.333333-21.333333v-127.9936c0-11.7824-9.550933-21.3344-21.333333-21.3344zM677.333333 632.5568c-11.7824 0-21.333333 9.550933-21.333333 21.333333V781.8848c0 11.7824 9.550933 21.333333 21.333333 21.333333s21.333333-9.550933 21.333334-21.333333v-127.9936c0-11.7824-9.550933-21.3344-21.333334-21.3344zM346.666667-34.109867c-11.7824 0-21.333333 9.550933-21.333334 21.333334V115.218133c0 11.7824 9.550933 21.333333 21.333334 21.333334s21.333333-9.550933 21.333333-21.333334v-127.9936c0-11.7824-9.550933-21.3344-21.333333-21.3344zM456.888533-34.109867c-11.7824 0-21.333333 9.550933-21.333333 21.333334V115.218133c0 11.7824 9.550933 21.333333 21.333333 21.333334s21.333333-9.550933 21.333334-21.333334v-127.9936c0-11.7824-9.550933-21.3344-21.333334-21.3344zM567.1104-34.109867c-11.7824 0-21.333333 9.550933-21.333333 21.333334V115.218133c0 11.7824 9.550933 21.333333 21.333333 21.333334s21.333333-9.550933 21.333333-21.333334v-127.9936c0-11.7824-9.550933-21.3344-21.333333-21.3344zM677.333333-34.109867c-11.7824 0-21.333333 9.550933-21.333333 21.333334V115.218133c0 11.7824 9.550933 21.333333 21.333333 21.333334s21.333333-9.550933 21.333334-21.333334v-127.9936c0-11.7824-9.550933-21.3344-21.333334-21.3344zM242.663467 197.888H114.669867c-11.7824 0-21.333333 9.550933-21.333334 21.333333s9.550933 21.333333 21.333334 21.333334h127.9936c11.7824 0 21.333333-9.550933 21.333333-21.333334s-9.550933-21.333333-21.333333-21.333333zM242.663467 308.109867H114.669867c-11.7824 0-21.333333 9.550933-21.333334 21.333333s9.550933 21.333333 21.333334 21.333333h127.9936c11.7824 0 21.333333-9.550933 21.333333-21.333333s-9.550933-21.333333-21.333333-21.333333zM242.663467 418.331733H114.669867c-11.7824 0-21.333333 9.550933-21.333334 21.333334s9.550933 21.333333 21.333334 21.333333h127.9936c11.7824 0 21.333333-9.550933 21.333333-21.333333s-9.550933-21.333333-21.333333-21.333334zM242.663467 528.554667H114.669867c-11.7824 0-21.333333 9.550933-21.333334 21.333333s9.550933 21.333333 21.333334 21.333333h127.9936c11.7824 0 21.333333-9.550933 21.333333-21.333333s-9.550933-21.333333-21.333333-21.333333zM909.330133 197.888H781.336533c-11.7824 0-21.333333 9.550933-21.333333 21.333333s9.550933 21.333333 21.333333 21.333334h127.9936c11.7824 0 21.333333-9.550933 21.333334-21.333334s-9.550933-21.333333-21.333334-21.333333zM909.330133 308.109867H781.336533c-11.7824 0-21.333333 9.550933-21.333333 21.333333s9.550933 21.333333 21.333333 21.333333h127.9936c11.7824 0 21.333333-9.550933 21.333334-21.333333s-9.550933-21.333333-21.333334-21.333333zM909.330133 418.331733H781.336533c-11.7824 0-21.333333 9.550933-21.333333 21.333334s9.550933 21.333333 21.333333 21.333333h127.9936c11.7824 0 21.333333-9.550933 21.333334-21.333333s-9.550933-21.333333-21.333334-21.333334zM909.330133 528.554667H781.336533c-11.7824 0-21.333333 9.550933-21.333333 21.333333s9.550933 21.333333 21.333333 21.333333h127.9936c11.7824 0 21.333333-9.550933 21.333334-21.333333s-9.550933-21.333333-21.333334-21.333333z" horiz-adv-x="1024" />
<glyph glyph-name="waf-menu" unicode="&#58915;" d="M961.209095 735.169023C796.898228 760.77606 575.9016 846.193901 523.142175 891.043419c-7.875566 6.696521-24.691274 6.456133-32.898804 0.194599-59.993957-46.154481-348.322097-138.074243-427.970628-159.113909-21.199925-5.563263-22.4591-22.894088-21.14269-41.884733 6.673627-151.44439 31.422135-355.808464 94.518241-493.688107 66.690477-145.594951 223.812601-254.52502 363.901523-320.917874a33.631415 33.631415 0 0 1 14.228676-3.434113 33.024721 33.024721 0 0 1 18.681575 3.434113c140.352205 69.048568 284.37891 177.715356 355.430712 320.917874 67.68637 136.402974 88.82906 345.219948 94.895993 496.42395 1.385092 15.224568 0.538011 38.736796-21.577678 42.193804zM831.708688 229.77059c-58.895041-128.584643-168.500485-215.089954-315.938409-291.693571-155.576773 74.714855-253.162822 155.095997-319.612912 278.311977C131.058029 336.960709 111.15162 544.529954 104.420758 682.226445c70.468002 18.807493 342.701598 95.628604 402.935943 142.172284 61.447731-46.394869 324.500799-126.35247 409.151688-143.431459-7.303214-133.564108-29.35022-330.178533-84.708124-451.19668z m0 0M327.729689 156.463721c-33.745885 0-46.62381 17.857388-46.692491 39.824266V576.730489a39.824266 39.824266 0 0 0 39.824265 39.812818h380.453949a39.755583 39.755583 0 0 0 39.686901-39.755583v-380.499737c0-21.978324-16.68979-39.824266-50.057923-39.824266z m373.448359 34.341132s5.403005 0 5.494581 5.425899v76.351782h-176.284476v-81.846363h170.789895v0.11447z m-385.879848 5.425899a5.483134 5.483134 0 0 1 5.494581-5.425899H496.024128v81.766234H315.2982z m391.488899 110.612784v62.569542h-76.328888v-62.512307z m-110.578443 0v62.569542H431.405565v-62.512307z m-199.018305 0v62.569542h-81.846363v-62.512307z m309.55096 96.784756v62.500859H530.353812v-62.500859z m-210.72863 0v62.500859H315.2982v-62.500859z m210.72863 96.773308s0.274729 57.715995 0 76.283101a5.185511 5.185511 0 0 1-5.563263 5.494581h-70.719837v-81.846364h76.317441z m-110.578444 0v81.800576H431.405565v-81.846364h164.711514z m-199.018304 0v81.800576h-76.2831a5.494581 5.494581 0 0 1-5.494581-5.494581v-76.2831z m0 0" horiz-adv-x="1024" />
<glyph glyph-name="xsetting-menu" unicode="&#58916;" d="M507.056152 37.930664c192.810059 0 341.125488 153.259277 341.125489 341.125488s-153.259277 341.125488-341.125489 341.125489S165.930664 566.922363 165.930664 379.056152c0-98.876953 34.606934-143.371582 123.596191-168.09082 9.887695-4.943848 14.831543-4.943848 24.719239-9.887695 4.943848 0 24.719238-4.943848 24.719238-9.887696 54.382324-19.775391 84.04541-29.663086 103.820801-54.382324 19.775391-19.775391 29.663086-39.550781 44.494629-64.270019 4.943848-9.887695 9.887695-19.775391 9.887695-24.719239 4.943848 4.943848 4.943848-4.943848 9.887695-9.887695z m0-44.494629c-64.27002 0-24.719238 44.494629-93.933105 118.652344C343.90918 176.358398 121.436035 136.807617 121.436035 379.056152 121.436035 591.641602 294.470703 764.67627 507.056152 764.67627s385.620117-173.034668 385.620118-385.620118-168.09082-385.620117-385.620118-385.620117z m79.101563 113.708496c-44.494629 0-84.04541 34.606934-84.04541 84.04541s34.606934 79.101563 84.04541 79.101563c44.494629 0 84.04541-34.606934 84.04541-79.101563 0-44.494629-39.550781-84.04541-84.04541-84.04541z m0 44.494629c19.775391 0 34.606934 14.831543 34.606933 34.606934 0 24.719238-14.831543 29.663086-34.606933 29.663086s-34.606934-9.887695-34.606934-29.663086c0-14.831543 14.831543-34.606934 34.606934-34.606934z m34.606933 385.620117c-29.663086 0-44.494629 19.775391-44.494628 44.494629s19.775391 49.438477 44.494628 49.438477c29.663086 0 44.494629-19.775391 44.494629-44.494629s-14.831543-49.438477-44.494629-49.438477z m-123.596191 39.550782c-29.663086 0-44.494629 19.775391-44.494629 44.494629s19.775391 44.494629 44.494629 44.494628c29.663086 0 44.494629-19.775391 44.494629-44.494628s-19.775391-44.494629-44.494629-44.494629z m217.529297-128.540039c-29.663086 0-44.494629 19.775391-44.494629 44.494628s19.775391 44.494629 44.494629 44.494629c29.663086 0 44.494629-19.775391 44.494629-44.494629s-19.775391-44.494629-44.494629-44.494628zM373.572266 537.259277c-29.663086 0-44.494629 19.775391-44.494629 44.494629s14.831543 49.438477 44.494629 49.438477 44.494629-19.775391 44.494629-44.494629-19.775391-49.438477-44.494629-49.438477z" horiz-adv-x="1024" />
<glyph glyph-name="disk-menu" unicode="&#59109;" d="M291.281855 732.46875a25.3125 25.3125 0 0 1-25.048828-21.251953L147.264277 101.818359c-1.951172-11.601563 19.986328-30.427734 23.25586-34.277343 3.269531-3.902344 10.546875-10.335938 22.253906-10.335938h691.189453a28.6875 28.6875 0 0 1 22.464844 10.546875c3.322266 3.955078 33.644531 11.707031 31.429687 23.414063L797.320918 711.691406a25.470703 25.470703 0 0 1-24.996094 20.777344H291.281855zM192.774043-16.253906a102.515625 102.515625 0 0 0-101.25 119.390625L193.775996 723.082031C201.633418 771.070313 242.608027 805.875 291.281855 805.875h481.042969c47.566406 0 88.435547-33.960938 97.189453-80.683594l115.382813-619.945312a102.515625 102.515625 0 0 0-100.933594-121.5H192.774043zM832.072871 297.515625a126.931641 126.931641 0 0 0 126.931641-126.878906v-47.144531a126.931641 126.931641 0 0 0-126.931641-126.984375H253.787715A126.931641 126.931641 0 0 0 126.856074 123.492188v47.144531A126.931641 126.931641 0 0 0 253.787715 297.515625h578.285156z m14.027344-88.59375H230.637324a65.759766 65.759766 0 0 1 0-131.466797h615.462891a65.707031 65.707031 0 1 1 0 131.466797zM866.77209 143.162109a35.859375 35.859375 0 1 0-71.71875 0 35.859375 35.859375 0 0 0 71.71875 0M660.317012 536.138672h-12.392578a14.501953 14.501953 0 0 0-13.183594 9.703125l-6.855469 17.085937a14.34375 14.34375 0 0 0 2.425781 16.083985l8.701172 8.701172a10.177734 10.177734 0 0 1 0 14.34375l-14.396484 14.396484a10.177734 10.177734 0 0 1-14.34375 0l-8.701172-8.701172a14.765625 14.765625 0 0 0-16.083984-2.478516l-17.138672 6.960938a14.660156 14.660156 0 0 0-9.650391 13.183594v12.128906A10.230469 10.230469 0 0 1 548.572871 647.671875h-20.355469a10.230469 10.230469 0 0 1-10.125-10.177734v-12.128907c0-5.695313-4.482422-11.601563-9.703125-13.130859l-17.085937-6.960938a14.34375 14.34375 0 0 0-16.083985 2.478516l-8.701171 8.701172a10.177734 10.177734 0 0 1-14.34375 0l-14.396485-14.396484a10.177734 10.177734 0 0 1 0-14.34375l8.701172-8.701172a14.765625 14.765625 0 0 0 2.478516-16.083985l-6.960938-17.085937a14.660156 14.660156 0 0 0-13.183594-9.703125h-12.128906A10.019531 10.019531 0 0 1 406.559199 526.013672v-20.355469c0-5.695313 4.746094-10.125 10.177735-10.125h12.128906c5.695313 0 11.601563-4.482422 13.130859-9.703125l6.960938-17.085937a14.291016 14.291016 0 0 0-2.478516-16.083985l-8.701172-8.701172a10.177734 10.177734 0 0 1 0-14.34375l14.396485-14.396484a10.177734 10.177734 0 0 1 14.34375 0l8.701171 8.701172a14.765625 14.765625 0 0 0 16.083985 2.478515l17.085937-6.960937a14.660156 14.660156 0 0 0 9.703125-13.183594v-12.128906c0-5.642578 4.693359-10.125 10.125-10.125h20.355469c5.695313 0 10.125 4.746094 10.125 10.177734v11.390625c0 5.695313 4.482422 11.601563 9.650391 13.13086l17.138672 6.908203a14.34375 14.34375 0 0 0 16.083984-2.478516l8.701172-8.648437a10.177734 10.177734 0 0 1 14.34375 0l14.396484 14.396484a10.177734 10.177734 0 0 1 0 14.34375l-8.701172 8.701172a14.765625 14.765625 0 0 0-2.478515 16.083984l6.960937 17.085938a14.660156 14.660156 0 0 0 13.13086 9.703125h12.128906A10.019531 10.019531 0 0 1 670.231074 504.919922V525.328125c0.263672 6.433594-4.21875 10.863281-9.914062 10.863281zM588.967402 515.835938a50.994141 50.994141 0 0 0-51.046875-51.046876 50.994141 50.994141 0 0 0-51.099609 51.046875c0 28.265625 22.833984 51.046875 51.099609 51.046875 28.212891 0 51.046875-22.78125 51.046875-51.046875z" horiz-adv-x="1088" />
<glyph glyph-name="exchange-menu" unicode="&#58917;" d="M861.888 395.84V512.256q0 14.912-14.976 14.912h-320.64q-28.032 0-45.952 21.568L390.272 657.088H185.6q-14.912 0-14.912-14.976v-490.624q0-14.976 14.912-14.976h266.688a38.4 38.4 0 0 0 0-76.8H185.6q-38.016 0-64.896 26.88-26.88 26.88-26.88 64.896V642.112q0 38.016 26.88 64.896 26.88 26.88 64.896 26.88h212.672q28.032 0 45.952-21.568l90.048-108.352h312.64q38.016 0 64.896-26.88 26.88-26.88 26.88-64.832v-116.416a38.4 38.4 0 1 0-76.8 0z m-42.752-55.68l96-85.312a38.4 38.4 0 0 0-25.536-67.136H580.288a38.4 38.4 0 0 0 0 76.8h208.32l-20.48 18.24a38.4 38.4 0 1 0 51.008 57.408z m-168.32-356.032l-96 85.312a38.4 38.4 0 0 0 25.472 67.072H889.6a38.4 38.4 0 0 0 0-76.8h-208.32l20.48-18.24a38.4 38.4 0 0 0-51.008-57.344z" horiz-adv-x="1024" />
<glyph glyph-name="mobile-menu" unicode="&#58920;" d="M826.090023 34.053839c0-53.442166-43.324738-96.764857-96.764857-96.764857L294.670741-62.711018c-53.439096 0-96.761788 43.322691-96.761788 96.764857L197.908954 733.947184c0 53.439096 43.322691 96.762811 96.761788 96.762811l434.655448 0c53.44012 0 96.764857-43.323715 96.764857-96.762811L826.091046 34.053839 826.090023 34.053839zM770.25025 733.947184c0 22.602787-18.321274 40.925085-40.924061 40.925085L294.670741 774.872269c-22.601764 0-40.924061-18.322297-40.924061-40.925085l0-699.893344c0-22.602787 18.322297-40.924061 40.924061-40.924061l434.655448 0c22.602787 0 40.924061 18.321274 40.924061 40.924061L770.25025 733.947184 770.25025 733.947184zM797.529547 118.76722L225.18825 118.76722c-7.716752 0-13.959943 6.244214-13.959943 13.95892 0 7.716752 6.244214 13.960966 13.959943 13.960966l572.341297 0c7.701402 0 13.960966-6.244214 13.960966-13.960966C811.48949 125.010411 805.231973 118.76722 797.529547 118.76722zM797.529547 677.154713L225.18825 677.154713c-7.716752 0-13.959943 6.243191-13.959943 13.95892 0 7.716752 6.244214 13.960966 13.959943 13.960966l572.341297 0c7.701402 0 13.960966-6.244214 13.960966-13.960966C811.48949 683.397904 805.231973 677.154713 797.529547 677.154713zM546.898323 59.43695c0-13.495362-10.946306-24.429389-24.429389-24.429389l-6.978948 0c-13.483082 0-24.430412 10.93505-24.430412 24.429389l0 6.980995c0 13.495362 10.94733 24.429389 24.430412 24.429389l6.978948 0c13.483082 0 24.429389-10.937097 24.429389-24.429389L546.898323 59.43695zM575.090409 429.127803c-1.526773 0-3.094478 0.24457-4.623297 0.789992-7.277754 2.549056-11.096732 10.523681-8.547677 17.803481l3.790326 10.782577c2.562359 7.266497 10.497075 11.137665 17.801435 8.534374 7.267521-2.549056 11.098779-10.523681 8.534374-17.803481l-3.78828-10.782577C586.240353 432.713468 580.855716 429.127803 575.090409 429.127803zM521.869277 277.556713c-1.526773 0-3.094478 0.2415-4.623297 0.787946-7.2798 2.537799-11.096732 10.524704-8.547677 17.775852l39.588647 112.7489c2.549056 7.278777 10.510378 11.150968 17.804505 8.547677 7.265474-2.549056 11.096732-10.524704 8.53335-17.790178l-39.588647-112.747877C533.020244 281.124981 527.635607 277.556713 521.869277 277.556713zM465.29477 382.825244c-1.526773 0-3.095501 0.24457-4.623297 0.789992-7.278777 2.535753-11.096732 10.523681-8.547677 17.781992l57.882292 164.883281c2.536776 7.293103 10.510378 11.137665 17.791202 8.547677 7.277754-2.549056 11.097756-10.524704 8.5487-17.790178l-57.882292-164.890444C476.459041 386.396583 471.061101 382.825244 465.29477 382.825244zM438.111664 305.476599c-1.526773 0-3.093455 0.2415-4.621251 0.787946-7.2798 2.537799-11.096732 10.522658-8.5487 17.803481l8.520047 24.211425c2.549056 7.278777 10.497075 11.122315 17.790178 8.534374 7.278777-2.536776 11.097756-10.524704 8.5487-17.803481l-8.520047-24.211425C449.262632 309.043844 443.880041 305.476599 438.111664 305.476599z" horiz-adv-x="1024" />
<glyph glyph-name="process-menu" unicode="&#60469;" d="M452 24H184.85C166.91 24 152 39.3 152 58.62V709.38C152 728.7 166.91 744 184.85 744h534.3C737.09 744 752 728.7 752 709.38v-171.06a30 30 0 0 1 60 0V709.38C812 761.46 770.6 804 719.15 804H184.85C133.4 804 92 761.46 92 709.38v-650.76C92 6.54 133.4-36 184.85-36H452a30 30 0 0 1 0 60zM722 444a240 240 0 1 1 0-480 240 240 0 0 1 0 480z m0-420a180 180 0 1 0 0 360 180 180 0 0 0 0-360zM811.49 219H737v60a30 30 0 0 1-60 0v-90a30 30 0 0 1 30-30h104.49a30 30 0 0 1 0 60zM632 564a30 30 0 0 1-30 30H302a30 30 0 0 1 0-60h300a30 30 0 0 1 30 30zM302 354a30 30 0 0 1 0-60h75.27a30 30 0 0 1 0 60H302z" horiz-adv-x="1024" />
<glyph glyph-name="firewalld-menu" unicode="&#59288;" d="M160 672a64 64 0 0 0 64 64h576a64 64 0 0 0 64-64v-576a64 64 0 0 0-64-64H224a64 64 0 0 0-64 64V672z m256-480H224v-96h192v96z m384 0H480v-96h320v96z m0 160h-192v-96h192v96z m-256 0H224v-96h320v96z m256 160H480v-96h320v96zM224 416h192v96H224v-96z m320 256H224v-96h320V672z m256 0h-192v-96h192V672z" horiz-adv-x="1024" />
<glyph glyph-name="monitor-menu" unicode="&#58954;" d="M907.177142 732.428572h-789.42857A51.955714 51.955714 0 0 1 65.857142 680.472858v-595.517144A51.955714 51.955714 0 0 1 117.787142 33h789.428572a51.955714 51.955714 0 0 1 51.955714 51.955714V680.472858A51.955714 51.955714 0 0 1 907.177142 732.428572z m20.275716-51.955714v-84.857144H607.515714v105.132858h299.661428a20.288572 20.288572 0 0 0 20.275716-20.275714zM117.787142 700.748572h458.048572v-105.158572h-478.285714v84.857142a20.301428 20.301428 0 0 0 20.237142 20.30143z m789.428572-636.068572h-789.428572a20.301428 20.301428 0 0 0-20.275714 20.275714V563.91h829.94143v-478.954286a20.288572 20.288572 0 0 0-20.275716-20.275714zM789.971428 488.515714h-44.344286v-318.677142h-63.771428V321.9h-44.357142v-152.061428h-63.77143V487.885714h-44.344284v-318.047142h-63.784286V322.53h-44.344286v-152.691428h-56.391428v-44.344286h481.5v44.344286H789.971428V488.515714zM833.171428 667.435714h41.065714v-41.065714H833.171428zM746.63 667.435714h41.065714v-41.065714h-41.065714zM660.101428 667.435714h41.065714v-41.065714h-41.065714zM171.002858 665.905714h324.372856v-38.018572H171.002858z" horiz-adv-x="1024" />
<glyph glyph-name="node-menu" unicode="&#59411;" d="M362 714H122a45 45 0 0 1-45-45v-570a45 45 0 0 1 45-45h240a45 45 0 0 1 45 45V669a45 45 0 0 1-45 45z m15-615a15 15 0 0 0-15-15H122a15 15 0 0 0-15 15V669a15 15 0 0 0 15 15h240a15 15 0 0 0 15-15zM902 489H572a45 45 0 0 1-45-45v-120a45 45 0 0 1 45-45h330a45 45 0 0 1 45 45v120a45 45 0 0 1-45 45z m15-165a15 15 0 0 0-15-15H572a15 15 0 0 0-15 15v120a15 15 0 0 0 15 15h330a15 15 0 0 0 15-15zM902 459H572a15 15 0 0 1-15-15v-120a15 15 0 0 1 15-15h330a15 15 0 0 1 15 15v120a15 15 0 0 1-15 15z m-285-105a15 15 0 0 0-30 0v60a15 15 0 0 0 30 0z m60 0a15 15 0 0 0-30 0v60a15 15 0 0 0 30 0z m60 0a15 15 0 0 0-30 0v60a15 15 0 0 0 30 0z m105-15a45 45 0 1 0 45 45 45 45 0 0 0-45-45zM902 819H572a45 45 0 0 1-45-45v-120a45 45 0 0 1 45-45h330a45 45 0 0 1 45 45V774a45 45 0 0 1-45 45z m15-165a15 15 0 0 0-15-15H572a15 15 0 0 0-15 15V774a15 15 0 0 0 15 15h330a15 15 0 0 0 15-15zM902 789H572a15 15 0 0 1-15-15v-120a15 15 0 0 1 15-15h330a15 15 0 0 1 15 15V774a15 15 0 0 1-15 15z m-285-105a15 15 0 0 0-30 0V744a15 15 0 0 0 30 0z m60 0a15 15 0 0 0-30 0V744a15 15 0 0 0 30 0z m60 0a15 15 0 0 0-30 0V744a15 15 0 0 0 30 0z m105-15a45 45 0 1 0 45 45 45 45 0 0 0-45-45zM902 159H572a45 45 0 0 1-45-45v-120a45 45 0 0 1 45-45h330a45 45 0 0 1 45 45v120a45 45 0 0 1-45 45z m15-165a15 15 0 0 0-15-15H572a15 15 0 0 0-15 15v120a15 15 0 0 0 15 15h330a15 15 0 0 0 15-15zM902 129H572a15 15 0 0 1-15-15v-120a15 15 0 0 1 15-15h330a15 15 0 0 1 15 15v120a15 15 0 0 1-15 15z m-285-105a15 15 0 0 0-30 0v60a15 15 0 0 0 30 0z m60 0a15 15 0 0 0-30 0v60a15 15 0 0 0 30 0z m60 0a15 15 0 0 0-30 0v60a15 15 0 0 0 30 0z m105-15a45 45 0 1 0 45 45 45 45 0 0 0-45-45zM842 714m-15 0a15 15 0 1 1 30 0 15 15 0 1 1-30 0ZM842 384m-15 0a15 15 0 1 1 30 0 15 15 0 1 1-30 0ZM842 54m-15 0a15 15 0 1 1 30 0 15 15 0 1 1-30 0ZM542 369H392a15 15 0 0 0 0 30h150a15 15 0 0 0 0-30zM542 39h-45a45 45 0 0 0-45 45V684a45 45 0 0 0 45 45h45a15 15 0 0 0 0-30h-45a15 15 0 0 1-15-15v-600a15 15 0 0 1 15-15h45a15 15 0 0 0 0-30zM242 204m-60 0a60 60 0 1 1 120 0 60 60 0 1 1-120 0ZM152 624h180v-60H152zM152 504h180v-60H152zM152 384h180v-60H152z" horiz-adv-x="1024" />
<glyph glyph-name="featureshitu" unicode="&#58942;" d="M540.16 799.232l284.16-164.053333a85.333333 85.333333 0 0 0 42.666667-73.898667v-328.106667a85.333333 85.333333 0 0 0-42.666667-73.941333l-284.16-164.053333a85.333333 85.333333 0 0 0-85.333333 0L170.666667 159.232a85.333333 85.333333 0 0 0-42.666667 73.898667v328.106666a85.333333 85.333333 0 0 0 42.666667 73.941334l284.16 164.053333a85.333333 85.333333 0 0 0 85.333333 0zM497.493333 725.333333L213.333333 561.28v-328.106667l284.16-164.096 284.16 164.053334v328.106666L497.493333 725.333333z m137.898667-205.866666a42.666667 42.666667 0 1 0 42.666667-73.898667l-137.898667-79.573333v-139.477334a42.666667 42.666667 0 1 0-85.333333 0v139.477334l-137.898667 79.573333a42.666667 42.666667 0 1 0 42.666667 73.898667l137.898666-79.573334z" horiz-adv-x="1024" />
<glyph glyph-name="youhuawendang" unicode="&#59332;" d="M834.7 725.3c9.2-2.1 16.4-9.3 18.6-18.6 31.2-135.8-5.9-283.9-111.5-389.4-14.9-14.9-30.9-28.6-47.9-41-4.8-3.5-8.2-8.6-9.6-14.3-13.6-55.1-42.4-108.2-86.5-152.3-19.7-19.7-41.8-36.9-65.8-51.1-20.4-12.1-44.4 8.6-36.2 30.8 12.9 35 19.3 72.9 19.3 111.9-3.3-0.5-6.6-1.3-9.9-1.8-31.9 27.4-62.7 55.9-92.4 85.6-29.7 29.7-58.2 60.5-85.6 92.4 0.5 3.3 1.3 6.6 1.8 9.9-39 0-76.8-6.4-111.9-19.3-22.2-8.2-42.8 15.8-30.8 36.2 14.2 24 31.4 46.1 51.1 65.8 44.1 44.1 97.2 72.9 152.3 86.5 5.8 1.4 10.8 4.8 14.3 9.6 12.5 17 26.2 33 41 47.9 105.9 105.3 254 142.4 389.7 111.2zM563.8 555.2c-33.2-32.7-33.7-86.2-1-119.4s86.2-33.7 119.4-1l1 1c32.7 33.2 32.3 86.7-1 119.4-32.8 32.4-85.5 32.4-118.4 0zM380.6 140.7C355 115.1 196.4 6.6 165.5 37.5c-30.9 30.9 77.6 189.5 103.2 215.1 25.6 25.6 71.4 21.3 102.2-9.6 31-30.9 35.3-76.7 9.7-102.3z" horiz-adv-x="1024" />

Before

Width:  |  Height:  |  Size: 196 KiB

After

Width:  |  Height:  |  Size: 230 KiB

Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -7,7 +7,7 @@
</el-icon>
<span>{{ $t(subItem.meta?.title as string, 2) }}</span>
</template>
<SubItem :menuList="subItem.children" />
<SubItem :menuList="subItem.children" :level="level + 1" />
</el-sub-menu>
<el-menu-item v-else-if="subItem?.children?.length === 1" :index="subItem.children[0].path">
@@ -18,17 +18,22 @@
<span>{{ $t(subItem.meta?.title as string, 2) }}</span>
</template>
</el-menu-item>
<el-menu-item :index="''" v-else-if="subItem.path === '/xpack/upage'" @click="goUpage">
<template #title>
<span style="margin-left: 10px">{{ $t('xpack.upage') }}</span>
</template>
</el-menu-item>
<el-menu-item v-else :index="subItem.path">
<el-icon v-if="subItem.meta?.icon">
<el-menu-item v-else-if="subItem.path === '/xpack/upage'" :index="''" @click="goUpage">
<el-icon v-if="subItem.meta?.icon && level === 0">
<SvgIcon :iconName="(subItem.meta?.icon as string)" />
</el-icon>
<template #title>
<span v-if="subItem.meta?.icon">{{ $t(subItem.meta?.title as string, 2) }}</span>
<span v-if="subItem.meta?.icon && level === 0">{{ $t(subItem.meta?.title as string, 2) }}</span>
<span v-else style="margin-left: 10px">{{ $t(subItem.meta?.title as string, 2) }}</span>
</template>
</el-menu-item>
<el-menu-item v-else :index="subItem.path">
<el-icon v-if="subItem.meta?.icon && level === 0">
<SvgIcon :iconName="(subItem.meta?.icon as string)" />
</el-icon>
<template #title>
<span v-if="subItem.meta?.icon && level === 0">{{ $t(subItem.meta?.title as string, 2) }}</span>
<span v-else style="margin-left: 10px">{{ $t(subItem.meta?.title as string, 2) }}</span>
</template>
</el-menu-item>
@@ -39,7 +44,7 @@
import { RouteRecordRaw } from 'vue-router';
import SvgIcon from '@/components/svg-icon/svg-icon.vue';
defineProps<{ menuList: RouteRecordRaw[] }>();
defineProps<{ menuList: RouteRecordRaw[]; level?: number }>();
const goUpage = () => {
window.open('https://www.lxware.cn/upage', '_blank', 'noopener,noreferrer');
@@ -20,7 +20,7 @@
@select="handleMenuClick"
class="custom-menu"
>
<SubItem :menuList="routerMenus" />
<SubItem :menuList="routerMenus" :level="0" />
</el-menu>
</el-scrollbar>
<Collapse :version="version" @open-task="openTask" />
@@ -53,7 +53,9 @@ const activeMenu = computed(() => {
const isCollapse = computed((): boolean => menuStore.isCollapse);
let routerMenus = computed((): RouteRecordRaw[] => {
return menuStore.menuList.filter((route) => route.meta && !route.meta.hideInSidebar) as RouteRecordRaw[];
const aa = menuStore.menuList.filter((route) => route.meta && !route.meta.hideInSidebar) as RouteRecordRaw[];
console.log(aa);
return aa;
});
const screenWidth = ref(0);
@@ -151,49 +153,50 @@ function sortByMap(map: Map<string, number>) {
}
function adjustAndCleanMenu(menuItem, list) {
const cleanList = JSON.parse(JSON.stringify(list));
const menuList = JSON.parse(JSON.stringify(list));
const orderMap = new Map();
menuItem.forEach((item, index) => {
orderMap.set(item.label, index);
});
const newRootList = [];
const itemMap = new Map();
cleanList.forEach((parent) => {
if (!parent.children) {
parent.children = [];
}
for (const parent of menuList) {
itemMap.set(parent.name, parent);
parent.children.forEach((child) => {
itemMap.set(child.name, child);
});
});
menuItem.forEach((refItem) => {
const refName = refItem.label;
if (orderMap.has(refName)) {
const targetItem = itemMap.get(refName);
if (targetItem) {
newRootList.push(targetItem);
for (const parent of cleanList) {
if (parent.children && parent.children.length > 0) {
const originalLength = parent.children.length;
parent.children = parent.children.filter((child) => child.name !== refName);
if (parent.children.length < originalLength) {
break;
}
}
}
if (Array.isArray(parent.children)) {
for (const child of parent.children) {
itemMap.set(child.name, child);
}
}
});
newRootList.sort((a, b) => {
}
function buildTree(refList) {
const result = [];
for (const ref of refList) {
const refName = ref.label;
const matched = itemMap.get(refName);
if (!matched) continue;
if (Array.isArray(ref.children) && ref.children.length > 0) {
matched.children = buildTree(ref.children);
} else {
delete matched.children;
}
result.push(matched);
}
return result;
}
const newMenu = buildTree(menuItem);
newMenu.sort((a, b) => {
const indexA = orderMap.get(a.name) ?? Infinity;
const indexB = orderMap.get(b.name) ?? Infinity;
return indexA - indexB;
});
return newRootList;
return newMenu;
}
onMounted(() => {
+3
View File
@@ -16,6 +16,7 @@ const databaseRouter = {
name: 'OllamaModel',
component: () => import('@/views/ai/model/index.vue'),
meta: {
icon: 'p-moxing-menu',
title: 'aiTools.model.model',
requiresAuth: true,
},
@@ -25,6 +26,7 @@ const databaseRouter = {
name: 'MCPServer',
component: () => import('@/views/ai/mcp/server/index.vue'),
meta: {
icon: 'p-mcp-menu',
title: 'menu.mcp',
requiresAuth: true,
},
@@ -34,6 +36,7 @@ const databaseRouter = {
name: 'GPU',
component: () => import('@/views/ai/gpu/index.vue'),
meta: {
icon: 'p-gpu-menu',
title: 'aiTools.gpu.gpu',
requiresAuth: true,
},
+6
View File
@@ -17,6 +17,7 @@ const hostRouter = {
props: true,
component: () => import('@/views/host/file-management/index.vue'),
meta: {
icon: 'p-file-menu',
title: 'menu.files',
requiresAuth: false,
},
@@ -26,6 +27,7 @@ const hostRouter = {
name: 'Monitorx',
component: () => import('@/views/host/monitor/monitor/index.vue'),
meta: {
icon: 'p-system-monitor-menu',
title: 'menu.monitor',
requiresAuth: false,
},
@@ -47,6 +49,7 @@ const hostRouter = {
name: 'FirewallPort',
component: () => import('@/views/host/firewall/port/index.vue'),
meta: {
icon: 'p-firewalld-menu',
activeMenu: '/hosts/firewall/port',
title: 'menu.firewall',
detail: 'firewall.portRule',
@@ -83,6 +86,7 @@ const hostRouter = {
props: true,
component: () => import('@/views/host/disk-management/disk/index.vue'),
meta: {
icon: 'p-disk-menu',
title: 'menu.disk',
requiresAuth: false,
},
@@ -92,6 +96,7 @@ const hostRouter = {
name: 'Process',
component: () => import('@/views/host/process/process/index.vue'),
meta: {
icon: 'p-process-menu',
title: 'menu.processManage',
detail: 'menu.process',
activeMenu: '/hosts/process/process',
@@ -116,6 +121,7 @@ const hostRouter = {
name: 'SSH',
component: () => import('@/views/host/ssh/ssh/index.vue'),
meta: {
icon: 'p-ssh-menu',
title: 'menu.ssh',
detail: 'menu.config',
activeMenu: '/hosts/ssh/ssh',
+3
View File
@@ -16,6 +16,7 @@ const webSiteRouter = {
name: 'Website',
component: () => import('@/views/website/website/index.vue'),
meta: {
icon: 'p-website',
title: 'menu.website',
requiresAuth: false,
},
@@ -37,6 +38,7 @@ const webSiteRouter = {
name: 'SSL',
component: () => import('@/views/website/ssl/index.vue'),
meta: {
icon: 'p-ssl-menu',
title: 'menu.ssl',
requiresAuth: false,
},
@@ -46,6 +48,7 @@ const webSiteRouter = {
name: 'PHP',
component: () => import('@/views/website/runtime/php/index.vue'),
meta: {
icon: 'p-run-menu',
title: 'menu.runtime',
detail: 'PHP',
activeMenu: '/websites/runtimes/php',
@@ -11,7 +11,6 @@
</template>
<template #main>
<el-form
:model="form"
@submit.prevent
ref="alertFormRef"
:label-position="mobile ? 'top' : 'left'"
@@ -70,7 +69,6 @@
<el-divider class="!mb-2 !mt-3" />
<div class="text-sm email-form" v-if="emailConfig.id">
<el-form
:model="form"
@submit.prevent
ref="alertFormRef"
:label-position="mobile ? 'top' : 'left'"
@@ -119,7 +117,6 @@
</el-button>
</div>
</div>
<!-- <div class="text-sm mb-2">{{ $t('xpack.alert.smsConfigHelper') }}</div>-->
<div class="text-sm mb-2">
{{ $t('xpack.alert.alertSmsHelper', [totalSms, usedSms]) }}
<el-link class="ml-1 text-xs" @click="goBuy" type="primary" icon="Position">
@@ -129,7 +126,6 @@
<el-divider class="!mb-2 !mt-3" />
<div class="text-sm email-form">
<el-form
:model="form"
@submit.prevent
ref="alertFormRef"
:label-position="mobile ? 'top' : 'left'"