Files
psp_panel/src/app/layout/core/app.menu.ts
T

158 lines
6.8 KiB
TypeScript
Raw Normal View History

2025-01-07 12:16:16 +03:00
import { Component } from '@angular/core';
2025-01-03 02:51:54 +03:00
import { CommonModule } from '@angular/common';
2025-01-03 17:20:47 +03:00
import { RouterModule } from '@angular/router';
import { MenuItem } from 'primeng/api';
2025-01-07 12:16:16 +03:00
import { AppMenuitem } from './app.menuitem';
2025-01-03 02:51:54 +03:00
@Component({
selector: 'app-menu',
2025-01-07 17:29:51 +03:00
standalone: true,
imports: [CommonModule, AppMenuitem, RouterModule],
2025-01-03 02:51:54 +03:00
template: `<ul class="layout-menu">
2025-01-07 17:29:51 +03:00
<ng-container *ngFor="let item of model; let i = index">
2025-01-03 02:51:54 +03:00
<li app-menuitem *ngIf="!item.separator" [item]="item" [index]="i" [root]="true"></li>
<li *ngIf="item.separator" class="menu-separator"></li>
</ng-container>
2025-01-07 17:29:51 +03:00
</ul> `
2025-01-03 02:51:54 +03:00
})
export class AppMenu {
2025-01-03 17:20:47 +03:00
model: MenuItem[] = [];
2025-01-03 02:51:54 +03:00
ngOnInit() {
this.model = [
{
label: 'Home',
2025-01-03 17:20:47 +03:00
items: [{ label: 'Dashboard', icon: 'pi pi-fw pi-home', routerLink: ['/'] }]
2025-01-03 02:51:54 +03:00
},
{
label: 'UI Components',
items: [
2025-01-03 17:20:47 +03:00
{ label: 'Form Layout', icon: 'pi pi-fw pi-id-card', routerLink: ['/uikit/formlayout'] },
{ label: 'Input', icon: 'pi pi-fw pi-check-square', routerLink: ['/uikit/input'] },
2025-01-07 17:29:51 +03:00
{ label: 'Button', icon: 'pi pi-fw pi-mobile', class: 'rotated-icon', routerLink: ['/uikit/button'] },
{ label: 'Table', icon: 'pi pi-fw pi-table', routerLink: ['/uikit/table'] },
{ label: 'List', icon: 'pi pi-fw pi-list', routerLink: ['/uikit/list'] },
2025-01-03 17:20:47 +03:00
{ label: 'Tree', icon: 'pi pi-fw pi-share-alt', routerLink: ['/uikit/tree'] },
2025-01-07 17:29:51 +03:00
{ label: 'Panel', icon: 'pi pi-fw pi-tablet', routerLink: ['/uikit/panel'] },
{ label: 'Overlay', icon: 'pi pi-fw pi-clone', routerLink: ['/uikit/overlay'] },
{ label: 'Media', icon: 'pi pi-fw pi-image', routerLink: ['/uikit/media'] },
{ label: 'Menu', icon: 'pi pi-fw pi-bars', routerLink: ['/uikit/menu'] },
{ label: 'Message', icon: 'pi pi-fw pi-comment', routerLink: ['/uikit/message'] },
{ label: 'File', icon: 'pi pi-fw pi-file', routerLink: ['/uikit/file'] },
{ label: 'Chart', icon: 'pi pi-fw pi-chart-bar', routerLink: ['/uikit/charts'] },
{ label: 'Timeline', icon: 'pi pi-fw pi-calendar', routerLink: ['/uikit/timeline'] },
{ label: 'Misc', icon: 'pi pi-fw pi-circle', routerLink: ['/uikit/misc'] }
2025-01-03 02:51:54 +03:00
]
},
{
label: 'Pages',
icon: 'pi pi-fw pi-briefcase',
2025-01-03 17:20:47 +03:00
routerLink: ['/pages'],
2025-01-03 02:51:54 +03:00
items: [
{
label: 'Landing',
icon: 'pi pi-fw pi-globe',
2025-01-03 17:20:47 +03:00
routerLink: ['/landing']
2025-01-03 02:51:54 +03:00
},
{
label: 'Auth',
icon: 'pi pi-fw pi-user',
items: [
{
label: 'Login',
icon: 'pi pi-fw pi-sign-in',
2025-01-03 17:20:47 +03:00
routerLink: ['/auth/login']
2025-01-03 02:51:54 +03:00
},
{
label: 'Error',
icon: 'pi pi-fw pi-times-circle',
2025-01-03 17:20:47 +03:00
routerLink: ['/auth/error']
2025-01-03 02:51:54 +03:00
},
{
label: 'Access Denied',
icon: 'pi pi-fw pi-lock',
2025-01-03 17:20:47 +03:00
routerLink: ['/auth/access']
2025-01-03 02:51:54 +03:00
}
]
},
{
label: 'Crud',
icon: 'pi pi-fw pi-pencil',
2025-01-03 17:20:47 +03:00
routerLink: ['/pages/crud']
2025-01-03 02:51:54 +03:00
},
{
label: 'Not Found',
icon: 'pi pi-fw pi-exclamation-circle',
2025-01-03 17:20:47 +03:00
routerLink: ['/pages/notfound']
2025-01-03 02:51:54 +03:00
},
{
label: 'Empty',
icon: 'pi pi-fw pi-circle-off',
2025-01-03 17:20:47 +03:00
routerLink: ['/pages/empty']
2025-01-03 02:51:54 +03:00
}
]
},
{
label: 'Hierarchy',
items: [
{
label: 'Submenu 1',
icon: 'pi pi-fw pi-bookmark',
items: [
{
label: 'Submenu 1.1',
icon: 'pi pi-fw pi-bookmark',
items: [
{ label: 'Submenu 1.1.1', icon: 'pi pi-fw pi-bookmark' },
{ label: 'Submenu 1.1.2', icon: 'pi pi-fw pi-bookmark' },
{ label: 'Submenu 1.1.3', icon: 'pi pi-fw pi-bookmark' }
]
},
{
label: 'Submenu 1.2',
icon: 'pi pi-fw pi-bookmark',
items: [{ label: 'Submenu 1.2.1', icon: 'pi pi-fw pi-bookmark' }]
}
]
},
{
label: 'Submenu 2',
icon: 'pi pi-fw pi-bookmark',
items: [
{
label: 'Submenu 2.1',
icon: 'pi pi-fw pi-bookmark',
items: [
{ label: 'Submenu 2.1.1', icon: 'pi pi-fw pi-bookmark' },
{ label: 'Submenu 2.1.2', icon: 'pi pi-fw pi-bookmark' }
]
},
{
label: 'Submenu 2.2',
icon: 'pi pi-fw pi-bookmark',
items: [{ label: 'Submenu 2.2.1', icon: 'pi pi-fw pi-bookmark' }]
}
]
}
]
},
{
label: 'Get Started',
items: [
{
label: 'Documentation',
icon: 'pi pi-fw pi-book',
2025-01-03 17:20:47 +03:00
routerLink: ['/documentation']
2025-01-03 02:51:54 +03:00
},
{
label: 'View Source',
icon: 'pi pi-fw pi-github',
url: 'https://github.com/primefaces/sakai-ng',
target: '_blank'
}
]
}
];
}
}