All files / lib/dynamic-form-error dynamic-form-error.module.ts

100% Statements 6/6
100% Branches 0/0
100% Functions 4/4
100% Lines 5/5

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72                                        1x   1x                       1x                       1x                         1x                        
import { ModuleWithProviders, NgModule } from '@angular/core';
import { dynamicFormConsoleLogger } from './dynamic-form-console.logger';
import { DynamicFormErrorSettings, DYNAMIC_FORM_ERROR_SETTINGS } from './dynamic-form-error-settings';
import { DynamicFormErrorHandler } from './dynamic-form-error.handler';
import { DynamicFormLoggerSettings, DYNAMIC_FORM_LOGGER_SETTINGS } from './dynamic-form-logger-settings';
import { DynamicFormLoggerType } from './dynamic-form-logger-type';
import { DYNAMIC_FORM_LOGGER_TYPE_CONFIG } from './dynamic-form-logger-type-config';
import { DynamicFormLogger } from './dynamic-form.logger';
 
@NgModule({
  providers: [
    DynamicFormErrorHandler,
    DynamicFormLogger,
    {
      provide: DYNAMIC_FORM_LOGGER_TYPE_CONFIG,
      useValue: dynamicFormConsoleLogger,
      multi: true,
    },
  ],
})
export class DynamicFormErrorModule {
  static withErrorSettings(settings: DynamicFormErrorSettings): ModuleWithProviders<DynamicFormErrorModule> {
    return {
      ngModule: DynamicFormErrorModule,
      providers: [
        {
          provide: DYNAMIC_FORM_ERROR_SETTINGS,
          useValue: settings,
        },
      ],
    };
  }
 
  static withLoggerSettings(settings: DynamicFormLoggerSettings): ModuleWithProviders<DynamicFormErrorModule> {
    return {
      ngModule: DynamicFormErrorModule,
      providers: [
        {
          provide: DYNAMIC_FORM_LOGGER_SETTINGS,
          useValue: settings,
        },
      ],
    };
  }
 
  static withLogger(loggerType: DynamicFormLoggerType): ModuleWithProviders<DynamicFormErrorModule> {
    return {
      ngModule: DynamicFormErrorModule,
      providers: [
        {
          provide: DYNAMIC_FORM_LOGGER_TYPE_CONFIG,
          useValue: loggerType,
          multi: true,
        },
      ],
    };
  }
 
  static withLoggers(loggerTypes: DynamicFormLoggerType[]): ModuleWithProviders<DynamicFormErrorModule> {
    return {
      ngModule: DynamicFormErrorModule,
      providers: [
        {
          provide: DYNAMIC_FORM_LOGGER_TYPE_CONFIG,
          useValue: loggerTypes,
          multi: true,
        },
      ],
    };
  }
}