|
hace 2 años | |
---|---|---|
src/Data/Morpheus | hace 2 años | |
test | hace 2 años | |
.gitignore | hace 2 años | |
LICENSE | hace 2 años | |
README.md | hace 2 años | |
changelog.md | hace 2 años | |
default.nix | hace 2 años | |
morpheus-graphql-core.cabal | hace 2 años | |
package.yaml | hace 2 años | |
shell.nix | hace 2 años |
core Functionalities of Morpheus GraphQL, can be used to build GraphQL server, client ..
schema :: Schema VALID
schema =
[dsl|
type Query {
deity(name: String): Deity!
}
type Deity {
name: String!
power: [String!]!
}
|]
resolver :: Monad m => RootResModel e m
resolver =
RootResModel
{ query =
pure $
mkObject
"Query"
[("deity", resolveDeity)],
mutation = pure mkNull,
subscription = pure mkNull
}
resolveDeity :: (WithOperation o, Monad m) => Resolver o e m (ResModel o e m)
resolveDeity =
pure $
mkObject
"Deity"
[ ("name", pure $ mkString "Morpheus"),
("power", pure $ mkList [mkString "Shapeshifting"])
]
api :: ByteString -> IO ByteString
api = runApp (mkApp schema resolver)