1.3.3 • Published 6 years ago

rip-hunter v1.3.3

Weekly downloads
16
License
MIT
Repository
-
Last release
6 years ago

RipHunter

JS utilities for GraphQL

RipHunter is a small utility to parse objects formatted for GraphQL requests as well as use fetch to send query and mutation requests, returning a promise. Some helpers include sending an authorization token as well as custom headers.

npm version Travis npm downloads Issues MIT license

Installation

Using npm:

$ npm install rip-hunter

###App Usage Then with a module bundler like webpack that supports either CommonJS or ES2015 modules, use as you would anything else:

import {Hunter} from 'rip-hunter';

How to use

Example:

import {Hunter} from 'rip-hunter';

const AppActions = {
  getData: () => {
    // Variables
    const url = 'http://www.example.com/graphql';
    const gql = '{ app { ping } }';
    
    // Query data
    return Hunter.query(url, gql)
      .then(results => {
        console.log(results);
        // Assuming the results will return the JSON object, {status: 'ok'}
        // Output: {status: 'ok'}
      })
      .catch(error => {
        // ApiError will be returned if any problems occur.
      });
  },

  updateData: () => {
    // Variables
    const url = 'http://www.example.com/graphql';
    const data = {hello: 'world'};
    const gql = `{ user { update(data: ${Hunter.toGQL(data)}) } }`;
    
    // Mutate data
    return Hunter.mutation(url, gql)
      .then(results => {
        console.log(results);
        // Assuming the results will return the JSON object, {id: 'test', hello: 'world'}
        // Output: {id: 'test', hello: 'world'}
      })
      .catch(error => {
        // ApiError will be returned if any problems occur.
      });
  }
}

API

Formatting

toGQL(data)

Parses an immutable object, JSON object, string, or number into a GraphQL formatted string. This string is used when sending variables in a request.

  • data ( Any ): An immutable object, JSON object, string or number to format for use with a GQL request.
Returns

A string formatted for use with GQL.

Events

on(eventType, data)

Adds an event listener. The only event emitted is when an error occurs. The error event is rip_hunter_error.

  • eventType (String): Event to subscribe for store updates.
  • listener (Function): The callback to be invoked any time an action has been dispatched.

off(eventType, data)

Removes an event listener.

  • eventType (String): Event to unsubscribe.
  • listener (Function): The callback associated with the subscribed event.

AJAX

ajax(url, method, params, options)

AJAX request.

  • url (String): URL to send the request. Must be an absolute url.
  • method (String): The HTTP method for the request.
  • params (Object): Data to be sent with the request. Params will be converted to a query string for GET methods.
  • options (Object): Rip Hunter options.
    • headers (Object): Overwrite the default headers.
    • immutable (Boolean): Converts result to an Immutable object if set to true. Default: false.
    • token (String): Add an Authorization header with the value Bearer token.

Returns

A promise with either the response data or ApiError.

get(url, params, options)

Server request using HTTP GET.

  • url (String): URL to send the request. Must be an absolute url.
  • params (Object): Data to be sent with the request.
  • options (Object): Rip Hunter options.
    • headers (Object): Overwrite the default headers.
    • immutable (Boolean): Converts result to an Immutable object if set to true. Default: false.
    • token (String): Add an Authorization header with the value Bearer token.

Returns

A promise with either the response data or ApiError.

post(url, params, options)

Server request using HTTP POST.

  • url (String): URL to send the request. Must be an absolute url.
  • params (Object): Data to be sent with the request.
  • options (Object): Rip Hunter options.
    • headers (Object): Overwrite the default headers.
    • immutable (Boolean): Converts result to an Immutable object if set to true. Default: false.
    • token (String): Add an Authorization header with the value Bearer token.

Returns

A promise with either the response data or ApiError.

put(url, params, options)

Server request using HTTP PUT.

  • url (String): URL to send the request. Must be an absolute url.
  • params (Object): Data to be sent with the request.
  • options (Object): Rip Hunter options.
    • headers (Object): Overwrite the default headers.
    • immutable (Boolean): Converts result to an Immutable object if set to true. Default: false.
    • token (String): Add an Authorization header with the value Bearer token.

Returns

A promise with either the response data or ApiError.

del(url, params, options)

Server request using HTTP DEL.

  • url (String): GraphQL server endpoint. Must be an absolute url.
  • params (Object): Data to be sent with the request.
  • options (Object): Rip Hunter options.
    • headers (Object): Overwrite the default headers.
    • immutable (Boolean): Converts result to an Immutable object if set to true. Default: false.
    • token (String): Add an Authorization header with the value Bearer token.

Returns

A promise with either the response data or ApiError.

GraphQL

query(url, body, options)

Queries a GraphQL server.

  • url (String): GraphQL server endpoint. Must be an absolute url.
  • body (String): GraphQL query.
  • options (Object): Rip Hunter options.
    • headers (Object): Overwrite the default headers.
    • immutable (Boolean): Converts result to an Immutable object if set to true. Default: false.
    • token (String): Add an Authorization header with the value Bearer token.

Returns

A promise with either the response data or ApiError.

mutation(url, body, token, headers)

Modifies data on a GraphQL server.

  • url (String): GraphQL server endpoint. Must be an absolute url.
  • body (String): GraphQL query.
  • options (Object): Rip Hunter options.
    • headers (Object): Overwrite the default headers.
    • immutable (Boolean): Converts result to an Immutable object if set to true. Default: false.
    • token (String): Add an Authorization header with the value Bearer token.
Returns

A promise with either the response data or ApiError.

1.3.3

6 years ago

1.3.2

7 years ago

1.3.1

7 years ago

1.3.0

7 years ago

1.2.12

7 years ago

1.2.11

7 years ago

1.2.10

7 years ago

1.2.9

7 years ago

1.2.8

7 years ago

1.2.7

7 years ago

1.2.6

7 years ago

1.2.5

7 years ago

1.2.4

7 years ago

1.2.3

7 years ago

1.2.2

7 years ago

1.2.1

7 years ago

1.2.0

7 years ago

1.1.3

8 years ago

1.1.2

8 years ago

1.0.1

8 years ago

1.0.0

8 years ago

0.2.0

8 years ago

0.1.0

8 years ago