summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/import_entities/import_groups/graphql/typedefs.graphql
blob: c830aaa75e695b22e5c2d08a8e4ce4b1b5247f5d (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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
type ClientBulkImportAvailableNamespace {
  id: ID!
  full_path: String!
}

type ClientBulkImportTarget {
  target_namespace: String!
  new_name: String!
}

type ClientBulkImportSourceGroupConnection {
  nodes: [ClientBulkImportSourceGroup!]!
  pageInfo: ClientBulkImportPageInfo!
}

type ClientBulkImportProgress {
  id: ID
  status: String!
}

type ClientBulkImportValidationError {
  field: String!
  message: String!
}

type ClientBulkImportSourceGroup {
  id: ID!
  web_url: String!
  full_path: String!
  full_name: String!
  progress: ClientBulkImportProgress!
  import_target: ClientBulkImportTarget!
  validation_errors: [ClientBulkImportValidationError!]!
}

type ClientBulkImportPageInfo {
  page: Int!
  perPage: Int!
  total: Int!
  totalPages: Int!
}

extend type Query {
  bulkImportSourceGroup(id: ID!): ClientBulkImportSourceGroup
  bulkImportSourceGroups(
    page: Int!
    perPage: Int!
    filter: String!
  ): ClientBulkImportSourceGroupConnection!
  availableNamespaces: [ClientBulkImportAvailableNamespace!]!
}

extend type Mutation {
  setNewName(newName: String, sourceGroupId: ID!): ClientBulkImportSourceGroup!
  setTargetNamespace(targetNamespace: String, sourceGroupId: ID!): ClientBulkImportSourceGroup!
  importGroups(sourceGroupIds: [ID!]!): [ClientBulkImportSourceGroup!]!
  setImportProgress(id: ID, status: String!): ClientBulkImportSourceGroup!
  updateImportProgress(id: ID, status: String!): ClientBulkImportProgress
  addValidationError(
    sourceGroupId: ID!
    field: String!
    message: String!
  ): ClientBulkImportSourceGroup!
  removeValidationError(sourceGroupId: ID!, field: String!): ClientBulkImportSourceGroup!
}