NAME
GraphQL::Plugin::Convert::OpenAPI - convert OpenAPI schema to GraphQL schema
SYNOPSIS
use GraphQL::Plugin::Convert::OpenAPI;
my $converted = GraphQL::Plugin::Convert::OpenAPI->to_graphql(
'file-containing-spec.json',
);
print $converted->{schema}->to_doc;
DESCRIPTION
This module implements the GraphQL::Plugin::Convert API to convert a JSON::Validator::OpenAPI specification to GraphQL::Schema etc.
It uses, from the given API spec:
the given "definitions" as output types
the given "definitions" as input types when required for an input parameter
the given operations as fields of either
Query
if aGET
, orMutation
otherwise
The queries will be run against the spec's server. If the spec starts with a /
, and a Mojolicious app is supplied (see below), that server will instead be the given app.
ARGUMENTS
To the to_graphql
method: a URL to a specification, or a filename containing a JSON specification, of an OpenAPI v2. Optionally, a Mojolicious app can be given as the second argument.
PACKAGE FUNCTIONS
field_resolver
This is available as \&GraphQL::Plugin::Convert::OpenAPI::field_resolver
in case it is wanted for use outside of the "bundle" of the to_graphql
method.
DEBUGGING
To debug, set environment variable GRAPHQL_DEBUG
to a true value.
AUTHOR
Ed J, <etj at cpan.org>
Parts based on https://github.com/yarax/swagger-to-graphql
LICENSE
Copyright (C) Ed J
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.