npm.io
0.7.68 • Published 3 years ago

@anchan828/gen-graphql-order-schema

Licence
MIT
Version
0.7.68
Deps
5
Size
29 kB
Vulns
0
Weekly
0
Stars
2

@anchan828/gen-graphql-order-schema

Description

Generate order schema by directive

Quick Start

import { genOrderTypes } from "@anchan828/gen-graphql-order-schema";
import { buildASTSchema, printSchema } from "graphql";

const schema = `

type Test {
  id: ID
}

type Query {
  tests: [Test] @orderBy
}

`;

printSchema(buildASTSchema(genOrderTypes(schema)));
//=>  enum OrderDirection {
//      ASC
//      DESC
//    }
//
//    type Query {
//      tests(orderBy: [TestOrder]): [Test]
//    }
//
//    type Test {
//      id: ID
//    }
//
//    type TestOrder {
//      sort: TestSort
//      direction: OrderDirection
//    }
//
//    enum TestSort {
//      ID
//    }

Options

TODO

Supoprted Types

For now, supported types are Basic Types (String, Int, Float, Boolean, ID), and Enum

License

MIT.