argos/dmp-frontend/src/app/form/dynamic-form.module.ts

104 lines
4.3 KiB
TypeScript

import { TranslateHttpLoader } from '@ngx-translate/http-loader';
import { PaginationService } from '../services/pagination.service';
import { VisibilityRulesService } from '../utilities/visibility-rules/visibility-rules.service';
import { DynamicFieldCheckBoxComponent } from './dynamic-fields/dynamic-field-checkbox/dynamic-field-checkbox';
import { ProgressBarComponent } from './pprogress-bar/progress-bar.component';
import { TableOfContentsFieldComponent } from './tableOfContents/table-of-content-field/table-of-content-field.component';
import { DynamicFormSectionComponent } from './dynamic-form-section/dynamic-form-section';
import { DynamicFieldDropdownComponent } from './dynamic-fields/dynamic-field-dropdown/dynamic-field-dropdown';
import { AutocompleteRemoteComponent } from './dynamic-fields/dynamic-field-autocomplete/autocomplete-remote.component';
import {
TableOfContentsSectionComponent,
} from './tableOfContents/table-of-content-section/table-of-content-section.component';
import { TableOfContentsGroupComponent } from './tableOfContents/table-of-content-group/table-of-content-group.component';
import {
TableOfContentsFieldSetComponent,
} from './tableOfContents/table-of-content-fieldset/table-of-content-fieldset.component';
import { DynamicFieldRadioBoxComponent } from './dynamic-fields/dynamic-field-radiobox/dynamic-field-radiobox.component';
import { TableOfContentsComponent } from './tableOfContents/table-of-contents.component';
import {
DynamicFieldBooleanDecisionComponent,
} from './dynamic-fields/dynamic-field-boolean-decision/dynamic-field-boolean-decision.component';
import { DynamicFormGroupComponent } from './dynamic-form-group/dynamic-form-group.component';
import { DynamicFormCompositeFieldComponent } from './dynamic-form-composite-field/dynamic-form-composite-field';
import { DynamicFormFieldComponent } from './dynamic-fields/dynamic-form-field.component';
import { DynamicFormComponent } from './dynamic-form/dynamic-form.component';
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
import { SharedModule } from '../shared/shared.module';
import { HttpClient, HttpClientModule } from '@angular/common/http';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { CommonModule } from '@angular/common';
import { NgModule } from "@angular/core";
import { DatasetProfileAdmin } from '../services/datasetProfileAdmin/datasetProfileAfmin.service';
import { DatasetProfileService } from '../services/dataset-profile.service';
import { DatasetWizardService } from '../services/dataset-wizard/dataset-wizard.service';
@NgModule({
imports: [
CommonModule,
FormsModule,
HttpClientModule,
SharedModule,
ReactiveFormsModule,
TranslateModule.forRoot({
loader: {
provide: TranslateLoader,
useFactory: HttpLoaderFactory,
deps: [HttpClient]
}
}),
],
declarations: [
DynamicFormComponent,
DynamicFormFieldComponent,
DynamicFormGroupComponent,
DynamicFormCompositeFieldComponent,
DynamicFieldBooleanDecisionComponent,
DynamicFieldRadioBoxComponent,
TableOfContentsComponent,
TableOfContentsFieldSetComponent,
TableOfContentsGroupComponent,
TableOfContentsSectionComponent,
AutocompleteRemoteComponent,
DynamicFieldDropdownComponent,
DynamicFormSectionComponent,
TableOfContentsFieldComponent,
ProgressBarComponent,
DynamicFieldCheckBoxComponent,
],
exports: [
DynamicFormComponent,
DynamicFormFieldComponent,
DynamicFormGroupComponent,
DynamicFormCompositeFieldComponent,
DynamicFieldBooleanDecisionComponent,
DynamicFieldRadioBoxComponent,
TableOfContentsComponent,
TableOfContentsFieldSetComponent,
TableOfContentsGroupComponent,
TableOfContentsSectionComponent,
AutocompleteRemoteComponent,
DynamicFieldDropdownComponent,
DynamicFormSectionComponent,
TableOfContentsFieldComponent,
ProgressBarComponent,
DynamicFieldCheckBoxComponent,
],
providers: [
VisibilityRulesService,
PaginationService,
DatasetProfileService,
DatasetProfileAdmin,
DatasetWizardService
]
})
export class DynamicFormModule { }
export function HttpLoaderFactory(httpClient: HttpClient) {
return new TranslateHttpLoader(httpClient, 'assets/lang/', '.json');
}