npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

graphql-getfragmenttypes

v1.0.1

Published

Script to query the server schema to obtain the necessary information about unions and interfaces and write it to a file.

Downloads

3

Readme

Graphql Get Fragment Types

Get fragment types from GraphQL schema.

Script to query the server schema to obtain the necessary information about unions and interfaces and write it to a file. As per the guide https://www.apollographql.com/docs/react/advanced/fragments.html#fragment-matcher

Features

  • Accepts a custom URL to the API endpoint
  • Accepts a custom JWT token as input
  • Accepts a custom path to output
  • Reads .env files

Download & Installation

$ yarn add -D graphql-getfragmenttypes
# or
$ npm install --save-dev graphql-getfragmenttypes

Usage

# output help
$ node ./index.js --help

# Set flags for endpoint URL and output path
$ node ./index.js -u http://your.endpoint.url -o ./graphql/fragmentTypes.json

# call with token and in unsafe mode. See below
$ node index.js --unsafe --token AxLTFkODgyZjI2M2VhYyIsImlhdCI6MTU1MDE2NTYyNCwiZXhwIjoxNTUwMTY5Mj

# Call from project with preset path to self signed certificate
$ NODE_EXTRA_CA_CERTS='/full/path/to/SelfSigned.pem' node node_modules/graphql-getfragmenttypes

Example in a project

1. Install getFragmentTypes.js through yarn/npm


$ yarn add --dev graphql-getfragmenttypes

2. Add Endpoint and Token to the project .env file


APP_GRAPHQL_ENDPOINT = 'http://your.endpoint.url'
APP_GRAPHQL_TOKEN = 'yourlongtokenhash'

3. Add as a custom script in your package.json. (Optionally prepended with path to certificate and custom output path.)


{
  "scripts": {
    ...
    "fragments": "NODE_EXTRA_CA_CERTS='/full/path/to/SelfSigned.pem' node node_modules/graphql-getfragmenttypes -o ./graphql/fragmentTypes.json"
  },
  ...
}

4. Call as script


$ yarn fragments

Options

| OptionFlags | Alias | Default | Description | | --- | --- | --- | --- | |--url|-u||URL to the API Endpoint. Can also be set in .env file as APP_GRAPHQL_ENDPOINT| |--output|-o|./fragmentTypes.json|Full path to output file.| |--token|-t|| API endpoint token. Added to headers as "Bearer: {token}". Can be set in .env file as APP_GRAPHQL_TOKEN| |--unsafe|-z|false|Warning - unsafe! Ignores if the server certificate failed verification against supplied CAs. Can be useful with private certificates in local environments but please first try extending well known CA with NODE_EXTRA_CA_CERTS (se example abow)| |--version|||Shows current version| |--help|||Shows help text|

Authors

License

MIT