@@ -10,6 +10,7 @@ import qualified Data.Aeson as Aeson
10
10
import Data.Text (Text , cons , intercalate , pack , snoc )
11
11
12
12
import qualified GraphQL.Internal.Syntax.AST as AST
13
+ import GraphQL.Internal.Name (unName )
13
14
14
15
-- * Document
15
16
@@ -30,7 +31,7 @@ operationDefinition (AST.AnonymousQuery ss) = selectionSet ss
30
31
31
32
node :: AST. Node -> Text
32
33
node (AST. Node name vds ds ss) =
33
- AST. unName name
34
+ unName name
34
35
<> optempty variableDefinitions vds
35
36
<> optempty directives ds
36
37
<> selectionSet ss
@@ -46,7 +47,7 @@ defaultValue :: AST.DefaultValue -> Text
46
47
defaultValue val = " =" <> value val
47
48
48
49
variable :: AST. Variable -> Text
49
- variable (AST. Variable name) = " $" <> AST. unName name
50
+ variable (AST. Variable name) = " $" <> unName name
50
51
51
52
selectionSet :: AST. SelectionSet -> Text
52
53
selectionSet = bracesCommas selection
@@ -58,8 +59,8 @@ selection (AST.SelectionFragmentSpread x) = fragmentSpread x
58
59
59
60
field :: AST. Field -> Text
60
61
field (AST. Field alias name args ds ss) =
61
- optempty (`snoc` ' :' ) (maybe mempty AST. unName alias)
62
- <> AST. unName name
62
+ optempty (`snoc` ' :' ) (maybe mempty unName alias)
63
+ <> unName name
63
64
<> optempty arguments args
64
65
<> optempty directives ds
65
66
<> optempty selectionSet ss
@@ -68,17 +69,17 @@ arguments :: [AST.Argument] -> Text
68
69
arguments = parensCommas argument
69
70
70
71
argument :: AST. Argument -> Text
71
- argument (AST. Argument name v) = AST. unName name <> " :" <> value v
72
+ argument (AST. Argument name v) = unName name <> " :" <> value v
72
73
73
74
-- * Fragments
74
75
75
76
fragmentSpread :: AST. FragmentSpread -> Text
76
77
fragmentSpread (AST. FragmentSpread name ds) =
77
- " ..." <> AST. unName name <> optempty directives ds
78
+ " ..." <> unName name <> optempty directives ds
78
79
79
80
inlineFragment :: AST. InlineFragment -> Text
80
81
inlineFragment (AST. InlineFragment (Just (AST. NamedType tc)) ds ss) =
81
- " ... on " <> AST. unName tc
82
+ " ... on " <> unName tc
82
83
<> optempty directives ds
83
84
<> optempty selectionSet ss
84
85
inlineFragment (AST. InlineFragment Nothing ds ss) =
@@ -87,7 +88,7 @@ inlineFragment (AST.InlineFragment Nothing ds ss) =
87
88
88
89
fragmentDefinition :: AST. FragmentDefinition -> Text
89
90
fragmentDefinition (AST. FragmentDefinition name (AST. NamedType tc) ds ss) =
90
- " fragment " <> AST. unName name <> " on " <> AST. unName tc
91
+ " fragment " <> unName name <> " on " <> unName tc
91
92
<> optempty directives ds
92
93
<> selectionSet ss
93
94
@@ -101,7 +102,7 @@ value (AST.ValueInt x) = pack $ show x
101
102
value (AST. ValueFloat x) = pack $ show x
102
103
value (AST. ValueBoolean x) = booleanValue x
103
104
value (AST. ValueString x) = stringValue x
104
- value (AST. ValueEnum x) = AST. unName x
105
+ value (AST. ValueEnum x) = unName x
105
106
value (AST. ValueList x) = listValue x
106
107
value (AST. ValueObject x) = objectValue x
107
108
value AST. ValueNull = " null"
@@ -121,31 +122,31 @@ objectValue :: AST.ObjectValue -> Text
121
122
objectValue (AST. ObjectValue ofs) = bracesCommas objectField ofs
122
123
123
124
objectField :: AST. ObjectField -> Text
124
- objectField (AST. ObjectField name v) = AST. unName name <> " :" <> value v
125
+ objectField (AST. ObjectField name v) = unName name <> " :" <> value v
125
126
126
127
-- * Directives
127
128
128
129
directives :: [AST. Directive ] -> Text
129
130
directives = spaces directive
130
131
131
132
directive :: AST. Directive -> Text
132
- directive (AST. Directive name args) = " @" <> AST. unName name <> optempty arguments args
133
+ directive (AST. Directive name args) = " @" <> unName name <> optempty arguments args
133
134
134
135
-- * Type Reference
135
136
136
137
type_ :: AST. Type -> Text
137
- type_ (AST. TypeNamed (AST. NamedType x)) = AST. unName x
138
+ type_ (AST. TypeNamed (AST. NamedType x)) = unName x
138
139
type_ (AST. TypeList x) = listType x
139
140
type_ (AST. TypeNonNull x) = nonNullType x
140
141
141
142
namedType :: AST. NamedType -> Text
142
- namedType (AST. NamedType name) = AST. unName name
143
+ namedType (AST. NamedType name) = unName name
143
144
144
145
listType :: AST. ListType -> Text
145
146
listType (AST. ListType ty) = brackets (type_ ty)
146
147
147
148
nonNullType :: AST. NonNullType -> Text
148
- nonNullType (AST. NonNullTypeNamed (AST. NamedType x)) = AST. unName x <> " !"
149
+ nonNullType (AST. NonNullTypeNamed (AST. NamedType x)) = unName x <> " !"
149
150
nonNullType (AST. NonNullTypeList x) = listType x <> " !"
150
151
151
152
typeDefinition :: AST. TypeDefinition -> Text
@@ -159,7 +160,7 @@ typeDefinition (AST.TypeDefinitionTypeExtension x) = typeExtensionDefinition x
159
160
160
161
objectTypeDefinition :: AST. ObjectTypeDefinition -> Text
161
162
objectTypeDefinition (AST. ObjectTypeDefinition name ifaces fds) =
162
- " type " <> AST. unName name
163
+ " type " <> unName name
163
164
<> optempty (spaced . interfaces) ifaces
164
165
<> optempty fieldDefinitions fds
165
166
@@ -171,7 +172,7 @@ fieldDefinitions = bracesCommas fieldDefinition
171
172
172
173
fieldDefinition :: AST. FieldDefinition -> Text
173
174
fieldDefinition (AST. FieldDefinition name args ty) =
174
- AST. unName name <> optempty argumentsDefinition args
175
+ unName name <> optempty argumentsDefinition args
175
176
<> " :"
176
177
<> type_ ty
177
178
@@ -180,36 +181,36 @@ argumentsDefinition = parensCommas inputValueDefinition
180
181
181
182
interfaceTypeDefinition :: AST. InterfaceTypeDefinition -> Text
182
183
interfaceTypeDefinition (AST. InterfaceTypeDefinition name fds) =
183
- " interface " <> AST. unName name <> fieldDefinitions fds
184
+ " interface " <> unName name <> fieldDefinitions fds
184
185
185
186
unionTypeDefinition :: AST. UnionTypeDefinition -> Text
186
187
unionTypeDefinition (AST. UnionTypeDefinition name ums) =
187
- " union " <> AST. unName name <> " =" <> unionMembers ums
188
+ " union " <> unName name <> " =" <> unionMembers ums
188
189
189
190
unionMembers :: [AST. NamedType ] -> Text
190
191
unionMembers = intercalate " |" . fmap namedType
191
192
192
193
scalarTypeDefinition :: AST. ScalarTypeDefinition -> Text
193
- scalarTypeDefinition (AST. ScalarTypeDefinition name) = " scalar " <> AST. unName name
194
+ scalarTypeDefinition (AST. ScalarTypeDefinition name) = " scalar " <> unName name
194
195
195
196
enumTypeDefinition :: AST. EnumTypeDefinition -> Text
196
197
enumTypeDefinition (AST. EnumTypeDefinition name evds) =
197
- " enum " <> AST. unName name
198
+ " enum " <> unName name
198
199
<> bracesCommas enumValueDefinition evds
199
200
200
201
enumValueDefinition :: AST. EnumValueDefinition -> Text
201
- enumValueDefinition (AST. EnumValueDefinition name) = AST. unName name
202
+ enumValueDefinition (AST. EnumValueDefinition name) = unName name
202
203
203
204
inputObjectTypeDefinition :: AST. InputObjectTypeDefinition -> Text
204
205
inputObjectTypeDefinition (AST. InputObjectTypeDefinition name ivds) =
205
- " input " <> AST. unName name <> inputValueDefinitions ivds
206
+ " input " <> unName name <> inputValueDefinitions ivds
206
207
207
208
inputValueDefinitions :: [AST. InputValueDefinition ] -> Text
208
209
inputValueDefinitions = bracesCommas inputValueDefinition
209
210
210
211
inputValueDefinition :: AST. InputValueDefinition -> Text
211
212
inputValueDefinition (AST. InputValueDefinition name ty dv) =
212
- AST. unName name <> " :" <> type_ ty <> maybe mempty defaultValue dv
213
+ unName name <> " :" <> type_ ty <> maybe mempty defaultValue dv
213
214
214
215
typeExtensionDefinition :: AST. TypeExtensionDefinition -> Text
215
216
typeExtensionDefinition (AST. TypeExtensionDefinition otd) =
0 commit comments