3 Commits

Author SHA1 Message Date
Lachlan Kermode
db2672b630 export as deeprowsWithSchema 2021-05-17 16:18:07 +12:00
Lachlan Kermode
69e54a6027 Update yarn lock 2021-05-17 16:01:24 +12:00
Lachlan Kermode
6c090549c7 Add blueprinterWithSchema exporter 2021-05-17 16:01:18 +12:00
3 changed files with 5772 additions and 5 deletions

View File

@@ -7,7 +7,6 @@ function prefixedTabs (prefix, cfg) {
[`${prf('events')}export_events`]: BP.deeprows,
[`${prf('associations')}export_associations`]: BP.deeprows,
[`${prf('sources')}export_sources`]: BP.deepids,
[`${prf('shapes')}export_shapes`]: BP.deeprows,
[`${prf('sites')}export_sites`]: BP.rows
}
}

View File

@@ -2,7 +2,7 @@ import path from 'path'
import fs from 'fs'
import R from 'ramda'
export const defaultBlueprint = {
const defaultBlueprint = {
name: null,
sheet: {
name: null,
@@ -11,11 +11,11 @@ export const defaultBlueprint = {
resources: {}
}
export const defaultResource = {
const defaultResource = {
data: []
}
export function buildDesaturated (sheetId, sheetName, tab, resources) {
function buildDesaturated (sheetId, sheetName, tab, resources) {
const bp = R.clone(defaultBlueprint)
bp.sheet.name = sheetName
bp.sheet.id = sheetId
@@ -50,10 +50,25 @@ fs.readdirSync(normalizedPath).forEach(file => {
allBps[bpName] = buildBlueprinter(bpName, datafier)
})
function deeprowsWithSchema (datafierName, schema) {
const datafier = data => {
const transformedData = allBps.deeprows('', '', '', data).resources.deeprows.data
return transformedData.map(row => {
Object.keys(schema).forEach(key => {
row[key] = schema[key](row[key])
})
return row
})
}
return buildBlueprinter(`deeprows_${datafierName}`, datafier)
}
// NB: revert to ES5 'module.exports' required to make blueprinters from
// each file in blueprinters folder available for granular import from here.
module.exports = Object.assign({
defaultBlueprint,
defaultResource,
buildDesaturated
buildDesaturated,
deeprowsWithSchema
}, allBps)

5753
yarn.lock Normal file

File diff suppressed because it is too large Load Diff