import { RouterModule } from '@angular/router'; import { TranslateHttpLoader } from '@ngx-translate/http-loader'; import { DatasetService } from '../services/dataset/dataset.service'; import { DynamicFormModule } from '../form/dynamic-form.module'; import { TranslateLoader, TranslateModule, TranslateService } from '@ngx-translate/core'; import { DatasetWizardComponent } from './dataset-wizard/dataset-wizard.component'; import { DatasetRoutes } from './dataset.routes'; import { DatasetListingComponent } from './listing/dataset-listing.component'; import { DatasetEditorComponent } from './editor/dataset-editor.component'; import { CommonModule } from '@angular/common'; import { HttpClient, HttpClientModule } from '@angular/common/http'; import { NgModule } from '@angular/core'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { SharedModule } from '../shared/shared.module' import { BaseHttpService } from '../utilities/cite-http-service-module/base-http.service'; import { BaseHttpModule } from '../utilities/cite-http-service-module/cite-http.module'; import { MaterialModule } from '../shared/material/material.module'; import { DataManagementPlanService } from '../services/data-management-plan/data-management-plan.service'; import { DatasetWizardService } from '../services/dataset-wizard/dataset-wizard.service'; import { ExternalSourcesService } from '../services/external-sources/external-sources.service'; import { ExternalSourcesConfigurationService } from '../services/external-sources/external-sources-configuration.service'; import { DatasetPublicListingComponent } from './dataset-public/dataset-public-listing.component'; import { DataRepositoryReferencedModelHelperComponent } from './dataset-referenced-models-helper/datarepository/datarepository-referenced-model-helper.component'; import { ExternalDatasetReferencedModelHelperComponent } from './dataset-referenced-models-helper/externalDataset/externaldataset-referenced-model-helper.component'; import { ServicesReferencedModelHelperComponent } from './dataset-referenced-models-helper/services/services-referenced-model-helper.component'; import { RegistryReferencedModelHelperComponent } from './dataset-referenced-models-helper/registry/registry-referenced-model-helper.component'; import { RegistryService } from '../services/registries/registry.service'; import { ServicesDataService } from '../services/services/services-data.service'; import { DataRepositoryService } from '../services/datarepository/datarepository.service'; import { ExternalDatasetService } from '../services/external-dataset/external-dataset.service'; @NgModule({ imports: [ CommonModule, FormsModule, HttpClientModule, SharedModule, MaterialModule, RouterModule.forChild(DatasetRoutes), ReactiveFormsModule, DynamicFormModule, TranslateModule.forRoot({ loader: { provide: TranslateLoader, useFactory: HttpLoaderFactory, deps: [HttpClient] } }), ], declarations: [ DatasetListingComponent, DatasetEditorComponent, DatasetWizardComponent, DatasetPublicListingComponent, DataRepositoryReferencedModelHelperComponent, ExternalDatasetReferencedModelHelperComponent, ServicesReferencedModelHelperComponent, RegistryReferencedModelHelperComponent, ], exports: [ DatasetListingComponent, DatasetEditorComponent, DatasetWizardComponent, DataRepositoryReferencedModelHelperComponent, ExternalDatasetReferencedModelHelperComponent, ServicesReferencedModelHelperComponent, RegistryReferencedModelHelperComponent, DatasetPublicListingComponent, RouterModule ], providers: [ DatasetWizardService, ExternalSourcesService, ExternalSourcesConfigurationService, DataManagementPlanService, DatasetService, DataRepositoryService, ExternalDatasetService, ServicesDataService, RegistryService ], entryComponents:[ DataRepositoryReferencedModelHelperComponent, ExternalDatasetReferencedModelHelperComponent, ServicesReferencedModelHelperComponent, RegistryReferencedModelHelperComponent ] }) export class DatasetModule { constructor(private translate: TranslateService) { translate.setDefaultLang('en'); translate.use('en'); } } export function HttpLoaderFactory(httpClient: HttpClient) { return new TranslateHttpLoader(httpClient, 'assets/lang/', '.json'); }