import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
import { NgSelectModule } from '@ng-select/ng-select';
import { AddBankLoanPolicyRoutingModule } from './add-bank-loan-policy-routing.module';
import { HttpClient } from '@angular/common/http';
import { TranslateHttpLoader } from '@ngx-translate/http-loader';
import { TranslateLoader, TranslateModule } from '@ngx-translate/core';
import { MaterialModule } from '../../shared/directives/material.module';
import { SharedModule } from '../../shared/shared.module';
import { AddBankLoanPolicyComponent } from './add-bank-loan-policy.component';

export function HttpLoaderFactory(http: HttpClient) {
    return new TranslateHttpLoader(http, './assets/admin/i18n/', '.json');
}

@NgModule({
    declarations: [
        AddBankLoanPolicyComponent
    ],
    imports: [
        CommonModule,
        AddBankLoanPolicyRoutingModule,
        MaterialModule,
        SharedModule,
        NgbModule,
        FormsModule,
        ReactiveFormsModule,
        // ArchwizardModule,
        NgSelectModule,
        TranslateModule.forRoot({
            loader: {
                provide: TranslateLoader,
                useFactory: HttpLoaderFactory,
                deps: [HttpClient],
            }
        }),
    ]
})
export class AddBankLoanPolicyModule { }
