jsonresume-theme-eloquent
Advanced tools
Comparing version 3.0.2 to 4.0.0
# Change Log | ||
> All notable changes to this project will be documented in this file. | ||
This project adheres to [Semantic Versioning](http://semver.org/). | ||
> This project adheres to [Semantic Versioning](http://semver.org/). | ||
## [[v4.0.0]](https://github.com/thibaudcolas/jsonresume-theme-eloquent/releases/tag/4.0.0) - 2018-01-25 | ||
### Added | ||
* Add optional GA tracking via `google_analytics_id` property on resume. | ||
* Add `rel="noreferrer noopener"` on all target `_blank` links. | ||
### Changed | ||
* Change license from ISC to MIT. | ||
* Stop testing in Node 0.12. | ||
### Removed | ||
* Remove outdated IE8/9/10 compatibility code. | ||
* Remove smooth scrolling from the project. | ||
* Remove harmful alt on profile picture image. | ||
* Stop justifying about text (hard to read for people with dyslexia). | ||
## [[v3.0.0]](https://github.com/thibaudcolas/jsonresume-theme-eloquent/releases/tag/3.0.0) - 2016-03-27 | ||
@@ -10,7 +29,7 @@ | ||
- Use Twitter meta tags to improve display on social networks / Slack. | ||
* Use Twitter meta tags to improve display on social networks / Slack. | ||
### Changed | ||
- Now using the `summary` for the description meta tag, (used by search engines & social networks) instead of the same fields as the title. | ||
* Now using the `summary` for the description meta tag, (used by search engines & social networks) instead of the same fields as the title. | ||
@@ -21,3 +40,3 @@ ## [[v2.3.2]](https://github.com/thibaudcolas/jsonresume-theme-eloquent/releases/tag/2.3.2) - 2016-03-27 | ||
- Exclude more files (build tool configuration and changelog) from npm package for faster installs. | ||
* Exclude more files (build tool configuration and changelog) from npm package for faster installs. | ||
@@ -28,3 +47,3 @@ ## [[v2.3.0]](https://github.com/thibaudcolas/jsonresume-theme-eloquent/releases/tag/2.3.0) - 2016-02-07 | ||
- Bump moment.js version due to security issue. | ||
* Bump moment.js version due to security issue. | ||
@@ -35,3 +54,3 @@ ## [[2.2.3]](https://github.com/thibaudcolas/jsonresume-theme-eloquent/releases/tag/2.2.3) - 2016-01-07 | ||
- Fix style issue showing a scrollbar when it's not necessary. | ||
* Fix style issue showing a scrollbar when it's not necessary. | ||
@@ -42,8 +61,8 @@ ## [[2.1.0]](https://github.com/thibaudcolas/jsonresume-theme-eloquent/releases/tag/2.1.0) - 2015-10-29 | ||
- CSS is now parsed with [Pleeease](http://pleeease.io), with a better cross-browser transform story. | ||
- JS is now written in ES6 and compiled with [Babel](https://babeljs.io/). | ||
* CSS is now parsed with [Pleeease](http://pleeease.io), with a better cross-browser transform story. | ||
* JS is now written in ES6 and compiled with [Babel](https://babeljs.io/). | ||
### Fixed | ||
- Switch from runtime compilation of JS & CSS assets to build time before publish. Fixes [#3](https://github.com/thibaudcolas/jsonresume-theme-eloquent/issues/3). | ||
* Switch from runtime compilation of JS & CSS assets to build time before publish. Fixes [#3](https://github.com/thibaudcolas/jsonresume-theme-eloquent/issues/3). | ||
@@ -54,14 +73,14 @@ ## [[2.0.0]](https://github.com/thibaudcolas/jsonresume-theme-eloquent/releases/tag/2.0.0) - 2015-10-27 | ||
- Introduce this [Change Log](http://keepachangelog.com/). | ||
- Added usage and contributing sections to README. | ||
* Introduce this [Change Log](http://keepachangelog.com/). | ||
* Added usage and contributing sections to README. | ||
### Changed | ||
- Upgrade autoprefixer to latest major release. | ||
- Upgrade Handlebars to latest major release. | ||
- Use CSSO `minify` instead of `justDoIt`. | ||
* Upgrade autoprefixer to latest major release. | ||
* Upgrade Handlebars to latest major release. | ||
* Use CSSO `minify` instead of `justDoIt`. | ||
### Fixed | ||
- Always parse dates as UTC, ignoring timezones. Fixes [#2](https://github.com/thibaudcolas/jsonresume-theme-eloquent/issues/2). This will cause the output to be different when resumes are rendered in timezones that are after UTC (GMT-1 to GMT-12). | ||
* Always parse dates as UTC, ignoring timezones. Fixes [#2](https://github.com/thibaudcolas/jsonresume-theme-eloquent/issues/2). This will cause the output to be different when resumes are rendered in timezones that are after UTC (GMT-1 to GMT-12). | ||
@@ -72,3 +91,3 @@ ## [[1.2.0]](https://github.com/thibaudcolas/jsonresume-theme-eloquent/releases/tag/1.2.0) - 2015-08-31 | ||
- Upgrade UglifyJS2 to latest release to fix security issue. | ||
* Upgrade UglifyJS2 to latest release to fix security issue. | ||
@@ -79,3 +98,3 @@ ## [[1.1.0]](https://github.com/thibaudcolas/jsonresume-theme-eloquent/releases/tag/1.1.0) – 2015-03-04 | ||
- Upgrade Handlebars to latest major release. | ||
* Upgrade Handlebars to latest major release. | ||
@@ -86,3 +105,3 @@ ## [[1.0.0]](https://github.com/thibaudcolas/jsonresume-theme-eloquent/releases/tag/1.0.0) - 2015-01-29 | ||
------------- | ||
--- | ||
@@ -93,3 +112,3 @@ ## [[x.y.z]](https://github.com/thibaudcolas/jsonresume-theme-eloquent/releases/tag/x.y.z) - YYYY-MM-DD (Template: http://keepachangelog.com/) | ||
- Something was added to the API / a new feature was introduced. | ||
* Something was added to the API / a new feature was introduced. | ||
@@ -96,0 +115,0 @@ ### Changed |
@@ -1,1 +0,1 @@ | ||
(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){(function(global){"use strict";function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{"default":obj}}var _browserSaveas=require("browser-saveas");var _browserSaveas2=_interopRequireDefault(_browserSaveas);var _emailScramble=require("email-scramble");var _emailScramble2=_interopRequireDefault(_emailScramble);var _smoothScroll=require("smooth-scroll");var _smoothScroll2=_interopRequireDefault(_smoothScroll);var document=global.document;var downloadName=global.downloadName;var isServedOnline=global.location.protocol.indexOf("http")!==-1;if(isServedOnline){(function(){var blob=new Blob(["<!doctype html>"+document.documentElement.outerHTML],{type:"text/html;charset=utf-8"});document.getElementsByClassName("js-download-trigger")[0].style.display="block";document.getElementById("js-download").addEventListener("click",function(){(0,_browserSaveas2["default"])(blob,downloadName)})})()}var mailtoLink=document.querySelectorAll("[data-scrambled-email-link]")[0];mailtoLink.href="mailto:"+_emailScramble2["default"].decode(mailtoLink.href.replace("mailto:",""));var phoneLink=document.querySelectorAll("[data-scrambled-phone-link]")[0];phoneLink.href="tel:"+_emailScramble2["default"].decode(phoneLink.href.replace("tel:",""));_smoothScroll2["default"].init({speed:300})}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{"browser-saveas":2,"email-scramble":3,"smooth-scroll":4}],2:[function(require,module,exports){var saveAs=saveAs||typeof navigator!=="undefined"&&navigator.msSaveOrOpenBlob&&navigator.msSaveOrOpenBlob.bind(navigator)||function(view){"use strict";if(typeof navigator!=="undefined"&&/MSIE [1-9]\./.test(navigator.userAgent)){return}var doc=view.document,get_URL=function(){return view.URL||view.webkitURL||view},save_link=doc.createElementNS("http://www.w3.org/1999/xhtml","a"),can_use_save_link=!view.externalHost&&"download"in save_link,click=function(node){var event=doc.createEvent("MouseEvents");event.initMouseEvent("click",true,false,view,0,0,0,0,0,false,false,false,false,0,null);node.dispatchEvent(event)},webkit_req_fs=view.webkitRequestFileSystem,req_fs=view.requestFileSystem||webkit_req_fs||view.mozRequestFileSystem,throw_outside=function(ex){(view.setImmediate||view.setTimeout)(function(){throw ex},0)},force_saveable_type="application/octet-stream",fs_min_size=0,deletion_queue=[],process_deletion_queue=function(){var i=deletion_queue.length;while(i--){var file=deletion_queue[i];if(typeof file==="string"){get_URL().revokeObjectURL(file)}else{file.remove()}}deletion_queue.length=0},dispatch=function(filesaver,event_types,event){event_types=[].concat(event_types);var i=event_types.length;while(i--){var listener=filesaver["on"+event_types[i]];if(typeof listener==="function"){try{listener.call(filesaver,event||filesaver)}catch(ex){throw_outside(ex)}}}},FileSaver=function(blob,name){var filesaver=this,type=blob.type,blob_changed=false,object_url,target_view,get_object_url=function(){var object_url=get_URL().createObjectURL(blob);deletion_queue.push(object_url);return object_url},dispatch_all=function(){dispatch(filesaver,"writestart progress write writeend".split(" "))},fs_error=function(){if(blob_changed||!object_url){object_url=get_object_url(blob)}if(target_view){target_view.location.href=object_url}else{window.open(object_url,"_blank")}filesaver.readyState=filesaver.DONE;dispatch_all()},abortable=function(func){return function(){if(filesaver.readyState!==filesaver.DONE){return func.apply(this,arguments)}}},create_if_not_found={create:true,exclusive:false},slice;filesaver.readyState=filesaver.INIT;if(!name){name="download"}if(can_use_save_link){object_url=get_object_url(blob);save_link.href=object_url;save_link.download=name;click(save_link);filesaver.readyState=filesaver.DONE;dispatch_all();return}if(view.chrome&&type&&type!==force_saveable_type){slice=blob.slice||blob.webkitSlice;blob=slice.call(blob,0,blob.size,force_saveable_type);blob_changed=true}if(webkit_req_fs&&name!=="download"){name+=".download"}if(type===force_saveable_type||webkit_req_fs){target_view=view}if(!req_fs){fs_error();return}fs_min_size+=blob.size;req_fs(view.TEMPORARY,fs_min_size,abortable(function(fs){fs.root.getDirectory("saved",create_if_not_found,abortable(function(dir){var save=function(){dir.getFile(name,create_if_not_found,abortable(function(file){file.createWriter(abortable(function(writer){writer.onwriteend=function(event){target_view.location.href=file.toURL();deletion_queue.push(file);filesaver.readyState=filesaver.DONE;dispatch(filesaver,"writeend",event)};writer.onerror=function(){var error=writer.error;if(error.code!==error.ABORT_ERR){fs_error()}};"writestart progress write abort".split(" ").forEach(function(event){writer["on"+event]=filesaver["on"+event]});writer.write(blob);filesaver.abort=function(){writer.abort();filesaver.readyState=filesaver.DONE};filesaver.readyState=filesaver.WRITING}),fs_error)}),fs_error)};dir.getFile(name,{create:false},abortable(function(file){file.remove();save()}),abortable(function(ex){if(ex.code===ex.NOT_FOUND_ERR){save()}else{fs_error()}}))}),fs_error)}),fs_error)},FS_proto=FileSaver.prototype,saveAs=function(blob,name){return new FileSaver(blob,name)};FS_proto.abort=function(){var filesaver=this;filesaver.readyState=filesaver.DONE;dispatch(filesaver,"abort")};FS_proto.readyState=FS_proto.INIT=0;FS_proto.WRITING=1;FS_proto.DONE=2;FS_proto.error=FS_proto.onwritestart=FS_proto.onprogress=FS_proto.onwrite=FS_proto.onabort=FS_proto.onerror=FS_proto.onwriteend=null;view.addEventListener("unload",process_deletion_queue,false);saveAs.unload=function(){process_deletion_queue();view.removeEventListener("unload",process_deletion_queue,false)};return saveAs}(typeof self!=="undefined"&&self||typeof window!=="undefined"&&window||this.content);amdDefine=window.define;if(typeof amdDefine==="undefined"&&(typeof window.almond!=="undefined"&&"define"in window.almond)){amdDefine=window.almond.define}if(typeof module!=="undefined"&&module!==null){module.exports=saveAs}else if(typeof amdDefine!=="undefined"&&amdDefine!==null&&amdDefine.amd!=null){amdDefine("saveAs",[],function(){return saveAs})}},{}],3:[function(require,module,exports){(function(root,factory){"use strict";if(typeof define==="function"&&define.amd){define("email-scramble",factory(root))}else if(typeof exports==="object"){module.exports=factory(root)}else{root.emailScramble=factory(root)}})(this,function(root){"use strict";var rot=function rot(str,charRot,numRot){var numbers="0123456789";var lowercase="abcdefghijklmnopqrstuvwxyz";var uppercase="ABCDEFGHIJKLMNOPQRSTUVWXYZ";var regexNumber=/[0-9]/;var regexLowercase=/[a-z]/;var regexUppercase=/[A-Z]/;str=String(str);if(charRot<0){charRot+=26}if(numRot<0){numRot+=10}var length=str.length;var index=-1;var result="";var character;var currentPosition;var shiftedPosition;while(++index<length){character=str.charAt(index);if(regexNumber.test(character)){currentPosition=numbers.indexOf(character);shiftedPosition=(currentPosition+numRot)%10;result+=numbers.charAt(shiftedPosition)}else if(regexLowercase.test(character)){currentPosition=lowercase.indexOf(character);shiftedPosition=(currentPosition+charRot)%26;result+=lowercase.charAt(shiftedPosition)}else if(regexUppercase.test(character)){currentPosition=uppercase.indexOf(character);shiftedPosition=(currentPosition+charRot)%26;result+=uppercase.charAt(shiftedPosition)}else{result+=character}}return result};var rot18=function rot18(str){return rot(str,13,5)};return{rot:rot,encode:rot18,decode:rot18}})},{}],4:[function(require,module,exports){(function(global){(function(root,factory){if(typeof define==="function"&&define.amd){define([],factory(root))}else if(typeof exports==="object"){module.exports=factory(root)}else{root.smoothScroll=factory(root)}})(typeof global!=="undefined"?global:this.window||this.global,function(root){"use strict";var smoothScroll={};var supports="querySelector"in document&&"addEventListener"in root;var settings,eventTimeout,fixedHeader,headerHeight;var defaults={selector:"[data-scroll]",selectorHeader:"[data-scroll-header]",speed:500,easing:"easeInOutCubic",offset:0,updateURL:true,callback:function(){}};var extend=function(){var extended={};var deep=false;var i=0;var length=arguments.length;if(Object.prototype.toString.call(arguments[0])==="[object Boolean]"){deep=arguments[0];i++}var merge=function(obj){for(var prop in obj){if(Object.prototype.hasOwnProperty.call(obj,prop)){if(deep&&Object.prototype.toString.call(obj[prop])==="[object Object]"){extended[prop]=extend(true,extended[prop],obj[prop])}else{extended[prop]=obj[prop]}}}};for(;i<length;i++){var obj=arguments[i];merge(obj)}return extended};var getHeight=function(elem){return Math.max(elem.scrollHeight,elem.offsetHeight,elem.clientHeight)};var getClosest=function(elem,selector){var firstChar=selector.charAt(0);var supports="classList"in document.documentElement;var attribute,value;if(firstChar==="["){selector=selector.substr(1,selector.length-2);attribute=selector.split("=");if(attribute.length>1){value=true;attribute[1]=attribute[1].replace(/"/g,"").replace(/'/g,"")}}for(;elem&&elem!==document;elem=elem.parentNode){if(firstChar==="."){if(supports){if(elem.classList.contains(selector.substr(1))){return elem}}else{if(new RegExp("(^|\\s)"+selector.substr(1)+"(\\s|$)").test(elem.className)){return elem}}}if(firstChar==="#"){if(elem.id===selector.substr(1)){return elem}}if(firstChar==="["){if(elem.hasAttribute(attribute[0])){if(value){if(elem.getAttribute(attribute[0])===attribute[1]){return elem}}else{return elem}}}if(elem.tagName.toLowerCase()===selector){return elem}}return null};var escapeCharacters=function(id){var string=String(id);var length=string.length;var index=-1;var codeUnit;var result="";var firstCodeUnit=string.charCodeAt(0);while(++index<length){codeUnit=string.charCodeAt(index);if(codeUnit===0){throw new InvalidCharacterError("Invalid character: the input contains U+0000.")}if(codeUnit>=1&&codeUnit<=31||codeUnit==127||index===0&&codeUnit>=48&&codeUnit<=57||index===1&&codeUnit>=48&&codeUnit<=57&&firstCodeUnit===45){result+="\\"+codeUnit.toString(16)+" ";continue}if(codeUnit>=128||codeUnit===45||codeUnit===95||codeUnit>=48&&codeUnit<=57||codeUnit>=65&&codeUnit<=90||codeUnit>=97&&codeUnit<=122){result+=string.charAt(index);continue}result+="\\"+string.charAt(index)}return result};var easingPattern=function(type,time){var pattern;if(type==="easeInQuad")pattern=time*time;if(type==="easeOutQuad")pattern=time*(2-time);if(type==="easeInOutQuad")pattern=time<.5?2*time*time:-1+(4-2*time)*time;if(type==="easeInCubic")pattern=time*time*time;if(type==="easeOutCubic")pattern=--time*time*time+1;if(type==="easeInOutCubic")pattern=time<.5?4*time*time*time:(time-1)*(2*time-2)*(2*time-2)+1;if(type==="easeInQuart")pattern=time*time*time*time;if(type==="easeOutQuart")pattern=1- --time*time*time*time;if(type==="easeInOutQuart")pattern=time<.5?8*time*time*time*time:1-8*--time*time*time*time;if(type==="easeInQuint")pattern=time*time*time*time*time;if(type==="easeOutQuint")pattern=1+--time*time*time*time*time;if(type==="easeInOutQuint")pattern=time<.5?16*time*time*time*time*time:1+16*--time*time*time*time*time;return pattern||time};var getEndLocation=function(anchor,headerHeight,offset){var location=0;if(anchor.offsetParent){do{location+=anchor.offsetTop;anchor=anchor.offsetParent}while(anchor)}location=location-headerHeight-offset;return location>=0?location:0};var getDocumentHeight=function(){return Math.max(root.document.body.scrollHeight,root.document.documentElement.scrollHeight,root.document.body.offsetHeight,root.document.documentElement.offsetHeight,root.document.body.clientHeight,root.document.documentElement.clientHeight)};var getDataOptions=function(options){return!options||!(typeof JSON==="object"&&typeof JSON.parse==="function")?{}:JSON.parse(options)};var updateUrl=function(anchor,url){if(root.history.pushState&&(url||url==="true")&&root.location.protocol!=="file:"){root.history.pushState(null,null,[root.location.protocol,"//",root.location.host,root.location.pathname,root.location.search,anchor].join(""))}};var getHeaderHeight=function(header){return header===null?0:getHeight(header)+header.offsetTop};smoothScroll.animateScroll=function(toggle,anchor,options){var overrides=getDataOptions(toggle?toggle.getAttribute("data-options"):null);var settings=extend(settings||defaults,options||{},overrides);anchor="#"+escapeCharacters(anchor.substr(1));var anchorElem=anchor==="#"?root.document.documentElement:root.document.querySelector(anchor);var startLocation=root.pageYOffset;if(!fixedHeader){fixedHeader=root.document.querySelector(settings.selectorHeader)}if(!headerHeight){headerHeight=getHeaderHeight(fixedHeader)}var endLocation=getEndLocation(anchorElem,headerHeight,parseInt(settings.offset,10));var animationInterval;var distance=endLocation-startLocation;var documentHeight=getDocumentHeight();var timeLapsed=0;var percentage,position;updateUrl(anchor,settings.updateURL);var stopAnimateScroll=function(position,endLocation,animationInterval){var currentLocation=root.pageYOffset;if(position==endLocation||currentLocation==endLocation||root.innerHeight+currentLocation>=documentHeight){clearInterval(animationInterval);anchorElem.focus();settings.callback(toggle,anchor)}};var loopAnimateScroll=function(){timeLapsed+=16;percentage=timeLapsed/parseInt(settings.speed,10);percentage=percentage>1?1:percentage;position=startLocation+distance*easingPattern(settings.easing,percentage);root.scrollTo(0,Math.floor(position));stopAnimateScroll(position,endLocation,animationInterval)};var startAnimateScroll=function(){animationInterval=setInterval(loopAnimateScroll,16)};if(root.pageYOffset===0){root.scrollTo(0,0)}startAnimateScroll()};var eventHandler=function(event){var toggle=getClosest(event.target,settings.selector);if(toggle&&toggle.tagName.toLowerCase()==="a"){event.preventDefault();smoothScroll.animateScroll(toggle,toggle.hash,settings)}};var eventThrottler=function(event){if(!eventTimeout){eventTimeout=setTimeout(function(){eventTimeout=null;headerHeight=getHeaderHeight(fixedHeader)},66)}};smoothScroll.destroy=function(){if(!settings)return;root.document.removeEventListener("click",eventHandler,false);root.removeEventListener("resize",eventThrottler,false);settings=null;eventTimeout=null;fixedHeader=null;headerHeight=null};smoothScroll.init=function(options){if(!supports)return;smoothScroll.destroy();settings=extend(defaults,options||{});fixedHeader=root.document.querySelector(settings.selectorHeader);headerHeight=getHeaderHeight(fixedHeader);root.document.addEventListener("click",eventHandler,false);if(fixedHeader){root.addEventListener("resize",eventThrottler,false)}};return smoothScroll})}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}]},{},[1]); | ||
(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){(function(global){"use strict";function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var _browserSaveas=require("browser-saveas");var _browserSaveas2=_interopRequireDefault(_browserSaveas);var _emailScramble=require("email-scramble");var _emailScramble2=_interopRequireDefault(_emailScramble);var document=global.document;var downloadName=global.downloadName;var isServedOnline=global.location.protocol.indexOf("http")!==-1;if(isServedOnline){(function(){var blob=new Blob(["<!doctype html>"+document.documentElement.outerHTML],{type:"text/html;charset=utf-8"});document.getElementsByClassName("js-download-trigger")[0].style.display="block";document.getElementById("js-download").addEventListener("click",function(){(0,_browserSaveas2["default"])(blob,downloadName)})})()}var mailtoLink=document.querySelectorAll("[data-scrambled-email-link]")[0];mailtoLink.href="mailto:"+_emailScramble2["default"].decode(mailtoLink.href.replace("mailto:",""));var phoneLink=document.querySelectorAll("[data-scrambled-phone-link]")[0];phoneLink.href="tel:"+_emailScramble2["default"].decode(phoneLink.href.replace("tel:",""))}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{"browser-saveas":2,"email-scramble":3}],2:[function(require,module,exports){var saveAs=saveAs||typeof navigator!=="undefined"&&navigator.msSaveOrOpenBlob&&navigator.msSaveOrOpenBlob.bind(navigator)||function(view){"use strict";if(typeof navigator!=="undefined"&&/MSIE [1-9]\./.test(navigator.userAgent)){return}var doc=view.document,get_URL=function(){return view.URL||view.webkitURL||view},save_link=doc.createElementNS("http://www.w3.org/1999/xhtml","a"),can_use_save_link=!view.externalHost&&"download"in save_link,click=function(node){var event=doc.createEvent("MouseEvents");event.initMouseEvent("click",true,false,view,0,0,0,0,0,false,false,false,false,0,null);node.dispatchEvent(event)},webkit_req_fs=view.webkitRequestFileSystem,req_fs=view.requestFileSystem||webkit_req_fs||view.mozRequestFileSystem,throw_outside=function(ex){(view.setImmediate||view.setTimeout)(function(){throw ex},0)},force_saveable_type="application/octet-stream",fs_min_size=0,deletion_queue=[],process_deletion_queue=function(){var i=deletion_queue.length;while(i--){var file=deletion_queue[i];if(typeof file==="string"){get_URL().revokeObjectURL(file)}else{file.remove()}}deletion_queue.length=0},dispatch=function(filesaver,event_types,event){event_types=[].concat(event_types);var i=event_types.length;while(i--){var listener=filesaver["on"+event_types[i]];if(typeof listener==="function"){try{listener.call(filesaver,event||filesaver)}catch(ex){throw_outside(ex)}}}},FileSaver=function(blob,name){var filesaver=this,type=blob.type,blob_changed=false,object_url,target_view,get_object_url=function(){var object_url=get_URL().createObjectURL(blob);deletion_queue.push(object_url);return object_url},dispatch_all=function(){dispatch(filesaver,"writestart progress write writeend".split(" "))},fs_error=function(){if(blob_changed||!object_url){object_url=get_object_url(blob)}if(target_view){target_view.location.href=object_url}else{window.open(object_url,"_blank")}filesaver.readyState=filesaver.DONE;dispatch_all()},abortable=function(func){return function(){if(filesaver.readyState!==filesaver.DONE){return func.apply(this,arguments)}}},create_if_not_found={create:true,exclusive:false},slice;filesaver.readyState=filesaver.INIT;if(!name){name="download"}if(can_use_save_link){object_url=get_object_url(blob);save_link.href=object_url;save_link.download=name;click(save_link);filesaver.readyState=filesaver.DONE;dispatch_all();return}if(view.chrome&&type&&type!==force_saveable_type){slice=blob.slice||blob.webkitSlice;blob=slice.call(blob,0,blob.size,force_saveable_type);blob_changed=true}if(webkit_req_fs&&name!=="download"){name+=".download"}if(type===force_saveable_type||webkit_req_fs){target_view=view}if(!req_fs){fs_error();return}fs_min_size+=blob.size;req_fs(view.TEMPORARY,fs_min_size,abortable(function(fs){fs.root.getDirectory("saved",create_if_not_found,abortable(function(dir){var save=function(){dir.getFile(name,create_if_not_found,abortable(function(file){file.createWriter(abortable(function(writer){writer.onwriteend=function(event){target_view.location.href=file.toURL();deletion_queue.push(file);filesaver.readyState=filesaver.DONE;dispatch(filesaver,"writeend",event)};writer.onerror=function(){var error=writer.error;if(error.code!==error.ABORT_ERR){fs_error()}};"writestart progress write abort".split(" ").forEach(function(event){writer["on"+event]=filesaver["on"+event]});writer.write(blob);filesaver.abort=function(){writer.abort();filesaver.readyState=filesaver.DONE};filesaver.readyState=filesaver.WRITING}),fs_error)}),fs_error)};dir.getFile(name,{create:false},abortable(function(file){file.remove();save()}),abortable(function(ex){if(ex.code===ex.NOT_FOUND_ERR){save()}else{fs_error()}}))}),fs_error)}),fs_error)},FS_proto=FileSaver.prototype,saveAs=function(blob,name){return new FileSaver(blob,name)};FS_proto.abort=function(){var filesaver=this;filesaver.readyState=filesaver.DONE;dispatch(filesaver,"abort")};FS_proto.readyState=FS_proto.INIT=0;FS_proto.WRITING=1;FS_proto.DONE=2;FS_proto.error=FS_proto.onwritestart=FS_proto.onprogress=FS_proto.onwrite=FS_proto.onabort=FS_proto.onerror=FS_proto.onwriteend=null;view.addEventListener("unload",process_deletion_queue,false);saveAs.unload=function(){process_deletion_queue();view.removeEventListener("unload",process_deletion_queue,false)};return saveAs}(typeof self!=="undefined"&&self||typeof window!=="undefined"&&window||this.content);var amdDefine=window.define;if(typeof amdDefine==="undefined"&&(typeof window.almond!=="undefined"&&"define"in window.almond)){amdDefine=window.almond.define}if(typeof module!=="undefined"&&module!==null){module.exports=saveAs}else if(typeof amdDefine!=="undefined"&&amdDefine!==null&&amdDefine.amd!=null){amdDefine("saveAs",[],function(){return saveAs})}},{}],3:[function(require,module,exports){(function wrapEmailScramble(root,factory){"use strict";if(typeof define==="function"&&define.amd){define("email-scramble",factory(root))}else if(typeof exports==="object"){module.exports=factory(root)}else{root.emailScramble=factory(root)}})(this,function emailScramble(root){"use strict";var rot=function rot(charRot,numRot,str){var numbers="0123456789";var lowercase="abcdefghijklmnopqrstuvwxyz";var uppercase="ABCDEFGHIJKLMNOPQRSTUVWXYZ";var regexNumber=/[0-9]/;var regexLowercase=/[a-z]/;var regexUppercase=/[A-Z]/;str=String(str);if(charRot<0){charRot+=26}if(numRot<0){numRot+=10}var length=str.length;var index=-1;var result="";var character;var currentPosition;var shiftedPosition;while(++index<length){character=str.charAt(index);if(regexNumber.test(character)){currentPosition=numbers.indexOf(character);shiftedPosition=(currentPosition+numRot)%10;result+=numbers.charAt(shiftedPosition)}else if(regexLowercase.test(character)){currentPosition=lowercase.indexOf(character);shiftedPosition=(currentPosition+charRot)%26;result+=lowercase.charAt(shiftedPosition)}else if(regexUppercase.test(character)){currentPosition=uppercase.indexOf(character);shiftedPosition=(currentPosition+charRot)%26;result+=uppercase.charAt(shiftedPosition)}else{result+=character}}return result};var rot18=function rot18(str){return rot(13,5,str)};return{rot:rot,encode:rot18,decode:rot18}})},{}]},{},[1]); |
{ | ||
"name": "jsonresume-theme-eloquent", | ||
"version": "3.0.2", | ||
"description": "An eloquent JSON Resume theme: fluent, persuasive, for developers.", | ||
"author": "Thibaud Colas <thib@thib.me> (https://github.com/thibaudcolas)", | ||
"license": "ISC", | ||
"version": "4.0.0", | ||
"description": "An eloquent JSON Resume theme: fluent, persuasive, for developers", | ||
"author": "Thibaud Colas", | ||
"license": "MIT", | ||
"main": "index.js", | ||
@@ -35,2 +35,13 @@ "homepage": "https://github.com/thibaudcolas/jsonresume-theme-eloquent", | ||
], | ||
"prettier": { | ||
"printWidth": 80, | ||
"tabWidth": 4, | ||
"useTabs": false, | ||
"semi": true, | ||
"singleQuote": true, | ||
"trailingComma": "es5", | ||
"bracketSpacing": true, | ||
"arrowParens": "always", | ||
"proseWrap": "preserve" | ||
}, | ||
"dependencies": { | ||
@@ -53,3 +64,2 @@ "email-scramble": "^2.0.0", | ||
"resume-schema": "0.0.16", | ||
"smooth-scroll": "git://github.com/cferdinandi/smooth-scroll.git#v7.1.1", | ||
"uglify-js": "^2.5.0", | ||
@@ -56,0 +66,0 @@ "webfont-dl": "^0.1.1" |
@@ -1,6 +0,3 @@ | ||
jsonresume-theme-eloquent | ||
========================= | ||
# jsonresume-theme-eloquent [![npm](https://img.shields.io/npm/v/jsonresume-theme-eloquent.svg?style=flat-square)](https://www.npmjs.com/package/jsonresume-theme-eloquent) [![Build Status](https://img.shields.io/travis/thibaudcolas/jsonresume-theme-eloquent.svg?style=flat-square)](https://travis-ci.org/thibaudcolas/jsonresume-theme-eloquent) | ||
[![npm](https://img.shields.io/npm/v/jsonresume-theme-eloquent.svg?style=flat-square)](https://www.npmjs.com/package/jsonresume-theme-eloquent) [![Build Status](https://img.shields.io/travis/thibaudcolas/jsonresume-theme-eloquent.svg?style=flat-square)](https://travis-ci.org/thibaudcolas/jsonresume-theme-eloquent) [![Dependency Status](https://img.shields.io/david/thibaudcolas/jsonresume-theme-eloquent.svg?style=flat-square)](https://david-dm.org/thibaudcolas/jsonresume-theme-eloquent) [![Code Climate](https://img.shields.io/codeclimate/github/thibaudcolas/jsonresume-theme-eloquent.svg?style=flat-square)](https://codeclimate.com/github/thibaudcolas/jsonresume-theme-eloquent) | ||
An eloquent JSON Resume theme: fluent, persuasive, for developers. [See it live](https://rawgit.com/thibaudcolas/jsonresume-theme-eloquent/master/test/resume.html). | ||
@@ -14,12 +11,13 @@ | ||
- Mobile First theme based on Bootstrap. | ||
- Download your resume with a single click, in a single file. | ||
- Keep your resume offline if you want to: the theme is self-contained. | ||
- Obfuscates your email address and phone number from spam bots. | ||
- Great Font Awesome icons. | ||
- Gorgeous Open Sans web font. | ||
- Optimized for print and screen readers. | ||
- Contains Schema.org markup to make the most of your content. | ||
- Uses Open Graph & Twitter metas to improve social sharing. | ||
- All fields are optional, pick what you need! | ||
* Mobile First theme based on Bootstrap. | ||
* Download your resume with a single click, in a single file. | ||
* Keep your resume offline if you want to: the theme is self-contained. | ||
* Obfuscates your email address and phone number from spam bots. | ||
* Great Font Awesome icons. | ||
* Gorgeous Open Sans web font. | ||
* Optimized for print and screen readers. | ||
* Contains Schema.org markup to make the most of your content. | ||
* Uses Open Graph & Twitter metas to improve social sharing. | ||
* Optionally use Google Analytics to track page views on your resume. | ||
* All fields are optional, pick what you need! | ||
@@ -33,13 +31,6 @@ ## Usage | ||
var fs = require('fs'); | ||
var path = require('path'); | ||
var eloquent = require('jsonresume-theme-eloquent'); | ||
var theme = require('jsonresume-theme-eloquent'); | ||
var resumeJSON = JSON.parse(fs.readFileSync(path.join(__dirname, '/resume.json'), 'utf-8')); | ||
var resumeHTML = eloquent.render(resumeJSON); | ||
fs.writeFile(path.join(__dirname, '/resume.html'), resumeHTML, function(err) { | ||
console.log(err || 'Resume exported to resume.html'); | ||
}); | ||
var resume = require('./resume.json'); | ||
process.stdout.write(theme.render(resume)); | ||
``` | ||
@@ -82,7 +73,5 @@ | ||
- [Bootstrap](http://getbootstrap.com/): custom build | ||
- [IcoMoon](https://icomoon.io/): custom [Font Awesome](https://fortawesome.github.io/Font-Awesome/) build | ||
- [Open Sans](http://www.google.com/fonts/specimen/Open+Sans): great web font-face, taken from Google Fonts | ||
- [saveAs polyfill](https://github.com/eligrey/FileSaver.js) | ||
- [domready](https://github.com/ded/domready) | ||
- [smoothScroll](https://github.com/cferdinandi/smooth-scroll) | ||
* [Bootstrap](http://getbootstrap.com/): custom build | ||
* [IcoMoon](https://icomoon.io/): custom [Font Awesome](https://fortawesome.github.io/Font-Awesome/) build | ||
* [Open Sans](http://www.google.com/fonts/specimen/Open+Sans): great web font-face, taken from Google Fonts | ||
* [saveAs polyfill](https://github.com/eligrey/FileSaver.js) |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
13
12
118204
299
75