diff --git a/projects/common/form-element-component.directive.ts b/projects/common/form-element-component.directive.ts
index 7c65224c4e808019b0f0f84d602ccb43f1a92915..6f3216d6c267ce848f1fd708fc4b9ef6c4610003 100644
--- a/projects/common/form-element-component.directive.ts
+++ b/projects/common/form-element-component.directive.ts
@@ -14,14 +14,13 @@ export abstract class FormElementComponent extends ElementComponent implements O
   @Output() elementValueChanged = new EventEmitter<ValueChangeElement>();
   @Output() setValidators = new EventEmitter<ValidatorFn[]>();
   parentForm!: FormGroup;
-  defaultValue!: InputElementValue;
   elementFormControl!: FormControl;
 
   private ngUnsubscribe = new Subject<void>();
 
   ngOnInit(): void {
     this.elementFormControl = this.formControl;
-    this.updateFormValue((this.elementModel as InputElement).value);
+    this.elementFormControl?.setValue((this.elementModel as InputElement).value, { emitEvent: false });
     this.setValidators.emit(this.validators);
     this.elementFormControl.valueChanges
       .pipe(
@@ -30,9 +29,7 @@ export abstract class FormElementComponent extends ElementComponent implements O
         takeUntil(this.ngUnsubscribe)
       )
       .subscribe(([prevValue, nextValue]: [InputElementValue, InputElementValue]) => {
-        if (nextValue != null) { // invalid input on number fields generates event with null TODO find a better solution
-          this.elementValueChanged.emit({ id: this.elementModel.id, values: [prevValue, nextValue] });
-        }
+        this.elementValueChanged.emit({ id: this.elementModel.id, values: [prevValue, nextValue] });
       });
   }
 
@@ -51,10 +48,6 @@ export abstract class FormElementComponent extends ElementComponent implements O
       new FormControl({});
   }
 
-  updateFormValue(newValue: InputElementValue): void {
-    this.elementFormControl?.setValue(newValue, { emitEvent: false });
-  }
-
   ngOnDestroy(): void {
     this.ngUnsubscribe.next();
     this.ngUnsubscribe.complete();