mirror of
https://github.com/JuanCanham/HackMyResume.git
synced 2024-11-25 01:40:10 +00:00
Rename Sheet/FreshSheet to JRSResume/FRESHResume.
This commit is contained in:
parent
a410153253
commit
0aa9bc2937
@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
FRESH character/resume sheet representation.
|
Definition of the FRESHResume class.
|
||||||
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk
|
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -15,18 +15,18 @@ FRESH character/resume sheet representation.
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
A FRESH-style resume in JSON or YAML.
|
A FRESH-style resume in JSON or YAML.
|
||||||
@class Sheet
|
@class FreshResume
|
||||||
*/
|
*/
|
||||||
function FreshSheet() {
|
function FreshResume() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Open and parse the specified JSON resume sheet. Merge the JSON object model
|
Open and parse the specified FRESH resume sheet. Merge the JSON object model
|
||||||
onto this Sheet instance with extend() and convert sheet dates to a safe &
|
onto this Sheet instance with extend() and convert sheet dates to a safe &
|
||||||
consistent format. Then sort each section by startDate descending.
|
consistent format. Then sort each section by startDate descending.
|
||||||
*/
|
*/
|
||||||
FreshSheet.prototype.open = function( file, title ) {
|
FreshResume.prototype.open = function( file, title ) {
|
||||||
this.meta = { fileName: file };
|
this.meta = { fileName: file };
|
||||||
this.meta.raw = FS.readFileSync( file, 'utf8' );
|
this.meta.raw = FS.readFileSync( file, 'utf8' );
|
||||||
return this.parse( this.meta.raw, title );
|
return this.parse( this.meta.raw, title );
|
||||||
@ -35,7 +35,7 @@ FRESH character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Save the sheet to disk (for environments that have disk access).
|
Save the sheet to disk (for environments that have disk access).
|
||||||
*/
|
*/
|
||||||
FreshSheet.prototype.save = function( filename ) {
|
FreshResume.prototype.save = function( filename ) {
|
||||||
this.meta.fileName = filename || this.meta.fileName;
|
this.meta.fileName = filename || this.meta.fileName;
|
||||||
FS.writeFileSync( this.meta.fileName, this.stringify(), 'utf8' );
|
FS.writeFileSync( this.meta.fileName, this.stringify(), 'utf8' );
|
||||||
return this;
|
return this;
|
||||||
@ -45,11 +45,10 @@ FRESH character/resume sheet representation.
|
|||||||
Convert this object to a JSON string, sanitizing meta-properties along the
|
Convert this object to a JSON string, sanitizing meta-properties along the
|
||||||
way. Don't override .toString().
|
way. Don't override .toString().
|
||||||
*/
|
*/
|
||||||
FreshSheet.prototype.stringify = function() {
|
FreshResume.prototype.stringify = function() {
|
||||||
function replacer( key,value ) { // Exclude these keys from stringification
|
function replacer( key,value ) { // Exclude these keys from stringification
|
||||||
return _.some(['meta', 'warnings', 'computed', 'filt', 'ctrl', 'index',
|
return _.some(['meta', 'warnings', 'computed', 'filt', 'ctrl', 'index',
|
||||||
'safeStartDate', 'safeEndDate', 'safeDate', 'safeReleaseDate', 'result',
|
'safe', 'result', 'isModified', 'htmlPreview', 'display_progress_bar'],
|
||||||
'isModified', 'htmlPreview', 'display_progress_bar'],
|
|
||||||
function( val ) { return key.trim() === val; }
|
function( val ) { return key.trim() === val; }
|
||||||
) ? undefined : value;
|
) ? undefined : value;
|
||||||
}
|
}
|
||||||
@ -61,7 +60,7 @@ FRESH character/resume sheet representation.
|
|||||||
onto this Sheet instance with extend() and convert sheet dates to a safe &
|
onto this Sheet instance with extend() and convert sheet dates to a safe &
|
||||||
consistent format. Then sort each section by startDate descending.
|
consistent format. Then sort each section by startDate descending.
|
||||||
*/
|
*/
|
||||||
FreshSheet.prototype.parse = function( stringData, opts ) {
|
FreshResume.prototype.parse = function( stringData, opts ) {
|
||||||
|
|
||||||
// Parse the incoming JSON representation
|
// Parse the incoming JSON representation
|
||||||
var rep = JSON.parse( stringData );
|
var rep = JSON.parse( stringData );
|
||||||
@ -91,7 +90,7 @@ FRESH character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Return a unique list of all keywords across all skills.
|
Return a unique list of all keywords across all skills.
|
||||||
*/
|
*/
|
||||||
FreshSheet.prototype.keywords = function() {
|
FreshResume.prototype.keywords = function() {
|
||||||
var flatSkills = [];
|
var flatSkills = [];
|
||||||
this.skills && this.skills.length &&
|
this.skills && this.skills.length &&
|
||||||
(flatSkills = this.skills.map(function(sk) { return sk.name; }));
|
(flatSkills = this.skills.map(function(sk) { return sk.name; }));
|
||||||
@ -101,7 +100,7 @@ FRESH character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Update the sheet's raw data. TODO: remove/refactor
|
Update the sheet's raw data. TODO: remove/refactor
|
||||||
*/
|
*/
|
||||||
FreshSheet.prototype.updateData = function( str ) {
|
FreshResume.prototype.updateData = function( str ) {
|
||||||
this.clear( false );
|
this.clear( false );
|
||||||
this.parse( str )
|
this.parse( str )
|
||||||
return this;
|
return this;
|
||||||
@ -110,7 +109,7 @@ FRESH character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Reset the sheet to an empty state.
|
Reset the sheet to an empty state.
|
||||||
*/
|
*/
|
||||||
FreshSheet.prototype.clear = function( clearMeta ) {
|
FreshResume.prototype.clear = function( clearMeta ) {
|
||||||
clearMeta = ((clearMeta === undefined) && true) || clearMeta;
|
clearMeta = ((clearMeta === undefined) && true) || clearMeta;
|
||||||
clearMeta && (delete this.meta);
|
clearMeta && (delete this.meta);
|
||||||
delete this.computed; // Don't use Object.keys() here
|
delete this.computed; // Don't use Object.keys() here
|
||||||
@ -127,15 +126,15 @@ FRESH character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Get the default (empty) sheet.
|
Get the default (empty) sheet.
|
||||||
*/
|
*/
|
||||||
FreshSheet.default = function() {
|
FreshResume.default = function() {
|
||||||
return new FreshSheet().open( PATH.join( __dirname, 'empty.json'), 'Empty' );
|
return new FreshResume().open( PATH.join( __dirname, 'empty.json'), 'Empty' );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Add work experience to the sheet.
|
Add work experience to the sheet.
|
||||||
*/
|
*/
|
||||||
FreshSheet.prototype.add = function( moniker ) {
|
FreshResume.prototype.add = function( moniker ) {
|
||||||
var defSheet = FreshSheet.default();
|
var defSheet = FreshResume.default();
|
||||||
var newObject = $.extend( true, {}, defSheet[ moniker ][0] );
|
var newObject = $.extend( true, {}, defSheet[ moniker ][0] );
|
||||||
this[ moniker ] = this[ moniker ] || [];
|
this[ moniker ] = this[ moniker ] || [];
|
||||||
this[ moniker ].push( newObject );
|
this[ moniker ].push( newObject );
|
||||||
@ -145,7 +144,7 @@ FRESH character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Determine if the sheet includes a specific social profile (eg, GitHub).
|
Determine if the sheet includes a specific social profile (eg, GitHub).
|
||||||
*/
|
*/
|
||||||
FreshSheet.prototype.hasProfile = function( socialNetwork ) {
|
FreshResume.prototype.hasProfile = function( socialNetwork ) {
|
||||||
socialNetwork = socialNetwork.trim().toLowerCase();
|
socialNetwork = socialNetwork.trim().toLowerCase();
|
||||||
return this.social && _.some( this.social, function(p) {
|
return this.social && _.some( this.social, function(p) {
|
||||||
return p.network.trim().toLowerCase() === socialNetwork;
|
return p.network.trim().toLowerCase() === socialNetwork;
|
||||||
@ -155,7 +154,7 @@ FRESH character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Determine if the sheet includes a specific skill.
|
Determine if the sheet includes a specific skill.
|
||||||
*/
|
*/
|
||||||
FreshSheet.prototype.hasSkill = function( skill ) {
|
FreshResume.prototype.hasSkill = function( skill ) {
|
||||||
skill = skill.trim().toLowerCase();
|
skill = skill.trim().toLowerCase();
|
||||||
return this.skills && _.some( this.skills, function(sk) {
|
return this.skills && _.some( this.skills, function(sk) {
|
||||||
return sk.keywords && _.some( sk.keywords, function(kw) {
|
return sk.keywords && _.some( sk.keywords, function(kw) {
|
||||||
@ -167,7 +166,7 @@ FRESH character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Validate the sheet against the FRESH Resume schema.
|
Validate the sheet against the FRESH Resume schema.
|
||||||
*/
|
*/
|
||||||
FreshSheet.prototype.isValid = function( info ) {
|
FreshResume.prototype.isValid = function( info ) {
|
||||||
var schemaObj = require('FRESCA');
|
var schemaObj = require('FRESCA');
|
||||||
//var schemaObj = JSON.parse( schema );
|
//var schemaObj = JSON.parse( schema );
|
||||||
var validator = require('is-my-json-valid')
|
var validator = require('is-my-json-valid')
|
||||||
@ -188,7 +187,7 @@ FRESH character/resume sheet representation.
|
|||||||
*latest end date of all jobs in the work history*. This last condition is for
|
*latest end date of all jobs in the work history*. This last condition is for
|
||||||
sheets that have overlapping jobs.
|
sheets that have overlapping jobs.
|
||||||
*/
|
*/
|
||||||
FreshSheet.prototype.duration = function() {
|
FreshResume.prototype.duration = function() {
|
||||||
if( this.employment.history && this.employment.history.length ) {
|
if( this.employment.history && this.employment.history.length ) {
|
||||||
var careerStart = this.employment.history[ this.employment.history.length - 1].safe.start;
|
var careerStart = this.employment.history[ this.employment.history.length - 1].safe.start;
|
||||||
if ((typeof careerStart === 'string' || careerStart instanceof String) &&
|
if ((typeof careerStart === 'string' || careerStart instanceof String) &&
|
||||||
@ -206,7 +205,7 @@ FRESH character/resume sheet representation.
|
|||||||
Sort dated things on the sheet by start date descending. Assumes that dates
|
Sort dated things on the sheet by start date descending. Assumes that dates
|
||||||
on the sheet have been processed with _parseDates().
|
on the sheet have been processed with _parseDates().
|
||||||
*/
|
*/
|
||||||
FreshSheet.prototype.sort = function( ) {
|
FreshResume.prototype.sort = function( ) {
|
||||||
|
|
||||||
this.employment.history && this.employment.history.sort( byDateDesc );
|
this.employment.history && this.employment.history.sort( byDateDesc );
|
||||||
this.education.history && this.education.history.sort( byDateDesc );
|
this.education.history && this.education.history.sort( byDateDesc );
|
||||||
@ -270,6 +269,6 @@ FRESH character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Export the Sheet function/ctor.
|
Export the Sheet function/ctor.
|
||||||
*/
|
*/
|
||||||
module.exports = FreshSheet;
|
module.exports = FreshResume;
|
||||||
|
|
||||||
}());
|
}());
|
@ -1,5 +1,5 @@
|
|||||||
/**
|
/**
|
||||||
Abstract character/resume sheet representation.
|
Definition of the JRSResume class.
|
||||||
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk
|
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -13,14 +13,14 @@ Abstract character/resume sheet representation.
|
|||||||
, moment = require('moment');
|
, moment = require('moment');
|
||||||
|
|
||||||
/**
|
/**
|
||||||
The Sheet class represent a specific JSON character sheet. When Sheet.open
|
The JRSResume class represent a specific JSON character sheet. When Sheet.open
|
||||||
is called, we merge the loaded JSON sheet properties onto the Sheet instance
|
is called, we merge the loaded JSON sheet properties onto the Sheet instance
|
||||||
via extend(), so a full-grown sheet object will have all of the methods here,
|
via extend(), so a full-grown sheet object will have all of the methods here,
|
||||||
plus a complement of JSON properties from the backing JSON file. That allows
|
plus a complement of JSON properties from the backing JSON file. That allows
|
||||||
us to treat Sheet objects interchangeably with the loaded JSON model.
|
us to treat Sheet objects interchangeably with the loaded JSON model.
|
||||||
@class Sheet
|
@class JRSResume
|
||||||
*/
|
*/
|
||||||
function Sheet() {
|
function JRSResume() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -29,7 +29,7 @@ Abstract character/resume sheet representation.
|
|||||||
onto this Sheet instance with extend() and convert sheet dates to a safe &
|
onto this Sheet instance with extend() and convert sheet dates to a safe &
|
||||||
consistent format. Then sort each section by startDate descending.
|
consistent format. Then sort each section by startDate descending.
|
||||||
*/
|
*/
|
||||||
Sheet.prototype.open = function( file, title ) {
|
JRSResume.prototype.open = function( file, title ) {
|
||||||
this.meta = { fileName: file };
|
this.meta = { fileName: file };
|
||||||
this.meta.raw = FS.readFileSync( file, 'utf8' );
|
this.meta.raw = FS.readFileSync( file, 'utf8' );
|
||||||
return this.parse( this.meta.raw, title );
|
return this.parse( this.meta.raw, title );
|
||||||
@ -38,7 +38,7 @@ Abstract character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Save the sheet to disk (for environments that have disk access).
|
Save the sheet to disk (for environments that have disk access).
|
||||||
*/
|
*/
|
||||||
Sheet.prototype.save = function( filename ) {
|
JRSResume.prototype.save = function( filename ) {
|
||||||
this.meta.fileName = filename || this.meta.fileName;
|
this.meta.fileName = filename || this.meta.fileName;
|
||||||
FS.writeFileSync( this.meta.fileName, this.stringify(), 'utf8' );
|
FS.writeFileSync( this.meta.fileName, this.stringify(), 'utf8' );
|
||||||
return this;
|
return this;
|
||||||
@ -48,7 +48,7 @@ Abstract character/resume sheet representation.
|
|||||||
Convert this object to a JSON string, sanitizing meta-properties along the
|
Convert this object to a JSON string, sanitizing meta-properties along the
|
||||||
way. Don't override .toString().
|
way. Don't override .toString().
|
||||||
*/
|
*/
|
||||||
Sheet.prototype.stringify = function() {
|
JRSResume.prototype.stringify = function() {
|
||||||
function replacer( key,value ) { // Exclude these keys from stringification
|
function replacer( key,value ) { // Exclude these keys from stringification
|
||||||
return _.some(['meta', 'warnings', 'computed', 'filt', 'ctrl', 'index',
|
return _.some(['meta', 'warnings', 'computed', 'filt', 'ctrl', 'index',
|
||||||
'safeStartDate', 'safeEndDate', 'safeDate', 'safeReleaseDate', 'result',
|
'safeStartDate', 'safeEndDate', 'safeDate', 'safeReleaseDate', 'result',
|
||||||
@ -64,7 +64,7 @@ Abstract character/resume sheet representation.
|
|||||||
onto this Sheet instance with extend() and convert sheet dates to a safe &
|
onto this Sheet instance with extend() and convert sheet dates to a safe &
|
||||||
consistent format. Then sort each section by startDate descending.
|
consistent format. Then sort each section by startDate descending.
|
||||||
*/
|
*/
|
||||||
Sheet.prototype.parse = function( stringData, opts ) {
|
JRSResume.prototype.parse = function( stringData, opts ) {
|
||||||
opts = opts || { };
|
opts = opts || { };
|
||||||
var rep = JSON.parse( stringData );
|
var rep = JSON.parse( stringData );
|
||||||
extend( true, this, rep );
|
extend( true, this, rep );
|
||||||
@ -86,7 +86,7 @@ Abstract character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Return a unique list of all keywords across all skills.
|
Return a unique list of all keywords across all skills.
|
||||||
*/
|
*/
|
||||||
Sheet.prototype.keywords = function() {
|
JRSResume.prototype.keywords = function() {
|
||||||
var flatSkills = [];
|
var flatSkills = [];
|
||||||
if( this.skills && this.skills.length ) {
|
if( this.skills && this.skills.length ) {
|
||||||
this.skills.forEach( function( s ) {
|
this.skills.forEach( function( s ) {
|
||||||
@ -99,7 +99,7 @@ Abstract character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Update the sheet's raw data. TODO: remove/refactor
|
Update the sheet's raw data. TODO: remove/refactor
|
||||||
*/
|
*/
|
||||||
Sheet.prototype.updateData = function( str ) {
|
JRSResume.prototype.updateData = function( str ) {
|
||||||
this.clear( false );
|
this.clear( false );
|
||||||
this.parse( str )
|
this.parse( str )
|
||||||
return this;
|
return this;
|
||||||
@ -108,7 +108,7 @@ Abstract character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Reset the sheet to an empty state.
|
Reset the sheet to an empty state.
|
||||||
*/
|
*/
|
||||||
Sheet.prototype.clear = function( clearMeta ) {
|
JRSResume.prototype.clear = function( clearMeta ) {
|
||||||
clearMeta = ((clearMeta === undefined) && true) || clearMeta;
|
clearMeta = ((clearMeta === undefined) && true) || clearMeta;
|
||||||
clearMeta && (delete this.meta);
|
clearMeta && (delete this.meta);
|
||||||
delete this.computed; // Don't use Object.keys() here
|
delete this.computed; // Don't use Object.keys() here
|
||||||
@ -125,15 +125,15 @@ Abstract character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Get the default (empty) sheet.
|
Get the default (empty) sheet.
|
||||||
*/
|
*/
|
||||||
Sheet.default = function() {
|
JRSResume.default = function() {
|
||||||
return new Sheet().open( PATH.join( __dirname, 'empty.json'), 'Empty' );
|
return new JRSResume().open( PATH.join( __dirname, 'empty.json'), 'Empty' );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Add work experience to the sheet.
|
Add work experience to the sheet.
|
||||||
*/
|
*/
|
||||||
Sheet.prototype.add = function( moniker ) {
|
JRSResume.prototype.add = function( moniker ) {
|
||||||
var defSheet = Sheet.default();
|
var defSheet = JRSResume.default();
|
||||||
var newObject = $.extend( true, {}, defSheet[ moniker ][0] );
|
var newObject = $.extend( true, {}, defSheet[ moniker ][0] );
|
||||||
this[ moniker ] = this[ moniker ] || [];
|
this[ moniker ] = this[ moniker ] || [];
|
||||||
this[ moniker ].push( newObject );
|
this[ moniker ].push( newObject );
|
||||||
@ -143,7 +143,7 @@ Abstract character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Determine if the sheet includes a specific social profile (eg, GitHub).
|
Determine if the sheet includes a specific social profile (eg, GitHub).
|
||||||
*/
|
*/
|
||||||
Sheet.prototype.hasProfile = function( socialNetwork ) {
|
JRSResume.prototype.hasProfile = function( socialNetwork ) {
|
||||||
socialNetwork = socialNetwork.trim().toLowerCase();
|
socialNetwork = socialNetwork.trim().toLowerCase();
|
||||||
return this.basics.profiles && _.some( this.basics.profiles, function(p) {
|
return this.basics.profiles && _.some( this.basics.profiles, function(p) {
|
||||||
return p.network.trim().toLowerCase() === socialNetwork;
|
return p.network.trim().toLowerCase() === socialNetwork;
|
||||||
@ -153,7 +153,7 @@ Abstract character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Determine if the sheet includes a specific skill.
|
Determine if the sheet includes a specific skill.
|
||||||
*/
|
*/
|
||||||
Sheet.prototype.hasSkill = function( skill ) {
|
JRSResume.prototype.hasSkill = function( skill ) {
|
||||||
skill = skill.trim().toLowerCase();
|
skill = skill.trim().toLowerCase();
|
||||||
return this.skills && _.some( this.skills, function(sk) {
|
return this.skills && _.some( this.skills, function(sk) {
|
||||||
return sk.keywords && _.some( sk.keywords, function(kw) {
|
return sk.keywords && _.some( sk.keywords, function(kw) {
|
||||||
@ -165,7 +165,7 @@ Abstract character/resume sheet representation.
|
|||||||
/**
|
/**
|
||||||
Validate the sheet against the JSON Resume schema.
|
Validate the sheet against the JSON Resume schema.
|
||||||
*/
|
*/
|
||||||
Sheet.prototype.isValid = function( ) { // TODO: ↓ fix this path ↓
|
JRSResume.prototype.isValid = function( ) { // TODO: ↓ fix this path ↓
|
||||||
var schema = FS.readFileSync( PATH.join( __dirname, 'resume.json' ), 'utf8' );
|
var schema = FS.readFileSync( PATH.join( __dirname, 'resume.json' ), 'utf8' );
|
||||||
var schemaObj = JSON.parse( schema );
|
var schemaObj = JSON.parse( schema );
|
||||||
var validator = require('is-my-json-valid')
|
var validator = require('is-my-json-valid')
|
||||||
@ -181,7 +181,7 @@ Abstract character/resume sheet representation.
|
|||||||
*latest end date of all jobs in the work history*. This last condition is for
|
*latest end date of all jobs in the work history*. This last condition is for
|
||||||
sheets that have overlapping jobs.
|
sheets that have overlapping jobs.
|
||||||
*/
|
*/
|
||||||
Sheet.prototype.duration = function() {
|
JRSResume.prototype.duration = function() {
|
||||||
if( this.work && this.work.length ) {
|
if( this.work && this.work.length ) {
|
||||||
var careerStart = this.work[ this.work.length - 1].safeStartDate;
|
var careerStart = this.work[ this.work.length - 1].safeStartDate;
|
||||||
if ((typeof careerStart === 'string' || careerStart instanceof String) &&
|
if ((typeof careerStart === 'string' || careerStart instanceof String) &&
|
||||||
@ -199,7 +199,7 @@ Abstract character/resume sheet representation.
|
|||||||
Sort dated things on the sheet by start date descending. Assumes that dates
|
Sort dated things on the sheet by start date descending. Assumes that dates
|
||||||
on the sheet have been processed with _parseDates().
|
on the sheet have been processed with _parseDates().
|
||||||
*/
|
*/
|
||||||
Sheet.prototype.sort = function( ) {
|
JRSResume.prototype.sort = function( ) {
|
||||||
|
|
||||||
this.work && this.work.sort( byDateDesc );
|
this.work && this.work.sort( byDateDesc );
|
||||||
this.education && this.education.sort( byDateDesc );
|
this.education && this.education.sort( byDateDesc );
|
||||||
@ -253,8 +253,8 @@ Abstract character/resume sheet representation.
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Export the Sheet function/ctor.
|
Export the JRSResume function/ctor.
|
||||||
*/
|
*/
|
||||||
module.exports = Sheet;
|
module.exports = JRSResume;
|
||||||
|
|
||||||
}());
|
}());
|
@ -37,7 +37,7 @@ module.exports = function () {
|
|||||||
if(!src || !src.length) { throw { fluenterror: 3 }; }
|
if(!src || !src.length) { throw { fluenterror: 3 }; }
|
||||||
var sheets = src.map( function( res ) {
|
var sheets = src.map( function( res ) {
|
||||||
_log( 'Reading JSON resume: ' + res );
|
_log( 'Reading JSON resume: ' + res );
|
||||||
return (new FLUENT.Sheet()).open( res );
|
return (new FLUENT.FRESHResume()).open( res );
|
||||||
});
|
});
|
||||||
|
|
||||||
// Merge input resumes...
|
// Merge input resumes...
|
||||||
@ -139,7 +139,7 @@ module.exports = function () {
|
|||||||
if( !src || !src.length ) { throw { fluenterror: 3 }; }
|
if( !src || !src.length ) { throw { fluenterror: 3 }; }
|
||||||
var isValid = true;
|
var isValid = true;
|
||||||
var sheets = src.map( function( res ) {
|
var sheets = src.map( function( res ) {
|
||||||
var sheet = (new FLUENT.Sheet()).open( res );
|
var sheet = (new FLUENT.FRESHResume()).open( res );
|
||||||
var valid = sheet.isValid();
|
var valid = sheet.isValid();
|
||||||
_log( 'Validating JSON resume: ' + res +
|
_log( 'Validating JSON resume: ' + res +
|
||||||
(valid ? ' (VALID)' : ' (INVALID)'));
|
(valid ? ' (VALID)' : ' (INVALID)'));
|
||||||
|
@ -4,7 +4,9 @@ External API surface for FluentCV:CLI.
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
Sheet: require('./core/fresh-sheet'),
|
Sheet: require('./core/fresh-resume'),
|
||||||
|
FRESHResume: require('./core/fresh-resume'),
|
||||||
|
JRSResume: require('./core/jrs-resume'),
|
||||||
Theme: require('./core/theme'),
|
Theme: require('./core/theme'),
|
||||||
FluentDate: require('./core/fluent-date'),
|
FluentDate: require('./core/fluent-date'),
|
||||||
HtmlGenerator: require('./gen/html-generator'),
|
HtmlGenerator: require('./gen/html-generator'),
|
||||||
|
@ -4,7 +4,7 @@ var chai = require('chai')
|
|||||||
, should = chai.should()
|
, should = chai.should()
|
||||||
, path = require('path')
|
, path = require('path')
|
||||||
, _ = require('underscore')
|
, _ = require('underscore')
|
||||||
, FreshSheet = require('../src/core/fresh-sheet')
|
, FRESHResume = require('../src/core/fresh-resume')
|
||||||
, validator = require('is-my-json-valid');
|
, validator = require('is-my-json-valid');
|
||||||
|
|
||||||
chai.config.includeStack = false;
|
chai.config.includeStack = false;
|
||||||
@ -15,7 +15,7 @@ describe('fullstack.json (FRESH)', function () {
|
|||||||
|
|
||||||
it('should open without throwing an exception', function () {
|
it('should open without throwing an exception', function () {
|
||||||
function tryOpen() {
|
function tryOpen() {
|
||||||
_sheet = new FreshSheet().open( 'tests/exemplars/fresh-exemplar.json' );
|
_sheet = new FRESHResume().open( 'tests/exemplars/fresh-exemplar.json' );
|
||||||
}
|
}
|
||||||
tryOpen.should.not.Throw();
|
tryOpen.should.not.Throw();
|
||||||
});
|
});
|
||||||
@ -45,7 +45,7 @@ describe('fullstack.json (FRESH)', function () {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should not be modified after saving', function() {
|
it('should not be modified after saving', function() {
|
||||||
var savedSheet = new FreshSheet().open( 'tests/sandbox/fullstack.json' );
|
var savedSheet = new FRESHResume().open( 'tests/sandbox/fullstack.json' );
|
||||||
_sheet.stringify().should.equal( savedSheet.stringify() )
|
_sheet.stringify().should.equal( savedSheet.stringify() )
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@ var chai = require('chai')
|
|||||||
, should = chai.should()
|
, should = chai.should()
|
||||||
, path = require('path')
|
, path = require('path')
|
||||||
, _ = require('underscore')
|
, _ = require('underscore')
|
||||||
, Sheet = require('../src/core/sheet')
|
, JRSResume = require('../src/core/jrs-resume')
|
||||||
, validator = require('is-my-json-valid');
|
, validator = require('is-my-json-valid');
|
||||||
|
|
||||||
chai.config.includeStack = false;
|
chai.config.includeStack = false;
|
||||||
@ -15,7 +15,7 @@ describe('fullstack.json (JRS)', function () {
|
|||||||
|
|
||||||
it('should open without throwing an exception', function () {
|
it('should open without throwing an exception', function () {
|
||||||
function tryOpen() {
|
function tryOpen() {
|
||||||
_sheet = new Sheet().open( 'node_modules/resample/fullstack/in/resume.json' );
|
_sheet = new JRSResume().open( 'node_modules/resample/fullstack/in/resume.json' );
|
||||||
}
|
}
|
||||||
tryOpen.should.not.Throw();
|
tryOpen.should.not.Throw();
|
||||||
});
|
});
|
||||||
@ -44,7 +44,7 @@ describe('fullstack.json (JRS)', function () {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should not be modified after saving', function() {
|
it('should not be modified after saving', function() {
|
||||||
var savedSheet = new Sheet().open( 'tests/sandbox/fullstack.json' );
|
var savedSheet = new JRSResume().open( 'tests/sandbox/fullstack.json' );
|
||||||
_sheet.stringify().should.equal( savedSheet.stringify() )
|
_sheet.stringify().should.equal( savedSheet.stringify() )
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user