@r26d/absinthe-apollo-upload-middleware

1.1.0 • Public • Published

Table of Contents generated with DocToc

@r26d/absinthe-apollo-upload-middleware

A network interface for Apollo that enables file-uploading to Absinthe back ends reduced to just middleware to make it easier to work with.

Usage

This branch is for Apollo V3

I simplified this to just be the middleware. That allows you to use other middleware to handle the other issues related to the request.

import ApolloClient from 'apollo-client'
import { createHttpLink } from 'apollo-link-http'
import { createUploadMiddleware } from 'apollo-absinthe-upload-link'
import { ApolloLink } from 'apollo-link'

const client = new ApolloClient({
link: ApolloLink.from([
createUploadMiddleware,
createHttpLink({
uri: 'localhost:4000/graphqql',
credentials: 'include'
})
])
})

Usage with React Native

Substitute File with ReactNativeFile:

import { ReactNativeFile } from 'apollo-absinthe-upload-link'

const file = new ReactNativeFile({
uri: '…',
type: 'image/jpeg',
name: 'photo.jpg'
})

const files = ReactNativeFile.list([
{
uri: '…',
type: 'image/jpeg',
name: 'photo-1.jpg'
},
{
uri: '…',
type: 'image/jpeg',
name: 'photo-2.jpg'
}
])

License

MIT ©️ r26D LLC

Acknowledgements

API

ReactNativeFileObject

A React Native FormData file object.

Type: Object

Properties

ReactNativeFile

A React Native file.

Parameters

Creates an array of file instances.

Parameters

Examples

const files = ReactNativeFile.list([{
  uri: uriFromCameraRoll1,
  type: 'image/jpeg',
  name: 'photo-1.jpg'
}, {
  uri: uriFromCameraRoll2,
  type: 'image/jpeg',
  name: 'photo-2.jpg'
}])

Readme

Keywords

none

Package Sidebar

Install

npm i @r26d/absinthe-apollo-upload-middleware

Weekly Downloads

2

Version

1.1.0

License

MIT

Unpacked Size

26.5 kB

Total Files

10

Last publish

Collaborators

  • delmendo