blob: 28f4c715cd7360a3fcaea5656e7ba578506975e6 [file] [log] [blame]
Derick Montaguea2988f42020-01-17 13:46:30 -06001<template>
Derick Montague42c19892020-01-17 16:10:34 -06002 <b-nav vertical>
Yoshie Muranaka71ac2302019-12-26 11:43:36 -08003 <b-nav-item to="/"><icon-overview />Overview</b-nav-item>
Derick Montague42c19892020-01-17 16:10:34 -06004
5 <li class="nav-item">
6 <b-button v-b-toggle.health-menu variant="link">
Yoshie Muranaka71ac2302019-12-26 11:43:36 -08007 <icon-health />Health
8 <icon-expand class="icon-expand" />
Derick Montague42c19892020-01-17 16:10:34 -06009 </b-button>
Derick Montague09e45cd2020-01-23 15:45:57 -060010 <b-collapse id="health-menu" tag="ul" class="nav-item__nav">
Derick Montague42c19892020-01-17 16:10:34 -060011 <b-nav-item href="javascript:void(0)">Event Log</b-nav-item>
12 <b-nav-item href="javascript:void(0)">Hardware Status</b-nav-item>
13 <b-nav-item href="javascript:void(0)">Sensors</b-nav-item>
14 </b-collapse>
15 </li>
16
17 <li class="nav-item">
18 <b-button v-b-toggle.control-menu variant="link">
Yoshie Muranaka71ac2302019-12-26 11:43:36 -080019 <icon-control />Control
20 <icon-expand class="icon-expand" />
Derick Montague42c19892020-01-17 16:10:34 -060021 </b-button>
Derick Montague09e45cd2020-01-23 15:45:57 -060022 <b-collapse id="control-menu" tag="ul" class="nav-item__nav">
Derick Montaguec65350f2020-02-05 15:56:37 -060023 <b-nav-item href="javascript:void(0)">Manage power usage</b-nav-item>
24 <b-nav-item href="javascript:void(0)">Server LED</b-nav-item>
Yoshie Muranaka71ac2302019-12-26 11:43:36 -080025 <b-nav-item href="javascript:void(0)">
26 Server power operations
27 </b-nav-item>
Derick Montague42c19892020-01-17 16:10:34 -060028 </b-collapse>
29 </li>
Yoshie Muranaka71ac2302019-12-26 11:43:36 -080030
Derick Montague42c19892020-01-17 16:10:34 -060031 <li class="nav-item">
32 <b-button v-b-toggle.configuration-menu variant="link">
Yoshie Muranaka71ac2302019-12-26 11:43:36 -080033 <icon-configuration />Configuration
34 <icon-expand class="icon-expand" />
Derick Montague42c19892020-01-17 16:10:34 -060035 </b-button>
Derick Montague09e45cd2020-01-23 15:45:57 -060036 <b-collapse id="configuration-menu" tag="ul" class="nav-item__nav">
Derick Montaguec65350f2020-02-05 15:56:37 -060037 <b-nav-item href="javascript:void(0)">Firmware</b-nav-item>
Derick Montague42c19892020-01-17 16:10:34 -060038 <b-nav-item href="javascript:void(0)">Network settings</b-nav-item>
39 <b-nav-item href="javascript:void(0)">SNMP settings</b-nav-item>
Derick Montague42c19892020-01-17 16:10:34 -060040 </b-collapse>
41 </li>
42
43 <li class="nav-item">
44 <b-button v-b-toggle.access-control-menu variant="link">
Yoshie Muranaka71ac2302019-12-26 11:43:36 -080045 <icon-access-control />Access Control
46 <icon-expand class="icon-expand" />
Derick Montague42c19892020-01-17 16:10:34 -060047 </b-button>
Derick Montague09e45cd2020-01-23 15:45:57 -060048 <b-collapse id="access-control-menu" tag="ul" class="nav-item__nav">
Derick Montague42c19892020-01-17 16:10:34 -060049 <b-nav-item href="javascript:void(0)">LDAP</b-nav-item>
Yoshie Muranaka71ac2302019-12-26 11:43:36 -080050 <b-nav-item to="/access-control/local-user-management">
51 Local user management
52 </b-nav-item>
Derick Montague42c19892020-01-17 16:10:34 -060053 <b-nav-item href="javascript:void(0)">SSL Certificates</b-nav-item>
54 </b-collapse>
55 </li>
56 </b-nav>
Derick Montaguea2988f42020-01-17 13:46:30 -060057</template>
58
59<script>
Yoshie Muranaka71ac2302019-12-26 11:43:36 -080060import IconAnalytics from '@carbon/icons-vue/es/analytics/16';
61import IconDataCheck from '@carbon/icons-vue/es/data--check/16';
62import IconSettingsAdjust from '@carbon/icons-vue/es/settings--adjust/16';
63import IconSettings from '@carbon/icons-vue/es/settings/16';
64import IconPassword from '@carbon/icons-vue/es/password/16';
65import IconChevronUp from '@carbon/icons-vue/es/chevron--up/16';
Derick Montaguea2988f42020-01-17 13:46:30 -060066
67export default {
Derick Montaguee2fd1562019-12-20 13:26:53 -060068 name: 'AppNavigation',
Derick Montague42c19892020-01-17 16:10:34 -060069 components: {
Yoshie Muranaka71ac2302019-12-26 11:43:36 -080070 iconOverview: IconAnalytics,
71 iconHealth: IconDataCheck,
72 iconControl: IconSettingsAdjust,
73 iconConfiguration: IconSettings,
74 iconAccessControl: IconPassword,
75 iconExpand: IconChevronUp
Derick Montague42c19892020-01-17 16:10:34 -060076 }
Derick Montaguea2988f42020-01-17 13:46:30 -060077};
78</script>
Derick Montague42c19892020-01-17 16:10:34 -060079
Yoshie Muranaka71ac2302019-12-26 11:43:36 -080080<style scoped lang="scss">
81svg {
82 fill: $gray-900;
83 margin-left: 0 !important; //!important overriding button specificity
84 vertical-align: text-bottom;
85 &:not(.icon-expand) {
86 margin-right: $spacer;
87 }
88}
89
90.nav {
91 min-height: 100%;
92 padding-top: $spacer;
93}
94
95.nav-item__nav {
Derick Montague42c19892020-01-17 16:10:34 -060096 list-style: none;
97 padding-left: 0;
Yoshie Muranaka71ac2302019-12-26 11:43:36 -080098 margin-left: 0;
99
100 .nav-link {
101 padding-left: $spacer * 4;
102
103 &:not(.nav-link--current) {
104 font-weight: normal;
105 }
106 }
107}
108
109.btn-link {
110 width: 100%;
111 text-align: left;
112 text-decoration: none !important;
113 border-radius: 0;
114
115 &.collapsed {
116 .icon-expand {
117 transform: rotate(180deg);
118 }
119 }
Yoshie Muranaka71ac2302019-12-26 11:43:36 -0800120}
121
122.icon-expand {
123 float: right;
124 margin-top: $spacer / 4;
125}
126
127.btn-link,
128.nav-link {
129 position: relative;
130 font-weight: $headings-font-weight;
131 padding-left: $spacer; // defining consistent padding for links and buttons
132 padding-right: $spacer;
133 color: $gray-900 !important; //using important to avoid styling states
134
135 &:hover {
136 background-color: $gray-300;
137 }
Yoshie Muranaka9f5cea82020-02-04 09:30:00 -0800138
139 &:focus {
140 box-shadow: $btn-focus-box-shadow;
141 }
Yoshie Muranaka71ac2302019-12-26 11:43:36 -0800142}
143
144.nav-link--current {
145 font-weight: $headings-font-weight;
146 background-color: $gray-300;
147
148 &::before {
149 content: '';
150 position: absolute;
151 top: 0;
152 bottom: 0;
153 left: 0;
154 width: 4px;
155 background-color: $primary;
156 }
Derick Montague42c19892020-01-17 16:10:34 -0600157}
158</style>