Menu.vue 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901
  1. <template>
  2. <div class="menu">
  3. <ul class="menu-list">
  4. <li class="menu-item" v-for="(menu, index) of currentMenu" :key="menu" @click="click(index)" :class="{ active: activeIndex == index }" @mouseenter="subMenuShow(menu.children, index)">
  5. <router-link :to="menu.path">
  6. <el-tooltip class="item" effect="dark" :content="menu.text" placement="bottom" :show-after="500">
  7. <div class="menu-icon svg-icon" :class="activeIndex == index ? 'svg-icon-green' : 'svg-icon-gray'">
  8. <SvgIcon :svgid="menu.icon"></SvgIcon>
  9. </div>
  10. </el-tooltip>
  11. </router-link>
  12. <!-- <div v-if="menu.children" class="sub-menu-item">
  13. <div class="menu-icon svg-icon" :class="activeIndex == index ? 'svg-icon-green' : 'svg-icon-gray'">
  14. <SvgIcon :svgid="menu.icon"></SvgIcon>
  15. </div>
  16. </div> -->
  17. </li>
  18. </ul>
  19. </div>
  20. <div class="sub-menu" v-show="isShowSubMenu" @mouseleave="subMenuHide">
  21. <ul class="menu-list">
  22. <li class="menu-item" v-for="(menu, index) of subMenu" @click="subclick(index)" :key="menu" :class="{ active: subIndex == index }">
  23. <router-link :to="menu.path">
  24. <div class="menu-icon svg-icon">
  25. <SvgIcon :svgid="menu.icon"></SvgIcon>
  26. </div>
  27. <div class="sub-menu-text" :class="subIndex == index ? 'green' : 'gray'">{{ menu.text }}</div>
  28. </router-link>
  29. </li>
  30. </ul>
  31. </div>
  32. </template>
  33. <script>
  34. import SvgIcon from "@com/coms/icon/svg-icon.vue";
  35. export default {
  36. components: {
  37. SvgIcon,
  38. },
  39. props: {},
  40. data () {
  41. return {
  42. currRoot: "monitor",
  43. menuData: [
  44. {
  45. id: "monitor",
  46. text: "状态监视",
  47. data: [
  48. {
  49. text: "驾驶舱",
  50. icon: "svg-lead-cockpit",
  51. path: "/monitor/home",
  52. },
  53. {
  54. text: "基础矩阵",
  55. icon: "svg-matrix",
  56. path: "/monitor/lightmatrix1",
  57. },
  58. {
  59. text: "明细矩阵",
  60. icon: "svg-mx-matrix",
  61. path: "/monitor/lightmatrix3",
  62. },
  63. {
  64. text: "欠发矩阵",
  65. icon: "svg-qf-matrix",
  66. path: "/monitor/lightmatrix2",
  67. },
  68. {
  69. text: "光伏矩阵",
  70. icon: "svg-gf-matrix",
  71. path: "/monitor/lightmatrix",
  72. },
  73. {
  74. text: "状态监视",
  75. icon: "svg-state-watch",
  76. path: "/monitor/status",
  77. },
  78. {
  79. text: "Agc",
  80. icon: "svg-agc",
  81. path: "/monitor/agc",
  82. },
  83. {
  84. text: "风场",
  85. icon: "svg-wind-site",
  86. path: "/monitor/windsite/home/MHS_FDC",
  87. },
  88. ],
  89. },
  90. {
  91. id: "realSearch",
  92. text: "数据管理",
  93. data: [
  94. {
  95. text: "原始数据查询",
  96. icon: "svg-wind-site",
  97. path: "/yssjcx",
  98. children: [
  99. {
  100. text: "测点数据查询",
  101. icon: "svg-wind-site",
  102. path: "/realSearch",
  103. },
  104. {
  105. text: "测点历史数据查询",
  106. icon: "svg-wind-site",
  107. path: "/historySearch",
  108. },
  109. ],
  110. },
  111. {
  112. text: "预警记录",
  113. icon: "svg-wind-site",
  114. path: "/new",
  115. children: [
  116. {
  117. text: "预警管理",
  118. icon: "svg-wind-site",
  119. path: "/new/alarmcenter",
  120. },
  121. {
  122. text: "停机事件管理",
  123. icon: "svg-wind-site",
  124. path: "/new/tjsj",
  125. },
  126. {
  127. text: "限电管理",
  128. icon: "svg-wind-site",
  129. path: "/new/xdgl",
  130. },
  131. {
  132. text: "升压站报警",
  133. icon: "svg-wind-site",
  134. path: "/alarmCenter/boosterAlarm",
  135. },
  136. {
  137. text: "SCADA报警",
  138. icon: "svg-wind-site",
  139. path: "/alarmCenter/scadaAlarm",
  140. },
  141. {
  142. text: "自定义报警",
  143. icon: "svg-wind-site",
  144. path: "/alarmCenter/customAlarm",
  145. },
  146. {
  147. text: "自定义报警统计",
  148. icon: "svg-wind-site",
  149. path: "/alarmCenter/customStatistics",
  150. },
  151. ],
  152. },
  153. ],
  154. },
  155. {
  156. id: "performanceAnalysis",
  157. text: "统计分析",
  158. data: [
  159. {
  160. text: "能效分析",
  161. icon: "svg-wind-site",
  162. path: "/nxfx",
  163. children: [
  164. {
  165. text: "功率曲线拟合",
  166. icon: "svg-wind-site",
  167. path: "/powerCurve",
  168. },
  169. {
  170. text: "偏航对风分析",
  171. icon: "svg-wind-site",
  172. path: "/nxfx2",
  173. },
  174. {
  175. text: "切入切出分析",
  176. icon: "svg-wind-site",
  177. path: "/cutAnalyse",
  178. },
  179. {
  180. text: "曲线偏差率分析",
  181. icon: "svg-wind-site",
  182. path: "/qxpclfx",
  183. },
  184. {
  185. text: "单机性能分析",
  186. icon: "svg-wind-site",
  187. path: "/performanceAnalysis",
  188. },
  189. {
  190. text: "单机月度分析",
  191. icon: "svg-wind-site",
  192. path: "/singleAnalysis",
  193. },
  194. {
  195. text: "单机饱和度",
  196. icon: "svg-wind-site",
  197. path: "/wtSaturability",
  198. },
  199. ],
  200. },
  201. {
  202. text: "可靠性分析",
  203. icon: "svg-wind-site",
  204. path: "/kxkfx",
  205. children: [
  206. {
  207. text: "预警分析",
  208. icon: "svg-wind-site",
  209. path: "/new/alarmcenter1",
  210. },
  211. {
  212. text: "故障分析",
  213. icon: "svg-wind-site",
  214. path: "/new/alarmcenter2",
  215. },
  216. {
  217. text: "预警评判分析",
  218. icon: "svg-wind-site",
  219. path: "/warnStatistics",
  220. },
  221. {
  222. text: "故障评判分析",
  223. icon: "svg-wind-site",
  224. path: "/malfunctionStatistics",
  225. }
  226. ],
  227. },
  228. {
  229. text: "风光资源分析",
  230. icon: "svg-wind-site",
  231. path: "/fgzyfx",
  232. children: [
  233. {
  234. text: "风资源散点",
  235. icon: "svg-wind-site",
  236. path: "/windAnalysis",
  237. }, {
  238. text: "风资源风向",
  239. icon: "svg-wind-site",
  240. path: "/windAnalysis/fx",
  241. },
  242. ],
  243. },
  244. {
  245. text: "专题分析",
  246. icon: "svg-wind-site",
  247. path: "/fgzyfx",
  248. children: [
  249. {
  250. text: "综合分析",
  251. icon: "svg-wind-site",
  252. path: "/new/ztfx",
  253. },
  254. {
  255. text: "风能利用率",
  256. icon: "svg-wind-site",
  257. path: "/new/fnlyl",
  258. },
  259. {
  260. text: "维护损失率",
  261. icon: "svg-wind-site",
  262. path: "/new/whssl",
  263. },
  264. {
  265. text: "故障损失率",
  266. icon: "svg-wind-site",
  267. path: "/new/gzssl",
  268. },
  269. {
  270. text: "限电损失率",
  271. icon: "svg-wind-site",
  272. path: "/new/xdssl",
  273. },
  274. {
  275. text: "性能损失率",
  276. icon: "svg-wind-site",
  277. path: "/new/xnssl",
  278. },
  279. {
  280. text: "受累损失率",
  281. icon: "svg-wind-site",
  282. path: "/new/slssl",
  283. },
  284. {
  285. text: "MTBF分析",
  286. icon: "svg-wind-site",
  287. path: "/new/mtbf",
  288. },
  289. {
  290. text: "MTTR分析",
  291. icon: "svg-wind-site",
  292. path: "/new/mttr",
  293. },
  294. {
  295. text: "复位及时率",
  296. icon: "svg-wind-site",
  297. path: "/new/zfwjsl",
  298. },
  299. {
  300. text: "状态转换率",
  301. icon: "svg-wind-site",
  302. path: "/new/zztzhl",
  303. },
  304. {
  305. text: "消缺及时率",
  306. icon: "svg-wind-site",
  307. path: "/new/zxqjsl",
  308. },
  309. {
  310. text: "发电量分析",
  311. icon: "svg-wind-site",
  312. path: "/new/zfdl",
  313. },
  314. {
  315. text: "综合场用电量",
  316. icon: "svg-wind-site",
  317. path: "/new/zzhcydl",
  318. },
  319. ]
  320. },
  321. // {
  322. // text: "单机分析",
  323. // icon: "svg-wind-site",
  324. // path: "/fgzyfx",
  325. // children: [
  326. // {
  327. // text: "单机分析详细",
  328. // icon: "svg-wind-site",
  329. // path: "/new/dj1",
  330. // },
  331. // {
  332. // text: "电量预测",
  333. // icon: "svg-wind-site",
  334. // path: "/new/pf1",
  335. // },
  336. // {
  337. // text: "气象预测",
  338. // icon: "svg-wind-site",
  339. // path: "/new/fs",
  340. // }
  341. // ]
  342. // }
  343. ],
  344. },
  345. {
  346. id: "health",
  347. text: "健康管理",
  348. data: [
  349. {
  350. text: "等级评估",
  351. icon: "svg-wind-site",
  352. path: "/assess",
  353. children: [
  354. {
  355. text: "等级评估",
  356. icon: "svg-wind-site",
  357. path: "/assess/index",
  358. },
  359. {
  360. text: "评估配置",
  361. icon: "svg-wind-site",
  362. path: "/assess/config",
  363. },
  364. ]
  365. },{
  366. text: "健康管理",
  367. icon: "svg-wind-site",
  368. path: "/health",
  369. children: [
  370. {
  371. text: "健康推荐",
  372. icon: "svg-wind-site",
  373. path: "/health",
  374. },
  375. {
  376. text: "健康首页",
  377. icon: "svg-wind-site",
  378. path: "/health/health2",
  379. },
  380. {
  381. text: "健康总览",
  382. icon: "svg-wind-site",
  383. path: "/health/health6",
  384. },
  385. {
  386. text: "健康矩阵",
  387. icon: "svg-wind-site",
  388. path: "/health/health5",
  389. },
  390. // {
  391. // text: "健康列表",
  392. // icon: "svg-wind-site",
  393. // path: "/health/health6",
  394. // },
  395. {
  396. text: "健康列表",
  397. icon: "svg-wind-site",
  398. path: "/health/health8",
  399. },
  400. ],
  401. },{
  402. text: "全生命周期",
  403. icon: "svg-wind-site",
  404. path: "/allLifeManage",
  405. },
  406. ],
  407. },
  408. {
  409. id: "decision",
  410. text: "决策支持",
  411. data: [
  412. {
  413. text: "对标管理",
  414. icon: "svg-matrix",
  415. path: "/decision/decision1",
  416. children: [
  417. {
  418. text: "风机绩效榜",
  419. icon: "svg-wind-site",
  420. path: "/decision/decision1",
  421. },
  422. {
  423. text: "五项损失率",
  424. icon: "svg-wind-site",
  425. path: "/decision/decision2",
  426. },
  427. {
  428. text: "场内对标",
  429. icon: "svg-wind-site",
  430. path: "/decision/decision2Cndb",
  431. },
  432. {
  433. text: "场际对标",
  434. icon: "svg-wind-site",
  435. path: "/decision/decision2Cjdb",
  436. },
  437. {
  438. text: "项目对标",
  439. icon: "svg-wind-site",
  440. path: "/decision/decision2Xmdb",
  441. },
  442. {
  443. text: "线路对标",
  444. icon: "svg-wind-site",
  445. path: "/decision/decision2Xldb",
  446. },
  447. {
  448. text: "性能对标",
  449. icon: "svg-wind-site",
  450. path: "/decision/decision3",
  451. },
  452. {
  453. text: "值际对标",
  454. icon: "svg-wind-site",
  455. path: "/decision/decision4",
  456. },
  457. {
  458. text: "单机横向对比",
  459. icon: "svg-matrix",
  460. path: "/decision/decision3db",
  461. },{
  462. text: "操作指令统计",
  463. icon: "svg-matrix",
  464. path: "/decision/decision4czzl",
  465. },
  466. ],
  467. }
  468. // ,
  469. // {
  470. // text: "五项损失率",
  471. // icon: "svg-matrix",
  472. // path: "/decision/decision2",
  473. // },
  474. // {
  475. // text: "场内对标",
  476. // icon: "svg-matrix",
  477. // path: "/decision/decision2Cndb",
  478. // },
  479. // {
  480. // text: "场际对标",
  481. // icon: "svg-matrix",
  482. // path: "/decision/decision2Cjdb",
  483. // },
  484. // {
  485. // text: "项目对标",
  486. // icon: "svg-matrix",
  487. // path: "/decision/decision2Xmdb",
  488. // },
  489. // {
  490. // text: "线路对标",
  491. // icon: "svg-matrix",
  492. // path: "/decision/decision2Xldb",
  493. // },
  494. // {
  495. // text: "性能对标",
  496. // icon: "svg-matrix",
  497. // path: "/decision/decision3",
  498. // },
  499. // {
  500. // text: "值际对标",
  501. // icon: "svg-matrix",
  502. // path: "/decision/decision4",
  503. // }
  504. ,
  505. {
  506. text: "排行榜",
  507. icon: "svg-matrix",
  508. path: "/phb",
  509. children: [
  510. {
  511. text: "发电效率排行",
  512. icon: "svg-wind-site",
  513. path: "/powerRank",
  514. },
  515. {
  516. text: "总发电效率排行",
  517. icon: "svg-wind-site",
  518. path: "/totalPowerRank",
  519. },
  520. {
  521. text: "报警排行",
  522. icon: "svg-wind-site",
  523. path: "/warningRank",
  524. },
  525. ],
  526. },
  527. // 三率管理
  528. {
  529. text: "三率管理",
  530. icon: "svg-matrix",
  531. path: "/slgl",
  532. children: [
  533. {
  534. text: "复位及时率",
  535. icon: "svg-wind-site",
  536. path: "/fwjsl",
  537. },
  538. {
  539. text: "状态转换率",
  540. icon: "svg-wind-site",
  541. path: "/ztzhl",
  542. },
  543. {
  544. text: "消缺及时率",
  545. icon: "svg-wind-site",
  546. path: "/xqjsl",
  547. },
  548. ],
  549. },
  550. ],
  551. },
  552. {
  553. id: "knowledge",
  554. text: "知识管理",
  555. data: [
  556. {
  557. text: "故障知识列表",
  558. icon: "svg-matrix",
  559. path: "/knowledge",
  560. },
  561. {
  562. text: "安全措施知识",
  563. icon: "svg-matrix",
  564. path: "/knowledge2",
  565. },
  566. {
  567. text: "排查检修方案",
  568. icon: "svg-matrix",
  569. path: "/knowledge6",
  570. },
  571. {
  572. text: "预警知识",
  573. icon: "svg-matrix",
  574. path: "/knowledge7",
  575. },
  576. {
  577. text: "特征参数",
  578. icon: "svg-matrix",
  579. path: "/knowledge5",
  580. },
  581. {
  582. text: "风险辨识知识",
  583. icon: "svg-matrix",
  584. path: "/knowledge3",
  585. },
  586. {
  587. text: "作业指导知识",
  588. icon: "svg-matrix",
  589. path: "/knowledge4",
  590. },
  591. ],
  592. },
  593. {
  594. id: "bdzcx",
  595. text: "智能报表",
  596. data: [
  597. // 统计分析
  598. {
  599. text: "统计分析",
  600. icon: "svg-matrix",
  601. path: "/bdzcx",
  602. children: [
  603. {
  604. text: "统计分析",
  605. icon: "svg-matrix",
  606. path: "/tjfx",
  607. },
  608. {
  609. text: "表底值查询",
  610. icon: "svg-matrix",
  611. path: "/bdzcx",
  612. },
  613. ],
  614. },
  615. // 报表管理
  616. {
  617. text: "报表管理",
  618. icon: "svg-matrix",
  619. path: "/bdzcx",
  620. children: [
  621. {
  622. text: "OA日报",
  623. icon: "svg-matrix",
  624. path: "/oafd",
  625. },
  626. {
  627. text: "OA日报(光伏)",
  628. icon: "svg-matrix",
  629. path: "/oagf",
  630. },
  631. {
  632. text: "新能源日报",
  633. icon: "svg-matrix",
  634. path: "/xnyrb",
  635. },
  636. {
  637. text: "国电电力MISS日报(风电)",
  638. icon: "svg-matrix",
  639. path: "/missfdrb",
  640. },
  641. {
  642. text: "国电电力MISS日报(光伏)",
  643. icon: "svg-matrix",
  644. path: "/missgfrb",
  645. },
  646. {
  647. text: "新能源风电生产月报",
  648. icon: "svg-matrix",
  649. path: "/xnyfdscyb",
  650. },
  651. {
  652. text: "麻黄山生产月报",
  653. icon: "svg-matrix",
  654. path: "/mhsscyb",
  655. },
  656. {
  657. text: "牛首山生产月报",
  658. icon: "svg-matrix",
  659. path: "/nssscyb",
  660. },
  661. {
  662. text: "青山生产月报",
  663. icon: "svg-matrix",
  664. path: "/qsscyb",
  665. },
  666. {
  667. text: "石板泉生产月报",
  668. icon: "svg-matrix",
  669. path: "/sbqscyb",
  670. },
  671. {
  672. text: "香山生产月报",
  673. icon: "svg-matrix",
  674. path: "/xsscyb",
  675. },
  676. {
  677. text: "新能源光伏生产月报",
  678. icon: "svg-matrix",
  679. path: "/xnygfscyb",
  680. },
  681. {
  682. text: "大武口生产月报",
  683. icon: "svg-matrix",
  684. path: "/dwkscyb",
  685. },
  686. {
  687. text: "平罗生产月报",
  688. icon: "svg-matrix",
  689. path: "/plscyb",
  690. },
  691. {
  692. text: "宣和生产月报",
  693. icon: "svg-matrix",
  694. path: "/xhscyb",
  695. },
  696. ],
  697. },
  698. // 自定制报表管理
  699. {
  700. text: "自定制报表管理",
  701. icon: "svg-matrix",
  702. path: "/fdczzdy",
  703. children: [
  704. {
  705. text: "风电场站自定义",
  706. icon: "svg-matrix",
  707. path: "/fdczzdy",
  708. },
  709. {
  710. text: "风电项目自定义",
  711. icon: "svg-matrix",
  712. path: "/fdxmzdy",
  713. },
  714. {
  715. text: "光伏场站自定义",
  716. icon: "svg-matrix",
  717. path: "/gfczzdy",
  718. },
  719. {
  720. text: "光伏项目自定义",
  721. icon: "svg-matrix",
  722. path: "/gfxmzdy",
  723. },
  724. ],
  725. },
  726. ],
  727. },
  728. ],
  729. activeIndex: 0,
  730. isShowSubMenu: false,
  731. parentIndex: null,
  732. subMenu: [],
  733. subIndex: null,
  734. };
  735. },
  736. methods: {
  737. click (index) {
  738. this.activeIndex = index;
  739. this.subIndex = null;
  740. },
  741. subMenuShow (children, index) {
  742. if (children) {
  743. this.isShowSubMenu = true;
  744. this.parentIndex = index;
  745. } else {
  746. this.isShowSubMenu = false;
  747. this.parentIndex = null;
  748. }
  749. this.subMenu = children;
  750. },
  751. subMenuHide () {
  752. this.isShowSubMenu = false;
  753. this.parentIndex = null;
  754. // this.subMenu = [];
  755. },
  756. subclick (index) {
  757. this.activeIndex = this.parentIndex;
  758. this.subIndex = index;
  759. },
  760. },
  761. computed: {
  762. currentMenu () {
  763. let data = this.menuData.filter((t) => {
  764. return t.id == this.currRoot;
  765. })[0].data;
  766. return data;
  767. },
  768. },
  769. watch: {
  770. // 监听路由
  771. $route: {
  772. handler: function (val, oldVal) {
  773. this.menuData.some((element, index) => {
  774. if (val.path.includes(element.id)) {
  775. this.currRoot = element.id;
  776. this.$nextTick(() => {
  777. this.currentMenu.some((element, index) => {
  778. if (val.path == element.path) {
  779. this.activeIndex = index;
  780. }
  781. });
  782. });
  783. return true;
  784. }
  785. });
  786. },
  787. //深度观察监听
  788. deep: true,
  789. },
  790. },
  791. };
  792. </script>
  793. <style lang="less">
  794. .menu {
  795. padding-top: 1.481vh;
  796. .menu-list {
  797. margin: 0;
  798. padding: 0;
  799. list-style: none;
  800. .menu-item {
  801. padding: 1.481vh 0;
  802. text-align: center;
  803. .menu-icon {
  804. display: flex;
  805. justify-content: center;
  806. }
  807. &.active i {
  808. color: #05bb4c;
  809. transition: color 1s;
  810. }
  811. }
  812. }
  813. i {
  814. font-size: 2.222vh;
  815. color: rgba(255, 255, 255, 50%);
  816. }
  817. }
  818. .sub-menu {
  819. position: absolute;
  820. top: 0;
  821. left: 5.3704vh;
  822. width: 158px;
  823. height: 100%;
  824. padding-top: 1.481vh;
  825. background: fade(#192a26, 75);
  826. border-right: 1px solid fade(@green, 50);
  827. box-shadow: inset 11px 0px 20px 0px fade(#021412, 60);
  828. .menu-list {
  829. margin: 0;
  830. padding: 0;
  831. list-style: none;
  832. .menu-item {
  833. display: flex;
  834. text-align: center;
  835. line-height: 1.5;
  836. padding: 8px 0;
  837. background: #121d1c;
  838. a {
  839. display: flex;
  840. width: 100%;
  841. height: 100%;
  842. padding: 0 1.4815vh;
  843. font-size: @fontsize-s;
  844. text-decoration: unset;
  845. .menu-icon {
  846. display: flex;
  847. align-items: center;
  848. svg {
  849. width: 14px;
  850. height: 14px;
  851. use {
  852. fill: fade(@green, 75);
  853. }
  854. }
  855. }
  856. }
  857. &.active {
  858. background: #323e70;
  859. .menu-icon {
  860. display: flex;
  861. svg use {
  862. fill: fade(@white, 75);
  863. }
  864. }
  865. }
  866. .sub-menu-text {
  867. margin-left: 1.1111vh;
  868. color: @gray-l;
  869. }
  870. & + .menu-item {
  871. border-top: 1px solid fade(@darkgray, 40);
  872. }
  873. }
  874. }
  875. i {
  876. font-size: 2.222vh;
  877. color: rgba(255, 255, 255, 50%);
  878. }
  879. }
  880. </style>