summaryrefslogtreecommitdiffstats
path: root/portal-FE-common/src/app/layout/components/sidebar
diff options
context:
space:
mode:
Diffstat (limited to 'portal-FE-common/src/app/layout/components/sidebar')
-rw-r--r--portal-FE-common/src/app/layout/components/sidebar/sidebar.component.html72
-rw-r--r--portal-FE-common/src/app/layout/components/sidebar/sidebar.component.scss228
-rw-r--r--portal-FE-common/src/app/layout/components/sidebar/sidebar.component.spec.ts62
-rw-r--r--portal-FE-common/src/app/layout/components/sidebar/sidebar.component.ts158
4 files changed, 0 insertions, 520 deletions
diff --git a/portal-FE-common/src/app/layout/components/sidebar/sidebar.component.html b/portal-FE-common/src/app/layout/components/sidebar/sidebar.component.html
deleted file mode 100644
index e2f4f3a0..00000000
--- a/portal-FE-common/src/app/layout/components/sidebar/sidebar.component.html
+++ /dev/null
@@ -1,72 +0,0 @@
-<!--
- ============LICENSE_START==========================================
- ONAP Portal
- ===================================================================
- Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
- ===================================================================
-
- Unless otherwise specified, all software contained herein is licensed
- under the Apache License, Version 2.0 (the "License");
- you may not use this software except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- Unless otherwise specified, all documentation contained herein is licensed
- under the Creative Commons License, Attribution 4.0 Intl. (the "License");
- you may not use this documentation except in compliance with the License.
- You may obtain a copy of the License at
-
- https://creativecommons.org/licenses/by/4.0/
-
- Unless required by applicable law or agreed to in writing, documentation
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- ============LICENSE_END============================================
-
-
- -->
-
-<nav class="sidebar" [ngClass]="{sidebarPushRight: isActive, collapsed: collapsed}">
- <div class="toggle-button" [ngClass]="{collapsed: collapsed}" (click)="toggleCollapsed()">
- <i class="icon ion-md-arrow-{{collapsed?'dropright':'dropleft'}}" style="float:right"></i> <i
- class="icon ion-md-arrow-{{collapsed?'dropright':'dropleft'}}" style="float:right"></i>&nbsp;
- </div>
- <div class="list-group" *ngFor="let menu of menuData ; index as item">
- <a href="{{menu.href}}" *ngIf="!showOnlyParentMenu" [routerLinkActive]="['router-link-active']"
- class="list-group-item">
- <i class="icon ion-md-{{menu.imageSrc}}"></i>&nbsp;
- <span>{{menu.name}}</span>
- </a>
- <a [routerLink]="menu.state" *ngIf="showOnlyParentMenu" [routerLinkActive]="['router-link-active']"
- class="list-group-item">
- <i class="icon ion-md-{{menu.imageSrc}}"></i>&nbsp;
- <span>{{menu.name}}</span>
- </a>
- <div class="nested-menu" *ngIf="menu.menuItems.length > 0">
- <a href="javascript:void(0)" class="list-group-item" (click)="addExpandClass(menu.name)">
- <i class="fa fa-plus"></i>&nbsp;
- <span>{{menu.name}}</span>
- </a>
- <li class="nested" [class.expand]="showMenu === menu.name">
- <ul class="submenu">
- <li *ngFor="let menuItems of menu.menuItems">
- <a href="{{menuItems.href}}">
- <i class="fa fa-monument"></i>&nbsp;
- <span>{{ menuItems.name }}</span>
- </a>
- </li>
- </ul>
- </li>
- </div>
- </div>
-</nav> \ No newline at end of file
diff --git a/portal-FE-common/src/app/layout/components/sidebar/sidebar.component.scss b/portal-FE-common/src/app/layout/components/sidebar/sidebar.component.scss
deleted file mode 100644
index 6330e3b2..00000000
--- a/portal-FE-common/src/app/layout/components/sidebar/sidebar.component.scss
+++ /dev/null
@@ -1,228 +0,0 @@
-/*
- * ============LICENSE_START==========================================
- * ONAP Portal
- * ===================================================================
- * Copyright 2019 AT&T Intellectual Property. All rights reserved.
- * ===================================================================
- *
- * Unless otherwise specified, all software contained herein is licensed
- * under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Unless otherwise specified, all documentation contained herein is licensed
- * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
- * you may not use this documentation except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://creativecommons.org/licenses/by/4.0/
- *
- * Unless required by applicable law or agreed to in writing, documentation
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * ============LICENSE_END============================================
- *
- *
- */
-$topnav-background-color: #fff;
-.sidebar {
- border-radius: 0;
- position: relative;
- z-index: 1000;
- //top: 56px;
- left: 270px;
- width: 270px;
- margin-left: -270px;
- margin-bottom: 48px;
- border: none;
- border-radius: 0;
- overflow-y: auto;
- background-color: $topnav-background-color;
- bottom: 0;
- overflow-x: hidden;
- padding-bottom: 40px;
- white-space: nowrap;
- -webkit-transition: all 0.2s ease-in-out;
- -moz-transition: all 0.2s ease-in-out;
- -ms-transition: all 0.2s ease-in-out;
- -o-transition: all 0.2s ease-in-out;
- transition: all 0.2s ease-in-out;
- .list-group {
- a.list-group-item {
- background: $topnav-background-color;
- border: 0;
- border-top: 1px solid #999;
- border-radius: 0;
- color: #0568ae;
- text-decoration: none;
- .icon {
- margin-right: 10px;
- color: #000;
- }
- }
- a:hover {
- background: darken($topnav-background-color, 2%);
- color: #000;
- }
- a.router-link-active {
- background: darken($topnav-background-color, 5%);
- color: #000;
- }
- .header-fields {
- padding-top: 10px;
-
- > .list-group-item:first-child {
- border-top: 1px solid rgba(255, 255, 255, 0.2);
- }
- }
- }
- .sidebar-dropdown {
- *:focus {
- border-radius: none;
- border: none;
- }
- .panel-title {
- font-size: 1rem;
- height: 50px;
- margin-bottom: 0;
- a {
- color: #999;
- text-decoration: none;
- font-weight: 400;
- background: $topnav-background-color;
- span {
- position: relative;
- display: block;
- padding: 0.75rem 1.5rem;
- padding-top: 1rem;
- }
- }
- a:hover,
- a:focus {
- color: #fff;
- outline: none;
- outline-offset: -2px;
- }
- }
- .panel-title:hover {
- background: darken($topnav-background-color, 5%);
- }
- .panel-collapse {
- border-radious: 0;
- border: none;
- .panel-body {
- .list-group-item {
- border-radius: 0;
- background-color: $topnav-background-color;
- border: 0 solid transparent;
- a {
- color: #999;
- }
- a:hover {
- color: #fff;
- }
- }
- .list-group-item:hover {
- background: darken($topnav-background-color, 5%);
- }
- }
- }
- }
-}
-
-.nested-menu {
- .list-group-item {
- cursor: pointer;
- }
- .nested {
- list-style-type: none;
- }
- ul.submenu {
- display: none;
- height: 0;
- }
- & .expand {
- ul.submenu {
- display: block;
- list-style-type: none;
- height: auto;
- li {
- a {
- color: #0568ae;
- padding: 10px;
- display: block;
- }
- }
- }
- }
-}
-@media screen and (max-width: 992px) {
- .sidebar {
- top: 54px;
- left: 0px;
- }
-}
-@media print {
- .sidebar {
- display: none !important;
- }
-}
-@media (min-width: 992px) {
- .header-fields {
- display: none;
- }
-}
-
-::-webkit-scrollbar {
- width: 8px;
-}
-
-::-webkit-scrollbar-track {
- -webkit-box-shadow: inset 0 0 0px rgba(255, 255, 255, 1);
- border-radius: 3px;
-}
-
-::-webkit-scrollbar-thumb {
- border-radius: 3px;
- -webkit-box-shadow: inset 0 0 3px rgba(255, 255, 255, 1);
-}
-
-.toggle-button {
- width: 270px;
- cursor: pointer;
- padding: 12px;
- bottom: 0;
- color: #0568ae;
- background: #fff;
- i {
- font-size: 23px;
- }
- &:hover {
- background: darken($topnav-background-color, 2%);
- color: #000;
- }
- border-top: 1px solid #999;
- -webkit-transition: all 0.2s ease-in-out;
- -moz-transition: all 0.2s ease-in-out;
- -ms-transition: all 0.2s ease-in-out;
- -o-transition: all 0.2s ease-in-out;
- transition: all 0.2s ease-in-out;
-}
-
-.collapsed {
- width: 60px;
- span {
- display: none;
- }
-}
diff --git a/portal-FE-common/src/app/layout/components/sidebar/sidebar.component.spec.ts b/portal-FE-common/src/app/layout/components/sidebar/sidebar.component.spec.ts
deleted file mode 100644
index 92caeb42..00000000
--- a/portal-FE-common/src/app/layout/components/sidebar/sidebar.component.spec.ts
+++ /dev/null
@@ -1,62 +0,0 @@
-/*-
- * ============LICENSE_START==========================================
- * ONAP Portal
- * ===================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
- * ===================================================================
- *
- * Unless otherwise specified, all software contained herein is licensed
- * under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Unless otherwise specified, all documentation contained herein is licensed
- * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
- * you may not use this documentation except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://creativecommons.org/licenses/by/4.0/
- *
- * Unless required by applicable law or agreed to in writing, documentation
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * ============LICENSE_END============================================
- *
- *
- */
-import { async, ComponentFixture, TestBed } from '@angular/core/testing';
-
-import { SidebarComponent } from './sidebar.component';
-
-describe('SidebarComponent', () => {
- let component: SidebarComponent;
- let fixture: ComponentFixture<SidebarComponent>;
-
- beforeEach(async(() => {
- TestBed.configureTestingModule({
- declarations: [ SidebarComponent ]
- })
- .compileComponents();
- }));
-
- beforeEach(() => {
- fixture = TestBed.createComponent(SidebarComponent);
- component = fixture.componentInstance;
- fixture.detectChanges();
- });
-
- it('should create', () => {
- expect(component).toBeTruthy();
- });
-});
diff --git a/portal-FE-common/src/app/layout/components/sidebar/sidebar.component.ts b/portal-FE-common/src/app/layout/components/sidebar/sidebar.component.ts
deleted file mode 100644
index 1c689e16..00000000
--- a/portal-FE-common/src/app/layout/components/sidebar/sidebar.component.ts
+++ /dev/null
@@ -1,158 +0,0 @@
-/*
- * ============LICENSE_START==========================================
- * ONAP Portal SDK
- * ===================================================================
- * Copyright © 2019 AT&T Intellectual Property. All rights reserved.
- * ===================================================================
- *
- * Unless otherwise specified, all software contained herein is licensed
- * under the Apache License, Version 2.0 (the "License");
- * you may not use this software except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Unless otherwise specified, all documentation contained herein is licensed
- * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
- * you may not use this documentation except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://creativecommons.org/licenses/by/4.0/
- *
- * Unless required by applicable law or agreed to in writing, documentation
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * ============LICENSE_END============================================
- *
- *
- */
-import { Component, Output, EventEmitter, OnInit, Input } from '@angular/core';
-import { Router, NavigationEnd } from '@angular/router';
-import { SidebarService } from '../../../shared/services/index'
-
-@Component({
- selector: 'app-sidebar',
- templateUrl: './sidebar.component.html',
- styleUrls: ['./sidebar.component.scss']
-})
-export class SidebarComponent implements OnInit {
- @Input() labelName: string;
- isActive: boolean;
- collapsed: boolean;
- showMenu: string;
- pushRightClass: string;
- result: any;
- showOnlyParentMenu: boolean;
- leftParentData: any;
- leftChildData: any;
- menuData: Array<object> = [];
- page: any;
-
- @Output() collapsedEvent = new EventEmitter<boolean>();
-
- constructor(public router: Router, public sidebarService: SidebarService) {
- this.router.events.subscribe(val => {
- if (
- val instanceof NavigationEnd &&
- window.innerWidth <= 992 &&
- this.isToggled()
- ) {
- this.toggleSidebar();
- }
- });
- }
-
- ngOnInit() {
- this.isActive = false;
- this.collapsed = false;
- this.showMenu = '';
- this.pushRightClass = 'push-right';
- this.sidebarService.getLeftMenu()
- .subscribe(data => {
- this.result = data;
- if (this.result.data && this.result.data2) {
- this.leftParentData = JSON.parse(this.result.data);
- this.leftChildData = JSON.parse(this.result.data2);
- } else {
- this.labelName = this.result.label;
- this.leftParentData = this.result.navItems;
- this.showOnlyParentMenu = true;
- }
-
- for (var i = 0; i < this.leftParentData.length; i++) {
- var parentItem = {
- name: null,
- imageSrc: null,
- href: null,
- menuItems: [],
- state: null
- }
- if (this.showOnlyParentMenu) {
- parentItem.name = this.leftParentData[i].name;
- parentItem.imageSrc = this.leftParentData[i].imageSrc;
- parentItem.state = '/'+this.leftParentData[i].state;
- } else {
- parentItem.name = this.leftParentData[i].label;
- parentItem.imageSrc = this.leftParentData[i].imageSrc;
- }
- // Add link to items with no subitems
- if (!this.showOnlyParentMenu) {
- if (this.leftChildData[i].length == 0)
- parentItem.href = this.leftParentData[i].action;
-
- for (var j = 0; j < this.leftChildData[i].length; j++) {
-
- var childItem = {
- name: null,
- href: null
- };
- if (this.leftChildData[i][j].label != null && this.leftChildData[i][j].label.length > 0) {
-
- childItem.name = this.leftChildData[i][j].label;
- childItem.href = this.leftChildData[i][j].action;
- parentItem.menuItems.push(childItem);
- }
- }
- }
- this.menuData.push(parentItem);
- }
-
- });
-
- }
- eventCalled() {
- this.isActive = !this.isActive;
- }
-
- addExpandClass(element: any) {
- if (element === this.showMenu) {
- this.showMenu = '0';
- } else {
- this.showMenu = element;
- }
- }
-
- toggleCollapsed() {
- this.collapsed = !this.collapsed;
- this.collapsedEvent.emit(this.collapsed);
- }
-
- isToggled(): boolean {
- const dom: Element = document.querySelector('body');
- return dom.classList.contains(this.pushRightClass);
- }
-
- toggleSidebar() {
- const dom: any = document.querySelector('body');
- dom.classList.toggle(this.pushRightClass);
- }
-}