pretty_graphql

Crates.iopretty_graphql
lib.rspretty_graphql
version0.2.1
sourcesrc
created_at2024-08-22 12:08:42.300117
updated_at2024-10-21 14:50:10.482971
descriptionGraphQL formatter.
homepage
repositoryhttps://github.com/g-plane/pretty_graphql
max_upload_size
id1347635
size117,736
Pig Fang (g-plane)

documentation

README

pretty_graphql is a configurable GraphQL formatter.

Basic Usage

You can format source code string by using [format_text] function.

use pretty_graphql::{config::FormatOptions, format_text};

let options = FormatOptions::default();
assert_eq!("{\n  field\n}\n", &format_text("{ field }", &options).unwrap());

For detailed documentation of configuration, please read configuration documentation.

If there're syntax errors in source code, it will return Err:

use pretty_graphql::{config::FormatOptions, format_text};

let options = FormatOptions::default();
assert!(format_text("{", &options).is_err());

Print Syntax Tree

If you have already parsed the syntax tree from apollo-parser, you can use [print_tree] to print it.

use pretty_graphql::{config::FormatOptions, print_tree};
use apollo_parser::{cst::Document, Parser};

let input = "{ field }";
let parser = Parser::new(input);
let cst = parser.parse();

let options = FormatOptions::default();
assert_eq!("{\n  field\n}\n", &print_tree(&cst.document(), &options));
Commit count: 84

cargo fmt