argos/dmp-frontend/src/app/dmps/dmps.module.ts

91 lines
3.6 KiB
TypeScript

import { AddResearchersComponent } from '../add-researchers/add-researchers.component';
import { DatasetWizardListingComponent } from './wizard/listing/dataset-wizard-listing.component';
import { DataManagementPlanWizardEditorComponent } from './wizard/editor/dmp-wizard-editor.component';
import { DataManagementPlanWizardComponent } from './wizard/dmp-wizard.component';
import { TranslateHttpLoader } from '@ngx-translate/http-loader';
import { BaseHttpService } from '../utilities/cite-http-service-module/base-http.service';
import { InvitationAcceptedComponent } from '../invitation-accepted/invitation-accepted.component';
import { InvitationComponent } from '../invitation/invitation.component';
import { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core';
import { DataManagementPlanEditorComponent } from './editor/dmp-editor.component';
import { DataManagementPlanListingComponent } from './listing/dmp-listing.component';
import { DataManagementPlanRoutes } from './dmps.routes';
import { HttpClient, HttpClientModule } from '@angular/common/http';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { CommonModule } from '@angular/common';
import { CovalentDialogsModule } from '@covalent/core';
import { SharedModule } from '../shared/shared.module'
import { NgModule } from '@angular/core';
import { AvailableProfilesComponent } from '../available-profiles/available-profiles.component';
import { DynamicDmpFieldResolver } from './editor/dynamic-field-resolver/dynamic-dmp-field-resolver.component';
import { DynamicFieldsProjectComponent } from './editor/dynamic-fields-project/dynamic-fields-project.component';
import { DynamicFieldProjectComponent } from './editor/dynamic-fields-project/dynamic-field-project/dynamic-field-project.component';
@NgModule({
imports: [
CommonModule,
FormsModule,
HttpClientModule,
SharedModule,
ReactiveFormsModule,
DataManagementPlanRoutes,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
deps: [HttpClient]
}
}),
CovalentDialogsModule
],
declarations: [
DataManagementPlanListingComponent,
DataManagementPlanEditorComponent,
InvitationComponent,
InvitationAcceptedComponent,
DataManagementPlanWizardComponent,
DataManagementPlanWizardEditorComponent,
DatasetWizardListingComponent,
AddResearchersComponent,
AvailableProfilesComponent,
DynamicDmpFieldResolver,
DynamicFieldsProjectComponent,
DynamicFieldProjectComponent
],
exports: [
DataManagementPlanListingComponent,
DataManagementPlanEditorComponent,
InvitationComponent,
InvitationAcceptedComponent,
DataManagementPlanWizardComponent,
DataManagementPlanWizardEditorComponent,
DatasetWizardListingComponent,
AddResearchersComponent,
AvailableProfilesComponent,
DynamicFieldsProjectComponent,
DynamicFieldProjectComponent
],
entryComponents: [
InvitationComponent,
AddResearchersComponent,
AvailableProfilesComponent
],
providers: [
BaseHttpService
]
})
export class DataManagementPlanModule {
constructor(private translate: TranslateService) {
translate.setDefaultLang('en');
translate.use('en');
}
}
export function HttpLoaderFactory(httpClient: HttpClient) {
return new TranslateHttpLoader(httpClient, 'assets/lang/', '.json');
}