Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/component/file
higher level File and FileReader API
https://github.com/component/file
Last synced: 13 days ago
JSON representation
higher level File and FileReader API
- Host: GitHub
- URL: https://github.com/component/file
- Owner: component
- Created: 2012-08-09T17:29:14.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2015-11-23T22:12:02.000Z (about 9 years ago)
- Last Synced: 2024-12-09T01:05:52.392Z (20 days ago)
- Language: JavaScript
- Size: 161 KB
- Stars: 11
- Watchers: 3
- Forks: 6
- Open Issues: 1
-
Metadata Files:
- Readme: Readme.md
- Changelog: History.md
Awesome Lists containing this project
README
# File
File component wrapping the native `File` and `FileReader` objects
with a higher level API.## Installation
node.js:
```
$ npm install file-component
```browser:
```
$ component install component/file
```## Events
### Reader
- `error` an error occurred
- `progress` in progress (`e.percent` etc)
- `end` read is complete## Example
```js
var file = require('file');
var input = document.querySelector('input');input.onchange = function(){
var img = file(input.files[0]);if (!img.is('image/*')) {
alert('Images only!');
return;
}var reader = img.toDataURL(function(err, str){
if (err) throw err;
var img = document.createElement('img');
img.src = str;
img.height = 300;
document.body.appendChild(img);
});reader.on('progress', function(e){
console.log(e.percent);
});
};
```## API
### file(file)Wraps a `File` object:
```js
var file = require('file');
file(input.files[0]);
```### File#is(type)
Returns a boolean if the file's mime type matches `type`:
```js
var file = require('file');
file(input.files[0]);
file.is('image/*');
file.is('image/jpeg');
file.is('*/json');
```### File#toArrayBuffer(fn)
Convert to an `ArrayBuffer` and invoke `fn(err, result)`,
returns a `Reader`.### File#toText(fn)
Convert to text and invoke `fn(err, result)`,
returns a `Reader`.### File#toDataURL(fn)
Convert to a data uri string and invoke `fn(err, result)`,
returns a `Reader`.## License
MIT