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'); }