Skip to content

Commit f5d3172

Browse files
author
Antoine Leblanc
committed
[skip ci] add query parser
1 parent e83372c commit f5d3172

File tree

1 file changed

+17
-0
lines changed
  • server/src-lib/Hasura/GraphQL/Schema

1 file changed

+17
-0
lines changed

server/src-lib/Hasura/GraphQL/Schema/Select.hs

+17
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,23 @@ type TableArgs = RQL.TableArgsG UnpreparedValue
2424
type TablePerms = RQL.TablePermG UnpreparedValue
2525

2626

27+
28+
queryExp
29+
:: forall m n. (MonadSchema n m, MonadError QErr m)
30+
=> HashSet QualifiedTable
31+
-> Bool
32+
-> m (Parser 'Output n (HashMap G.Name SelectExp))
33+
queryExp allTables stringifyNum = do
34+
selectExpParsers <- for (toList allTables) $ \tableName -> do
35+
tablePermissions <- tablePerms tableName
36+
for tablePermissions $ \perms ->
37+
selectExp tableName perms stringifyNum
38+
let queryFieldsParser = fmap (Map.fromList . catMaybes) $ sequenceA $ catMaybes selectExpParsers
39+
pure $ P.selectionSet $$(G.litName "Query") Nothing queryFieldsParser
40+
41+
42+
43+
2744
selectExp
2845
:: forall m n. (MonadSchema n m, MonadError QErr m)
2946
=> QualifiedTable

0 commit comments

Comments
 (0)