argos/dmp-frontend/src/app/dataset-profile-form/dataset-profile.module.ts

108 lines
3.6 KiB
TypeScript

import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { DatasetProfileRoutes } from './dataset-profile.router';
import { RouterModule } from '@angular/router';
import { FormComponent } from './form/form.component';
//import { GroupFieldFormComponent } from './groupfield-form/groupfield-form.component';
import { RuleFormComponent } from './rule-component/rule.component';
import { SectionFormComponent } from './section-form/section-form.component';
import { PageFormComponent } from './page-form/page-component';
import { CompositeFieldFormComponent } from './compositefield-form/compositefield-form.component';
import { FieldFormComponent } from './field-form/field-form.component';
import { HttpClientModule, HttpClient } from '@angular/common/http';
import { CheckBoxComponent } from '../shared/componentsAdmin/checkbox/checkbox-component';
import { FreeTextData } from '../models/DataField/FreeTextData';
import { BooleanDecisionComponent } from '../shared/componentsAdmin/booleanDecision/booleanDecision-component';
import { FreeTextComponent } from '../shared/componentsAdmin/freetext/freetext-component';
import { TextAreaComponent } from '../shared/componentsAdmin/textarea/textarea-component';
import { RadioBoxComponent } from '../shared/componentsAdmin/radiobox/radiobox-component';
import { WordlistComponent } from '../shared/componentsAdmin/wordlist/wordlist-component';
import { AutocompleteComponent } from '../shared/componentsAdmin/autocomplete/autocomplete-component';
import { ComboboxComponent } from '../shared/componentsAdmin/combobox/combobox-component';
import { SharedModule } from '../shared/shared.module';
import { DatasetProfilePreviewerComponent } from './previewer/dataset-profile-previewer.component';
import { DynamicFormModule } from '../form/dynamic-form.module';
import { DatasetProfileAdminListingComponent } from './datasets-admin-listing/dataset-profile-admin-listing.component';
import { TranslateService, TranslateModule, TranslateLoader } from '@ngx-translate/core';
import { TranslateHttpLoader } from '@ngx-translate/http-loader';
@NgModule({
imports: [
CommonModule,
FormsModule,
HttpClientModule,
ReactiveFormsModule,
RouterModule,
SharedModule,
DynamicFormModule,
RouterModule.forChild(DatasetProfileRoutes),
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
deps: [HttpClient]
}
}),
],
declarations: [
FormComponent,
//GroupFieldFormComponent,
RuleFormComponent,
SectionFormComponent,
DatasetProfileAdminListingComponent,
PageFormComponent,
CompositeFieldFormComponent,
FieldFormComponent,
TextAreaComponent,
CheckBoxComponent,
BooleanDecisionComponent,
FreeTextComponent,
ComboboxComponent,
AutocompleteComponent,
WordlistComponent,
RadioBoxComponent,
DatasetProfilePreviewerComponent
],
exports: [
FormComponent,
//GroupFieldFormComponent,
RuleFormComponent,
SectionFormComponent,
PageFormComponent,
CompositeFieldFormComponent,
DatasetProfileAdminListingComponent,
FieldFormComponent,
TextAreaComponent,
CheckBoxComponent,
BooleanDecisionComponent,
FreeTextComponent,
ComboboxComponent,
AutocompleteComponent,
WordlistComponent,
RadioBoxComponent
],
providers: [
],
entryComponents: [
DatasetProfilePreviewerComponent
]
})
export class DatasetProfileModule {
constructor(private translate: TranslateService) {
translate.setDefaultLang('en');
translate.use('en');
}
}
export function HttpLoaderFactory(httpClient: HttpClient) {
return new TranslateHttpLoader(httpClient, 'assets/lang/', '.json');
}