irish-monitor/src/app/admin/admin.module.ts

64 lines
2.5 KiB
TypeScript
Raw Normal View History

2023-11-02 15:39:57 +01:00
import {NgModule} from "@angular/core";
import {CommonModule} from "@angular/common";
import {RouterModule} from "@angular/router";
import {AdminComponent} from "./admin.component";
import {HelperFunctions} from "../openaireLibrary/utils/HelperFunctions.class";
import {SideBarModule} from "../openaireLibrary/dashboard/sharedComponents/sidebar/sideBar.module";
import {LoadingModule} from "../openaireLibrary/utils/loading/loading.module";
import {LogoUrlPipeModule} from "../openaireLibrary/utils/pipes/logoUrlPipe.module";
import {AdminLoginGuard} from "../openaireLibrary/login/adminLoginGuard.guard";
2023-11-02 15:39:57 +01:00
@NgModule({
imports: [CommonModule, RouterModule.forChild([
{
path: '', component: AdminComponent, children: [
{
path: '',
loadChildren: () => import('../openaireLibrary/monitor-admin/manageStakeholders/manageStakeholders.module').then(m => m.ManageStakeholdersModule),
data: {hasAdminMenu: true, hasSidebar: false}
},
{
path: 'admin-tools',
loadChildren: () => import('../admin-tools/portal-admin-tools-routing.module').then(m => m.PortalAdminToolsRoutingModule),
canActivateChild: [AdminLoginGuard],
data: {hasAdminMenu: true, hasSidebar: false}
},
{
path: ':stakeholder', children: [
{
path: '',
loadChildren: () => import('../openaireLibrary/monitor-admin/general/general.module').then(m => m.GeneralModule)
},
{
matcher: HelperFunctions.routingMatcher(['indicators', 'indicators/:topic']),
loadChildren: () => import('../openaireLibrary/monitor-admin/topic/topic.module').then(m => m.TopicModule),
data: {hasInternalSidebar: true, showLogo: true},
pathMatch: 'full'
},
{
path: 'users',
redirectTo: 'users/manager',
pathMatch: 'full'
},
{
path: 'users/manager',
loadChildren: () => import('./users/users.module').then(m => m.UsersModule),
pathMatch: 'full'
},
{
path: 'admin-tools',
loadChildren: () => import('../admin-tools/admin-tools-routing.module').then(m => m.AdminToolsRoutingModule),
data: {param: 'stakeholder', parentClass: 'monitor'}
}
2023-11-09 13:34:34 +01:00
]
}
]
}
]), SideBarModule, LoadingModule, LogoUrlPipeModule],
2023-11-02 15:39:57 +01:00
declarations: [AdminComponent],
exports: [AdminComponent]
})
export class AdminModule {
}