import { NgModule } from '@angular/core'; import { RouterModule } from '@angular/router'; import { LocaleResolver } from '@core/resolvers/locale.resolver'; import { GCCoreModule } from '@core/_core.module'; import { CharityBucketsResolver } from '@features/charity-buckets/charity-buckets.resolver'; import { FormsResolver } from '@features/configure-forms/resolvers/forms.resolver'; import { DocumentTemplatesResolver } from '@features/document-templates/resolvers/document-templates.resolver'; import { BaseProgramsPageComponent } from '@features/programs/base-programs-page/base-programs-page.component'; import { ProgramTabsComponent } from '@features/programs/program-tabs/program-tabs.component'; import { AllProgramsResolver } from '@features/programs/resolvers/all-programs.resolver'; import { CreateEditProgramResolver } from '@features/programs/resolvers/create-edit-program.resolver'; import { TranslateProgramsPageComponent } from '@features/programs/translation/translate-programs-page/translate-programs-page.component'; import { EmailResolver } from '@features/system-emails/resolvers/email.resolver'; import { WorkflowResolver } from '@features/workflow/resolvers/workflow.resolver'; import { ProgramsPageWrapperComponent } from '../programs/programs-page-wrapper/progams-page-wrapper.component'; import { NominationsModule } from './nominations.module'; @NgModule({ imports: [ GCCoreModule, NominationsModule, RouterModule.forChild([{ path: '', component: ProgramsPageWrapperComponent, resolve: { locales: LocaleResolver }, data: { namespace: ['PROGRAM'], pageName: 'Nomination Programs' }, children: [{ path: 'all', component: BaseProgramsPageComponent, data: { breadcrumbLabel: 'Grant Programs', breadcrumb: true, pageName: 'Grant Programs' } }, { path: '', pathMatch: 'exact', redirectTo: 'all' }] }, { path: '', children: [{ path: 'program/:id', component: ProgramTabsComponent, resolve: { forms: FormsResolver, workflows: WorkflowResolver, program: CreateEditProgramResolver, programs: AllProgramsResolver, charityBuckets: CharityBucketsResolver, locales: LocaleResolver, emails: EmailResolver, documentTemplates: DocumentTemplatesResolver }, data: { breadcrumbLabel: 'Program Detail', breadcrumb: true, isNomination: false, pageName: 'Nomination Program - Program Detail' } }] }, { path: 'translate', component: TranslateProgramsPageComponent, resolve: { programs: AllProgramsResolver }, data: { breadcrumb: true, breadcrumbLabel: 'Translation', namespace: ['PROGRAM'], isNomination: true, pageName: 'Nomination Program - Translation' } }]) ] }) export class NominationsRoutingModule { }