{"maintainers":[{"name":"anonymous","email":"coolaj86@gmail.com"},{"name":"anonymous","email":"nat.lownes@gmail.com"}],"keywords":["html5","jsdom","file-api","FileReader","file-reader","file","reader"],"dist-tags":{"latest":"0.10.3"},"author":{"name":"AJ ONeal","email":"coolaj86@gmail.com"},"description":"HTML5 FileAPI `FileReader` for Node.JS.","readme":"FileReader\n==========\n\nHTML5 FileAPI `FileReader` for Node.JS\n(could potentially be modified to work with older browsers as well).\n\nSee <https://github.com/node-file-api/file-api> and <https://developer.mozilla.org/en-US/docs/Web/API/FileReader> \n\n\n```javascript\n'use strict';\n\nvar FileReader = require('filereader')\n  , fileReader = new FileReader()\n  ;\n\nfileReader.setNodeChunkedEncoding(true || false);\nfileReader.readAsDataURL(new File('./files/my-file.txt'));\n\n// non-standard alias of `addEventListener` listening to non-standard `data` event\nfileReader.on('data', function (data) {\n  console.log(\"chunkSize:\", data.length);\n});\n\n// `onload` as listener\nfileReader.addEventListener('load', function (ev) {\n  console.log(\"dataUrlSize:\", ev.target.result.length);\n});\n\n// `onloadend` as property\nfileReader.onloadend', function () {\n  console.log(\"Success\");\n});\n```\n```\n\nImplemented API\n\n  * `.readAsArrayBuffer(<File>)`\n  * `.readAsBinaryString(<File>)`\n  * `.readAsDataURL(<File>)`\n  * `.readAsText(<File>)`\n  * `.addEventListener(eventname, callback)`\n  * `.removeEventListener(callback)`\n  * `.dispatchEvent(eventname)`\n  * `.EMPTY = 0`\n  * `.LOADING = 1`\n  * `.DONE = 2`\n  * `.error = undefined`\n  * `.readyState = self.EMPTY`\n  * `.result = undefined`\n\nEvents\n\n  * start\n  * progress\n  * error\n  * load\n  * end\n  * abort\n  * data // non-standard\n\nEvent Payload\n\n`end`\n```javascript\n{ target:\n  { nodeBufferResult: <Buffer> // non-standard\n  , result: <Buffer|Binary|Text|DataURL>\n  }\n}\n```\n\n`progress`\n```javascript\n// fs.stat will probably complete before this\n// but possibly it will not, hence the check\n{ lengthComputable: (!isNaN(file.size)) ? true : false\n, loaded: buffers.dataLength\n, total: file.size\n}\n```\n\nNon-W3C API\n\n  * `.on(eventname, callback)`\n  * `.nodeChunkedEncoding = false`\n  * `.setNodeChunkedEncoding(<Boolean>)`\n  \nMisc Notes on FileReader\n===\n\n**FileReader.setNodeChunkedEncoding()** is a *non-standard* method which hints that the `FileReader` should chunk if possible\n\nI.E. The file will be sent with the header `Transfer-Encoding: chunked`\n\nThe default is `false` since many webservers do not correctly implement the standard correctly,\nand hence do not expect or accept `Transfer-Encoding: chunked` from clients.\n\n**FileReader.on** is a *non-standard* alias of `addEventListener`\n\n**EventTarget.target.nodeBufferResult** is a *non-standard* property which is a `Node.Buffer` instance of the data.\n\n**FileReader.on('data', fn)** is a *non-standard* event which passes a `Node.Buffer` chunk each time the `progress` event is fired.\n","users":{"cbetancourt":true,"heineiuo":true},"versions":{"0.10.3":{"name":"filereader","description":"HTML5 FileAPI `FileReader` for Node.JS.","url":"http://github.com/node-file-api/FileReader","keywords":["html5","jsdom","file-api","FileReader","file-reader","file","reader"],"author":{"name":"AJ ONeal","email":"coolaj86@gmail.com"},"contributors":[],"dependencies":{},"main":"FileReader.js","version":"0.10.3","_id":"filereader@0.10.3","_shasum":"c747d4a2cd8f61e5418a7c07fe1257a43f0acdb1","_from":"./","_npmVersion":"1.4.9","_npmUser":{"name":"anonymous","email":"coolaj86@gmail.com"},"maintainers":[{"name":"anonymous","email":"coolaj86@gmail.com"}],"dist":{"shasum":"c747d4a2cd8f61e5418a7c07fe1257a43f0acdb1","tarball":"http://repository.ncinga.com/nexus/content/groups/npm-all/filereader/-/filereader-0.10.3.tgz","integrity":"sha512-7F8w6GSXuHLN80ukaVOcHgBaiTRHUZr8GeEhNdqfAECcnBoROg4i8hTl+KqtF4yUPffOJVHEFg4iDJb7xIYFng==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCHtJkZvz5VLikaaBRKCcrf61aQVTJ5ua4mnree+UeqcAIhALfUhmbxFP90ZgoWM6pKb5vJCiKSalWyu/XzExcNTmst"}]}}},"name":"filereader","time":{"modified":"2022-06-18T00:44:26.099Z","created":"2014-10-24T19:48:28.286Z","0.10.3":"2014-10-24T19:48:28.286Z"},"contributors":[],"readmeFilename":"README.md"}