mirror of
https://github.com/JuanCanham/HackMyResume.git
synced 2024-11-05 09:56:22 +00:00
commit
36f8010ebc
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "fluentcv",
|
||||
"version": "0.10.2",
|
||||
"version": "0.10.3",
|
||||
"description": "Generate polished résumés and CVs in HTML, Markdown, LaTeX, MS Word, PDF, plain text, JSON, XML, YAML, smoke signal, and carrier pigeon.",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@ -33,7 +33,7 @@
|
||||
"homepage": "https://github.com/fluentdesk/fluentcv",
|
||||
"dependencies": {
|
||||
"colors": "^1.1.2",
|
||||
"fluent-themes": "~0.6.2-beta",
|
||||
"fluent-themes": "~0.6.3-beta",
|
||||
"fresca": "~0.2.1",
|
||||
"fs-extra": "^0.24.0",
|
||||
"handlebars": "^4.0.5",
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
FRESH to JSON Resume conversion routiens.
|
||||
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module convert.js
|
||||
*/
|
||||
|
||||
(function(){
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
The FluentCV date representation.
|
||||
@license Copyright (c) 2015 by James M. Devlin. All rights reserved.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module fluent-date.js
|
||||
*/
|
||||
|
||||
var moment = require('moment');
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
Definition of the FRESHResume class.
|
||||
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module fresh-resume.js
|
||||
*/
|
||||
|
||||
(function() {
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
Definition of the JRSResume class.
|
||||
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module jrs-resume.js
|
||||
*/
|
||||
|
||||
(function() {
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
Abstract theme representation.
|
||||
Definition of the Theme class.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module theme.js
|
||||
*/
|
||||
|
||||
(function() {
|
||||
|
@ -1,25 +1,59 @@
|
||||
/**
|
||||
Handlebars template generate for FluentCV.
|
||||
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk.
|
||||
Definition of the HandlebarsGenerator class.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module handlebars-generator.js
|
||||
*/
|
||||
|
||||
(function() {
|
||||
|
||||
var _ = require('underscore');
|
||||
var HANDLEBARS = require('handlebars');
|
||||
var FS = require('fs');
|
||||
var moment = require('moment');
|
||||
var MD = require('marked');
|
||||
var H2W = require('../utils/html-to-wpml');
|
||||
|
||||
|
||||
var _ = require('underscore')
|
||||
, HANDLEBARS = require('handlebars')
|
||||
, FS = require('fs')
|
||||
, moment = require('moment')
|
||||
, MD = require('marked')
|
||||
, H2W = require('../utils/html-to-wpml');
|
||||
|
||||
|
||||
|
||||
/**
|
||||
Perform template-based resume generation using Handlebars.js.
|
||||
@method generate
|
||||
*/
|
||||
module.exports = function( json, jst, format, cssInfo, opts, theme ) {
|
||||
|
||||
// Pre-compile any partials present in the theme.
|
||||
_.each( theme.partials, function( el ) {
|
||||
var tplData = FS.readFileSync( el.path, 'utf8' );
|
||||
var compiledTemplate = HANDLEBARS.compile( tplData );
|
||||
HANDLEBARS.registerPartial( el.name, compiledTemplate );
|
||||
});
|
||||
|
||||
// Register necessary helpers.
|
||||
registerHelpers();
|
||||
|
||||
// Compile and run the Handlebars template.
|
||||
var template = HANDLEBARS.compile(jst);
|
||||
return template({
|
||||
r: json,
|
||||
filt: opts.filters,
|
||||
cssInfo: cssInfo,
|
||||
headFragment: opts.headFragment || ''
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
/**
|
||||
Register useful Handlebars helpers.
|
||||
@method registerHelpers
|
||||
*/
|
||||
function registerHelpers() {
|
||||
|
||||
// Set up a date formatting helper so we can do:
|
||||
// {{#formatDate val 'YYYY-MM'}}
|
||||
HANDLEBARS.registerHelper("formatDate", function(datetime, format) {
|
||||
if( moment ) {
|
||||
return moment( datetime ).format( format );
|
||||
@ -29,19 +63,23 @@ Handlebars template generate for FluentCV.
|
||||
}
|
||||
});
|
||||
|
||||
// Set up a Markdown-to-WordProcessingML helper so we can do:
|
||||
// {{#wmpl val [true|false]}}
|
||||
HANDLEBARS.registerHelper("wpml", function( txt, inline ) {
|
||||
inline = (inline && !inline.hash) || false;
|
||||
txt = inline ? MD(txt.trim()).replace(/^\s*<p>|<\/p>\s*$/gi, '') : MD(txt.trim());
|
||||
txt = inline ?
|
||||
MD(txt.trim()).replace(/^\s*<p>|<\/p>\s*$/gi, '') :
|
||||
MD(txt.trim());
|
||||
txt = H2W( txt.trim() );
|
||||
return txt;
|
||||
});
|
||||
|
||||
// Set up a generic conditional helper so we can do:
|
||||
// {{#compare val otherVal operator="<"}}
|
||||
// http://doginthehat.com.au/2012/02/comparison-block-helper-for-handlebars-templates/
|
||||
HANDLEBARS.registerHelper('compare', function(lvalue, rvalue, options) {
|
||||
|
||||
if (arguments.length < 3)
|
||||
throw new Error("Handlerbars Helper 'compare' needs 2 parameters");
|
||||
|
||||
var operator = options.hash.operator || "==";
|
||||
var operators = {
|
||||
'==': function(l,r) { return l == r; },
|
||||
@ -53,21 +91,13 @@ Handlebars template generate for FluentCV.
|
||||
'>=': function(l,r) { return l >= r; },
|
||||
'typeof': function(l,r) { return typeof l == r; }
|
||||
};
|
||||
|
||||
if (!operators[operator])
|
||||
throw new Error("Handlerbars Helper 'compare' doesn't know the operator "+operator);
|
||||
var result = operators[operator](lvalue,rvalue);
|
||||
return result ? options.fn(this) : options.inverse(this);
|
||||
});
|
||||
}
|
||||
|
||||
var template = HANDLEBARS.compile(jst);
|
||||
return template({
|
||||
r: json,
|
||||
filt: opts.filters,
|
||||
cssInfo: cssInfo,
|
||||
headFragment: opts.headFragment || ''
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
}());
|
||||
|
@ -1,6 +1,6 @@
|
||||
/**
|
||||
Underscore template generate for FluentCV.
|
||||
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk.
|
||||
Definition of the UnderscoreGenerator class.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
*/
|
||||
|
||||
(function() {
|
||||
|
@ -1,6 +1,6 @@
|
||||
/**
|
||||
Internal resume generation logic for FluentCV.
|
||||
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk
|
||||
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk.
|
||||
@module fluentcmd.js
|
||||
*/
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
External API surface for FluentCV:CLI.
|
||||
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk
|
||||
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk.
|
||||
@module fluentlib.js
|
||||
*/
|
||||
|
||||
module.exports = {
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
Base resume generator for FluentCV.
|
||||
@license Copyright (c) 2015 | James M. Devlin
|
||||
Definition of the BaseGenerator class.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module base-generator.js
|
||||
*/
|
||||
|
||||
(function() {
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
HTML resume generator for FluentCV.
|
||||
@license Copyright (c) 2015 James M. Devlin / FluentDesk
|
||||
Definition of the HTMLGenerator class.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module html-generator.js
|
||||
*/
|
||||
|
||||
(function() {
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
Definition of the HtmlPdfGenerator class.
|
||||
@license Copyright (c) 2015 James M. Devlin / FluentDesk
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module html-pdf-generator.js
|
||||
*/
|
||||
|
||||
(function() {
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
Definition of the JsonGenerator class.
|
||||
@license Copyright (c) 2015 | James M. Devlin
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module json-generator.js
|
||||
*/
|
||||
|
||||
var BaseGenerator = require('./base-generator');
|
||||
|
@ -1,7 +1,7 @@
|
||||
/**
|
||||
A JSON-driven YAML resume generator for FluentLib.
|
||||
Definition of the JsonYamlGenerator class.
|
||||
@module json-yaml-generator.js
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
*/
|
||||
|
||||
(function() {
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
LaTeX resume generator for FluentCV.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk
|
||||
Definition of the LaTeXGenerator class.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module latex-generator.js
|
||||
*/
|
||||
|
||||
var TemplateGenerator = require('./template-generator');
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
Markdown resume generator for FluentCV.
|
||||
@license Copyright (c) 2015 by James M. Devlin. All rights reserved.
|
||||
Definition of the MarkdownGenerator class.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module markdown-generator.js
|
||||
*/
|
||||
|
||||
var TemplateGenerator = require('./template-generator');
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
Template-based resume generator base for FluentCV.
|
||||
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk.
|
||||
Definition of the TemplateGenerator class.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module template-generator.js
|
||||
*/
|
||||
|
||||
(function() {
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
Plain text resume generator for FluentCV.
|
||||
@license Copyright (c) 2015 by James M. Devlin. All rights reserved.
|
||||
Definition of the TextGenerator class.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module text-generator.js
|
||||
*/
|
||||
|
||||
var TemplateGenerator = require('./template-generator');
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
MS Word resume generator for FluentCV.
|
||||
@license Copyright (c) 2015 by James M. Devlin. All rights reserved.
|
||||
Definition of the WordGenerator class.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module word-generator.js
|
||||
*/
|
||||
|
||||
(function() {
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
XML resume generator for FluentCV.
|
||||
@license Copyright (c) 2015 | James M. Devlin
|
||||
Definition of the XMLGenerator class.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module xml-generator.js
|
||||
*/
|
||||
|
||||
var BaseGenerator = require('./base-generator');
|
||||
@ -8,7 +9,7 @@ var BaseGenerator = require('./base-generator');
|
||||
/**
|
||||
The XmlGenerator generates an XML resume via the TemplateGenerator.
|
||||
*/
|
||||
var XmlGenerator = module.exports = BaseGenerator.extend({
|
||||
var XMLGenerator = module.exports = BaseGenerator.extend({
|
||||
|
||||
init: function(){
|
||||
this._super( 'xml' );
|
||||
|
@ -1,7 +1,7 @@
|
||||
/**
|
||||
A YAML resume generator for FluentLib.
|
||||
Definition of the YAMLGenerator class.
|
||||
@module yaml-generator.js
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
*/
|
||||
|
||||
|
||||
@ -13,7 +13,7 @@ A YAML resume generator for FluentLib.
|
||||
YamlGenerator generates a YAML-formatted resume via TemplateGenerator.
|
||||
*/
|
||||
|
||||
var YamlGenerator = module.exports = TemplateGenerator.extend({
|
||||
var YAMLGenerator = module.exports = TemplateGenerator.extend({
|
||||
|
||||
init: function(){
|
||||
this._super( 'yml', 'yml' );
|
||||
|
@ -3,6 +3,7 @@
|
||||
/**
|
||||
Command-line interface (CLI) for FluentCV:CLI.
|
||||
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk.
|
||||
@module index.js
|
||||
*/
|
||||
|
||||
var ARGS = require( 'minimist' )
|
||||
|
@ -1,3 +1,8 @@
|
||||
/**
|
||||
Definition of John Resig's `Class` class.
|
||||
@module class.js
|
||||
*/
|
||||
|
||||
/* Simple JavaScript Inheritance
|
||||
* By John Resig http://ejohn.org/
|
||||
* MIT Licensed.
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
Plain JavaScript replacement of jQuery .extend based on jQuery sources.
|
||||
@license Copyright (c) 2015 by James M. Devlin. All rights reserved.
|
||||
Definition of the `extend` method.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module extend.js
|
||||
*/
|
||||
|
||||
function _extend() {
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
File-exists checker for Node.js.
|
||||
@license Copyright (c) 2015 | James M. Devlin
|
||||
Definition of the `fileExists` method.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module file-exists.js
|
||||
*/
|
||||
|
||||
var FS = require('fs');
|
||||
|
@ -1,3 +1,8 @@
|
||||
/**
|
||||
Definition of the Markdown to WordProcessingML conversion routine.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module html-to-wpml.js
|
||||
*/
|
||||
|
||||
(function(){
|
||||
|
||||
@ -7,7 +12,7 @@
|
||||
module.exports = function( html ) {
|
||||
|
||||
var final = '';
|
||||
var is_bold = false, is_italic = false;
|
||||
var is_bold = false, is_italic = false, is_link = false;
|
||||
var depth = 0;
|
||||
|
||||
var tokens = HTML5Tokenizer.tokenize( html );
|
||||
|
@ -1,6 +1,7 @@
|
||||
/**
|
||||
String utility functions.
|
||||
@license Copyright (c) 2015 | James M. Devlin
|
||||
Definitions of string utility functions.
|
||||
@license MIT. Copyright (c) 2015 James Devlin / FluentDesk.
|
||||
@module string.js
|
||||
*/
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user