summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/import_entities/import_projects/store/getters.js
blob: ef01a67ec94da2b7c00ecbdf384b5ded14b925d5 (plain)
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
import { isProjectImportable, isIncompatible, isImporting } from '../utils';

export const isLoading = (state) => state.isLoadingRepos || state.isLoadingNamespaces;

export const importingRepoCount = (state) => state.repositories.filter(isImporting).length;

export const isImportingAnyRepo = (state) => state.repositories.some(isImporting);

export const hasIncompatibleRepos = (state) => state.repositories.some(isIncompatible);

export const hasImportableRepos = (state) => state.repositories.some(isProjectImportable);

export const importAllCount = (state) => state.repositories.filter(isProjectImportable).length;

export const getImportTarget = (state) => (repoId) => {
  if (state.customImportTargets[repoId]) {
    return state.customImportTargets[repoId];
  }

  const repo = state.repositories.find((r) => r.importSource.id === repoId);

  return {
    newName: repo.importSource.sanitizedName,
    targetNamespace: state.defaultTargetNamespace,
  };
};