2 Copyright 2020 TATA ELXSI
4 Licensed under the Apache License, Version 2.0 (the 'License');
5 you may not use this file except in compliance with the License.
6 You may obtain a copy of the License at
8 http://www.apache.org/licenses/LICENSE-2.0
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
16 Author: KUMARAN M (kumaran.m@tataelxsi.co.in), RAJESH S (rajesh.s@tataelxsi.co.in), BARATH KUMAR R (barath.r@tataelxsi.co.in)
19 * @file Model for Commonly used information.
21 /** Constants of the Menu child active class */
22 const childActiveClass: string[] = ['active'];
23 /** Constants of the Menu Items */
24 export const MENU_ITEMS: MENUITEMS[] = [
26 liClass: 'round-edge-top-3',
27 anchorTagClass: 'link round-edge-top-3 individual',
28 clickFunction: 'nosubmenu',
30 routerLinkActive: ['parentactive'],
31 routerLinkActiveOptions: true,
32 icon: 'fas fa-th-large',
33 menuName: 'PAGE.DASHBOARD.DASHBOARD',
37 liClass: 'header-menu',
38 anchorTagClass: 'heading text-uppercase',
43 liClass: 'round-edge-top-3',
44 anchorTagClass: 'parentlink round-edge-top-3 me-top-5',
45 clickFunction: 'packages',
46 routerLink: '/packages',
47 routerLinkActive: ['menu-open', 'parentactive'],
48 routerLinkActiveOptions: false,
52 ulClass: 'sidebar-submenu',
56 anchorTagClass: 'link',
57 routerLink: '/packages/ns',
58 routerLinkActive: childActiveClass,
59 routerLinkActiveOptions: false,
60 icon: 'fas fa-box-open',
61 menuName: 'NSPACKAGES',
66 anchorTagClass: 'link',
67 routerLink: '/packages/vnf',
68 routerLinkActive: childActiveClass,
69 routerLinkActiveOptions: false,
70 icon: 'fas fa-box-open',
71 menuName: 'VNFPACKAGES',
76 anchorTagClass: 'link',
77 routerLink: '/packages/oka',
78 routerLinkActive: childActiveClass,
79 routerLinkActiveOptions: false,
80 icon: 'fas fa-box-open',
81 menuName: 'PAGE.K8S.OKAPACKAGES',
86 anchorTagClass: 'link',
87 routerLink: '/packages/netslice',
88 routerLinkActive: childActiveClass,
89 routerLinkActiveOptions: false,
90 icon: 'fas fa-layer-group',
91 menuName: 'PAGE.DASHBOARD.NETSLICETEMPLATE',
96 anchorTagClass: 'link',
97 routerLink: '/packages/nsconfigtemplate',
98 routerLinkActive: childActiveClass,
99 routerLinkActiveOptions: false,
101 menuName: 'PAGE.DASHBOARD.NSCONFIGTEMPLATE',
107 liClass: 'mt-1 round-edge-bottom-3 border-bottom-none',
108 anchorTagClass: 'parentlink round-edge-bottom-3 border-bottom-none',
109 clickFunction: 'instances',
110 routerLink: '/instances',
111 routerLinkActive: ['menu-open', 'parentactive'],
112 routerLinkActiveOptions: false,
113 icon: 'fa fa-paper-plane',
114 menuName: 'INSTANCES',
116 ulClass: 'sidebar-submenu',
120 anchorTagClass: 'link',
121 routerLink: '/instances/ns',
122 routerLinkActive: childActiveClass,
123 routerLinkActiveOptions: false,
124 icon: 'fas fa-sitemap',
125 menuName: 'NSINSTANCES',
130 anchorTagClass: 'link',
131 routerLink: '/instances/vnf',
132 routerLinkActive: childActiveClass,
133 routerLinkActiveOptions: false,
135 menuName: 'VNFINSTANCES',
140 anchorTagClass: 'link',
141 routerLink: '/instances/pdu',
142 routerLinkActive: childActiveClass,
143 routerLinkActiveOptions: false,
145 menuName: 'PDUINSTANCES',
150 anchorTagClass: 'link',
151 routerLink: '/instances/netslice',
152 routerLinkActive: childActiveClass,
153 routerLinkActiveOptions: false,
154 icon: 'fas fa-layer-group',
155 menuName: 'PAGE.DASHBOARD.NETSLICEINSTANCE',
160 anchorTagClass: 'link',
161 routerLink: '/instances/operational-view',
162 routerLinkActive: childActiveClass,
163 routerLinkActiveOptions: false,
164 icon: 'fas fa-tachometer-alt',
165 menuName: 'PAGE.OPERATIONALDASHBOARD.TITLE',
171 liClass: 'round-edge-top-3 round-edge-bottom-3 me-top-5',
172 anchorTagClass: 'link round-edge-top-3 round-edge-bottom-3 individual',
173 clickFunction: 'nosubmenu',
174 routerLink: '/sdn/details',
175 routerLinkActive: ['parentactive'],
176 routerLinkActiveOptions: true,
177 icon: 'fas fa-globe',
178 menuName: 'SDNCONTROLLER',
182 liClass: 'round-edge-top-3 round-edge-bottom-3 me-top-5',
183 anchorTagClass: 'link round-edge-top-3 round-edge-bottom-3 individual',
184 clickFunction: 'nosubmenu',
186 routerLinkActive: ['parentactive'],
187 routerLinkActiveOptions: false,
188 icon: 'fas fa-server',
189 menuName: 'VIMACCOUNTS',
193 liClass: 'round-edge-top-3 round-edge-bottom-3 me-top-5',
194 anchorTagClass: 'parentlink round-edge-top-3 round-edge-bottom-3',
195 clickFunction: 'k8s',
197 routerLinkActive: ['menu-open', 'parentactive'],
198 routerLinkActiveOptions: false,
199 icon: 'fas fa-asterisk',
200 menuName: 'PAGE.K8S.MENUK8S',
202 ulClass: 'sidebar-submenu',
206 anchorTagClass: 'link',
207 routerLink: '/k8s/cluster',
208 routerLinkActive: childActiveClass,
209 routerLinkActiveOptions: false,
210 icon: 'fas fa-project-diagram',
211 menuName: 'PAGE.K8S.MENUK8SCLUSTER',
216 anchorTagClass: 'link',
217 routerLink: '/k8s/repo',
218 routerLinkActive: childActiveClass,
219 routerLinkActiveOptions: false,
221 menuName: 'PAGE.K8S.MENUK8SREPO',
226 anchorTagClass: 'link',
227 routerLink: '/k8s/infra-config-profile',
228 routerLinkActive: childActiveClass,
229 routerLinkActiveOptions: false,
230 icon: 'fas fa-list-alt',
231 menuName: 'PAGE.K8S.INFRACONFIG',
236 anchorTagClass: 'link',
237 routerLink: '/k8s/infra-controller-profile',
238 routerLinkActive: childActiveClass,
239 routerLinkActiveOptions: false,
240 icon: 'fas fa-gamepad',
241 menuName: 'PAGE.K8S.INFRACONTROLLER',
246 anchorTagClass: 'link',
247 routerLink: '/k8s/app-profile',
248 routerLinkActive: childActiveClass,
249 routerLinkActiveOptions: false,
251 menuName: 'PAGE.K8S.APP',
256 anchorTagClass: 'link',
257 routerLink: '/k8s/resource-profile',
258 routerLinkActive: childActiveClass,
259 routerLinkActiveOptions: false,
260 icon: 'fas fa-archive',
261 menuName: 'PAGE.K8S.RESOURCE',
266 anchorTagClass: 'link',
267 routerLink: '/k8s/ksu',
268 routerLinkActive: childActiveClass,
269 routerLinkActiveOptions: false,
270 icon: 'fas fa-anchor',
271 menuName: 'PAGE.K8S.KSU',
277 liClass: 'round-edge-top-3 round-edge-bottom-3 me-top-5',
278 anchorTagClass: 'link round-edge-top-3 round-edge-bottom-3 individual',
279 clickFunction: 'nosubmenu',
280 routerLink: '/repos/details',
281 routerLinkActive: ['parentactive'],
282 routerLinkActiveOptions: true,
283 icon: 'fas fa-fas fa-cloud-download-alt',
284 menuName: 'PAGE.OSMREPO.MENUOSMREPO',
288 liClass: 'round-edge-top-3 round-edge-bottom-3 me-top-5',
289 anchorTagClass: 'link round-edge-top-3 round-edge-bottom-3 individual',
290 clickFunction: 'nosubmenu',
291 routerLink: '/wim/details',
292 routerLinkActive: ['parentactive'],
293 routerLinkActiveOptions: true,
294 icon: 'fas fa-sitemap',
295 menuName: 'WIMACCOUNTS',
299 liClass: 'header-menu',
300 anchorTagClass: 'heading text-uppercase',
305 liClass: 'mt-1 round-edge-top-3',
306 anchorTagClass: 'link round-edge-top-3 individual',
307 clickFunction: 'nosubmenu',
308 routerLink: '/projects',
309 routerLinkActive: ['parentactive'],
310 routerLinkActiveOptions: true,
311 icon: 'fas fa-folder',
312 menuName: 'PAGE.DASHBOARD.PROJECTS',
316 liClass: 'mt-1 mb-1',
317 anchorTagClass: 'link individual',
318 clickFunction: 'nosubmenu',
319 routerLink: '/users/details',
320 routerLinkActive: ['parentactive'],
321 routerLinkActiveOptions: true,
322 icon: 'fas fa-users',
323 menuName: 'PAGE.DASHBOARD.USERS',
327 liClass: 'round-edge-bottom-3',
328 anchorTagClass: 'link round-edge-bottom-3 individual',
329 clickFunction: 'nosubmenu',
330 routerLink: '/roles/details',
331 routerLinkActive: ['parentactive'],
332 routerLinkActiveOptions: true,
333 icon: 'fas fa-user-tag',
339 /** Interface for Post options */
340 export interface MENUITEMS {
343 anchorTagClass: string;
344 clickFunction?: string;
346 routerLinkActive?: string[];
347 routerLinkActiveOptions?: boolean;
350 isChildExists: boolean;
351 childItems?: MENUITEMS[];