{"_id":"@allsquare/apollo-upload-client","_rev":"5-b4889e01eca5889cfd923abea5cc0f72","name":"@allsquare/apollo-upload-client","dist-tags":{"latest":"8.0.2"},"versions":{"8.0.0":{"name":"@allsquare/apollo-upload-client","version":"8.0.0","description":"Enhances Apollo Client for intuitive file uploads via GraphQL mutations.","license":"MIT","author":{"name":"Jayden Seric","email":"me@jaydenseric.com","url":"https://jaydenseric.com"},"repository":{"type":"git","url":"git+https://github.com/jaydenseric/apollo-upload-client.git"},"homepage":"https://github.com/jaydenseric/apollo-upload-client#readme","bugs":{"url":"https://github.com/jaydenseric/apollo-upload-client/issues"},"keywords":["apollo","client","link","graphql","file","upload","multipart","react","native"],"files":["lib"],"main":"lib/main","module":"lib/module","engines":{"node":">=6.10"},"browserslist":">1%","dependencies":{"@babel/runtime":"^7.0.0-beta.40","apollo-link-http-common":"^0.2.3","extract-files":"^3.1.0"},"peerDependencies":{"apollo-link":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.0.0-beta.40","@babel/core":"^7.0.0-beta.40","@babel/plugin-transform-runtime":"^7.0.0-beta.40","@babel/preset-env":"^7.0.0-beta.40","apollo-link":"^1.2.1","cross-env":"^5.1.3","eslint":"^4.18.2","eslint-plugin-prettier":"^2.6.0","graphql":"^0.13.0","husky":"^0.14.3","lint-staged":"^7.0.0","npm-run-all":"^4.1.2","prettier":"^1.11.1","rimraf":"^2.6.2"},"scripts":{"clean":"rimraf lib","prebuild":"npm run clean && mkdir -p lib","build":"run-p build:*","build:main":"babel src -d lib/main","build:module":"cross-env MODULE=true babel src -d lib/module","postbuild":"prettier 'lib/**/*.js' --write","prewatch":"npm run clean","watch":"run-p 'build:* -- --watch'","lint":"run-p lint:*","lint:eslint":"eslint .","lint:prettier":"prettier '**/*.{json,md}' -l","fix":"run-p fix:*","fix:eslint":"eslint . --fix","fix:prettier":"prettier '**/*.{json,md}' --write","precommit":"lint-staged","prepublishOnly":"run-p lint build"},"lint-staged":{"*.js":"eslint","*.{json,md}":"prettier -l"},"eslintIgnore":["!.*","node_modules","lib"],"eslintConfig":{"parserOptions":{"sourceType":"module","ecmaVersion":2017,"ecmaFeatures":{"experimentalObjectRestSpread":true}},"env":{"es6":true,"node":true,"browser":true},"extends":["eslint:recommended"],"plugins":["prettier"],"rules":{"curly":["error","multi"],"prettier/prettier":"error"}},"prettier":{"proseWrap":"never","semi":false,"singleQuote":true},"gitHead":"2edc65a9b6546d3ed36c7c469b5332d25594c4cc","_id":"@allsquare/apollo-upload-client@8.0.0","_npmVersion":"5.3.0","_nodeVersion":"8.5.0","_npmUser":{"name":"jordanbecker","email":"jordan@becker.io"},"dist":{"integrity":"sha512-JbLz8++iiCX/fQlAzm+IrAKHtPYL03+1/qOzdBKVlSno9x7OKB1Ji85zPCraiZd4LNSfi30zllfGI3cxocp1MA==","shasum":"f587b8e94ef509865ab815df4857bfbb43314fad","tarball":"https://registry.npmjs.org/@allsquare/apollo-upload-client/-/apollo-upload-client-8.0.0.tgz","fileCount":5,"unpackedSize":25124,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbCDVcCRA9TVsSAnZWagAAbnwP/jZt2DJWefvviG5XChD2\ni+T+MbktbmHyu9fhZ/yMJNtMn+HSfv3Xmd1AznCc5T+aKdPmz8G91/9+lVpc\nZ528Yr8jDOPS3Uj1K9RR8XvigATUXTAD8W+jEOVXQs0Q0cDNuyuXtRlCHtRp\nb2DqaUVvPHSFWBg0Lap9w9TdkSJ41QdoY/TOOWh3qNNEGTR41E8O0igrsRgy\nYHVzlcEB6WGP0S9+8iqmWEFh3Kuk2KIe2L79H0LaqeU4cF2hSKho7DydxeEi\nntjFCzKjGCNiy9oUicUkL0hzKqroFTYFbB4OhJ/0yolYFy+WIbzRDXwdsga3\nrzp4/XbYAxV87iaB2vQQCdtRJc1Q9REfK+a/Lvdet6LHZy3KP7r1Vk8paOD8\nM18VOWCt6SpBjI1IT3HKN0dvpLQ5Nn1BLUwFBbaePIqC0JiruIggLIszepUs\n0zlnKnecEktptONNuZ5GYBAJtttZiTPZPet59PQTjAg1sGzJ8Rt/U7UOW81J\nZjAakTJyRYb/mIHdlActo/oubfzRh0jAYmqLbQcIB43IioTlHu2b9Ywo4NVq\nmr2jwN58dDPf4YsR2O6wVrLse/1X/4FCFg3K7M2kfmk6TN9dKu2brFe5Smjo\nxZ+6mR4k6fhvKjkMXG2fU08KeDbjSKIBaFgpIpqlpdIYtHAhFX5+yew1qV6K\n2UR1\r\n=9Aft\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICDuTJ/2bC+zyCJbNU0lq9vV9/MqvKmGE0vx6j/j/AhGAiBHRWiK1tKFfKxzhXEzGlO0KKWXQk98WHQsdqhQ1h9xRg=="}]},"maintainers":[{"name":"jordanbecker","email":"jordan@becker.io"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apollo-upload-client_8.0.0_1527264603925_0.02013498510316003"},"_hasShrinkwrap":false},"8.0.1":{"name":"@allsquare/apollo-upload-client","version":"8.0.1","description":"Enhances Apollo Client for intuitive file uploads via GraphQL mutations.","license":"MIT","author":{"name":"Jayden Seric","email":"me@jaydenseric.com","url":"https://jaydenseric.com"},"repository":{"type":"git","url":"git+https://github.com/jaydenseric/apollo-upload-client.git"},"homepage":"https://github.com/jaydenseric/apollo-upload-client#readme","bugs":{"url":"https://github.com/jaydenseric/apollo-upload-client/issues"},"keywords":["apollo","client","link","graphql","file","upload","multipart","react","native"],"files":["lib"],"main":"lib/main","module":"lib/module","engines":{"node":">=6.10"},"browserslist":">1%","dependencies":{"@babel/runtime":"^7.0.0-beta.40","apollo-link-http-common":"^0.2.3","extract-files":"^3.1.0"},"peerDependencies":{"apollo-link":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.0.0-beta.40","@babel/core":"^7.0.0-beta.40","@babel/plugin-transform-runtime":"^7.0.0-beta.40","@babel/preset-env":"^7.0.0-beta.40","apollo-link":"^1.2.1","cross-env":"^5.1.3","eslint":"^4.18.2","eslint-plugin-prettier":"^2.6.0","graphql":"^0.13.0","husky":"^0.14.3","lint-staged":"^7.0.0","npm-run-all":"^4.1.2","prettier":"^1.11.1","rimraf":"^2.6.2"},"scripts":{"clean":"rimraf lib","prebuild":"npm run clean && mkdir -p lib","build":"run-p build:*","build:main":"babel src -d lib/main","build:module":"cross-env MODULE=true babel src -d lib/module","postbuild":"prettier 'lib/**/*.js' --write","prewatch":"npm run clean","watch":"run-p 'build:* -- --watch'","lint":"run-p lint:*","lint:eslint":"eslint .","lint:prettier":"prettier '**/*.{json,md}' -l","fix":"run-p fix:*","fix:eslint":"eslint . --fix","fix:prettier":"prettier '**/*.{json,md}' --write","precommit":"lint-staged","prepublishOnly":"run-p lint build"},"lint-staged":{"*.js":"eslint","*.{json,md}":"prettier -l"},"eslintIgnore":["!.*","node_modules","lib"],"eslintConfig":{"parserOptions":{"sourceType":"module","ecmaVersion":2017,"ecmaFeatures":{"experimentalObjectRestSpread":true}},"env":{"es6":true,"node":true,"browser":true},"extends":["eslint:recommended"],"plugins":["prettier"],"rules":{"curly":["error","multi"],"prettier/prettier":"error"}},"prettier":{"proseWrap":"never","semi":false,"singleQuote":true},"gitHead":"d821ef5b1fc2fd34a59d1edd6f486e00a35d5c10","_id":"@allsquare/apollo-upload-client@8.0.1","_npmVersion":"5.3.0","_nodeVersion":"8.5.0","_npmUser":{"name":"jordanbecker","email":"jordan@becker.io"},"dist":{"integrity":"sha512-vmokU8vyBKD5Yblqo+MlxR04YaPCvKEw+NuX+4Rz05/qkYm/1oeT5iLv+sU9qUlRyTLHYwVJQNeZ1knKHRDcIg==","shasum":"c4f40e9ad36808ec23d20cb5d93569bae7a94d16","tarball":"https://registry.npmjs.org/@allsquare/apollo-upload-client/-/apollo-upload-client-8.0.1.tgz","fileCount":5,"unpackedSize":25172,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbCDg3CRA9TVsSAnZWagAACwoP/RENDD3f+UQ8WEeQhKtH\nEW3kCfGFysVJp7c+bPHA4QOC5vKJlX2g2IS/tX1jSh1916oj7sGjTWSxViOt\n8fE9c2oaqMgJ1G0Eam7RB7ajGtykxMZPn1vXkyWorWq7PxqxjmEMeDqnMBOW\nr4SFvvo9W+K9HyQadhuHIpw/NmIwF5/v31wDdcGyRhMMAS7VCrYOBbHa9LGf\nVUjl/9Pwjh4glxmPwjzRehm3KnYiWpub6kaTFsKoDhboYNjgO4vQDGCWa0Cx\n5ODAXItrdkhTeU91VBkbWoh6EaSLOpa7brMdcm7ScuQnxYWjJVpwZlOnUGlv\nkDujlJgaB4uj+hhYb86MG9RMDl/yzxfE08vY4oCxcdoA5+3gICYb/FmQZhii\n1uPrwl1e+pS5o7CygDbiCp1jGtpHAbhOPIqsW0ShmmEiFOpB8TD7mrCWIN3M\nFzcUmnBqtoGSg6oq1WP4AkLZW0vRbRyCOAKnGHIHW7ambo/5XCeR2Sckkz72\n2B+aZMWdl6csmUdVyZi7nlVveM/G7/QfJz3TziqIqDLJarIzTpVvHadUDnkZ\nYepCkhmG+aJqZvLxNXXees4U84HdrlRLKiz28+t11QI9VXpMO+fhi30Ev6mV\nOoco/g/FL8dyNYJ7RqrfnEt3un8yPUf2RFySiu7rxR4UgLOwrSPQM2R050Ae\nfi8D\r\n=X7RZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBTcUtz/o0Behg/L9UFazL5TlmHrWdkI9Pdtx0CUquKmAiEA4HyyFpzSMExi6KO3KgUgZBG5pvGTV9m5baLM54GOhp8="}]},"maintainers":[{"name":"jordanbecker","email":"jordan@becker.io"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apollo-upload-client_8.0.1_1527265334454_0.9743673207711192"},"_hasShrinkwrap":false},"8.0.2":{"name":"@allsquare/apollo-upload-client","version":"8.0.2","description":"Enhances Apollo Client for intuitive file uploads via GraphQL mutations.","license":"MIT","author":{"name":"Jayden Seric","email":"me@jaydenseric.com","url":"https://jaydenseric.com"},"repository":{"type":"git","url":"git+https://github.com/jaydenseric/apollo-upload-client.git"},"homepage":"https://github.com/jaydenseric/apollo-upload-client#readme","bugs":{"url":"https://github.com/jaydenseric/apollo-upload-client/issues"},"keywords":["apollo","client","link","graphql","file","upload","multipart","react","native"],"files":["lib"],"main":"lib/main","module":"lib/module","engines":{"node":">=6.10"},"browserslist":">1%","dependencies":{"@babel/runtime":"^7.0.0-beta.40","apollo-link-http-common":"^0.2.3","extract-files":"^3.1.0"},"peerDependencies":{"apollo-link":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.0.0-beta.40","@babel/core":"^7.0.0-beta.40","@babel/plugin-transform-runtime":"^7.0.0-beta.40","@babel/preset-env":"^7.0.0-beta.40","apollo-link":"^1.2.1","cross-env":"^5.1.3","eslint":"^4.18.2","eslint-plugin-prettier":"^2.6.0","graphql":"^0.13.0","husky":"^0.14.3","lint-staged":"^7.0.0","npm-run-all":"^4.1.2","prettier":"^1.11.1","rimraf":"^2.6.2"},"scripts":{"clean":"rimraf lib","prebuild":"npm run clean && mkdir -p lib","build":"run-p build:*","build:main":"babel src -d lib/main","build:module":"cross-env MODULE=true babel src -d lib/module","postbuild":"prettier 'lib/**/*.js' --write","prewatch":"npm run clean","watch":"run-p 'build:* -- --watch'","lint":"run-p lint:*","lint:eslint":"eslint .","lint:prettier":"prettier '**/*.{json,md}' -l","fix":"run-p fix:*","fix:eslint":"eslint . --fix","fix:prettier":"prettier '**/*.{json,md}' --write","precommit":"lint-staged","prepublishOnly":"run-p lint build"},"lint-staged":{"*.js":"eslint","*.{json,md}":"prettier -l"},"eslintIgnore":["!.*","node_modules","lib"],"eslintConfig":{"parserOptions":{"sourceType":"module","ecmaVersion":2017,"ecmaFeatures":{"experimentalObjectRestSpread":true}},"env":{"es6":true,"node":true,"browser":true},"extends":["eslint:recommended"],"plugins":["prettier"],"rules":{"curly":["error","multi"],"prettier/prettier":"error"}},"prettier":{"proseWrap":"never","semi":false,"singleQuote":true},"gitHead":"e88de36de3912ba9d05ff84bd1d7765910075fa8","_id":"@allsquare/apollo-upload-client@8.0.2","_npmVersion":"5.3.0","_nodeVersion":"8.5.0","_npmUser":{"name":"jordanbecker","email":"jordan@becker.io"},"dist":{"integrity":"sha512-HXgA35YjxqVejmaxqKJ3mLb/D+g3JZDRZwtJhvH9+pTEUIuGEPAF6NHTOEG8LgZXrBi+Gh4Kxall5ernW6O3zQ==","shasum":"1855c2ba0e8c4b35ca481c70557cad15bad66174","tarball":"https://registry.npmjs.org/@allsquare/apollo-upload-client/-/apollo-upload-client-8.0.2.tgz","fileCount":5,"unpackedSize":25954,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbCD+JCRA9TVsSAnZWagAAly0P/RV6zlafhdb4fe9YSC5o\nTvfl+DQGN/1HOL/8LzlQa7cFrSdDNWd8gg8pKFdlo7EXeFC/zy25CXT4Fr2D\nPzjFziBeq0uMwfTH3tEHIsNcwk6BzD68fEz/24JWwQZH/xbY03m/4rK+nw4G\nO1Gr0f9VW+O+LI8jR+VO92eANVTNWg1b0dybij/A018K0ZeAtZyLTIXbqfTo\nocntB6BWu1HbO44T+xkaKp25wiM3beGRCvlOVhKbLyKWfh6qulap6TRa49+7\nMECbj4NtDiGVqpgbFR2FzPbeeVzqn6JvgbM/KhLWzq1Ef1fPiMwre9Dkzj3c\naoXt3+Bvi77ysmO1Shmikiab2pB/QHw9LqZYinxuGLtjACvRptOqX8OJGSDQ\nRaeFTvGLWQYocVu4EgUK5W8SkaDN6MQSi4rY04L0K4UJHmRzE8oaDpP063iN\nNBcK/Bug3LNBnP9HR9qmcwv4OCTxXEE/eQOgnQFScAVpUqjnza4x8FhSnaMt\njCnp6WYmA8X2QF/Ug2WqaOHxFinOwuXKw/rcJ63ry0B9gO38jM2zQNbGfX9b\nlKKbVntDY0HWKHbfV2VXCe8601Taz/iS2DuouejTqdYTONaCtRUc1sEPwer3\nMuDUhyMuzQ0b67k1S/U9xe3IUiIIYPE1PFkrCl404OthB4Qa6adeoLJCABZ2\ns/pU\r\n=i66o\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICfKpxSgwwjppXh8tO0slTcUckTahD95dy2Ira66PUiPAiBnwzLYCCEFOm1f6awNkjaF3B9e8FnCVH/b3S6fVdUJQw=="}]},"maintainers":[{"name":"jordanbecker","email":"jordan@becker.io"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apollo-upload-client_8.0.2_1527267208097_0.26566534553849874"},"_hasShrinkwrap":false}},"time":{"created":"2018-05-25T16:10:03.769Z","8.0.0":"2018-05-25T16:10:04.138Z","modified":"2022-04-04T13:34:43.550Z","8.0.1":"2018-05-25T16:22:14.548Z","8.0.2":"2018-05-25T16:53:28.164Z"},"maintainers":[{"email":"jordanbeckerfr@gmail.com","name":"habovh"}],"description":"Enhances Apollo Client for intuitive file uploads via GraphQL mutations.","homepage":"https://github.com/jaydenseric/apollo-upload-client#readme","keywords":["apollo","client","link","graphql","file","upload","multipart","react","native"],"repository":{"type":"git","url":"git+https://github.com/jaydenseric/apollo-upload-client.git"},"author":{"name":"Jayden Seric","email":"me@jaydenseric.com","url":"https://jaydenseric.com"},"bugs":{"url":"https://github.com/jaydenseric/apollo-upload-client/issues"},"license":"MIT","readme":"![Apollo upload logo](https://cdn.rawgit.com/jaydenseric/apollo-upload-client/27b1f20/apollo-upload-logo.svg)\n\n# apollo-upload-client\n\n[![npm version](https://img.shields.io/npm/v/apollo-upload-client.svg)](https://npm.im/apollo-upload-client) ![Licence](https://img.shields.io/npm/l/apollo-upload-client.svg) [![Github issues](https://img.shields.io/github/issues/jaydenseric/apollo-upload-client.svg)](https://github.com/jaydenseric/apollo-upload-client/issues) [![Github stars](https://img.shields.io/github/stars/jaydenseric/apollo-upload-client.svg)](https://github.com/jaydenseric/apollo-upload-client/stargazers)\n\nEnhances [Apollo](https://apollographql.com) for intuitive file uploads via GraphQL queries or mutations. Use with a [GraphQL multipart request spec server implementation](https://github.com/jaydenseric/graphql-multipart-request-spec#server) such as [apollo-upload-server](https://github.com/jaydenseric/apollo-upload-server).\n\n## IMPORTANT NOTICE\n\nThis package has been modified to work with older versions of [apollo-upload-server](https://github.com/jaydenseric/apollo-upload-server), but still retain compatibility with `apollo-client` > 2.0.\n\nThe sole purpose of this package is to allow an `apollo-client` v2 to communicate with a GraphQL backed that was built to work with earlier versions of `apollo-upload-client`, that are not compatible with `apollo-client` v2.\n\n> This package has been modified to mimic client requests of `apollo-upload-client` version `^5.1.1`, while keeping `apollo-client` v2 compatibility.\n\nNow I've said it 3 times, I hope that's clear enough. If you intented to indeed use this client to work with older servers, feel free to grab version `8.0.2` and see the magic happen!\n\n## Setup\n\nInstall with peer dependencies using [npm](https://npmjs.com):\n\n```shell\nnpm install apollo-upload-client apollo-link\n```\n\nInitialize Apollo Client with this terminating link:\n\n```js\nimport { createUploadLink } from 'apollo-upload-client'\n\nconst link = createUploadLink(/* Options */)\n```\n\n### Options\n\n`createUploadLink` options match [`createHttpLink` options](https://www.apollographql.com/docs/link/links/http.html#Options):\n\n* `includeExtensions` (boolean): Toggles sending `extensions` fields to the GraphQL server. (default: `false`).\n* `uri` (string): GraphQL endpoint URI (default: `/graphql`).\n* `credentials` (string): Overrides `fetchOptions.credentials`.\n* `headers` (object): Merges with and overrides `fetchOptions.headers`.\n* `fetchOptions` (object): [`fetch` init](https://developer.mozilla.org/docs/Web/API/WindowOrWorkerGlobalScope/fetch#Parameters); overridden by upload requirements.\n* `fetch` (function): [Fetch API](https://fetch.spec.whatwg.org) to use (default: Global `fetch`).\n\n## Usage\n\nUse [`FileList`](https://developer.mozilla.org/en/docs/Web/API/FileList), [`File`](https://developer.mozilla.org/en/docs/Web/API/File), [`Blob`](https://developer.mozilla.org/en/docs/Web/API/Blob) or [`ReactNativeFile`](#react-native) instances anywhere within query or mutation input variables to send a [GraphQL multipart request](https://github.com/jaydenseric/graphql-multipart-request-spec). See also [apollo-upload-server usage](https://github.com/jaydenseric/apollo-upload-server#usage) and the [example API and client](https://github.com/jaydenseric/apollo-upload-examples).\n\n### [`FileList`](https://developer.mozilla.org/en/docs/Web/API/FileList)\n\n```jsx\nimport gql from 'graphql-tag'\nimport { graphql } from 'react-apollo'\n\nexport default graphql(gql`\n  mutation($files: [Upload!]!) {\n    uploadFiles(files: $files) {\n      id\n    }\n  }\n`)(({ mutate }) => (\n  <input\n    type=\"file\"\n    multiple\n    required\n    onChange={({ target: { validity, files } }) =>\n      validity.valid && mutate({ variables: { files } })\n    }\n  />\n))\n```\n\n### [`File`](https://developer.mozilla.org/en/docs/Web/API/File)\n\n```jsx\nimport gql from 'graphql-tag'\nimport { graphql } from 'react-apollo'\n\nexport default graphql(gql`\n  mutation($file: Upload!) {\n    uploadFile(file: $file) {\n      id\n    }\n  }\n`)(({ mutate }) => (\n  <input\n    type=\"file\"\n    required\n    onChange={({\n      target: {\n        validity,\n        files: [file]\n      }\n    }) => validity.valid && mutate({ variables: { file } })}\n  />\n))\n```\n\n### [`Blob`](https://developer.mozilla.org/en/docs/Web/API/Blob)\n\n```jsx\nimport gql from 'graphql-tag'\n\n// Apollo Client instance\nimport client from './apollo'\n\nconst file = new Blob(['Foo.'], { type: 'text/plain' })\n\n// Optional, defaults to `blob`\nfile.name = 'bar.txt'\n\nclient.mutate({\n  mutation: gql`\n    mutation($file: Upload!) {\n      uploadFile(file: $file) {\n        id\n      }\n    }\n  `,\n  variables: { file }\n})\n```\n\n### React Native\n\nSubstitute [`File`](https://developer.mozilla.org/en/docs/Web/API/File) with `ReactNativeFile` from [`extract-files`](https://github.com/jaydenseric/extract-files):\n\n```js\nimport { ReactNativeFile } from 'apollo-upload-client'\n\nconst file = new ReactNativeFile({\n  uri: '…',\n  type: 'image/jpeg',\n  name: 'photo.jpg'\n})\n\nconst files = ReactNativeFile.list([\n  {\n    uri: '…',\n    type: 'image/jpeg',\n    name: 'photo-1.jpg'\n  },\n  {\n    uri: '…',\n    type: 'image/jpeg',\n    name: 'photo-2.jpg'\n  }\n])\n```\n\n## Support\n\n* Node.js v6.10+, see `package.json` `engines`.\n* [Browsers >1% usage](http://browserl.ist/?q=%3E1%25), see `package.json` `browserslist`.\n* React Native.\n","readmeFilename":"readme.md"}