All files / lib/dynamic-form-input dynamic-form-input-base.ts

100% Statements 11/11
100% Branches 0/0
100% Functions 9/9
100% Lines 11/11

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                                    21x 21x     33x 2x 1x   1x 1x   1x 1x                         21x 21x      
import { DynamicFormControl } from '../dynamic-form-control/dynamic-form-control';
import { DynamicFormControlAddOn, DynamicFormControlDefinition } from '../dynamic-form-control/dynamic-form-control-definition';
import { DynamicFormControlHints } from '../dynamic-form-control/dynamic-form-control-hints';
import { DynamicFormControlTemplate } from '../dynamic-form-control/dynamic-form-control-template';
import { DynamicFormControlValidation } from '../dynamic-form-control/dynamic-form-control-validation';
import { DynamicFormFieldBase } from '../dynamic-form-field/dynamic-form-field-base';
import { FormControlBase } from '../dynamic-form-field/dynamic-form-field-control';
import { DynamicFormValidationService } from '../dynamic-form-validation/dynamic-form-validation.service';
import { DynamicFormInput, DynamicFormInputValue } from './dynamic-form-input';
 
export abstract class DynamicFormInputBaseImpl<
  Value = any,
  Input extends DynamicFormInput<Value> = DynamicFormInput<Value>,
  Template extends DynamicFormControlTemplate<Value, Input> = DynamicFormControlTemplate<Value, Input>,
  Definition extends DynamicFormControlDefinition<Value, Input, Template> = DynamicFormControlDefinition<Value, Input, Template>,
  Control extends DynamicFormControl<Value, Input, Template, Definition> = DynamicFormControl<Value, Input, Template, Definition>
> extends DynamicFormFieldBase<Value, Value, FormControlBase<Value>, Template, Definition, Control> {
 
  constructor(protected override validationService: DynamicFormValidationService) {
    super(validationService);
  }
 
  get input(): Input { return this.field.input; }
  get inputId(): string { return this.field.inputId; }
  get inputType(): string { return this.field.inputType; }
 
  get hints(): DynamicFormControlHints { return this.template.hints; }
  get validation(): DynamicFormControlValidation { return this.template.validation; }
 
  get prefixAddOn(): DynamicFormControlAddOn { return this.field.prefixAddOn; }
  get suffixAddOn(): DynamicFormControlAddOn { return this.field.suffixAddOn; }
}
 
export abstract class DynamicFormInputBase<
  Input extends DynamicFormInput = DynamicFormInput,
  Template extends DynamicFormControlTemplate<DynamicFormInputValue<Input>, Input> =
    DynamicFormControlTemplate<DynamicFormInputValue<Input>, Input>,
  Definition extends DynamicFormControlDefinition<DynamicFormInputValue<Input>, Input, Template> =
    DynamicFormControlDefinition<DynamicFormInputValue<Input>, Input, Template>,
  Control extends DynamicFormControl<DynamicFormInputValue<Input>, Input, Template, Definition> =
    DynamicFormControl<DynamicFormInputValue<Input>, Input, Template, Definition>
> extends DynamicFormInputBaseImpl<DynamicFormInputValue<Input>, Input, Template, Definition, Control> {
 
  constructor(protected override validationService: DynamicFormValidationService) {
    super(validationService);
  }
}