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

36 lines
1.9 KiB
TypeScript

import {NgModule} from "@angular/core";
import {CommonModule} from "@angular/common";
import {RepositoryComponent} from "./repository.component";
import {LoadingModule} from "../openaireLibrary/utils/loading/loading.module";
import {Route, RouterModule} from "@angular/router";
import {RoleVerificationModule} from "../openaireLibrary/role-verification/role-verification.module";
import {SearchDataprovidersService} from "../openaireLibrary/services/searchDataproviders.service";
import {IconsModule} from "../openaireLibrary/utils/icons/icons.module";
import {EntityMetadataModule} from "../openaireLibrary/landingPages/landing-utils/entity-metadata.module";
import {IconsService} from "../openaireLibrary/utils/icons/icons.service";
import {open_access} from "../openaireLibrary/utils/icons/icons";
import {LogoUrlPipeModule} from "../openaireLibrary/utils/pipes/logoUrlPipe.module";
import {SandboxGuard} from "../shared/sandbox.guard";
const routes: Route[] = [
{
path: '', component: RepositoryComponent, children: [
{path: '', loadChildren: () => import('./browse-repositories/browse-repositories.module').then(m => m.BrowseRepositoriesModule)},
{path: ':stakeholder/search', loadChildren: () => import('../search/resultLanding.module').then(m => m.ResultLandingModule), canActivateChild: [SandboxGuard]},
{path: ':stakeholder', loadChildren: () => import('../shared/monitor/monitor.module').then(m => m.MonitorModule), canActivateChild: [SandboxGuard]}
]
}
];
@NgModule({
imports: [CommonModule, RouterModule.forChild(routes), LoadingModule, RoleVerificationModule, IconsModule, EntityMetadataModule, LogoUrlPipeModule],
declarations: [RepositoryComponent],
providers: [SearchDataprovidersService],
exports: [RepositoryComponent],
})
export class RepositoryModule {
constructor(private iconsService: IconsService) {
this.iconsService.registerIcons([open_access]);
}
}