private controlFileValidation()

in frontend/src/app/modules/data-transfer-config-editor/components/data-transfer-restore-parameters/data-transfer-restore-parameters.component.ts [387:408]


  private controlFileValidation(control: AbstractControl): {[key: string]: boolean} | null {
    if (!control.value) {
      return null;
    }

    const SPACE_SLASH_REGEX = /[\s\/]/;
    if (control.value.match(SPACE_SLASH_REGEX)) {
      return { invalidFormat: true };
    }

    const isDotPresent = control.value.indexOf('.');
    if (isDotPresent === -1) {
      return null;
    }
    
    const EXTENSION_REGEX = /^\S+\.{1}[A-Za-z]+$/;
    if (control.value.match(EXTENSION_REGEX)) {
      return null;
    } else {
      return { invalidFormat: true };
    }
  }