Comparing version 0.5.0 to 0.5.1
'use strict'; | ||
var XLSX = require('xlsx'); | ||
var _ = {defaults: require('lodash.defaults')}; | ||
var _ = {defaults: require('lodash.defaults'), map: require('lodash.map')}; | ||
@@ -48,6 +48,10 @@ function datenum(v, date1904) { | ||
parse: function(mixed, options) { | ||
if(typeof mixed === 'string') return XLSX.readFile(mixed, options); | ||
return XLSX.read(mixed, options); | ||
var ws; | ||
if(typeof mixed === 'string') ws = XLSX.readFile(mixed, options); | ||
else ws = XLSX.read(mixed, options); | ||
return _.map(ws.Sheets, function(sheet, name) { | ||
return {name: name, data: XLSX.utils.sheet_to_json(sheet, {header: 1, raw: true})}; | ||
}); | ||
}, | ||
build: function(object, options) { | ||
build: function(array, options) { | ||
var defaults = { | ||
@@ -59,3 +63,3 @@ bookType:'xlsx', | ||
var wb = new Workbook(); | ||
(object.Sheets || object.worksheets).forEach(function(worksheet) { | ||
array.forEach(function(worksheet) { | ||
var name = worksheet.name || 'Sheet'; | ||
@@ -62,0 +66,0 @@ var data = sheet_from_array_of_arrays(worksheet.data || []); |
@@ -5,3 +5,3 @@ { | ||
"license": "Apache License, Version 2.0", | ||
"version": "0.5.0", | ||
"version": "0.5.1", | ||
"description": "Node.js excel parser & builder", | ||
@@ -22,2 +22,3 @@ "main": "index.js", | ||
"lodash.defaults": "^2.4.1", | ||
"lodash.map": "^2.4.1", | ||
"xlsx": "^0.7.10" | ||
@@ -24,0 +25,0 @@ }, |
@@ -24,3 +24,3 @@ [node-xlsx](http://mgcrea.github.com/node-xlsx) [![Build Status](https://secure.travis-ci.org/mgcrea/node-xlsx.png?branch=master)](http://travis-ci.org/#!/mgcrea/node-xlsx) | ||
var data = [[1,2,3],[true, false, null, 'sheetjs'],['foo','bar',new Date('2014-02-19T14:30Z'), '0.3'], ['baz', null, 'qux']]; | ||
var buffer = xlsx.build({worksheets: [{name: "mySheetName", data: data}); // returns a buffer | ||
var buffer = xlsx.build([{name: "mySheetName", data: data}]); // returns a buffer | ||
@@ -27,0 +27,0 @@ ``` |
@@ -21,3 +21,3 @@ 'use strict'; | ||
// build file | ||
xlsData = xlsx.build({worksheets: fixture}); | ||
xlsData = xlsx.build(fixture); | ||
assert.equal(xlsData instanceof Buffer, true); | ||
@@ -24,0 +24,0 @@ assert.equal(xlsData.toString('base64').substr(0, 12), fs.readFileSync(filename).toString('base64').substr(0, 12)); |
@@ -1,6 +0,27 @@ | ||
[ | ||
[1, 2, 3], | ||
[true, false, null, "sheetjs"], | ||
["foo", "bar", "2014-02-19T14:30Z", "0.3"], | ||
["baz", null, "qux"] | ||
] | ||
[{ | ||
"name": "mySheetName", | ||
"data": [ | ||
[ | ||
1, | ||
2, | ||
3 | ||
], | ||
[ | ||
true, | ||
false, | ||
null, | ||
"sheetjs" | ||
], | ||
[ | ||
"foo", | ||
"bar", | ||
41689.604166666664, | ||
"0.3" | ||
], | ||
[ | ||
"baz", | ||
null, | ||
"qux" | ||
] | ||
] | ||
}] |
@@ -12,7 +12,7 @@ 'use strict'; | ||
var xlsx = require('../index'); | ||
var plist = require('../index'); | ||
module.exports.parse = function(assert) { | ||
var fixture = JSON.parse(fs.readFileSync(__dirname + '/fixtures/parsed.json')); | ||
var fixture = JSON.parse(fs.readFileSync(__dirname + '/fixtures/test.json')); | ||
var filename = __dirname + '/fixtures/test.xlsx'; | ||
@@ -22,10 +22,8 @@ var xlsObject; | ||
// parse file | ||
xlsObject = xlsx.parse(filename); | ||
assert.equal(!!(xlsObject && xlsObject.Sheets), true); | ||
assert.deepEqual(xlsObject.Sheets, fixture); | ||
xlsObject = plist.parse(filename); | ||
assert.deepEqual(JSON.parse(JSON.stringify(xlsObject)), fixture); | ||
// parse buffer | ||
xlsObject = xlsx.parse(fs.readFileSync(filename)); | ||
assert.equal(!!(xlsObject && xlsObject.Sheets), true); | ||
assert.deepEqual(xlsObject.Sheets, fixture); | ||
xlsObject = plist.parse(fs.readFileSync(filename)); | ||
assert.deepEqual(JSON.parse(JSON.stringify(xlsObject)), fixture); | ||
@@ -32,0 +30,0 @@ assert.done(); |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
2
22201
3
12
135
1
+ Addedlodash.map@^2.4.1
+ Addedlodash._arraypool@2.4.1(transitive)
+ Addedlodash._basebind@2.4.1(transitive)
+ Addedlodash._basecreate@2.4.1(transitive)
+ Addedlodash._basecreatecallback@2.4.1(transitive)
+ Addedlodash._basecreatewrapper@2.4.1(transitive)
+ Addedlodash._baseisequal@2.4.1(transitive)
+ Addedlodash._createwrapper@2.4.1(transitive)
+ Addedlodash._getarray@2.4.1(transitive)
+ Addedlodash._maxpoolsize@2.4.1(transitive)
+ Addedlodash._releasearray@2.4.1(transitive)
+ Addedlodash._setbinddata@2.4.1(transitive)
+ Addedlodash._slice@2.4.1(transitive)
+ Addedlodash.bind@2.4.1(transitive)
+ Addedlodash.createcallback@2.4.4(transitive)
+ Addedlodash.forin@2.4.1(transitive)
+ Addedlodash.forown@2.4.1(transitive)
+ Addedlodash.identity@2.4.1(transitive)
+ Addedlodash.isfunction@2.4.1(transitive)
+ Addedlodash.map@2.4.1(transitive)
+ Addedlodash.noop@2.4.1(transitive)
+ Addedlodash.property@2.4.1(transitive)
+ Addedlodash.support@2.4.1(transitive)