Skip to content

Commit 29d7613

Browse files
committed
refactor(sidebar): sidebar-nav-service cleanup
1 parent bee4cac commit 29d7613

File tree

1 file changed

+13
-23
lines changed

1 file changed

+13
-23
lines changed
Lines changed: 13 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
import { Injectable } from '@angular/core';
2+
3+
import { INavData } from './app-sidebar-nav';
4+
5+
@Injectable()
6+
export abstract class SidebarNavService {
7+
/**
8+
* Returns a sidebar-nav items config NavData
9+
*/
10+
abstract getSidebarNavItemsConfig(): INavData[];
11+
}
12+
113
export class SidebarNavHelper {
214

315
itemType(item) {
@@ -16,19 +28,6 @@ export class SidebarNavHelper {
1628
}
1729
}
1830

19-
getClass(item) {
20-
const itemType = this.itemType(item);
21-
let itemClass;
22-
if (['divider', 'title'].includes(itemType)) {
23-
itemClass = `nav-${itemType}`;
24-
} else if (itemType === 'dropdown') {
25-
itemClass = 'nav-item nav-dropdown' ;
26-
} else {
27-
itemClass = 'nav-item';
28-
}
29-
return item.class ? `${itemClass} ${item.class}` : itemClass;
30-
}
31-
3231
public isActive(router, item) {
3332
return router.isActive(item.url, false);
3433
}
@@ -41,16 +40,7 @@ export class SidebarNavHelper {
4140
'nav-icon': true
4241
};
4342
const icon = item.icon;
44-
classes[icon] = !!item.icon;
45-
return classes;
46-
}
47-
48-
public getBadgeClass(item) {
49-
const classes = {
50-
'badge': true
51-
};
52-
const variant = `badge-${item.badge.variant}`;
53-
classes[variant] = !!item.badge.variant;
43+
classes[icon] = this.hasIcon(item);
5444
return classes;
5545
}
5646
}

0 commit comments

Comments
 (0)