summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/import_entities/import_groups/utils.js
blob: a1baeaf39dd9ab495d6e0ea4dbbbb4d9770d7b01 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import { STATUSES } from '../constants';
import { NEW_NAME_FIELD } from './constants';

export function isNameValid(group, validationRegex) {
  return validationRegex.test(group.import_target[NEW_NAME_FIELD]);
}

export function getInvalidNameValidationMessage(group) {
  return group.validation_errors.find(({ field }) => field === NEW_NAME_FIELD)?.message;
}

export function isInvalid(group, validationRegex) {
  return Boolean(!isNameValid(group, validationRegex) || getInvalidNameValidationMessage(group));
}

export function isFinished(group) {
  return group.progress.status === STATUSES.FINISHED;
}

export function isAvailableForImport(group) {
  return [STATUSES.NONE, STATUSES.FINISHED].some((status) => group.progress.status === status);
}