(window.webpackJsonp=window.webpackJsonp||[]).push([[10],{203:function(e,t,n){"use strict";n.r(t),n.d(t,"SkillsPlotWithChooser",function(){return w}),n.d(t,"SkillsPlots",function(){return x});var r=n(0),a=n.n(r),i=n(322),o=n.n(i),l=n(217),c=n(215),s=n(269),u=n(462),p=n(287),m=n(491),f=n(493),g=n(324),d=n.n(g),S=n(247),h=n(323),v=n.n(h),y=n(218);function E(e){return e.error?a.a.createElement("div",null,"Error! ",a.a.createElement("button",{onClick:e.retry},"Retry")):a.a.createElement("div",null,"Loading...")}var k=o()({loader:function(){return Promise.all([n.e(0),n.e(15),n.e(16)]).then(n.bind(null,330))},render:function(e,t){var n=e.SkillsPlot;return a.a.createElement(n,t)},loading:function(){return a.a.createElement(E,null)}}),b=S.a.skillTypes,w=function(){var e=Object(r.useState)(b[0]),t=e[0],n=e[1],i=a.a.useState(null),o=i[0],l=i[1];return a.a.createElement(s.a,null,a.a.createElement("h1",null,"Skills",a.a.createElement(p.a,{"aria-controls":"simple-menu","aria-haspopup":"true",onClick:function(e){var t=e.currentTarget;return l(t)},variant:"contained",color:"secondary",className:v.a.skillChooser},t,a.a.createElement(d.a,null))),a.a.createElement(u.a,{container:!0,spacing:2},a.a.createElement(m.a,{id:"plot-chooser",anchorEl:o,keepMounted:!0,open:Boolean(o),onClose:function(){return l(null)},anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"center",horizontal:"center"}},b.map(function(e){return a.a.createElement(f.a,{key:e,onClick:function(){return n(e),void l(null)}},e)}),a.a.createElement(f.a,{key:"Show All Skills",component:y.a,to:"/skills-plots"}," ","Show All Skills"))),a.a.createElement(u.a,{container:!0,spacing:2},a.a.createElement(u.a,{item:!0,xs:12,sm:12,md:12},a.a.createElement(k,{showTitle:!1,skillType:t}))))},x=function(){return a.a.createElement(s.a,null,a.a.createElement("h1",null,"Skill Plots"),a.a.createElement(u.a,{container:!0,spacing:2},S.a.skillTypes.map(function(e){return a.a.createElement(u.a,{item:!0,xs:12,sm:12,md:6,key:e},a.a.createElement(k,{skillType:e}))})))};t.default=function(){return a.a.createElement(l.a,null,a.a.createElement(c.a,{title:"Skill Plots"}),a.a.createElement(x,null))}},213:function(e,t,n){var r;e.exports=(r=n(224))&&r.default||r},214:function(e,t,n){"use strict";n.d(t,"a",function(){return o});n(135),n(95),n(62),n(225),n(60);var r=n(0),a=n.n(r),i=n(479);var o=function(e){var t=e.children,n=function(e,t){if(null==e)return{};var n,r,a={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,["children"]);return a.a.createElement(i.a,Object.assign({},n,{target:"_blank",rel:"noopener noreferrer"}),t)}},215:function(e,t,n){"use strict";n.d(t,"a",function(){return c});var r=n(226),a=n(0),i=n.n(a),o=n(235),l=n.n(o);function c(e){var t=e.description,n=e.lang,a=e.meta,o=e.title,c=r.data.site,s=t||c.siteMetadata.description;return i.a.createElement(l.a,{htmlAttributes:{lang:n},title:o,titleTemplate:"%s | "+c.siteMetadata.title,meta:[{name:"description",content:s},{property:"og:title",content:o},{property:"og:description",content:s},{property:"og:type",content:"website"},{name:"twitter:card",content:"summary"},{name:"twitter:creator",content:c.siteMetadata.author},{name:"twitter:title",content:o},{name:"twitter:description",content:s},{name:"keywords",content:c.siteMetadata.keywords}].concat(a)})}c.defaultProps={lang:"en",meta:[],description:""}},217:function(e,t,n){"use strict";var r=n(223),a=n(0),i=n.n(a),o=n(488),l=n(489),c=n(338),s=n(468),u=Object(s.a)({palette:{primary:{main:"#2F2001"},secondary:{main:"#0094FF"},error:{main:c.a.A400},background:{default:"#000"}}}),p=(n(233),n(484)),m=n(486),f=n(480),g=n(487),d=n(234),S=n.n(d),h=n(483),v=n(218),y=n(214),E=n(219),k=(n(60),n(293));function b(e){return i.a.createElement(k.a,Object.assign({fontSize:"inherit"},e),i.a.createElement("path",{d:"M19,3A2,2 0 0,1 21,5V19A2,2 0 0,1 19,21H5A2,2 0 0,1 3,19V5A2,2 0 0,1 5,3H19M18.5,18.5V13.2A3.26,3.26 0 0,0 15.24,9.94C14.39,9.94 13.4,10.46 12.92,11.24V10.13H10.13V18.5H12.92V13.57C12.92,12.8 13.54,12.17 14.31,12.17A1.4,1.4 0 0,1 15.71,13.57V18.5H18.5M6.88,8.56A1.68,1.68 0 0,0 8.56,6.88C8.56,5.95 7.81,5.19 6.88,5.19A1.69,1.69 0 0,0 5.19,6.88C5.19,7.81 5.95,8.56 6.88,8.56M8.27,18.5V10.13H5.5V18.5H8.27Z"}))}var w=n(481),x=n(482);function A(e){var t=e.children,n=Object(w.a)();return i.a.createElement(x.a,{appear:!1,direction:"down",in:!n},t)}var C=Object(h.a)(function(e){return{root:{flexGrow:1},menuButton:{marginRight:e.spacing(2)},title:{flexGrow:1},social:{marginLeft:e.spacing(1)}}}),j=function(e){var t=e.siteTitle,n=C();return i.a.createElement("div",{className:n.root},i.a.createElement(A,null,i.a.createElement(p.a,null,i.a.createElement(m.a,null,i.a.createElement(g.a,{edge:"start",className:n.menuButton,color:"inherit","aria-label":"Menu"},i.a.createElement(S.a,null)),i.a.createElement(f.a,{variant:"h6",className:n.title},i.a.createElement(v.b,{to:"/",color:"inherit"},t)),i.a.createElement(f.a,{variant:"h6",className:n.social},i.a.createElement(y.a,{color:"secondary",href:"http://www.linkedin.com/in/jazeee"},i.a.createElement(b,null))),i.a.createElement(f.a,{variant:"h6",className:n.social},i.a.createElement(y.a,{color:"secondary",href:"https://github.com/jazeee"},i.a.createElement(E.a,null)))))),i.a.createElement(m.a,null))};j.defaultProps={siteTitle:""},n.d(t,"a",function(){return P});var P=function(e){var t=e.children,n=r.data;return i.a.createElement(i.a.Fragment,null,i.a.createElement(o.a,null),i.a.createElement(l.a,{theme:u},i.a.createElement(j,{siteTitle:n.site.siteMetadata.title}),i.a.createElement("div",null,t),i.a.createElement("footer",null,"© ",(new Date).getFullYear(),", Built with"," ",i.a.createElement("a",{href:"https://www.gatsbyjs.org"},"Gatsby"))))}},218:function(e,t,n){"use strict";n(60);var r=n(0),a=n.n(r),i=n(479),o=n(59),l=n.n(o);n(213),a.a.createContext({});n.d(t,"b",function(){return c}),n.d(t,"a",function(){return s});var c=a.a.forwardRef(function(e,t){return a.a.createElement(i.a,Object.assign({component:l.a,ref:t},e))}),s=a.a.forwardRef(function(e,t){return a.a.createElement(c,Object.assign({innerRef:t},e))})},219:function(e,t,n){"use strict";n.d(t,"a",function(){return o});n(60);var r=n(0),a=n.n(r),i=n(293);function o(e){return a.a.createElement(i.a,Object.assign({fontSize:"inherit"},e),a.a.createElement("path",{d:"M12.007 0C6.12 0 1.1 4.27.157 10.08c-.944 5.813 2.468 11.45 8.054 13.312.19.064.397.033.555-.084.16-.117.25-.304.244-.5v-2.042c-3.33.735-4.037-1.56-4.037-1.56-.22-.726-.694-1.35-1.334-1.756-1.096-.75.074-.735.074-.735.773.103 1.454.557 1.846 1.23.694 1.21 2.23 1.638 3.45.96.056-.61.327-1.178.766-1.605-2.67-.3-5.462-1.335-5.462-6.002-.02-1.193.42-2.35 1.23-3.226-.327-1.015-.27-2.116.166-3.09 0 0 1.006-.33 3.3 1.23 1.966-.538 4.04-.538 6.003 0 2.295-1.5 3.3-1.23 3.3-1.23.445 1.006.49 2.144.12 3.18.81.877 1.25 2.033 1.23 3.226 0 4.607-2.805 5.627-5.476 5.927.578.583.88 1.386.825 2.206v3.29c-.005.2.092.393.26.507.164.115.377.14.565.063 5.568-1.88 8.956-7.514 8.007-13.313C22.892 4.267 17.884.007 12.008 0z"}))}},223:function(e){e.exports={data:{site:{siteMetadata:{title:"Jaz Singh"}}}}},224:function(e,t,n){"use strict";n.r(t);n(60);var r=n(0),a=n.n(r),i=n(96);t.default=function(e){var t=e.location,n=e.pageResources;return n?a.a.createElement(i.a,Object.assign({location:t,pageResources:n},n.json)):null}},226:function(e){e.exports={data:{site:{siteMetadata:{title:"Jaz Singh",description:"Jaz Singh: a software engineer and technical lead. I work with React, ES6+, Meteor, Java, PostgreSQL, MySQL, Arduino, ESP8266 among other things.",author:"@jazeee",keywords:"jazeee Jaz Software Engineer React ES6 JavaScript PostgreSQL MySQL Mongo Meteor Java c++"}}}}},247:function(e,t,n){"use strict";n(140),n(136),n(137),n(138),n(139),n(275),n(259),n(142),n(143),n(216),n(60),n(135),n(95),n(62),n(225);var r=n(276),a=n.n(r),i=n(285),o=n.n(i),l=n(246),c=n.n(l),s=n(286),u=n.n(s);function p(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}var m={"JavaScript/ES6+":{type:"Language",experience:{2005:0,2007:10,2008:15,2011:20,2012:30,2013:60,2014:85,2015:90,2019:90},domains:["WebApp","Server","Software Engineering"],scoreWeight:3,isCurrentSkill:!0},CoffeeScript:{type:"Language",experience:{2012:0,2013:60,2014:85,2015:95,2016:80,2017:60,2018:0},domains:["WebApp","Server","Software Engineering"],scoreWeight:1},"Meteor.js":{type:"Platform",experience:{2013:0,2014:40,2015:70,2016:85,2017:65,2018:70,2019:70},domains:["WebApp","Server","Software Engineering"],scoreWeight:1.5,isCurrentSkill:!0},"Node.js":{type:"Platform",experience:{2011:0,2012:10,2013:20,2014:40,2015:60,2016:75,2018:75,2019:85},domains:["WebApp","Server","Software Engineering"],scoreWeight:2,isCurrentSkill:!0},React:{type:"Platform",experience:{2014:0,2015:10,2016:60,2017:80,2018:80,2019:90},domains:["WebApp","Software Engineering"],scoreWeight:2,isCurrentSkill:!0},"AngularJS 1.5":{type:"Platform",experience:{2012:0,2013:60,2014:80,2015:80,2016:90,2017:0},domains:["WebApp","Software Engineering"]},"AngularJS 2.0":{type:"Platform",experience:{2014:0,2015:10,2016:20,2017:20,2018:10},domains:["WebApp","Software Engineering"]},Bootstrap:{type:"Platform",experience:{2012:0,2013:55,2014:80,2015:85,2016:90,2017:90,2018:60},domains:["WebApp","Software Engineering"]},"Material-UI":{type:"Platform",experience:{2016:0,2017:20,2018:70,2019:80},domains:["WebApp","Software Engineering"],isCurrentSkill:!0},"D3.js":{type:"Platform",experience:{2012:0,2013:60,2014:75,2015:80,2016:80,2017:70,2018:60,2019:60},domains:["WebApp","Software Engineering"],scoreWeight:2,isCurrentSkill:!0},JQuery:{type:"Platform",experience:{2010:0,2011:20,2012:30,2013:40,2014:50,2015:70,2016:70,2017:40,2018:20},domains:["WebApp"]},"Jade/Pug":{type:"Language",experience:{2012:0,2013:60,2014:100,2016:100,2018:0},domains:["WebApp","Software Engineering"],scoreWeight:1},"HTML/CSS/Sass/Less":{type:"Language",experience:{2005:0,2006:10,2008:20,2010:20,2012:30,2013:50,2014:75,2015:85,2016:90,2017:90,2018:90,2019:90},domains:["WebApp","Software Engineering"],scoreWeight:2,isCurrentSkill:!0},Java:{type:"Language",experience:{2007:0,2008:10,2009:30,2010:60,2011:75,2012:85,2013:90,2014:85,2015:85,2016:85,2017:75,2018:70,2019:70},domains:["WebApp","Server","Android","Software Engineering"],scoreWeight:2,isCurrentSkill:!0},"ReST/WebSockets":{type:"Platform",experience:{2006:0,2007:40,2008:50,2009:70,2010:75,2011:75,2012:75,2013:80,2014:90,2015:90,2016:90,2017:90,2018:90,2019:90},domains:["WebApp","Server","Software Engineering"],isCurrentSkill:!0},Spring:{type:"Platform",experience:{2009:0,2010:30,2011:40,2012:40,2013:50,2014:50,2015:60,2016:60,2017:0},domains:["Server","Software Engineering"]},Python:{type:"Language",experience:{2010:0,2012:15,2013:25,2014:40,2015:50,2016:50,2017:60,2018:60,2019:65},domains:["Server","Software Engineering"],isCurrentSkill:!0},"c++":{type:"Language",experience:{1995:0,1996:10,1998:20,2e3:30,2001:40,2002:50,2004:70,2005:70,2006:85,2010:85,2012:80,2014:75,2015:70,2016:60,2017:50,2018:50,2019:50},domains:["Server","Software Engineering"]},STL:{type:"Platform",experience:{2002:0,2003:20,2004:50,2005:60,2006:70,2008:70,2010:60,2012:50,2014:40,2015:40,2016:30,2017:30,2018:30},domains:["Server","Software Engineering"]},"VC++":{type:"Language",experience:{1995:0,1996:10,1998:20,2e3:30,2001:40,2002:50,2004:70,2005:70,2006:70,2008:70,2010:50,2011:30,2013:0},domains:["Windows"]},Mongo:{type:"Database",experience:{2012:0,2013:10,2014:20,2015:45,2016:60,2017:60,2018:60,2019:60},domains:["Server","Software Engineering"],isCurrentSkill:!0},Postgresql:{type:"Database",experience:{2010:0,2011:10,2013:40,2014:60,2015:70,2016:85,2017:65,2018:45,2019:45},domains:["Server","Software Engineering"],isCurrentSkill:!0},MySQL:{type:"Database",experience:{2006:0,2008:10,2009:30,2010:60,2011:50,2013:50,2014:50,2015:50,2016:40,2017:60,2018:80,2019:80},domains:["Server","Software Engineering"],isCurrentSkill:!0},Linux:{type:"Environment",experience:{1999:0,2e3:10,2001:20,2002:50,2004:70,2005:75,2006:85,2008:85,2010:85,2012:90,2014:90,2015:90,2016:90,2017:90,2018:90,2019:90},domains:["Server","Linux","Software Engineering"],skillWeight:3,isCurrentSkill:!0},Windows:{type:"Environment",experience:{1992:0,1995:20,1997:40,1998:60,2e3:70,2001:70,2002:70,2004:70,2005:70,2006:70,2008:70,2010:70,2012:60,2014:50,2015:45,2016:45,2017:30,2018:30,2019:30},domains:["Windows"]},git:{type:"Source Control",experience:{2011:0,2012:10,2013:20,2014:30,2015:60,2016:80,2017:80,2018:80,2019:90},domains:["Process","Software Engineering"],skillWeight:3,isCurrentSkill:!0},"subversion (svn)":{type:"Source Control",experience:{2006:0,2007:10,2008:30,2009:50,2010:60,2011:70,2013:75,2014:75,2015:80,2016:70,2017:0},domains:["Process"]},cvs:{type:"Source Control",experience:{2003:0,2004:10,2005:20,2006:30,2007:30,2008:0},domains:["Process"]},"Visual Source Safe":{type:"Source Control",experience:{1997:0,1998:10,2e3:30,2002:40,2004:50,2005:45,2006:40,2007:20,2008:0},domains:["Process"]},"Team Leadership":{type:"Project Management",experience:{2002:0,2003:15,2004:25,2005:30,2006:35,2007:40,2008:50,2009:65,2010:75,2011:85,2012:90,2013:95,2014:95,2015:95,2016:95,2017:95,2018:95,2019:90},domains:["Process"],isCurrentSkill:!0},"Atlassian, Phabricator, Arcanist":{type:"Project Management",experience:{2007:0,2008:10,2009:30,2010:60,2011:70,2012:75,2013:85,2014:85,2015:85,2016:90,2017:90,2018:90,2019:90},domains:["Process"],isCurrentSkill:!0},"Agile/Kanban":{type:"Project Management",experience:{2008:0,2009:10,2010:35,2011:60,2012:75,2013:85,2014:90,2015:90,2016:90,2017:90,2018:90,2019:80},domains:["Process"],isCurrentSkill:!0}},f={};Object.keys(m).forEach(function(e){for(var t=m[e],n=t.experience,r=Object.keys(n),a=Math.min.apply(Math,p(r)),i=Math.max.apply(Math,p(r)),o=0,l=a+1;l<i;l++)if(null==n[l]){var c=r[o],s=r[o+1],u=s-c||1,g=(n[s]-n[c])/u,d=Math.max(0,Math.min(100,n[c]+g*(l-c)));n[l]=d}else o+=1;f[e]=Object.assign({},t,{experience:n})});var g=n(250);function d(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}n.d(t,"a",function(){return S});var S=new function(){var e=this;this.getSkillData=function(e,t){void 0===t&&(t={});var n=t.minimumYearToInclude,r=f;return n&&(r=Object.keys(r).reduce(function(e,t){var a=r[t],i=a.experience,o={};return Object.keys(i).filter(function(e){return e>=n}).forEach(function(e){return o[e]=i[e]}),e[t]=Object.assign({},a,{experience:o}),e},{})),null!=e&&(r=u()(r,function(t){return t.type===e})),r},this.getSkillNames=function(t){var n=c()(e.getSkillData(t));return(n=o()(n,function(t){var n=a()(e.data,function(e){return e.name===t});return e.getSkillScore(n)})).reverse()},this.getSkillYearScore=function(t,n,r){return null==r&&(r=1),Math.max(.5,t-(e.latestYear-6))*n*r},this.getSkillScore=function(t){var n=0,r=t.experience;for(var a in r){var i=r[a];n+=e.getSkillYearScore(a,i,t.scoreWeight)}return n},this.getDomainSkills=function(t){var n=e.data.filter(function(e){return e.domains.includes(t)});return(n=o()(n,e.getSkillScore)).reverse()},this.getSkills=function(e){var t=[],n=0;for(var r in f){var a=f[r],i=a.type;if(null==e||e===i){var o=a.experience;for(var l in o){var c=o[l];t.push({skillName:r,year:l,skillLevel:c,type:i,index:n}),n++}}}return t},this.getDomainSkillNames=function(t){return e.getDomainSkills(t).map(function(e){return e.name})},this.data=[];var t=2010;for(var n in f){var r=Object.assign({name:n},f[n]);this.data.push(r),t=Object.keys(r.experience).map(function(e){return+e}).reduce(function(e,t){return Math.max(e,t)},t),r.score=this.getSkillScore(r)}this.latestYear=t,this.skillTypes=Object.values(f).map(function(e){return e.type}),this.skillTypes=["Language","Platform","Database","Environment","Source Control","Project Management"].concat(d(this.skillTypes)),this.skillTypes=this.skillTypes.filter(function(e,t,n){return n.indexOf(e)===t}),this.skillDomains=Object.values(f).map(function(e){return e.domains}).reduce(function(e,t){return[].concat(d(e),d(t))},[]),this.skillDomains=this.skillDomains.filter(function(e,t,n){return n.indexOf(e)===t}),this.skillNames=Object.keys(f).sort(),this.skillIndex={},this.skillColors={},this.skillNames.forEach(function(t,n){e.skillColors[t]=Object(g.a)(n),e.skillIndex[t]=n})}},250:function(e,t,n){"use strict";n.d(t,"a",function(){return c});for(var r=["orange","maroon","CornflowerBlue","coral","aqua","darkgoldenrod","lightgreen","Chocolate","red","darkgreen","blue","purple"],a=[],i=0;i<r.length/2;i++)for(var o=0;o<2;o++){a.push(r[2*i+o]);var l=20*i;1===o&&(l=120+l),a.push("hsl("+l+", 85%, 30%)"),a.push("hsl("+(l+8)+", 75%, 15%)"),a.push("hsl("+(l+15)+", 95%, 45%)")}var c=function(e){return a[e%a.length]}}}]);
//# sourceMappingURL=component---src-pages-skills-plots-index-js-ad008c4e4ecf230a7227.js.map