spread2json
Advanced tools
Comparing version 0.0.3 to 0.0.4
@@ -192,3 +192,3 @@ /** | ||
if (isSplitArray) { | ||
_key = _key.replace(/^$/, ''); | ||
_key = _key.replace(/^\$/, ''); | ||
} | ||
@@ -303,14 +303,22 @@ | ||
var collectionMap = {}; | ||
var optionMap = {}; | ||
var errors = {}; | ||
for (var i = 0; i < sheetDatas.length; i++) { | ||
var sheetData = sheetDatas[i]; | ||
var name = sheetData.opts.name || sheetData.name; | ||
var refKey = sheetData.opts.ref_key; | ||
var opts = sheetData.opts; | ||
var name = opts.name || sheetData.name; | ||
var refKey = opts.ref_key; | ||
var dataMap = collectionMap[name] = collectionMap[name] || {}; | ||
if (!optionMap[name]) { | ||
optionMap[name] = opts; | ||
} else { | ||
optionMap[name] = _.extend({}, opts, optionMap[name]); | ||
_.extend(optionMap[name].format, opts.format); | ||
} | ||
for (var j = 0; j < sheetData.list.length; j++) { | ||
var data = sheetData.list[j]; | ||
if (!sheetData.opts.type || sheetData.opts.type === 'origin') { | ||
if (!opts.type || opts.type === 'origin') { | ||
dataMap[data[refKey]] = data; | ||
} else { | ||
var origin = this._findOrigin(dataMap, sheetData.opts, data); | ||
var origin = this._findOrigin(dataMap, opts, data); | ||
if (origin) { | ||
@@ -329,3 +337,3 @@ delete data.__ref; | ||
callback(Object.keys(errors).length ? errors : null, collectionMap); | ||
callback(Object.keys(errors).length ? errors : null, collectionMap, optionMap); | ||
}; |
{ | ||
"name": "spread2json", | ||
"version": "0.0.3", | ||
"version": "0.0.4", | ||
"description": "spreadsheet convert json", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
473424
9448