File

libs/playground-test-bbs/plugins/src/lib/escaped-max-length-validator/escaped-max-length-validator.module.ts

Index

Properties

Properties

customField (Optional)
Type TestInterface
escapedMaxLength
Type number
import { PLUGIN_VALIDATORS } from '@allianz/taly-core';
import { CommonModule } from '@angular/common';
import { ModuleWithProviders, NgModule } from '@angular/core';
import { EscapedMaxLengthValidator } from './escaped-max-length-validator';
import { ESCAPED_MAX_LENGTH_PLUGIN_OPTIONS } from './tokens';

const DEFAULT_OPTIONS: EscapedMaxLengthValidatorPluginOptions = {
  escapedMaxLength: 30
};

export interface EscapedMaxLengthValidatorPluginOptions {
  escapedMaxLength: number;
  customField?: TestInterface;
}

export interface TestInterface {
  bla: string;
  blu: Date;
}

@NgModule({
  providers: [
    {
      provide: PLUGIN_VALIDATORS,
      useClass: EscapedMaxLengthValidator,
      multi: true
    }
  ],
  imports: [CommonModule]
})
export class EscapedMaxLengthValidatorModule {
  static forRoot(
    options: EscapedMaxLengthValidatorPluginOptions = DEFAULT_OPTIONS
  ): ModuleWithProviders<EscapedMaxLengthValidatorModule> {
    return {
      ngModule: EscapedMaxLengthValidatorModule,
      providers: [{ provide: ESCAPED_MAX_LENGTH_PLUGIN_OPTIONS, useValue: options }]
    };
  }
}

results matching ""

    No results matching ""