papa-parse - Vaadin Add-on Directory
Polymer 2.0 element for CSV parsing with Papa parse.
**[ This description is mirrored from README.md at [github.com/PolymerVis/papa-parse](https://github.com//PolymerVis/papa-parse/blob/2.0.1/README.md) on 2019-05-10 ]**
papa-parse
[![GitHub release](https://img.shields.io/github/release/PolymerVis/papa-parse.svg)](https://github.com/PolymerVis/papa-parse/releases)
[![Published on webcomponents.org](https://img.shields.io/badge/webcomponents.org-published-blue.svg)](https://www.webcomponents.org/element/PolymerVis/papa-parse)
[![styled with prettier](https://img.shields.io/badge/styled_with-prettier-ff69b4.svg)](https://github.com/prettier/prettier)
==========
```html
```
Parse from raw csv String.
```html
```
Parse from FileReader
```html
```
```javascript
this.$.selectfile
.addEventListener('change', function(e) {
this.file = e.target.files[0];
});
```
There are 2 possible outputs for `rows` - an *array of array of values*, or an
*array of objects*. An array of array is returned if the `header` flag is not
set, and an array of objects otherwise, where each object is a map comprising
of the column name and its corresponding value for the row
(e.g. {col1: value1, col2: value2}).
### Handling big files
Parsing is synchronous and may block the UI thread (i.e. freeze the screen) if
the csv file is big. Parsing with a web-worker via `worker` flag is recommended
for big file. However, note that `papaparse.min.js` *should not be bundled*
during the build process if web-worker is required as the web-worker needs to
load the script. You will also need to correctly reference the location of the
script via the `script-path` attribute.
You should not use relative path if parsing from `url`, as the web-worker may
load from an incorrect path.
```html
```
```javascript
function handleRecord(e, {data, meta, errors}) {
console.log(data);
}
```
Streaming via `stream` flag is also recommended for big file (`stream` and
`worker` are not dependent on each other). However, when `stream` flag is set,
`rows` attribute will only return an empty array as none of the records will be
persisted. Instead, `papa-parse` will emit an `stream` event of the form
{{data: Array[]|Object[], meta: Object, errors: Array, parser: Object}} for each
record parsed.
```html
```
```javascript
function start() {
app.$.parser.start();
}
function handleRecord(e, {data, meta, errors}) {
alert(JSON.stringify(data));
app.$.parser.pause();
}
```
# papa-unparse
`papa-unparse` is a Polymer 2.0 element to convert JSON arrays or objects into
CSV strings with [Papa parse](http://papaparse.com/).
**Basic usage**
For array of objects, e.g. [{col1: 1, col2: 2}, {col1: 3, col2: 4}]
```html
```
For array of arrays, e.g. [[1,2], [3,4]]
```html
```
### Download as CSV file
```html
```
```javascript
function download() {
document.querySelector('papa-unparse').downloadCsv('somefile.csv');
}
```
### Other options
```html
```
GitHub HomepageParsed CSV table:
[[item]] |
Csv string
[[csvStr]]``` ## Installation ``` bower install --save PolymerVis/papa-parse ``` ## Documentation and demos More details @ [webcomponents.org](https://www.webcomponents.org/element/PolymerVis/papa-parse). ## Disclaimers PolymerVis is a personal project and is NOT in any way affliated with Papaparse, Polymer or Google. # papa-parse `papa-parse` is a Polymer 2.0 element to parse CSV files into JSON object(s) with [Papa parse](http://papaparse.com/). `papa-parse` can download and parse a csv file via `url`, or from raw csv strings via `raw`, and File object via `file`. If the `auto` flag is set, `papa-parse` will automatically start the job, otherwise a manual call to the function `start` will be needed. Parse from URL. ```html
Issue tracker
Online Demo
License
Documentation
View on GitHub
papa-parse version 2.0.0
### Dependencies
Polymer/polymer#^2.0.0
* papaparse#^4.3.6
papa-parse version 2.0.1
### Dependencies
Polymer/polymer#^2.0.0
* papaparse#^4.3.6