Files
psp_panel/src/layout/appmenu.ts
T

161 lines
6.7 KiB
TypeScript
Raw Normal View History

2025-01-03 02:51:54 +03:00
import { Component, inject } from '@angular/core';
import { CommonModule } from '@angular/common';
import { AppMenuItem } from '@/src/layout/appmenuitem';
@Component({
selector: 'app-menu',
2025-01-03 02:51:54 +03:00
standalone:true,
imports: [
CommonModule,
AppMenuItem
],
template: `<ul class="layout-menu">
<ng-container *ngFor="let item of model; let i = index;">
<li app-menuitem *ngIf="!item.separator" [item]="item" [index]="i" [root]="true"></li>
<li *ngIf="item.separator" class="menu-separator"></li>
</ng-container>
</ul>
`,
})
export class AppMenu {
model: any[] = [];
ngOnInit() {
this.model = [
{
label: 'Home',
2025-01-03 16:04:21 +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 16:04:21 +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' },
{ label: 'Button', icon: 'pi pi-fw pi-mobile',routerLink: '/uikit/button', class: 'rotated-icon' },
{ label: 'Table', icon: 'pi pi-fw pi-table',routerLink: '/uikit/table' },
{ label: 'List', icon: 'pi pi-fw pi-list',routerLink: '/uikit/list' },
{ label: 'Tree', icon: 'pi pi-fw pi-share-alt',routerLink: '/uikit/tree' },
{ 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 16:04:21 +03:00
routerLink: '/pages',
2025-01-03 02:51:54 +03:00
items: [
{
label: 'Landing',
icon: 'pi pi-fw pi-globe',
2025-01-03 16:04:21 +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 16:04:21 +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 16:04:21 +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 16:04:21 +03:00
routerLink: '/auth/access'
2025-01-03 02:51:54 +03:00
}
]
},
{
label: 'Crud',
icon: 'pi pi-fw pi-pencil',
2025-01-03 16:04:21 +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 16:04:21 +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 16:04:21 +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 16:04:21 +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'
}
]
}
];
}
}