This repository was archived by the owner on Nov 29, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathschema.graphql
More file actions
172 lines (147 loc) · 2.68 KB
/
schema.graphql
File metadata and controls
172 lines (147 loc) · 2.68 KB
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
input AddTodoInput {
text: String!
clientMutationId: String
}
type AddTodoPayload {
todoEdge: TodoEdge!
viewer: User
clientMutationId: String
}
input ChangeTodoStatusInput {
complete: Boolean!
id: ID!
clientMutationId: String
}
type ChangeTodoStatusPayload {
todo: Todo
viewer: User
clientMutationId: String
}
input MarkAllTodosInput {
complete: Boolean!
clientMutationId: String
}
type MarkAllTodosPayload {
changedTodos: [Todo]
viewer: User
clientMutationId: String
}
type Mutation {
addTodo(input: AddTodoInput!): AddTodoPayload
changeTodoStatus(input: ChangeTodoStatusInput!): ChangeTodoStatusPayload
markAllTodos(input: MarkAllTodosInput!): MarkAllTodosPayload
removeCompletedTodos(input: RemoveCompletedTodosInput!): RemoveCompletedTodosPayload
removeTodo(input: RemoveTodoInput!): RemoveTodoPayload
renameTodo(input: RenameTodoInput!): RenameTodoPayload
}
"""
An object with an ID
"""
interface Node {
"""
The id of the object.
"""
id: ID!
}
"""
Information about pagination in a connection.
"""
type PageInfo {
"""
When paginating forwards, are there more items?
"""
hasNextPage: Boolean!
"""
When paginating backwards, are there more items?
"""
hasPreviousPage: Boolean!
"""
When paginating backwards, the cursor to continue.
"""
startCursor: String
"""
When paginating forwards, the cursor to continue.
"""
endCursor: String
}
type Query {
viewer: User
"""
Fetches an object given its ID
"""
node(
"""
The ID of an object
"""
id: ID!
): Node
}
input RemoveCompletedTodosInput {
clientMutationId: String
}
type RemoveCompletedTodosPayload {
deletedTodoIds: [String]
viewer: User
clientMutationId: String
}
input RemoveTodoInput {
id: ID!
clientMutationId: String
}
type RemoveTodoPayload {
deletedTodoId: ID
viewer: User
clientMutationId: String
}
input RenameTodoInput {
id: ID!
text: String!
clientMutationId: String
}
type RenameTodoPayload {
todo: Todo
clientMutationId: String
}
type Todo implements Node {
"""
The ID of an object
"""
id: ID!
text: String
complete: Boolean
}
"""
A connection to a list of items.
"""
type TodoConnection {
"""
Information to aid in pagination.
"""
pageInfo: PageInfo!
"""
A list of edges.
"""
edges: [TodoEdge]
}
"""
An edge in a connection.
"""
type TodoEdge {
"""
The item at the end of the edge
"""
node: Todo!
"""
A cursor for use in pagination
"""
cursor: String!
}
type User implements Node {
"""
The ID of an object
"""
id: ID!
todos(status: String = "any", after: String, first: Int, before: String, last: Int): TodoConnection!
totalCount: Int
completedCount: Int
}