mirror of
https://github.com/JuanCanham/HackMyResume.git
synced 2024-10-06 07:25:13 +01:00
88c71f6e9c
Move flat command functions (BUILD, ANALYZE, etc.) to a shallow Verb hierarchy. Allow command verbs to inherit common functionality and prep for better debugging/logging as well as test mocks.
43 lines
1.1 KiB
JavaScript
43 lines
1.1 KiB
JavaScript
/**
|
|
Implementation of the 'create' verb for HackMyResume.
|
|
@module create.js
|
|
@license MIT. See LICENSE.md for details.
|
|
*/
|
|
|
|
(function(){
|
|
|
|
var MKDIRP = require('mkdirp')
|
|
, PATH = require('path')
|
|
, chalk = require('chalk')
|
|
, Verb = require('../core/verb')
|
|
, HACKMYSTATUS = require('../core/status-codes');
|
|
|
|
|
|
var CreateVerb = module.exports = Verb.extend({
|
|
|
|
invoke: function() {
|
|
create.apply( this, arguments );
|
|
}
|
|
|
|
});
|
|
|
|
|
|
/**
|
|
Create a new empty resume in either FRESH or JRS format.
|
|
*/
|
|
function create( src, dst, opts, logger ) {
|
|
var _log = logger || console.log;
|
|
if( !src || !src.length ) throw { fluenterror: HACKMYSTATUS.createNameMissing };
|
|
src.forEach( function( t ) {
|
|
var safeFormat = opts.format.toUpperCase();
|
|
_log(chalk.green('Creating new ') + chalk.green.bold(safeFormat) +
|
|
chalk.green(' resume: ') + chalk.green.bold(t));
|
|
MKDIRP.sync( PATH.dirname( t ) ); // Ensure dest folder exists;
|
|
var RezClass = require('../core/' + safeFormat.toLowerCase() + '-resume' );
|
|
RezClass.default().save(t);
|
|
//FLUENT[ safeFormat + 'Resume' ].default().save( t );
|
|
});
|
|
}
|
|
|
|
}());
|