1
0
mirror of https://github.com/JuanCanham/HackMyResume.git synced 2024-10-06 07:25:13 +01:00
HackMyResume/src/gen/json-generator.js

36 lines
949 B
JavaScript
Raw Normal View History

2015-10-26 16:30:00 +00:00
/**
Definition of the JsonGenerator class.
@license Copyright (c) 2015 | James M. Devlin
*/
var BaseGenerator = require('./base-generator');
var FS = require('fs');
var _ = require('underscore');
/**
The JsonGenerator generates a JSON resume directly.
*/
var JsonGenerator = module.exports = BaseGenerator.extend({
init: function(){
this._super( 'json' );
},
invoke: function( rez ) {
// TODO: merge with FCVD
function replacer( key,value ) { // Exclude these keys from stringification
2015-11-21 15:33:16 +00:00
return _.some(['imp', 'warnings', 'computed', 'filt', 'ctrl', 'index',
2015-10-26 16:30:00 +00:00
'safeStartDate', 'safeEndDate', 'safeDate', 'safeReleaseDate', 'result',
2015-11-21 15:33:16 +00:00
'isModified', 'htmlPreview', 'safe' ],
2015-10-26 16:30:00 +00:00
function( val ) { return key.trim() === val; }
) ? undefined : value;
}
return JSON.stringify( rez, replacer, 2 );
},
generate: function( rez, f ) {
FS.writeFileSync( f, this.invoke(rez), 'utf8' );
}
});