?/gm,"");this.token(r,n);this.tokens.push({type:"blockquote_end"});continue}if(r=this.rules.list.exec(e)){e=e.substring(r[0].length);l=r[2];this.tokens.push({type:"list_start",ordered:l.length>1});r=r[0].match(this.rules.item);s=false;p=r.length;u=0;for(;u1&&o.length>1)){e=r.slice(u+1).join("\n")+e;u=p-1}}i=s||/\n\n(?!\s*$)/.test(h);if(u!==p-1){s=h[h.length-1]==="\n";if(!i)i=s}this.tokens.push({type:i?"loose_item_start":"list_item_start"});this.token(h,false);this.tokens.push({type:"list_item_end"})}this.tokens.push({type:"list_end"});continue}if(r=this.rules.html.exec(e)){e=e.substring(r[0].length);this.tokens.push({type:this.options.sanitize?"paragraph":"html",pre:r[1]==="pre"||r[1]==="script",text:r[0]});continue}if(n&&(r=this.rules.def.exec(e))){e=e.substring(r[0].length);this.tokens.links[r[1].toLowerCase()]={href:r[2],title:r[3]};continue}if(n&&(r=this.rules.table.exec(e))){e=e.substring(r[0].length);h={type:"table",header:r[1].replace(/^ *| *\| *$/g,"").split(/ *\| */),align:r[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:r[3].replace(/(?: *\| *)?\n$/,"").split("\n")};for(u=0;u])/,autolink:/^<([^ >]+(@|:\/)[^ >]+)>/,url:o,tag:/^|^<\/?\w+(?:"[^"]*"|'[^']*'|[^'">])*?>/,link:/^!?\[(inside)\]\(href\)/,reflink:/^!?\[(inside)\]\s*\[([^\]]*)\]/,nolink:/^!?\[((?:\[[^\]]*\]|[^\[\]])*)\]/,strong:/^__([\s\S]+?)__(?!_)|^\*\*([\s\S]+?)\*\*(?!\*)/,em:/^\b_((?:__|[\s\S])+?)_\b|^\*((?:\*\*|[\s\S])+?)\*(?!\*)/,code:/^(`+)\s*([\s\S]*?[^`])\s*\1(?!`)/,br:/^ {2,}\n(?!\s*$)/,del:o,text:/^[\s\S]+?(?=[\\?(?:\s+['"]([\s\S]*?)['"])?\s*/;n.link=l(n.link)("inside",n._inside)("href",n._href)();n.reflink=l(n.reflink)("inside",n._inside)();n.normal=h({},n);n.pedantic=h({},n.normal,{strong:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/});n.gfm=h({},n.normal,{escape:l(n.escape)("])","~|])")(),url:/^(https?:\/\/[^\s<]+[^<.,:;"')\]\s])/,del:/^~~(?=\S)([\s\S]*?\S)~~/,text:l(n.text)("]|","~]|")("|","|https?://|")()});n.breaks=h({},n.gfm,{br:l(n.br)("{2,}","*")(),text:l(n.gfm.text)("{2,}","*")()});function s(t,e){this.options=e||a.defaults;this.links=t;this.rules=n.normal;if(!this.links){throw new Error("Tokens array requires a `links` property.")}if(this.options.gfm){if(this.options.breaks){this.rules=n.breaks}else{this.rules=n.gfm}}else if(this.options.pedantic){this.rules=n.pedantic}}s.rules=n;s.output=function(t,e,n){var i=new s(e,n);return i.output(t)};s.prototype.output=function(t){var e="",n,s,i,l;while(t){if(l=this.rules.escape.exec(t)){t=t.substring(l[0].length);e+=l[1];continue}if(l=this.rules.autolink.exec(t)){t=t.substring(l[0].length);if(l[2]==="@"){s=l[1][6]===":"?this.mangle(l[1].substring(7)):this.mangle(l[1]);i=this.mangle("mailto:")+s}else{s=r(l[1]);i=s}e+=''+s+" ";continue}if(l=this.rules.url.exec(t)){t=t.substring(l[0].length);s=r(l[1]);i=s;e+=''+s+" ";continue}if(l=this.rules.tag.exec(t)){t=t.substring(l[0].length);e+=this.options.sanitize?r(l[0]):l[0];continue}if(l=this.rules.link.exec(t)){t=t.substring(l[0].length);e+=this.outputLink(l,{href:l[2],title:l[3]});continue}if((l=this.rules.reflink.exec(t))||(l=this.rules.nolink.exec(t))){t=t.substring(l[0].length);n=(l[2]||l[1]).replace(/\s+/g," ");n=this.links[n.toLowerCase()];if(!n||!n.href){e+=l[0][0];t=l[0].substring(1)+t;continue}e+=this.outputLink(l,n);continue}if(l=this.rules.strong.exec(t)){t=t.substring(l[0].length);e+=""+this.output(l[2]||l[1])+" ";continue}if(l=this.rules.em.exec(t)){t=t.substring(l[0].length);e+=""+this.output(l[2]||l[1])+" ";continue}if(l=this.rules.code.exec(t)){t=t.substring(l[0].length);e+=""+r(l[2],true)+"
";continue}if(l=this.rules.br.exec(t)){t=t.substring(l[0].length);e+=" ";continue}if(l=this.rules.del.exec(t)){t=t.substring(l[0].length);e+=""+this.output(l[1])+"";continue}if(l=this.rules.text.exec(t)){t=t.substring(l[0].length);e+=r(l[0]);continue}if(t){throw new Error("Infinite loop on byte: "+t.charCodeAt(0))}}return e};s.prototype.outputLink=function(t,e){if(t[0][0]!=="!"){return'"+this.output(t[1])+" "}else{return' "}};s.prototype.smartypants=function(t){if(!this.options.smartypants)return t;return t.replace(/--/g,"—").replace(/'([^']*)'/g,"‘$1’").replace(/"([^"]*)"/g,"“$1”").replace(/\.{3}/g,"…")};s.prototype.mangle=function(t){var e="",n=t.length,s=0,i;for(;s.5){i="x"+i.toString(16)}e+=""+i+";"}return e};function i(t){this.tokens=[];this.token=null;this.options=t||a.defaults}i.parse=function(t,e){var n=new i(e);return n.parse(t)};i.prototype.parse=function(t){this.inline=new s(t.links,this.options);this.tokens=t.reverse();var e="";while(this.next()){e+=this.tok()}return e};i.prototype.next=function(){return this.token=this.tokens.pop()};i.prototype.peek=function(){return this.tokens[this.tokens.length-1]||0};i.prototype.parseText=function(){var t=this.token.text;while(this.peek().type==="text"){t+="\n"+this.next().text}return this.inline.output(t)};i.prototype.tok=function(){switch(this.token.type){case"space":{return""}case"hr":{return" \n"}case"heading":{return""+this.inline.output(this.token.text)+" \n"}case"code":{if(this.options.highlight){var t=this.options.highlight(this.token.text,this.token.lang);if(t!=null&&t!==this.token.text){this.token.escaped=true;this.token.text=t}}if(!this.token.escaped){this.token.text=r(this.token.text,true)}return""+this.token.text+"
\n"}case"table":{var e="",n,s,i,l,o;e+="\n\n";for(s=0;s'+n+"\n":""+n+" \n"}e+=" \n \n";e+="\n";for(s=0;s\n";for(o=0;o'+l+"\n":""+l+" \n"}e+="\n"}e+=" \n";return"\n"}case"blockquote_start":{var e="";while(this.next().type!=="blockquote_end"){e+=this.tok()}return"\n"+e+" \n"}case"list_start":{var h=this.token.ordered?"ol":"ul",e="";while(this.next().type!=="list_end"){e+=this.tok()}return"<"+h+">\n"+e+""+h+">\n"}case"list_item_start":{var e="";while(this.next().type!=="list_item_end"){e+=this.token.type==="text"?this.parseText():this.tok()}return""+e+" \n"}case"loose_item_start":{var e="";while(this.next().type!=="list_item_end"){e+=this.tok()}return""+e+" \n"}case"html":{return!this.token.pre&&!this.options.pedantic?this.inline.output(this.token.text):this.token.text}case"paragraph":{return""+this.inline.output(this.token.text)+"
\n"}case"text":{return""+this.parseText()+"
\n"}}};function r(t,e){return t.replace(!e?/&(?!#?\w+;)/g:/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function l(t,e){t=t.source;e=e||"";return function n(s,i){if(!s)return new RegExp(t,e);i=i.source||i;i=i.replace(/(^|[^\[])\^/g,"$1");t=t.replace(s,i);return n}}function o(){}o.exec=o;function h(t){var e=1,n,s;for(;eAn error occured:
"+r(f.message+"",true)+" "}throw f}}a.options=a.setOptions=function(t){h(a.defaults,t);return a};a.defaults={gfm:true,tables:true,breaks:false,pedantic:false,sanitize:false,smartLists:false,silent:false,highlight:null,langPrefix:"lang-"};a.Parser=i;a.parser=i.parse;a.Lexer=e;a.lexer=e.lex;a.InlineLexer=s;a.inlineLexer=s.output;a.parse=a;if(typeof exports==="object"){module.exports=a}else if(typeof define==="function"&&define.amd){define(function(){return a})}else{this.marked=a}}).call(function(){return this||(typeof window!=="undefined"?window:global)}());
-
-/*!
- * base64.js
- * http://github.com/dankogai/js-base64
- */
-
-(function(r){"use strict";if(r.Base64)return;var e="2.1.2";var t;if(typeof module!=="undefined"&&module.exports){t=require("buffer").Buffer}var n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var a=function(r){var e={};for(var t=0,n=r.length;t>>6)+o(128|e&63):o(224|e>>>12&15)+o(128|e>>>6&63)+o(128|e&63)}else{var e=65536+(r.charCodeAt(0)-55296)*1024+(r.charCodeAt(1)-56320);return o(240|e>>>18&7)+o(128|e>>>12&63)+o(128|e>>>6&63)+o(128|e&63)}};var c=/[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g;var i=function(r){return r.replace(c,u)};var f=function(r){var e=[0,2,1][r.length%3],t=r.charCodeAt(0)<<16|(r.length>1?r.charCodeAt(1):0)<<8|(r.length>2?r.charCodeAt(2):0),a=[n.charAt(t>>>18),n.charAt(t>>>12&63),e>=2?"=":n.charAt(t>>>6&63),e>=1?"=":n.charAt(t&63)];return a.join("")};var h=r.btoa||function(r){return r.replace(/[\s\S]{1,3}/g,f)};var d=t?function(r){return new t(r).toString("base64")}:function(r){return h(i(r))};var v=function(r,e){return!e?d(r):d(r).replace(/[+\/]/g,function(r){return r=="+"?"-":"_"}).replace(/=/g,"")};var g=function(r){return v(r,true)};var l=new RegExp(["[À-ß][-¿]","[à-ï][-¿]{2}","[ð-÷][-¿]{3}"].join("|"),"g");var A=function(r){switch(r.length){case 4:var e=(7&r.charCodeAt(0))<<18|(63&r.charCodeAt(1))<<12|(63&r.charCodeAt(2))<<6|63&r.charCodeAt(3),t=e-65536;return o((t>>>10)+55296)+o((t&1023)+56320);case 3:return o((15&r.charCodeAt(0))<<12|(63&r.charCodeAt(1))<<6|63&r.charCodeAt(2));default:return o((31&r.charCodeAt(0))<<6|63&r.charCodeAt(1))}};var s=function(r){return r.replace(l,A)};var p=function(r){var e=r.length,t=e%4,n=(e>0?a[r.charAt(0)]<<18:0)|(e>1?a[r.charAt(1)]<<12:0)|(e>2?a[r.charAt(2)]<<6:0)|(e>3?a[r.charAt(3)]:0),u=[o(n>>>16),o(n>>>8&255),o(n&255)];u.length-=[0,0,2,1][t];return u.join("")};var C=r.atob||function(r){return r.replace(/[\s\S]{1,4}/g,p)};var b=t?function(r){return new t(r,"base64").toString()}:function(r){return s(C(r))};var B=function(r){return b(r.replace(/[-_]/g,function(r){return r=="-"?"+":"/"}).replace(/[^A-Za-z0-9\+\/]/g,""))};r.Base64={VERSION:e,atob:C,btoa:h,fromBase64:B,toBase64:v,utob:i,encode:v,encodeURI:g,btou:s,decode:B};if(typeof Object.defineProperty==="function"){var S=function(r){return{value:r,enumerable:false,writable:true,configurable:true}};r.Base64.extendString=function(){Object.defineProperty(String.prototype,"fromBase64",S(function(){return B(this)}));Object.defineProperty(String.prototype,"toBase64",S(function(r){return v(this,r)}));Object.defineProperty(String.prototype,"toBase64URI",S(function(){return v(this,true)}))}}})(this);
-
-/*!
- * node-parameterize 0.0.7
- * https://github.com/fyalavuz/node-parameterize
- * Exported as `Flatdoc.slugify`
- */
-
-(function(r){var LATIN_MAP={"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","Æ":"AE","Ç":"C","È":"E","É":"E","Ê":"E","Ë":"E","Ì":"I","Í":"I","Î":"I","Ï":"I","Ð":"D","Ñ":"N","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ő":"O","Ø":"O","Ù":"U","Ú":"U","Û":"U","Ü":"U","Ű":"U","Ý":"Y","Þ":"TH","ß":"ss","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","æ":"ae","ç":"c","è":"e","é":"e","ê":"e","ë":"e","ì":"i","í":"i","î":"i","ï":"i","ð":"d","ñ":"n","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ő":"o","ø":"o","ù":"u","ú":"u","û":"u","ü":"u","ű":"u","ý":"y","þ":"th","ÿ":"y"};var LATIN_SYMBOLS_MAP={"©":"(c)"};var GREEK_MAP={"α":"a","β":"b","γ":"g","δ":"d","ε":"e","ζ":"z","η":"h","θ":"8","ι":"i","κ":"k","λ":"l","μ":"m","ν":"n","ξ":"3","ο":"o","π":"p","ρ":"r","σ":"s","τ":"t","υ":"y","φ":"f","χ":"x","ψ":"ps","ω":"w","ά":"a","έ":"e","ί":"i","ό":"o","ύ":"y","ή":"h","ώ":"w","ς":"s","ϊ":"i","ΰ":"y","ϋ":"y","ΐ":"i","Α":"A","Β":"B","Γ":"G","Δ":"D","Ε":"E","Ζ":"Z","Η":"H","Θ":"8","Ι":"I","Κ":"K","Λ":"L","Μ":"M","Ν":"N","Ξ":"3","Ο":"O","Π":"P","Ρ":"R","Σ":"S","Τ":"T","Υ":"Y","Φ":"F","Χ":"X","Ψ":"PS","Ω":"W","Ά":"A","Έ":"E","Ί":"I","Ό":"O","Ύ":"Y","Ή":"H","Ώ":"W","Ϊ":"I","Ϋ":"Y"};var TURKISH_MAP={"ş":"s","Ş":"S","ı":"i","İ":"I","ç":"c","Ç":"C","ü":"u","Ü":"U","ö":"o","Ö":"O","ğ":"g","Ğ":"G"};var RUSSIAN_MAP={"а":"a","б":"b","в":"v","г":"g","д":"d","е":"e","ё":"yo","ж":"zh","з":"z","и":"i","й":"j","к":"k","л":"l","м":"m","н":"n","о":"o","п":"p","р":"r","с":"s","т":"t","у":"u","ф":"f","х":"h","ц":"c","ч":"ch","ш":"sh","щ":"sh","ъ":"","ы":"y","ь":"","э":"e","ю":"yu","я":"ya","А":"A","Б":"B","В":"V","Г":"G","Д":"D","Е":"E","Ё":"Yo","Ж":"Zh","З":"Z","И":"I","Й":"J","К":"K","Л":"L","М":"M","Н":"N","О":"O","П":"P","Р":"R","С":"S","Т":"T","У":"U","Ф":"F","Х":"H","Ц":"C","Ч":"Ch","Ш":"Sh","Щ":"Sh","Ъ":"","Ы":"Y","Ь":"","Э":"E","Ю":"Yu","Я":"Ya"};var UKRAINIAN_MAP={"Є":"Ye","І":"I","Ї":"Yi","Ґ":"G","є":"ye","і":"i","ї":"yi","ґ":"g"};var CZECH_MAP={"č":"c","ď":"d","ě":"e","ň":"n","ř":"r","š":"s","ť":"t","ů":"u","ž":"z","Č":"C","Ď":"D","Ě":"E","Ň":"N","Ř":"R","Š":"S","Ť":"T","Ů":"U","Ž":"Z"};var POLISH_MAP={"ą":"a","ć":"c","ę":"e","ł":"l","ń":"n","ó":"o","ś":"s","ź":"z","ż":"z","Ą":"A","Ć":"C","Ę":"e","Ł":"L","Ń":"N","Ó":"o","Ś":"S","Ź":"Z","Ż":"Z"};var LATVIAN_MAP={"ā":"a","č":"c","ē":"e","ģ":"g","ī":"i","ķ":"k","ļ":"l","ņ":"n","š":"s","ū":"u","ž":"z","Ā":"A","Č":"C","Ē":"E","Ģ":"G","Ī":"i","Ķ":"k","Ļ":"L","Ņ":"N","Š":"S","Ū":"u","Ž":"Z"};var ALL_DOWNCODE_MAPS=new Array;ALL_DOWNCODE_MAPS[0]=LATIN_MAP;ALL_DOWNCODE_MAPS[1]=LATIN_SYMBOLS_MAP;ALL_DOWNCODE_MAPS[2]=GREEK_MAP;ALL_DOWNCODE_MAPS[3]=TURKISH_MAP;ALL_DOWNCODE_MAPS[4]=RUSSIAN_MAP;ALL_DOWNCODE_MAPS[5]=UKRAINIAN_MAP;ALL_DOWNCODE_MAPS[6]=CZECH_MAP;ALL_DOWNCODE_MAPS[7]=POLISH_MAP;ALL_DOWNCODE_MAPS[8]=LATVIAN_MAP;var Downcoder=new Object;Downcoder.Initialize=function(){if(Downcoder.map)return;Downcoder.map={};Downcoder.chars="";for(var i in ALL_DOWNCODE_MAPS){var lookup=ALL_DOWNCODE_MAPS[i];for(var c in lookup){Downcoder.map[c]=lookup[c];Downcoder.chars+=c}}Downcoder.regex=new RegExp("["+Downcoder.chars+"]|[^"+Downcoder.chars+"]+","g")};downcode=function(slug){Downcoder.Initialize();var downcoded="";var pieces=slug.match(Downcoder.regex);if(pieces){for(var i=0;iarticle,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}";
-c=d.insertBefore(c.lastChild,d.firstChild);b.hasCSS=!!c}g||t(a,b);return a}var k=l.html5||{},s=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,r=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,j,o="_html5shiv",h=0,n={},g;(function(){try{var a=f.createElement("a");a.innerHTML=" ";j="hidden"in a;var b;if(!(b=1==a.childNodes.length)){f.createElement("a");var c=f.createDocumentFragment();b="undefined"==typeof c.cloneNode||
-"undefined"==typeof c.createDocumentFragment||"undefined"==typeof c.createElement}g=b}catch(d){g=j=!0}})();var e={elements:k.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup main mark meter nav output progress section summary time video",version:"3.6.2",shivCSS:!1!==k.shivCSS,supportsUnknownElements:g,shivMethods:!1!==k.shivMethods,type:"default",shivDocument:q,createElement:p,createDocumentFragment:function(a,b){a||(a=f);if(g)return a.createDocumentFragment();
-for(var b=b||i(a),c=b.frag.cloneNode(),d=0,e=m(),h=e.length;d
- fakeBody = doc.createElement( "body" ),
- div = doc.createElement( "div" );
-
- div.id = "mq-test-1";
- div.style.cssText = "position:absolute;top:-100em";
- fakeBody.style.background = "none";
- fakeBody.appendChild(div);
-
- return function(q){
-
- div.innerHTML = "";
-
- docElem.insertBefore( fakeBody, refNode );
- bool = div.offsetWidth === 42;
- docElem.removeChild( fakeBody );
-
- return {
- matches: bool,
- media: q
- };
-
- };
-
-}( document ));
-
-
-
-
-
-/*! Respond.js v1.1.0: min/max-width media query polyfill. (c) Scott Jehl. MIT/GPLv2 Lic. j.mp/respondjs */
-(function( win ){
-
- "use strict";
-
- //exposed namespace
- var respond = {};
- win.respond = respond;
-
- //define update even in native-mq-supporting browsers, to avoid errors
- respond.update = function(){};
-
- //expose media query support flag for external use
- respond.mediaQueriesSupported = win.matchMedia && win.matchMedia( "only all" ).matches;
-
- //if media queries are supported, exit here
- if( respond.mediaQueriesSupported ){
- return;
- }
-
- //define vars
- var doc = win.document,
- docElem = doc.documentElement,
- mediastyles = [],
- rules = [],
- appendedEls = [],
- parsedSheets = {},
- resizeThrottle = 30,
- head = doc.getElementsByTagName( "head" )[0] || docElem,
- base = doc.getElementsByTagName( "base" )[0],
- links = head.getElementsByTagName( "link" ),
- requestQueue = [],
-
- //loop stylesheets, send text content to translate
- ripCSS = function(){
-
- for( var i = 0; i < links.length; i++ ){
- var sheet = links[ i ],
- href = sheet.href,
- media = sheet.media,
- isCSS = sheet.rel && sheet.rel.toLowerCase() === "stylesheet";
-
- //only links plz and prevent re-parsing
- if( !!href && isCSS && !parsedSheets[ href ] ){
- // selectivizr exposes css through the rawCssText expando
- if (sheet.styleSheet && sheet.styleSheet.rawCssText) {
- translate( sheet.styleSheet.rawCssText, href, media );
- parsedSheets[ href ] = true;
- } else {
- if( (!/^([a-zA-Z:]*\/\/)/.test( href ) && !base) ||
- href.replace( RegExp.$1, "" ).split( "/" )[0] === win.location.host ){
- requestQueue.push( {
- href: href,
- media: media
- } );
- }
- }
- }
- }
- makeRequests();
- },
-
- //recurse through request queue, get css text
- makeRequests = function(){
- if( requestQueue.length ){
- var thisRequest = requestQueue.shift();
-
- ajax( thisRequest.href, function( styles ){
- translate( styles, thisRequest.href, thisRequest.media );
- parsedSheets[ thisRequest.href ] = true;
-
- // by wrapping recursive function call in setTimeout
- // we prevent "Stack overflow" error in IE7
- win.setTimeout(function(){ makeRequests(); },0);
- } );
- }
- },
-
- //find media blocks in css text, convert to style blocks
- translate = function( styles, href, media ){
- var qs = styles.match( /@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi ),
- ql = qs && qs.length || 0;
-
- //try to get CSS path
- href = href.substring( 0, href.lastIndexOf( "/" ) );
-
- var repUrls = function( css ){
- return css.replace( /(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g, "$1" + href + "$2$3" );
- },
- useMedia = !ql && media;
-
- //if path exists, tack on trailing slash
- if( href.length ){ href += "/"; }
-
- //if no internal queries exist, but media attr does, use that
- //note: this currently lacks support for situations where a media attr is specified on a link AND
- //its associated stylesheet has internal CSS media queries.
- //In those cases, the media attribute will currently be ignored.
- if( useMedia ){
- ql = 1;
- }
-
- for( var i = 0; i < ql; i++ ){
- var fullq, thisq, eachq, eql;
-
- //media attr
- if( useMedia ){
- fullq = media;
- rules.push( repUrls( styles ) );
- }
- //parse for styles
- else{
- fullq = qs[ i ].match( /@media *([^\{]+)\{([\S\s]+?)$/ ) && RegExp.$1;
- rules.push( RegExp.$2 && repUrls( RegExp.$2 ) );
- }
-
- eachq = fullq.split( "," );
- eql = eachq.length;
-
- for( var j = 0; j < eql; j++ ){
- thisq = eachq[ j ];
- mediastyles.push( {
- media : thisq.split( "(" )[ 0 ].match( /(only\s+)?([a-zA-Z]+)\s?/ ) && RegExp.$2 || "all",
- rules : rules.length - 1,
- hasquery : thisq.indexOf("(") > -1,
- minw : thisq.match( /\(\s*min\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/ ) && parseFloat( RegExp.$1 ) + ( RegExp.$2 || "" ),
- maxw : thisq.match( /\(\s*max\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/ ) && parseFloat( RegExp.$1 ) + ( RegExp.$2 || "" )
- } );
- }
- }
-
- applyMedia();
- },
-
- lastCall,
-
- resizeDefer,
-
- // returns the value of 1em in pixels
- getEmValue = function() {
- var ret,
- div = doc.createElement('div'),
- body = doc.body,
- fakeUsed = false;
-
- div.style.cssText = "position:absolute;font-size:1em;width:1em";
-
- if( !body ){
- body = fakeUsed = doc.createElement( "body" );
- body.style.background = "none";
- }
-
- body.appendChild( div );
-
- docElem.insertBefore( body, docElem.firstChild );
-
- ret = div.offsetWidth;
-
- if( fakeUsed ){
- docElem.removeChild( body );
- }
- else {
- body.removeChild( div );
- }
-
- //also update eminpx before returning
- ret = eminpx = parseFloat(ret);
-
- return ret;
- },
-
- //cached container for 1em value, populated the first time it's needed
- eminpx,
-
- //enable/disable styles
- applyMedia = function( fromResize ){
- var name = "clientWidth",
- docElemProp = docElem[ name ],
- currWidth = doc.compatMode === "CSS1Compat" && docElemProp || doc.body[ name ] || docElemProp,
- styleBlocks = {},
- lastLink = links[ links.length-1 ],
- now = (new Date()).getTime();
-
- //throttle resize calls
- if( fromResize && lastCall && now - lastCall < resizeThrottle ){
- win.clearTimeout( resizeDefer );
- resizeDefer = win.setTimeout( applyMedia, resizeThrottle );
- return;
- }
- else {
- lastCall = now;
- }
-
- for( var i in mediastyles ){
- if( mediastyles.hasOwnProperty( i ) ){
- var thisstyle = mediastyles[ i ],
- min = thisstyle.minw,
- max = thisstyle.maxw,
- minnull = min === null,
- maxnull = max === null,
- em = "em";
-
- if( !!min ){
- min = parseFloat( min ) * ( min.indexOf( em ) > -1 ? ( eminpx || getEmValue() ) : 1 );
- }
- if( !!max ){
- max = parseFloat( max ) * ( max.indexOf( em ) > -1 ? ( eminpx || getEmValue() ) : 1 );
- }
-
- // if there's no media query at all (the () part), or min or max is not null, and if either is present, they're true
- if( !thisstyle.hasquery || ( !minnull || !maxnull ) && ( minnull || currWidth >= min ) && ( maxnull || currWidth <= max ) ){
- if( !styleBlocks[ thisstyle.media ] ){
- styleBlocks[ thisstyle.media ] = [];
- }
- styleBlocks[ thisstyle.media ].push( rules[ thisstyle.rules ] );
- }
- }
- }
-
- //remove any existing respond style element(s)
- for( var j in appendedEls ){
- if( appendedEls.hasOwnProperty( j ) ){
- if( appendedEls[ j ] && appendedEls[ j ].parentNode === head ){
- head.removeChild( appendedEls[ j ] );
- }
- }
- }
-
- //inject active styles, grouped by media type
- for( var k in styleBlocks ){
- if( styleBlocks.hasOwnProperty( k ) ){
- var ss = doc.createElement( "style" ),
- css = styleBlocks[ k ].join( "\n" );
-
- ss.type = "text/css";
- ss.media = k;
-
- //originally, ss was appended to a documentFragment and sheets were appended in bulk.
- //this caused crashes in IE in a number of circumstances, such as when the HTML element had a bg image set, so appending beforehand seems best. Thanks to @dvelyk for the initial research on this one!
- head.insertBefore( ss, lastLink.nextSibling );
-
- if ( ss.styleSheet ){
- ss.styleSheet.cssText = css;
- }
- else {
- ss.appendChild( doc.createTextNode( css ) );
- }
-
- //push to appendedEls to track for later removal
- appendedEls.push( ss );
- }
- }
- },
- //tweaked Ajax functions from Quirksmode
- ajax = function( url, callback ) {
- var req = xmlHttp();
- if (!req){
- return;
- }
- req.open( "GET", url, true );
- req.onreadystatechange = function () {
- if ( req.readyState !== 4 || req.status !== 200 && req.status !== 304 ){
- return;
- }
- callback( req.responseText );
- };
- if ( req.readyState === 4 ){
- return;
- }
- req.send( null );
- },
- //define ajax obj
- xmlHttp = (function() {
- var xmlhttpmethod = false;
- try {
- xmlhttpmethod = new win.XMLHttpRequest();
- }
- catch( e ){
- xmlhttpmethod = new win.ActiveXObject( "Microsoft.XMLHTTP" );
- }
- return function(){
- return xmlhttpmethod;
- };
- })();
-
- //translate CSS
- ripCSS();
-
- //expose update for re-running respond later on
- respond.update = ripCSS;
-
- //adjust on resize
- function callMedia(){
- applyMedia( true );
- }
- if( win.addEventListener ){
- win.addEventListener( "resize", callMedia, false );
- }
- else if( win.attachEvent ){
- win.attachEvent( "onresize", callMedia );
- }
-})(this);
diff --git a/node_modules/localforage/docs/theme/localforage.css b/node_modules/localforage/docs/theme/localforage.css
deleted file mode 100644
index e26f1d5..0000000
--- a/node_modules/localforage/docs/theme/localforage.css
+++ /dev/null
@@ -1,97 +0,0 @@
-@font-face {
- font-family: 'icomoon';
- src: url("../fonts/icomoon.eot");
- src: url("../fonts/icomoon.eot?#iefix") format("embedded-opentype"),
- url("../fonts/icomoon.ttf") format("truetype"),
- url("../fonts/icomoon.woff") format("woff"),
- url("../fonts/icomoon.svg#icomoon") format("svg");
- font-weight:normal;
- font-style:normal;
-}
-
-body,
-td,
-textarea,
-input {
- font-family: "Helvetica Neue", "Open Sans", sans-serif;
- line-height: 1.6;
- font-size: 16px;
- color: #505050;
-}
-@media (max-width: 480px) {
- body,
- td,
- textarea,
- input {
- font-size: 14px;
- }
-}
-
-body:not(.no-literate) .content > pre + p,
-body:not(.no-literate) .content > blockquote + p,
-body:not(.no-literate) .content > pre + ul,
-body:not(.no-literate) .content > blockquote + ul,
-body:not(.no-literate) .content > pre + dl,
-body:not(.no-literate) .content > blockquote + dl,
-body:not(.no-literate) .content > pre + ol,
-body:not(.no-literate) .content > blockquote + ol,
-body:not(.no-literate) .content > pre + h4,
-body:not(.no-literate) .content > blockquote + h4,
-body:not(.no-literate) .content > pre + h5,
-body:not(.no-literate) .content > blockquote + h5,
-body:not(.no-literate) .content > pre + h6,
-body:not(.no-literate) .content > blockquote + h6 {
- clear: left;
-}
-
-body:not(.no-literate) .content > p,
-body:not(.no-literate) .content > ul,
-body:not(.no-literate) .content > dl,
-body:not(.no-literate) .content > ol,
-body:not(.no-literate) .content > h4,
-body:not(.no-literate) .content > h5,
-body:not(.no-literate) .content > h6 {
- float: none;
-}
-
-.content dl > dt {
- font-weight: bold;
- margin-left: -1.5em;
-}
-
-.content dl > dd {
- width: 85%;
-}
-
-aside {
- box-sizing: border-box;
- clear: left;
- display: block;
- margin: 10px 40px;
- padding: 10px;
- max-width: 50%;
-}
-
-aside a,
-aside a:focus,
-aside a:hover {
- display: inline-block;
- color: #000;
- padding: 0 1px;
- text-decoration: underline;
-}
-
-aside a:active {
- background: #f3f6fb;
-}
-
-aside.notice {
- background: #d2dbeb;
-}
-
-aside.notice::before {
- content: "\e602";
- display: inline-block;
- font-family: 'icomoon';
- margin: 0 0.5em;
-}
diff --git a/node_modules/localforage/docs/theme/script.js b/node_modules/localforage/docs/theme/script.js
deleted file mode 100644
index 7ba961e..0000000
--- a/node_modules/localforage/docs/theme/script.js
+++ /dev/null
@@ -1,243 +0,0 @@
-(function($) {
- var $window = $(window);
- var $document = $(document);
-
- /*
- * Scrollspy.
- */
-
- $document.on('flatdoc:ready', function() {
- $("h2, h3").scrollagent(function(cid, pid, currentElement, previousElement) {
- if (pid) {
- $("[href='#"+pid+"']").removeClass('active');
- }
- if (cid) {
- $("[href='#"+cid+"']").addClass('active');
- }
- });
- });
-
- /*
- * Anchor jump links.
- */
-
- $document.on('flatdoc:ready', function() {
- $('.menu a').anchorjump();
- });
-
- /*
- * Title card.
- */
-
- $(function() {
- var $card = $('.title-card');
- if (!$card.length) return;
-
- var $header = $('.header');
- var headerHeight = $header.length ? $header.outerHeight() : 0;
-
- $window
- .on('resize.title-card', function() {
- var windowWidth = $window.width();
-
- if (windowWidth < 480) {
- $card.css('height', '');
- } else {
- var height = $window.height();
- $card.css('height', height - headerHeight);
- }
- })
- .trigger('resize.title-card');
- });
-
- /*
- * Sidebar stick.
- */
-
- $(function() {
- var $sidebar = $('.menubar');
- var elTop;
-
- $window
- .on('resize.sidestick', function() {
- $sidebar.removeClass('fixed');
- elTop = $sidebar.offset().top;
- $window.trigger('scroll.sidestick');
- })
- .on('scroll.sidestick', function() {
- var scrollY = $window.scrollTop();
- $sidebar.toggleClass('fixed', (scrollY >= elTop));
- })
- .trigger('resize.sidestick');
- });
-
-})(jQuery);
-/*! jQuery.scrollagent (c) 2012, Rico Sta. Cruz. MIT License.
- * https://github.com/rstacruz/jquery-stuff/tree/master/scrollagent */
-
-// Call $(...).scrollagent() with a callback function.
-//
-// The callback will be called everytime the focus changes.
-//
-// Example:
-//
-// $("h2").scrollagent(function(cid, pid, currentElement, previousElement) {
-// if (pid) {
-// $("[href='#"+pid+"']").removeClass('active');
-// }
-// if (cid) {
-// $("[href='#"+cid+"']").addClass('active');
-// }
-// });
-
-(function($) {
-
- $.fn.scrollagent = function(options, callback) {
- // Account for $.scrollspy(function)
- if (typeof callback === 'undefined') {
- callback = options;
- options = {};
- }
-
- var $sections = $(this);
- var $parent = options.parent || $(window);
-
- // Find the top offsets of each section
- var offsets = [];
- $sections.each(function(i) {
- var offset = $(this).attr('data-anchor-offset') ?
- parseInt($(this).attr('data-anchor-offset'), 10) :
- (options.offset || 0);
-
- offsets.push({
- id: $(this).attr('id'),
- index: i,
- el: this,
- offset: offset
- });
- });
-
- // State
- var current = null;
- var height = null;
- var range = null;
-
- // Save the height. Do this only whenever the window is resized so we don't
- // recalculate often.
- $(window).on('resize', function() {
- height = $parent.height();
- range = $(document).height();
- });
-
- // Find the current active section every scroll tick.
- $parent.on('scroll', function() {
- var y = $parent.scrollTop();
- y += height * (0.3 + 0.7 * Math.pow(y/range, 2));
-
- var latest = null;
-
- for (var i in offsets) {
- if (offsets.hasOwnProperty(i)) {
- var offset = offsets[i];
- if ($(offset.el).offset().top + offset.offset < y) latest = offset;
- }
- }
-
- if (latest && (!current || (latest.index !== current.index))) {
- callback.call($sections,
- latest ? latest.id : null,
- current ? current.id : null,
- latest ? latest.el : null,
- current ? current.el : null);
- current = latest;
- }
- });
-
- $(window).trigger('resize');
- $parent.trigger('scroll');
-
- return this;
- };
-
-})(jQuery);
-/*! Anchorjump (c) 2012, Rico Sta. Cruz. MIT License.
- * http://github.com/rstacruz/jquery-stuff/tree/master/anchorjump */
-
-// Makes anchor jumps happen with smooth scrolling.
-//
-// $("#menu a").anchorjump();
-// $("#menu a").anchorjump({ offset: -30 });
-//
-// // Via delegate:
-// $("#menu").anchorjump({ for: 'a', offset: -30 });
-//
-// You may specify a parent. This makes it scroll down to the parent.
-// Great for tabbed views.
-//
-// $('#menu a').anchorjump({ parent: '.anchor' });
-//
-// You can jump to a given area.
-//
-// $.anchorjump('#bank-deposit', options);
-
-(function($) {
- var defaults = {
- 'speed': 500,
- 'offset': 0,
- 'for': null,
- 'parent': null
- };
-
- $.fn.anchorjump = function(options) {
- options = $.extend({}, defaults, options);
-
- if (options['for']) {
- this.on('click', options['for'], onClick);
- } else {
- this.on('click', onClick);
- }
-
- function onClick(e) {
- var $a = $(e.target).closest('a');
- if (e.ctrlKey || e.metaKey || e.altKey || $a.attr('target')) return;
-
- e.preventDefault();
- var href = $a.attr('href');
-
- $.anchorjump(href, options);
- }
- };
-
- // Jump to a given area.
- $.anchorjump = function(href, options) {
- options = $.extend({}, defaults, options);
-
- var top = 0;
-
- if (href != '#') {
- var $area = $(href);
- // Find the parent
- if (options.parent) {
- var $parent = $area.closest(options.parent);
- if ($parent.length) { $area = $parent; }
- }
- if (!$area.length) { return; }
-
- // Determine the pixel offset; use the default if not available
- var offset =
- $area.attr('data-anchor-offset') ?
- parseInt($area.attr('data-anchor-offset'), 10) :
- options.offset;
-
- top = Math.max(0, $area.offset().top + offset);
- }
-
- $('html, body').animate({ scrollTop: top }, options.speed);
- $('body').trigger('anchor', href);
-
- // Add the location hash via pushState.
- if (window.history.pushState) {
- window.history.pushState({ href: href }, "", href);
- }
- };
-})(jQuery);
diff --git a/node_modules/localforage/docs/theme/style.css b/node_modules/localforage/docs/theme/style.css
deleted file mode 100644
index f7d7ff7..0000000
--- a/node_modules/localforage/docs/theme/style.css
+++ /dev/null
@@ -1,891 +0,0 @@
-/*
-
-Please don't edit this file directly.
-Instead, edit the stylus (.styl) files and compile it to CSS on your machine.
-
-*/
-/* ----------------------------------------------------------------------------
- * Fonts
- */
-@import url("//fonts.googleapis.com/css?family=Montserrat:700|Open+Sans:300");
-/* ----------------------------------------------------------------------------
- * Base
- */
-html,
-body,
-div,
-span,
-applet,
-object,
-iframe,
-h1,
-h2,
-h3,
-h4,
-h5,
-h6,
-p,
-blockquote,
-pre,
-a,
-abbr,
-acronym,
-address,
-big,
-cite,
-code,
-del,
-dfn,
-em,
-img,
-ins,
-kbd,
-q,
-s,
-samp,
-small,
-strike,
-strong,
-sub,
-sup,
-tt,
-var,
-dl,
-dt,
-dd,
-ol,
-ul,
-li,
-fieldset,
-form,
-label,
-legend,
-table,
-caption,
-tbody,
-tfoot,
-thead,
-tr,
-th,
-td {
- margin: 0;
- padding: 0;
- border: 0;
- outline: 0;
- font-weight: inherit;
- font-style: inherit;
- font-family: inherit;
- font-size: 100%;
- vertical-align: baseline;
-}
-body {
- line-height: 1;
- color: #000;
- background: #fff;
-}
-ol,
-ul,
-dl {
- list-style: none;
-}
-table {
- border-collapse: separate;
- border-spacing: 0;
- vertical-align: middle;
-}
-caption,
-th,
-td {
- text-align: left;
- font-weight: normal;
- vertical-align: middle;
-}
-a img {
- border: none;
-}
-html,
-body {
- height: 100%;
-}
-html {
- overflow-x: hidden;
-}
-body,
-td,
-textarea,
-input {
- font-family: Helvetica Neue, Open Sans, sans-serif;
- line-height: 1.6;
- font-size: 13px;
- color: #505050;
-}
-@media (max-width: 480px) {
- body,
- td,
- textarea,
- input {
- font-size: 12px;
- }
-}
-a {
- color: #2badad;
- text-decoration: none;
-}
-a:hover {
- color: #228a8a;
-}
-/* ----------------------------------------------------------------------------
- * Content styling
- */
-.content p,
-.content ul,
-.content dl,
-.content ol,
-.content h1,
-.content h2,
-.content h3,
-.content h4,
-.content h5,
-.content h6,
-.content pre,
-.content blockquote {
- padding: 10px 0;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
-}
-.content h1,
-.content h2,
-.content h3,
-.content h4,
-.content h5,
-.content h6 {
- font-weight: bold;
- -webkit-font-smoothing: antialiased;
- text-rendering: optimizeLegibility;
-}
-.content pre {
- font-family: Menlo, monospace;
-}
-.content ul > li,
-.content dl > dt {
- list-style-type: disc;
-}
-.content ol > li {
- list-style-type: decimal;
-}
-.content ul,
-.content ol,
-.content dl {
- margin-left: 20px;
-}
-.content ul > li
-.content dl > dt {
- list-style-type: none;
- position: relative;
-}
-.content ul > li:before,
-.content dl > dd:before {
- content: '';
- display: block;
- position: absolute;
- left: -17px;
- top: 7px;
- width: 5px;
- height: 5px;
- -webkit-border-radius: 4px;
- border-radius: 4px;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- background: #fff;
- border: solid 1px #9090aa;
-}
-.content li > :first-child {
- padding-top: 0;
-}
-.content strong,
-.content b {
- font-weight: bold;
-}
-.content i,
-.content em {
- font-style: italic;
- color: #9090aa;
-}
-.content code {
- font-family: Menlo, monospace;
- background: #f3f6fb;
- padding: 1px 3px;
- font-size: 0.95em;
-}
-.content pre > code {
- display: block;
- background: transparent;
- font-size: 0.85em;
- letter-spacing: -1px;
-}
-.content blockquote :first-child {
- padding-top: 0;
-}
-.content blockquote :last-child {
- padding-bottom: 0;
-}
-.content table {
- margin-top: 10px;
- margin-bottom: 10px;
- padding: 0;
- border-collapse: collapse;
- clear: both;
-}
-.content table tr {
- border-top: 1px solid #ccc;
- background-color: #fff;
- margin: 0;
- padding: 0;
-}
-.content table tr :nth-child(2n) {
- background-color: #f8f8f8;
-}
-.content table tr th {
- text-align: auto;
- font-weight: bold;
- border: 1px solid #ccc;
- margin: 0;
- padding: 6px 13px;
-}
-.content table tr td {
- text-align: auto;
- border: 1px solid #ccc;
- margin: 0;
- padding: 6px 13px;
-}
-.content table tr th :first-child,
-.content table tr td :first-child {
- margin-top: 0;
-}
-.content table tr th :last-child,
-.content table tr td :last-child {
- margin-bottom: 0;
-}
-/* ----------------------------------------------------------------------------
- * Content
- */
-.content-root {
- min-height: 90%;
- position: relative;
-}
-.content {
- padding-top: 30px;
- padding-bottom: 40px;
- padding-left: 40px;
- padding-right: 40px;
- zoom: 1;
- max-width: 700px;
-}
-.content:before,
-.content:after {
- content: "";
- display: table;
-}
-.content:after {
- clear: both;
-}
-.content blockquote {
- color: #9090aa;
- text-shadow: 0 1px 0 rgba(255,255,255,0.5);
-}
-.content h1,
-.content h2,
-.content h3 {
- -webkit-font-smoothing: antialiased;
- text-rendering: optimizeLegibility;
- font-family: montserrat;
- padding-bottom: 0;
-}
-.content h1 + p,
-.content h2 + p,
-.content h3 + p,
-.content h1 ul,
-.content h2 ul,
-.content h3 ul,
-.content h1 ol,
-.content h2 ol,
-.content h3 ol,
-.content h1 dl,
-.content h2 dl,
-.content h3 dl {
- padding-top: 10px;
-}
-.content h1,
-.content h2 {
- text-transform: uppercase;
- letter-spacing: 1px;
- font-size: 1.5em;
-}
-.content h3 {
- font-size: 1.2em;
-}
-.content h1,
-.content h2,
-.content .big-heading,
-body.big-h3 .content h3 {
- padding-top: 80px;
-}
-.content h1:before,
-.content h2:before,
-.content .big-heading:before,
-body.big-h3 .content h3:before {
- display: block;
- content: '';
- background: -webkit-gradient(linear, left top, right top, color-stop(0.8, #dfe2e7), color-stop(1, rgba(223,226,231,0)));
- background: -webkit-linear-gradient(left, #dfe2e7 80%, rgba(223,226,231,0) 100%);
- background: -moz-linear-gradient(left, #dfe2e7 80%, rgba(223,226,231,0) 100%);
- background: -o-linear-gradient(left, #dfe2e7 80%, rgba(223,226,231,0) 100%);
- background: -ms-linear-gradient(left, #dfe2e7 80%, rgba(223,226,231,0) 100%);
- background: linear-gradient(left, #dfe2e7 80%, rgba(223,226,231,0) 100%);
- -webkit-box-shadow: 0 1px 0 rgba(255,255,255,0.4);
- box-shadow: 0 1px 0 rgba(255,255,255,0.4);
- height: 1px;
- position: relative;
- top: -40px;
- left: -40px;
- width: 100%;
-}
-@media (max-width: 768px) {
- .content h1,
- .content h2,
- .content .big-heading,
-body.big-h3 .content h3 {
- padding-top: 40px;
- }
- .content h1:before,
- .content h2:before,
- .content .big-heading:before,
-body.big-h3 .content h3:before {
- background: #dfe2e7;
- left: -40px;
- top: -20px;
- width: 120%;
- }
-}
-.content h4,
-.content h5,
-.content .small-heading,
-body:not(.big-h3) .content h3 {
- border-bottom: solid 1px rgba(0,0,0,0.07);
- color: #9090aa;
- padding-top: 30px;
- padding-bottom: 10px;
-}
-body:not(.big-h3) .content h3 {
- font-size: 0.9em;
-}
-.content h1:first-child {
- padding-top: 0;
-}
-.content h1:first-child,
-.content h1:first-child a,
-.content h1:first-child a:visited {
- color: #505050;
-}
-.content h1:first-child:before {
- display: none;
-}
-@media (max-width: 768px) {
- .content h4,
- .content h5,
- .content .small-heading,
- body:not(.big-h3) .content h3 {
- padding-top: 20px;
- }
-}
-@media (max-width: 480px) {
- .content {
- padding: 20px;
- padding-top: 40px;
- }
- .content h4,
- .content h5,
- .content .small-heading,
- body:not(.big-h3) .content h3 {
- padding-top: 10px;
- }
-}
-body.no-literate .content pre > code {
- background: #f3f6fb;
- border: solid 1px #e7eaee;
- border-top: solid 1px #dbdde2;
- border-left: solid 1px #e2e5e9;
- display: block;
- padding: 10px;
- -webkit-border-radius: 2px;
- border-radius: 2px;
- overflow: auto;
-}
-body.no-literate .content pre > code {
- -webkit-overflow-scrolling: touch;
-}
-body.no-literate .content pre > code::-webkit-scrollbar {
- width: 15px;
- height: 15px;
-}
-body.no-literate .content pre > code::-webkit-scrollbar-thumb {
- background: #ddd;
- -webkit-border-radius: 8px;
- border-radius: 8px;
- border: solid 4px #f3f6fb;
-}
-body.no-literate .content pre > code:hover::-webkit-scrollbar-thumb {
- background: #999;
- -webkit-box-shadow: inset 2px 2px 3px rgba(0,0,0,0.2);
- box-shadow: inset 2px 2px 3px rgba(0,0,0,0.2);
-}
-@media (max-width: 1180px) {
- .content pre > code {
- background: #f3f6fb;
- border: solid 1px #e7eaee;
- border-top: solid 1px #dbdde2;
- border-left: solid 1px #e2e5e9;
- display: block;
- padding: 10px;
- -webkit-border-radius: 2px;
- border-radius: 2px;
- overflow: auto;
- }
- .content pre > code {
- -webkit-overflow-scrolling: touch;
- }
- .content pre > code::-webkit-scrollbar {
- width: 15px;
- height: 15px;
- }
- .content pre > code::-webkit-scrollbar-thumb {
- background: #ddd;
- -webkit-border-radius: 8px;
- border-radius: 8px;
- border: solid 4px #f3f6fb;
- }
- .content pre > code:hover::-webkit-scrollbar-thumb {
- background: #999;
- -webkit-box-shadow: inset 2px 2px 3px rgba(0,0,0,0.2);
- box-shadow: inset 2px 2px 3px rgba(0,0,0,0.2);
- }
-}
-.button {
- -webkit-font-smoothing: antialiased;
- text-rendering: optimizeLegibility;
- font-family: montserrat, sans-serif;
- letter-spacing: -1px;
- font-weight: bold;
- display: inline-block;
- padding: 3px 25px;
- border: solid 2px #2badad;
- -webkit-border-radius: 20px;
- border-radius: 20px;
- margin-right: 15px;
-}
-.button,
-.button:visited {
- background: #2badad;
- color: #fff;
- text-shadow: none;
-}
-.button:hover {
- border-color: #111;
- background: #111;
- color: #fff;
-}
-.button.light,
-.button.light:visited {
- background: transparent;
- color: #9090aa;
- border-color: #9090aa;
- text-shadow: none;
-}
-.button.light:hover {
- border-color: #9090aa;
- background: #9090aa;
- color: #fff;
-}
-.content .button + em {
- color: #9090aa;
-}
-@media (min-width: 1180px) {
- body:not(.no-literate) .content-root {
- background-color: #f3f6fb;
- -webkit-box-shadow: inset 780px 0 #fff, inset 781px 0 #dfe2e7, inset 790px 0 5px -10px rgba(0,0,0,0.1);
- box-shadow: inset 780px 0 #fff, inset 781px 0 #dfe2e7, inset 790px 0 5px -10px rgba(0,0,0,0.1);
- }
-}
-@media (min-width: 1180px) {
- body:not(.no-literate) .content {
- padding-left: 0;
- padding-right: 0;
- width: 930px;
- max-width: none;
- }
- body:not(.no-literate) .content > p,
- body:not(.no-literate) .content > ul,
- body:not(.no-literate) .content > dl,
- body:not(.no-literate) .content > ol,
- body:not(.no-literate) .content > h1,
- body:not(.no-literate) .content > h2,
- body:not(.no-literate) .content > h3,
- body:not(.no-literate) .content > h4,
- body:not(.no-literate) .content > h5,
- body:not(.no-literate) .content > h6,
- body:not(.no-literate) .content > pre,
- body:not(.no-literate) .content > blockquote {
- width: 550px;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- padding-right: 40px;
- padding-left: 40px;
- }
- body:not(.no-literate) .content > h1,
- body:not(.no-literate) .content > h2,
- body:not(.no-literate) .content > h3 {
- clear: both;
- width: 100%;
- }
- body:not(.no-literate) .content > pre,
- body:not(.no-literate) .content > blockquote {
- width: 380px;
- padding-left: 20px;
- padding-right: 20px;
- float: right;
- clear: right;
- }
- body:not(.no-literate) .content > pre + p,
- body:not(.no-literate) .content > blockquote + p,
- body:not(.no-literate) .content > pre + ul,
- body:not(.no-literate) .content > blockquote + ul,
- body:not(.no-literate) .content > pre + dl,
- body:not(.no-literate) .content > blockquote + dl,
- body:not(.no-literate) .content > pre + ol,
- body:not(.no-literate) .content > blockquote + ol,
- body:not(.no-literate) .content > pre + h4,
- body:not(.no-literate) .content > blockquote + h4,
- body:not(.no-literate) .content > pre + h5,
- body:not(.no-literate) .content > blockquote + h5,
- body:not(.no-literate) .content > pre + h6,
- body:not(.no-literate) .content > blockquote + h6 {
- clear: both;
- }
- body:not(.no-literate) .content > p,
- body:not(.no-literate) .content > ul,
- body:not(.no-literate) .content > dl,
- body:not(.no-literate) .content > ol,
- body:not(.no-literate) .content > h4,
- body:not(.no-literate) .content > h5,
- body:not(.no-literate) .content > h6 {
- float: left;
- clear: left;
- }
- body:not(.no-literate) .content > h4,
- body:not(.no-literate) .content > h5,
- body:not(.no-literate) .content > .small-heading,
- body:not(.big-h3) body:not(.no-literate) .content > h3 {
- margin-left: 40px;
- width: 470px;
- margin-bottom: 3px;
- padding-left: 0;
- padding-right: 0;
- }
- body:not(.no-literate) .content > table {
- margin-left: 40px;
- margin-right: 40px;
- max-width: 470px;
- }
- body:not(.no-literate):not(.big-h3) .content > h3 {
- margin-left: 40px;
- width: 470px;
- margin-bottom: 3px;
- padding-left: 0;
- padding-right: 0;
- }
-}
-.header {
- background: #f3f6fb;
- text-shadow: 0 1px 0 rgba(255,255,255,0.5);
- border-bottom: solid 1px #dfe2e7;
- padding: 15px 15px 15px 30px;
- zoom: 1;
- line-height: 20px;
- position: relative;
-}
-.header:before,
-.header:after {
- content: "";
- display: table;
-}
-.header:after {
- clear: both;
-}
-.header .left {
- float: left;
-}
-.header .right {
- text-align: right;
- position: absolute;
- right: 15px;
- top: 15px;
-}
-.header .right iframe {
- display: inline-block;
- vertical-align: middle;
-}
-.header h1 {
- -webkit-font-smoothing: antialiased;
- text-rendering: optimizeLegibility;
- font-weight: bold;
- font-family: montserrat, sans-serif;
- font-size: 13px;
-}
-.header h1,
-.header h1 a,
-.header h1 a:visited {
- color: #9090aa;
-}
-.header h1 a:hover {
- color: #505050;
-}
-.header li a {
- font-size: 0.88em;
- color: #9090aa;
- display: block;
-}
-.header li a:hover {
- color: #3a3a44;
-}
-@media (min-width: 480px) {
- .header h1 {
- float: left;
- }
- .header ul,
- .header li {
- display: block;
- float: left;
- }
- .header ul {
- margin-left: -15px;
- }
- .header h1 + ul {
- border-left: solid 1px #dfe2e7;
- margin-left: 15px;
- }
- .header li {
- border-left: solid 1px rgba(255,255,255,0.5);
- border-right: solid 1px #dfe2e7;
- }
- .header li:last-child {
- border-right: 0;
- }
- .header li a {
- padding: 0 15px;
- }
-}
-@media (max-width: 480px) {
- .right {
- display: none;
- }
-}
-.menubar {
- -webkit-font-smoothing: antialiased;
- text-rendering: optimizeLegibility;
-}
-.menubar .section {
- padding: 30px 30px;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
-}
-.menubar .section + .section {
- border-top: solid 1px #dfe2e7;
-}
-.menubar .section.no-line {
- border-top: 0;
- padding-top: 0;
-}
-a.big.button {
- display: block;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- width: 100%;
- padding: 10px 20px;
- text-align: center;
- font-weight: bold;
- font-size: 1.1em;
- background: transparent;
- border: solid 3px #2badad;
- -webkit-border-radius: 30px;
- border-radius: 30px;
- font-family: montserrat, sans-serif;
-}
-a.big.button,
-a.big.button:visited {
- color: #2badad;
- text-decoration: none;
-}
-a.big.button:hover {
- background: #2badad;
-}
-a.big.button:hover,
-a.big.button:hover:visited {
- color: #fff;
-}
-@media (max-width: 480px) {
- .menubar {
- padding: 20px;
- border-bottom: solid 1px #dfe2e7;
- }
-}
-@media (max-width: 768px) {
- .menubar {
- display: none;
- }
-}
-@media (min-width: 768px) {
- .content-root {
- padding-left: 230px;
- }
- .menubar {
- position: absolute;
- left: 0;
- top: 0;
- bottom: 0;
- width: 230px;
- border-right: solid 1px #dfe2e7;
- }
- .menubar.fixed {
- position: fixed;
- overflow-y: auto;
- }
- .menubar.fixed {
- -webkit-overflow-scrolling: touch;
- }
- .menubar.fixed::-webkit-scrollbar {
- width: 15px;
- height: 15px;
- }
- .menubar.fixed::-webkit-scrollbar-thumb {
- background: #ddd;
- -webkit-border-radius: 8px;
- border-radius: 8px;
- border: solid 4px #fff;
- }
- .menubar.fixed:hover::-webkit-scrollbar-thumb {
- background: #999;
- -webkit-box-shadow: inset 2px 2px 3px rgba(0,0,0,0.2);
- box-shadow: inset 2px 2px 3px rgba(0,0,0,0.2);
- }
-}
-.menubar {
- font-size: 0.9em;
-}
-.menu ul.level-1 > li + li {
- margin-top: 20px;
-}
-.menu a {
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- position: relative;
- display: block;
- padding-top: 1px;
- padding-bottom: 1px;
- margin-right: -30px;
-}
-.menu a,
-.menu a:visited {
- color: #2badad;
-}
-.menu a:hover {
- color: #228a8a;
-}
-.menu a.level-1 {
- font-family: montserrat, sans-serif;
- text-transform: uppercase;
- font-size: 0.9em;
- font-weight: bold;
-}
-.menu a.level-1,
-.menu a.level-1:visited {
- color: #9090aa;
-}
-.menu a.level-1:hover {
- color: #565666;
-}
-.menu a.level-2 {
- font-weight: normal;
-}
-.menu a.level-3 {
- font-weight: normal;
- font-size: 0.9em;
- padding-left: 10px;
-}
-.menu a.active {
- font-weight: bold !important;
-}
-.menu a.active,
-.menu a.active:visited,
-.menu a.active:hover {
- color: #505050 !important;
-}
-.menu a.active:after {
- content: '';
- display: block;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- position: absolute;
- top: 10px;
- right: 30px;
- width: 9px;
- height: 3px;
- -webkit-border-radius: 2px;
- border-radius: 2px;
- background: #2badad;
-}
-code .string,
-code .number {
- color: #3ac;
-}
-code .init {
- color: #383;
-}
-code .keyword {
- font-weight: bold;
-}
-code .comment {
- color: #adadcc;
-}
-.large-brief .content > h1:first-child + p,
-.content > p.brief {
- font-size: 1.3em;
- font-family: Open Sans, sans-serif;
- font-weight: 300;
-}
-.title-area {
- min-height: 100px;
- -webkit-box-sizing: border-box;
- -moz-box-sizing: border-box;
- box-sizing: border-box;
- -webkit-font-smoothing: antialiased;
- text-rendering: optimizeLegibility;
- text-align: center;
- border-bottom: solid 1px #dfe2e7;
- overflow: hidden;
-}
-.title-area > img.bg {
- z-index: 0;
- position: absolute;
- left: -9999px;
-}
-.title-area > div {
- position: relative;
- z-index: 1;
-}
diff --git a/node_modules/localforage/examples/dbquota-error.html b/node_modules/localforage/examples/dbquota-error.html
deleted file mode 100644
index 07f7aec..0000000
--- a/node_modules/localforage/examples/dbquota-error.html
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
-
- Simple localForage example
-
-
-
-
-
-
diff --git a/node_modules/localforage/examples/dropInstance.html b/node_modules/localforage/examples/dropInstance.html
deleted file mode 100644
index 2f5aff2..0000000
--- a/node_modules/localforage/examples/dropInstance.html
+++ /dev/null
@@ -1,61 +0,0 @@
-
-
-
-
- LocalForage dropInstance example
-
-
-
-
-
-
diff --git a/node_modules/localforage/examples/index.html b/node_modules/localforage/examples/index.html
deleted file mode 100644
index 20ccd9e..0000000
--- a/node_modules/localforage/examples/index.html
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
- Simple localForage example
-
-
-
-
-
-
diff --git a/node_modules/localforage/examples/indexeddb-invalidstate.html b/node_modules/localforage/examples/indexeddb-invalidstate.html
deleted file mode 100644
index cb49cc7..0000000
--- a/node_modules/localforage/examples/indexeddb-invalidstate.html
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
- Simple localForage example
-
-
-
-
-
-
diff --git a/node_modules/localforage/examples/main.js b/node_modules/localforage/examples/main.js
deleted file mode 100644
index 3c02a5e..0000000
--- a/node_modules/localforage/examples/main.js
+++ /dev/null
@@ -1,36 +0,0 @@
-requirejs.config({
- paths: {
- localforage: './../dist/localforage'
- }
-});
-define(['localforage'], function(lf) {
- lf.ready(function() {
- var key = 'STORE_KEY';
- var value = 'What we save offline';
- var UNKNOWN_KEY = 'unknown_key';
-
- lf.setItem(key, value, function() {
- console.log('SAVING', value);
-
- lf.getItem(key, function(readValue) {
- console.log('READING', readValue);
- });
- });
-
- // Promises code.
- lf.setItem('promise', 'ring', function() {
- lf.getItem('promise').then(function(readValue) {
- console.log('YOU PROMISED!', readValue);
- });
- });
-
- // Since this key hasn't been set yet, we'll get a null value
- lf.getItem(UNKNOWN_KEY, function(readValue) {
- console.log('FAILED READING', UNKNOWN_KEY, readValue);
- });
- });
-
- lf.ready().then(function() {
- console.log("You can use ready from Promises too");
- })
-});
diff --git a/node_modules/localforage/examples/no-driver.html b/node_modules/localforage/examples/no-driver.html
deleted file mode 100644
index fd72e58..0000000
--- a/node_modules/localforage/examples/no-driver.html
+++ /dev/null
@@ -1,45 +0,0 @@
-
-
-
-
- localForage no available driver example
-
-
-
-
-
-
-
diff --git a/node_modules/localforage/examples/polyfill.html b/node_modules/localforage/examples/polyfill.html
deleted file mode 100644
index 930ff25..0000000
--- a/node_modules/localforage/examples/polyfill.html
+++ /dev/null
@@ -1,53 +0,0 @@
-
-
-
-
- Simple localForage example
-
-
-
-
-
-
-
-
diff --git a/node_modules/localforage/examples/require.html b/node_modules/localforage/examples/require.html
deleted file mode 100644
index 3f1c901..0000000
--- a/node_modules/localforage/examples/require.html
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
-
- require.js localForage example
-
-
-
-
-
diff --git a/node_modules/localforage/examples/require.js b/node_modules/localforage/examples/require.js
deleted file mode 100644
index c7c2b49..0000000
--- a/node_modules/localforage/examples/require.js
+++ /dev/null
@@ -1,2020 +0,0 @@
-/** vim: et:ts=4:sw=4:sts=4
- * @license RequireJS 2.1.5 Copyright (c) 2010-2012, The Dojo Foundation All Rights Reserved.
- * Available via the MIT or new BSD license.
- * see: http://github.com/jrburke/requirejs for details
- */
-//Not using strict: uneven strict support in browsers, #392, and causes
-//problems with requirejs.exec()/transpiler plugins that may not be strict.
-/*jslint regexp: true, nomen: true, sloppy: true */
-/*global window, navigator, document, importScripts, setTimeout, opera */
-
-var requirejs, require, define;
-(function (global) {
- var req, s, head, baseElement, dataMain, src,
- interactiveScript, currentlyAddingScript, mainScript, subPath,
- version = '2.1.5',
- commentRegExp = /(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg,
- cjsRequireRegExp = /[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,
- jsSuffixRegExp = /\.js$/,
- currDirRegExp = /^\.\//,
- op = Object.prototype,
- ostring = op.toString,
- hasOwn = op.hasOwnProperty,
- ap = Array.prototype,
- apsp = ap.splice,
- isBrowser = !!(typeof window !== 'undefined' && navigator && document),
- isWebWorker = !isBrowser && typeof importScripts !== 'undefined',
- //PS3 indicates loaded and complete, but need to wait for complete
- //specifically. Sequence is 'loading', 'loaded', execution,
- // then 'complete'. The UA check is unfortunate, but not sure how
- //to feature test w/o causing perf issues.
- readyRegExp = isBrowser && navigator.platform === 'PLAYSTATION 3' ?
- /^complete$/ : /^(complete|loaded)$/,
- defContextName = '_',
- //Oh the tragedy, detecting opera. See the usage of isOpera for reason.
- isOpera = typeof opera !== 'undefined' && opera.toString() === '[object Opera]',
- contexts = {},
- cfg = {},
- globalDefQueue = [],
- useInteractive = false;
-
- function isFunction(it) {
- return ostring.call(it) === '[object Function]';
- }
-
- function isArray(it) {
- return ostring.call(it) === '[object Array]';
- }
-
- /**
- * Helper function for iterating over an array. If the func returns
- * a true value, it will break out of the loop.
- */
- function each(ary, func) {
- if (ary) {
- var i;
- for (i = 0; i < ary.length; i += 1) {
- if (ary[i] && func(ary[i], i, ary)) {
- break;
- }
- }
- }
- }
-
- /**
- * Helper function for iterating over an array backwards. If the func
- * returns a true value, it will break out of the loop.
- */
- function eachReverse(ary, func) {
- if (ary) {
- var i;
- for (i = ary.length - 1; i > -1; i -= 1) {
- if (ary[i] && func(ary[i], i, ary)) {
- break;
- }
- }
- }
- }
-
- function hasProp(obj, prop) {
- return hasOwn.call(obj, prop);
- }
-
- function getOwn(obj, prop) {
- return hasProp(obj, prop) && obj[prop];
- }
-
- /**
- * Cycles over properties in an object and calls a function for each
- * property value. If the function returns a truthy value, then the
- * iteration is stopped.
- */
- function eachProp(obj, func) {
- var prop;
- for (prop in obj) {
- if (hasProp(obj, prop)) {
- if (func(obj[prop], prop)) {
- break;
- }
- }
- }
- }
-
- /**
- * Simple function to mix in properties from source into target,
- * but only if target does not already have a property of the same name.
- */
- function mixin(target, source, force, deepStringMixin) {
- if (source) {
- eachProp(source, function (value, prop) {
- if (force || !hasProp(target, prop)) {
- if (deepStringMixin && typeof value !== 'string') {
- if (!target[prop]) {
- target[prop] = {};
- }
- mixin(target[prop], value, force, deepStringMixin);
- } else {
- target[prop] = value;
- }
- }
- });
- }
- return target;
- }
-
- //Similar to Function.prototype.bind, but the 'this' object is specified
- //first, since it is easier to read/figure out what 'this' will be.
- function bind(obj, fn) {
- return function () {
- return fn.apply(obj, arguments);
- };
- }
-
- function scripts() {
- return document.getElementsByTagName('script');
- }
-
- //Allow getting a global that expressed in
- //dot notation, like 'a.b.c'.
- function getGlobal(value) {
- if (!value) {
- return value;
- }
- var g = global;
- each(value.split('.'), function (part) {
- g = g[part];
- });
- return g;
- }
-
- /**
- * Constructs an error with a pointer to an URL with more information.
- * @param {String} id the error ID that maps to an ID on a web page.
- * @param {String} message human readable error.
- * @param {Error} [err] the original error, if there is one.
- *
- * @returns {Error}
- */
- function makeError(id, msg, err, requireModules) {
- var e = new Error(msg + '\nhttp://requirejs.org/docs/errors.html#' + id);
- e.requireType = id;
- e.requireModules = requireModules;
- if (err) {
- e.originalError = err;
- }
- return e;
- }
-
- if (typeof define !== 'undefined') {
- //If a define is already in play via another AMD loader,
- //do not overwrite.
- return;
- }
-
- if (typeof requirejs !== 'undefined') {
- if (isFunction(requirejs)) {
- //Do not overwrite and existing requirejs instance.
- return;
- }
- cfg = requirejs;
- requirejs = undefined;
- }
-
- //Allow for a require config object
- if (typeof require !== 'undefined' && !isFunction(require)) {
- //assume it is a config object.
- cfg = require;
- require = undefined;
- }
-
- function newContext(contextName) {
- var inCheckLoaded, Module, context, handlers,
- checkLoadedTimeoutId,
- config = {
- //Defaults. Do not set a default for map
- //config to speed up normalize(), which
- //will run faster if there is no default.
- waitSeconds: 7,
- baseUrl: './',
- paths: {},
- pkgs: {},
- shim: {},
- config: {}
- },
- registry = {},
- //registry of just enabled modules, to speed
- //cycle breaking code when lots of modules
- //are registered, but not activated.
- enabledRegistry = {},
- undefEvents = {},
- defQueue = [],
- defined = {},
- urlFetched = {},
- requireCounter = 1,
- unnormalizedCounter = 1;
-
- /**
- * Trims the . and .. from an array of path segments.
- * It will keep a leading path segment if a .. will become
- * the first path segment, to help with module name lookups,
- * which act like paths, but can be remapped. But the end result,
- * all paths that use this function should look normalized.
- * NOTE: this method MODIFIES the input array.
- * @param {Array} ary the array of path segments.
- */
- function trimDots(ary) {
- var i, part;
- for (i = 0; ary[i]; i += 1) {
- part = ary[i];
- if (part === '.') {
- ary.splice(i, 1);
- i -= 1;
- } else if (part === '..') {
- if (i === 1 && (ary[2] === '..' || ary[0] === '..')) {
- //End of the line. Keep at least one non-dot
- //path segment at the front so it can be mapped
- //correctly to disk. Otherwise, there is likely
- //no path mapping for a path starting with '..'.
- //This can still fail, but catches the most reasonable
- //uses of ..
- break;
- } else if (i > 0) {
- ary.splice(i - 1, 2);
- i -= 2;
- }
- }
- }
- }
-
- /**
- * Given a relative module name, like ./something, normalize it to
- * a real name that can be mapped to a path.
- * @param {String} name the relative name
- * @param {String} baseName a real name that the name arg is relative
- * to.
- * @param {Boolean} applyMap apply the map config to the value. Should
- * only be done if this normalization is for a dependency ID.
- * @returns {String} normalized name
- */
- function normalize(name, baseName, applyMap) {
- var pkgName, pkgConfig, mapValue, nameParts, i, j, nameSegment,
- foundMap, foundI, foundStarMap, starI,
- baseParts = baseName && baseName.split('/'),
- normalizedBaseParts = baseParts,
- map = config.map,
- starMap = map && map['*'];
-
- //Adjust any relative paths.
- if (name && name.charAt(0) === '.') {
- //If have a base name, try to normalize against it,
- //otherwise, assume it is a top-level require that will
- //be relative to baseUrl in the end.
- if (baseName) {
- if (getOwn(config.pkgs, baseName)) {
- //If the baseName is a package name, then just treat it as one
- //name to concat the name with.
- normalizedBaseParts = baseParts = [baseName];
- } else {
- //Convert baseName to array, and lop off the last part,
- //so that . matches that 'directory' and not name of the baseName's
- //module. For instance, baseName of 'one/two/three', maps to
- //'one/two/three.js', but we want the directory, 'one/two' for
- //this normalization.
- normalizedBaseParts = baseParts.slice(0, baseParts.length - 1);
- }
-
- name = normalizedBaseParts.concat(name.split('/'));
- trimDots(name);
-
- //Some use of packages may use a . path to reference the
- //'main' module name, so normalize for that.
- pkgConfig = getOwn(config.pkgs, (pkgName = name[0]));
- name = name.join('/');
- if (pkgConfig && name === pkgName + '/' + pkgConfig.main) {
- name = pkgName;
- }
- } else if (name.indexOf('./') === 0) {
- // No baseName, so this is ID is resolved relative
- // to baseUrl, pull off the leading dot.
- name = name.substring(2);
- }
- }
-
- //Apply map config if available.
- if (applyMap && map && (baseParts || starMap)) {
- nameParts = name.split('/');
-
- for (i = nameParts.length; i > 0; i -= 1) {
- nameSegment = nameParts.slice(0, i).join('/');
-
- if (baseParts) {
- //Find the longest baseName segment match in the config.
- //So, do joins on the biggest to smallest lengths of baseParts.
- for (j = baseParts.length; j > 0; j -= 1) {
- mapValue = getOwn(map, baseParts.slice(0, j).join('/'));
-
- //baseName segment has config, find if it has one for
- //this name.
- if (mapValue) {
- mapValue = getOwn(mapValue, nameSegment);
- if (mapValue) {
- //Match, update name to the new value.
- foundMap = mapValue;
- foundI = i;
- break;
- }
- }
- }
- }
-
- if (foundMap) {
- break;
- }
-
- //Check for a star map match, but just hold on to it,
- //if there is a shorter segment match later in a matching
- //config, then favor over this star map.
- if (!foundStarMap && starMap && getOwn(starMap, nameSegment)) {
- foundStarMap = getOwn(starMap, nameSegment);
- starI = i;
- }
- }
-
- if (!foundMap && foundStarMap) {
- foundMap = foundStarMap;
- foundI = starI;
- }
-
- if (foundMap) {
- nameParts.splice(0, foundI, foundMap);
- name = nameParts.join('/');
- }
- }
-
- return name;
- }
-
- function removeScript(name) {
- if (isBrowser) {
- each(scripts(), function (scriptNode) {
- if (scriptNode.getAttribute('data-requiremodule') === name &&
- scriptNode.getAttribute('data-requirecontext') === context.contextName) {
- scriptNode.parentNode.removeChild(scriptNode);
- return true;
- }
- });
- }
- }
-
- function hasPathFallback(id) {
- var pathConfig = getOwn(config.paths, id);
- if (pathConfig && isArray(pathConfig) && pathConfig.length > 1) {
- removeScript(id);
- //Pop off the first array value, since it failed, and
- //retry
- pathConfig.shift();
- context.require.undef(id);
- context.require([id]);
- return true;
- }
- }
-
- //Turns a plugin!resource to [plugin, resource]
- //with the plugin being undefined if the name
- //did not have a plugin prefix.
- function splitPrefix(name) {
- var prefix,
- index = name ? name.indexOf('!') : -1;
- if (index > -1) {
- prefix = name.substring(0, index);
- name = name.substring(index + 1, name.length);
- }
- return [prefix, name];
- }
-
- /**
- * Creates a module mapping that includes plugin prefix, module
- * name, and path. If parentModuleMap is provided it will
- * also normalize the name via require.normalize()
- *
- * @param {String} name the module name
- * @param {String} [parentModuleMap] parent module map
- * for the module name, used to resolve relative names.
- * @param {Boolean} isNormalized: is the ID already normalized.
- * This is true if this call is done for a define() module ID.
- * @param {Boolean} applyMap: apply the map config to the ID.
- * Should only be true if this map is for a dependency.
- *
- * @returns {Object}
- */
- function makeModuleMap(name, parentModuleMap, isNormalized, applyMap) {
- var url, pluginModule, suffix, nameParts,
- prefix = null,
- parentName = parentModuleMap ? parentModuleMap.name : null,
- originalName = name,
- isDefine = true,
- normalizedName = '';
-
- //If no name, then it means it is a require call, generate an
- //internal name.
- if (!name) {
- isDefine = false;
- name = '_@r' + (requireCounter += 1);
- }
-
- nameParts = splitPrefix(name);
- prefix = nameParts[0];
- name = nameParts[1];
-
- if (prefix) {
- prefix = normalize(prefix, parentName, applyMap);
- pluginModule = getOwn(defined, prefix);
- }
-
- //Account for relative paths if there is a base name.
- if (name) {
- if (prefix) {
- if (pluginModule && pluginModule.normalize) {
- //Plugin is loaded, use its normalize method.
- normalizedName = pluginModule.normalize(name, function (name) {
- return normalize(name, parentName, applyMap);
- });
- } else {
- normalizedName = normalize(name, parentName, applyMap);
- }
- } else {
- //A regular module.
- normalizedName = normalize(name, parentName, applyMap);
-
- //Normalized name may be a plugin ID due to map config
- //application in normalize. The map config values must
- //already be normalized, so do not need to redo that part.
- nameParts = splitPrefix(normalizedName);
- prefix = nameParts[0];
- normalizedName = nameParts[1];
- isNormalized = true;
-
- url = context.nameToUrl(normalizedName);
- }
- }
-
- //If the id is a plugin id that cannot be determined if it needs
- //normalization, stamp it with a unique ID so two matching relative
- //ids that may conflict can be separate.
- suffix = prefix && !pluginModule && !isNormalized ?
- '_unnormalized' + (unnormalizedCounter += 1) :
- '';
-
- return {
- prefix: prefix,
- name: normalizedName,
- parentMap: parentModuleMap,
- unnormalized: !!suffix,
- url: url,
- originalName: originalName,
- isDefine: isDefine,
- id: (prefix ?
- prefix + '!' + normalizedName :
- normalizedName) + suffix
- };
- }
-
- function getModule(depMap) {
- var id = depMap.id,
- mod = getOwn(registry, id);
-
- if (!mod) {
- mod = registry[id] = new context.Module(depMap);
- }
-
- return mod;
- }
-
- function on(depMap, name, fn) {
- var id = depMap.id,
- mod = getOwn(registry, id);
-
- if (hasProp(defined, id) &&
- (!mod || mod.defineEmitComplete)) {
- if (name === 'defined') {
- fn(defined[id]);
- }
- } else {
- getModule(depMap).on(name, fn);
- }
- }
-
- function onError(err, errback) {
- var ids = err.requireModules,
- notified = false;
-
- if (errback) {
- errback(err);
- } else {
- each(ids, function (id) {
- var mod = getOwn(registry, id);
- if (mod) {
- //Set error on module, so it skips timeout checks.
- mod.error = err;
- if (mod.events.error) {
- notified = true;
- mod.emit('error', err);
- }
- }
- });
-
- if (!notified) {
- req.onError(err);
- }
- }
- }
-
- /**
- * Internal method to transfer globalQueue items to this context's
- * defQueue.
- */
- function takeGlobalQueue() {
- //Push all the globalDefQueue items into the context's defQueue
- if (globalDefQueue.length) {
- //Array splice in the values since the context code has a
- //local var ref to defQueue, so cannot just reassign the one
- //on context.
- apsp.apply(defQueue,
- [defQueue.length - 1, 0].concat(globalDefQueue));
- globalDefQueue = [];
- }
- }
-
- handlers = {
- 'require': function (mod) {
- if (mod.require) {
- return mod.require;
- } else {
- return (mod.require = context.makeRequire(mod.map));
- }
- },
- 'exports': function (mod) {
- mod.usingExports = true;
- if (mod.map.isDefine) {
- if (mod.exports) {
- return mod.exports;
- } else {
- return (mod.exports = defined[mod.map.id] = {});
- }
- }
- },
- 'module': function (mod) {
- if (mod.module) {
- return mod.module;
- } else {
- return (mod.module = {
- id: mod.map.id,
- uri: mod.map.url,
- config: function () {
- return (config.config && getOwn(config.config, mod.map.id)) || {};
- },
- exports: defined[mod.map.id]
- });
- }
- }
- };
-
- function cleanRegistry(id) {
- //Clean up machinery used for waiting modules.
- delete registry[id];
- delete enabledRegistry[id];
- }
-
- function breakCycle(mod, traced, processed) {
- var id = mod.map.id;
-
- if (mod.error) {
- mod.emit('error', mod.error);
- } else {
- traced[id] = true;
- each(mod.depMaps, function (depMap, i) {
- var depId = depMap.id,
- dep = getOwn(registry, depId);
-
- //Only force things that have not completed
- //being defined, so still in the registry,
- //and only if it has not been matched up
- //in the module already.
- if (dep && !mod.depMatched[i] && !processed[depId]) {
- if (getOwn(traced, depId)) {
- mod.defineDep(i, defined[depId]);
- mod.check(); //pass false?
- } else {
- breakCycle(dep, traced, processed);
- }
- }
- });
- processed[id] = true;
- }
- }
-
- function checkLoaded() {
- var map, modId, err, usingPathFallback,
- waitInterval = config.waitSeconds * 1000,
- //It is possible to disable the wait interval by using waitSeconds of 0.
- expired = waitInterval && (context.startTime + waitInterval) < new Date().getTime(),
- noLoads = [],
- reqCalls = [],
- stillLoading = false,
- needCycleCheck = true;
-
- //Do not bother if this call was a result of a cycle break.
- if (inCheckLoaded) {
- return;
- }
-
- inCheckLoaded = true;
-
- //Figure out the state of all the modules.
- eachProp(enabledRegistry, function (mod) {
- map = mod.map;
- modId = map.id;
-
- //Skip things that are not enabled or in error state.
- if (!mod.enabled) {
- return;
- }
-
- if (!map.isDefine) {
- reqCalls.push(mod);
- }
-
- if (!mod.error) {
- //If the module should be executed, and it has not
- //been inited and time is up, remember it.
- if (!mod.inited && expired) {
- if (hasPathFallback(modId)) {
- usingPathFallback = true;
- stillLoading = true;
- } else {
- noLoads.push(modId);
- removeScript(modId);
- }
- } else if (!mod.inited && mod.fetched && map.isDefine) {
- stillLoading = true;
- if (!map.prefix) {
- //No reason to keep looking for unfinished
- //loading. If the only stillLoading is a
- //plugin resource though, keep going,
- //because it may be that a plugin resource
- //is waiting on a non-plugin cycle.
- return (needCycleCheck = false);
- }
- }
- }
- });
-
- if (expired && noLoads.length) {
- //If wait time expired, throw error of unloaded modules.
- err = makeError('timeout', 'Load timeout for modules: ' + noLoads, null, noLoads);
- err.contextName = context.contextName;
- return onError(err);
- }
-
- //Not expired, check for a cycle.
- if (needCycleCheck) {
- each(reqCalls, function (mod) {
- breakCycle(mod, {}, {});
- });
- }
-
- //If still waiting on loads, and the waiting load is something
- //other than a plugin resource, or there are still outstanding
- //scripts, then just try back later.
- if ((!expired || usingPathFallback) && stillLoading) {
- //Something is still waiting to load. Wait for it, but only
- //if a timeout is not already in effect.
- if ((isBrowser || isWebWorker) && !checkLoadedTimeoutId) {
- checkLoadedTimeoutId = setTimeout(function () {
- checkLoadedTimeoutId = 0;
- checkLoaded();
- }, 50);
- }
- }
-
- inCheckLoaded = false;
- }
-
- Module = function (map) {
- this.events = getOwn(undefEvents, map.id) || {};
- this.map = map;
- this.shim = getOwn(config.shim, map.id);
- this.depExports = [];
- this.depMaps = [];
- this.depMatched = [];
- this.pluginMaps = {};
- this.depCount = 0;
-
- /* this.exports this.factory
- this.depMaps = [],
- this.enabled, this.fetched
- */
- };
-
- Module.prototype = {
- init: function (depMaps, factory, errback, options) {
- options = options || {};
-
- //Do not do more inits if already done. Can happen if there
- //are multiple define calls for the same module. That is not
- //a normal, common case, but it is also not unexpected.
- if (this.inited) {
- return;
- }
-
- this.factory = factory;
-
- if (errback) {
- //Register for errors on this module.
- this.on('error', errback);
- } else if (this.events.error) {
- //If no errback already, but there are error listeners
- //on this module, set up an errback to pass to the deps.
- errback = bind(this, function (err) {
- this.emit('error', err);
- });
- }
-
- //Do a copy of the dependency array, so that
- //source inputs are not modified. For example
- //"shim" deps are passed in here directly, and
- //doing a direct modification of the depMaps array
- //would affect that config.
- this.depMaps = depMaps && depMaps.slice(0);
-
- this.errback = errback;
-
- //Indicate this module has be initialized
- this.inited = true;
-
- this.ignore = options.ignore;
-
- //Could have option to init this module in enabled mode,
- //or could have been previously marked as enabled. However,
- //the dependencies are not known until init is called. So
- //if enabled previously, now trigger dependencies as enabled.
- if (options.enabled || this.enabled) {
- //Enable this module and dependencies.
- //Will call this.check()
- this.enable();
- } else {
- this.check();
- }
- },
-
- defineDep: function (i, depExports) {
- //Because of cycles, defined callback for a given
- //export can be called more than once.
- if (!this.depMatched[i]) {
- this.depMatched[i] = true;
- this.depCount -= 1;
- this.depExports[i] = depExports;
- }
- },
-
- fetch: function () {
- if (this.fetched) {
- return;
- }
- this.fetched = true;
-
- context.startTime = (new Date()).getTime();
-
- var map = this.map;
-
- //If the manager is for a plugin managed resource,
- //ask the plugin to load it now.
- if (this.shim) {
- context.makeRequire(this.map, {
- enableBuildCallback: true
- })(this.shim.deps || [], bind(this, function () {
- return map.prefix ? this.callPlugin() : this.load();
- }));
- } else {
- //Regular dependency.
- return map.prefix ? this.callPlugin() : this.load();
- }
- },
-
- load: function () {
- var url = this.map.url;
-
- //Regular dependency.
- if (!urlFetched[url]) {
- urlFetched[url] = true;
- context.load(this.map.id, url);
- }
- },
-
- /**
- * Checks if the module is ready to define itself, and if so,
- * define it.
- */
- check: function () {
- if (!this.enabled || this.enabling) {
- return;
- }
-
- var err, cjsModule,
- id = this.map.id,
- depExports = this.depExports,
- exports = this.exports,
- factory = this.factory;
-
- if (!this.inited) {
- this.fetch();
- } else if (this.error) {
- this.emit('error', this.error);
- } else if (!this.defining) {
- //The factory could trigger another require call
- //that would result in checking this module to
- //define itself again. If already in the process
- //of doing that, skip this work.
- this.defining = true;
-
- if (this.depCount < 1 && !this.defined) {
- if (isFunction(factory)) {
- //If there is an error listener, favor passing
- //to that instead of throwing an error.
- if (this.events.error) {
- try {
- exports = context.execCb(id, factory, depExports, exports);
- } catch (e) {
- err = e;
- }
- } else {
- exports = context.execCb(id, factory, depExports, exports);
- }
-
- if (this.map.isDefine) {
- //If setting exports via 'module' is in play,
- //favor that over return value and exports. After that,
- //favor a non-undefined return value over exports use.
- cjsModule = this.module;
- if (cjsModule &&
- cjsModule.exports !== undefined &&
- //Make sure it is not already the exports value
- cjsModule.exports !== this.exports) {
- exports = cjsModule.exports;
- } else if (exports === undefined && this.usingExports) {
- //exports already set the defined value.
- exports = this.exports;
- }
- }
-
- if (err) {
- err.requireMap = this.map;
- err.requireModules = [this.map.id];
- err.requireType = 'define';
- return onError((this.error = err));
- }
-
- } else {
- //Just a literal value
- exports = factory;
- }
-
- this.exports = exports;
-
- if (this.map.isDefine && !this.ignore) {
- defined[id] = exports;
-
- if (req.onResourceLoad) {
- req.onResourceLoad(context, this.map, this.depMaps);
- }
- }
-
- //Clean up
- cleanRegistry(id);
-
- this.defined = true;
- }
-
- //Finished the define stage. Allow calling check again
- //to allow define notifications below in the case of a
- //cycle.
- this.defining = false;
-
- if (this.defined && !this.defineEmitted) {
- this.defineEmitted = true;
- this.emit('defined', this.exports);
- this.defineEmitComplete = true;
- }
-
- }
- },
-
- callPlugin: function () {
- var map = this.map,
- id = map.id,
- //Map already normalized the prefix.
- pluginMap = makeModuleMap(map.prefix);
-
- //Mark this as a dependency for this plugin, so it
- //can be traced for cycles.
- this.depMaps.push(pluginMap);
-
- on(pluginMap, 'defined', bind(this, function (plugin) {
- var load, normalizedMap, normalizedMod,
- name = this.map.name,
- parentName = this.map.parentMap ? this.map.parentMap.name : null,
- localRequire = context.makeRequire(map.parentMap, {
- enableBuildCallback: true
- });
-
- //If current map is not normalized, wait for that
- //normalized name to load instead of continuing.
- if (this.map.unnormalized) {
- //Normalize the ID if the plugin allows it.
- if (plugin.normalize) {
- name = plugin.normalize(name, function (name) {
- return normalize(name, parentName, true);
- }) || '';
- }
-
- //prefix and name should already be normalized, no need
- //for applying map config again either.
- normalizedMap = makeModuleMap(map.prefix + '!' + name,
- this.map.parentMap);
- on(normalizedMap,
- 'defined', bind(this, function (value) {
- this.init([], function () { return value; }, null, {
- enabled: true,
- ignore: true
- });
- }));
-
- normalizedMod = getOwn(registry, normalizedMap.id);
- if (normalizedMod) {
- //Mark this as a dependency for this plugin, so it
- //can be traced for cycles.
- this.depMaps.push(normalizedMap);
-
- if (this.events.error) {
- normalizedMod.on('error', bind(this, function (err) {
- this.emit('error', err);
- }));
- }
- normalizedMod.enable();
- }
-
- return;
- }
-
- load = bind(this, function (value) {
- this.init([], function () { return value; }, null, {
- enabled: true
- });
- });
-
- load.error = bind(this, function (err) {
- this.inited = true;
- this.error = err;
- err.requireModules = [id];
-
- //Remove temp unnormalized modules for this module,
- //since they will never be resolved otherwise now.
- eachProp(registry, function (mod) {
- if (mod.map.id.indexOf(id + '_unnormalized') === 0) {
- cleanRegistry(mod.map.id);
- }
- });
-
- onError(err);
- });
-
- //Allow plugins to load other code without having to know the
- //context or how to 'complete' the load.
- load.fromText = bind(this, function (text, textAlt) {
- /*jslint evil: true */
- var moduleName = map.name,
- moduleMap = makeModuleMap(moduleName),
- hasInteractive = useInteractive;
-
- //As of 2.1.0, support just passing the text, to reinforce
- //fromText only being called once per resource. Still
- //support old style of passing moduleName but discard
- //that moduleName in favor of the internal ref.
- if (textAlt) {
- text = textAlt;
- }
-
- //Turn off interactive script matching for IE for any define
- //calls in the text, then turn it back on at the end.
- if (hasInteractive) {
- useInteractive = false;
- }
-
- //Prime the system by creating a module instance for
- //it.
- getModule(moduleMap);
-
- //Transfer any config to this other module.
- if (hasProp(config.config, id)) {
- config.config[moduleName] = config.config[id];
- }
-
- try {
- req.exec(text);
- } catch (e) {
- return onError(makeError('fromtexteval',
- 'fromText eval for ' + id +
- ' failed: ' + e,
- e,
- [id]));
- }
-
- if (hasInteractive) {
- useInteractive = true;
- }
-
- //Mark this as a dependency for the plugin
- //resource
- this.depMaps.push(moduleMap);
-
- //Support anonymous modules.
- context.completeLoad(moduleName);
-
- //Bind the value of that module to the value for this
- //resource ID.
- localRequire([moduleName], load);
- });
-
- //Use parentName here since the plugin's name is not reliable,
- //could be some weird string with no path that actually wants to
- //reference the parentName's path.
- plugin.load(map.name, localRequire, load, config);
- }));
-
- context.enable(pluginMap, this);
- this.pluginMaps[pluginMap.id] = pluginMap;
- },
-
- enable: function () {
- enabledRegistry[this.map.id] = this;
- this.enabled = true;
-
- //Set flag mentioning that the module is enabling,
- //so that immediate calls to the defined callbacks
- //for dependencies do not trigger inadvertent load
- //with the depCount still being zero.
- this.enabling = true;
-
- //Enable each dependency
- each(this.depMaps, bind(this, function (depMap, i) {
- var id, mod, handler;
-
- if (typeof depMap === 'string') {
- //Dependency needs to be converted to a depMap
- //and wired up to this module.
- depMap = makeModuleMap(depMap,
- (this.map.isDefine ? this.map : this.map.parentMap),
- false,
- !this.skipMap);
- this.depMaps[i] = depMap;
-
- handler = getOwn(handlers, depMap.id);
-
- if (handler) {
- this.depExports[i] = handler(this);
- return;
- }
-
- this.depCount += 1;
-
- on(depMap, 'defined', bind(this, function (depExports) {
- this.defineDep(i, depExports);
- this.check();
- }));
-
- if (this.errback) {
- on(depMap, 'error', this.errback);
- }
- }
-
- id = depMap.id;
- mod = registry[id];
-
- //Skip special modules like 'require', 'exports', 'module'
- //Also, don't call enable if it is already enabled,
- //important in circular dependency cases.
- if (!hasProp(handlers, id) && mod && !mod.enabled) {
- context.enable(depMap, this);
- }
- }));
-
- //Enable each plugin that is used in
- //a dependency
- eachProp(this.pluginMaps, bind(this, function (pluginMap) {
- var mod = getOwn(registry, pluginMap.id);
- if (mod && !mod.enabled) {
- context.enable(pluginMap, this);
- }
- }));
-
- this.enabling = false;
-
- this.check();
- },
-
- on: function (name, cb) {
- var cbs = this.events[name];
- if (!cbs) {
- cbs = this.events[name] = [];
- }
- cbs.push(cb);
- },
-
- emit: function (name, evt) {
- each(this.events[name], function (cb) {
- cb(evt);
- });
- if (name === 'error') {
- //Now that the error handler was triggered, remove
- //the listeners, since this broken Module instance
- //can stay around for a while in the registry.
- delete this.events[name];
- }
- }
- };
-
- function callGetModule(args) {
- //Skip modules already defined.
- if (!hasProp(defined, args[0])) {
- getModule(makeModuleMap(args[0], null, true)).init(args[1], args[2]);
- }
- }
-
- function removeListener(node, func, name, ieName) {
- //Favor detachEvent because of IE9
- //issue, see attachEvent/addEventListener comment elsewhere
- //in this file.
- if (node.detachEvent && !isOpera) {
- //Probably IE. If not it will throw an error, which will be
- //useful to know.
- if (ieName) {
- node.detachEvent(ieName, func);
- }
- } else {
- node.removeEventListener(name, func, false);
- }
- }
-
- /**
- * Given an event from a script node, get the requirejs info from it,
- * and then removes the event listeners on the node.
- * @param {Event} evt
- * @returns {Object}
- */
- function getScriptData(evt) {
- //Using currentTarget instead of target for Firefox 2.0's sake. Not
- //all old browsers will be supported, but this one was easy enough
- //to support and still makes sense.
- var node = evt.currentTarget || evt.srcElement;
-
- //Remove the listeners once here.
- removeListener(node, context.onScriptLoad, 'load', 'onreadystatechange');
- removeListener(node, context.onScriptError, 'error');
-
- return {
- node: node,
- id: node && node.getAttribute('data-requiremodule')
- };
- }
-
- function intakeDefines() {
- var args;
-
- //Any defined modules in the global queue, intake them now.
- takeGlobalQueue();
-
- //Make sure any remaining defQueue items get properly processed.
- while (defQueue.length) {
- args = defQueue.shift();
- if (args[0] === null) {
- return onError(makeError('mismatch', 'Mismatched anonymous define() module: ' + args[args.length - 1]));
- } else {
- //args are id, deps, factory. Should be normalized by the
- //define() function.
- callGetModule(args);
- }
- }
- }
-
- context = {
- config: config,
- contextName: contextName,
- registry: registry,
- defined: defined,
- urlFetched: urlFetched,
- defQueue: defQueue,
- Module: Module,
- makeModuleMap: makeModuleMap,
- nextTick: req.nextTick,
- onError: onError,
-
- /**
- * Set a configuration for the context.
- * @param {Object} cfg config object to integrate.
- */
- configure: function (cfg) {
- //Make sure the baseUrl ends in a slash.
- if (cfg.baseUrl) {
- if (cfg.baseUrl.charAt(cfg.baseUrl.length - 1) !== '/') {
- cfg.baseUrl += '/';
- }
- }
-
- //Save off the paths and packages since they require special processing,
- //they are additive.
- var pkgs = config.pkgs,
- shim = config.shim,
- objs = {
- paths: true,
- config: true,
- map: true
- };
-
- eachProp(cfg, function (value, prop) {
- if (objs[prop]) {
- if (prop === 'map') {
- if (!config.map) {
- config.map = {};
- }
- mixin(config[prop], value, true, true);
- } else {
- mixin(config[prop], value, true);
- }
- } else {
- config[prop] = value;
- }
- });
-
- //Merge shim
- if (cfg.shim) {
- eachProp(cfg.shim, function (value, id) {
- //Normalize the structure
- if (isArray(value)) {
- value = {
- deps: value
- };
- }
- if ((value.exports || value.init) && !value.exportsFn) {
- value.exportsFn = context.makeShimExports(value);
- }
- shim[id] = value;
- });
- config.shim = shim;
- }
-
- //Adjust packages if necessary.
- if (cfg.packages) {
- each(cfg.packages, function (pkgObj) {
- var location;
-
- pkgObj = typeof pkgObj === 'string' ? { name: pkgObj } : pkgObj;
- location = pkgObj.location;
-
- //Create a brand new object on pkgs, since currentPackages can
- //be passed in again, and config.pkgs is the internal transformed
- //state for all package configs.
- pkgs[pkgObj.name] = {
- name: pkgObj.name,
- location: location || pkgObj.name,
- //Remove leading dot in main, so main paths are normalized,
- //and remove any trailing .js, since different package
- //envs have different conventions: some use a module name,
- //some use a file name.
- main: (pkgObj.main || 'main')
- .replace(currDirRegExp, '')
- .replace(jsSuffixRegExp, '')
- };
- });
-
- //Done with modifications, assing packages back to context config
- config.pkgs = pkgs;
- }
-
- //If there are any "waiting to execute" modules in the registry,
- //update the maps for them, since their info, like URLs to load,
- //may have changed.
- eachProp(registry, function (mod, id) {
- //If module already has init called, since it is too
- //late to modify them, and ignore unnormalized ones
- //since they are transient.
- if (!mod.inited && !mod.map.unnormalized) {
- mod.map = makeModuleMap(id);
- }
- });
-
- //If a deps array or a config callback is specified, then call
- //require with those args. This is useful when require is defined as a
- //config object before require.js is loaded.
- if (cfg.deps || cfg.callback) {
- context.require(cfg.deps || [], cfg.callback);
- }
- },
-
- makeShimExports: function (value) {
- function fn() {
- var ret;
- if (value.init) {
- ret = value.init.apply(global, arguments);
- }
- return ret || (value.exports && getGlobal(value.exports));
- }
- return fn;
- },
-
- makeRequire: function (relMap, options) {
- options = options || {};
-
- function localRequire(deps, callback, errback) {
- var id, map, requireMod;
-
- if (options.enableBuildCallback && callback && isFunction(callback)) {
- callback.__requireJsBuild = true;
- }
-
- if (typeof deps === 'string') {
- if (isFunction(callback)) {
- //Invalid call
- return onError(makeError('requireargs', 'Invalid require call'), errback);
- }
-
- //If require|exports|module are requested, get the
- //value for them from the special handlers. Caveat:
- //this only works while module is being defined.
- if (relMap && hasProp(handlers, deps)) {
- return handlers[deps](registry[relMap.id]);
- }
-
- //Synchronous access to one module. If require.get is
- //available (as in the Node adapter), prefer that.
- if (req.get) {
- return req.get(context, deps, relMap, localRequire);
- }
-
- //Normalize module name, if it contains . or ..
- map = makeModuleMap(deps, relMap, false, true);
- id = map.id;
-
- if (!hasProp(defined, id)) {
- return onError(makeError('notloaded', 'Module name "' +
- id +
- '" has not been loaded yet for context: ' +
- contextName +
- (relMap ? '' : '. Use require([])')));
- }
- return defined[id];
- }
-
- //Grab defines waiting in the global queue.
- intakeDefines();
-
- //Mark all the dependencies as needing to be loaded.
- context.nextTick(function () {
- //Some defines could have been added since the
- //require call, collect them.
- intakeDefines();
-
- requireMod = getModule(makeModuleMap(null, relMap));
-
- //Store if map config should be applied to this require
- //call for dependencies.
- requireMod.skipMap = options.skipMap;
-
- requireMod.init(deps, callback, errback, {
- enabled: true
- });
-
- checkLoaded();
- });
-
- return localRequire;
- }
-
- mixin(localRequire, {
- isBrowser: isBrowser,
-
- /**
- * Converts a module name + .extension into an URL path.
- * *Requires* the use of a module name. It does not support using
- * plain URLs like nameToUrl.
- */
- toUrl: function (moduleNamePlusExt) {
- var ext,
- index = moduleNamePlusExt.lastIndexOf('.'),
- segment = moduleNamePlusExt.split('/')[0],
- isRelative = segment === '.' || segment === '..';
-
- //Have a file extension alias, and it is not the
- //dots from a relative path.
- if (index !== -1 && (!isRelative || index > 1)) {
- ext = moduleNamePlusExt.substring(index, moduleNamePlusExt.length);
- moduleNamePlusExt = moduleNamePlusExt.substring(0, index);
- }
-
- return context.nameToUrl(normalize(moduleNamePlusExt,
- relMap && relMap.id, true), ext, true);
- },
-
- defined: function (id) {
- return hasProp(defined, makeModuleMap(id, relMap, false, true).id);
- },
-
- specified: function (id) {
- id = makeModuleMap(id, relMap, false, true).id;
- return hasProp(defined, id) || hasProp(registry, id);
- }
- });
-
- //Only allow undef on top level require calls
- if (!relMap) {
- localRequire.undef = function (id) {
- //Bind any waiting define() calls to this context,
- //fix for #408
- takeGlobalQueue();
-
- var map = makeModuleMap(id, relMap, true),
- mod = getOwn(registry, id);
-
- delete defined[id];
- delete urlFetched[map.url];
- delete undefEvents[id];
-
- if (mod) {
- //Hold on to listeners in case the
- //module will be attempted to be reloaded
- //using a different config.
- if (mod.events.defined) {
- undefEvents[id] = mod.events;
- }
-
- cleanRegistry(id);
- }
- };
- }
-
- return localRequire;
- },
-
- /**
- * Called to enable a module if it is still in the registry
- * awaiting enablement. A second arg, parent, the parent module,
- * is passed in for context, when this method is overriden by
- * the optimizer. Not shown here to keep code compact.
- */
- enable: function (depMap) {
- var mod = getOwn(registry, depMap.id);
- if (mod) {
- getModule(depMap).enable();
- }
- },
-
- /**
- * Internal method used by environment adapters to complete a load event.
- * A load event could be a script load or just a load pass from a synchronous
- * load call.
- * @param {String} moduleName the name of the module to potentially complete.
- */
- completeLoad: function (moduleName) {
- var found, args, mod,
- shim = getOwn(config.shim, moduleName) || {},
- shExports = shim.exports;
-
- takeGlobalQueue();
-
- while (defQueue.length) {
- args = defQueue.shift();
- if (args[0] === null) {
- args[0] = moduleName;
- //If already found an anonymous module and bound it
- //to this name, then this is some other anon module
- //waiting for its completeLoad to fire.
- if (found) {
- break;
- }
- found = true;
- } else if (args[0] === moduleName) {
- //Found matching define call for this script!
- found = true;
- }
-
- callGetModule(args);
- }
-
- //Do this after the cycle of callGetModule in case the result
- //of those calls/init calls changes the registry.
- mod = getOwn(registry, moduleName);
-
- if (!found && !hasProp(defined, moduleName) && mod && !mod.inited) {
- if (config.enforceDefine && (!shExports || !getGlobal(shExports))) {
- if (hasPathFallback(moduleName)) {
- return;
- } else {
- return onError(makeError('nodefine',
- 'No define call for ' + moduleName,
- null,
- [moduleName]));
- }
- } else {
- //A script that does not call define(), so just simulate
- //the call for it.
- callGetModule([moduleName, (shim.deps || []), shim.exportsFn]);
- }
- }
-
- checkLoaded();
- },
-
- /**
- * Converts a module name to a file path. Supports cases where
- * moduleName may actually be just an URL.
- * Note that it **does not** call normalize on the moduleName,
- * it is assumed to have already been normalized. This is an
- * internal API, not a public one. Use toUrl for the public API.
- */
- nameToUrl: function (moduleName, ext, skipExt) {
- var paths, pkgs, pkg, pkgPath, syms, i, parentModule, url,
- parentPath;
-
- //If a colon is in the URL, it indicates a protocol is used and it is just
- //an URL to a file, or if it starts with a slash, contains a query arg (i.e. ?)
- //or ends with .js, then assume the user meant to use an url and not a module id.
- //The slash is important for protocol-less URLs as well as full paths.
- if (req.jsExtRegExp.test(moduleName)) {
- //Just a plain path, not module name lookup, so just return it.
- //Add extension if it is included. This is a bit wonky, only non-.js things pass
- //an extension, this method probably needs to be reworked.
- url = moduleName + (ext || '');
- } else {
- //A module that needs to be converted to a path.
- paths = config.paths;
- pkgs = config.pkgs;
-
- syms = moduleName.split('/');
- //For each module name segment, see if there is a path
- //registered for it. Start with most specific name
- //and work up from it.
- for (i = syms.length; i > 0; i -= 1) {
- parentModule = syms.slice(0, i).join('/');
- pkg = getOwn(pkgs, parentModule);
- parentPath = getOwn(paths, parentModule);
- if (parentPath) {
- //If an array, it means there are a few choices,
- //Choose the one that is desired
- if (isArray(parentPath)) {
- parentPath = parentPath[0];
- }
- syms.splice(0, i, parentPath);
- break;
- } else if (pkg) {
- //If module name is just the package name, then looking
- //for the main module.
- if (moduleName === pkg.name) {
- pkgPath = pkg.location + '/' + pkg.main;
- } else {
- pkgPath = pkg.location;
- }
- syms.splice(0, i, pkgPath);
- break;
- }
- }
-
- //Join the path parts together, then figure out if baseUrl is needed.
- url = syms.join('/');
- url += (ext || (/\?/.test(url) || skipExt ? '' : '.js'));
- url = (url.charAt(0) === '/' || url.match(/^[\w\+\.\-]+:/) ? '' : config.baseUrl) + url;
- }
-
- return config.urlArgs ? url +
- ((url.indexOf('?') === -1 ? '?' : '&') +
- config.urlArgs) : url;
- },
-
- //Delegates to req.load. Broken out as a separate function to
- //allow overriding in the optimizer.
- load: function (id, url) {
- req.load(context, id, url);
- },
-
- /**
- * Executes a module callack function. Broken out as a separate function
- * solely to allow the build system to sequence the files in the built
- * layer in the right sequence.
- *
- * @private
- */
- execCb: function (name, callback, args, exports) {
- return callback.apply(exports, args);
- },
-
- /**
- * callback for script loads, used to check status of loading.
- *
- * @param {Event} evt the event from the browser for the script
- * that was loaded.
- */
- onScriptLoad: function (evt) {
- //Using currentTarget instead of target for Firefox 2.0's sake. Not
- //all old browsers will be supported, but this one was easy enough
- //to support and still makes sense.
- if (evt.type === 'load' ||
- (readyRegExp.test((evt.currentTarget || evt.srcElement).readyState))) {
- //Reset interactive script so a script node is not held onto for
- //to long.
- interactiveScript = null;
-
- //Pull out the name of the module and the context.
- var data = getScriptData(evt);
- context.completeLoad(data.id);
- }
- },
-
- /**
- * Callback for script errors.
- */
- onScriptError: function (evt) {
- var data = getScriptData(evt);
- if (!hasPathFallback(data.id)) {
- return onError(makeError('scripterror', 'Script error', evt, [data.id]));
- }
- }
- };
-
- context.require = context.makeRequire();
- return context;
- }
-
- /**
- * Main entry point.
- *
- * If the only argument to require is a string, then the module that
- * is represented by that string is fetched for the appropriate context.
- *
- * If the first argument is an array, then it will be treated as an array
- * of dependency string names to fetch. An optional function callback can
- * be specified to execute when all of those dependencies are available.
- *
- * Make a local req variable to help Caja compliance (it assumes things
- * on a require that are not standardized), and to give a short
- * name for minification/local scope use.
- */
- req = requirejs = function (deps, callback, errback, optional) {
-
- //Find the right context, use default
- var context, config,
- contextName = defContextName;
-
- // Determine if have config object in the call.
- if (!isArray(deps) && typeof deps !== 'string') {
- // deps is a config object
- config = deps;
- if (isArray(callback)) {
- // Adjust args if there are dependencies
- deps = callback;
- callback = errback;
- errback = optional;
- } else {
- deps = [];
- }
- }
-
- if (config && config.context) {
- contextName = config.context;
- }
-
- context = getOwn(contexts, contextName);
- if (!context) {
- context = contexts[contextName] = req.s.newContext(contextName);
- }
-
- if (config) {
- context.configure(config);
- }
-
- return context.require(deps, callback, errback);
- };
-
- /**
- * Support require.config() to make it easier to cooperate with other
- * AMD loaders on globally agreed names.
- */
- req.config = function (config) {
- return req(config);
- };
-
- /**
- * Execute something after the current tick
- * of the event loop. Override for other envs
- * that have a better solution than setTimeout.
- * @param {Function} fn function to execute later.
- */
- req.nextTick = typeof setTimeout !== 'undefined' ? function (fn) {
- setTimeout(fn, 4);
- } : function (fn) { fn(); };
-
- /**
- * Export require as a global, but only if it does not already exist.
- */
- if (!require) {
- require = req;
- }
-
- req.version = version;
-
- //Used to filter out dependencies that are already paths.
- req.jsExtRegExp = /^\/|:|\?|\.js$/;
- req.isBrowser = isBrowser;
- s = req.s = {
- contexts: contexts,
- newContext: newContext
- };
-
- //Create default context.
- req({});
-
- //Exports some context-sensitive methods on global require.
- each([
- 'toUrl',
- 'undef',
- 'defined',
- 'specified'
- ], function (prop) {
- //Reference from contexts instead of early binding to default context,
- //so that during builds, the latest instance of the default context
- //with its config gets used.
- req[prop] = function () {
- var ctx = contexts[defContextName];
- return ctx.require[prop].apply(ctx, arguments);
- };
- });
-
- if (isBrowser) {
- head = s.head = document.getElementsByTagName('head')[0];
- //If BASE tag is in play, using appendChild is a problem for IE6.
- //When that browser dies, this can be removed. Details in this jQuery bug:
- //http://dev.jquery.com/ticket/2709
- baseElement = document.getElementsByTagName('base')[0];
- if (baseElement) {
- head = s.head = baseElement.parentNode;
- }
- }
-
- /**
- * Any errors that require explicitly generates will be passed to this
- * function. Intercept/override it if you want custom error handling.
- * @param {Error} err the error object.
- */
- req.onError = function (err) {
- throw err;
- };
-
- /**
- * Does the request to load a module for the browser case.
- * Make this a separate function to allow other environments
- * to override it.
- *
- * @param {Object} context the require context to find state.
- * @param {String} moduleName the name of the module.
- * @param {Object} url the URL to the module.
- */
- req.load = function (context, moduleName, url) {
- var config = (context && context.config) || {},
- node;
- if (isBrowser) {
- //In the browser so use a script tag
- node = config.xhtml ?
- document.createElementNS('http://www.w3.org/1999/xhtml', 'html:script') :
- document.createElement('script');
- node.type = config.scriptType || 'text/javascript';
- node.charset = 'utf-8';
- node.async = true;
-
- node.setAttribute('data-requirecontext', context.contextName);
- node.setAttribute('data-requiremodule', moduleName);
-
- //Set up load listener. Test attachEvent first because IE9 has
- //a subtle issue in its addEventListener and script onload firings
- //that do not match the behavior of all other browsers with
- //addEventListener support, which fire the onload event for a
- //script right after the script execution. See:
- //https://connect.microsoft.com/IE/feedback/details/648057/script-onload-event-is-not-fired-immediately-after-script-execution
- //UNFORTUNATELY Opera implements attachEvent but does not follow the script
- //script execution mode.
- if (node.attachEvent &&
- //Check if node.attachEvent is artificially added by custom script or
- //natively supported by browser
- //read https://github.com/jrburke/requirejs/issues/187
- //if we can NOT find [native code] then it must NOT natively supported.
- //in IE8, node.attachEvent does not have toString()
- //Note the test for "[native code" with no closing brace, see:
- //https://github.com/jrburke/requirejs/issues/273
- !(node.attachEvent.toString && node.attachEvent.toString().indexOf('[native code') < 0) &&
- !isOpera) {
- //Probably IE. IE (at least 6-8) do not fire
- //script onload right after executing the script, so
- //we cannot tie the anonymous define call to a name.
- //However, IE reports the script as being in 'interactive'
- //readyState at the time of the define call.
- useInteractive = true;
-
- node.attachEvent('onreadystatechange', context.onScriptLoad);
- //It would be great to add an error handler here to catch
- //404s in IE9+. However, onreadystatechange will fire before
- //the error handler, so that does not help. If addEventListener
- //is used, then IE will fire error before load, but we cannot
- //use that pathway given the connect.microsoft.com issue
- //mentioned above about not doing the 'script execute,
- //then fire the script load event listener before execute
- //next script' that other browsers do.
- //Best hope: IE10 fixes the issues,
- //and then destroys all installs of IE 6-9.
- //node.attachEvent('onerror', context.onScriptError);
- } else {
- node.addEventListener('load', context.onScriptLoad, false);
- node.addEventListener('error', context.onScriptError, false);
- }
- node.src = url;
-
- //For some cache cases in IE 6-8, the script executes before the end
- //of the appendChild execution, so to tie an anonymous define
- //call to the module name (which is stored on the node), hold on
- //to a reference to this node, but clear after the DOM insertion.
- currentlyAddingScript = node;
- if (baseElement) {
- head.insertBefore(node, baseElement);
- } else {
- head.appendChild(node);
- }
- currentlyAddingScript = null;
-
- return node;
- } else if (isWebWorker) {
- try {
- //In a web worker, use importScripts. This is not a very
- //efficient use of importScripts, importScripts will block until
- //its script is downloaded and evaluated. However, if web workers
- //are in play, the expectation that a build has been done so that
- //only one script needs to be loaded anyway. This may need to be
- //reevaluated if other use cases become common.
- importScripts(url);
-
- //Account for anonymous modules
- context.completeLoad(moduleName);
- } catch (e) {
- context.onError(makeError('importscripts',
- 'importScripts failed for ' +
- moduleName + ' at ' + url,
- e,
- [moduleName]));
- }
- }
- };
-
- function getInteractiveScript() {
- if (interactiveScript && interactiveScript.readyState === 'interactive') {
- return interactiveScript;
- }
-
- eachReverse(scripts(), function (script) {
- if (script.readyState === 'interactive') {
- return (interactiveScript = script);
- }
- });
- return interactiveScript;
- }
-
- //Look for a data-main script attribute, which could also adjust the baseUrl.
- if (isBrowser) {
- //Figure out baseUrl. Get it from the script tag with require.js in it.
- eachReverse(scripts(), function (script) {
- //Set the 'head' where we can append children by
- //using the script's parent.
- if (!head) {
- head = script.parentNode;
- }
-
- //Look for a data-main attribute to set main script for the page
- //to load. If it is there, the path to data main becomes the
- //baseUrl, if it is not already set.
- dataMain = script.getAttribute('data-main');
- if (dataMain) {
- //Set final baseUrl if there is not already an explicit one.
- if (!cfg.baseUrl) {
- //Pull off the directory of data-main for use as the
- //baseUrl.
- src = dataMain.split('/');
- mainScript = src.pop();
- subPath = src.length ? src.join('/') + '/' : './';
-
- cfg.baseUrl = subPath;
- dataMain = mainScript;
- }
-
- //Strip off any trailing .js since dataMain is now
- //like a module name.
- dataMain = dataMain.replace(jsSuffixRegExp, '');
-
- //Put the data-main script in the files to load.
- cfg.deps = cfg.deps ? cfg.deps.concat(dataMain) : [dataMain];
-
- return true;
- }
- });
- }
-
- /**
- * The function that handles definitions of modules. Differs from
- * require() in that a string for the module should be the first argument,
- * and the function to execute after dependencies are loaded should
- * return a value to define the module corresponding to the first argument's
- * name.
- */
- define = function (name, deps, callback) {
- var node, context;
-
- //Allow for anonymous modules
- if (typeof name !== 'string') {
- //Adjust args appropriately
- callback = deps;
- deps = name;
- name = null;
- }
-
- //This module may not have dependencies
- if (!isArray(deps)) {
- callback = deps;
- deps = [];
- }
-
- //If no name, and callback is a function, then figure out if it a
- //CommonJS thing with dependencies.
- if (!deps.length && isFunction(callback)) {
- //Remove comments from the callback string,
- //look for require calls, and pull them into the dependencies,
- //but only if there are function args.
- if (callback.length) {
- callback
- .toString()
- .replace(commentRegExp, '')
- .replace(cjsRequireRegExp, function (match, dep) {
- deps.push(dep);
- });
-
- //May be a CommonJS thing even without require calls, but still
- //could use exports, and module. Avoid doing exports and module
- //work though if it just needs require.
- //REQUIRES the function to expect the CommonJS variables in the
- //order listed below.
- deps = (callback.length === 1 ? ['require'] : ['require', 'exports', 'module']).concat(deps);
- }
- }
-
- //If in IE 6-8 and hit an anonymous define() call, do the interactive
- //work.
- if (useInteractive) {
- node = currentlyAddingScript || getInteractiveScript();
- if (node) {
- if (!name) {
- name = node.getAttribute('data-requiremodule');
- }
- context = contexts[node.getAttribute('data-requirecontext')];
- }
- }
-
- //Always save off evaluating the def call until the script onload handler.
- //This allows multiple modules to be in a file without prematurely
- //tracing dependencies, and allows for anonymous module support,
- //where the module name is not known until the script onload event
- //occurs. If no context, use the global queue, and get it processed
- //in the onscript load callback.
- (context ? context.defQueue : globalDefQueue).push([name, deps, callback]);
- };
-
- define.amd = {
- jQuery: true
- };
-
-
- /**
- * Executes the text. Normally just uses eval, but can be modified
- * to use a better, environment-specific call. Only used for transpiling
- * loader plugins, not for plain JS modules.
- * @param {String} text the text to execute/evaluate.
- */
- req.exec = function (text) {
- /*jslint evil: true */
- // return text;
- return eval(text);
- };
-
- //Set up with config info.
- req(cfg);
-}(this));
diff --git a/node_modules/localforage/examples/websql-foo.html b/node_modules/localforage/examples/websql-foo.html
deleted file mode 100644
index eaea167..0000000
--- a/node_modules/localforage/examples/websql-foo.html
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-
-
-
-Status Message
-
-
diff --git a/node_modules/localforage/package.json b/node_modules/localforage/package.json
index 191ce67..9777446 100644
--- a/node_modules/localforage/package.json
+++ b/node_modules/localforage/package.json
@@ -1,28 +1,28 @@
{
- "_from": "localforage",
- "_id": "localforage@1.7.2",
+ "_from": "localforage@1.7.3",
+ "_id": "localforage@1.7.3",
"_inBundle": false,
- "_integrity": "sha1-+kRCYC+Abt0rympUq05lbwMfEhw=",
+ "_integrity": "sha512-1TulyYfc4udS7ECSBT2vwJksWbkwwTX8BzeUIiq8Y07Riy7bDAAnxDaPU/tWyOVmQAcWJIEIFP9lPfBGqVoPgQ==",
"_location": "/localforage",
"_phantomChildren": {},
"_requested": {
- "type": "tag",
+ "type": "version",
"registry": true,
- "raw": "localforage",
+ "raw": "localforage@1.7.3",
"name": "localforage",
"escapedName": "localforage",
- "rawSpec": "",
+ "rawSpec": "1.7.3",
"saveSpec": null,
- "fetchSpec": "latest"
+ "fetchSpec": "1.7.3"
},
"_requiredBy": [
"#USER",
"/"
],
- "_resolved": "https://registry.npmjs.org/localforage/-/localforage-1.7.2.tgz",
- "_shasum": "fa4442602f806edd2bca6a54ab4e656f031f121c",
- "_spec": "localforage",
- "_where": "C:\\Users\\d.onaolapo\\Desktop\\Workspace\\dev\\local-desktop",
+ "_resolved": "https://registry.npmjs.org/localforage/-/localforage-1.7.3.tgz",
+ "_shasum": "0082b3ca9734679e1bd534995bdd3b24cf10f204",
+ "_spec": "localforage@1.7.3",
+ "_where": "\\\\WENDYO\\Users\\WENDY EZENWA\\Desktop\\application\\Node Webkit\\React\\local-desktop",
"author": {
"name": "Mozilla"
},
@@ -105,5 +105,5 @@
"test": "node -e \"require('grunt').cli()\" null test"
},
"typings": "typings/localforage.d.ts",
- "version": "1.7.2"
+ "version": "1.7.3"
}
diff --git a/node_modules/localforage/test/dummyStorageDriver.js b/node_modules/localforage/test/dummyStorageDriver.js
deleted file mode 100644
index 6c993c1..0000000
--- a/node_modules/localforage/test/dummyStorageDriver.js
+++ /dev/null
@@ -1,468 +0,0 @@
-(function() {
- 'use strict';
-
- var dummyStorage = {};
-
- // Config the localStorage backend, using options set in the config.
- function _initStorage(options) {
- var self = this;
-
- var dbInfo = {};
- if (options) {
- for (var i in options) {
- dbInfo[i] = options[i];
- }
- }
-
- dummyStorage[dbInfo.name] = dbInfo.db = {};
-
- self._dbInfo = dbInfo;
- return Promise.resolve();
- }
-
- var SERIALIZED_MARKER = '__lfsc__:';
- var SERIALIZED_MARKER_LENGTH = SERIALIZED_MARKER.length;
-
- // OMG the serializations!
- var TYPE_ARRAYBUFFER = 'arbf';
- var TYPE_BLOB = 'blob';
- var TYPE_INT8ARRAY = 'si08';
- var TYPE_UINT8ARRAY = 'ui08';
- var TYPE_UINT8CLAMPEDARRAY = 'uic8';
- var TYPE_INT16ARRAY = 'si16';
- var TYPE_INT32ARRAY = 'si32';
- var TYPE_UINT16ARRAY = 'ur16';
- var TYPE_UINT32ARRAY = 'ui32';
- var TYPE_FLOAT32ARRAY = 'fl32';
- var TYPE_FLOAT64ARRAY = 'fl64';
- var TYPE_SERIALIZED_MARKER_LENGTH =
- SERIALIZED_MARKER_LENGTH + TYPE_ARRAYBUFFER.length;
-
- function clear(callback) {
- var self = this;
- var promise = new Promise(function(resolve, reject) {
- self
- .ready()
- .then(function() {
- var db = self._dbInfo.db;
-
- for (var key in db) {
- if (db.hasOwnProperty(key)) {
- delete db[key];
- // db[key] = undefined;
- }
- }
-
- resolve();
- })
- .catch(reject);
- });
-
- executeCallback(promise, callback);
- return promise;
- }
-
- function getItem(key, callback) {
- var self = this;
-
- // Cast the key to a string, as that's all we can set as a key.
- if (typeof key !== 'string') {
- window.console.warn(
- key + ' used as a key, but it is not a string.'
- );
- key = String(key);
- }
-
- var promise = new Promise(function(resolve, reject) {
- self
- .ready()
- .then(function() {
- try {
- var db = self._dbInfo.db;
- var result = db[key];
-
- if (result) {
- result = _deserialize(result);
- }
-
- resolve(result);
- } catch (e) {
- reject(e);
- }
- })
- .catch(reject);
- });
-
- executeCallback(promise, callback);
- return promise;
- }
-
- function iterate(callback) {
- var self = this;
-
- var promise = new Promise(function(resolve, reject) {
- self
- .ready()
- .then(function() {
- try {
- var db = self._dbInfo.db;
-
- for (var key in db) {
- var result = db[key];
-
- if (result) {
- result = _deserialize(result);
- }
-
- callback(result, key);
- }
-
- resolve();
- } catch (e) {
- reject(e);
- }
- })
- .catch(reject);
- });
-
- executeCallback(promise, callback);
- return promise;
- }
-
- function key(n, callback) {
- var self = this;
- var promise = new Promise(function(resolve, reject) {
- self
- .ready()
- .then(function() {
- var db = self._dbInfo.db;
- var result = null;
- var index = 0;
-
- for (var key in db) {
- if (db.hasOwnProperty(key) && db[key] !== undefined) {
- if (n === index) {
- result = key;
- break;
- }
- index++;
- }
- }
-
- resolve(result);
- })
- .catch(reject);
- });
-
- executeCallback(promise, callback);
- return promise;
- }
-
- function keys(callback) {
- var self = this;
- var promise = new Promise(function(resolve, reject) {
- self
- .ready()
- .then(function() {
- var db = self._dbInfo.db;
- var keys = [];
-
- for (var key in db) {
- if (db.hasOwnProperty(key)) {
- keys.push(key);
- }
- }
-
- resolve(keys);
- })
- .catch(reject);
- });
-
- executeCallback(promise, callback);
- return promise;
- }
-
- function length(callback) {
- var self = this;
- var promise = new Promise(function(resolve, reject) {
- self
- .keys()
- .then(function(keys) {
- resolve(keys.length);
- })
- .catch(reject);
- });
-
- executeCallback(promise, callback);
- return promise;
- }
-
- function removeItem(key, callback) {
- var self = this;
-
- // Cast the key to a string, as that's all we can set as a key.
- if (typeof key !== 'string') {
- window.console.warn(
- key + ' used as a key, but it is not a string.'
- );
- key = String(key);
- }
-
- var promise = new Promise(function(resolve, reject) {
- self
- .ready()
- .then(function() {
- var db = self._dbInfo.db;
- if (db.hasOwnProperty(key)) {
- delete db[key];
- // db[key] = undefined;
- }
-
- resolve();
- })
- .catch(reject);
- });
-
- executeCallback(promise, callback);
- return promise;
- }
-
- function setItem(key, value, callback) {
- var self = this;
-
- // Cast the key to a string, as that's all we can set as a key.
- if (typeof key !== 'string') {
- window.console.warn(
- key + ' used as a key, but it is not a string.'
- );
- key = String(key);
- }
-
- var promise = new Promise(function(resolve, reject) {
- self
- .ready()
- .then(function() {
- // Convert undefined values to null.
- // https://github.com/mozilla/localForage/pull/42
- if (value === undefined) {
- value = null;
- }
-
- // Save the original value to pass to the callback.
- var originalValue = value;
-
- _serialize(value, function(value, error) {
- if (error) {
- reject(error);
- } else {
- try {
- var db = self._dbInfo.db;
- db[key] = value;
- resolve(originalValue);
- } catch (e) {
- reject(e);
- }
- }
- });
- })
- .catch(reject);
- });
-
- executeCallback(promise, callback);
- return promise;
- }
-
- // _serialize just like in LocalStorage
- function _serialize(value, callback) {
- var valueString = '';
- if (value) {
- valueString = value.toString();
- }
-
- // Cannot use `value instanceof ArrayBuffer` or such here, as these
- // checks fail when running the tests using casper.js...
- //
- // TODO: See why those tests fail and use a better solution.
- if (
- value &&
- (value.toString() === '[object ArrayBuffer]' ||
- (value.buffer &&
- value.buffer.toString() === '[object ArrayBuffer]'))
- ) {
- // Convert binary arrays to a string and prefix the string with
- // a special marker.
- var buffer;
- var marker = SERIALIZED_MARKER;
-
- if (value instanceof ArrayBuffer) {
- buffer = value;
- marker += TYPE_ARRAYBUFFER;
- } else {
- buffer = value.buffer;
-
- if (valueString === '[object Int8Array]') {
- marker += TYPE_INT8ARRAY;
- } else if (valueString === '[object Uint8Array]') {
- marker += TYPE_UINT8ARRAY;
- } else if (valueString === '[object Uint8ClampedArray]') {
- marker += TYPE_UINT8CLAMPEDARRAY;
- } else if (valueString === '[object Int16Array]') {
- marker += TYPE_INT16ARRAY;
- } else if (valueString === '[object Uint16Array]') {
- marker += TYPE_UINT16ARRAY;
- } else if (valueString === '[object Int32Array]') {
- marker += TYPE_INT32ARRAY;
- } else if (valueString === '[object Uint32Array]') {
- marker += TYPE_UINT32ARRAY;
- } else if (valueString === '[object Float32Array]') {
- marker += TYPE_FLOAT32ARRAY;
- } else if (valueString === '[object Float64Array]') {
- marker += TYPE_FLOAT64ARRAY;
- } else {
- callback(new Error('Failed to get type for BinaryArray'));
- }
- }
-
- callback(marker + _bufferToString(buffer));
- } else if (valueString === '[object Blob]') {
- // Conver the blob to a binaryArray and then to a string.
- var fileReader = new FileReader();
-
- fileReader.onload = function() {
- var str = _bufferToString(this.result);
-
- callback(SERIALIZED_MARKER + TYPE_BLOB + str);
- };
-
- fileReader.readAsArrayBuffer(value);
- } else {
- try {
- callback(JSON.stringify(value));
- } catch (e) {
- window.console.error(
- "Couldn't convert value into a JSON " + 'string: ',
- value
- );
-
- callback(e);
- }
- }
- }
-
- // _deserialize just like in LocalStorage
- function _deserialize(value) {
- // If we haven't marked this string as being specially serialized (i.e.
- // something other than serialized JSON), we can just return it and be
- // done with it.
- if (
- value.substring(0, SERIALIZED_MARKER_LENGTH) !== SERIALIZED_MARKER
- ) {
- return JSON.parse(value);
- }
-
- // The following code deals with deserializing some kind of Blob or
- // TypedArray. First we separate out the type of data we're dealing
- // with from the data itself.
- var serializedString = value.substring(TYPE_SERIALIZED_MARKER_LENGTH);
- var type = value.substring(
- SERIALIZED_MARKER_LENGTH,
- TYPE_SERIALIZED_MARKER_LENGTH
- );
-
- // Fill the string into a ArrayBuffer.
- // 2 bytes for each char.
- var buffer = new ArrayBuffer(serializedString.length * 2);
- var bufferView = new Uint16Array(buffer);
- for (var i = serializedString.length - 1; i >= 0; i--) {
- bufferView[i] = serializedString.charCodeAt(i);
- }
-
- // Return the right type based on the code/type set during
- // serialization.
- switch (type) {
- case TYPE_ARRAYBUFFER:
- return buffer;
- case TYPE_BLOB:
- return new Blob([buffer]);
- case TYPE_INT8ARRAY:
- return new Int8Array(buffer);
- case TYPE_UINT8ARRAY:
- return new Uint8Array(buffer);
- case TYPE_UINT8CLAMPEDARRAY:
- return new Uint8ClampedArray(buffer);
- case TYPE_INT16ARRAY:
- return new Int16Array(buffer);
- case TYPE_UINT16ARRAY:
- return new Uint16Array(buffer);
- case TYPE_INT32ARRAY:
- return new Int32Array(buffer);
- case TYPE_UINT32ARRAY:
- return new Uint32Array(buffer);
- case TYPE_FLOAT32ARRAY:
- return new Float32Array(buffer);
- case TYPE_FLOAT64ARRAY:
- return new Float64Array(buffer);
- default:
- throw new Error('Unkown type: ' + type);
- }
- }
-
- // _bufferToString just like in LocalStorage
- function _bufferToString(buffer) {
- var str = '';
- var uint16Array = new Uint16Array(buffer);
-
- try {
- str = String.fromCharCode.apply(null, uint16Array);
- } catch (e) {
- // This is a fallback implementation in case the first one does
- // not work. This is required to get the phantomjs passing...
- for (var i = 0; i < uint16Array.length; i++) {
- str += String.fromCharCode(uint16Array[i]);
- }
- }
-
- return str;
- }
-
- function executeCallback(promise, callback) {
- if (callback) {
- promise.then(
- function(result) {
- callback(null, result);
- },
- function(error) {
- callback(error);
- }
- );
- }
- }
-
- var dummyStorageDriver = {
- _driver: 'dummyStorageDriver',
- _initStorage: _initStorage,
- // _supports: function() { return true; }
- iterate: iterate,
- getItem: getItem,
- setItem: setItem,
- removeItem: removeItem,
- clear: clear,
- length: length,
- key: key,
- keys: keys
- };
-
- if (typeof define === 'function' && define.amd) {
- define('dummyStorageDriver', function() {
- return dummyStorageDriver;
- });
- } else if (
- typeof module !== 'undefined' &&
- module.exports &&
- typeof require !== 'undefined'
- ) {
- module.exports = dummyStorageDriver;
- } else {
- this.dummyStorageDriver = dummyStorageDriver;
- }
-}.call(window));
diff --git a/node_modules/localforage/test/photo.jpg b/node_modules/localforage/test/photo.jpg
deleted file mode 100644
index 8eed9b7..0000000
Binary files a/node_modules/localforage/test/photo.jpg and /dev/null differ
diff --git a/node_modules/localforage/test/photo2.jpg b/node_modules/localforage/test/photo2.jpg
deleted file mode 100644
index cc4becd..0000000
Binary files a/node_modules/localforage/test/photo2.jpg and /dev/null differ
diff --git a/node_modules/localforage/test/runner.browserify.js b/node_modules/localforage/test/runner.browserify.js
deleted file mode 100644
index 58cbb47..0000000
--- a/node_modules/localforage/test/runner.browserify.js
+++ /dev/null
@@ -1,5 +0,0 @@
-// if (typeof Promise === 'undefined') {
-// require('../bower_components/es6-promise/promise');
-// }
-// require localforage as defined in package.json
-window.localforage = require('../');
diff --git a/node_modules/localforage/test/runner.js b/node_modules/localforage/test/runner.js
deleted file mode 100644
index 3910312..0000000
--- a/node_modules/localforage/test/runner.js
+++ /dev/null
@@ -1,75 +0,0 @@
-/* global requirejs:true */
-// Run before window.onload to make sure the specs have access to describe()
-// and other mocha methods. All feels very hacky though :-/
-this.mocha.setup('bdd');
-
-function runTests() {
- var runner = this.mocha.run();
-
- var failedTests = [];
-
- runner.on('end', function() {
- window.mochaResults = runner.stats;
- window.mochaResults.reports = failedTests;
- });
-
- function flattenTitles(test) {
- var titles = [];
-
- while (test.parent.title) {
- titles.push(test.parent.title);
- test = test.parent;
- }
-
- return titles.reverse();
- }
-
- function logFailure(test, err) {
- failedTests.push({
- name: test.title,
- result: false,
- message: err.message,
- stack: err.stack,
- titles: flattenTitles(test)
- });
- }
-
- runner.on('fail', logFailure);
-}
-
-if (!Array.prototype.forEach) {
- Array.prototype.forEach = function(callback, thisArg) {
- if (typeof callback !== 'function') {
- throw new TypeError(callback + ' is not a function!');
- }
- var len = this.length;
- for (var i = 0; i < len; i++) {
- callback.call(thisArg, this[i], i, this);
- }
- };
-}
-
-var require = this.require;
-if (require) {
- requirejs.config({
- paths: {
- localforage: '/dist/localforage'
- }
- });
- require(['localforage'], function(localforage) {
- window.localforage = localforage;
-
- require([
- '/test/test.api.js',
- '/test/test.config.js',
- '/test/test.datatypes.js',
- '/test/test.drivers.js',
- '/test/test.iframes.js',
- '/test/test.webworkers.js'
- ], runTests);
- });
-} else if (this.addEventListener) {
- this.addEventListener('load', runTests);
-} else if (this.attachEvent) {
- this.attachEvent('onload', runTests);
-}
diff --git a/node_modules/localforage/test/runner.webpack.js b/node_modules/localforage/test/runner.webpack.js
deleted file mode 100644
index e48f1b1..0000000
--- a/node_modules/localforage/test/runner.webpack.js
+++ /dev/null
@@ -1,6 +0,0 @@
-// if (typeof Promise === 'undefined') {
-// require('../bower_components/es6-promise/promise');
-// }
-// require localforage as defined in package.json
-window.localforage = require('../');
-// require('script!../'); // optionally use webpack/script-loader
diff --git a/node_modules/localforage/test/saucelabs-browsers.js b/node_modules/localforage/test/saucelabs-browsers.js
deleted file mode 100644
index d6840f2..0000000
--- a/node_modules/localforage/test/saucelabs-browsers.js
+++ /dev/null
@@ -1,59 +0,0 @@
-/*jshint node:true */
-
-var SAUCELAB_BROWSERS = [
- {
- base: 'SauceLabs',
- browserName: 'chrome',
- platform: 'Windows 7',
- version: '34'
- },
- {
- base: 'SauceLabs',
- browserName: 'firefox',
- platform: 'Windows 7',
- version: '28'
- },
- {
- base: 'SauceLabs',
- browserName: 'firefox',
- platform: 'Windows 7',
- version: '29'
- },
-
- // {
- // base: 'SauceLabs',
- // browserName: 'internet explorer',
- // version: '8',
- // platform: 'Windows XP'
- // },
- {
- base: 'SauceLabs',
- browserName: 'internet explorer',
- version: '9'
- },
- {
- base: 'SauceLabs',
- browserName: 'internet explorer',
- version: '10'
- },
- {
- base: 'SauceLabs',
- browserName: 'internet explorer',
- version: '11'
- },
-
- {
- base: 'SauceLabs',
- browserName: 'internet explorer',
- version: '10',
- platform: 'Windows 8'
- },
- {
- base: 'SauceLabs',
- browserName: 'internet explorer',
- version: '11',
- platform: 'Windows 8.1'
- }
-];
-
-module.exports = SAUCELAB_BROWSERS;
diff --git a/node_modules/localforage/test/serviceworker-client.js b/node_modules/localforage/test/serviceworker-client.js
deleted file mode 100644
index 3f70cb5..0000000
--- a/node_modules/localforage/test/serviceworker-client.js
+++ /dev/null
@@ -1,38 +0,0 @@
-/*globals importScripts:true, self:true */
-importScripts('/dist/localforage.js');
-
-self.onmessage = function(messageEvent) {
- return localforage
- .setDriver(messageEvent.data.driver)
- .then(function() {
- return localforage.setItem(
- 'service worker',
- messageEvent.data.value
- );
- })
- .then(function() {
- return localforage.getItem('service worker');
- })
- .then(function(value) {
- messageEvent.ports[0].postMessage({
- body: value + ' using ' + localforage.driver()
- });
- })
- .catch(function(error) {
- messageEvent.ports[0].postMessage({
- error: JSON.stringify(error),
- body: error,
- fail: true
- });
- });
-};
-
-self.oninstall = function(event) {
- event.waitUntil(
- localforage
- .setItem('service worker registration', 'serviceworker present')
- .then(function(value) {
- console.log(value);
- })
- );
-};
diff --git a/node_modules/localforage/test/test.api.js b/node_modules/localforage/test/test.api.js
deleted file mode 100644
index ba601c7..0000000
--- a/node_modules/localforage/test/test.api.js
+++ /dev/null
@@ -1,2136 +0,0 @@
-/* global after:true, afterEach:true, before:true, beforeEach:true, describe:true, expect:true, it:true, Promise:true */
-var DRIVERS = [
- localforage.INDEXEDDB,
- localforage.WEBSQL,
- localforage.LOCALSTORAGE
-];
-
-var SUPPORTED_DRIVERS = DRIVERS.filter(function(driverName) {
- return localforage.supports(driverName);
-});
-
-var driverApiMethods = [
- 'getItem',
- 'setItem',
- 'clear',
- 'length',
- 'removeItem',
- 'key',
- 'keys'
-];
-
-var indexedDB =
- // eslint-disable-next-line no-use-before-define
- indexedDB ||
- window.indexedDB ||
- window.webkitIndexedDB ||
- window.mozIndexedDB ||
- window.OIndexedDB ||
- window.msIndexedDB;
-
-describe('localForage API', function() {
- // https://github.com/mozilla/localForage#working-on-localforage
- it('has Promises available', function() {
- expect(Promise).to.be.a('function');
- });
-});
-
-describe('localForage', function() {
- var appropriateDriver =
- (localforage.supports(localforage.INDEXEDDB) &&
- localforage.INDEXEDDB) ||
- (localforage.supports(localforage.WEBSQL) && localforage.WEBSQL) ||
- (localforage.supports(localforage.LOCALSTORAGE) &&
- localforage.LOCALSTORAGE);
-
- it(
- 'automatically selects the most appropriate driver (' +
- appropriateDriver +
- ')',
- function(done) {
- this.timeout(10000);
- localforage.ready().then(
- function() {
- expect(localforage.driver()).to.be(appropriateDriver);
- done();
- },
- function(error) {
- expect(error).to.be.an(Error);
- expect(error.message).to.be(
- 'No available storage method found.'
- );
- expect(localforage.driver()).to.be(null);
- done();
- }
- );
- }
- );
-
- it('errors when a requested driver is not found [callback]', function(done) {
- localforage.getDriver('UnknownDriver', null, function(error) {
- expect(error).to.be.an(Error);
- expect(error.message).to.be('Driver not found.');
- done();
- });
- });
-
- it('errors when a requested driver is not found [promise]', function(done) {
- localforage.getDriver('UnknownDriver').then(null, function(error) {
- expect(error).to.be.an(Error);
- expect(error.message).to.be('Driver not found.');
- done();
- });
- });
-
- it('retrieves the serializer [callback]', function(done) {
- localforage.getSerializer(function(serializer) {
- expect(serializer).to.be.an('object');
- done();
- });
- });
-
- it('retrieves the serializer [promise]', function(done) {
- var serializerPromise = localforage.getSerializer();
- expect(serializerPromise).to.be.an('object');
- expect(serializerPromise.then).to.be.a('function');
-
- serializerPromise.then(function(serializer) {
- expect(serializer).to.be.an('object');
- done();
- });
- });
-
- it('does not support object parameter to setDriver', function(done) {
- var driverPreferedOrder = {
- '0': localforage.INDEXEDDB,
- '1': localforage.WEBSQL,
- '2': localforage.LOCALSTORAGE,
- length: 3
- };
-
- localforage.setDriver(driverPreferedOrder).then(null, function(error) {
- expect(error).to.be.an(Error);
- expect(error.message).to.be('No available storage method found.');
- done();
- });
- });
-
- it('skips drivers that fail to initilize', function(done) {
- var failingStorageDriver = (function() {
- function driverDummyMethod() {
- return Promise.reject(new Error('Driver Method Failed.'));
- }
-
- return {
- _driver: 'failingStorageDriver',
- _initStorage: function _initStorage() {
- return Promise.reject(
- new Error('Driver Failed to Initialize.')
- );
- },
- iterate: driverDummyMethod,
- getItem: driverDummyMethod,
- setItem: driverDummyMethod,
- removeItem: driverDummyMethod,
- clear: driverDummyMethod,
- length: driverDummyMethod,
- key: driverDummyMethod,
- keys: driverDummyMethod
- };
- })();
-
- var driverPreferedOrder = [
- failingStorageDriver._driver,
- localforage.INDEXEDDB,
- localforage.WEBSQL,
- localforage.LOCALSTORAGE
- ];
-
- localforage
- .defineDriver(failingStorageDriver)
- .then(function() {
- return localforage.setDriver(driverPreferedOrder);
- })
- .then(function() {
- return localforage.ready();
- })
- .then(function() {
- expect(localforage.driver()).to.be(appropriateDriver);
- done();
- });
- });
-
- describe('createInstance()', function() {
- var oldConsoleInfo;
-
- before(function() {
- oldConsoleInfo = console.info;
- var logs = [];
- console.info = function() {
- console.info.logs.push({
- args: arguments
- });
- oldConsoleInfo.apply(this, arguments);
- };
- console.info.logs = logs;
- });
-
- after(function() {
- console.info = oldConsoleInfo;
- });
-
- it('does not log unnecessary messages', function() {
- var oldLogCount = console.info.logs.length;
- var localforage2 = localforage.createInstance();
- var localforage3 = localforage.createInstance();
-
- return Promise.all([
- localforage.ready(),
- localforage2.ready(),
- localforage3.ready()
- ]).then(function() {
- expect(console.info.logs.length).to.be(oldLogCount);
- });
- });
- });
-});
-
-SUPPORTED_DRIVERS.forEach(function(driverName) {
- describe(driverName + ' driver', function() {
- 'use strict';
-
- this.timeout(30000);
-
- before(function(done) {
- localforage.setDriver(driverName).then(done);
- });
-
- beforeEach(function(done) {
- localStorage.clear();
- localforage.ready().then(function() {
- localforage.clear(done);
- });
- });
-
- it('has a localStorage API', function() {
- expect(localforage.getItem).to.be.a('function');
- expect(localforage.setItem).to.be.a('function');
- expect(localforage.clear).to.be.a('function');
- expect(localforage.length).to.be.a('function');
- expect(localforage.removeItem).to.be.a('function');
- expect(localforage.key).to.be.a('function');
- });
-
- it('has the localForage API', function() {
- expect(localforage._initStorage).to.be.a('function');
- expect(localforage.config).to.be.a('function');
- expect(localforage.defineDriver).to.be.a('function');
- expect(localforage.driver).to.be.a('function');
- expect(localforage.supports).to.be.a('function');
- expect(localforage.iterate).to.be.a('function');
- expect(localforage.getItem).to.be.a('function');
- expect(localforage.setItem).to.be.a('function');
- expect(localforage.clear).to.be.a('function');
- expect(localforage.length).to.be.a('function');
- expect(localforage.removeItem).to.be.a('function');
- expect(localforage.key).to.be.a('function');
- expect(localforage.getDriver).to.be.a('function');
- expect(localforage.setDriver).to.be.a('function');
- expect(localforage.ready).to.be.a('function');
- expect(localforage.createInstance).to.be.a('function');
- expect(localforage.getSerializer).to.be.a('function');
- expect(localforage.dropInstance).to.be.a('function');
- });
-
- // Make sure we don't support bogus drivers.
- it('supports ' + driverName + ' database driver', function() {
- expect(localforage.supports(driverName) === true);
- expect(localforage.supports('I am not a driver') === false);
- });
-
- it('sets the right database driver', function() {
- expect(localforage.driver() === driverName);
- });
-
- it('has an empty length by default', function(done) {
- localforage.length(function(err, length) {
- expect(length).to.be(0);
- done();
- });
- });
-
- if (driverName === localforage.INDEXEDDB) {
- describe('Blob support', function() {
- var transaction;
- var called;
- var db;
- var blob = new Blob([''], { type: 'image/png' });
-
- before(function() {
- db = localforage._dbInfo.db;
- transaction = db.transaction;
- db.transaction = function() {
- called += 1;
- return transaction.apply(db, arguments);
- };
- });
-
- beforeEach(function() {
- called = 0;
- });
-
- it('not check for non Blob', function(done) {
- localforage.setItem('key', {}).then(
- function() {
- expect(called).to.be(1);
- done();
- },
- function(error) {
- done(error || 'error');
- }
- );
- });
-
- it('check for Blob', function(done) {
- localforage.setItem('key', blob).then(
- function() {
- expect(called).to.be.above(1);
- done();
- },
- function(error) {
- done(error || 'error');
- }
- );
- });
-
- it('check for Blob once', function(done) {
- localforage.setItem('key', blob).then(
- function() {
- expect(called).to.be(1);
- done();
- },
- function(error) {
- done(error || 'error');
- }
- );
- });
-
- after(function() {
- localforage._dbInfo.db.transaction = transaction;
- });
- });
-
- describe('recover (reconnect) from IDBDatabase InvalidStateError', function() {
- beforeEach(function(done) {
- Promise.all([
- localforage.setItem('key', 'value1'),
- localforage.setItem('key1', 'value1'),
- localforage.setItem('key2', 'value2'),
- localforage.setItem('key3', 'value3')
- ]).then(
- function() {
- localforage._dbInfo.db.close();
- done();
- },
- function(error) {
- done(error || 'error');
- }
- );
- });
-
- it('retrieves an item from the storage', function(done) {
- localforage.getItem('key').then(
- function(value) {
- expect(value).to.be('value1');
- done();
- },
- function(error) {
- done(error || 'error');
- }
- );
- });
-
- it('retrieves more than one items from the storage', function(done) {
- Promise.all([
- localforage.getItem('key1'),
- localforage.getItem('key2'),
- localforage.getItem('key3')
- ]).then(
- function(values) {
- expect(values).to.eql([
- 'value1',
- 'value2',
- 'value3'
- ]);
- done();
- },
- function(error) {
- done(error || 'error');
- }
- );
- });
-
- it('stores and retrieves an item from the storage', function(done) {
- localforage
- .setItem('key', 'value1b')
- .then(function() {
- return localforage.getItem('key');
- })
- .then(
- function(value) {
- expect(value).to.be('value1b');
- done();
- },
- function(error) {
- done(error || 'error');
- }
- );
- });
-
- it('stores and retrieves more than one items from the storage', function(done) {
- Promise.all([
- localforage.setItem('key1', 'value1b'),
- localforage.setItem('key2', 'value2b'),
- localforage.setItem('key3', 'value3b')
- ])
- .then(function() {
- return Promise.all([
- localforage.getItem('key1'),
- localforage.getItem('key2'),
- localforage.getItem('key3')
- ]);
- })
- .then(
- function(values) {
- expect(values).to.eql([
- 'value1b',
- 'value2b',
- 'value3b'
- ]);
- done();
- },
- function(error) {
- done(error || 'error');
- }
- );
- });
- });
- }
-
- if (driverName === localforage.WEBSQL) {
- describe('on QUOTA ERROR', function() {
- var transaction;
- var called;
- var db;
-
- function getQuotaErrorCode(transaction) {
- return new Promise(function(resolve) {
- transaction(
- function(t) {
- t.executeSql('');
- },
- function(err) {
- resolve(err.QUOTA_ERR);
- }
- );
- }).catch(function(err) {
- return err.QUOTA_ERR;
- });
- }
-
- beforeEach(function() {
- called = 0;
- db = localforage._dbInfo.db;
- transaction = db.transaction;
-
- db.transaction = function(fn, errFn) {
- called += 1;
- // restore the normal transaction,
- // so that subsequent operations work
- db.transaction = transaction;
-
- getQuotaErrorCode(transaction).then(function(
- QUOTA_ERR
- ) {
- var error = new Error();
- error.code = QUOTA_ERR;
- errFn(error);
- });
- };
- });
-
- it('should retry setItem', function(done) {
- localforage.setItem('key', {}).then(
- function() {
- expect(called).to.be(1);
- done();
- },
- function(error) {
- done(error || 'error');
- }
- );
- });
-
- after(function() {
- db.transaction = transaction || db.transaction;
- });
- });
- }
-
- it('should iterate [callback]', function(done) {
- localforage.setItem('officeX', 'InitechX', function(err, setValue) {
- expect(setValue).to.be('InitechX');
-
- localforage.getItem('officeX', function(err, value) {
- expect(value).to.be(setValue);
-
- localforage.setItem('officeY', 'InitechY', function(
- err,
- setValue
- ) {
- expect(setValue).to.be('InitechY');
-
- localforage.getItem('officeY', function(err, value) {
- expect(value).to.be(setValue);
-
- var accumulator = {};
- var iterationNumbers = [];
-
- localforage.iterate(
- function(value, key, iterationNumber) {
- accumulator[key] = value;
- iterationNumbers.push(iterationNumber);
- },
- function() {
- try {
- expect(accumulator.officeX).to.be(
- 'InitechX'
- );
- expect(accumulator.officeY).to.be(
- 'InitechY'
- );
- expect(iterationNumbers).to.eql([1, 2]);
- done();
- } catch (e) {
- done(e);
- }
- }
- );
- });
- });
- });
- });
- });
-
- it('should iterate [promise]', function(done) {
- var accumulator = {};
- var iterationNumbers = [];
-
- return localforage
- .setItem('officeX', 'InitechX')
- .then(function(setValue) {
- expect(setValue).to.be('InitechX');
- return localforage.getItem('officeX');
- })
- .then(function(value) {
- expect(value).to.be('InitechX');
- return localforage.setItem('officeY', 'InitechY');
- })
- .then(function(setValue) {
- expect(setValue).to.be('InitechY');
- return localforage.getItem('officeY');
- })
- .then(function(value) {
- expect(value).to.be('InitechY');
-
- return localforage.iterate(function(
- value,
- key,
- iterationNumber
- ) {
- accumulator[key] = value;
- iterationNumbers.push(iterationNumber);
- });
- })
- .then(function() {
- expect(accumulator.officeX).to.be('InitechX');
- expect(accumulator.officeY).to.be('InitechY');
- expect(iterationNumbers).to.eql([1, 2]);
- done();
- });
- });
-
- it('should break iteration with defined return value [callback]', function(done) {
- var breakCondition = 'Some value!';
-
- localforage.setItem('officeX', 'InitechX', function(err, setValue) {
- expect(setValue).to.be('InitechX');
-
- localforage.getItem('officeX', function(err, value) {
- expect(value).to.be(setValue);
-
- localforage.setItem('officeY', 'InitechY', function(
- err,
- setValue
- ) {
- expect(setValue).to.be('InitechY');
-
- localforage.getItem('officeY', function(err, value) {
- expect(value).to.be(setValue);
-
- // Loop is broken within first iteration.
- localforage.iterate(
- function() {
- // Returning defined value will break the cycle.
- return breakCondition;
- },
- function(err, loopResult) {
- // The value that broken the cycle is returned
- // as a result.
- expect(loopResult).to.be(breakCondition);
-
- done();
- }
- );
- });
- });
- });
- });
- });
-
- it('should break iteration with defined return value [promise]', function(done) {
- var breakCondition = 'Some value!';
-
- localforage
- .setItem('officeX', 'InitechX')
- .then(function(setValue) {
- expect(setValue).to.be('InitechX');
- return localforage.getItem('officeX');
- })
- .then(function(value) {
- expect(value).to.be('InitechX');
- return localforage.setItem('officeY', 'InitechY');
- })
- .then(function(setValue) {
- expect(setValue).to.be('InitechY');
- return localforage.getItem('officeY');
- })
- .then(function(value) {
- expect(value).to.be('InitechY');
- return localforage.iterate(function() {
- return breakCondition;
- });
- })
- .then(function(result) {
- expect(result).to.be(breakCondition);
- done();
- });
- });
-
- it('should iterate() through only its own keys/values', function(done) {
- localStorage.setItem('local', 'forage');
- localforage
- .setItem('office', 'Initech')
- .then(function() {
- return localforage.setItem('name', 'Bob');
- })
- .then(function() {
- // Loop through all key/value pairs; {local: 'forage'} set
- // manually should not be returned.
- var numberOfItems = 0;
- var iterationNumberConcat = '';
-
- localStorage.setItem('locals', 'forages');
-
- localforage.iterate(
- function(value, key, iterationNumber) {
- expect(key).to.not.be('local');
- expect(value).to.not.be('forage');
- numberOfItems++;
- iterationNumberConcat += iterationNumber;
- },
- function(err) {
- if (!err) {
- // While there are 4 items in localStorage,
- // only 2 items were set using localForage.
- expect(numberOfItems).to.be(2);
-
- // Only 2 items were set using localForage,
- // so we should get '12' and not '1234'
- expect(iterationNumberConcat).to.be('12');
-
- done();
- }
- }
- );
- });
- });
-
- // Test for https://github.com/mozilla/localForage/issues/175
- it('nested getItem inside clear works [callback]', function(done) {
- localforage.setItem('hello', 'Hello World !', function() {
- localforage.clear(function() {
- localforage.getItem('hello', function(secondValue) {
- expect(secondValue).to.be(null);
- done();
- });
- });
- });
- });
- it('nested getItem inside clear works [promise]', function(done) {
- localforage
- .setItem('hello', 'Hello World !')
- .then(function() {
- return localforage.clear();
- })
- .then(function() {
- return localforage.getItem('hello');
- })
- .then(function(secondValue) {
- expect(secondValue).to.be(null);
- done();
- });
- });
-
- // Because localStorage doesn't support saving the `undefined` type, we
- // always return `null` so that localForage is consistent across
- // browsers.
- // https://github.com/mozilla/localForage/pull/42
- it('returns null for undefined key [callback]', function(done) {
- localforage.getItem('key', function(err, value) {
- expect(value).to.be(null);
- done();
- });
- });
-
- it('returns null for undefined key [promise]', function(done) {
- localforage.getItem('key').then(function(value) {
- expect(value).to.be(null);
- done();
- });
- });
-
- it('saves an item [callback]', function(done) {
- localforage.setItem('office', 'Initech', function(err, setValue) {
- expect(setValue).to.be('Initech');
-
- localforage.getItem('office', function(err, value) {
- expect(value).to.be(setValue);
- done();
- });
- });
- });
-
- it('saves an item [promise]', function(done) {
- localforage
- .setItem('office', 'Initech')
- .then(function(setValue) {
- expect(setValue).to.be('Initech');
-
- return localforage.getItem('office');
- })
- .then(function(value) {
- expect(value).to.be('Initech');
- done();
- });
- });
-
- it('saves an item over an existing key [callback]', function(done) {
- localforage.setItem('4th floor', 'Mozilla', function(
- err,
- setValue
- ) {
- expect(setValue).to.be('Mozilla');
-
- localforage.setItem('4th floor', 'Quora', function(
- err,
- newValue
- ) {
- expect(newValue).to.not.be(setValue);
- expect(newValue).to.be('Quora');
-
- localforage.getItem('4th floor', function(err, value) {
- expect(value).to.not.be(setValue);
- expect(value).to.be(newValue);
- done();
- });
- });
- });
- });
- it('saves an item over an existing key [promise]', function(done) {
- localforage
- .setItem('4e', 'Mozilla')
- .then(function(setValue) {
- expect(setValue).to.be('Mozilla');
-
- return localforage.setItem('4e', 'Quora');
- })
- .then(function(newValue) {
- expect(newValue).to.not.be('Mozilla');
- expect(newValue).to.be('Quora');
-
- return localforage.getItem('4e');
- })
- .then(function(value) {
- expect(value).to.not.be('Mozilla');
- expect(value).to.be('Quora');
- done();
- });
- });
-
- it('returns null when saving undefined [callback]', function(done) {
- localforage.setItem('undef', undefined, function(err, setValue) {
- expect(setValue).to.be(null);
-
- done();
- });
- });
- it('returns null when saving undefined [promise]', function(done) {
- localforage.setItem('undef', undefined).then(function(setValue) {
- expect(setValue).to.be(null);
-
- done();
- });
- });
-
- it('returns null when saving null [callback]', function(done) {
- localforage.setItem('null', null, function(err, setValue) {
- expect(setValue).to.be(null);
-
- done();
- });
- });
- it('returns null when saving null [promise]', function(done) {
- localforage.setItem('null', null).then(function(setValue) {
- expect(setValue).to.be(null);
-
- done();
- });
- });
-
- it('returns null for a non-existant key [callback]', function(done) {
- localforage.getItem('undef', function(err, value) {
- expect(value).to.be(null);
-
- done();
- });
- });
- it('returns null for a non-existant key [promise]', function(done) {
- localforage.getItem('undef').then(function(value) {
- expect(value).to.be(null);
-
- done();
- });
- });
-
- // github.com/mozilla/localforage/pull/24#discussion-diff-9389662R158
- // localStorage's method API (`localStorage.getItem('foo')`) returns
- // `null` for undefined keys, even though its getter/setter API
- // (`localStorage.foo`) returns `undefined` for the same key. Gaia's
- // asyncStorage API, which is based on localStorage and upon which
- // localforage is based, ALSO returns `null`. BLARG! So for now, we
- // just return null, because there's no way to know from localStorage
- // if the key is ACTUALLY `null` or undefined but returning `null`.
- // And returning `undefined` here would break compatibility with
- // localStorage fallback. Maybe in the future we won't care...
- it('returns null from an undefined key [callback]', function(done) {
- localforage.key(0, function(err, key) {
- expect(key).to.be(null);
-
- done();
- });
- });
- it('returns null from an undefined key [promise]', function(done) {
- localforage.key(0).then(function(key) {
- expect(key).to.be(null);
-
- done();
- });
- });
-
- it('returns key name [callback]', function(done) {
- localforage.setItem('office', 'Initech').then(function() {
- localforage.key(0, function(err, key) {
- expect(key).to.be('office');
-
- done();
- });
- });
- });
- it('returns key name [promise]', function(done) {
- localforage
- .setItem('office', 'Initech')
- .then(function() {
- return localforage.key(0);
- })
- .then(function(key) {
- expect(key).to.be('office');
-
- done();
- });
- });
-
- it('removes an item [callback]', function(done) {
- localforage.setItem('office', 'Initech', function() {
- localforage.setItem('otherOffice', 'Initrode', function() {
- localforage.removeItem('office', function() {
- localforage.getItem('office', function(
- err,
- emptyValue
- ) {
- expect(emptyValue).to.be(null);
-
- localforage.getItem('otherOffice', function(
- err,
- value
- ) {
- expect(value).to.be('Initrode');
-
- done();
- });
- });
- });
- });
- });
- });
- it('removes an item [promise]', function(done) {
- localforage
- .setItem('office', 'Initech')
- .then(function() {
- return localforage.setItem('otherOffice', 'Initrode');
- })
- .then(function() {
- return localforage.removeItem('office');
- })
- .then(function() {
- return localforage.getItem('office');
- })
- .then(function(emptyValue) {
- expect(emptyValue).to.be(null);
-
- return localforage.getItem('otherOffice');
- })
- .then(function(value) {
- expect(value).to.be('Initrode');
-
- done();
- });
- });
-
- it('removes all items [callback]', function(done) {
- localforage.setItem('office', 'Initech', function() {
- localforage.setItem('otherOffice', 'Initrode', function() {
- localforage.length(function(err, length) {
- expect(length).to.be(2);
-
- localforage.clear(function() {
- localforage.getItem('office', function(err, value) {
- expect(value).to.be(null);
-
- localforage.length(function(err, length) {
- expect(length).to.be(0);
-
- done();
- });
- });
- });
- });
- });
- });
- });
- it('removes all items [promise]', function(done) {
- localforage
- .setItem('office', 'Initech')
- .then(function() {
- return localforage.setItem('otherOffice', 'Initrode');
- })
- .then(function() {
- return localforage.length();
- })
- .then(function(length) {
- expect(length).to.be(2);
-
- return localforage.clear();
- })
- .then(function() {
- return localforage.getItem('office');
- })
- .then(function(value) {
- expect(value).to.be(null);
-
- return localforage.length();
- })
- .then(function(length) {
- expect(length).to.be(0);
-
- done();
- });
- });
-
- if (driverName === localforage.LOCALSTORAGE) {
- it('removes only own items upon clear', function(done) {
- localStorage.setItem('local', 'forage');
-
- localforage
- .setItem('office', 'Initech')
- .then(function() {
- return localforage.clear();
- })
- .then(function() {
- expect(localStorage.getItem('local')).to.be('forage');
-
- localStorage.clear();
-
- done();
- });
- });
-
- it('returns only its own keys from keys()', function(done) {
- localStorage.setItem('local', 'forage');
-
- localforage
- .setItem('office', 'Initech')
- .then(function() {
- return localforage.keys();
- })
- .then(function(keys) {
- expect(keys).to.eql(['office']);
-
- localStorage.clear();
-
- done();
- });
- });
-
- it('counts only its own items with length()', function(done) {
- localStorage.setItem('local', 'forage');
- localStorage.setItem('another', 'value');
-
- localforage
- .setItem('office', 'Initech')
- .then(function() {
- return localforage.length();
- })
- .then(function(length) {
- expect(length).to.be(1);
-
- localStorage.clear();
-
- done();
- });
- });
- }
-
- it('has a length after saving an item [callback]', function(done) {
- localforage.length(function(err, length) {
- expect(length).to.be(0);
- localforage.setItem('rapper', 'Black Thought', function() {
- localforage.length(function(err, length) {
- expect(length).to.be(1);
-
- done();
- });
- });
- });
- });
- it('has a length after saving an item [promise]', function(done) {
- localforage
- .length()
- .then(function(length) {
- expect(length).to.be(0);
-
- return localforage.setItem('lame rapper', 'Vanilla Ice');
- })
- .then(function() {
- return localforage.length();
- })
- .then(function(length) {
- expect(length).to.be(1);
-
- done();
- });
- });
-
- // Deal with non-string keys, see issue #250
- // https://github.com/mozilla/localForage/issues/250
- it('casts an undefined key to a String', function(done) {
- localforage
- .setItem(undefined, 'goodness!')
- .then(function(value) {
- expect(value).to.be('goodness!');
-
- return localforage.getItem(undefined);
- })
- .then(function(value) {
- expect(value).to.be('goodness!');
-
- return localforage.removeItem(undefined);
- })
- .then(function() {
- return localforage.length();
- })
- .then(function(length) {
- expect(length).to.be(0);
- done();
- });
- });
-
- it('casts a null key to a String', function(done) {
- localforage
- .setItem(null, 'goodness!')
- .then(function(value) {
- expect(value).to.be('goodness!');
-
- return localforage.getItem(null);
- })
- .then(function(value) {
- expect(value).to.be('goodness!');
-
- return localforage.removeItem(null);
- })
- .then(function() {
- return localforage.length();
- })
- .then(function(length) {
- expect(length).to.be(0);
- done();
- });
- });
-
- it('casts a float key to a String', function(done) {
- localforage
- .setItem(537.35737, 'goodness!')
- .then(function(value) {
- expect(value).to.be('goodness!');
-
- return localforage.getItem(537.35737);
- })
- .then(function(value) {
- expect(value).to.be('goodness!');
-
- return localforage.removeItem(537.35737);
- })
- .then(function() {
- return localforage.length();
- })
- .then(function(length) {
- expect(length).to.be(0);
- done();
- });
- });
-
- it('is retrieved by getDriver [callback]', function(done) {
- localforage.getDriver(driverName, function(driver) {
- expect(typeof driver).to.be('object');
- driverApiMethods
- .concat('_initStorage')
- .forEach(function(methodName) {
- expect(typeof driver[methodName]).to.be('function');
- });
- expect(driver._driver).to.be(driverName);
- done();
- });
- });
-
- it('is retrieved by getDriver [promise]', function(done) {
- localforage.getDriver(driverName).then(function(driver) {
- expect(typeof driver).to.be('object');
- driverApiMethods
- .concat('_initStorage')
- .forEach(function(methodName) {
- expect(typeof driver[methodName]).to.be('function');
- });
- expect(driver._driver).to.be(driverName);
- done();
- });
- });
-
- if (
- driverName === localforage.WEBSQL ||
- driverName === localforage.LOCALSTORAGE
- ) {
- it('exposes the serializer on the dbInfo object', function(done) {
- localforage.ready().then(function() {
- expect(localforage._dbInfo.serializer).to.be.an('object');
- done();
- });
- });
- }
- });
-
- function prepareStorage(storageName) {
- // Delete IndexedDB storages (start from scratch)
- // Refers to issue #492 - https://github.com/mozilla/localForage/issues/492
- if (driverName === localforage.INDEXEDDB) {
- return new Promise(function(resolve) {
- indexedDB.deleteDatabase(storageName).onsuccess = resolve;
- });
- }
-
- // Otherwise, do nothing
- return Promise.resolve();
- }
-
- describe(driverName + ' driver multiple instances', function() {
- 'use strict';
-
- this.timeout(30000);
-
- var localforage2 = null;
- var localforage3 = null;
-
- before(function(done) {
- prepareStorage('storage2').then(function() {
- localforage2 = localforage.createInstance({
- name: 'storage2',
- // We need a small value here
- // otherwise local PhantomJS test
- // will fail with SECURITY_ERR.
- // TravisCI seem to work fine though.
- size: 1024,
- storeName: 'storagename2'
- });
-
- // Same name, but different storeName since this has been
- // malfunctioning before w/ IndexedDB.
- localforage3 = localforage.createInstance({
- name: 'storage2',
- // We need a small value here
- // otherwise local PhantomJS test
- // will fail with SECURITY_ERR.
- // TravisCI seem to work fine though.
- size: 1024,
- storeName: 'storagename3'
- });
-
- Promise.all([
- localforage.setDriver(driverName),
- localforage2.setDriver(driverName),
- localforage3.setDriver(driverName)
- ]).then(function() {
- done();
- });
- });
- });
-
- beforeEach(function(done) {
- Promise.all([
- localforage.clear(),
- localforage2.clear(),
- localforage3.clear()
- ]).then(function() {
- done();
- });
- });
-
- it('is not be able to access values of other instances', function(done) {
- Promise.all([
- localforage.setItem('key1', 'value1a'),
- localforage2.setItem('key2', 'value2a'),
- localforage3.setItem('key3', 'value3a')
- ])
- .then(function() {
- return Promise.all([
- localforage.getItem('key2').then(function(value) {
- expect(value).to.be(null);
- }),
- localforage2.getItem('key1').then(function(value) {
- expect(value).to.be(null);
- }),
- localforage2.getItem('key3').then(function(value) {
- expect(value).to.be(null);
- }),
- localforage3.getItem('key2').then(function(value) {
- expect(value).to.be(null);
- })
- ]);
- })
- .then(
- function() {
- done();
- },
- function(errors) {
- done(new Error(errors));
- }
- );
- });
-
- it('retrieves the proper value when using the same key with other instances', function(done) {
- Promise.all([
- localforage.setItem('key', 'value1'),
- localforage2.setItem('key', 'value2'),
- localforage3.setItem('key', 'value3')
- ])
- .then(function() {
- return Promise.all([
- localforage.getItem('key').then(function(value) {
- expect(value).to.be('value1');
- }),
- localforage2.getItem('key').then(function(value) {
- expect(value).to.be('value2');
- }),
- localforage3.getItem('key').then(function(value) {
- expect(value).to.be('value3');
- })
- ]);
- })
- .then(
- function() {
- done();
- },
- function(errors) {
- done(new Error(errors));
- }
- );
- });
- });
-
- // Refers to issue #492 - https://github.com/mozilla/localForage/issues/492
- describe(
- driverName + ' driver multiple instances (concurrent on same database)',
- function() {
- 'use strict';
-
- this.timeout(30000);
-
- before(function() {
- return Promise.all([
- prepareStorage('storage3'),
- prepareStorage('commonStorage'),
- prepareStorage('commonStorage2'),
- prepareStorage('commonStorage3')
- ]);
- });
-
- it('chains operation on multiple stores', function() {
- var localforage1 = localforage.createInstance({
- name: 'storage3',
- storeName: 'store1',
- size: 1024
- });
-
- var localforage2 = localforage.createInstance({
- name: 'storage3',
- storeName: 'store2',
- size: 1024
- });
-
- var localforage3 = localforage.createInstance({
- name: 'storage3',
- storeName: 'store3',
- size: 1024
- });
-
- var promise1 = localforage1
- .setItem('key', 'value1')
- .then(function() {
- return localforage1.getItem('key');
- })
- .then(function(value) {
- expect(value).to.be('value1');
- });
-
- var promise2 = localforage2
- .setItem('key', 'value2')
- .then(function() {
- return localforage2.getItem('key');
- })
- .then(function(value) {
- expect(value).to.be('value2');
- });
-
- var promise3 = localforage3
- .setItem('key', 'value3')
- .then(function() {
- return localforage3.getItem('key');
- })
- .then(function(value) {
- expect(value).to.be('value3');
- });
-
- return Promise.all([promise1, promise2, promise3]);
- });
-
- it('can create multiple instances of the same store', function() {
- var localforage1;
- var localforage2;
- var localforage3;
-
- Promise.resolve()
- .then(function() {
- localforage1 = localforage.createInstance({
- name: 'commonStorage',
- storeName: 'commonStore',
- size: 1024
- });
- return localforage1.ready();
- })
- .then(function() {
- localforage2 = localforage.createInstance({
- name: 'commonStorage',
- storeName: 'commonStore',
- size: 1024
- });
- return localforage2.ready();
- })
- .then(function() {
- localforage3 = localforage.createInstance({
- name: 'commonStorage',
- storeName: 'commonStore',
- size: 1024
- });
- return localforage3.ready();
- })
- .then(function() {
- return Promise.resolve()
- .then(function() {
- return localforage1
- .setItem('key1', 'value1')
- .then(function() {
- return localforage1.getItem('key1');
- })
- .then(function(value) {
- expect(value).to.be('value1');
- });
- })
- .then(function() {
- return localforage2
- .setItem('key2', 'value2')
- .then(function() {
- return localforage2.getItem('key2');
- })
- .then(function(value) {
- expect(value).to.be('value2');
- });
- })
- .then(function() {
- return localforage3
- .setItem('key3', 'value3')
- .then(function() {
- return localforage3.getItem('key3');
- })
- .then(function(value) {
- expect(value).to.be('value3');
- });
- });
- });
- });
-
- it('can create multiple instances of the same store and do concurrent operations', function() {
- var localforage1;
- var localforage2;
- var localforage3;
- var localforage3b;
-
- Promise.resolve()
- .then(function() {
- localforage1 = localforage.createInstance({
- name: 'commonStorage2',
- storeName: 'commonStore',
- size: 1024
- });
- return localforage1.ready();
- })
- .then(function() {
- localforage2 = localforage.createInstance({
- name: 'commonStorage2',
- storeName: 'commonStore',
- size: 1024
- });
- return localforage2.ready();
- })
- .then(function() {
- localforage3 = localforage.createInstance({
- name: 'commonStorage2',
- storeName: 'commonStore',
- size: 1024
- });
- return localforage3.ready();
- })
- .then(function() {
- localforage3b = localforage.createInstance({
- name: 'commonStorage2',
- storeName: 'commonStore',
- size: 1024
- });
- return localforage3b.ready();
- })
- .then(function() {
- var promise1 = localforage1
- .setItem('key1', 'value1')
- .then(function() {
- return localforage1.getItem('key1');
- })
- .then(function(value) {
- expect(value).to.be('value1');
- });
-
- var promise2 = localforage2
- .setItem('key2', 'value2')
- .then(function() {
- return localforage2.getItem('key2');
- })
- .then(function(value) {
- expect(value).to.be('value2');
- });
-
- var promise3 = localforage3
- .setItem('key3', 'value3')
- .then(function() {
- return localforage3.getItem('key3');
- })
- .then(function(value) {
- expect(value).to.be('value3');
- });
-
- var promise4 = localforage3b
- .setItem('key3', 'value3')
- .then(function() {
- return localforage3.getItem('key3');
- })
- .then(function(value) {
- expect(value).to.be('value3');
- });
-
- return Promise.all([
- promise1,
- promise2,
- promise3,
- promise4
- ]);
- });
- });
-
- it('can create multiple instances of the same store concurrently', function() {
- var localforage1 = localforage.createInstance({
- name: 'commonStorage3',
- storeName: 'commonStore',
- size: 1024
- });
-
- var localforage2 = localforage.createInstance({
- name: 'commonStorage3',
- storeName: 'commonStore',
- size: 1024
- });
-
- var localforage3 = localforage.createInstance({
- name: 'commonStorage3',
- storeName: 'commonStore',
- size: 1024
- });
-
- var localforage3b = localforage.createInstance({
- name: 'commonStorage3',
- storeName: 'commonStore',
- size: 1024
- });
-
- var promise1 = localforage1
- .setItem('key1', 'value1')
- .then(function() {
- return localforage1.getItem('key1');
- })
- .then(function(value) {
- expect(value).to.be('value1');
- });
-
- var promise2 = localforage2
- .setItem('key2', 'value2')
- .then(function() {
- return localforage2.getItem('key2');
- })
- .then(function(value) {
- expect(value).to.be('value2');
- });
-
- var promise3 = localforage3
- .setItem('key3', 'value3')
- .then(function() {
- return localforage3.getItem('key3');
- })
- .then(function(value) {
- expect(value).to.be('value3');
- });
-
- var promise4 = localforage3b
- .setItem('key3', 'value3')
- .then(function() {
- return localforage3.getItem('key3');
- })
- .then(function(value) {
- expect(value).to.be('value3');
- });
-
- return Promise.all([promise1, promise2, promise3, promise4]);
- });
- }
- );
-
- describe(driverName + ' driver', function() {
- 'use strict';
-
- var driverPreferedOrder;
-
- before(function() {
- // add some unsupported drivers before
- // and after the target driver
- driverPreferedOrder = ['I am a not supported driver'];
-
- if (!localforage.supports(localforage.WEBSQL)) {
- driverPreferedOrder.push(localforage.WEBSQL);
- }
- if (!localforage.supports(localforage.INDEXEDDB)) {
- driverPreferedOrder.push(localforage.INDEXEDDB);
- }
- if (!localforage.supports(localforage.LOCALSTORAGE)) {
- driverPreferedOrder.push(localforage.localStorage);
- }
-
- driverPreferedOrder.push(driverName);
-
- driverPreferedOrder.push('I am another not supported driver');
- });
-
- it('is used according to setDriver preference order', function(done) {
- localforage.setDriver(driverPreferedOrder).then(function() {
- expect(localforage.driver()).to.be(driverName);
- done();
- });
- });
- });
-
- describe(
- driverName + ' driver when the callback throws an Error',
- function() {
- 'use strict';
-
- var testObj = {
- throwFunc: function() {
- testObj.throwFuncCalls++;
- throw new Error('Thrown test error');
- },
- throwFuncCalls: 0
- };
-
- beforeEach(function(done) {
- testObj.throwFuncCalls = 0;
- done();
- });
-
- it('resolves the promise of getItem()', function(done) {
- localforage.getItem('key', testObj.throwFunc).then(function() {
- expect(testObj.throwFuncCalls).to.be(1);
- done();
- });
- });
-
- it('resolves the promise of setItem()', function(done) {
- localforage
- .setItem('key', 'test', testObj.throwFunc)
- .then(function() {
- expect(testObj.throwFuncCalls).to.be(1);
- done();
- });
- });
-
- it('resolves the promise of clear()', function(done) {
- localforage.clear(testObj.throwFunc).then(function() {
- expect(testObj.throwFuncCalls).to.be(1);
- done();
- });
- });
-
- it('resolves the promise of length()', function(done) {
- localforage.length(testObj.throwFunc).then(function() {
- expect(testObj.throwFuncCalls).to.be(1);
- done();
- });
- });
-
- it('resolves the promise of removeItem()', function(done) {
- localforage
- .removeItem('key', testObj.throwFunc)
- .then(function() {
- expect(testObj.throwFuncCalls).to.be(1);
- done();
- });
- });
-
- it('resolves the promise of key()', function(done) {
- localforage.key('key', testObj.throwFunc).then(function() {
- expect(testObj.throwFuncCalls).to.be(1);
- done();
- });
- });
-
- it('resolves the promise of keys()', function(done) {
- localforage.keys(testObj.throwFunc).then(function() {
- expect(testObj.throwFuncCalls).to.be(1);
- done();
- });
- });
- }
- );
-
- describe(driverName + ' driver when ready() gets rejected', function() {
- 'use strict';
-
- this.timeout(30000);
-
- var _oldReady;
-
- beforeEach(function(done) {
- _oldReady = localforage.ready;
- localforage.ready = function() {
- return Promise.reject();
- };
- done();
- });
-
- afterEach(function(done) {
- localforage.ready = _oldReady;
- _oldReady = null;
- done();
- });
-
- driverApiMethods.forEach(function(methodName) {
- it('rejects ' + methodName + '() promise', function(done) {
- localforage[methodName]().then(null, function(/*err*/) {
- done();
- });
- });
- });
- });
-});
-
-DRIVERS.forEach(function(driverName) {
- describe(driverName + ' driver instance', function() {
- it('creates a new instance and sets the driver', function(done) {
- var localforage2 = localforage.createInstance({
- name: 'storage2',
- driver: driverName,
- // We need a small value here
- // otherwise local PhantomJS test
- // will fail with SECURITY_ERR.
- // TravisCI seem to work fine though.
- size: 1024,
- storeName: 'storagename2'
- });
-
- // since config actually uses setDriver which is async,
- // and since driver() and supports() are not defered (are sync),
- // we have to wait till an async method returns
- localforage2.length().then(
- function() {
- expect(localforage2.driver()).to.be(driverName);
- done();
- },
- function() {
- expect(localforage2.driver()).to.be(null);
- done();
- }
- );
- });
- });
-});
-
-SUPPORTED_DRIVERS.forEach(function(driverName) {
- describe(driverName + ' driver dropInstance', function() {
- this.timeout(30000);
-
- function setCommonOpts(opts) {
- opts.driver = driverName;
- opts.size = 1024;
- return opts;
- }
-
- var dropStoreDbName = 'dropStoreDb';
-
- var nodropInstance;
- var nodropInstanceOptions = setCommonOpts({
- name: dropStoreDbName,
- storeName: 'nodropStore'
- });
-
- var dropStoreInstance1;
- var dropStoreInstance1Options = setCommonOpts({
- name: dropStoreDbName,
- storeName: 'dropStore'
- });
-
- var dropStoreInstance2;
- var dropStoreInstance2Options = setCommonOpts({
- name: dropStoreDbName,
- storeName: 'dropStore2'
- });
-
- var dropStoreInstance3;
- var dropStoreInstance3Options = setCommonOpts({
- name: dropStoreDbName,
- storeName: 'dropStore3'
- });
-
- var dropDbInstance;
- var dropDbInstanceOptions = setCommonOpts({
- name: 'dropDb',
- storeName: 'dropStore'
- });
-
- var dropDb2Instance;
- var dropDb2InstanceOptions = setCommonOpts({
- name: 'dropDb2',
- storeName: 'dropStore'
- });
-
- var dropDb3name = 'dropDb3';
-
- var dropDb3Instance1;
- var dropDb3Instance1Options = setCommonOpts({
- name: dropDb3name,
- storeName: 'dropStore1'
- });
-
- var dropDb3Instance2;
- var dropDb3Instance2Options = setCommonOpts({
- name: dropDb3name,
- storeName: 'dropStore2'
- });
-
- var dropDb3Instance3;
- var dropDb3Instance3Options = setCommonOpts({
- name: dropDb3name,
- storeName: 'dropStore3'
- });
-
- before(function() {
- nodropInstance = localforage.createInstance(nodropInstanceOptions);
- dropStoreInstance1 = localforage.createInstance(
- dropStoreInstance1Options
- );
- dropStoreInstance2 = localforage.createInstance(
- dropStoreInstance2Options
- );
- dropStoreInstance3 = localforage.createInstance(
- dropStoreInstance3Options
- );
- dropDbInstance = localforage.createInstance(dropDbInstanceOptions);
- dropDb2Instance = localforage.createInstance(
- dropDb2InstanceOptions
- );
- dropDb3Instance1 = localforage.createInstance(
- dropDb3Instance1Options
- );
- dropDb3Instance2 = localforage.createInstance(
- dropDb3Instance2Options
- );
- dropDb3Instance3 = localforage.createInstance(
- dropDb3Instance3Options
- );
- return Promise.resolve()
- .then(function() {
- return nodropInstance.setItem('key1', 'value0');
- })
- .then(function() {
- return dropStoreInstance1.setItem('key1', 'value1');
- })
- .then(function() {
- return dropStoreInstance2.setItem('key1', 'value2');
- })
- .then(function() {
- return dropStoreInstance3.setItem('key1', 'value3');
- })
- .then(function() {
- return dropDbInstance.setItem('key1', 'value3');
- })
- .then(function() {
- return dropDb2Instance.setItem('key1', 'value3');
- })
- .then(function() {
- return dropDb3Instance1.setItem('key1', 'value1');
- })
- .then(function() {
- return dropDb3Instance2.setItem('key1', 'value2');
- })
- .then(function() {
- return dropDb3Instance3.setItem('key1', 'value3');
- });
- });
-
- function expectStoreToNotExistAsync(options) {
- return new Promise(function(resolve, reject) {
- if (driverName === localforage.INDEXEDDB) {
- var req = indexedDB.open(options.name);
- req.onsuccess = function() {
- var db = req.result;
- if (!db) {
- reject();
- return;
- }
- expect(
- db.objectStoreNames.contains(options.storeName)
- ).to.be(false);
- db.close();
- resolve();
- };
- req.onerror = req.onblocked = reject;
- } else if (driverName === localforage.WEBSQL) {
- var db = openDatabase(options.name, '', '', 0);
- db.transaction(function(t) {
- t.executeSql(
- "SELECT name FROM sqlite_master WHERE type='table' AND name = ?",
- [options.storeName],
- function(t, results) {
- expect(results.rows.length).to.be(0);
- resolve();
- },
- reject
- );
- }, reject);
- } else if (driverName === localforage.LOCALSTORAGE) {
- var keyPrefix = (function _getKeyPrefix(
- options,
- defaultConfig
- ) {
- var keyPrefix = options.name + '/';
-
- if (options.storeName !== defaultConfig.storeName) {
- keyPrefix += options.storeName + '/';
- }
- return keyPrefix;
- })(options, {
- name: 'localforage',
- storeName: 'keyvaluepairs'
- });
-
- var foundLocalStorageKey = false;
- for (
- var i = 0, length = localStorage.length;
- i < length;
- i++
- ) {
- if (localStorage.key(i).indexOf(keyPrefix) === 0) {
- foundLocalStorageKey = true;
- break;
- }
- }
- expect(foundLocalStorageKey).to.be(false);
- resolve();
- } else {
- throw new Error('Not Implemented Exception');
- }
- });
- }
-
- it('drops the current instance without affecting the rest', function() {
- return dropStoreInstance1
- .dropInstance()
- .then(function() {
- return nodropInstance.getItem('key1');
- })
- .then(function(value) {
- expect(value).to.be('value0');
- });
- });
-
- it('can recreate and set values to previously dropped instances', function() {
- return dropStoreInstance1
- .dropInstance()
- .then(function() {
- return dropStoreInstance1.getItem('key1');
- })
- .then(function(value) {
- expect(value).to.be(null);
- return dropStoreInstance1.length();
- })
- .then(function(length) {
- expect(length).to.be(0);
- })
- .then(function() {
- return dropStoreInstance1.setItem('key1', 'newvalue2');
- })
- .then(function() {
- return dropStoreInstance1.getItem('key1');
- })
- .then(function(value) {
- expect(value).to.be('newvalue2');
- });
- });
-
- it('drops an other instance without affecting the rest', function() {
- var opts = {
- name: dropStoreInstance2Options.name,
- storeName: dropStoreInstance2Options.storeName
- };
- return nodropInstance
- .dropInstance(opts)
- .then(function() {
- return nodropInstance.getItem('key1');
- })
- .then(function(value) {
- expect(value).to.be('value0');
- });
- });
-
- it('the dropped instance is completely removed', function() {
- var opts = {
- name: dropStoreInstance3Options.name,
- storeName: dropStoreInstance3Options.storeName
- };
- return dropStoreInstance3.dropInstance().then(function() {
- return expectStoreToNotExistAsync(opts);
- });
- });
-
- it('resolves when trying to drop a store that does not exit', function() {
- var opts = {
- name: dropStoreInstance3Options.name,
- storeName: 'NotExistingStore' + Date.now()
- };
- return dropStoreInstance3.dropInstance(opts);
- });
-
- function expectDBToNotExistAsync(options) {
- return new Promise(function(resolve, reject) {
- if (driverName === localforage.INDEXEDDB) {
- var req = indexedDB.open(options.name);
- req.onsuccess = function() {
- var db = req.result;
- if (!db) {
- reject();
- return;
- }
- expect(db.objectStoreNames.length).to.be(0);
- db.close();
- resolve();
- };
- req.onerror = req.onblocked = reject;
- } else if (driverName === localforage.WEBSQL) {
- var db = openDatabase(options.name, '', '', 0);
- db.transaction(function(t) {
- t.executeSql(
- "SELECT name FROM sqlite_master WHERE type='table'",
- [],
- function(t, results) {
- var stores = Array.prototype.filter.call(
- results.rows,
- function(obj) {
- return (
- obj &&
- obj.name &&
- obj.name.indexOf('__') !== 0
- );
- }
- );
- expect(stores.length).to.be(0);
- resolve();
- },
- reject
- );
- }, reject);
- } else if (driverName === localforage.LOCALSTORAGE) {
- var keyPrefix = (function _getKeyPrefix(options) {
- return options.name + '/';
- })(options);
-
- var foundLocalStorageKey = false;
- for (
- var i = 0, length = localStorage.length;
- i < length;
- i++
- ) {
- if (localStorage.key(i).indexOf(keyPrefix) === 0) {
- foundLocalStorageKey = true;
- break;
- }
- }
- expect(foundLocalStorageKey).to.be(false);
- resolve();
- } else {
- throw new Error('Not Implemented Exception');
- }
- });
- }
-
- it('the dropped "DB" can be recreated', function() {
- var opts = {
- name: dropDbInstanceOptions.name
- };
- return dropDbInstance
- .dropInstance(opts)
- .then(function() {
- return dropDbInstance.getItem('key1');
- })
- .then(function(value) {
- expect(value).to.be(null);
- });
- });
-
- it('the dropped "DB" is completely removed', function() {
- var opts = {
- name: dropDb2InstanceOptions.name
- };
- return dropDb2Instance.dropInstance(opts).then(function() {
- return expectDBToNotExistAsync(opts);
- });
- });
-
- it('resolves when trying to drop a store of a "DB" that does not exit', function() {
- var opts = {
- name: 'NotExistingDB' + Date.now(),
- storeName: 'NotExistingStore' + Date.now()
- };
- return dropStoreInstance3.dropInstance(opts);
- });
-
- it('resolves when trying to drop a "DB" that does not exist', function() {
- var opts = {
- name: 'NotExistingDB' + Date.now()
- };
- return dropStoreInstance3.dropInstance(opts);
- });
-
- it('drops a "DB" that we previously dropped a store', function() {
- var opts = {
- name: dropStoreInstance3Options.name
- };
- return dropStoreInstance3.dropInstance(opts).then(function() {
- return expectDBToNotExistAsync(opts);
- });
- });
-
- it('drops a "DB" after dropping all its stores', function() {
- var opts = {
- name: dropDb3name
- };
- // Before trying to drop a different store/DB
- // make sure that the instance that you will use
- // is configured to use the same driver as well.
- return Promise.resolve()
- .then(function() {
- return dropDb3Instance1.dropInstance({
- name: dropDb3name,
- storeName: dropDb3Instance1Options.storeName
- });
- })
- .then(function() {
- return dropDb3Instance1.dropInstance({
- name: dropDb3name,
- storeName: dropDb3Instance2Options.storeName
- });
- })
- .then(function() {
- return dropDb3Instance1.dropInstance({
- name: dropDb3name,
- storeName: dropDb3Instance3Options.storeName
- });
- })
- .then(function() {
- return dropDb3Instance1.dropInstance(opts);
- })
- .then(function() {
- return expectDBToNotExistAsync(opts);
- });
- });
- });
-});
diff --git a/node_modules/localforage/test/test.browserify.html b/node_modules/localforage/test/test.browserify.html
deleted file mode 100644
index 5aca10c..0000000
--- a/node_modules/localforage/test/test.browserify.html
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
- localForage Browserify Tests!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/node_modules/localforage/test/test.callwhenready.html b/node_modules/localforage/test/test.callwhenready.html
deleted file mode 100644
index 61bcd92..0000000
--- a/node_modules/localforage/test/test.callwhenready.html
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
-
- localForage callWhenReady Tests!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/node_modules/localforage/test/test.callwhenready.js b/node_modules/localforage/test/test.callwhenready.js
deleted file mode 100644
index 0948b76..0000000
--- a/node_modules/localforage/test/test.callwhenready.js
+++ /dev/null
@@ -1,37 +0,0 @@
-/* global beforeEach:true */
-this.mocha.setup('bdd');
-
-beforeEach(function(done) {
- var previousDriver = localforage.driver();
-
- function rerequirelocalforage() {
- // The API method stubs inserted by callWhenReady must be tested before
- // they are replaced by the driver, which happens as soon as it loads.
- //
- // To ensure that they work when the drivers are loaded asynchronously,
- // we run the entire test suite (except for config tests), but undefine
- // the localforage module and force it to reload before each test, so that
- // it will be initialized again.
- //
- // This ensures that the synchronous parts of localforage initialization
- // and the API calls in the tests occur first in every test, such that the
- // callWhenReady API method stubs are called before RequireJS
- // asynchronously loads the drivers that replace them.
- require.undef('localforage');
- require(['localforage'], function(localforage) {
- localforage.setDriver(previousDriver);
- window.localforage = localforage;
- done();
- });
- }
-
- localforage.ready().then(
- function() {
- previousDriver = localforage.driver();
- rerequirelocalforage();
- },
- function() {
- rerequirelocalforage();
- }
- );
-});
diff --git a/node_modules/localforage/test/test.config.js b/node_modules/localforage/test/test.config.js
deleted file mode 100644
index 6fffbb5..0000000
--- a/node_modules/localforage/test/test.config.js
+++ /dev/null
@@ -1,272 +0,0 @@
-/* global before:true, beforeEach:true, describe:true, expect:true, it:true */
-describe('Config API', function() {
- 'use strict';
-
- var DRIVERS = [
- localforage.INDEXEDDB,
- localforage.LOCALSTORAGE,
- localforage.WEBSQL
- ];
- var supportedDrivers = [];
-
- before(function() {
- this.defaultConfig = localforage.config();
-
- supportedDrivers = [];
- for (var i = 0; i <= DRIVERS.length; i++) {
- if (localforage.supports(DRIVERS[i])) {
- supportedDrivers.push(DRIVERS[i]);
- }
- }
- });
-
- // Reset localForage before each test so we can call `config()` without
- // errors.
- beforeEach(function() {
- localforage._ready = null;
- localforage.config(this.defaultConfig);
- });
-
- it('returns the default values', function(done) {
- expect(localforage.config('description')).to.be('');
- expect(localforage.config('name')).to.be('localforage');
- expect(localforage.config('size')).to.be(4980736);
- expect(localforage.config('storeName')).to.be('keyvaluepairs');
- expect(localforage.config('version')).to.be(1.0);
- localforage.ready(function() {
- expect(localforage.config('driver')).to.be(localforage.driver());
- done();
- });
- });
-
- it('returns error if API call was already made', function(done) {
- localforage.length(function() {
- var configResult = localforage.config({
- description: '123',
- driver: 'I a not set driver',
- name: 'My Cool App',
- storeName: 'myStoreName',
- version: 2.0
- });
-
- var error =
- "Error: Can't call config() after localforage " +
- 'has been used.';
-
- expect(configResult).to.not.be(true);
- expect(configResult.toString()).to.be(error);
-
- // Expect the config values to be as they were before.
- expect(localforage.config('description')).to.not.be('123');
- expect(localforage.config('description')).to.be('');
- expect(localforage.config('driver')).to.be(localforage.driver());
- expect(localforage.config('driver')).to.not.be(
- 'I a not set driver'
- );
- expect(localforage.config('name')).to.be('localforage');
- expect(localforage.config('name')).to.not.be('My Cool App');
- expect(localforage.config('size')).to.be(4980736);
- expect(localforage.config('storeName')).to.be('keyvaluepairs');
- expect(localforage.config('version')).to.be(1.0);
-
- done();
- });
- });
-
- it('sets new values and returns them properly', function(done) {
- var secondSupportedDriver =
- supportedDrivers.length >= 2 ? supportedDrivers[1] : null;
-
- localforage.config({
- description: 'The offline datastore for my cool app',
- driver: secondSupportedDriver,
- name: 'My Cool App',
- storeName: 'myStoreName',
- version: 2.0
- });
-
- expect(localforage.config('description')).to.not.be('');
- expect(localforage.config('description')).to.be(
- 'The offline datastore for my cool app'
- );
- expect(localforage.config('driver')).to.be(secondSupportedDriver);
- expect(localforage.config('name')).to.be('My Cool App');
- expect(localforage.config('size')).to.be(4980736);
- expect(localforage.config('storeName')).to.be('myStoreName');
- expect(localforage.config('version')).to.be(2.0);
-
- localforage.ready(function() {
- if (supportedDrivers.length >= 2) {
- expect(localforage.config('driver')).to.be(
- secondSupportedDriver
- );
- } else {
- expect(localforage.config('driver')).to.be(supportedDrivers[0]);
- }
- done();
- });
- });
-
- if (supportedDrivers.length >= 2) {
- it('sets new driver using preference order', function(done) {
- var otherSupportedDrivers = supportedDrivers.slice(1);
-
- var configResult = localforage.config({
- driver: otherSupportedDrivers
- });
-
- expect(configResult).to.be.a(Promise);
- localforage
- .ready(function() {
- expect(localforage.config('driver')).to.be(
- otherSupportedDrivers[0]
- );
- return configResult;
- })
- .then(function() {
- done();
- });
- });
- }
-
- it('it does not set an unsupported driver', function(done) {
- var oldDriver = localforage.driver();
- var configResult = localforage.config({
- driver: 'I am a not supported driver'
- });
-
- expect(configResult).to.be.a(Promise);
- localforage
- .ready(function() {
- expect(localforage.config('driver')).to.be(oldDriver);
- return configResult;
- })
- .catch(function(error) {
- expect(error).to.be.an(Error);
- expect(error.message).to.be(
- 'No available storage method found.'
- );
- done();
- });
- });
-
- it('it does not set an unsupported driver using preference order', function(done) {
- var oldDriver = localforage.driver();
- localforage.config({
- driver: [
- 'I am a not supported driver',
- 'I am a an other not supported driver'
- ]
- });
-
- localforage.ready(function() {
- expect(localforage.config('driver')).to.be(oldDriver);
- done();
- });
- });
-
- it('converts bad config values across drivers', function() {
- localforage.config({
- name: 'My Cool App',
- // https://github.com/mozilla/localForage/issues/247
- storeName: 'my store&name-v1',
- version: 2.0
- });
-
- expect(localforage.config('name')).to.be('My Cool App');
- expect(localforage.config('storeName')).to.be('my_store_name_v1');
- expect(localforage.config('version')).to.be(2.0);
- });
-
- it('uses the config values in ' + localforage.driver(), function(done) {
- localforage.config({
- description: 'The offline datastore for my cool app',
- driver: localforage.driver(),
- name: 'My Cool App',
- storeName: 'myStoreName',
- version: 2.0
- });
-
- localforage.setItem('some key', 'some value').then(function(value) {
- if (localforage.driver() === localforage.INDEXEDDB) {
- var indexedDB =
- indexedDB ||
- window.indexedDB ||
- window.webkitIndexedDB ||
- window.mozIndexedDB ||
- window.OIndexedDB ||
- window.msIndexedDB;
- var req = indexedDB.open('My Cool App', 2.0);
-
- req.onsuccess = function() {
- var dbValue = req.result
- .transaction('myStoreName', 'readonly')
- .objectStore('myStoreName')
- .get('some key');
- expect(dbValue).to.be(value);
- done();
- };
- } else if (localforage.driver() === localforage.WEBSQL) {
- window
- .openDatabase('My Cool App', String(2.0), '', 4980736)
- .transaction(function(t) {
- t.executeSql(
- 'SELECT * FROM myStoreName WHERE key = ? ' +
- 'LIMIT 1',
- ['some key'],
- function(t, results) {
- var dbValue = JSON.parse(
- results.rows.item(0).value
- );
-
- expect(dbValue).to.be(value);
- done();
- }
- );
- });
- } else if (localforage.driver() === localforage.LOCALSTORAGE) {
- var dbValue = JSON.parse(
- localStorage['My Cool App/myStoreName/some key']
- );
-
- expect(dbValue).to.be(value);
- done();
- }
- });
- });
-
- it("returns all values when config isn't passed arguments", function() {
- expect(localforage.config()).to.be.an('object');
- expect(Object.keys(localforage.config()).length).to.be(6);
- });
-
- // This may go away when https://github.com/mozilla/localForage/issues/168
- // is fixed.
- it('maintains config values across setDriver calls', function(done) {
- localforage.config({
- name: 'Mega Mozilla Dino'
- });
-
- localforage
- .length()
- .then(function() {
- return localforage.setDriver(localforage.LOCALSTORAGE);
- })
- .then(function() {
- expect(localforage.config('name')).to.be('Mega Mozilla Dino');
- done();
- });
- });
-
- it('returns error if database version is not a number', function(done) {
- var configResult = localforage.config({
- version: '2.0'
- });
-
- var error = 'Error: Database version must be a number.';
-
- expect(configResult).to.not.be(true);
- expect(configResult.toString()).to.be(error);
- done();
- });
-});
diff --git a/node_modules/localforage/test/test.customdriver.html b/node_modules/localforage/test/test.customdriver.html
deleted file mode 100644
index c49ed24..0000000
--- a/node_modules/localforage/test/test.customdriver.html
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
- localForage Custom Driver Tests!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/node_modules/localforage/test/test.customdriver.js b/node_modules/localforage/test/test.customdriver.js
deleted file mode 100644
index 0df312e..0000000
--- a/node_modules/localforage/test/test.customdriver.js
+++ /dev/null
@@ -1,304 +0,0 @@
-/* global describe:true, expect:true, it:true, dummyStorageDriver:true */
-describe('When Custom Drivers are used', function() {
- 'use strict';
- var errorMessage =
- 'Custom driver not compliant; see ' +
- 'https://mozilla.github.io/localForage/#definedriver';
-
- it('fails to define a no-name custom driver', function(done) {
- localforage.defineDriver(
- {
- _initStorage: function() {},
- iterate: function() {},
- getItem: function() {},
- setItem: function() {},
- removeItem: function() {},
- clear: function() {},
- length: function() {},
- key: function() {},
- keys: function() {}
- },
- null,
- function(err) {
- expect(err).to.be.an(Error);
- expect(err.message).to.be(errorMessage);
- done();
- }
- );
- });
-
- it('fails to define a no-name custom driver [promise]', function(done) {
- localforage
- .defineDriver({
- _initStorage: function() {},
- iterate: function() {},
- getItem: function() {},
- setItem: function() {},
- removeItem: function() {},
- clear: function() {},
- length: function() {},
- key: function() {},
- keys: function() {}
- })
- .then(null, function(err) {
- expect(err).to.be.an(Error);
- expect(err.message).to.be(errorMessage);
- done();
- });
- });
-
- it('fails to define a custom driver with missing methods', function(done) {
- localforage.defineDriver(
- {
- _driver: 'missingMethodsDriver',
- _initStorage: function() {},
- iterate: function() {},
- getItem: function() {},
- setItem: function() {},
- removeItem: function() {},
- clear: function() {}
- },
- null,
- function(err) {
- expect(err).to.be.an(Error);
- expect(err.message).to.be(errorMessage);
- done();
- }
- );
- });
-
- it('fails to define a custom driver with missing methods [promise]', function(done) {
- localforage
- .defineDriver({
- _driver: 'missingMethodsDriver',
- _initStorage: function() {},
- iterate: function() {},
- getItem: function() {},
- setItem: function() {},
- removeItem: function() {},
- clear: function() {}
- })
- .then(null, function(err) {
- expect(err).to.be.an(Error);
- expect(err.message).to.be(errorMessage);
- done();
- });
- });
-
- it('defines a compliant custom driver', function(done) {
- localforage.defineDriver(dummyStorageDriver, function() {
- done();
- });
- });
-
- it('defines a compliant custom driver [promise]', function(done) {
- localforage.defineDriver(dummyStorageDriver).then(function() {
- done();
- });
- });
-
- it('sets a custom driver', function(done) {
- localforage.defineDriver(dummyStorageDriver, function() {
- localforage.setDriver(dummyStorageDriver._driver, function() {
- expect(localforage.driver()).to.be(dummyStorageDriver._driver);
- done();
- });
- });
- });
-
- it('sets a custom driver [promise]', function(done) {
- localforage
- .defineDriver(dummyStorageDriver)
- .then(function() {
- return localforage.setDriver(dummyStorageDriver._driver);
- })
- .then(function() {
- expect(localforage.driver()).to.be(dummyStorageDriver._driver);
- done();
- });
- });
-
- it("defines a driver synchronously when it doesn't have _supports()", function(done) {
- var customDriver = {
- _driver: 'dummyStorageDriver' + +new Date(),
- _initStorage: function() {},
- // _support: function() { return true; }
- iterate: function() {},
- getItem: function() {},
- setItem: function() {},
- removeItem: function() {},
- clear: function() {},
- length: function() {},
- key: function() {},
- keys: function() {}
- };
-
- localforage.defineDriver(customDriver);
- localforage.setDriver(customDriver._driver).then(function() {
- expect(localforage.driver()).to.be(customDriver._driver);
- done();
- });
- });
-
- it('defines a driver synchronously when it has boolean _supports()', function(done) {
- var customDriver = {
- _driver: 'dummyStorageDriver' + +new Date(),
- _initStorage: function() {},
- _support: true,
- iterate: function() {},
- getItem: function() {},
- setItem: function() {},
- removeItem: function() {},
- clear: function() {},
- length: function() {},
- key: function() {},
- keys: function() {}
- };
-
- localforage.defineDriver(customDriver);
- localforage.setDriver(customDriver._driver).then(function() {
- expect(localforage.driver()).to.be(customDriver._driver);
- done();
- });
- });
-
- it('defines a driver asynchronously when _supports() returns a Promise', function(done) {
- var customDriver = {
- _driver: 'dummyStorageDriver' + +new Date(),
- _initStorage: function() {},
- _support: function() {
- return Promise.resolve(true);
- },
- iterate: function() {},
- getItem: function() {},
- setItem: function() {},
- removeItem: function() {},
- clear: function() {},
- length: function() {},
- key: function() {},
- keys: function() {}
- };
-
- localforage
- .defineDriver(customDriver)
- .then(function() {
- return localforage.setDriver(customDriver._driver);
- })
- .then(function() {
- expect(localforage.driver()).to.be(customDriver._driver);
- done();
- });
- });
-
- it('sets and uses a custom driver', function(done) {
- localforage.defineDriver(dummyStorageDriver, function() {
- localforage.setDriver(dummyStorageDriver._driver, function(err) {
- expect(err).to.be(undefined);
- localforage.setItem(
- 'testCallbackKey',
- 'testCallbackValue',
- function(err) {
- expect(err).to.be(null);
- localforage.getItem('testCallbackKey', function(
- err,
- value
- ) {
- expect(err).to.be(null);
- expect(value).to.be('testCallbackValue');
- done();
- });
- }
- );
- });
- });
- });
-
- it('sets and uses a custom driver [promise]', function(done) {
- localforage
- .defineDriver(dummyStorageDriver)
- .then(function() {
- return localforage.setDriver(dummyStorageDriver._driver);
- })
- .then(function() {
- return localforage.setItem(
- 'testPromiseKey',
- 'testPromiseValue'
- );
- })
- .then(function() {
- return localforage.getItem('testPromiseKey');
- })
- .then(function(value) {
- expect(value).to.be('testPromiseValue');
- done();
- });
- });
-
- describe('when dropInstance is not defined', function() {
- it('rejects when it is used', function(done) {
- var customDriver = {
- _driver: 'dummyStorageDriver' + +new Date(),
- _initStorage: function() {},
- _support: function() {
- return Promise.resolve(true);
- },
- iterate: function() {},
- getItem: function() {},
- setItem: function() {},
- removeItem: function() {},
- clear: function() {},
- length: function() {},
- key: function() {},
- keys: function() {}
- };
-
- localforage
- .defineDriver(customDriver)
- .then(function() {
- return localforage.setDriver(customDriver._driver);
- })
- .then(function() {
- return localforage.dropInstance();
- })
- .catch(function(err) {
- expect(err.message).to.be(
- 'Method dropInstance is not implemented by the current driver'
- );
- done();
- });
- });
- });
-
- describe('when dropInstance is defined', function() {
- it('is does not reject', function(done) {
- var customDriver = {
- _driver: 'dummyStorageDriver' + +new Date(),
- _initStorage: function() {},
- _support: function() {
- return Promise.resolve(true);
- },
- iterate: function() {},
- getItem: function() {},
- setItem: function() {},
- removeItem: function() {},
- clear: function() {},
- length: function() {},
- key: function() {},
- keys: function() {},
- dropInstance: function() {}
- };
-
- localforage
- .defineDriver(customDriver)
- .then(function() {
- return localforage.setDriver(customDriver._driver);
- })
- .then(function() {
- return localforage.dropInstance();
- })
- .then(function() {
- done();
- });
- });
- });
-});
diff --git a/node_modules/localforage/test/test.datatypes.js b/node_modules/localforage/test/test.datatypes.js
deleted file mode 100644
index 6e07736..0000000
--- a/node_modules/localforage/test/test.datatypes.js
+++ /dev/null
@@ -1,635 +0,0 @@
-/* global before:true, beforeEach:true, describe:true, expect:true, it:true */
-
-// kinda lame to define this twice, but it seems require() isn't available here
-function createBlob(parts, properties) {
- /* global BlobBuilder,MSBlobBuilder,MozBlobBuilder,WebKitBlobBuilder */
- parts = parts || [];
- properties = properties || {};
- try {
- return new Blob(parts, properties);
- } catch (e) {
- if (e.name !== 'TypeError') {
- throw e;
- }
- var Builder =
- typeof BlobBuilder !== 'undefined'
- ? BlobBuilder
- : typeof MSBlobBuilder !== 'undefined'
- ? MSBlobBuilder
- : typeof MozBlobBuilder !== 'undefined'
- ? MozBlobBuilder
- : WebKitBlobBuilder;
- var builder = new Builder();
- for (var i = 0; i < parts.length; i += 1) {
- builder.append(parts[i]);
- }
- return builder.getBlob(properties.type);
- }
-}
-
-var DRIVERS = [
- localforage.INDEXEDDB,
- localforage.LOCALSTORAGE,
- localforage.WEBSQL
-];
-
-DRIVERS.forEach(function(driverName) {
- if (
- (!localforage.supports(localforage.INDEXEDDB) &&
- driverName === localforage.INDEXEDDB) ||
- (!localforage.supports(localforage.LOCALSTORAGE) &&
- driverName === localforage.LOCALSTORAGE) ||
- (!localforage.supports(localforage.WEBSQL) &&
- driverName === localforage.WEBSQL)
- ) {
- // Browser doesn't support this storage library, so we exit the API
- // tests.
- return;
- }
-
- describe('Type handler for ' + driverName, function() {
- 'use strict';
-
- this.timeout(30000);
-
- before(function(done) {
- localforage.setDriver(driverName).then(done);
- });
-
- beforeEach(function(done) {
- localforage.clear(done);
- });
-
- it('saves a string [callback]', function(done) {
- localforage.setItem('office', 'Initech', function(err, setValue) {
- expect(setValue).to.be('Initech');
-
- localforage.getItem('office', function(err, value) {
- expect(value).to.be(setValue);
- done();
- });
- });
- });
- it('saves a string [promise]', function(done) {
- localforage
- .setItem('office', 'Initech')
- .then(function(setValue) {
- expect(setValue).to.be('Initech');
-
- return localforage.getItem('office');
- })
- .then(function(value) {
- expect(value).to.be('Initech');
- done();
- });
- });
-
- it('saves a string like "[object Blob]" [promise]', function(done) {
- localforage
- .setItem('fake Blob', '[object Blob]')
- .then(function(setValue) {
- expect(setValue).to.be('[object Blob]');
-
- return localforage.getItem('fake Blob');
- })
- .then(function(value) {
- expect(value).to.be('[object Blob]');
- done();
- });
- });
-
- it('saves a number [callback]', function(done) {
- localforage.setItem('number', 546, function(err, setValue) {
- expect(setValue).to.be(546);
- expect(setValue).to.be.a('number');
-
- localforage.getItem('number', function(err, value) {
- expect(value).to.be(setValue);
- expect(value).to.be.a('number');
- done();
- });
- });
- });
- it('saves a number [promise]', function(done) {
- localforage
- .setItem('number', 546)
- .then(function(setValue) {
- expect(setValue).to.be(546);
- expect(setValue).to.be.a('number');
-
- return localforage.getItem('number');
- })
- .then(function(value) {
- expect(value).to.be(546);
- expect(value).to.be.a('number');
- done();
- });
- });
-
- it('saves a boolean [callback]', function(done) {
- localforage.setItem('boolean', false, function(err, setValue) {
- expect(setValue).to.be(false);
- expect(setValue).to.be.a('boolean');
-
- localforage.getItem('boolean', function(err, value) {
- expect(value).to.be(setValue);
- expect(value).to.be.a('boolean');
- done();
- });
- });
- });
- it('saves a boolean [promise]', function(done) {
- localforage
- .setItem('boolean', false)
- .then(function(setValue) {
- expect(setValue).to.be(false);
- expect(setValue).to.be.a('boolean');
-
- return localforage.getItem('boolean');
- })
- .then(function(value) {
- expect(value).to.be(false);
- expect(value).to.be.a('boolean');
- done();
- });
- });
-
- it('saves null [callback]', function(done) {
- localforage.setItem('null', null, function(err, setValue) {
- expect(setValue).to.be(null);
-
- localforage.getItem('null', function(err, value) {
- expect(value).to.be(null);
- done();
- });
- });
- });
- it('saves null [promise]', function(done) {
- localforage
- .setItem('null', null)
- .then(function(setValue) {
- expect(setValue).to.be(null);
-
- return localforage.getItem('null');
- })
- .then(function(value) {
- expect(value).to.be(null);
- done();
- });
- });
-
- it('saves undefined as null [callback]', function(done) {
- localforage.setItem('null', undefined, function(err, setValue) {
- expect(setValue).to.be(null);
-
- localforage.getItem('null', function(err, value) {
- expect(value).to.be(null);
- done();
- });
- });
- });
- it('saves undefined as null [promise]', function(done) {
- localforage
- .setItem('null', undefined)
- .then(function(setValue) {
- expect(setValue).to.be(null);
-
- return localforage.getItem('null');
- })
- .then(function(value) {
- expect(value).to.be(null);
- done();
- });
- });
-
- it('saves a float [callback]', function(done) {
- localforage.setItem('float', 546.041, function(err, setValue) {
- expect(setValue).to.be(546.041);
- expect(setValue).to.be.a('number');
-
- localforage.getItem('float', function(err, value) {
- expect(value).to.be(setValue);
- expect(value).to.be.a('number');
- done();
- });
- });
- });
- it('saves a float [promise]', function(done) {
- localforage
- .setItem('float', 546.041)
- .then(function(setValue) {
- expect(setValue).to.be(546.041);
- expect(setValue).to.be.a('number');
-
- return localforage.getItem('float');
- })
- .then(function(value) {
- expect(value).to.be(546.041);
- expect(value).to.be.a('number');
- done();
- });
- });
-
- var arrayToSave = [2, 'one', true];
- it('saves an array [callback]', function(done) {
- localforage.setItem('array', arrayToSave, function(err, setValue) {
- expect(setValue.length).to.be(arrayToSave.length);
- expect(setValue instanceof Array).to.be(true);
-
- localforage.getItem('array', function(err, value) {
- expect(value.length).to.be(arrayToSave.length);
- expect(value instanceof Array).to.be(true);
- expect(value[1]).to.be.a('string');
- done();
- });
- });
- });
- it('saves an array [promise]', function(done) {
- localforage
- .setItem('array', arrayToSave)
- .then(function(setValue) {
- expect(setValue.length).to.be(arrayToSave.length);
- expect(setValue instanceof Array).to.be(true);
-
- return localforage.getItem('array');
- })
- .then(function(value) {
- expect(value.length).to.be(arrayToSave.length);
- expect(value instanceof Array).to.be(true);
- expect(value[1]).to.be.a('string');
- done();
- });
- });
-
- var objectToSave = {
- floating: 43.01,
- nested: {
- array: [1, 2, 3]
- },
- nestedObjects: [
- { truth: true },
- { theCake: 'is a lie' },
- { happiness: 'is a warm gun' },
- false
- ],
- string: 'bar'
- };
- it('saves a nested object [callback]', function(done) {
- localforage.setItem('obj', objectToSave, function(err, setValue) {
- expect(Object.keys(setValue).length).to.be(
- Object.keys(objectToSave).length
- );
- expect(setValue).to.be.an('object');
-
- localforage.getItem('obj', function(err, value) {
- expect(Object.keys(value).length).to.be(
- Object.keys(objectToSave).length
- );
- expect(value).to.be.an('object');
- expect(value.nested).to.be.an('object');
- expect(value.nestedObjects[0].truth).to.be.a('boolean');
- expect(value.nestedObjects[1].theCake).to.be.a('string');
- expect(value.nestedObjects[3]).to.be(false);
- done();
- });
- });
- });
- it('saves a nested object [promise]', function(done) {
- localforage
- .setItem('obj', objectToSave)
- .then(function(setValue) {
- expect(Object.keys(setValue).length).to.be(
- Object.keys(objectToSave).length
- );
- expect(setValue).to.be.an('object');
-
- return localforage.getItem('obj');
- })
- .then(function(value) {
- expect(Object.keys(value).length).to.be(
- Object.keys(objectToSave).length
- );
- expect(value).to.be.an('object');
- expect(value.nested).to.be.an('object');
- expect(value.nestedObjects[0].truth).to.be.a('boolean');
- expect(value.nestedObjects[1].theCake).to.be.a('string');
- expect(value.nestedObjects[3]).to.be(false);
- done();
- });
- });
-
- // Skip binary (ArrayBuffer) data tests if Array Buffer isn't supported.
- if (typeof ArrayBuffer !== 'undefined') {
- var runBinaryTest = function(url, done) {
- var request = new XMLHttpRequest();
-
- request.open('GET', url, true);
- request.responseType = 'arraybuffer';
-
- // When the AJAX state changes, save the photo locally.
- request.onreadystatechange = function() {
- if (request.readyState === request.DONE) {
- var response = request.response;
- localforage
- .setItem('ab', response, function(err, sab) {
- expect(sab.toString()).to.be(
- '[object ArrayBuffer]'
- );
- expect(sab.byteLength).to.be(
- response.byteLength
- );
- })
- .then(function() {
- // TODO: Running getItem from inside the setItem
- // callback times out on IE 10/11. Could be an
- // open transaction issue?
- localforage.getItem('ab', function(
- err,
- arrayBuff
- ) {
- expect(arrayBuff.toString()).to.be(
- '[object ArrayBuffer]'
- );
- expect(arrayBuff.byteLength).to.be(
- response.byteLength
- );
- });
- done();
- });
- }
- };
-
- request.send();
- };
-
- it('saves binary (ArrayBuffer) data', function(done) {
- runBinaryTest('/test/photo.jpg', done);
- });
-
- it('saves odd length binary (ArrayBuffer) data', function(done) {
- runBinaryTest('/test/photo2.jpg', done);
- });
- } else {
- it.skip(
- 'saves binary (ArrayBuffer) data (ArrayBuffer type does not exist)'
- );
- }
-
- // This does not run on PhantomJS < 2.0.
- // https://github.com/ariya/phantomjs/issues/11013
- // Skip binary(Blob) data tests if Blob isn't supported.
- if (typeof Blob === 'function') {
- it('saves binary (Blob) data', function(done) {
- var fileParts = ['hey! '];
- var mimeString = 'text/html';
-
- var testBlob = createBlob(fileParts, { type: mimeString });
-
- localforage
- .setItem('blob', testBlob, function(err, blob) {
- expect(err).to.be(null);
- expect(blob.toString()).to.be('[object Blob]');
- expect(blob.size).to.be(testBlob.size);
- expect(blob.type).to.be(testBlob.type);
- })
- .then(function() {
- localforage.getItem('blob', function(err, blob) {
- expect(err).to.be(null);
- expect(blob.toString()).to.be('[object Blob]');
- expect(blob.size).to.be(testBlob.size);
- expect(blob.type).to.be(testBlob.type);
- done();
- });
- });
- });
- } else {
- it.skip('saves binary (Blob) data (Blob type does not exist)');
- }
-
- if (typeof Blob === 'function') {
- it('saves binary (Blob) data, iterate back', function(done) {
- var fileParts = ['hey! '];
- var mimeString = 'text/html';
-
- var testBlob = createBlob(fileParts, { type: mimeString });
-
- localforage
- .setItem('blob', testBlob, function(err, blob) {
- expect(err).to.be(null);
- expect(blob.toString()).to.be('[object Blob]');
- expect(blob.size).to.be(testBlob.size);
- expect(blob.type).to.be(testBlob.type);
- })
- .then(function() {
- localforage.iterate(function(blob, key) {
- if (key !== 'blob') {
- return;
- }
- expect(blob.toString()).to.be('[object Blob]');
- expect(blob.size).to.be(testBlob.size);
- expect(blob.type).to.be(testBlob.type);
- done();
- });
- });
- });
- } else {
- it.skip('saves binary (Blob) data (Blob type does not exist)');
- }
- });
-
- describe('Typed Array handling in ' + driverName, function() {
- if (typeof Int8Array !== 'undefined') {
- it('saves an Int8Array', function(done) {
- var array = new Int8Array(8);
- array[2] = 65;
- array[4] = 0;
-
- localforage.setItem('array', array, function(err, writeValue) {
- localforage.getItem('array', function(err, readValue) {
- expect(readValue instanceof Int8Array).to.be(true);
- expect(readValue[2]).to.be(array[2]);
- expect(readValue[4]).to.be(writeValue[4]);
- expect(readValue.length).to.be(writeValue.length);
-
- done();
- });
- });
- });
- } else {
- it.skip("doesn't have the Int8Array type");
- }
-
- if (typeof Uint8Array !== 'undefined') {
- it('saves an Uint8Array', function(done) {
- var array = new Uint8Array(8);
- array[0] = 65;
- array[4] = 0;
-
- localforage.setItem('array', array, function(err, writeValue) {
- localforage.getItem('array', function(err, readValue) {
- expect(readValue instanceof Uint8Array).to.be(true);
- expect(readValue[0]).to.be(array[0]);
- expect(readValue[4]).to.be(writeValue[4]);
- expect(readValue.length).to.be(writeValue.length);
-
- done();
- });
- });
- });
- } else {
- it.skip("doesn't have the Uint8Array type");
- }
-
- if (typeof Uint8ClampedArray !== 'undefined') {
- it('saves an Uint8ClampedArray', function(done) {
- var array = new Uint8ClampedArray(8);
- array[0] = 0;
- array[1] = 93;
- array[2] = 350;
-
- localforage.setItem('array', array, function(err, writeValue) {
- localforage.getItem('array', function(err, readValue) {
- expect(readValue instanceof Uint8ClampedArray).to.be(
- true
- );
- expect(readValue[0]).to.be(array[0]);
- expect(readValue[1]).to.be(array[1]);
- expect(readValue[2]).to.be(array[2]);
- expect(readValue[1]).to.be(writeValue[1]);
- expect(readValue.length).to.be(writeValue.length);
-
- done();
- });
- });
- });
- } else {
- it.skip("doesn't have the Uint8Array type");
- }
-
- if (typeof Int16Array !== 'undefined') {
- it('saves an Int16Array', function(done) {
- var array = new Int16Array(8);
- array[0] = 65;
- array[4] = 0;
-
- localforage.setItem('array', array, function(err, writeValue) {
- localforage.getItem('array', function(err, readValue) {
- expect(readValue instanceof Int16Array).to.be(true);
- expect(readValue[0]).to.be(array[0]);
- expect(readValue[4]).to.be(writeValue[4]);
- expect(readValue.length).to.be(writeValue.length);
-
- done();
- });
- });
- });
- } else {
- it.skip("doesn't have the Int16Array type");
- }
-
- if (typeof Uint16Array !== 'undefined') {
- it('saves an Uint16Array', function(done) {
- var array = new Uint16Array(8);
- array[0] = 65;
- array[4] = 0;
-
- localforage.setItem('array', array, function(err, writeValue) {
- localforage.getItem('array', function(err, readValue) {
- expect(readValue instanceof Uint16Array).to.be(true);
- expect(readValue[0]).to.be(array[0]);
- expect(readValue[4]).to.be(writeValue[4]);
- expect(readValue.length).to.be(writeValue.length);
-
- done();
- });
- });
- });
- } else {
- it.skip("doesn't have the Uint16Array type");
- }
-
- if (typeof Int32Array !== 'undefined') {
- it('saves an Int32Array', function(done) {
- var array = new Int32Array(8);
- array[0] = 65;
- array[4] = 0;
-
- localforage.setItem('array', array, function(err, writeValue) {
- localforage.getItem('array', function(err, readValue) {
- expect(readValue instanceof Int32Array).to.be(true);
- expect(readValue[0]).to.be(array[0]);
- expect(readValue[4]).to.be(writeValue[4]);
- expect(readValue.length).to.be(writeValue.length);
-
- done();
- });
- });
- });
- } else {
- it.skip("doesn't have the Int32Array type");
- }
-
- if (typeof Uint32Array !== 'undefined') {
- it('saves an Uint32Array', function(done) {
- var array = new Uint32Array(8);
- array[0] = 65;
- array[4] = 0;
-
- localforage.setItem('array', array, function(err, writeValue) {
- localforage.getItem('array', function(err, readValue) {
- expect(readValue instanceof Uint32Array).to.be(true);
- expect(readValue[0]).to.be(array[0]);
- expect(readValue[4]).to.be(writeValue[4]);
- expect(readValue.length).to.be(writeValue.length);
-
- done();
- });
- });
- });
- } else {
- it.skip("doesn't have the Uint32Array type");
- }
-
- if (typeof Float32Array !== 'undefined') {
- it('saves a Float32Array', function(done) {
- var array = new Float32Array(8);
- array[0] = 6.5;
- array[4] = 0.1;
-
- localforage.setItem('array', array, function(err, writeValue) {
- localforage.getItem('array', function(err, readValue) {
- expect(readValue instanceof Float32Array).to.be(true);
- expect(readValue[0]).to.be(array[0]);
- expect(readValue[4]).to.be(writeValue[4]);
- expect(readValue.length).to.be(writeValue.length);
-
- done();
- });
- });
- });
- } else {
- it.skip("doesn't have the Float32Array type");
- }
-
- if (typeof Float64Array !== 'undefined') {
- it('saves a Float64Array', function(done) {
- var array = new Float64Array(8);
- array[0] = 6.5;
- array[4] = 0.1;
-
- localforage.setItem('array', array, function(err, writeValue) {
- localforage.getItem('array', function(err, readValue) {
- expect(readValue instanceof Float64Array).to.be(true);
- expect(readValue[0]).to.be(array[0]);
- expect(readValue[4]).to.be(writeValue[4]);
- expect(readValue.length).to.be(writeValue.length);
-
- done();
- });
- });
- });
- } else {
- it.skip("doesn't have the Float64Array type");
- }
- });
-});
diff --git a/node_modules/localforage/test/test.drivers.js b/node_modules/localforage/test/test.drivers.js
deleted file mode 100644
index e674f1e..0000000
--- a/node_modules/localforage/test/test.drivers.js
+++ /dev/null
@@ -1,193 +0,0 @@
-/* global beforeEach:true, describe:true, expect:true, it:true */
-describe('Driver API', function() {
- 'use strict';
-
- beforeEach(function(done) {
- if (localforage.supports(localforage.INDEXEDDB)) {
- localforage.setDriver(localforage.INDEXEDDB, function() {
- done();
- });
- } else if (localforage.supports(localforage.WEBSQL)) {
- localforage.setDriver(localforage.WEBSQL, function() {
- done();
- });
- } else {
- done();
- }
- });
-
- if (
- (localforage.supports(localforage.INDEXEDDB) &&
- localforage.driver() === localforage.INDEXEDDB) ||
- (localforage.supports(localforage.WEBSQL) &&
- localforage.driver() === localforage.WEBSQL)
- ) {
- it(
- 'can change to localStorage from ' +
- localforage.driver() +
- ' [callback]',
- function(done) {
- var previousDriver = localforage.driver();
-
- localforage.setDriver(localforage.LOCALSTORAGE, function() {
- expect(localforage.driver()).to.be(
- localforage.LOCALSTORAGE
- );
- expect(localforage.driver()).to.not.be(previousDriver);
- done();
- });
- }
- );
- it(
- 'can change to localStorage from ' +
- localforage.driver() +
- ' [promise]',
- function(done) {
- var previousDriver = localforage.driver();
-
- localforage
- .setDriver(localforage.LOCALSTORAGE)
- .then(function() {
- expect(localforage.driver()).to.be(
- localforage.LOCALSTORAGE
- );
- expect(localforage.driver()).to.not.be(previousDriver);
- done();
- });
- }
- );
- }
-
- if (!localforage.supports(localforage.INDEXEDDB)) {
- it("can't use unsupported IndexedDB [callback]", function(done) {
- var previousDriver = localforage.driver();
- expect(previousDriver).to.not.be(localforage.INDEXEDDB);
-
- // These should be rejected in component builds but aren't.
- // TODO: Look into why.
- localforage.setDriver(localforage.INDEXEDDB, null, function() {
- expect(localforage.driver()).to.be(previousDriver);
- done();
- });
- });
- it("can't use unsupported IndexedDB [promise]", function(done) {
- var previousDriver = localforage.driver();
- expect(previousDriver).to.not.be(localforage.INDEXEDDB);
-
- // These should be rejected in component builds but aren't.
- // TODO: Look into why.
- localforage.setDriver(localforage.INDEXEDDB).then(null, function() {
- expect(localforage.driver()).to.be(previousDriver);
- done();
- });
- });
- } else {
- it('can set already active IndexedDB [callback]', function(done) {
- var previousDriver = localforage.driver();
- expect(previousDriver).to.be(localforage.INDEXEDDB);
-
- localforage.setDriver(localforage.INDEXEDDB, function() {
- expect(localforage.driver()).to.be(previousDriver);
- done();
- });
- });
- it('can set already active IndexedDB [promise]', function(done) {
- var previousDriver = localforage.driver();
- expect(previousDriver).to.be(localforage.INDEXEDDB);
-
- localforage.setDriver(localforage.INDEXEDDB).then(function() {
- expect(localforage.driver()).to.be(previousDriver);
- done();
- });
- });
- }
-
- if (!localforage.supports(localforage.LOCALSTORAGE)) {
- it("can't use unsupported localStorage [callback]", function(done) {
- var previousDriver = localforage.driver();
- expect(previousDriver).to.not.be(localforage.LOCALSTORAGE);
-
- localforage.setDriver(localforage.LOCALSTORAGE, null, function() {
- expect(localforage.driver()).to.be(previousDriver);
- done();
- });
- });
- it("can't use unsupported localStorage [promise]", function(done) {
- var previousDriver = localforage.driver();
- expect(previousDriver).to.not.be(localforage.LOCALSTORAGE);
-
- localforage
- .setDriver(localforage.LOCALSTORAGE)
- .then(null, function() {
- expect(localforage.driver()).to.be(previousDriver);
- done();
- });
- });
- } else if (
- !localforage.supports(localforage.INDEXEDDB) &&
- !localforage.supports(localforage.WEBSQL)
- ) {
- it('can set already active localStorage [callback]', function(done) {
- var previousDriver = localforage.driver();
- expect(previousDriver).to.be(localforage.LOCALSTORAGE);
-
- localforage.setDriver(localforage.LOCALSTORAGE, function() {
- expect(localforage.driver()).to.be(previousDriver);
- done();
- });
- });
- it('can set already active localStorage [promise]', function(done) {
- var previousDriver = localforage.driver();
- expect(previousDriver).to.be(localforage.LOCALSTORAGE);
-
- localforage.setDriver(localforage.LOCALSTORAGE).then(function() {
- expect(localforage.driver()).to.be(previousDriver);
- done();
- });
- });
- }
-
- if (!localforage.supports(localforage.WEBSQL)) {
- it("can't use unsupported WebSQL [callback]", function(done) {
- var previousDriver = localforage.driver();
- expect(previousDriver).to.not.be(localforage.WEBSQL);
-
- localforage.setDriver(localforage.WEBSQL, null, function() {
- expect(localforage.driver()).to.be(previousDriver);
- done();
- });
- });
- it("can't use unsupported WebSQL [promise]", function(done) {
- var previousDriver = localforage.driver();
- expect(previousDriver).to.not.be(localforage.WEBSQL);
-
- localforage.setDriver(localforage.WEBSQL).then(null, function() {
- expect(localforage.driver()).to.be(previousDriver);
- done();
- });
- });
- } else {
- it('can set already active WebSQL [callback]', function(done) {
- localforage.setDriver(localforage.WEBSQL, function() {
- var previousDriver = localforage.driver();
- expect(previousDriver).to.be(localforage.WEBSQL);
-
- localforage.setDriver(localforage.WEBSQL, function() {
- expect(localforage.driver()).to.be(previousDriver);
- done();
- });
- });
- });
- it('can set already active WebSQL [promise]', function(done) {
- localforage.setDriver(localforage.WEBSQL).then(function() {
- var previousDriver = localforage.driver();
- expect(previousDriver).to.be(localforage.WEBSQL);
-
- localforage.setDriver(localforage.WEBSQL).then(function() {
- expect(localforage.driver()).to.be(previousDriver);
- done();
- });
- });
- });
- }
-});
diff --git a/node_modules/localforage/test/test.faultydriver.html b/node_modules/localforage/test/test.faultydriver.html
deleted file mode 100644
index adcff56..0000000
--- a/node_modules/localforage/test/test.faultydriver.html
+++ /dev/null
@@ -1,61 +0,0 @@
-
-
-
-
- localForage Tests!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/node_modules/localforage/test/test.faultydriver.js b/node_modules/localforage/test/test.faultydriver.js
deleted file mode 100644
index 7b39cea..0000000
--- a/node_modules/localforage/test/test.faultydriver.js
+++ /dev/null
@@ -1,61 +0,0 @@
-/* global beforeEach:true, describe:true, expect:true, it:true */
-describe('When Driver Fails to Initialize', function() {
- 'use strict';
-
- var FAULTYDRIVERS = [
- localforage.INDEXEDDB,
- localforage.WEBSQL,
- localforage.LOCALSTORAGE
- ]
- .filter(localforage.supports)
- .filter(function(driverName) {
- // FF doesn't allow you to override `localStorage.setItem`
- // so if the faulty driver setup didn't succeed
- // then skip the localStorage tests
- return !(
- driverName === localforage.LOCALSTORAGE &&
- localStorage.setItem.toString().indexOf('[native code]') >= 0
- );
- });
-
- FAULTYDRIVERS.forEach(function(driverName) {
- describe(driverName, function() {
- beforeEach(function() {
- if (driverName === localforage.LOCALSTORAGE) {
- localStorage.clear();
- }
- });
-
- it('fails to setDriver ' + driverName + ' [callback]', function(
- done
- ) {
- localforage.setDriver(driverName, function() {
- localforage.ready(function(err) {
- expect(err).to.be.an(Error);
- expect(err.message).to.be(
- 'No available storage method found.'
- );
- done();
- });
- });
- });
-
- it('fails to setDriver ' + driverName + ' [promise]', function(
- done
- ) {
- localforage
- .setDriver(driverName)
- .then(function() {
- return localforage.ready();
- })
- .then(null, function(err) {
- expect(err).to.be.an(Error);
- expect(err.message).to.be(
- 'No available storage method found.'
- );
- done();
- });
- });
- });
- });
-});
diff --git a/node_modules/localforage/test/test.iframecontents.html b/node_modules/localforage/test/test.iframecontents.html
deleted file mode 100644
index 4f9c29b..0000000
--- a/node_modules/localforage/test/test.iframecontents.html
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
- Sub iFrame Test
-
-
-
-
-
-
-
-
diff --git a/node_modules/localforage/test/test.iframes.js b/node_modules/localforage/test/test.iframes.js
deleted file mode 100644
index 0a8beae..0000000
--- a/node_modules/localforage/test/test.iframes.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/* global before:true, after:true, describe:true, expect:true, it:true */
-describe('Inside iFrames', function() {
- 'use strict';
-
- before(function() {
- var iFrame = window.document.createElement('iframe');
- iFrame.name = 'iframe';
- iFrame.id = 'iframe';
- // TODO: Get this to be cross-origin.
- iFrame.src =
- 'http://' + window.location.host + '/test/test.iframecontents.html';
-
- window.document.body.appendChild(iFrame);
- });
-
- after(function() {
- var iFrame = window.document.getElementById('iframe');
- iFrame.parentNode.removeChild(iFrame);
- });
-
- it('can run localForage in an iFrame', function(done) {
- var timer = setInterval(function() {
- var element = window.document
- .getElementById('iframe')
- .contentWindow.document.getElementById('my-text');
- if (element && element.innerHTML) {
- clearInterval(timer);
- expect(element.innerHTML).to.be('I have been set');
- done();
- }
- }, 10);
- });
-});
diff --git a/node_modules/localforage/test/test.main.html b/node_modules/localforage/test/test.main.html
deleted file mode 100644
index 360a125..0000000
--- a/node_modules/localforage/test/test.main.html
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
- localForage Tests!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/node_modules/localforage/test/test.min.html b/node_modules/localforage/test/test.min.html
deleted file mode 100644
index c328cd7..0000000
--- a/node_modules/localforage/test/test.min.html
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
- localForage (minified) Tests!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/node_modules/localforage/test/test.nodriver.html b/node_modules/localforage/test/test.nodriver.html
deleted file mode 100644
index ca48060..0000000
--- a/node_modules/localforage/test/test.nodriver.html
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
- localForage Tests!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/node_modules/localforage/test/test.nodriver.js b/node_modules/localforage/test/test.nodriver.js
deleted file mode 100644
index 66272e6..0000000
--- a/node_modules/localforage/test/test.nodriver.js
+++ /dev/null
@@ -1,84 +0,0 @@
-/* global describe:true, expect:true, it:true, Modernizr:true */
-describe('When No Drivers Are Available', function() {
- 'use strict';
-
- var DRIVERS = [
- localforage.INDEXEDDB,
- localforage.LOCALSTORAGE,
- localforage.WEBSQL
- ];
-
- it('agrees with Modernizr on storage drivers support', function() {
- expect(localforage.supports(localforage.INDEXEDDB)).to.be(false);
- expect(localforage.supports(localforage.INDEXEDDB)).to.be(
- Modernizr.indexeddb
- );
-
- expect(localforage.supports(localforage.LOCALSTORAGE)).to.be(false);
- expect(localforage.supports(localforage.LOCALSTORAGE)).to.be(
- Modernizr.localstorage
- );
-
- expect(localforage.supports(localforage.WEBSQL)).to.be(false);
- expect(localforage.supports(localforage.WEBSQL)).to.be(
- Modernizr.websqldatabase
- );
- });
-
- it('fails to load localForage [callback]', function(done) {
- localforage.ready(function(err) {
- expect(err).to.be.an(Error);
- expect(err.message).to.be('No available storage method found.');
- done();
- });
- });
-
- it('fails to load localForage [promise]', function(done) {
- localforage.ready().then(null, function(err) {
- expect(err).to.be.an(Error);
- expect(err.message).to.be('No available storage method found.');
- done();
- });
- });
-
- it('has no driver set', function(done) {
- localforage.ready(function() {
- expect(localforage.driver()).to.be(null);
- done();
- });
- });
-
- DRIVERS.forEach(function(driverName) {
- it('fails to setDriver ' + driverName + ' [callback]', function(done) {
- localforage.setDriver(driverName, null, function(err) {
- expect(err).to.be.an(Error);
- expect(err.message).to.be('No available storage method found.');
- done();
- });
- });
-
- it('fails to setDriver ' + driverName + ' [promise]', function(done) {
- localforage.setDriver(driverName).then(null, function(err) {
- expect(err).to.be.an(Error);
- expect(err.message).to.be('No available storage method found.');
- done();
- });
- });
- });
-
- it('fails to setDriver using array parameter [callback]', function(done) {
- localforage.setDriver(DRIVERS, null, function(err) {
- expect(err).to.be.an(Error);
- expect(err.message).to.be('No available storage method found.');
- done();
- });
- });
-
- it('fails to setDriver using array parameter [promise]', function(done) {
- localforage.setDriver(DRIVERS).then(null, function(err) {
- expect(err).to.be.an(Error);
- expect(err.message).to.be('No available storage method found.');
- done();
- });
- });
-});
diff --git a/node_modules/localforage/test/test.polyfill.html b/node_modules/localforage/test/test.polyfill.html
deleted file mode 100644
index c8170ee..0000000
--- a/node_modules/localforage/test/test.polyfill.html
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
- localForage (polyfill) Tests!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/node_modules/localforage/test/test.require.html b/node_modules/localforage/test/test.require.html
deleted file mode 100644
index ffdd40a..0000000
--- a/node_modules/localforage/test/test.require.html
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
- localForage require.js Tests!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/node_modules/localforage/test/test.serviceworkers.js b/node_modules/localforage/test/test.serviceworkers.js
deleted file mode 100644
index a21ab66..0000000
--- a/node_modules/localforage/test/test.serviceworkers.js
+++ /dev/null
@@ -1,116 +0,0 @@
-/* global navigator:true, window:true, Modernizr:true, describe:true, expect:true, it:true, xit:true, before:true, beforeEach:true, after:true*/
-var DRIVERS = [
- localforage.INDEXEDDB,
- localforage.LOCALSTORAGE,
- localforage.WEBSQL
-];
-
-DRIVERS.forEach(function(driverName) {
- if (
- (!Modernizr.indexeddb && driverName === localforage.INDEXEDDB) ||
- (!Modernizr.localstorage && driverName === localforage.LOCALSTORAGE) ||
- (!Modernizr.websqldatabase && driverName === localforage.WEBSQL)
- ) {
- // Browser doesn't support this storage library, so we exit the API
- // tests.
- return;
- }
-
- describe('Service Worker support in ' + driverName, function() {
- 'use strict';
-
- // Use this until a test is added to Modernizr
- if (!('serviceworker' in Modernizr)) {
- Modernizr.serviceworker = 'serviceWorker' in navigator;
- }
-
- if (!Modernizr.serviceworker) {
- before.skip("doesn't have service worker support");
- beforeEach.skip("doesn't have service worker support");
- it.skip("doesn't have service worker support");
- after.skip("doesn't have service worker support");
- return;
- }
-
- if (!window.MessageChannel) {
- before.skip("doesn't have MessageChannel support");
- beforeEach.skip("doesn't have MessageChannel support");
- it.skip("doesn't have MessageChannel support");
- after.skip("doesn't have MessageChannel support");
- return;
- }
-
- before(function(done) {
- navigator.serviceWorker
- .register('/test/serviceworker-client.js')
- .then(function() {
- return localforage.setDriver(driverName);
- })
- .then(done);
- });
-
- after(function(done) {
- navigator.serviceWorker.ready
- .then(function(registration) {
- return registration.unregister();
- })
- .then(function(bool) {
- if (bool) {
- done();
- } else {
- done('service worker failed to unregister');
- }
- });
- });
-
- beforeEach(function(done) {
- localforage.clear(done);
- });
-
- if (
- driverName === localforage.LOCALSTORAGE ||
- driverName === localforage.WEBSQL
- ) {
- it.skip(driverName + ' is not supported in service workers');
- return;
- }
-
- xit('should set a value on registration', function(done) {
- navigator.serviceWorker.ready
- .then(function() {
- return localforage.getItem('service worker registration');
- })
- .then(function(result) {
- expect(result).to.equal('serviceworker present');
- done();
- })
- .catch(function(error) {
- done(error);
- });
- });
-
- it('saves data', function(done) {
- var messageChannel = new MessageChannel();
- messageChannel.port1.onmessage = function(event) {
- expect(event.data.body).to.be(
- 'I have been set using ' + driverName
- );
- done();
- };
-
- navigator.serviceWorker.ready
- .then(function(registration) {
- registration.active.postMessage(
- {
- driver: driverName,
- value: 'I have been set'
- },
- [messageChannel.port2]
- );
- })
- .catch(function(error) {
- done(error);
- });
- });
- });
-});
diff --git a/node_modules/localforage/test/test.webpack.html b/node_modules/localforage/test/test.webpack.html
deleted file mode 100644
index 60fe823..0000000
--- a/node_modules/localforage/test/test.webpack.html
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
- localForage WebPack Tests!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/node_modules/localforage/test/test.webworkers.js b/node_modules/localforage/test/test.webworkers.js
deleted file mode 100644
index 1ee9978..0000000
--- a/node_modules/localforage/test/test.webworkers.js
+++ /dev/null
@@ -1,67 +0,0 @@
-/* global before:true, beforeEach:true, describe:true, expect:true, it:true, Modernizr:true */
-var DRIVERS = [
- localforage.INDEXEDDB,
- localforage.LOCALSTORAGE,
- localforage.WEBSQL
-];
-
-DRIVERS.forEach(function(driverName) {
- if (
- (!localforage.supports(localforage.INDEXEDDB) &&
- driverName === localforage.INDEXEDDB) ||
- (!localforage.supports(localforage.LOCALSTORAGE) &&
- driverName === localforage.LOCALSTORAGE) ||
- (!localforage.supports(localforage.WEBSQL) &&
- driverName === localforage.WEBSQL)
- ) {
- // Browser doesn't support this storage library, so we exit the API
- // tests.
- return;
- }
-
- describe('Web Worker support in ' + driverName, function() {
- 'use strict';
-
- before(function(done) {
- localforage.setDriver(driverName).then(done);
- });
-
- beforeEach(function(done) {
- localforage.clear(done);
- });
-
- if (!Modernizr.webworkers) {
- it.skip("doesn't have web worker support");
- return;
- }
-
- if (
- driverName === localforage.LOCALSTORAGE ||
- driverName === localforage.WEBSQL
- ) {
- it.skip(driverName + ' is not supported in web workers');
- return;
- }
-
- it('saves data', function(done) {
- var webWorker = new Worker('/test/webworker-client.js');
-
- webWorker.addEventListener('message', function(e) {
- var body = e.data.body;
-
- window.console.log(body);
- expect(body).to.be('I have been set');
- done();
- });
-
- webWorker.addEventListener('error', function(e) {
- window.console.log(e);
- });
-
- webWorker.postMessage({
- driver: driverName,
- value: 'I have been set'
- });
- });
- });
-});
diff --git a/node_modules/localforage/test/webworker-client.js b/node_modules/localforage/test/webworker-client.js
deleted file mode 100644
index 2240710..0000000
--- a/node_modules/localforage/test/webworker-client.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/*globals importScripts:true, self:true */
-importScripts('/dist/localforage.js');
-
-self.addEventListener(
- 'message',
- function(e) {
- function handleError(e) {
- self.postMessage({
- error: JSON.stringify(e),
- body: e,
- fail: true
- });
- }
-
- localforage.setDriver(
- e.data.driver,
- function() {
- localforage
- .setItem(
- 'web worker',
- e.data.value,
- function() {
- localforage.getItem('web worker', function(
- err,
- value
- ) {
- self.postMessage({
- body: value
- });
- });
- },
- handleError
- )
- .catch(handleError);
- },
- handleError
- );
- },
- false
-);
diff --git a/node_modules/localforage/typing-tests/localforage-tests.ts b/node_modules/localforage/typing-tests/localforage-tests.ts
deleted file mode 100644
index d0e56ad..0000000
--- a/node_modules/localforage/typing-tests/localforage-tests.ts
+++ /dev/null
@@ -1,266 +0,0 @@
-import * as localforage from 'localforage';
-
-let localForage: LocalForage = localforage;
-
-namespace LocalForageTest {
- localForage.clear((err: any) => {
- let newError: any = err;
- });
-
- localForage.getSerializer().then((s: LocalForageSerializer) => {
- let serializer: LocalForageSerializer = s;
- typeof serializer.bufferToString === "function";
- typeof serializer.deserialize === "function";
- typeof serializer.serialize === "function";
- typeof serializer.stringToBuffer === "function";
- });
-
- localForage.iterate((value, key: string, num: number) => {
- let newStr: any = value;
- let newKey: string = key;
- let newNum: number = num;
- });
-
- localForage.iterate((value: any, key: string, num: number) => {
- let newStr: any = value;
- let newKey: string = key;
- let newNum: number = num;
- });
-
- localForage.iterate((value: any, key: string, num: number) => {
- let newStr: any = value;
- let newKey: string = key;
- let newNum: number = num;
- });
-
- localForage.iterate((str: string, key: string, num: number) => {
- let newStr: string = str;
- let newKey: string = key;
- let newNum: number = num;
- });
-
- localForage.iterate((str: string, key: string, num: number) => {
- let newStr: string = str;
- let newKey: string = key;
- let newNum: number = num;
- if (newStr === 'END') {
- return newNum;
- }
- }).then((result: number | undefined) => {
- if (result) {
- let numResult: number = result;
- }
- });
-
- localForage.iterate((str, key: string, num: number) => {
- let newStr: string = str;
- let newKey: string = key;
- let newNum: number = num;
- if (newStr === 'END') {
- return newNum;
- }
- }).then((result: number | void) => {
- if (result) {
- let numResult: number = result;
- }
- });
-
- localForage.iterate((str: string, key: string, num: number) => {
- let newStr: string = str;
- let newKey: string = key;
- let newNum: number = num;
- if (newStr === 'END') {
- return newNum;
- }
- }).then((result: number | void) => {
- if (result) {
- let numResult: number = result;
- }
- });
-
- localForage.length((err: any, num: number) => {
- let newError: any = err;
- let newNumber: number = num;
- });
-
- localForage.length().then((num: number) => {
- var newNumber: number = num;
- });
-
- localForage.key(0, (err: any, value: string) => {
- let newError: any = err;
- let newValue: string = value;
- });
-
- localForage.keys((err: any, keys: Array) => {
- let newError: any = err;
- let newArray: Array = keys;
- });
-
- localForage.keys().then((keys: Array) => {
- var newArray: Array = keys;
- });
-
- localForage.getItem("key",(err: any, str: string) => {
- let newError: any = err;
- let newStr: string = str
- });
-
- localForage.getItem("key").then((str: string) => {
- let newStr: string = str;
- });
-
- localForage.setItem("key", "value",(err: any, str: string) => {
- let newError: any = err;
- let newStr: string = str
- });
-
- localForage.setItem("key", "value").then((str: string) => {
- let newStr: string = str;
- });
-
- localForage.removeItem("key",(err: any) => {
- let newError: any = err;
- });
-
- localForage.removeItem("key").then(() => {
- });
-
- const customDriver: LocalForageDriver = {
- _driver: "CustomDriver",
- _initStorage: (options: LocalForageOptions) => {},
- getItem: (key: string, callback?: (err: any, value: T) => void) => Promise.resolve({} as T),
- setItem: (key: string, value: T, callback?: (err: any, value: T) => void) => Promise.resolve(value),
- removeItem: (key: string, callback?: (err: any) => void) => Promise.resolve(),
- clear: (callback?: (err: any) => void) => Promise.resolve(),
- length: (callback?: (err: any, numberOfKeys: number) => void) => Promise.resolve(5),
- key: (keyIndex: number, callback?: (err: any, key: string) => void) => Promise.resolve('aKey'),
- keys: (callback?: (err: any, keys: string[]) => void) => Promise.resolve(['1', '2']),
- iterate: (iteratee: (value: T, key: string, iterationNumber: number) => U, callback?: (err: any, result: U) => void) => Promise.resolve({} as U),
- };
- localForage.defineDriver(customDriver);
-
- const customDriver2: LocalForageDriver = {
- _driver: "CustomDriver",
- _initStorage: (options: LocalForageOptions) => {},
- _support: true,
- getItem: (key: string, callback?: (err: any, value: T) => void) => Promise.resolve({} as T),
- setItem: (key: string, value: T, callback?: (err: any, value: T) => void) => Promise.resolve(value),
- removeItem: (key: string, callback?: (err: any) => void) => Promise.resolve(),
- clear: (callback?: (err: any) => void) => Promise.resolve(),
- length: (callback?: (err: any, numberOfKeys: number) => void) => Promise.resolve(5),
- key: (keyIndex: number, callback?: (err: any, key: string) => void) => Promise.resolve('aKey'),
- keys: (callback?: (err: any, keys: string[]) => void) => Promise.resolve(['1', '2']),
- iterate: (iteratee: (value: T, key: string, iterationNumber: number) => U, callback?: (err: any, result: U) => void) => Promise.resolve({} as U),
- };
- localForage.defineDriver(customDriver2);
-
- const customDriver3: LocalForageDriver = {
- _driver: "CustomDriver",
- _initStorage: (options: LocalForageOptions) => {},
- _support: () => Promise.resolve(true),
- getItem: (key: string, callback?: (err: any, value: T) => void) => Promise.resolve({} as T),
- setItem: (key: string, value: T, callback?: (err: any, value: T) => void) => Promise.resolve(value),
- removeItem: (key: string, callback?: (err: any) => void) => Promise.resolve(),
- clear: (callback?: (err: any) => void) => Promise.resolve(),
- length: (callback?: (err: any, numberOfKeys: number) => void) => Promise.resolve(5),
- key: (keyIndex: number, callback?: (err: any, key: string) => void) => Promise.resolve('aKey'),
- keys: (callback?: (err: any, keys: string[]) => void) => Promise.resolve(['1', '2']),
- iterate: (iteratee: (value: T, key: string, iterationNumber: number) => U, callback?: (err: any, result: U) => void) => Promise.resolve({} as U),
- dropInstance: (dbInstanceOptions?: LocalForageDbInstanceOptions, callback?: (err: any) => void) => Promise.resolve(),
- };
- localForage.defineDriver(customDriver3);
-
- localForage.getDriver("CustomDriver").then((result: LocalForageDriver) => {
- var driver: LocalForageDriver = result;
- // we need to use a variable for proper type guards before TS 2.0
- var _support = driver._support;
- if (typeof _support === "function") {
- // _support = _support.bind(driver);
- _support().then((result: boolean) => {
- let doesSupport: boolean = result;
- });
- } else if (typeof _support === "boolean") {
- let doesSupport: boolean = _support;
- }
- });
-
- {
- let config: boolean;
-
- const configOptions: LocalForageOptions = {
- name: "testyo",
- driver: localForage.LOCALSTORAGE
- };
-
- config = localForage.config(configOptions);
- config = localForage.config({
- name: "testyo",
- driver: localForage.LOCALSTORAGE
- });
- }
-
- {
- let store: LocalForage;
-
- const configOptions: LocalForageOptions = {
- name: "da instance",
- driver: localForage.LOCALSTORAGE
- };
-
- store = localForage.createInstance(configOptions);
- store = localForage.createInstance({
- name: "da instance",
- driver: localForage.LOCALSTORAGE
- });
- }
-
- {
- localForage.dropInstance().then(() => {});
-
- const dropInstanceOptions: LocalForageDbInstanceOptions = {
- name: "da instance",
- storeName: "da store"
- };
-
- localForage.dropInstance(dropInstanceOptions).then(() => {});
-
- localForage.dropInstance({
- name: "da instance",
- storeName: "da store"
- }).then(() => {});
-
- const dropDbOptions: LocalForageDbInstanceOptions = {
- name: "da instance",
- };
-
- localForage.dropInstance({
- name: "da instance",
- }).then(() => {});
- }
-
- {
- let testSerializer: LocalForageSerializer;
-
- localForage.getSerializer()
- .then((serializer: LocalForageSerializer) => {
- testSerializer = serializer;
- });
-
- localForage.getSerializer((serializer: LocalForageSerializer) => {
- testSerializer = serializer;
- });
- }
-
- {
- localForage.ready().then(() => {});
-
- localForage.ready((error) => {
- if (error) {
-
- } else {
-
- }
- });
- }
-}
diff --git a/node_modules/localforage/typing-tests/tsconfig.json b/node_modules/localforage/typing-tests/tsconfig.json
deleted file mode 100644
index cf7c2bf..0000000
--- a/node_modules/localforage/typing-tests/tsconfig.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "compileOnSave": false,
- "compilerOptions": {
- "lib": [
- "dom",
- "es2015"
- ],
- "module": "es2015",
- "moduleResolution": "node",
- "noEmit": true,
- "noImplicitAny": true,
- "strictNullChecks": true,
- "target": "es5"
- },
- "files": [
- "../typings/localforage.d.ts",
- "./localforage-tests.ts"
- ]
-}
diff --git a/node_modules/lodash-es/LICENSE b/node_modules/lodash-es/LICENSE
deleted file mode 100644
index c6f2f61..0000000
--- a/node_modules/lodash-es/LICENSE
+++ /dev/null
@@ -1,47 +0,0 @@
-Copyright JS Foundation and other contributors
-
-Based on Underscore.js, copyright Jeremy Ashkenas,
-DocumentCloud and Investigative Reporters & Editors
-
-This software consists of voluntary contributions made by many
-individuals. For exact contribution history, see the revision history
-available at https://github.com/lodash/lodash
-
-The following license applies to all parts of this software except as
-documented below:
-
-====
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-====
-
-Copyright and related rights for sample code are waived via CC0. Sample
-code is defined as all source code displayed within the prose of the
-documentation.
-
-CC0: http://creativecommons.org/publicdomain/zero/1.0/
-
-====
-
-Files located in the node_modules and vendor directories are externally
-maintained libraries used by this software which have their own
-licenses; we recommend you read them, as their terms may differ from the
-terms above.
diff --git a/node_modules/lodash-es/README.md b/node_modules/lodash-es/README.md
deleted file mode 100644
index 49dc80c..0000000
--- a/node_modules/lodash-es/README.md
+++ /dev/null
@@ -1,10 +0,0 @@
-# lodash-es v4.17.11
-
-The [Lodash](https://lodash.com/) library exported as [ES](http://www.ecma-international.org/ecma-262/6.0/) modules.
-
-Generated using [lodash-cli](https://www.npmjs.com/package/lodash-cli):
-```shell
-$ lodash modularize exports=es -o ./
-```
-
-See the [package source](https://github.com/lodash/lodash/tree/4.17.11-es) for more details.
diff --git a/node_modules/lodash-es/_DataView.js b/node_modules/lodash-es/_DataView.js
deleted file mode 100644
index 1bbaaa1..0000000
--- a/node_modules/lodash-es/_DataView.js
+++ /dev/null
@@ -1,7 +0,0 @@
-import getNative from './_getNative.js';
-import root from './_root.js';
-
-/* Built-in method references that are verified to be native. */
-var DataView = getNative(root, 'DataView');
-
-export default DataView;
diff --git a/node_modules/lodash-es/_Hash.js b/node_modules/lodash-es/_Hash.js
deleted file mode 100644
index 8ecacb0..0000000
--- a/node_modules/lodash-es/_Hash.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import hashClear from './_hashClear.js';
-import hashDelete from './_hashDelete.js';
-import hashGet from './_hashGet.js';
-import hashHas from './_hashHas.js';
-import hashSet from './_hashSet.js';
-
-/**
- * Creates a hash object.
- *
- * @private
- * @constructor
- * @param {Array} [entries] The key-value pairs to cache.
- */
-function Hash(entries) {
- var index = -1,
- length = entries == null ? 0 : entries.length;
-
- this.clear();
- while (++index < length) {
- var entry = entries[index];
- this.set(entry[0], entry[1]);
- }
-}
-
-// Add methods to `Hash`.
-Hash.prototype.clear = hashClear;
-Hash.prototype['delete'] = hashDelete;
-Hash.prototype.get = hashGet;
-Hash.prototype.has = hashHas;
-Hash.prototype.set = hashSet;
-
-export default Hash;
diff --git a/node_modules/lodash-es/_LazyWrapper.js b/node_modules/lodash-es/_LazyWrapper.js
deleted file mode 100644
index be64bf7..0000000
--- a/node_modules/lodash-es/_LazyWrapper.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import baseCreate from './_baseCreate.js';
-import baseLodash from './_baseLodash.js';
-
-/** Used as references for the maximum length and index of an array. */
-var MAX_ARRAY_LENGTH = 4294967295;
-
-/**
- * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation.
- *
- * @private
- * @constructor
- * @param {*} value The value to wrap.
- */
-function LazyWrapper(value) {
- this.__wrapped__ = value;
- this.__actions__ = [];
- this.__dir__ = 1;
- this.__filtered__ = false;
- this.__iteratees__ = [];
- this.__takeCount__ = MAX_ARRAY_LENGTH;
- this.__views__ = [];
-}
-
-// Ensure `LazyWrapper` is an instance of `baseLodash`.
-LazyWrapper.prototype = baseCreate(baseLodash.prototype);
-LazyWrapper.prototype.constructor = LazyWrapper;
-
-export default LazyWrapper;
diff --git a/node_modules/lodash-es/_ListCache.js b/node_modules/lodash-es/_ListCache.js
deleted file mode 100644
index bafa2af..0000000
--- a/node_modules/lodash-es/_ListCache.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import listCacheClear from './_listCacheClear.js';
-import listCacheDelete from './_listCacheDelete.js';
-import listCacheGet from './_listCacheGet.js';
-import listCacheHas from './_listCacheHas.js';
-import listCacheSet from './_listCacheSet.js';
-
-/**
- * Creates an list cache object.
- *
- * @private
- * @constructor
- * @param {Array} [entries] The key-value pairs to cache.
- */
-function ListCache(entries) {
- var index = -1,
- length = entries == null ? 0 : entries.length;
-
- this.clear();
- while (++index < length) {
- var entry = entries[index];
- this.set(entry[0], entry[1]);
- }
-}
-
-// Add methods to `ListCache`.
-ListCache.prototype.clear = listCacheClear;
-ListCache.prototype['delete'] = listCacheDelete;
-ListCache.prototype.get = listCacheGet;
-ListCache.prototype.has = listCacheHas;
-ListCache.prototype.set = listCacheSet;
-
-export default ListCache;
diff --git a/node_modules/lodash-es/_LodashWrapper.js b/node_modules/lodash-es/_LodashWrapper.js
deleted file mode 100644
index 3f10ef0..0000000
--- a/node_modules/lodash-es/_LodashWrapper.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import baseCreate from './_baseCreate.js';
-import baseLodash from './_baseLodash.js';
-
-/**
- * The base constructor for creating `lodash` wrapper objects.
- *
- * @private
- * @param {*} value The value to wrap.
- * @param {boolean} [chainAll] Enable explicit method chain sequences.
- */
-function LodashWrapper(value, chainAll) {
- this.__wrapped__ = value;
- this.__actions__ = [];
- this.__chain__ = !!chainAll;
- this.__index__ = 0;
- this.__values__ = undefined;
-}
-
-LodashWrapper.prototype = baseCreate(baseLodash.prototype);
-LodashWrapper.prototype.constructor = LodashWrapper;
-
-export default LodashWrapper;
diff --git a/node_modules/lodash-es/_Map.js b/node_modules/lodash-es/_Map.js
deleted file mode 100644
index 2055850..0000000
--- a/node_modules/lodash-es/_Map.js
+++ /dev/null
@@ -1,7 +0,0 @@
-import getNative from './_getNative.js';
-import root from './_root.js';
-
-/* Built-in method references that are verified to be native. */
-var Map = getNative(root, 'Map');
-
-export default Map;
diff --git a/node_modules/lodash-es/_MapCache.js b/node_modules/lodash-es/_MapCache.js
deleted file mode 100644
index deef22e..0000000
--- a/node_modules/lodash-es/_MapCache.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import mapCacheClear from './_mapCacheClear.js';
-import mapCacheDelete from './_mapCacheDelete.js';
-import mapCacheGet from './_mapCacheGet.js';
-import mapCacheHas from './_mapCacheHas.js';
-import mapCacheSet from './_mapCacheSet.js';
-
-/**
- * Creates a map cache object to store key-value pairs.
- *
- * @private
- * @constructor
- * @param {Array} [entries] The key-value pairs to cache.
- */
-function MapCache(entries) {
- var index = -1,
- length = entries == null ? 0 : entries.length;
-
- this.clear();
- while (++index < length) {
- var entry = entries[index];
- this.set(entry[0], entry[1]);
- }
-}
-
-// Add methods to `MapCache`.
-MapCache.prototype.clear = mapCacheClear;
-MapCache.prototype['delete'] = mapCacheDelete;
-MapCache.prototype.get = mapCacheGet;
-MapCache.prototype.has = mapCacheHas;
-MapCache.prototype.set = mapCacheSet;
-
-export default MapCache;
diff --git a/node_modules/lodash-es/_Promise.js b/node_modules/lodash-es/_Promise.js
deleted file mode 100644
index ce54b58..0000000
--- a/node_modules/lodash-es/_Promise.js
+++ /dev/null
@@ -1,7 +0,0 @@
-import getNative from './_getNative.js';
-import root from './_root.js';
-
-/* Built-in method references that are verified to be native. */
-var Promise = getNative(root, 'Promise');
-
-export default Promise;
diff --git a/node_modules/lodash-es/_Set.js b/node_modules/lodash-es/_Set.js
deleted file mode 100644
index 2f95209..0000000
--- a/node_modules/lodash-es/_Set.js
+++ /dev/null
@@ -1,7 +0,0 @@
-import getNative from './_getNative.js';
-import root from './_root.js';
-
-/* Built-in method references that are verified to be native. */
-var Set = getNative(root, 'Set');
-
-export default Set;
diff --git a/node_modules/lodash-es/_SetCache.js b/node_modules/lodash-es/_SetCache.js
deleted file mode 100644
index 12455ff..0000000
--- a/node_modules/lodash-es/_SetCache.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import MapCache from './_MapCache.js';
-import setCacheAdd from './_setCacheAdd.js';
-import setCacheHas from './_setCacheHas.js';
-
-/**
- *
- * Creates an array cache object to store unique values.
- *
- * @private
- * @constructor
- * @param {Array} [values] The values to cache.
- */
-function SetCache(values) {
- var index = -1,
- length = values == null ? 0 : values.length;
-
- this.__data__ = new MapCache;
- while (++index < length) {
- this.add(values[index]);
- }
-}
-
-// Add methods to `SetCache`.
-SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;
-SetCache.prototype.has = setCacheHas;
-
-export default SetCache;
diff --git a/node_modules/lodash-es/_Stack.js b/node_modules/lodash-es/_Stack.js
deleted file mode 100644
index 77c3cf3..0000000
--- a/node_modules/lodash-es/_Stack.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import ListCache from './_ListCache.js';
-import stackClear from './_stackClear.js';
-import stackDelete from './_stackDelete.js';
-import stackGet from './_stackGet.js';
-import stackHas from './_stackHas.js';
-import stackSet from './_stackSet.js';
-
-/**
- * Creates a stack cache object to store key-value pairs.
- *
- * @private
- * @constructor
- * @param {Array} [entries] The key-value pairs to cache.
- */
-function Stack(entries) {
- var data = this.__data__ = new ListCache(entries);
- this.size = data.size;
-}
-
-// Add methods to `Stack`.
-Stack.prototype.clear = stackClear;
-Stack.prototype['delete'] = stackDelete;
-Stack.prototype.get = stackGet;
-Stack.prototype.has = stackHas;
-Stack.prototype.set = stackSet;
-
-export default Stack;
diff --git a/node_modules/lodash-es/_Symbol.js b/node_modules/lodash-es/_Symbol.js
deleted file mode 100644
index 2b9341c..0000000
--- a/node_modules/lodash-es/_Symbol.js
+++ /dev/null
@@ -1,6 +0,0 @@
-import root from './_root.js';
-
-/** Built-in value references. */
-var Symbol = root.Symbol;
-
-export default Symbol;
diff --git a/node_modules/lodash-es/_Uint8Array.js b/node_modules/lodash-es/_Uint8Array.js
deleted file mode 100644
index f463674..0000000
--- a/node_modules/lodash-es/_Uint8Array.js
+++ /dev/null
@@ -1,6 +0,0 @@
-import root from './_root.js';
-
-/** Built-in value references. */
-var Uint8Array = root.Uint8Array;
-
-export default Uint8Array;
diff --git a/node_modules/lodash-es/_WeakMap.js b/node_modules/lodash-es/_WeakMap.js
deleted file mode 100644
index 6f97de5..0000000
--- a/node_modules/lodash-es/_WeakMap.js
+++ /dev/null
@@ -1,7 +0,0 @@
-import getNative from './_getNative.js';
-import root from './_root.js';
-
-/* Built-in method references that are verified to be native. */
-var WeakMap = getNative(root, 'WeakMap');
-
-export default WeakMap;
diff --git a/node_modules/lodash-es/_addMapEntry.js b/node_modules/lodash-es/_addMapEntry.js
deleted file mode 100644
index 33f57a2..0000000
--- a/node_modules/lodash-es/_addMapEntry.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Adds the key-value `pair` to `map`.
- *
- * @private
- * @param {Object} map The map to modify.
- * @param {Array} pair The key-value pair to add.
- * @returns {Object} Returns `map`.
- */
-function addMapEntry(map, pair) {
- // Don't return `map.set` because it's not chainable in IE 11.
- map.set(pair[0], pair[1]);
- return map;
-}
-
-export default addMapEntry;
diff --git a/node_modules/lodash-es/_addSetEntry.js b/node_modules/lodash-es/_addSetEntry.js
deleted file mode 100644
index c02b5cc..0000000
--- a/node_modules/lodash-es/_addSetEntry.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Adds `value` to `set`.
- *
- * @private
- * @param {Object} set The set to modify.
- * @param {*} value The value to add.
- * @returns {Object} Returns `set`.
- */
-function addSetEntry(set, value) {
- // Don't return `set.add` because it's not chainable in IE 11.
- set.add(value);
- return set;
-}
-
-export default addSetEntry;
diff --git a/node_modules/lodash-es/_apply.js b/node_modules/lodash-es/_apply.js
deleted file mode 100644
index a92f5a8..0000000
--- a/node_modules/lodash-es/_apply.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * A faster alternative to `Function#apply`, this function invokes `func`
- * with the `this` binding of `thisArg` and the arguments of `args`.
- *
- * @private
- * @param {Function} func The function to invoke.
- * @param {*} thisArg The `this` binding of `func`.
- * @param {Array} args The arguments to invoke `func` with.
- * @returns {*} Returns the result of `func`.
- */
-function apply(func, thisArg, args) {
- switch (args.length) {
- case 0: return func.call(thisArg);
- case 1: return func.call(thisArg, args[0]);
- case 2: return func.call(thisArg, args[0], args[1]);
- case 3: return func.call(thisArg, args[0], args[1], args[2]);
- }
- return func.apply(thisArg, args);
-}
-
-export default apply;
diff --git a/node_modules/lodash-es/_arrayAggregator.js b/node_modules/lodash-es/_arrayAggregator.js
deleted file mode 100644
index d451879..0000000
--- a/node_modules/lodash-es/_arrayAggregator.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * A specialized version of `baseAggregator` for arrays.
- *
- * @private
- * @param {Array} [array] The array to iterate over.
- * @param {Function} setter The function to set `accumulator` values.
- * @param {Function} iteratee The iteratee to transform keys.
- * @param {Object} accumulator The initial aggregated object.
- * @returns {Function} Returns `accumulator`.
- */
-function arrayAggregator(array, setter, iteratee, accumulator) {
- var index = -1,
- length = array == null ? 0 : array.length;
-
- while (++index < length) {
- var value = array[index];
- setter(accumulator, value, iteratee(value), array);
- }
- return accumulator;
-}
-
-export default arrayAggregator;
diff --git a/node_modules/lodash-es/_arrayEach.js b/node_modules/lodash-es/_arrayEach.js
deleted file mode 100644
index 2a570bf..0000000
--- a/node_modules/lodash-es/_arrayEach.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * A specialized version of `_.forEach` for arrays without support for
- * iteratee shorthands.
- *
- * @private
- * @param {Array} [array] The array to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Array} Returns `array`.
- */
-function arrayEach(array, iteratee) {
- var index = -1,
- length = array == null ? 0 : array.length;
-
- while (++index < length) {
- if (iteratee(array[index], index, array) === false) {
- break;
- }
- }
- return array;
-}
-
-export default arrayEach;
diff --git a/node_modules/lodash-es/_arrayEachRight.js b/node_modules/lodash-es/_arrayEachRight.js
deleted file mode 100644
index ce87d1a..0000000
--- a/node_modules/lodash-es/_arrayEachRight.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * A specialized version of `_.forEachRight` for arrays without support for
- * iteratee shorthands.
- *
- * @private
- * @param {Array} [array] The array to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Array} Returns `array`.
- */
-function arrayEachRight(array, iteratee) {
- var length = array == null ? 0 : array.length;
-
- while (length--) {
- if (iteratee(array[length], length, array) === false) {
- break;
- }
- }
- return array;
-}
-
-export default arrayEachRight;
diff --git a/node_modules/lodash-es/_arrayEvery.js b/node_modules/lodash-es/_arrayEvery.js
deleted file mode 100644
index 93f30a9..0000000
--- a/node_modules/lodash-es/_arrayEvery.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * A specialized version of `_.every` for arrays without support for
- * iteratee shorthands.
- *
- * @private
- * @param {Array} [array] The array to iterate over.
- * @param {Function} predicate The function invoked per iteration.
- * @returns {boolean} Returns `true` if all elements pass the predicate check,
- * else `false`.
- */
-function arrayEvery(array, predicate) {
- var index = -1,
- length = array == null ? 0 : array.length;
-
- while (++index < length) {
- if (!predicate(array[index], index, array)) {
- return false;
- }
- }
- return true;
-}
-
-export default arrayEvery;
diff --git a/node_modules/lodash-es/_arrayFilter.js b/node_modules/lodash-es/_arrayFilter.js
deleted file mode 100644
index 20d3769..0000000
--- a/node_modules/lodash-es/_arrayFilter.js
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * A specialized version of `_.filter` for arrays without support for
- * iteratee shorthands.
- *
- * @private
- * @param {Array} [array] The array to iterate over.
- * @param {Function} predicate The function invoked per iteration.
- * @returns {Array} Returns the new filtered array.
- */
-function arrayFilter(array, predicate) {
- var index = -1,
- length = array == null ? 0 : array.length,
- resIndex = 0,
- result = [];
-
- while (++index < length) {
- var value = array[index];
- if (predicate(value, index, array)) {
- result[resIndex++] = value;
- }
- }
- return result;
-}
-
-export default arrayFilter;
diff --git a/node_modules/lodash-es/_arrayIncludes.js b/node_modules/lodash-es/_arrayIncludes.js
deleted file mode 100644
index d515af9..0000000
--- a/node_modules/lodash-es/_arrayIncludes.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import baseIndexOf from './_baseIndexOf.js';
-
-/**
- * A specialized version of `_.includes` for arrays without support for
- * specifying an index to search from.
- *
- * @private
- * @param {Array} [array] The array to inspect.
- * @param {*} target The value to search for.
- * @returns {boolean} Returns `true` if `target` is found, else `false`.
- */
-function arrayIncludes(array, value) {
- var length = array == null ? 0 : array.length;
- return !!length && baseIndexOf(array, value, 0) > -1;
-}
-
-export default arrayIncludes;
diff --git a/node_modules/lodash-es/_arrayIncludesWith.js b/node_modules/lodash-es/_arrayIncludesWith.js
deleted file mode 100644
index 9dedaa2..0000000
--- a/node_modules/lodash-es/_arrayIncludesWith.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * This function is like `arrayIncludes` except that it accepts a comparator.
- *
- * @private
- * @param {Array} [array] The array to inspect.
- * @param {*} target The value to search for.
- * @param {Function} comparator The comparator invoked per element.
- * @returns {boolean} Returns `true` if `target` is found, else `false`.
- */
-function arrayIncludesWith(array, value, comparator) {
- var index = -1,
- length = array == null ? 0 : array.length;
-
- while (++index < length) {
- if (comparator(value, array[index])) {
- return true;
- }
- }
- return false;
-}
-
-export default arrayIncludesWith;
diff --git a/node_modules/lodash-es/_arrayLikeKeys.js b/node_modules/lodash-es/_arrayLikeKeys.js
deleted file mode 100644
index de5d551..0000000
--- a/node_modules/lodash-es/_arrayLikeKeys.js
+++ /dev/null
@@ -1,49 +0,0 @@
-import baseTimes from './_baseTimes.js';
-import isArguments from './isArguments.js';
-import isArray from './isArray.js';
-import isBuffer from './isBuffer.js';
-import isIndex from './_isIndex.js';
-import isTypedArray from './isTypedArray.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Creates an array of the enumerable property names of the array-like `value`.
- *
- * @private
- * @param {*} value The value to query.
- * @param {boolean} inherited Specify returning inherited property names.
- * @returns {Array} Returns the array of property names.
- */
-function arrayLikeKeys(value, inherited) {
- var isArr = isArray(value),
- isArg = !isArr && isArguments(value),
- isBuff = !isArr && !isArg && isBuffer(value),
- isType = !isArr && !isArg && !isBuff && isTypedArray(value),
- skipIndexes = isArr || isArg || isBuff || isType,
- result = skipIndexes ? baseTimes(value.length, String) : [],
- length = result.length;
-
- for (var key in value) {
- if ((inherited || hasOwnProperty.call(value, key)) &&
- !(skipIndexes && (
- // Safari 9 has enumerable `arguments.length` in strict mode.
- key == 'length' ||
- // Node.js 0.10 has enumerable non-index properties on buffers.
- (isBuff && (key == 'offset' || key == 'parent')) ||
- // PhantomJS 2 has enumerable non-index properties on typed arrays.
- (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||
- // Skip index properties.
- isIndex(key, length)
- ))) {
- result.push(key);
- }
- }
- return result;
-}
-
-export default arrayLikeKeys;
diff --git a/node_modules/lodash-es/_arrayMap.js b/node_modules/lodash-es/_arrayMap.js
deleted file mode 100644
index 8d32a4e..0000000
--- a/node_modules/lodash-es/_arrayMap.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * A specialized version of `_.map` for arrays without support for iteratee
- * shorthands.
- *
- * @private
- * @param {Array} [array] The array to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Array} Returns the new mapped array.
- */
-function arrayMap(array, iteratee) {
- var index = -1,
- length = array == null ? 0 : array.length,
- result = Array(length);
-
- while (++index < length) {
- result[index] = iteratee(array[index], index, array);
- }
- return result;
-}
-
-export default arrayMap;
diff --git a/node_modules/lodash-es/_arrayPush.js b/node_modules/lodash-es/_arrayPush.js
deleted file mode 100644
index 3660a7d..0000000
--- a/node_modules/lodash-es/_arrayPush.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * Appends the elements of `values` to `array`.
- *
- * @private
- * @param {Array} array The array to modify.
- * @param {Array} values The values to append.
- * @returns {Array} Returns `array`.
- */
-function arrayPush(array, values) {
- var index = -1,
- length = values.length,
- offset = array.length;
-
- while (++index < length) {
- array[offset + index] = values[index];
- }
- return array;
-}
-
-export default arrayPush;
diff --git a/node_modules/lodash-es/_arrayReduce.js b/node_modules/lodash-es/_arrayReduce.js
deleted file mode 100644
index 58e1df3..0000000
--- a/node_modules/lodash-es/_arrayReduce.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * A specialized version of `_.reduce` for arrays without support for
- * iteratee shorthands.
- *
- * @private
- * @param {Array} [array] The array to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @param {*} [accumulator] The initial value.
- * @param {boolean} [initAccum] Specify using the first element of `array` as
- * the initial value.
- * @returns {*} Returns the accumulated value.
- */
-function arrayReduce(array, iteratee, accumulator, initAccum) {
- var index = -1,
- length = array == null ? 0 : array.length;
-
- if (initAccum && length) {
- accumulator = array[++index];
- }
- while (++index < length) {
- accumulator = iteratee(accumulator, array[index], index, array);
- }
- return accumulator;
-}
-
-export default arrayReduce;
diff --git a/node_modules/lodash-es/_arrayReduceRight.js b/node_modules/lodash-es/_arrayReduceRight.js
deleted file mode 100644
index c185beb..0000000
--- a/node_modules/lodash-es/_arrayReduceRight.js
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
- * A specialized version of `_.reduceRight` for arrays without support for
- * iteratee shorthands.
- *
- * @private
- * @param {Array} [array] The array to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @param {*} [accumulator] The initial value.
- * @param {boolean} [initAccum] Specify using the last element of `array` as
- * the initial value.
- * @returns {*} Returns the accumulated value.
- */
-function arrayReduceRight(array, iteratee, accumulator, initAccum) {
- var length = array == null ? 0 : array.length;
- if (initAccum && length) {
- accumulator = array[--length];
- }
- while (length--) {
- accumulator = iteratee(accumulator, array[length], length, array);
- }
- return accumulator;
-}
-
-export default arrayReduceRight;
diff --git a/node_modules/lodash-es/_arraySample.js b/node_modules/lodash-es/_arraySample.js
deleted file mode 100644
index 008596f..0000000
--- a/node_modules/lodash-es/_arraySample.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import baseRandom from './_baseRandom.js';
-
-/**
- * A specialized version of `_.sample` for arrays.
- *
- * @private
- * @param {Array} array The array to sample.
- * @returns {*} Returns the random element.
- */
-function arraySample(array) {
- var length = array.length;
- return length ? array[baseRandom(0, length - 1)] : undefined;
-}
-
-export default arraySample;
diff --git a/node_modules/lodash-es/_arraySampleSize.js b/node_modules/lodash-es/_arraySampleSize.js
deleted file mode 100644
index d5c9474..0000000
--- a/node_modules/lodash-es/_arraySampleSize.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import baseClamp from './_baseClamp.js';
-import copyArray from './_copyArray.js';
-import shuffleSelf from './_shuffleSelf.js';
-
-/**
- * A specialized version of `_.sampleSize` for arrays.
- *
- * @private
- * @param {Array} array The array to sample.
- * @param {number} n The number of elements to sample.
- * @returns {Array} Returns the random elements.
- */
-function arraySampleSize(array, n) {
- return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length));
-}
-
-export default arraySampleSize;
diff --git a/node_modules/lodash-es/_arrayShuffle.js b/node_modules/lodash-es/_arrayShuffle.js
deleted file mode 100644
index 493e65b..0000000
--- a/node_modules/lodash-es/_arrayShuffle.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import copyArray from './_copyArray.js';
-import shuffleSelf from './_shuffleSelf.js';
-
-/**
- * A specialized version of `_.shuffle` for arrays.
- *
- * @private
- * @param {Array} array The array to shuffle.
- * @returns {Array} Returns the new shuffled array.
- */
-function arrayShuffle(array) {
- return shuffleSelf(copyArray(array));
-}
-
-export default arrayShuffle;
diff --git a/node_modules/lodash-es/_arraySome.js b/node_modules/lodash-es/_arraySome.js
deleted file mode 100644
index d66f4c3..0000000
--- a/node_modules/lodash-es/_arraySome.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * A specialized version of `_.some` for arrays without support for iteratee
- * shorthands.
- *
- * @private
- * @param {Array} [array] The array to iterate over.
- * @param {Function} predicate The function invoked per iteration.
- * @returns {boolean} Returns `true` if any element passes the predicate check,
- * else `false`.
- */
-function arraySome(array, predicate) {
- var index = -1,
- length = array == null ? 0 : array.length;
-
- while (++index < length) {
- if (predicate(array[index], index, array)) {
- return true;
- }
- }
- return false;
-}
-
-export default arraySome;
diff --git a/node_modules/lodash-es/_asciiSize.js b/node_modules/lodash-es/_asciiSize.js
deleted file mode 100644
index bbf4df4..0000000
--- a/node_modules/lodash-es/_asciiSize.js
+++ /dev/null
@@ -1,12 +0,0 @@
-import baseProperty from './_baseProperty.js';
-
-/**
- * Gets the size of an ASCII `string`.
- *
- * @private
- * @param {string} string The string inspect.
- * @returns {number} Returns the string size.
- */
-var asciiSize = baseProperty('length');
-
-export default asciiSize;
diff --git a/node_modules/lodash-es/_asciiToArray.js b/node_modules/lodash-es/_asciiToArray.js
deleted file mode 100644
index 1ab7be6..0000000
--- a/node_modules/lodash-es/_asciiToArray.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- * Converts an ASCII `string` to an array.
- *
- * @private
- * @param {string} string The string to convert.
- * @returns {Array} Returns the converted array.
- */
-function asciiToArray(string) {
- return string.split('');
-}
-
-export default asciiToArray;
diff --git a/node_modules/lodash-es/_asciiWords.js b/node_modules/lodash-es/_asciiWords.js
deleted file mode 100644
index 7840636..0000000
--- a/node_modules/lodash-es/_asciiWords.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/** Used to match words composed of alphanumeric characters. */
-var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;
-
-/**
- * Splits an ASCII `string` into an array of its words.
- *
- * @private
- * @param {string} The string to inspect.
- * @returns {Array} Returns the words of `string`.
- */
-function asciiWords(string) {
- return string.match(reAsciiWord) || [];
-}
-
-export default asciiWords;
diff --git a/node_modules/lodash-es/_assignMergeValue.js b/node_modules/lodash-es/_assignMergeValue.js
deleted file mode 100644
index 92d0916..0000000
--- a/node_modules/lodash-es/_assignMergeValue.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import baseAssignValue from './_baseAssignValue.js';
-import eq from './eq.js';
-
-/**
- * This function is like `assignValue` except that it doesn't assign
- * `undefined` values.
- *
- * @private
- * @param {Object} object The object to modify.
- * @param {string} key The key of the property to assign.
- * @param {*} value The value to assign.
- */
-function assignMergeValue(object, key, value) {
- if ((value !== undefined && !eq(object[key], value)) ||
- (value === undefined && !(key in object))) {
- baseAssignValue(object, key, value);
- }
-}
-
-export default assignMergeValue;
diff --git a/node_modules/lodash-es/_assignValue.js b/node_modules/lodash-es/_assignValue.js
deleted file mode 100644
index c858e92..0000000
--- a/node_modules/lodash-es/_assignValue.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import baseAssignValue from './_baseAssignValue.js';
-import eq from './eq.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Assigns `value` to `key` of `object` if the existing value is not equivalent
- * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
- * for equality comparisons.
- *
- * @private
- * @param {Object} object The object to modify.
- * @param {string} key The key of the property to assign.
- * @param {*} value The value to assign.
- */
-function assignValue(object, key, value) {
- var objValue = object[key];
- if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||
- (value === undefined && !(key in object))) {
- baseAssignValue(object, key, value);
- }
-}
-
-export default assignValue;
diff --git a/node_modules/lodash-es/_assocIndexOf.js b/node_modules/lodash-es/_assocIndexOf.js
deleted file mode 100644
index 88afb39..0000000
--- a/node_modules/lodash-es/_assocIndexOf.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import eq from './eq.js';
-
-/**
- * Gets the index at which the `key` is found in `array` of key-value pairs.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {*} key The key to search for.
- * @returns {number} Returns the index of the matched value, else `-1`.
- */
-function assocIndexOf(array, key) {
- var length = array.length;
- while (length--) {
- if (eq(array[length][0], key)) {
- return length;
- }
- }
- return -1;
-}
-
-export default assocIndexOf;
diff --git a/node_modules/lodash-es/_baseAggregator.js b/node_modules/lodash-es/_baseAggregator.js
deleted file mode 100644
index 5bf1fdd..0000000
--- a/node_modules/lodash-es/_baseAggregator.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import baseEach from './_baseEach.js';
-
-/**
- * Aggregates elements of `collection` on `accumulator` with keys transformed
- * by `iteratee` and values set by `setter`.
- *
- * @private
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} setter The function to set `accumulator` values.
- * @param {Function} iteratee The iteratee to transform keys.
- * @param {Object} accumulator The initial aggregated object.
- * @returns {Function} Returns `accumulator`.
- */
-function baseAggregator(collection, setter, iteratee, accumulator) {
- baseEach(collection, function(value, key, collection) {
- setter(accumulator, value, iteratee(value), collection);
- });
- return accumulator;
-}
-
-export default baseAggregator;
diff --git a/node_modules/lodash-es/_baseAssign.js b/node_modules/lodash-es/_baseAssign.js
deleted file mode 100644
index 81ae5a5..0000000
--- a/node_modules/lodash-es/_baseAssign.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import copyObject from './_copyObject.js';
-import keys from './keys.js';
-
-/**
- * The base implementation of `_.assign` without support for multiple sources
- * or `customizer` functions.
- *
- * @private
- * @param {Object} object The destination object.
- * @param {Object} source The source object.
- * @returns {Object} Returns `object`.
- */
-function baseAssign(object, source) {
- return object && copyObject(source, keys(source), object);
-}
-
-export default baseAssign;
diff --git a/node_modules/lodash-es/_baseAssignIn.js b/node_modules/lodash-es/_baseAssignIn.js
deleted file mode 100644
index 83c6e83..0000000
--- a/node_modules/lodash-es/_baseAssignIn.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import copyObject from './_copyObject.js';
-import keysIn from './keysIn.js';
-
-/**
- * The base implementation of `_.assignIn` without support for multiple sources
- * or `customizer` functions.
- *
- * @private
- * @param {Object} object The destination object.
- * @param {Object} source The source object.
- * @returns {Object} Returns `object`.
- */
-function baseAssignIn(object, source) {
- return object && copyObject(source, keysIn(source), object);
-}
-
-export default baseAssignIn;
diff --git a/node_modules/lodash-es/_baseAssignValue.js b/node_modules/lodash-es/_baseAssignValue.js
deleted file mode 100644
index 8d55996..0000000
--- a/node_modules/lodash-es/_baseAssignValue.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import defineProperty from './_defineProperty.js';
-
-/**
- * The base implementation of `assignValue` and `assignMergeValue` without
- * value checks.
- *
- * @private
- * @param {Object} object The object to modify.
- * @param {string} key The key of the property to assign.
- * @param {*} value The value to assign.
- */
-function baseAssignValue(object, key, value) {
- if (key == '__proto__' && defineProperty) {
- defineProperty(object, key, {
- 'configurable': true,
- 'enumerable': true,
- 'value': value,
- 'writable': true
- });
- } else {
- object[key] = value;
- }
-}
-
-export default baseAssignValue;
diff --git a/node_modules/lodash-es/_baseAt.js b/node_modules/lodash-es/_baseAt.js
deleted file mode 100644
index 3947389..0000000
--- a/node_modules/lodash-es/_baseAt.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import get from './get.js';
-
-/**
- * The base implementation of `_.at` without support for individual paths.
- *
- * @private
- * @param {Object} object The object to iterate over.
- * @param {string[]} paths The property paths to pick.
- * @returns {Array} Returns the picked elements.
- */
-function baseAt(object, paths) {
- var index = -1,
- length = paths.length,
- result = Array(length),
- skip = object == null;
-
- while (++index < length) {
- result[index] = skip ? undefined : get(object, paths[index]);
- }
- return result;
-}
-
-export default baseAt;
diff --git a/node_modules/lodash-es/_baseClamp.js b/node_modules/lodash-es/_baseClamp.js
deleted file mode 100644
index bf9a927..0000000
--- a/node_modules/lodash-es/_baseClamp.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * The base implementation of `_.clamp` which doesn't coerce arguments.
- *
- * @private
- * @param {number} number The number to clamp.
- * @param {number} [lower] The lower bound.
- * @param {number} upper The upper bound.
- * @returns {number} Returns the clamped number.
- */
-function baseClamp(number, lower, upper) {
- if (number === number) {
- if (upper !== undefined) {
- number = number <= upper ? number : upper;
- }
- if (lower !== undefined) {
- number = number >= lower ? number : lower;
- }
- }
- return number;
-}
-
-export default baseClamp;
diff --git a/node_modules/lodash-es/_baseClone.js b/node_modules/lodash-es/_baseClone.js
deleted file mode 100644
index ad29619..0000000
--- a/node_modules/lodash-es/_baseClone.js
+++ /dev/null
@@ -1,171 +0,0 @@
-import Stack from './_Stack.js';
-import arrayEach from './_arrayEach.js';
-import assignValue from './_assignValue.js';
-import baseAssign from './_baseAssign.js';
-import baseAssignIn from './_baseAssignIn.js';
-import cloneBuffer from './_cloneBuffer.js';
-import copyArray from './_copyArray.js';
-import copySymbols from './_copySymbols.js';
-import copySymbolsIn from './_copySymbolsIn.js';
-import getAllKeys from './_getAllKeys.js';
-import getAllKeysIn from './_getAllKeysIn.js';
-import getTag from './_getTag.js';
-import initCloneArray from './_initCloneArray.js';
-import initCloneByTag from './_initCloneByTag.js';
-import initCloneObject from './_initCloneObject.js';
-import isArray from './isArray.js';
-import isBuffer from './isBuffer.js';
-import isMap from './isMap.js';
-import isObject from './isObject.js';
-import isSet from './isSet.js';
-import keys from './keys.js';
-
-/** Used to compose bitmasks for cloning. */
-var CLONE_DEEP_FLAG = 1,
- CLONE_FLAT_FLAG = 2,
- CLONE_SYMBOLS_FLAG = 4;
-
-/** `Object#toString` result references. */
-var argsTag = '[object Arguments]',
- arrayTag = '[object Array]',
- boolTag = '[object Boolean]',
- dateTag = '[object Date]',
- errorTag = '[object Error]',
- funcTag = '[object Function]',
- genTag = '[object GeneratorFunction]',
- mapTag = '[object Map]',
- numberTag = '[object Number]',
- objectTag = '[object Object]',
- regexpTag = '[object RegExp]',
- setTag = '[object Set]',
- stringTag = '[object String]',
- symbolTag = '[object Symbol]',
- weakMapTag = '[object WeakMap]';
-
-var arrayBufferTag = '[object ArrayBuffer]',
- dataViewTag = '[object DataView]',
- float32Tag = '[object Float32Array]',
- float64Tag = '[object Float64Array]',
- int8Tag = '[object Int8Array]',
- int16Tag = '[object Int16Array]',
- int32Tag = '[object Int32Array]',
- uint8Tag = '[object Uint8Array]',
- uint8ClampedTag = '[object Uint8ClampedArray]',
- uint16Tag = '[object Uint16Array]',
- uint32Tag = '[object Uint32Array]';
-
-/** Used to identify `toStringTag` values supported by `_.clone`. */
-var cloneableTags = {};
-cloneableTags[argsTag] = cloneableTags[arrayTag] =
-cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =
-cloneableTags[boolTag] = cloneableTags[dateTag] =
-cloneableTags[float32Tag] = cloneableTags[float64Tag] =
-cloneableTags[int8Tag] = cloneableTags[int16Tag] =
-cloneableTags[int32Tag] = cloneableTags[mapTag] =
-cloneableTags[numberTag] = cloneableTags[objectTag] =
-cloneableTags[regexpTag] = cloneableTags[setTag] =
-cloneableTags[stringTag] = cloneableTags[symbolTag] =
-cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =
-cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;
-cloneableTags[errorTag] = cloneableTags[funcTag] =
-cloneableTags[weakMapTag] = false;
-
-/**
- * The base implementation of `_.clone` and `_.cloneDeep` which tracks
- * traversed objects.
- *
- * @private
- * @param {*} value The value to clone.
- * @param {boolean} bitmask The bitmask flags.
- * 1 - Deep clone
- * 2 - Flatten inherited properties
- * 4 - Clone symbols
- * @param {Function} [customizer] The function to customize cloning.
- * @param {string} [key] The key of `value`.
- * @param {Object} [object] The parent object of `value`.
- * @param {Object} [stack] Tracks traversed objects and their clone counterparts.
- * @returns {*} Returns the cloned value.
- */
-function baseClone(value, bitmask, customizer, key, object, stack) {
- var result,
- isDeep = bitmask & CLONE_DEEP_FLAG,
- isFlat = bitmask & CLONE_FLAT_FLAG,
- isFull = bitmask & CLONE_SYMBOLS_FLAG;
-
- if (customizer) {
- result = object ? customizer(value, key, object, stack) : customizer(value);
- }
- if (result !== undefined) {
- return result;
- }
- if (!isObject(value)) {
- return value;
- }
- var isArr = isArray(value);
- if (isArr) {
- result = initCloneArray(value);
- if (!isDeep) {
- return copyArray(value, result);
- }
- } else {
- var tag = getTag(value),
- isFunc = tag == funcTag || tag == genTag;
-
- if (isBuffer(value)) {
- return cloneBuffer(value, isDeep);
- }
- if (tag == objectTag || tag == argsTag || (isFunc && !object)) {
- result = (isFlat || isFunc) ? {} : initCloneObject(value);
- if (!isDeep) {
- return isFlat
- ? copySymbolsIn(value, baseAssignIn(result, value))
- : copySymbols(value, baseAssign(result, value));
- }
- } else {
- if (!cloneableTags[tag]) {
- return object ? value : {};
- }
- result = initCloneByTag(value, tag, isDeep);
- }
- }
- // Check for circular references and return its corresponding clone.
- stack || (stack = new Stack);
- var stacked = stack.get(value);
- if (stacked) {
- return stacked;
- }
- stack.set(value, result);
-
- if (isSet(value)) {
- value.forEach(function(subValue) {
- result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));
- });
-
- return result;
- }
-
- if (isMap(value)) {
- value.forEach(function(subValue, key) {
- result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));
- });
-
- return result;
- }
-
- var keysFunc = isFull
- ? (isFlat ? getAllKeysIn : getAllKeys)
- : (isFlat ? keysIn : keys);
-
- var props = isArr ? undefined : keysFunc(value);
- arrayEach(props || value, function(subValue, key) {
- if (props) {
- key = subValue;
- subValue = value[key];
- }
- // Recursively populate clone (susceptible to call stack limits).
- assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));
- });
- return result;
-}
-
-export default baseClone;
diff --git a/node_modules/lodash-es/_baseConforms.js b/node_modules/lodash-es/_baseConforms.js
deleted file mode 100644
index d7633c1..0000000
--- a/node_modules/lodash-es/_baseConforms.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import baseConformsTo from './_baseConformsTo.js';
-import keys from './keys.js';
-
-/**
- * The base implementation of `_.conforms` which doesn't clone `source`.
- *
- * @private
- * @param {Object} source The object of property predicates to conform to.
- * @returns {Function} Returns the new spec function.
- */
-function baseConforms(source) {
- var props = keys(source);
- return function(object) {
- return baseConformsTo(object, source, props);
- };
-}
-
-export default baseConforms;
diff --git a/node_modules/lodash-es/_baseConformsTo.js b/node_modules/lodash-es/_baseConformsTo.js
deleted file mode 100644
index 3406ec5..0000000
--- a/node_modules/lodash-es/_baseConformsTo.js
+++ /dev/null
@@ -1,27 +0,0 @@
-/**
- * The base implementation of `_.conformsTo` which accepts `props` to check.
- *
- * @private
- * @param {Object} object The object to inspect.
- * @param {Object} source The object of property predicates to conform to.
- * @returns {boolean} Returns `true` if `object` conforms, else `false`.
- */
-function baseConformsTo(object, source, props) {
- var length = props.length;
- if (object == null) {
- return !length;
- }
- object = Object(object);
- while (length--) {
- var key = props[length],
- predicate = source[key],
- value = object[key];
-
- if ((value === undefined && !(key in object)) || !predicate(value)) {
- return false;
- }
- }
- return true;
-}
-
-export default baseConformsTo;
diff --git a/node_modules/lodash-es/_baseCreate.js b/node_modules/lodash-es/_baseCreate.js
deleted file mode 100644
index ad1da38..0000000
--- a/node_modules/lodash-es/_baseCreate.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import isObject from './isObject.js';
-
-/** Built-in value references. */
-var objectCreate = Object.create;
-
-/**
- * The base implementation of `_.create` without support for assigning
- * properties to the created object.
- *
- * @private
- * @param {Object} proto The object to inherit from.
- * @returns {Object} Returns the new object.
- */
-var baseCreate = (function() {
- function object() {}
- return function(proto) {
- if (!isObject(proto)) {
- return {};
- }
- if (objectCreate) {
- return objectCreate(proto);
- }
- object.prototype = proto;
- var result = new object;
- object.prototype = undefined;
- return result;
- };
-}());
-
-export default baseCreate;
diff --git a/node_modules/lodash-es/_baseDelay.js b/node_modules/lodash-es/_baseDelay.js
deleted file mode 100644
index 8cc5e27..0000000
--- a/node_modules/lodash-es/_baseDelay.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/** Error message constants. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/**
- * The base implementation of `_.delay` and `_.defer` which accepts `args`
- * to provide to `func`.
- *
- * @private
- * @param {Function} func The function to delay.
- * @param {number} wait The number of milliseconds to delay invocation.
- * @param {Array} args The arguments to provide to `func`.
- * @returns {number|Object} Returns the timer id or timeout object.
- */
-function baseDelay(func, wait, args) {
- if (typeof func != 'function') {
- throw new TypeError(FUNC_ERROR_TEXT);
- }
- return setTimeout(function() { func.apply(undefined, args); }, wait);
-}
-
-export default baseDelay;
diff --git a/node_modules/lodash-es/_baseDifference.js b/node_modules/lodash-es/_baseDifference.js
deleted file mode 100644
index 9916db7..0000000
--- a/node_modules/lodash-es/_baseDifference.js
+++ /dev/null
@@ -1,67 +0,0 @@
-import SetCache from './_SetCache.js';
-import arrayIncludes from './_arrayIncludes.js';
-import arrayIncludesWith from './_arrayIncludesWith.js';
-import arrayMap from './_arrayMap.js';
-import baseUnary from './_baseUnary.js';
-import cacheHas from './_cacheHas.js';
-
-/** Used as the size to enable large array optimizations. */
-var LARGE_ARRAY_SIZE = 200;
-
-/**
- * The base implementation of methods like `_.difference` without support
- * for excluding multiple arrays or iteratee shorthands.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {Array} values The values to exclude.
- * @param {Function} [iteratee] The iteratee invoked per element.
- * @param {Function} [comparator] The comparator invoked per element.
- * @returns {Array} Returns the new array of filtered values.
- */
-function baseDifference(array, values, iteratee, comparator) {
- var index = -1,
- includes = arrayIncludes,
- isCommon = true,
- length = array.length,
- result = [],
- valuesLength = values.length;
-
- if (!length) {
- return result;
- }
- if (iteratee) {
- values = arrayMap(values, baseUnary(iteratee));
- }
- if (comparator) {
- includes = arrayIncludesWith;
- isCommon = false;
- }
- else if (values.length >= LARGE_ARRAY_SIZE) {
- includes = cacheHas;
- isCommon = false;
- values = new SetCache(values);
- }
- outer:
- while (++index < length) {
- var value = array[index],
- computed = iteratee == null ? value : iteratee(value);
-
- value = (comparator || value !== 0) ? value : 0;
- if (isCommon && computed === computed) {
- var valuesIndex = valuesLength;
- while (valuesIndex--) {
- if (values[valuesIndex] === computed) {
- continue outer;
- }
- }
- result.push(value);
- }
- else if (!includes(values, computed, comparator)) {
- result.push(value);
- }
- }
- return result;
-}
-
-export default baseDifference;
diff --git a/node_modules/lodash-es/_baseEach.js b/node_modules/lodash-es/_baseEach.js
deleted file mode 100644
index 038e936..0000000
--- a/node_modules/lodash-es/_baseEach.js
+++ /dev/null
@@ -1,14 +0,0 @@
-import baseForOwn from './_baseForOwn.js';
-import createBaseEach from './_createBaseEach.js';
-
-/**
- * The base implementation of `_.forEach` without support for iteratee shorthands.
- *
- * @private
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Array|Object} Returns `collection`.
- */
-var baseEach = createBaseEach(baseForOwn);
-
-export default baseEach;
diff --git a/node_modules/lodash-es/_baseEachRight.js b/node_modules/lodash-es/_baseEachRight.js
deleted file mode 100644
index 0e4b053..0000000
--- a/node_modules/lodash-es/_baseEachRight.js
+++ /dev/null
@@ -1,14 +0,0 @@
-import baseForOwnRight from './_baseForOwnRight.js';
-import createBaseEach from './_createBaseEach.js';
-
-/**
- * The base implementation of `_.forEachRight` without support for iteratee shorthands.
- *
- * @private
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Array|Object} Returns `collection`.
- */
-var baseEachRight = createBaseEach(baseForOwnRight, true);
-
-export default baseEachRight;
diff --git a/node_modules/lodash-es/_baseEvery.js b/node_modules/lodash-es/_baseEvery.js
deleted file mode 100644
index 2154b47..0000000
--- a/node_modules/lodash-es/_baseEvery.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import baseEach from './_baseEach.js';
-
-/**
- * The base implementation of `_.every` without support for iteratee shorthands.
- *
- * @private
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} predicate The function invoked per iteration.
- * @returns {boolean} Returns `true` if all elements pass the predicate check,
- * else `false`
- */
-function baseEvery(collection, predicate) {
- var result = true;
- baseEach(collection, function(value, index, collection) {
- result = !!predicate(value, index, collection);
- return result;
- });
- return result;
-}
-
-export default baseEvery;
diff --git a/node_modules/lodash-es/_baseExtremum.js b/node_modules/lodash-es/_baseExtremum.js
deleted file mode 100644
index d154c61..0000000
--- a/node_modules/lodash-es/_baseExtremum.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import isSymbol from './isSymbol.js';
-
-/**
- * The base implementation of methods like `_.max` and `_.min` which accepts a
- * `comparator` to determine the extremum value.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @param {Function} iteratee The iteratee invoked per iteration.
- * @param {Function} comparator The comparator used to compare values.
- * @returns {*} Returns the extremum value.
- */
-function baseExtremum(array, iteratee, comparator) {
- var index = -1,
- length = array.length;
-
- while (++index < length) {
- var value = array[index],
- current = iteratee(value);
-
- if (current != null && (computed === undefined
- ? (current === current && !isSymbol(current))
- : comparator(current, computed)
- )) {
- var computed = current,
- result = value;
- }
- }
- return result;
-}
-
-export default baseExtremum;
diff --git a/node_modules/lodash-es/_baseFill.js b/node_modules/lodash-es/_baseFill.js
deleted file mode 100644
index c7ef26e..0000000
--- a/node_modules/lodash-es/_baseFill.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import toInteger from './toInteger.js';
-import toLength from './toLength.js';
-
-/**
- * The base implementation of `_.fill` without an iteratee call guard.
- *
- * @private
- * @param {Array} array The array to fill.
- * @param {*} value The value to fill `array` with.
- * @param {number} [start=0] The start position.
- * @param {number} [end=array.length] The end position.
- * @returns {Array} Returns `array`.
- */
-function baseFill(array, value, start, end) {
- var length = array.length;
-
- start = toInteger(start);
- if (start < 0) {
- start = -start > length ? 0 : (length + start);
- }
- end = (end === undefined || end > length) ? length : toInteger(end);
- if (end < 0) {
- end += length;
- }
- end = start > end ? 0 : toLength(end);
- while (start < end) {
- array[start++] = value;
- }
- return array;
-}
-
-export default baseFill;
diff --git a/node_modules/lodash-es/_baseFilter.js b/node_modules/lodash-es/_baseFilter.js
deleted file mode 100644
index 4840ed6..0000000
--- a/node_modules/lodash-es/_baseFilter.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import baseEach from './_baseEach.js';
-
-/**
- * The base implementation of `_.filter` without support for iteratee shorthands.
- *
- * @private
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} predicate The function invoked per iteration.
- * @returns {Array} Returns the new filtered array.
- */
-function baseFilter(collection, predicate) {
- var result = [];
- baseEach(collection, function(value, index, collection) {
- if (predicate(value, index, collection)) {
- result.push(value);
- }
- });
- return result;
-}
-
-export default baseFilter;
diff --git a/node_modules/lodash-es/_baseFindIndex.js b/node_modules/lodash-es/_baseFindIndex.js
deleted file mode 100644
index 860636e..0000000
--- a/node_modules/lodash-es/_baseFindIndex.js
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
- * The base implementation of `_.findIndex` and `_.findLastIndex` without
- * support for iteratee shorthands.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {Function} predicate The function invoked per iteration.
- * @param {number} fromIndex The index to search from.
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {number} Returns the index of the matched value, else `-1`.
- */
-function baseFindIndex(array, predicate, fromIndex, fromRight) {
- var length = array.length,
- index = fromIndex + (fromRight ? 1 : -1);
-
- while ((fromRight ? index-- : ++index < length)) {
- if (predicate(array[index], index, array)) {
- return index;
- }
- }
- return -1;
-}
-
-export default baseFindIndex;
diff --git a/node_modules/lodash-es/_baseFindKey.js b/node_modules/lodash-es/_baseFindKey.js
deleted file mode 100644
index 6d1932e..0000000
--- a/node_modules/lodash-es/_baseFindKey.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * The base implementation of methods like `_.findKey` and `_.findLastKey`,
- * without support for iteratee shorthands, which iterates over `collection`
- * using `eachFunc`.
- *
- * @private
- * @param {Array|Object} collection The collection to inspect.
- * @param {Function} predicate The function invoked per iteration.
- * @param {Function} eachFunc The function to iterate over `collection`.
- * @returns {*} Returns the found element or its key, else `undefined`.
- */
-function baseFindKey(collection, predicate, eachFunc) {
- var result;
- eachFunc(collection, function(value, key, collection) {
- if (predicate(value, key, collection)) {
- result = key;
- return false;
- }
- });
- return result;
-}
-
-export default baseFindKey;
diff --git a/node_modules/lodash-es/_baseFlatten.js b/node_modules/lodash-es/_baseFlatten.js
deleted file mode 100644
index b42dee6..0000000
--- a/node_modules/lodash-es/_baseFlatten.js
+++ /dev/null
@@ -1,38 +0,0 @@
-import arrayPush from './_arrayPush.js';
-import isFlattenable from './_isFlattenable.js';
-
-/**
- * The base implementation of `_.flatten` with support for restricting flattening.
- *
- * @private
- * @param {Array} array The array to flatten.
- * @param {number} depth The maximum recursion depth.
- * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.
- * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.
- * @param {Array} [result=[]] The initial result value.
- * @returns {Array} Returns the new flattened array.
- */
-function baseFlatten(array, depth, predicate, isStrict, result) {
- var index = -1,
- length = array.length;
-
- predicate || (predicate = isFlattenable);
- result || (result = []);
-
- while (++index < length) {
- var value = array[index];
- if (depth > 0 && predicate(value)) {
- if (depth > 1) {
- // Recursively flatten arrays (susceptible to call stack limits).
- baseFlatten(value, depth - 1, predicate, isStrict, result);
- } else {
- arrayPush(result, value);
- }
- } else if (!isStrict) {
- result[result.length] = value;
- }
- }
- return result;
-}
-
-export default baseFlatten;
diff --git a/node_modules/lodash-es/_baseFor.js b/node_modules/lodash-es/_baseFor.js
deleted file mode 100644
index debbcf8..0000000
--- a/node_modules/lodash-es/_baseFor.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import createBaseFor from './_createBaseFor.js';
-
-/**
- * The base implementation of `baseForOwn` which iterates over `object`
- * properties returned by `keysFunc` and invokes `iteratee` for each property.
- * Iteratee functions may exit iteration early by explicitly returning `false`.
- *
- * @private
- * @param {Object} object The object to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @param {Function} keysFunc The function to get the keys of `object`.
- * @returns {Object} Returns `object`.
- */
-var baseFor = createBaseFor();
-
-export default baseFor;
diff --git a/node_modules/lodash-es/_baseForOwn.js b/node_modules/lodash-es/_baseForOwn.js
deleted file mode 100644
index 2293e9a..0000000
--- a/node_modules/lodash-es/_baseForOwn.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import baseFor from './_baseFor.js';
-import keys from './keys.js';
-
-/**
- * The base implementation of `_.forOwn` without support for iteratee shorthands.
- *
- * @private
- * @param {Object} object The object to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Object} Returns `object`.
- */
-function baseForOwn(object, iteratee) {
- return object && baseFor(object, iteratee, keys);
-}
-
-export default baseForOwn;
diff --git a/node_modules/lodash-es/_baseForOwnRight.js b/node_modules/lodash-es/_baseForOwnRight.js
deleted file mode 100644
index 06871b4..0000000
--- a/node_modules/lodash-es/_baseForOwnRight.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import baseForRight from './_baseForRight.js';
-import keys from './keys.js';
-
-/**
- * The base implementation of `_.forOwnRight` without support for iteratee shorthands.
- *
- * @private
- * @param {Object} object The object to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Object} Returns `object`.
- */
-function baseForOwnRight(object, iteratee) {
- return object && baseForRight(object, iteratee, keys);
-}
-
-export default baseForOwnRight;
diff --git a/node_modules/lodash-es/_baseForRight.js b/node_modules/lodash-es/_baseForRight.js
deleted file mode 100644
index 85596da..0000000
--- a/node_modules/lodash-es/_baseForRight.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import createBaseFor from './_createBaseFor.js';
-
-/**
- * This function is like `baseFor` except that it iterates over properties
- * in the opposite order.
- *
- * @private
- * @param {Object} object The object to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @param {Function} keysFunc The function to get the keys of `object`.
- * @returns {Object} Returns `object`.
- */
-var baseForRight = createBaseFor(true);
-
-export default baseForRight;
diff --git a/node_modules/lodash-es/_baseFunctions.js b/node_modules/lodash-es/_baseFunctions.js
deleted file mode 100644
index 35a875e..0000000
--- a/node_modules/lodash-es/_baseFunctions.js
+++ /dev/null
@@ -1,19 +0,0 @@
-import arrayFilter from './_arrayFilter.js';
-import isFunction from './isFunction.js';
-
-/**
- * The base implementation of `_.functions` which creates an array of
- * `object` function property names filtered from `props`.
- *
- * @private
- * @param {Object} object The object to inspect.
- * @param {Array} props The property names to filter.
- * @returns {Array} Returns the function names.
- */
-function baseFunctions(object, props) {
- return arrayFilter(props, function(key) {
- return isFunction(object[key]);
- });
-}
-
-export default baseFunctions;
diff --git a/node_modules/lodash-es/_baseGet.js b/node_modules/lodash-es/_baseGet.js
deleted file mode 100644
index 16a2912..0000000
--- a/node_modules/lodash-es/_baseGet.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import castPath from './_castPath.js';
-import toKey from './_toKey.js';
-
-/**
- * The base implementation of `_.get` without support for default values.
- *
- * @private
- * @param {Object} object The object to query.
- * @param {Array|string} path The path of the property to get.
- * @returns {*} Returns the resolved value.
- */
-function baseGet(object, path) {
- path = castPath(path, object);
-
- var index = 0,
- length = path.length;
-
- while (object != null && index < length) {
- object = object[toKey(path[index++])];
- }
- return (index && index == length) ? object : undefined;
-}
-
-export default baseGet;
diff --git a/node_modules/lodash-es/_baseGetAllKeys.js b/node_modules/lodash-es/_baseGetAllKeys.js
deleted file mode 100644
index af5533b..0000000
--- a/node_modules/lodash-es/_baseGetAllKeys.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import arrayPush from './_arrayPush.js';
-import isArray from './isArray.js';
-
-/**
- * The base implementation of `getAllKeys` and `getAllKeysIn` which uses
- * `keysFunc` and `symbolsFunc` to get the enumerable property names and
- * symbols of `object`.
- *
- * @private
- * @param {Object} object The object to query.
- * @param {Function} keysFunc The function to get the keys of `object`.
- * @param {Function} symbolsFunc The function to get the symbols of `object`.
- * @returns {Array} Returns the array of property names and symbols.
- */
-function baseGetAllKeys(object, keysFunc, symbolsFunc) {
- var result = keysFunc(object);
- return isArray(object) ? result : arrayPush(result, symbolsFunc(object));
-}
-
-export default baseGetAllKeys;
diff --git a/node_modules/lodash-es/_baseGetTag.js b/node_modules/lodash-es/_baseGetTag.js
deleted file mode 100644
index 61b440a..0000000
--- a/node_modules/lodash-es/_baseGetTag.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import Symbol from './_Symbol.js';
-import getRawTag from './_getRawTag.js';
-import objectToString from './_objectToString.js';
-
-/** `Object#toString` result references. */
-var nullTag = '[object Null]',
- undefinedTag = '[object Undefined]';
-
-/** Built-in value references. */
-var symToStringTag = Symbol ? Symbol.toStringTag : undefined;
-
-/**
- * The base implementation of `getTag` without fallbacks for buggy environments.
- *
- * @private
- * @param {*} value The value to query.
- * @returns {string} Returns the `toStringTag`.
- */
-function baseGetTag(value) {
- if (value == null) {
- return value === undefined ? undefinedTag : nullTag;
- }
- return (symToStringTag && symToStringTag in Object(value))
- ? getRawTag(value)
- : objectToString(value);
-}
-
-export default baseGetTag;
diff --git a/node_modules/lodash-es/_baseGt.js b/node_modules/lodash-es/_baseGt.js
deleted file mode 100644
index 998cf15..0000000
--- a/node_modules/lodash-es/_baseGt.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * The base implementation of `_.gt` which doesn't coerce arguments.
- *
- * @private
- * @param {*} value The value to compare.
- * @param {*} other The other value to compare.
- * @returns {boolean} Returns `true` if `value` is greater than `other`,
- * else `false`.
- */
-function baseGt(value, other) {
- return value > other;
-}
-
-export default baseGt;
diff --git a/node_modules/lodash-es/_baseHas.js b/node_modules/lodash-es/_baseHas.js
deleted file mode 100644
index edbbe5f..0000000
--- a/node_modules/lodash-es/_baseHas.js
+++ /dev/null
@@ -1,19 +0,0 @@
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * The base implementation of `_.has` without support for deep paths.
- *
- * @private
- * @param {Object} [object] The object to query.
- * @param {Array|string} key The key to check.
- * @returns {boolean} Returns `true` if `key` exists, else `false`.
- */
-function baseHas(object, key) {
- return object != null && hasOwnProperty.call(object, key);
-}
-
-export default baseHas;
diff --git a/node_modules/lodash-es/_baseHasIn.js b/node_modules/lodash-es/_baseHasIn.js
deleted file mode 100644
index ee48bc1..0000000
--- a/node_modules/lodash-es/_baseHasIn.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/**
- * The base implementation of `_.hasIn` without support for deep paths.
- *
- * @private
- * @param {Object} [object] The object to query.
- * @param {Array|string} key The key to check.
- * @returns {boolean} Returns `true` if `key` exists, else `false`.
- */
-function baseHasIn(object, key) {
- return object != null && key in Object(object);
-}
-
-export default baseHasIn;
diff --git a/node_modules/lodash-es/_baseInRange.js b/node_modules/lodash-es/_baseInRange.js
deleted file mode 100644
index 4b249a5..0000000
--- a/node_modules/lodash-es/_baseInRange.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max,
- nativeMin = Math.min;
-
-/**
- * The base implementation of `_.inRange` which doesn't coerce arguments.
- *
- * @private
- * @param {number} number The number to check.
- * @param {number} start The start of the range.
- * @param {number} end The end of the range.
- * @returns {boolean} Returns `true` if `number` is in the range, else `false`.
- */
-function baseInRange(number, start, end) {
- return number >= nativeMin(start, end) && number < nativeMax(start, end);
-}
-
-export default baseInRange;
diff --git a/node_modules/lodash-es/_baseIndexOf.js b/node_modules/lodash-es/_baseIndexOf.js
deleted file mode 100644
index 027e11d..0000000
--- a/node_modules/lodash-es/_baseIndexOf.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import baseFindIndex from './_baseFindIndex.js';
-import baseIsNaN from './_baseIsNaN.js';
-import strictIndexOf from './_strictIndexOf.js';
-
-/**
- * The base implementation of `_.indexOf` without `fromIndex` bounds checks.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {*} value The value to search for.
- * @param {number} fromIndex The index to search from.
- * @returns {number} Returns the index of the matched value, else `-1`.
- */
-function baseIndexOf(array, value, fromIndex) {
- return value === value
- ? strictIndexOf(array, value, fromIndex)
- : baseFindIndex(array, baseIsNaN, fromIndex);
-}
-
-export default baseIndexOf;
diff --git a/node_modules/lodash-es/_baseIndexOfWith.js b/node_modules/lodash-es/_baseIndexOfWith.js
deleted file mode 100644
index 38831b2..0000000
--- a/node_modules/lodash-es/_baseIndexOfWith.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * This function is like `baseIndexOf` except that it accepts a comparator.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {*} value The value to search for.
- * @param {number} fromIndex The index to search from.
- * @param {Function} comparator The comparator invoked per element.
- * @returns {number} Returns the index of the matched value, else `-1`.
- */
-function baseIndexOfWith(array, value, fromIndex, comparator) {
- var index = fromIndex - 1,
- length = array.length;
-
- while (++index < length) {
- if (comparator(array[index], value)) {
- return index;
- }
- }
- return -1;
-}
-
-export default baseIndexOfWith;
diff --git a/node_modules/lodash-es/_baseIntersection.js b/node_modules/lodash-es/_baseIntersection.js
deleted file mode 100644
index dede696..0000000
--- a/node_modules/lodash-es/_baseIntersection.js
+++ /dev/null
@@ -1,74 +0,0 @@
-import SetCache from './_SetCache.js';
-import arrayIncludes from './_arrayIncludes.js';
-import arrayIncludesWith from './_arrayIncludesWith.js';
-import arrayMap from './_arrayMap.js';
-import baseUnary from './_baseUnary.js';
-import cacheHas from './_cacheHas.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min;
-
-/**
- * The base implementation of methods like `_.intersection`, without support
- * for iteratee shorthands, that accepts an array of arrays to inspect.
- *
- * @private
- * @param {Array} arrays The arrays to inspect.
- * @param {Function} [iteratee] The iteratee invoked per element.
- * @param {Function} [comparator] The comparator invoked per element.
- * @returns {Array} Returns the new array of shared values.
- */
-function baseIntersection(arrays, iteratee, comparator) {
- var includes = comparator ? arrayIncludesWith : arrayIncludes,
- length = arrays[0].length,
- othLength = arrays.length,
- othIndex = othLength,
- caches = Array(othLength),
- maxLength = Infinity,
- result = [];
-
- while (othIndex--) {
- var array = arrays[othIndex];
- if (othIndex && iteratee) {
- array = arrayMap(array, baseUnary(iteratee));
- }
- maxLength = nativeMin(array.length, maxLength);
- caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120))
- ? new SetCache(othIndex && array)
- : undefined;
- }
- array = arrays[0];
-
- var index = -1,
- seen = caches[0];
-
- outer:
- while (++index < length && result.length < maxLength) {
- var value = array[index],
- computed = iteratee ? iteratee(value) : value;
-
- value = (comparator || value !== 0) ? value : 0;
- if (!(seen
- ? cacheHas(seen, computed)
- : includes(result, computed, comparator)
- )) {
- othIndex = othLength;
- while (--othIndex) {
- var cache = caches[othIndex];
- if (!(cache
- ? cacheHas(cache, computed)
- : includes(arrays[othIndex], computed, comparator))
- ) {
- continue outer;
- }
- }
- if (seen) {
- seen.push(computed);
- }
- result.push(value);
- }
- }
- return result;
-}
-
-export default baseIntersection;
diff --git a/node_modules/lodash-es/_baseInverter.js b/node_modules/lodash-es/_baseInverter.js
deleted file mode 100644
index 5cb3800..0000000
--- a/node_modules/lodash-es/_baseInverter.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import baseForOwn from './_baseForOwn.js';
-
-/**
- * The base implementation of `_.invert` and `_.invertBy` which inverts
- * `object` with values transformed by `iteratee` and set by `setter`.
- *
- * @private
- * @param {Object} object The object to iterate over.
- * @param {Function} setter The function to set `accumulator` values.
- * @param {Function} iteratee The iteratee to transform values.
- * @param {Object} accumulator The initial inverted object.
- * @returns {Function} Returns `accumulator`.
- */
-function baseInverter(object, setter, iteratee, accumulator) {
- baseForOwn(object, function(value, key, object) {
- setter(accumulator, iteratee(value), key, object);
- });
- return accumulator;
-}
-
-export default baseInverter;
diff --git a/node_modules/lodash-es/_baseInvoke.js b/node_modules/lodash-es/_baseInvoke.js
deleted file mode 100644
index e465d84..0000000
--- a/node_modules/lodash-es/_baseInvoke.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import apply from './_apply.js';
-import castPath from './_castPath.js';
-import last from './last.js';
-import parent from './_parent.js';
-import toKey from './_toKey.js';
-
-/**
- * The base implementation of `_.invoke` without support for individual
- * method arguments.
- *
- * @private
- * @param {Object} object The object to query.
- * @param {Array|string} path The path of the method to invoke.
- * @param {Array} args The arguments to invoke the method with.
- * @returns {*} Returns the result of the invoked method.
- */
-function baseInvoke(object, path, args) {
- path = castPath(path, object);
- object = parent(object, path);
- var func = object == null ? object : object[toKey(last(path))];
- return func == null ? undefined : apply(func, object, args);
-}
-
-export default baseInvoke;
diff --git a/node_modules/lodash-es/_baseIsArguments.js b/node_modules/lodash-es/_baseIsArguments.js
deleted file mode 100644
index cbf4ca6..0000000
--- a/node_modules/lodash-es/_baseIsArguments.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import baseGetTag from './_baseGetTag.js';
-import isObjectLike from './isObjectLike.js';
-
-/** `Object#toString` result references. */
-var argsTag = '[object Arguments]';
-
-/**
- * The base implementation of `_.isArguments`.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is an `arguments` object,
- */
-function baseIsArguments(value) {
- return isObjectLike(value) && baseGetTag(value) == argsTag;
-}
-
-export default baseIsArguments;
diff --git a/node_modules/lodash-es/_baseIsArrayBuffer.js b/node_modules/lodash-es/_baseIsArrayBuffer.js
deleted file mode 100644
index 7a25a8f..0000000
--- a/node_modules/lodash-es/_baseIsArrayBuffer.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import baseGetTag from './_baseGetTag.js';
-import isObjectLike from './isObjectLike.js';
-
-var arrayBufferTag = '[object ArrayBuffer]';
-
-/**
- * The base implementation of `_.isArrayBuffer` without Node.js optimizations.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.
- */
-function baseIsArrayBuffer(value) {
- return isObjectLike(value) && baseGetTag(value) == arrayBufferTag;
-}
-
-export default baseIsArrayBuffer;
diff --git a/node_modules/lodash-es/_baseIsDate.js b/node_modules/lodash-es/_baseIsDate.js
deleted file mode 100644
index 5487cb5..0000000
--- a/node_modules/lodash-es/_baseIsDate.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import baseGetTag from './_baseGetTag.js';
-import isObjectLike from './isObjectLike.js';
-
-/** `Object#toString` result references. */
-var dateTag = '[object Date]';
-
-/**
- * The base implementation of `_.isDate` without Node.js optimizations.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a date object, else `false`.
- */
-function baseIsDate(value) {
- return isObjectLike(value) && baseGetTag(value) == dateTag;
-}
-
-export default baseIsDate;
diff --git a/node_modules/lodash-es/_baseIsEqual.js b/node_modules/lodash-es/_baseIsEqual.js
deleted file mode 100644
index 3b5aba8..0000000
--- a/node_modules/lodash-es/_baseIsEqual.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import baseIsEqualDeep from './_baseIsEqualDeep.js';
-import isObjectLike from './isObjectLike.js';
-
-/**
- * The base implementation of `_.isEqual` which supports partial comparisons
- * and tracks traversed objects.
- *
- * @private
- * @param {*} value The value to compare.
- * @param {*} other The other value to compare.
- * @param {boolean} bitmask The bitmask flags.
- * 1 - Unordered comparison
- * 2 - Partial comparison
- * @param {Function} [customizer] The function to customize comparisons.
- * @param {Object} [stack] Tracks traversed `value` and `other` objects.
- * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
- */
-function baseIsEqual(value, other, bitmask, customizer, stack) {
- if (value === other) {
- return true;
- }
- if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {
- return value !== value && other !== other;
- }
- return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);
-}
-
-export default baseIsEqual;
diff --git a/node_modules/lodash-es/_baseIsEqualDeep.js b/node_modules/lodash-es/_baseIsEqualDeep.js
deleted file mode 100644
index d8c8bf0..0000000
--- a/node_modules/lodash-es/_baseIsEqualDeep.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import Stack from './_Stack.js';
-import equalArrays from './_equalArrays.js';
-import equalByTag from './_equalByTag.js';
-import equalObjects from './_equalObjects.js';
-import getTag from './_getTag.js';
-import isArray from './isArray.js';
-import isBuffer from './isBuffer.js';
-import isTypedArray from './isTypedArray.js';
-
-/** Used to compose bitmasks for value comparisons. */
-var COMPARE_PARTIAL_FLAG = 1;
-
-/** `Object#toString` result references. */
-var argsTag = '[object Arguments]',
- arrayTag = '[object Array]',
- objectTag = '[object Object]';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * A specialized version of `baseIsEqual` for arrays and objects which performs
- * deep comparisons and tracks traversed objects enabling objects with circular
- * references to be compared.
- *
- * @private
- * @param {Object} object The object to compare.
- * @param {Object} other The other object to compare.
- * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
- * @param {Function} customizer The function to customize comparisons.
- * @param {Function} equalFunc The function to determine equivalents of values.
- * @param {Object} [stack] Tracks traversed `object` and `other` objects.
- * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
- */
-function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {
- var objIsArr = isArray(object),
- othIsArr = isArray(other),
- objTag = objIsArr ? arrayTag : getTag(object),
- othTag = othIsArr ? arrayTag : getTag(other);
-
- objTag = objTag == argsTag ? objectTag : objTag;
- othTag = othTag == argsTag ? objectTag : othTag;
-
- var objIsObj = objTag == objectTag,
- othIsObj = othTag == objectTag,
- isSameTag = objTag == othTag;
-
- if (isSameTag && isBuffer(object)) {
- if (!isBuffer(other)) {
- return false;
- }
- objIsArr = true;
- objIsObj = false;
- }
- if (isSameTag && !objIsObj) {
- stack || (stack = new Stack);
- return (objIsArr || isTypedArray(object))
- ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)
- : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);
- }
- if (!(bitmask & COMPARE_PARTIAL_FLAG)) {
- var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
- othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');
-
- if (objIsWrapped || othIsWrapped) {
- var objUnwrapped = objIsWrapped ? object.value() : object,
- othUnwrapped = othIsWrapped ? other.value() : other;
-
- stack || (stack = new Stack);
- return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);
- }
- }
- if (!isSameTag) {
- return false;
- }
- stack || (stack = new Stack);
- return equalObjects(object, other, bitmask, customizer, equalFunc, stack);
-}
-
-export default baseIsEqualDeep;
diff --git a/node_modules/lodash-es/_baseIsMap.js b/node_modules/lodash-es/_baseIsMap.js
deleted file mode 100644
index 6438d2b..0000000
--- a/node_modules/lodash-es/_baseIsMap.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import getTag from './_getTag.js';
-import isObjectLike from './isObjectLike.js';
-
-/** `Object#toString` result references. */
-var mapTag = '[object Map]';
-
-/**
- * The base implementation of `_.isMap` without Node.js optimizations.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a map, else `false`.
- */
-function baseIsMap(value) {
- return isObjectLike(value) && getTag(value) == mapTag;
-}
-
-export default baseIsMap;
diff --git a/node_modules/lodash-es/_baseIsMatch.js b/node_modules/lodash-es/_baseIsMatch.js
deleted file mode 100644
index 926e03f..0000000
--- a/node_modules/lodash-es/_baseIsMatch.js
+++ /dev/null
@@ -1,62 +0,0 @@
-import Stack from './_Stack.js';
-import baseIsEqual from './_baseIsEqual.js';
-
-/** Used to compose bitmasks for value comparisons. */
-var COMPARE_PARTIAL_FLAG = 1,
- COMPARE_UNORDERED_FLAG = 2;
-
-/**
- * The base implementation of `_.isMatch` without support for iteratee shorthands.
- *
- * @private
- * @param {Object} object The object to inspect.
- * @param {Object} source The object of property values to match.
- * @param {Array} matchData The property names, values, and compare flags to match.
- * @param {Function} [customizer] The function to customize comparisons.
- * @returns {boolean} Returns `true` if `object` is a match, else `false`.
- */
-function baseIsMatch(object, source, matchData, customizer) {
- var index = matchData.length,
- length = index,
- noCustomizer = !customizer;
-
- if (object == null) {
- return !length;
- }
- object = Object(object);
- while (index--) {
- var data = matchData[index];
- if ((noCustomizer && data[2])
- ? data[1] !== object[data[0]]
- : !(data[0] in object)
- ) {
- return false;
- }
- }
- while (++index < length) {
- data = matchData[index];
- var key = data[0],
- objValue = object[key],
- srcValue = data[1];
-
- if (noCustomizer && data[2]) {
- if (objValue === undefined && !(key in object)) {
- return false;
- }
- } else {
- var stack = new Stack;
- if (customizer) {
- var result = customizer(objValue, srcValue, key, object, source, stack);
- }
- if (!(result === undefined
- ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)
- : result
- )) {
- return false;
- }
- }
- }
- return true;
-}
-
-export default baseIsMatch;
diff --git a/node_modules/lodash-es/_baseIsNaN.js b/node_modules/lodash-es/_baseIsNaN.js
deleted file mode 100644
index 7a36d0e..0000000
--- a/node_modules/lodash-es/_baseIsNaN.js
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- * The base implementation of `_.isNaN` without support for number objects.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.
- */
-function baseIsNaN(value) {
- return value !== value;
-}
-
-export default baseIsNaN;
diff --git a/node_modules/lodash-es/_baseIsNative.js b/node_modules/lodash-es/_baseIsNative.js
deleted file mode 100644
index 04c1854..0000000
--- a/node_modules/lodash-es/_baseIsNative.js
+++ /dev/null
@@ -1,47 +0,0 @@
-import isFunction from './isFunction.js';
-import isMasked from './_isMasked.js';
-import isObject from './isObject.js';
-import toSource from './_toSource.js';
-
-/**
- * Used to match `RegExp`
- * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
- */
-var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
-
-/** Used to detect host constructors (Safari). */
-var reIsHostCtor = /^\[object .+?Constructor\]$/;
-
-/** Used for built-in method references. */
-var funcProto = Function.prototype,
- objectProto = Object.prototype;
-
-/** Used to resolve the decompiled source of functions. */
-var funcToString = funcProto.toString;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/** Used to detect if a method is native. */
-var reIsNative = RegExp('^' +
- funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\$&')
- .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
-);
-
-/**
- * The base implementation of `_.isNative` without bad shim checks.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a native function,
- * else `false`.
- */
-function baseIsNative(value) {
- if (!isObject(value) || isMasked(value)) {
- return false;
- }
- var pattern = isFunction(value) ? reIsNative : reIsHostCtor;
- return pattern.test(toSource(value));
-}
-
-export default baseIsNative;
diff --git a/node_modules/lodash-es/_baseIsRegExp.js b/node_modules/lodash-es/_baseIsRegExp.js
deleted file mode 100644
index e73971b..0000000
--- a/node_modules/lodash-es/_baseIsRegExp.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import baseGetTag from './_baseGetTag.js';
-import isObjectLike from './isObjectLike.js';
-
-/** `Object#toString` result references. */
-var regexpTag = '[object RegExp]';
-
-/**
- * The base implementation of `_.isRegExp` without Node.js optimizations.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.
- */
-function baseIsRegExp(value) {
- return isObjectLike(value) && baseGetTag(value) == regexpTag;
-}
-
-export default baseIsRegExp;
diff --git a/node_modules/lodash-es/_baseIsSet.js b/node_modules/lodash-es/_baseIsSet.js
deleted file mode 100644
index bee4a8e..0000000
--- a/node_modules/lodash-es/_baseIsSet.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import getTag from './_getTag.js';
-import isObjectLike from './isObjectLike.js';
-
-/** `Object#toString` result references. */
-var setTag = '[object Set]';
-
-/**
- * The base implementation of `_.isSet` without Node.js optimizations.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a set, else `false`.
- */
-function baseIsSet(value) {
- return isObjectLike(value) && getTag(value) == setTag;
-}
-
-export default baseIsSet;
diff --git a/node_modules/lodash-es/_baseIsTypedArray.js b/node_modules/lodash-es/_baseIsTypedArray.js
deleted file mode 100644
index 0a18d1c..0000000
--- a/node_modules/lodash-es/_baseIsTypedArray.js
+++ /dev/null
@@ -1,60 +0,0 @@
-import baseGetTag from './_baseGetTag.js';
-import isLength from './isLength.js';
-import isObjectLike from './isObjectLike.js';
-
-/** `Object#toString` result references. */
-var argsTag = '[object Arguments]',
- arrayTag = '[object Array]',
- boolTag = '[object Boolean]',
- dateTag = '[object Date]',
- errorTag = '[object Error]',
- funcTag = '[object Function]',
- mapTag = '[object Map]',
- numberTag = '[object Number]',
- objectTag = '[object Object]',
- regexpTag = '[object RegExp]',
- setTag = '[object Set]',
- stringTag = '[object String]',
- weakMapTag = '[object WeakMap]';
-
-var arrayBufferTag = '[object ArrayBuffer]',
- dataViewTag = '[object DataView]',
- float32Tag = '[object Float32Array]',
- float64Tag = '[object Float64Array]',
- int8Tag = '[object Int8Array]',
- int16Tag = '[object Int16Array]',
- int32Tag = '[object Int32Array]',
- uint8Tag = '[object Uint8Array]',
- uint8ClampedTag = '[object Uint8ClampedArray]',
- uint16Tag = '[object Uint16Array]',
- uint32Tag = '[object Uint32Array]';
-
-/** Used to identify `toStringTag` values of typed arrays. */
-var typedArrayTags = {};
-typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
-typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
-typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
-typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
-typedArrayTags[uint32Tag] = true;
-typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
-typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
-typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =
-typedArrayTags[errorTag] = typedArrayTags[funcTag] =
-typedArrayTags[mapTag] = typedArrayTags[numberTag] =
-typedArrayTags[objectTag] = typedArrayTags[regexpTag] =
-typedArrayTags[setTag] = typedArrayTags[stringTag] =
-typedArrayTags[weakMapTag] = false;
-
-/**
- * The base implementation of `_.isTypedArray` without Node.js optimizations.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
- */
-function baseIsTypedArray(value) {
- return isObjectLike(value) &&
- isLength(value.length) && !!typedArrayTags[baseGetTag(value)];
-}
-
-export default baseIsTypedArray;
diff --git a/node_modules/lodash-es/_baseIteratee.js b/node_modules/lodash-es/_baseIteratee.js
deleted file mode 100644
index af05200..0000000
--- a/node_modules/lodash-es/_baseIteratee.js
+++ /dev/null
@@ -1,31 +0,0 @@
-import baseMatches from './_baseMatches.js';
-import baseMatchesProperty from './_baseMatchesProperty.js';
-import identity from './identity.js';
-import isArray from './isArray.js';
-import property from './property.js';
-
-/**
- * The base implementation of `_.iteratee`.
- *
- * @private
- * @param {*} [value=_.identity] The value to convert to an iteratee.
- * @returns {Function} Returns the iteratee.
- */
-function baseIteratee(value) {
- // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.
- // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.
- if (typeof value == 'function') {
- return value;
- }
- if (value == null) {
- return identity;
- }
- if (typeof value == 'object') {
- return isArray(value)
- ? baseMatchesProperty(value[0], value[1])
- : baseMatches(value);
- }
- return property(value);
-}
-
-export default baseIteratee;
diff --git a/node_modules/lodash-es/_baseKeys.js b/node_modules/lodash-es/_baseKeys.js
deleted file mode 100644
index 5a76224..0000000
--- a/node_modules/lodash-es/_baseKeys.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import isPrototype from './_isPrototype.js';
-import nativeKeys from './_nativeKeys.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.
- *
- * @private
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of property names.
- */
-function baseKeys(object) {
- if (!isPrototype(object)) {
- return nativeKeys(object);
- }
- var result = [];
- for (var key in Object(object)) {
- if (hasOwnProperty.call(object, key) && key != 'constructor') {
- result.push(key);
- }
- }
- return result;
-}
-
-export default baseKeys;
diff --git a/node_modules/lodash-es/_baseKeysIn.js b/node_modules/lodash-es/_baseKeysIn.js
deleted file mode 100644
index 84c1395..0000000
--- a/node_modules/lodash-es/_baseKeysIn.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import isObject from './isObject.js';
-import isPrototype from './_isPrototype.js';
-import nativeKeysIn from './_nativeKeysIn.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.
- *
- * @private
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of property names.
- */
-function baseKeysIn(object) {
- if (!isObject(object)) {
- return nativeKeysIn(object);
- }
- var isProto = isPrototype(object),
- result = [];
-
- for (var key in object) {
- if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {
- result.push(key);
- }
- }
- return result;
-}
-
-export default baseKeysIn;
diff --git a/node_modules/lodash-es/_baseLodash.js b/node_modules/lodash-es/_baseLodash.js
deleted file mode 100644
index 10aed08..0000000
--- a/node_modules/lodash-es/_baseLodash.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/**
- * The function whose prototype chain sequence wrappers inherit from.
- *
- * @private
- */
-function baseLodash() {
- // No operation performed.
-}
-
-export default baseLodash;
diff --git a/node_modules/lodash-es/_baseLt.js b/node_modules/lodash-es/_baseLt.js
deleted file mode 100644
index e70ad2d..0000000
--- a/node_modules/lodash-es/_baseLt.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * The base implementation of `_.lt` which doesn't coerce arguments.
- *
- * @private
- * @param {*} value The value to compare.
- * @param {*} other The other value to compare.
- * @returns {boolean} Returns `true` if `value` is less than `other`,
- * else `false`.
- */
-function baseLt(value, other) {
- return value < other;
-}
-
-export default baseLt;
diff --git a/node_modules/lodash-es/_baseMap.js b/node_modules/lodash-es/_baseMap.js
deleted file mode 100644
index c607c01..0000000
--- a/node_modules/lodash-es/_baseMap.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import baseEach from './_baseEach.js';
-import isArrayLike from './isArrayLike.js';
-
-/**
- * The base implementation of `_.map` without support for iteratee shorthands.
- *
- * @private
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Array} Returns the new mapped array.
- */
-function baseMap(collection, iteratee) {
- var index = -1,
- result = isArrayLike(collection) ? Array(collection.length) : [];
-
- baseEach(collection, function(value, key, collection) {
- result[++index] = iteratee(value, key, collection);
- });
- return result;
-}
-
-export default baseMap;
diff --git a/node_modules/lodash-es/_baseMatches.js b/node_modules/lodash-es/_baseMatches.js
deleted file mode 100644
index 74e9971..0000000
--- a/node_modules/lodash-es/_baseMatches.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import baseIsMatch from './_baseIsMatch.js';
-import getMatchData from './_getMatchData.js';
-import matchesStrictComparable from './_matchesStrictComparable.js';
-
-/**
- * The base implementation of `_.matches` which doesn't clone `source`.
- *
- * @private
- * @param {Object} source The object of property values to match.
- * @returns {Function} Returns the new spec function.
- */
-function baseMatches(source) {
- var matchData = getMatchData(source);
- if (matchData.length == 1 && matchData[0][2]) {
- return matchesStrictComparable(matchData[0][0], matchData[0][1]);
- }
- return function(object) {
- return object === source || baseIsMatch(object, source, matchData);
- };
-}
-
-export default baseMatches;
diff --git a/node_modules/lodash-es/_baseMatchesProperty.js b/node_modules/lodash-es/_baseMatchesProperty.js
deleted file mode 100644
index f92d680..0000000
--- a/node_modules/lodash-es/_baseMatchesProperty.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import baseIsEqual from './_baseIsEqual.js';
-import get from './get.js';
-import hasIn from './hasIn.js';
-import isKey from './_isKey.js';
-import isStrictComparable from './_isStrictComparable.js';
-import matchesStrictComparable from './_matchesStrictComparable.js';
-import toKey from './_toKey.js';
-
-/** Used to compose bitmasks for value comparisons. */
-var COMPARE_PARTIAL_FLAG = 1,
- COMPARE_UNORDERED_FLAG = 2;
-
-/**
- * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.
- *
- * @private
- * @param {string} path The path of the property to get.
- * @param {*} srcValue The value to match.
- * @returns {Function} Returns the new spec function.
- */
-function baseMatchesProperty(path, srcValue) {
- if (isKey(path) && isStrictComparable(srcValue)) {
- return matchesStrictComparable(toKey(path), srcValue);
- }
- return function(object) {
- var objValue = get(object, path);
- return (objValue === undefined && objValue === srcValue)
- ? hasIn(object, path)
- : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);
- };
-}
-
-export default baseMatchesProperty;
diff --git a/node_modules/lodash-es/_baseMean.js b/node_modules/lodash-es/_baseMean.js
deleted file mode 100644
index f2f1c57..0000000
--- a/node_modules/lodash-es/_baseMean.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import baseSum from './_baseSum.js';
-
-/** Used as references for various `Number` constants. */
-var NAN = 0 / 0;
-
-/**
- * The base implementation of `_.mean` and `_.meanBy` without support for
- * iteratee shorthands.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {number} Returns the mean.
- */
-function baseMean(array, iteratee) {
- var length = array == null ? 0 : array.length;
- return length ? (baseSum(array, iteratee) / length) : NAN;
-}
-
-export default baseMean;
diff --git a/node_modules/lodash-es/_baseMerge.js b/node_modules/lodash-es/_baseMerge.js
deleted file mode 100644
index 1511498..0000000
--- a/node_modules/lodash-es/_baseMerge.js
+++ /dev/null
@@ -1,42 +0,0 @@
-import Stack from './_Stack.js';
-import assignMergeValue from './_assignMergeValue.js';
-import baseFor from './_baseFor.js';
-import baseMergeDeep from './_baseMergeDeep.js';
-import isObject from './isObject.js';
-import keysIn from './keysIn.js';
-import safeGet from './_safeGet.js';
-
-/**
- * The base implementation of `_.merge` without support for multiple sources.
- *
- * @private
- * @param {Object} object The destination object.
- * @param {Object} source The source object.
- * @param {number} srcIndex The index of `source`.
- * @param {Function} [customizer] The function to customize merged values.
- * @param {Object} [stack] Tracks traversed source values and their merged
- * counterparts.
- */
-function baseMerge(object, source, srcIndex, customizer, stack) {
- if (object === source) {
- return;
- }
- baseFor(source, function(srcValue, key) {
- if (isObject(srcValue)) {
- stack || (stack = new Stack);
- baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);
- }
- else {
- var newValue = customizer
- ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)
- : undefined;
-
- if (newValue === undefined) {
- newValue = srcValue;
- }
- assignMergeValue(object, key, newValue);
- }
- }, keysIn);
-}
-
-export default baseMerge;
diff --git a/node_modules/lodash-es/_baseMergeDeep.js b/node_modules/lodash-es/_baseMergeDeep.js
deleted file mode 100644
index 756d633..0000000
--- a/node_modules/lodash-es/_baseMergeDeep.js
+++ /dev/null
@@ -1,94 +0,0 @@
-import assignMergeValue from './_assignMergeValue.js';
-import cloneBuffer from './_cloneBuffer.js';
-import cloneTypedArray from './_cloneTypedArray.js';
-import copyArray from './_copyArray.js';
-import initCloneObject from './_initCloneObject.js';
-import isArguments from './isArguments.js';
-import isArray from './isArray.js';
-import isArrayLikeObject from './isArrayLikeObject.js';
-import isBuffer from './isBuffer.js';
-import isFunction from './isFunction.js';
-import isObject from './isObject.js';
-import isPlainObject from './isPlainObject.js';
-import isTypedArray from './isTypedArray.js';
-import safeGet from './_safeGet.js';
-import toPlainObject from './toPlainObject.js';
-
-/**
- * A specialized version of `baseMerge` for arrays and objects which performs
- * deep merges and tracks traversed objects enabling objects with circular
- * references to be merged.
- *
- * @private
- * @param {Object} object The destination object.
- * @param {Object} source The source object.
- * @param {string} key The key of the value to merge.
- * @param {number} srcIndex The index of `source`.
- * @param {Function} mergeFunc The function to merge values.
- * @param {Function} [customizer] The function to customize assigned values.
- * @param {Object} [stack] Tracks traversed source values and their merged
- * counterparts.
- */
-function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {
- var objValue = safeGet(object, key),
- srcValue = safeGet(source, key),
- stacked = stack.get(srcValue);
-
- if (stacked) {
- assignMergeValue(object, key, stacked);
- return;
- }
- var newValue = customizer
- ? customizer(objValue, srcValue, (key + ''), object, source, stack)
- : undefined;
-
- var isCommon = newValue === undefined;
-
- if (isCommon) {
- var isArr = isArray(srcValue),
- isBuff = !isArr && isBuffer(srcValue),
- isTyped = !isArr && !isBuff && isTypedArray(srcValue);
-
- newValue = srcValue;
- if (isArr || isBuff || isTyped) {
- if (isArray(objValue)) {
- newValue = objValue;
- }
- else if (isArrayLikeObject(objValue)) {
- newValue = copyArray(objValue);
- }
- else if (isBuff) {
- isCommon = false;
- newValue = cloneBuffer(srcValue, true);
- }
- else if (isTyped) {
- isCommon = false;
- newValue = cloneTypedArray(srcValue, true);
- }
- else {
- newValue = [];
- }
- }
- else if (isPlainObject(srcValue) || isArguments(srcValue)) {
- newValue = objValue;
- if (isArguments(objValue)) {
- newValue = toPlainObject(objValue);
- }
- else if (!isObject(objValue) || isFunction(objValue)) {
- newValue = initCloneObject(srcValue);
- }
- }
- else {
- isCommon = false;
- }
- }
- if (isCommon) {
- // Recursively merge objects and arrays (susceptible to call stack limits).
- stack.set(srcValue, newValue);
- mergeFunc(newValue, srcValue, srcIndex, customizer, stack);
- stack['delete'](srcValue);
- }
- assignMergeValue(object, key, newValue);
-}
-
-export default baseMergeDeep;
diff --git a/node_modules/lodash-es/_baseNth.js b/node_modules/lodash-es/_baseNth.js
deleted file mode 100644
index 0a6e999..0000000
--- a/node_modules/lodash-es/_baseNth.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import isIndex from './_isIndex.js';
-
-/**
- * The base implementation of `_.nth` which doesn't coerce arguments.
- *
- * @private
- * @param {Array} array The array to query.
- * @param {number} n The index of the element to return.
- * @returns {*} Returns the nth element of `array`.
- */
-function baseNth(array, n) {
- var length = array.length;
- if (!length) {
- return;
- }
- n += n < 0 ? length : 0;
- return isIndex(n, length) ? array[n] : undefined;
-}
-
-export default baseNth;
diff --git a/node_modules/lodash-es/_baseOrderBy.js b/node_modules/lodash-es/_baseOrderBy.js
deleted file mode 100644
index b9d00aa..0000000
--- a/node_modules/lodash-es/_baseOrderBy.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import arrayMap from './_arrayMap.js';
-import baseIteratee from './_baseIteratee.js';
-import baseMap from './_baseMap.js';
-import baseSortBy from './_baseSortBy.js';
-import baseUnary from './_baseUnary.js';
-import compareMultiple from './_compareMultiple.js';
-import identity from './identity.js';
-
-/**
- * The base implementation of `_.orderBy` without param guards.
- *
- * @private
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.
- * @param {string[]} orders The sort orders of `iteratees`.
- * @returns {Array} Returns the new sorted array.
- */
-function baseOrderBy(collection, iteratees, orders) {
- var index = -1;
- iteratees = arrayMap(iteratees.length ? iteratees : [identity], baseUnary(baseIteratee));
-
- var result = baseMap(collection, function(value, key, collection) {
- var criteria = arrayMap(iteratees, function(iteratee) {
- return iteratee(value);
- });
- return { 'criteria': criteria, 'index': ++index, 'value': value };
- });
-
- return baseSortBy(result, function(object, other) {
- return compareMultiple(object, other, orders);
- });
-}
-
-export default baseOrderBy;
diff --git a/node_modules/lodash-es/_basePick.js b/node_modules/lodash-es/_basePick.js
deleted file mode 100644
index bf80ff0..0000000
--- a/node_modules/lodash-es/_basePick.js
+++ /dev/null
@@ -1,19 +0,0 @@
-import basePickBy from './_basePickBy.js';
-import hasIn from './hasIn.js';
-
-/**
- * The base implementation of `_.pick` without support for individual
- * property identifiers.
- *
- * @private
- * @param {Object} object The source object.
- * @param {string[]} paths The property paths to pick.
- * @returns {Object} Returns the new object.
- */
-function basePick(object, paths) {
- return basePickBy(object, paths, function(value, path) {
- return hasIn(object, path);
- });
-}
-
-export default basePick;
diff --git a/node_modules/lodash-es/_basePickBy.js b/node_modules/lodash-es/_basePickBy.js
deleted file mode 100644
index f2610c5..0000000
--- a/node_modules/lodash-es/_basePickBy.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import baseGet from './_baseGet.js';
-import baseSet from './_baseSet.js';
-import castPath from './_castPath.js';
-
-/**
- * The base implementation of `_.pickBy` without support for iteratee shorthands.
- *
- * @private
- * @param {Object} object The source object.
- * @param {string[]} paths The property paths to pick.
- * @param {Function} predicate The function invoked per property.
- * @returns {Object} Returns the new object.
- */
-function basePickBy(object, paths, predicate) {
- var index = -1,
- length = paths.length,
- result = {};
-
- while (++index < length) {
- var path = paths[index],
- value = baseGet(object, path);
-
- if (predicate(value, path)) {
- baseSet(result, castPath(path, object), value);
- }
- }
- return result;
-}
-
-export default basePickBy;
diff --git a/node_modules/lodash-es/_baseProperty.js b/node_modules/lodash-es/_baseProperty.js
deleted file mode 100644
index 90f0329..0000000
--- a/node_modules/lodash-es/_baseProperty.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * The base implementation of `_.property` without support for deep paths.
- *
- * @private
- * @param {string} key The key of the property to get.
- * @returns {Function} Returns the new accessor function.
- */
-function baseProperty(key) {
- return function(object) {
- return object == null ? undefined : object[key];
- };
-}
-
-export default baseProperty;
diff --git a/node_modules/lodash-es/_basePropertyDeep.js b/node_modules/lodash-es/_basePropertyDeep.js
deleted file mode 100644
index 2f779ab..0000000
--- a/node_modules/lodash-es/_basePropertyDeep.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import baseGet from './_baseGet.js';
-
-/**
- * A specialized version of `baseProperty` which supports deep paths.
- *
- * @private
- * @param {Array|string} path The path of the property to get.
- * @returns {Function} Returns the new accessor function.
- */
-function basePropertyDeep(path) {
- return function(object) {
- return baseGet(object, path);
- };
-}
-
-export default basePropertyDeep;
diff --git a/node_modules/lodash-es/_basePropertyOf.js b/node_modules/lodash-es/_basePropertyOf.js
deleted file mode 100644
index e0ec2b8..0000000
--- a/node_modules/lodash-es/_basePropertyOf.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * The base implementation of `_.propertyOf` without support for deep paths.
- *
- * @private
- * @param {Object} object The object to query.
- * @returns {Function} Returns the new accessor function.
- */
-function basePropertyOf(object) {
- return function(key) {
- return object == null ? undefined : object[key];
- };
-}
-
-export default basePropertyOf;
diff --git a/node_modules/lodash-es/_basePullAll.js b/node_modules/lodash-es/_basePullAll.js
deleted file mode 100644
index e69c100..0000000
--- a/node_modules/lodash-es/_basePullAll.js
+++ /dev/null
@@ -1,51 +0,0 @@
-import arrayMap from './_arrayMap.js';
-import baseIndexOf from './_baseIndexOf.js';
-import baseIndexOfWith from './_baseIndexOfWith.js';
-import baseUnary from './_baseUnary.js';
-import copyArray from './_copyArray.js';
-
-/** Used for built-in method references. */
-var arrayProto = Array.prototype;
-
-/** Built-in value references. */
-var splice = arrayProto.splice;
-
-/**
- * The base implementation of `_.pullAllBy` without support for iteratee
- * shorthands.
- *
- * @private
- * @param {Array} array The array to modify.
- * @param {Array} values The values to remove.
- * @param {Function} [iteratee] The iteratee invoked per element.
- * @param {Function} [comparator] The comparator invoked per element.
- * @returns {Array} Returns `array`.
- */
-function basePullAll(array, values, iteratee, comparator) {
- var indexOf = comparator ? baseIndexOfWith : baseIndexOf,
- index = -1,
- length = values.length,
- seen = array;
-
- if (array === values) {
- values = copyArray(values);
- }
- if (iteratee) {
- seen = arrayMap(array, baseUnary(iteratee));
- }
- while (++index < length) {
- var fromIndex = 0,
- value = values[index],
- computed = iteratee ? iteratee(value) : value;
-
- while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) {
- if (seen !== array) {
- splice.call(seen, fromIndex, 1);
- }
- splice.call(array, fromIndex, 1);
- }
- }
- return array;
-}
-
-export default basePullAll;
diff --git a/node_modules/lodash-es/_basePullAt.js b/node_modules/lodash-es/_basePullAt.js
deleted file mode 100644
index 9305613..0000000
--- a/node_modules/lodash-es/_basePullAt.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import baseUnset from './_baseUnset.js';
-import isIndex from './_isIndex.js';
-
-/** Used for built-in method references. */
-var arrayProto = Array.prototype;
-
-/** Built-in value references. */
-var splice = arrayProto.splice;
-
-/**
- * The base implementation of `_.pullAt` without support for individual
- * indexes or capturing the removed elements.
- *
- * @private
- * @param {Array} array The array to modify.
- * @param {number[]} indexes The indexes of elements to remove.
- * @returns {Array} Returns `array`.
- */
-function basePullAt(array, indexes) {
- var length = array ? indexes.length : 0,
- lastIndex = length - 1;
-
- while (length--) {
- var index = indexes[length];
- if (length == lastIndex || index !== previous) {
- var previous = index;
- if (isIndex(index)) {
- splice.call(array, index, 1);
- } else {
- baseUnset(array, index);
- }
- }
- }
- return array;
-}
-
-export default basePullAt;
diff --git a/node_modules/lodash-es/_baseRandom.js b/node_modules/lodash-es/_baseRandom.js
deleted file mode 100644
index 0e6cf03..0000000
--- a/node_modules/lodash-es/_baseRandom.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeFloor = Math.floor,
- nativeRandom = Math.random;
-
-/**
- * The base implementation of `_.random` without support for returning
- * floating-point numbers.
- *
- * @private
- * @param {number} lower The lower bound.
- * @param {number} upper The upper bound.
- * @returns {number} Returns the random number.
- */
-function baseRandom(lower, upper) {
- return lower + nativeFloor(nativeRandom() * (upper - lower + 1));
-}
-
-export default baseRandom;
diff --git a/node_modules/lodash-es/_baseRange.js b/node_modules/lodash-es/_baseRange.js
deleted file mode 100644
index 12e48b0..0000000
--- a/node_modules/lodash-es/_baseRange.js
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeCeil = Math.ceil,
- nativeMax = Math.max;
-
-/**
- * The base implementation of `_.range` and `_.rangeRight` which doesn't
- * coerce arguments.
- *
- * @private
- * @param {number} start The start of the range.
- * @param {number} end The end of the range.
- * @param {number} step The value to increment or decrement by.
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {Array} Returns the range of numbers.
- */
-function baseRange(start, end, step, fromRight) {
- var index = -1,
- length = nativeMax(nativeCeil((end - start) / (step || 1)), 0),
- result = Array(length);
-
- while (length--) {
- result[fromRight ? length : ++index] = start;
- start += step;
- }
- return result;
-}
-
-export default baseRange;
diff --git a/node_modules/lodash-es/_baseReduce.js b/node_modules/lodash-es/_baseReduce.js
deleted file mode 100644
index 069fed5..0000000
--- a/node_modules/lodash-es/_baseReduce.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * The base implementation of `_.reduce` and `_.reduceRight`, without support
- * for iteratee shorthands, which iterates over `collection` using `eachFunc`.
- *
- * @private
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @param {*} accumulator The initial value.
- * @param {boolean} initAccum Specify using the first or last element of
- * `collection` as the initial value.
- * @param {Function} eachFunc The function to iterate over `collection`.
- * @returns {*} Returns the accumulated value.
- */
-function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) {
- eachFunc(collection, function(value, index, collection) {
- accumulator = initAccum
- ? (initAccum = false, value)
- : iteratee(accumulator, value, index, collection);
- });
- return accumulator;
-}
-
-export default baseReduce;
diff --git a/node_modules/lodash-es/_baseRepeat.js b/node_modules/lodash-es/_baseRepeat.js
deleted file mode 100644
index 594539a..0000000
--- a/node_modules/lodash-es/_baseRepeat.js
+++ /dev/null
@@ -1,35 +0,0 @@
-/** Used as references for various `Number` constants. */
-var MAX_SAFE_INTEGER = 9007199254740991;
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeFloor = Math.floor;
-
-/**
- * The base implementation of `_.repeat` which doesn't coerce arguments.
- *
- * @private
- * @param {string} string The string to repeat.
- * @param {number} n The number of times to repeat the string.
- * @returns {string} Returns the repeated string.
- */
-function baseRepeat(string, n) {
- var result = '';
- if (!string || n < 1 || n > MAX_SAFE_INTEGER) {
- return result;
- }
- // Leverage the exponentiation by squaring algorithm for a faster repeat.
- // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.
- do {
- if (n % 2) {
- result += string;
- }
- n = nativeFloor(n / 2);
- if (n) {
- string += string;
- }
- } while (n);
-
- return result;
-}
-
-export default baseRepeat;
diff --git a/node_modules/lodash-es/_baseRest.js b/node_modules/lodash-es/_baseRest.js
deleted file mode 100644
index a315371..0000000
--- a/node_modules/lodash-es/_baseRest.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import identity from './identity.js';
-import overRest from './_overRest.js';
-import setToString from './_setToString.js';
-
-/**
- * The base implementation of `_.rest` which doesn't validate or coerce arguments.
- *
- * @private
- * @param {Function} func The function to apply a rest parameter to.
- * @param {number} [start=func.length-1] The start position of the rest parameter.
- * @returns {Function} Returns the new function.
- */
-function baseRest(func, start) {
- return setToString(overRest(func, start, identity), func + '');
-}
-
-export default baseRest;
diff --git a/node_modules/lodash-es/_baseSample.js b/node_modules/lodash-es/_baseSample.js
deleted file mode 100644
index 7b96c06..0000000
--- a/node_modules/lodash-es/_baseSample.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import arraySample from './_arraySample.js';
-import values from './values.js';
-
-/**
- * The base implementation of `_.sample`.
- *
- * @private
- * @param {Array|Object} collection The collection to sample.
- * @returns {*} Returns the random element.
- */
-function baseSample(collection) {
- return arraySample(values(collection));
-}
-
-export default baseSample;
diff --git a/node_modules/lodash-es/_baseSampleSize.js b/node_modules/lodash-es/_baseSampleSize.js
deleted file mode 100644
index 04877a1..0000000
--- a/node_modules/lodash-es/_baseSampleSize.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import baseClamp from './_baseClamp.js';
-import shuffleSelf from './_shuffleSelf.js';
-import values from './values.js';
-
-/**
- * The base implementation of `_.sampleSize` without param guards.
- *
- * @private
- * @param {Array|Object} collection The collection to sample.
- * @param {number} n The number of elements to sample.
- * @returns {Array} Returns the random elements.
- */
-function baseSampleSize(collection, n) {
- var array = values(collection);
- return shuffleSelf(array, baseClamp(n, 0, array.length));
-}
-
-export default baseSampleSize;
diff --git a/node_modules/lodash-es/_baseSet.js b/node_modules/lodash-es/_baseSet.js
deleted file mode 100644
index 6cdc792..0000000
--- a/node_modules/lodash-es/_baseSet.js
+++ /dev/null
@@ -1,47 +0,0 @@
-import assignValue from './_assignValue.js';
-import castPath from './_castPath.js';
-import isIndex from './_isIndex.js';
-import isObject from './isObject.js';
-import toKey from './_toKey.js';
-
-/**
- * The base implementation of `_.set`.
- *
- * @private
- * @param {Object} object The object to modify.
- * @param {Array|string} path The path of the property to set.
- * @param {*} value The value to set.
- * @param {Function} [customizer] The function to customize path creation.
- * @returns {Object} Returns `object`.
- */
-function baseSet(object, path, value, customizer) {
- if (!isObject(object)) {
- return object;
- }
- path = castPath(path, object);
-
- var index = -1,
- length = path.length,
- lastIndex = length - 1,
- nested = object;
-
- while (nested != null && ++index < length) {
- var key = toKey(path[index]),
- newValue = value;
-
- if (index != lastIndex) {
- var objValue = nested[key];
- newValue = customizer ? customizer(objValue, key, nested) : undefined;
- if (newValue === undefined) {
- newValue = isObject(objValue)
- ? objValue
- : (isIndex(path[index + 1]) ? [] : {});
- }
- }
- assignValue(nested, key, newValue);
- nested = nested[key];
- }
- return object;
-}
-
-export default baseSet;
diff --git a/node_modules/lodash-es/_baseSetData.js b/node_modules/lodash-es/_baseSetData.js
deleted file mode 100644
index 8d57b0b..0000000
--- a/node_modules/lodash-es/_baseSetData.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import identity from './identity.js';
-import metaMap from './_metaMap.js';
-
-/**
- * The base implementation of `setData` without support for hot loop shorting.
- *
- * @private
- * @param {Function} func The function to associate metadata with.
- * @param {*} data The metadata.
- * @returns {Function} Returns `func`.
- */
-var baseSetData = !metaMap ? identity : function(func, data) {
- metaMap.set(func, data);
- return func;
-};
-
-export default baseSetData;
diff --git a/node_modules/lodash-es/_baseSetToString.js b/node_modules/lodash-es/_baseSetToString.js
deleted file mode 100644
index e712c11..0000000
--- a/node_modules/lodash-es/_baseSetToString.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import constant from './constant.js';
-import defineProperty from './_defineProperty.js';
-import identity from './identity.js';
-
-/**
- * The base implementation of `setToString` without support for hot loop shorting.
- *
- * @private
- * @param {Function} func The function to modify.
- * @param {Function} string The `toString` result.
- * @returns {Function} Returns `func`.
- */
-var baseSetToString = !defineProperty ? identity : function(func, string) {
- return defineProperty(func, 'toString', {
- 'configurable': true,
- 'enumerable': false,
- 'value': constant(string),
- 'writable': true
- });
-};
-
-export default baseSetToString;
diff --git a/node_modules/lodash-es/_baseShuffle.js b/node_modules/lodash-es/_baseShuffle.js
deleted file mode 100644
index f5617bb..0000000
--- a/node_modules/lodash-es/_baseShuffle.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import shuffleSelf from './_shuffleSelf.js';
-import values from './values.js';
-
-/**
- * The base implementation of `_.shuffle`.
- *
- * @private
- * @param {Array|Object} collection The collection to shuffle.
- * @returns {Array} Returns the new shuffled array.
- */
-function baseShuffle(collection) {
- return shuffleSelf(values(collection));
-}
-
-export default baseShuffle;
diff --git a/node_modules/lodash-es/_baseSlice.js b/node_modules/lodash-es/_baseSlice.js
deleted file mode 100644
index bd9c69b..0000000
--- a/node_modules/lodash-es/_baseSlice.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * The base implementation of `_.slice` without an iteratee call guard.
- *
- * @private
- * @param {Array} array The array to slice.
- * @param {number} [start=0] The start position.
- * @param {number} [end=array.length] The end position.
- * @returns {Array} Returns the slice of `array`.
- */
-function baseSlice(array, start, end) {
- var index = -1,
- length = array.length;
-
- if (start < 0) {
- start = -start > length ? 0 : (length + start);
- }
- end = end > length ? length : end;
- if (end < 0) {
- end += length;
- }
- length = start > end ? 0 : ((end - start) >>> 0);
- start >>>= 0;
-
- var result = Array(length);
- while (++index < length) {
- result[index] = array[index + start];
- }
- return result;
-}
-
-export default baseSlice;
diff --git a/node_modules/lodash-es/_baseSome.js b/node_modules/lodash-es/_baseSome.js
deleted file mode 100644
index f2647c2..0000000
--- a/node_modules/lodash-es/_baseSome.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import baseEach from './_baseEach.js';
-
-/**
- * The base implementation of `_.some` without support for iteratee shorthands.
- *
- * @private
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} predicate The function invoked per iteration.
- * @returns {boolean} Returns `true` if any element passes the predicate check,
- * else `false`.
- */
-function baseSome(collection, predicate) {
- var result;
-
- baseEach(collection, function(value, index, collection) {
- result = predicate(value, index, collection);
- return !result;
- });
- return !!result;
-}
-
-export default baseSome;
diff --git a/node_modules/lodash-es/_baseSortBy.js b/node_modules/lodash-es/_baseSortBy.js
deleted file mode 100644
index e2041cd..0000000
--- a/node_modules/lodash-es/_baseSortBy.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * The base implementation of `_.sortBy` which uses `comparer` to define the
- * sort order of `array` and replaces criteria objects with their corresponding
- * values.
- *
- * @private
- * @param {Array} array The array to sort.
- * @param {Function} comparer The function to define sort order.
- * @returns {Array} Returns `array`.
- */
-function baseSortBy(array, comparer) {
- var length = array.length;
-
- array.sort(comparer);
- while (length--) {
- array[length] = array[length].value;
- }
- return array;
-}
-
-export default baseSortBy;
diff --git a/node_modules/lodash-es/_baseSortedIndex.js b/node_modules/lodash-es/_baseSortedIndex.js
deleted file mode 100644
index c192505..0000000
--- a/node_modules/lodash-es/_baseSortedIndex.js
+++ /dev/null
@@ -1,42 +0,0 @@
-import baseSortedIndexBy from './_baseSortedIndexBy.js';
-import identity from './identity.js';
-import isSymbol from './isSymbol.js';
-
-/** Used as references for the maximum length and index of an array. */
-var MAX_ARRAY_LENGTH = 4294967295,
- HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;
-
-/**
- * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which
- * performs a binary search of `array` to determine the index at which `value`
- * should be inserted into `array` in order to maintain its sort order.
- *
- * @private
- * @param {Array} array The sorted array to inspect.
- * @param {*} value The value to evaluate.
- * @param {boolean} [retHighest] Specify returning the highest qualified index.
- * @returns {number} Returns the index at which `value` should be inserted
- * into `array`.
- */
-function baseSortedIndex(array, value, retHighest) {
- var low = 0,
- high = array == null ? low : array.length;
-
- if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) {
- while (low < high) {
- var mid = (low + high) >>> 1,
- computed = array[mid];
-
- if (computed !== null && !isSymbol(computed) &&
- (retHighest ? (computed <= value) : (computed < value))) {
- low = mid + 1;
- } else {
- high = mid;
- }
- }
- return high;
- }
- return baseSortedIndexBy(array, value, identity, retHighest);
-}
-
-export default baseSortedIndex;
diff --git a/node_modules/lodash-es/_baseSortedIndexBy.js b/node_modules/lodash-es/_baseSortedIndexBy.js
deleted file mode 100644
index 20a90d0..0000000
--- a/node_modules/lodash-es/_baseSortedIndexBy.js
+++ /dev/null
@@ -1,64 +0,0 @@
-import isSymbol from './isSymbol.js';
-
-/** Used as references for the maximum length and index of an array. */
-var MAX_ARRAY_LENGTH = 4294967295,
- MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1;
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeFloor = Math.floor,
- nativeMin = Math.min;
-
-/**
- * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy`
- * which invokes `iteratee` for `value` and each element of `array` to compute
- * their sort ranking. The iteratee is invoked with one argument; (value).
- *
- * @private
- * @param {Array} array The sorted array to inspect.
- * @param {*} value The value to evaluate.
- * @param {Function} iteratee The iteratee invoked per element.
- * @param {boolean} [retHighest] Specify returning the highest qualified index.
- * @returns {number} Returns the index at which `value` should be inserted
- * into `array`.
- */
-function baseSortedIndexBy(array, value, iteratee, retHighest) {
- value = iteratee(value);
-
- var low = 0,
- high = array == null ? 0 : array.length,
- valIsNaN = value !== value,
- valIsNull = value === null,
- valIsSymbol = isSymbol(value),
- valIsUndefined = value === undefined;
-
- while (low < high) {
- var mid = nativeFloor((low + high) / 2),
- computed = iteratee(array[mid]),
- othIsDefined = computed !== undefined,
- othIsNull = computed === null,
- othIsReflexive = computed === computed,
- othIsSymbol = isSymbol(computed);
-
- if (valIsNaN) {
- var setLow = retHighest || othIsReflexive;
- } else if (valIsUndefined) {
- setLow = othIsReflexive && (retHighest || othIsDefined);
- } else if (valIsNull) {
- setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull);
- } else if (valIsSymbol) {
- setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol);
- } else if (othIsNull || othIsSymbol) {
- setLow = false;
- } else {
- setLow = retHighest ? (computed <= value) : (computed < value);
- }
- if (setLow) {
- low = mid + 1;
- } else {
- high = mid;
- }
- }
- return nativeMin(high, MAX_ARRAY_INDEX);
-}
-
-export default baseSortedIndexBy;
diff --git a/node_modules/lodash-es/_baseSortedUniq.js b/node_modules/lodash-es/_baseSortedUniq.js
deleted file mode 100644
index cb44abc..0000000
--- a/node_modules/lodash-es/_baseSortedUniq.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import eq from './eq.js';
-
-/**
- * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without
- * support for iteratee shorthands.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {Function} [iteratee] The iteratee invoked per element.
- * @returns {Array} Returns the new duplicate free array.
- */
-function baseSortedUniq(array, iteratee) {
- var index = -1,
- length = array.length,
- resIndex = 0,
- result = [];
-
- while (++index < length) {
- var value = array[index],
- computed = iteratee ? iteratee(value) : value;
-
- if (!index || !eq(computed, seen)) {
- var seen = computed;
- result[resIndex++] = value === 0 ? 0 : value;
- }
- }
- return result;
-}
-
-export default baseSortedUniq;
diff --git a/node_modules/lodash-es/_baseSum.js b/node_modules/lodash-es/_baseSum.js
deleted file mode 100644
index 61b3da4..0000000
--- a/node_modules/lodash-es/_baseSum.js
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
- * The base implementation of `_.sum` and `_.sumBy` without support for
- * iteratee shorthands.
- *
- * @private
- * @param {Array} array The array to iterate over.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {number} Returns the sum.
- */
-function baseSum(array, iteratee) {
- var result,
- index = -1,
- length = array.length;
-
- while (++index < length) {
- var current = iteratee(array[index]);
- if (current !== undefined) {
- result = result === undefined ? current : (result + current);
- }
- }
- return result;
-}
-
-export default baseSum;
diff --git a/node_modules/lodash-es/_baseTimes.js b/node_modules/lodash-es/_baseTimes.js
deleted file mode 100644
index d5d0e27..0000000
--- a/node_modules/lodash-es/_baseTimes.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * The base implementation of `_.times` without support for iteratee shorthands
- * or max array length checks.
- *
- * @private
- * @param {number} n The number of times to invoke `iteratee`.
- * @param {Function} iteratee The function invoked per iteration.
- * @returns {Array} Returns the array of results.
- */
-function baseTimes(n, iteratee) {
- var index = -1,
- result = Array(n);
-
- while (++index < n) {
- result[index] = iteratee(index);
- }
- return result;
-}
-
-export default baseTimes;
diff --git a/node_modules/lodash-es/_baseToNumber.js b/node_modules/lodash-es/_baseToNumber.js
deleted file mode 100644
index 3552d1a..0000000
--- a/node_modules/lodash-es/_baseToNumber.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import isSymbol from './isSymbol.js';
-
-/** Used as references for various `Number` constants. */
-var NAN = 0 / 0;
-
-/**
- * The base implementation of `_.toNumber` which doesn't ensure correct
- * conversions of binary, hexadecimal, or octal string values.
- *
- * @private
- * @param {*} value The value to process.
- * @returns {number} Returns the number.
- */
-function baseToNumber(value) {
- if (typeof value == 'number') {
- return value;
- }
- if (isSymbol(value)) {
- return NAN;
- }
- return +value;
-}
-
-export default baseToNumber;
diff --git a/node_modules/lodash-es/_baseToPairs.js b/node_modules/lodash-es/_baseToPairs.js
deleted file mode 100644
index c1e3f9f..0000000
--- a/node_modules/lodash-es/_baseToPairs.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import arrayMap from './_arrayMap.js';
-
-/**
- * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array
- * of key-value pairs for `object` corresponding to the property names of `props`.
- *
- * @private
- * @param {Object} object The object to query.
- * @param {Array} props The property names to get values for.
- * @returns {Object} Returns the key-value pairs.
- */
-function baseToPairs(object, props) {
- return arrayMap(props, function(key) {
- return [key, object[key]];
- });
-}
-
-export default baseToPairs;
diff --git a/node_modules/lodash-es/_baseToString.js b/node_modules/lodash-es/_baseToString.js
deleted file mode 100644
index 7b5b35c..0000000
--- a/node_modules/lodash-es/_baseToString.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import Symbol from './_Symbol.js';
-import arrayMap from './_arrayMap.js';
-import isArray from './isArray.js';
-import isSymbol from './isSymbol.js';
-
-/** Used as references for various `Number` constants. */
-var INFINITY = 1 / 0;
-
-/** Used to convert symbols to primitives and strings. */
-var symbolProto = Symbol ? Symbol.prototype : undefined,
- symbolToString = symbolProto ? symbolProto.toString : undefined;
-
-/**
- * The base implementation of `_.toString` which doesn't convert nullish
- * values to empty strings.
- *
- * @private
- * @param {*} value The value to process.
- * @returns {string} Returns the string.
- */
-function baseToString(value) {
- // Exit early for strings to avoid a performance hit in some environments.
- if (typeof value == 'string') {
- return value;
- }
- if (isArray(value)) {
- // Recursively convert values (susceptible to call stack limits).
- return arrayMap(value, baseToString) + '';
- }
- if (isSymbol(value)) {
- return symbolToString ? symbolToString.call(value) : '';
- }
- var result = (value + '');
- return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
-}
-
-export default baseToString;
diff --git a/node_modules/lodash-es/_baseUnary.js b/node_modules/lodash-es/_baseUnary.js
deleted file mode 100644
index e756a32..0000000
--- a/node_modules/lodash-es/_baseUnary.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * The base implementation of `_.unary` without support for storing metadata.
- *
- * @private
- * @param {Function} func The function to cap arguments for.
- * @returns {Function} Returns the new capped function.
- */
-function baseUnary(func) {
- return function(value) {
- return func(value);
- };
-}
-
-export default baseUnary;
diff --git a/node_modules/lodash-es/_baseUniq.js b/node_modules/lodash-es/_baseUniq.js
deleted file mode 100644
index 4ca0bcd..0000000
--- a/node_modules/lodash-es/_baseUniq.js
+++ /dev/null
@@ -1,72 +0,0 @@
-import SetCache from './_SetCache.js';
-import arrayIncludes from './_arrayIncludes.js';
-import arrayIncludesWith from './_arrayIncludesWith.js';
-import cacheHas from './_cacheHas.js';
-import createSet from './_createSet.js';
-import setToArray from './_setToArray.js';
-
-/** Used as the size to enable large array optimizations. */
-var LARGE_ARRAY_SIZE = 200;
-
-/**
- * The base implementation of `_.uniqBy` without support for iteratee shorthands.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {Function} [iteratee] The iteratee invoked per element.
- * @param {Function} [comparator] The comparator invoked per element.
- * @returns {Array} Returns the new duplicate free array.
- */
-function baseUniq(array, iteratee, comparator) {
- var index = -1,
- includes = arrayIncludes,
- length = array.length,
- isCommon = true,
- result = [],
- seen = result;
-
- if (comparator) {
- isCommon = false;
- includes = arrayIncludesWith;
- }
- else if (length >= LARGE_ARRAY_SIZE) {
- var set = iteratee ? null : createSet(array);
- if (set) {
- return setToArray(set);
- }
- isCommon = false;
- includes = cacheHas;
- seen = new SetCache;
- }
- else {
- seen = iteratee ? [] : result;
- }
- outer:
- while (++index < length) {
- var value = array[index],
- computed = iteratee ? iteratee(value) : value;
-
- value = (comparator || value !== 0) ? value : 0;
- if (isCommon && computed === computed) {
- var seenIndex = seen.length;
- while (seenIndex--) {
- if (seen[seenIndex] === computed) {
- continue outer;
- }
- }
- if (iteratee) {
- seen.push(computed);
- }
- result.push(value);
- }
- else if (!includes(seen, computed, comparator)) {
- if (seen !== result) {
- seen.push(computed);
- }
- result.push(value);
- }
- }
- return result;
-}
-
-export default baseUniq;
diff --git a/node_modules/lodash-es/_baseUnset.js b/node_modules/lodash-es/_baseUnset.js
deleted file mode 100644
index 64b7b9c..0000000
--- a/node_modules/lodash-es/_baseUnset.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import castPath from './_castPath.js';
-import last from './last.js';
-import parent from './_parent.js';
-import toKey from './_toKey.js';
-
-/**
- * The base implementation of `_.unset`.
- *
- * @private
- * @param {Object} object The object to modify.
- * @param {Array|string} path The property path to unset.
- * @returns {boolean} Returns `true` if the property is deleted, else `false`.
- */
-function baseUnset(object, path) {
- path = castPath(path, object);
- object = parent(object, path);
- return object == null || delete object[toKey(last(path))];
-}
-
-export default baseUnset;
diff --git a/node_modules/lodash-es/_baseUpdate.js b/node_modules/lodash-es/_baseUpdate.js
deleted file mode 100644
index 70dd150..0000000
--- a/node_modules/lodash-es/_baseUpdate.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import baseGet from './_baseGet.js';
-import baseSet from './_baseSet.js';
-
-/**
- * The base implementation of `_.update`.
- *
- * @private
- * @param {Object} object The object to modify.
- * @param {Array|string} path The path of the property to update.
- * @param {Function} updater The function to produce the updated value.
- * @param {Function} [customizer] The function to customize path creation.
- * @returns {Object} Returns `object`.
- */
-function baseUpdate(object, path, updater, customizer) {
- return baseSet(object, path, updater(baseGet(object, path)), customizer);
-}
-
-export default baseUpdate;
diff --git a/node_modules/lodash-es/_baseValues.js b/node_modules/lodash-es/_baseValues.js
deleted file mode 100644
index f3a38d2..0000000
--- a/node_modules/lodash-es/_baseValues.js
+++ /dev/null
@@ -1,19 +0,0 @@
-import arrayMap from './_arrayMap.js';
-
-/**
- * The base implementation of `_.values` and `_.valuesIn` which creates an
- * array of `object` property values corresponding to the property names
- * of `props`.
- *
- * @private
- * @param {Object} object The object to query.
- * @param {Array} props The property names to get values for.
- * @returns {Object} Returns the array of property values.
- */
-function baseValues(object, props) {
- return arrayMap(props, function(key) {
- return object[key];
- });
-}
-
-export default baseValues;
diff --git a/node_modules/lodash-es/_baseWhile.js b/node_modules/lodash-es/_baseWhile.js
deleted file mode 100644
index 5536ea6..0000000
--- a/node_modules/lodash-es/_baseWhile.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import baseSlice from './_baseSlice.js';
-
-/**
- * The base implementation of methods like `_.dropWhile` and `_.takeWhile`
- * without support for iteratee shorthands.
- *
- * @private
- * @param {Array} array The array to query.
- * @param {Function} predicate The function invoked per iteration.
- * @param {boolean} [isDrop] Specify dropping elements instead of taking them.
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {Array} Returns the slice of `array`.
- */
-function baseWhile(array, predicate, isDrop, fromRight) {
- var length = array.length,
- index = fromRight ? length : -1;
-
- while ((fromRight ? index-- : ++index < length) &&
- predicate(array[index], index, array)) {}
-
- return isDrop
- ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length))
- : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index));
-}
-
-export default baseWhile;
diff --git a/node_modules/lodash-es/_baseWrapperValue.js b/node_modules/lodash-es/_baseWrapperValue.js
deleted file mode 100644
index 0b6807e..0000000
--- a/node_modules/lodash-es/_baseWrapperValue.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import LazyWrapper from './_LazyWrapper.js';
-import arrayPush from './_arrayPush.js';
-import arrayReduce from './_arrayReduce.js';
-
-/**
- * The base implementation of `wrapperValue` which returns the result of
- * performing a sequence of actions on the unwrapped `value`, where each
- * successive action is supplied the return value of the previous.
- *
- * @private
- * @param {*} value The unwrapped value.
- * @param {Array} actions Actions to perform to resolve the unwrapped value.
- * @returns {*} Returns the resolved value.
- */
-function baseWrapperValue(value, actions) {
- var result = value;
- if (result instanceof LazyWrapper) {
- result = result.value();
- }
- return arrayReduce(actions, function(result, action) {
- return action.func.apply(action.thisArg, arrayPush([result], action.args));
- }, result);
-}
-
-export default baseWrapperValue;
diff --git a/node_modules/lodash-es/_baseXor.js b/node_modules/lodash-es/_baseXor.js
deleted file mode 100644
index 9cebe67..0000000
--- a/node_modules/lodash-es/_baseXor.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import baseDifference from './_baseDifference.js';
-import baseFlatten from './_baseFlatten.js';
-import baseUniq from './_baseUniq.js';
-
-/**
- * The base implementation of methods like `_.xor`, without support for
- * iteratee shorthands, that accepts an array of arrays to inspect.
- *
- * @private
- * @param {Array} arrays The arrays to inspect.
- * @param {Function} [iteratee] The iteratee invoked per element.
- * @param {Function} [comparator] The comparator invoked per element.
- * @returns {Array} Returns the new array of values.
- */
-function baseXor(arrays, iteratee, comparator) {
- var length = arrays.length;
- if (length < 2) {
- return length ? baseUniq(arrays[0]) : [];
- }
- var index = -1,
- result = Array(length);
-
- while (++index < length) {
- var array = arrays[index],
- othIndex = -1;
-
- while (++othIndex < length) {
- if (othIndex != index) {
- result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator);
- }
- }
- }
- return baseUniq(baseFlatten(result, 1), iteratee, comparator);
-}
-
-export default baseXor;
diff --git a/node_modules/lodash-es/_baseZipObject.js b/node_modules/lodash-es/_baseZipObject.js
deleted file mode 100644
index f6f4a3c..0000000
--- a/node_modules/lodash-es/_baseZipObject.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * This base implementation of `_.zipObject` which assigns values using `assignFunc`.
- *
- * @private
- * @param {Array} props The property identifiers.
- * @param {Array} values The property values.
- * @param {Function} assignFunc The function to assign values.
- * @returns {Object} Returns the new object.
- */
-function baseZipObject(props, values, assignFunc) {
- var index = -1,
- length = props.length,
- valsLength = values.length,
- result = {};
-
- while (++index < length) {
- var value = index < valsLength ? values[index] : undefined;
- assignFunc(result, props[index], value);
- }
- return result;
-}
-
-export default baseZipObject;
diff --git a/node_modules/lodash-es/_cacheHas.js b/node_modules/lodash-es/_cacheHas.js
deleted file mode 100644
index 374a886..0000000
--- a/node_modules/lodash-es/_cacheHas.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/**
- * Checks if a `cache` value for `key` exists.
- *
- * @private
- * @param {Object} cache The cache to query.
- * @param {string} key The key of the entry to check.
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
- */
-function cacheHas(cache, key) {
- return cache.has(key);
-}
-
-export default cacheHas;
diff --git a/node_modules/lodash-es/_castArrayLikeObject.js b/node_modules/lodash-es/_castArrayLikeObject.js
deleted file mode 100644
index 040d3e5..0000000
--- a/node_modules/lodash-es/_castArrayLikeObject.js
+++ /dev/null
@@ -1,14 +0,0 @@
-import isArrayLikeObject from './isArrayLikeObject.js';
-
-/**
- * Casts `value` to an empty array if it's not an array like object.
- *
- * @private
- * @param {*} value The value to inspect.
- * @returns {Array|Object} Returns the cast array-like object.
- */
-function castArrayLikeObject(value) {
- return isArrayLikeObject(value) ? value : [];
-}
-
-export default castArrayLikeObject;
diff --git a/node_modules/lodash-es/_castFunction.js b/node_modules/lodash-es/_castFunction.js
deleted file mode 100644
index 03a2e99..0000000
--- a/node_modules/lodash-es/_castFunction.js
+++ /dev/null
@@ -1,14 +0,0 @@
-import identity from './identity.js';
-
-/**
- * Casts `value` to `identity` if it's not a function.
- *
- * @private
- * @param {*} value The value to inspect.
- * @returns {Function} Returns cast function.
- */
-function castFunction(value) {
- return typeof value == 'function' ? value : identity;
-}
-
-export default castFunction;
diff --git a/node_modules/lodash-es/_castPath.js b/node_modules/lodash-es/_castPath.js
deleted file mode 100644
index 89aae95..0000000
--- a/node_modules/lodash-es/_castPath.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import isArray from './isArray.js';
-import isKey from './_isKey.js';
-import stringToPath from './_stringToPath.js';
-import toString from './toString.js';
-
-/**
- * Casts `value` to a path array if it's not one.
- *
- * @private
- * @param {*} value The value to inspect.
- * @param {Object} [object] The object to query keys on.
- * @returns {Array} Returns the cast property path array.
- */
-function castPath(value, object) {
- if (isArray(value)) {
- return value;
- }
- return isKey(value, object) ? [value] : stringToPath(toString(value));
-}
-
-export default castPath;
diff --git a/node_modules/lodash-es/_castRest.js b/node_modules/lodash-es/_castRest.js
deleted file mode 100644
index 6f43d02..0000000
--- a/node_modules/lodash-es/_castRest.js
+++ /dev/null
@@ -1,14 +0,0 @@
-import baseRest from './_baseRest.js';
-
-/**
- * A `baseRest` alias which can be replaced with `identity` by module
- * replacement plugins.
- *
- * @private
- * @type {Function}
- * @param {Function} func The function to apply a rest parameter to.
- * @returns {Function} Returns the new function.
- */
-var castRest = baseRest;
-
-export default castRest;
diff --git a/node_modules/lodash-es/_castSlice.js b/node_modules/lodash-es/_castSlice.js
deleted file mode 100644
index 011bbe4..0000000
--- a/node_modules/lodash-es/_castSlice.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import baseSlice from './_baseSlice.js';
-
-/**
- * Casts `array` to a slice if it's needed.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {number} start The start position.
- * @param {number} [end=array.length] The end position.
- * @returns {Array} Returns the cast slice.
- */
-function castSlice(array, start, end) {
- var length = array.length;
- end = end === undefined ? length : end;
- return (!start && end >= length) ? array : baseSlice(array, start, end);
-}
-
-export default castSlice;
diff --git a/node_modules/lodash-es/_charsEndIndex.js b/node_modules/lodash-es/_charsEndIndex.js
deleted file mode 100644
index af9926e..0000000
--- a/node_modules/lodash-es/_charsEndIndex.js
+++ /dev/null
@@ -1,19 +0,0 @@
-import baseIndexOf from './_baseIndexOf.js';
-
-/**
- * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol
- * that is not found in the character symbols.
- *
- * @private
- * @param {Array} strSymbols The string symbols to inspect.
- * @param {Array} chrSymbols The character symbols to find.
- * @returns {number} Returns the index of the last unmatched string symbol.
- */
-function charsEndIndex(strSymbols, chrSymbols) {
- var index = strSymbols.length;
-
- while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}
- return index;
-}
-
-export default charsEndIndex;
diff --git a/node_modules/lodash-es/_charsStartIndex.js b/node_modules/lodash-es/_charsStartIndex.js
deleted file mode 100644
index 7406b19..0000000
--- a/node_modules/lodash-es/_charsStartIndex.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import baseIndexOf from './_baseIndexOf.js';
-
-/**
- * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol
- * that is not found in the character symbols.
- *
- * @private
- * @param {Array} strSymbols The string symbols to inspect.
- * @param {Array} chrSymbols The character symbols to find.
- * @returns {number} Returns the index of the first unmatched string symbol.
- */
-function charsStartIndex(strSymbols, chrSymbols) {
- var index = -1,
- length = strSymbols.length;
-
- while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}
- return index;
-}
-
-export default charsStartIndex;
diff --git a/node_modules/lodash-es/_cloneArrayBuffer.js b/node_modules/lodash-es/_cloneArrayBuffer.js
deleted file mode 100644
index 9f33e7a..0000000
--- a/node_modules/lodash-es/_cloneArrayBuffer.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import Uint8Array from './_Uint8Array.js';
-
-/**
- * Creates a clone of `arrayBuffer`.
- *
- * @private
- * @param {ArrayBuffer} arrayBuffer The array buffer to clone.
- * @returns {ArrayBuffer} Returns the cloned array buffer.
- */
-function cloneArrayBuffer(arrayBuffer) {
- var result = new arrayBuffer.constructor(arrayBuffer.byteLength);
- new Uint8Array(result).set(new Uint8Array(arrayBuffer));
- return result;
-}
-
-export default cloneArrayBuffer;
diff --git a/node_modules/lodash-es/_cloneBuffer.js b/node_modules/lodash-es/_cloneBuffer.js
deleted file mode 100644
index 21b192e..0000000
--- a/node_modules/lodash-es/_cloneBuffer.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import root from './_root.js';
-
-/** Detect free variable `exports`. */
-var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;
-
-/** Detect free variable `module`. */
-var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
-
-/** Detect the popular CommonJS extension `module.exports`. */
-var moduleExports = freeModule && freeModule.exports === freeExports;
-
-/** Built-in value references. */
-var Buffer = moduleExports ? root.Buffer : undefined,
- allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;
-
-/**
- * Creates a clone of `buffer`.
- *
- * @private
- * @param {Buffer} buffer The buffer to clone.
- * @param {boolean} [isDeep] Specify a deep clone.
- * @returns {Buffer} Returns the cloned buffer.
- */
-function cloneBuffer(buffer, isDeep) {
- if (isDeep) {
- return buffer.slice();
- }
- var length = buffer.length,
- result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);
-
- buffer.copy(result);
- return result;
-}
-
-export default cloneBuffer;
diff --git a/node_modules/lodash-es/_cloneDataView.js b/node_modules/lodash-es/_cloneDataView.js
deleted file mode 100644
index f9b9a6f..0000000
--- a/node_modules/lodash-es/_cloneDataView.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import cloneArrayBuffer from './_cloneArrayBuffer.js';
-
-/**
- * Creates a clone of `dataView`.
- *
- * @private
- * @param {Object} dataView The data view to clone.
- * @param {boolean} [isDeep] Specify a deep clone.
- * @returns {Object} Returns the cloned data view.
- */
-function cloneDataView(dataView, isDeep) {
- var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;
- return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);
-}
-
-export default cloneDataView;
diff --git a/node_modules/lodash-es/_cloneMap.js b/node_modules/lodash-es/_cloneMap.js
deleted file mode 100644
index a4aa5b5..0000000
--- a/node_modules/lodash-es/_cloneMap.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import addMapEntry from './_addMapEntry.js';
-import arrayReduce from './_arrayReduce.js';
-import mapToArray from './_mapToArray.js';
-
-/** Used to compose bitmasks for cloning. */
-var CLONE_DEEP_FLAG = 1;
-
-/**
- * Creates a clone of `map`.
- *
- * @private
- * @param {Object} map The map to clone.
- * @param {Function} cloneFunc The function to clone values.
- * @param {boolean} [isDeep] Specify a deep clone.
- * @returns {Object} Returns the cloned map.
- */
-function cloneMap(map, isDeep, cloneFunc) {
- var array = isDeep ? cloneFunc(mapToArray(map), CLONE_DEEP_FLAG) : mapToArray(map);
- return arrayReduce(array, addMapEntry, new map.constructor);
-}
-
-export default cloneMap;
diff --git a/node_modules/lodash-es/_cloneRegExp.js b/node_modules/lodash-es/_cloneRegExp.js
deleted file mode 100644
index 0ddb49b..0000000
--- a/node_modules/lodash-es/_cloneRegExp.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/** Used to match `RegExp` flags from their coerced string values. */
-var reFlags = /\w*$/;
-
-/**
- * Creates a clone of `regexp`.
- *
- * @private
- * @param {Object} regexp The regexp to clone.
- * @returns {Object} Returns the cloned regexp.
- */
-function cloneRegExp(regexp) {
- var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));
- result.lastIndex = regexp.lastIndex;
- return result;
-}
-
-export default cloneRegExp;
diff --git a/node_modules/lodash-es/_cloneSet.js b/node_modules/lodash-es/_cloneSet.js
deleted file mode 100644
index e1d1063..0000000
--- a/node_modules/lodash-es/_cloneSet.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import addSetEntry from './_addSetEntry.js';
-import arrayReduce from './_arrayReduce.js';
-import setToArray from './_setToArray.js';
-
-/** Used to compose bitmasks for cloning. */
-var CLONE_DEEP_FLAG = 1;
-
-/**
- * Creates a clone of `set`.
- *
- * @private
- * @param {Object} set The set to clone.
- * @param {Function} cloneFunc The function to clone values.
- * @param {boolean} [isDeep] Specify a deep clone.
- * @returns {Object} Returns the cloned set.
- */
-function cloneSet(set, isDeep, cloneFunc) {
- var array = isDeep ? cloneFunc(setToArray(set), CLONE_DEEP_FLAG) : setToArray(set);
- return arrayReduce(array, addSetEntry, new set.constructor);
-}
-
-export default cloneSet;
diff --git a/node_modules/lodash-es/_cloneSymbol.js b/node_modules/lodash-es/_cloneSymbol.js
deleted file mode 100644
index 357b155..0000000
--- a/node_modules/lodash-es/_cloneSymbol.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import Symbol from './_Symbol.js';
-
-/** Used to convert symbols to primitives and strings. */
-var symbolProto = Symbol ? Symbol.prototype : undefined,
- symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;
-
-/**
- * Creates a clone of the `symbol` object.
- *
- * @private
- * @param {Object} symbol The symbol object to clone.
- * @returns {Object} Returns the cloned symbol object.
- */
-function cloneSymbol(symbol) {
- return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};
-}
-
-export default cloneSymbol;
diff --git a/node_modules/lodash-es/_cloneTypedArray.js b/node_modules/lodash-es/_cloneTypedArray.js
deleted file mode 100644
index 2fa9b8a..0000000
--- a/node_modules/lodash-es/_cloneTypedArray.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import cloneArrayBuffer from './_cloneArrayBuffer.js';
-
-/**
- * Creates a clone of `typedArray`.
- *
- * @private
- * @param {Object} typedArray The typed array to clone.
- * @param {boolean} [isDeep] Specify a deep clone.
- * @returns {Object} Returns the cloned typed array.
- */
-function cloneTypedArray(typedArray, isDeep) {
- var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;
- return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);
-}
-
-export default cloneTypedArray;
diff --git a/node_modules/lodash-es/_compareAscending.js b/node_modules/lodash-es/_compareAscending.js
deleted file mode 100644
index f445193..0000000
--- a/node_modules/lodash-es/_compareAscending.js
+++ /dev/null
@@ -1,41 +0,0 @@
-import isSymbol from './isSymbol.js';
-
-/**
- * Compares values to sort them in ascending order.
- *
- * @private
- * @param {*} value The value to compare.
- * @param {*} other The other value to compare.
- * @returns {number} Returns the sort order indicator for `value`.
- */
-function compareAscending(value, other) {
- if (value !== other) {
- var valIsDefined = value !== undefined,
- valIsNull = value === null,
- valIsReflexive = value === value,
- valIsSymbol = isSymbol(value);
-
- var othIsDefined = other !== undefined,
- othIsNull = other === null,
- othIsReflexive = other === other,
- othIsSymbol = isSymbol(other);
-
- if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) ||
- (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) ||
- (valIsNull && othIsDefined && othIsReflexive) ||
- (!valIsDefined && othIsReflexive) ||
- !valIsReflexive) {
- return 1;
- }
- if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) ||
- (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) ||
- (othIsNull && valIsDefined && valIsReflexive) ||
- (!othIsDefined && valIsReflexive) ||
- !othIsReflexive) {
- return -1;
- }
- }
- return 0;
-}
-
-export default compareAscending;
diff --git a/node_modules/lodash-es/_compareMultiple.js b/node_modules/lodash-es/_compareMultiple.js
deleted file mode 100644
index 06e7557..0000000
--- a/node_modules/lodash-es/_compareMultiple.js
+++ /dev/null
@@ -1,44 +0,0 @@
-import compareAscending from './_compareAscending.js';
-
-/**
- * Used by `_.orderBy` to compare multiple properties of a value to another
- * and stable sort them.
- *
- * If `orders` is unspecified, all values are sorted in ascending order. Otherwise,
- * specify an order of "desc" for descending or "asc" for ascending sort order
- * of corresponding values.
- *
- * @private
- * @param {Object} object The object to compare.
- * @param {Object} other The other object to compare.
- * @param {boolean[]|string[]} orders The order to sort by for each property.
- * @returns {number} Returns the sort order indicator for `object`.
- */
-function compareMultiple(object, other, orders) {
- var index = -1,
- objCriteria = object.criteria,
- othCriteria = other.criteria,
- length = objCriteria.length,
- ordersLength = orders.length;
-
- while (++index < length) {
- var result = compareAscending(objCriteria[index], othCriteria[index]);
- if (result) {
- if (index >= ordersLength) {
- return result;
- }
- var order = orders[index];
- return result * (order == 'desc' ? -1 : 1);
- }
- }
- // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications
- // that causes it, under certain circumstances, to provide the same value for
- // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247
- // for more details.
- //
- // This also ensures a stable sort in V8 and other engines.
- // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details.
- return object.index - other.index;
-}
-
-export default compareMultiple;
diff --git a/node_modules/lodash-es/_composeArgs.js b/node_modules/lodash-es/_composeArgs.js
deleted file mode 100644
index 82643bd..0000000
--- a/node_modules/lodash-es/_composeArgs.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Creates an array that is the composition of partially applied arguments,
- * placeholders, and provided arguments into a single array of arguments.
- *
- * @private
- * @param {Array} args The provided arguments.
- * @param {Array} partials The arguments to prepend to those provided.
- * @param {Array} holders The `partials` placeholder indexes.
- * @params {boolean} [isCurried] Specify composing for a curried function.
- * @returns {Array} Returns the new array of composed arguments.
- */
-function composeArgs(args, partials, holders, isCurried) {
- var argsIndex = -1,
- argsLength = args.length,
- holdersLength = holders.length,
- leftIndex = -1,
- leftLength = partials.length,
- rangeLength = nativeMax(argsLength - holdersLength, 0),
- result = Array(leftLength + rangeLength),
- isUncurried = !isCurried;
-
- while (++leftIndex < leftLength) {
- result[leftIndex] = partials[leftIndex];
- }
- while (++argsIndex < holdersLength) {
- if (isUncurried || argsIndex < argsLength) {
- result[holders[argsIndex]] = args[argsIndex];
- }
- }
- while (rangeLength--) {
- result[leftIndex++] = args[argsIndex++];
- }
- return result;
-}
-
-export default composeArgs;
diff --git a/node_modules/lodash-es/_composeArgsRight.js b/node_modules/lodash-es/_composeArgsRight.js
deleted file mode 100644
index 9540e39..0000000
--- a/node_modules/lodash-es/_composeArgsRight.js
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * This function is like `composeArgs` except that the arguments composition
- * is tailored for `_.partialRight`.
- *
- * @private
- * @param {Array} args The provided arguments.
- * @param {Array} partials The arguments to append to those provided.
- * @param {Array} holders The `partials` placeholder indexes.
- * @params {boolean} [isCurried] Specify composing for a curried function.
- * @returns {Array} Returns the new array of composed arguments.
- */
-function composeArgsRight(args, partials, holders, isCurried) {
- var argsIndex = -1,
- argsLength = args.length,
- holdersIndex = -1,
- holdersLength = holders.length,
- rightIndex = -1,
- rightLength = partials.length,
- rangeLength = nativeMax(argsLength - holdersLength, 0),
- result = Array(rangeLength + rightLength),
- isUncurried = !isCurried;
-
- while (++argsIndex < rangeLength) {
- result[argsIndex] = args[argsIndex];
- }
- var offset = argsIndex;
- while (++rightIndex < rightLength) {
- result[offset + rightIndex] = partials[rightIndex];
- }
- while (++holdersIndex < holdersLength) {
- if (isUncurried || argsIndex < argsLength) {
- result[offset + holders[holdersIndex]] = args[argsIndex++];
- }
- }
- return result;
-}
-
-export default composeArgsRight;
diff --git a/node_modules/lodash-es/_copyArray.js b/node_modules/lodash-es/_copyArray.js
deleted file mode 100644
index b29b71e..0000000
--- a/node_modules/lodash-es/_copyArray.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * Copies the values of `source` to `array`.
- *
- * @private
- * @param {Array} source The array to copy values from.
- * @param {Array} [array=[]] The array to copy values to.
- * @returns {Array} Returns `array`.
- */
-function copyArray(source, array) {
- var index = -1,
- length = source.length;
-
- array || (array = Array(length));
- while (++index < length) {
- array[index] = source[index];
- }
- return array;
-}
-
-export default copyArray;
diff --git a/node_modules/lodash-es/_copyObject.js b/node_modules/lodash-es/_copyObject.js
deleted file mode 100644
index 4e24755..0000000
--- a/node_modules/lodash-es/_copyObject.js
+++ /dev/null
@@ -1,40 +0,0 @@
-import assignValue from './_assignValue.js';
-import baseAssignValue from './_baseAssignValue.js';
-
-/**
- * Copies properties of `source` to `object`.
- *
- * @private
- * @param {Object} source The object to copy properties from.
- * @param {Array} props The property identifiers to copy.
- * @param {Object} [object={}] The object to copy properties to.
- * @param {Function} [customizer] The function to customize copied values.
- * @returns {Object} Returns `object`.
- */
-function copyObject(source, props, object, customizer) {
- var isNew = !object;
- object || (object = {});
-
- var index = -1,
- length = props.length;
-
- while (++index < length) {
- var key = props[index];
-
- var newValue = customizer
- ? customizer(object[key], source[key], key, object, source)
- : undefined;
-
- if (newValue === undefined) {
- newValue = source[key];
- }
- if (isNew) {
- baseAssignValue(object, key, newValue);
- } else {
- assignValue(object, key, newValue);
- }
- }
- return object;
-}
-
-export default copyObject;
diff --git a/node_modules/lodash-es/_copySymbols.js b/node_modules/lodash-es/_copySymbols.js
deleted file mode 100644
index 002d8b7..0000000
--- a/node_modules/lodash-es/_copySymbols.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import copyObject from './_copyObject.js';
-import getSymbols from './_getSymbols.js';
-
-/**
- * Copies own symbols of `source` to `object`.
- *
- * @private
- * @param {Object} source The object to copy symbols from.
- * @param {Object} [object={}] The object to copy symbols to.
- * @returns {Object} Returns `object`.
- */
-function copySymbols(source, object) {
- return copyObject(source, getSymbols(source), object);
-}
-
-export default copySymbols;
diff --git a/node_modules/lodash-es/_copySymbolsIn.js b/node_modules/lodash-es/_copySymbolsIn.js
deleted file mode 100644
index 12268d2..0000000
--- a/node_modules/lodash-es/_copySymbolsIn.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import copyObject from './_copyObject.js';
-import getSymbolsIn from './_getSymbolsIn.js';
-
-/**
- * Copies own and inherited symbols of `source` to `object`.
- *
- * @private
- * @param {Object} source The object to copy symbols from.
- * @param {Object} [object={}] The object to copy symbols to.
- * @returns {Object} Returns `object`.
- */
-function copySymbolsIn(source, object) {
- return copyObject(source, getSymbolsIn(source), object);
-}
-
-export default copySymbolsIn;
diff --git a/node_modules/lodash-es/_coreJsData.js b/node_modules/lodash-es/_coreJsData.js
deleted file mode 100644
index 2ad4fc1..0000000
--- a/node_modules/lodash-es/_coreJsData.js
+++ /dev/null
@@ -1,6 +0,0 @@
-import root from './_root.js';
-
-/** Used to detect overreaching core-js shims. */
-var coreJsData = root['__core-js_shared__'];
-
-export default coreJsData;
diff --git a/node_modules/lodash-es/_countHolders.js b/node_modules/lodash-es/_countHolders.js
deleted file mode 100644
index 0767946..0000000
--- a/node_modules/lodash-es/_countHolders.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Gets the number of `placeholder` occurrences in `array`.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {*} placeholder The placeholder to search for.
- * @returns {number} Returns the placeholder count.
- */
-function countHolders(array, placeholder) {
- var length = array.length,
- result = 0;
-
- while (length--) {
- if (array[length] === placeholder) {
- ++result;
- }
- }
- return result;
-}
-
-export default countHolders;
diff --git a/node_modules/lodash-es/_createAggregator.js b/node_modules/lodash-es/_createAggregator.js
deleted file mode 100644
index 578c0ae..0000000
--- a/node_modules/lodash-es/_createAggregator.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import arrayAggregator from './_arrayAggregator.js';
-import baseAggregator from './_baseAggregator.js';
-import baseIteratee from './_baseIteratee.js';
-import isArray from './isArray.js';
-
-/**
- * Creates a function like `_.groupBy`.
- *
- * @private
- * @param {Function} setter The function to set accumulator values.
- * @param {Function} [initializer] The accumulator object initializer.
- * @returns {Function} Returns the new aggregator function.
- */
-function createAggregator(setter, initializer) {
- return function(collection, iteratee) {
- var func = isArray(collection) ? arrayAggregator : baseAggregator,
- accumulator = initializer ? initializer() : {};
-
- return func(collection, setter, baseIteratee(iteratee, 2), accumulator);
- };
-}
-
-export default createAggregator;
diff --git a/node_modules/lodash-es/_createAssigner.js b/node_modules/lodash-es/_createAssigner.js
deleted file mode 100644
index 67dc499..0000000
--- a/node_modules/lodash-es/_createAssigner.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import baseRest from './_baseRest.js';
-import isIterateeCall from './_isIterateeCall.js';
-
-/**
- * Creates a function like `_.assign`.
- *
- * @private
- * @param {Function} assigner The function to assign values.
- * @returns {Function} Returns the new assigner function.
- */
-function createAssigner(assigner) {
- return baseRest(function(object, sources) {
- var index = -1,
- length = sources.length,
- customizer = length > 1 ? sources[length - 1] : undefined,
- guard = length > 2 ? sources[2] : undefined;
-
- customizer = (assigner.length > 3 && typeof customizer == 'function')
- ? (length--, customizer)
- : undefined;
-
- if (guard && isIterateeCall(sources[0], sources[1], guard)) {
- customizer = length < 3 ? undefined : customizer;
- length = 1;
- }
- object = Object(object);
- while (++index < length) {
- var source = sources[index];
- if (source) {
- assigner(object, source, index, customizer);
- }
- }
- return object;
- });
-}
-
-export default createAssigner;
diff --git a/node_modules/lodash-es/_createBaseEach.js b/node_modules/lodash-es/_createBaseEach.js
deleted file mode 100644
index 2c3181b..0000000
--- a/node_modules/lodash-es/_createBaseEach.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import isArrayLike from './isArrayLike.js';
-
-/**
- * Creates a `baseEach` or `baseEachRight` function.
- *
- * @private
- * @param {Function} eachFunc The function to iterate over a collection.
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {Function} Returns the new base function.
- */
-function createBaseEach(eachFunc, fromRight) {
- return function(collection, iteratee) {
- if (collection == null) {
- return collection;
- }
- if (!isArrayLike(collection)) {
- return eachFunc(collection, iteratee);
- }
- var length = collection.length,
- index = fromRight ? length : -1,
- iterable = Object(collection);
-
- while ((fromRight ? index-- : ++index < length)) {
- if (iteratee(iterable[index], index, iterable) === false) {
- break;
- }
- }
- return collection;
- };
-}
-
-export default createBaseEach;
diff --git a/node_modules/lodash-es/_createBaseFor.js b/node_modules/lodash-es/_createBaseFor.js
deleted file mode 100644
index ac15c59..0000000
--- a/node_modules/lodash-es/_createBaseFor.js
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * Creates a base function for methods like `_.forIn` and `_.forOwn`.
- *
- * @private
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {Function} Returns the new base function.
- */
-function createBaseFor(fromRight) {
- return function(object, iteratee, keysFunc) {
- var index = -1,
- iterable = Object(object),
- props = keysFunc(object),
- length = props.length;
-
- while (length--) {
- var key = props[fromRight ? length : ++index];
- if (iteratee(iterable[key], key, iterable) === false) {
- break;
- }
- }
- return object;
- };
-}
-
-export default createBaseFor;
diff --git a/node_modules/lodash-es/_createBind.js b/node_modules/lodash-es/_createBind.js
deleted file mode 100644
index 3083ae4..0000000
--- a/node_modules/lodash-es/_createBind.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import createCtor from './_createCtor.js';
-import root from './_root.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_BIND_FLAG = 1;
-
-/**
- * Creates a function that wraps `func` to invoke it with the optional `this`
- * binding of `thisArg`.
- *
- * @private
- * @param {Function} func The function to wrap.
- * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
- * @param {*} [thisArg] The `this` binding of `func`.
- * @returns {Function} Returns the new wrapped function.
- */
-function createBind(func, bitmask, thisArg) {
- var isBind = bitmask & WRAP_BIND_FLAG,
- Ctor = createCtor(func);
-
- function wrapper() {
- var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;
- return fn.apply(isBind ? thisArg : this, arguments);
- }
- return wrapper;
-}
-
-export default createBind;
diff --git a/node_modules/lodash-es/_createCaseFirst.js b/node_modules/lodash-es/_createCaseFirst.js
deleted file mode 100644
index 333c7c4..0000000
--- a/node_modules/lodash-es/_createCaseFirst.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import castSlice from './_castSlice.js';
-import hasUnicode from './_hasUnicode.js';
-import stringToArray from './_stringToArray.js';
-import toString from './toString.js';
-
-/**
- * Creates a function like `_.lowerFirst`.
- *
- * @private
- * @param {string} methodName The name of the `String` case method to use.
- * @returns {Function} Returns the new case function.
- */
-function createCaseFirst(methodName) {
- return function(string) {
- string = toString(string);
-
- var strSymbols = hasUnicode(string)
- ? stringToArray(string)
- : undefined;
-
- var chr = strSymbols
- ? strSymbols[0]
- : string.charAt(0);
-
- var trailing = strSymbols
- ? castSlice(strSymbols, 1).join('')
- : string.slice(1);
-
- return chr[methodName]() + trailing;
- };
-}
-
-export default createCaseFirst;
diff --git a/node_modules/lodash-es/_createCompounder.js b/node_modules/lodash-es/_createCompounder.js
deleted file mode 100644
index f3503fb..0000000
--- a/node_modules/lodash-es/_createCompounder.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import arrayReduce from './_arrayReduce.js';
-import deburr from './deburr.js';
-import words from './words.js';
-
-/** Used to compose unicode capture groups. */
-var rsApos = "['\u2019]";
-
-/** Used to match apostrophes. */
-var reApos = RegExp(rsApos, 'g');
-
-/**
- * Creates a function like `_.camelCase`.
- *
- * @private
- * @param {Function} callback The function to combine each word.
- * @returns {Function} Returns the new compounder function.
- */
-function createCompounder(callback) {
- return function(string) {
- return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');
- };
-}
-
-export default createCompounder;
diff --git a/node_modules/lodash-es/_createCtor.js b/node_modules/lodash-es/_createCtor.js
deleted file mode 100644
index 57f32b1..0000000
--- a/node_modules/lodash-es/_createCtor.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import baseCreate from './_baseCreate.js';
-import isObject from './isObject.js';
-
-/**
- * Creates a function that produces an instance of `Ctor` regardless of
- * whether it was invoked as part of a `new` expression or by `call` or `apply`.
- *
- * @private
- * @param {Function} Ctor The constructor to wrap.
- * @returns {Function} Returns the new wrapped function.
- */
-function createCtor(Ctor) {
- return function() {
- // Use a `switch` statement to work with class constructors. See
- // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist
- // for more details.
- var args = arguments;
- switch (args.length) {
- case 0: return new Ctor;
- case 1: return new Ctor(args[0]);
- case 2: return new Ctor(args[0], args[1]);
- case 3: return new Ctor(args[0], args[1], args[2]);
- case 4: return new Ctor(args[0], args[1], args[2], args[3]);
- case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]);
- case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]);
- case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);
- }
- var thisBinding = baseCreate(Ctor.prototype),
- result = Ctor.apply(thisBinding, args);
-
- // Mimic the constructor's `return` behavior.
- // See https://es5.github.io/#x13.2.2 for more details.
- return isObject(result) ? result : thisBinding;
- };
-}
-
-export default createCtor;
diff --git a/node_modules/lodash-es/_createCurry.js b/node_modules/lodash-es/_createCurry.js
deleted file mode 100644
index cae7f93..0000000
--- a/node_modules/lodash-es/_createCurry.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import apply from './_apply.js';
-import createCtor from './_createCtor.js';
-import createHybrid from './_createHybrid.js';
-import createRecurry from './_createRecurry.js';
-import getHolder from './_getHolder.js';
-import replaceHolders from './_replaceHolders.js';
-import root from './_root.js';
-
-/**
- * Creates a function that wraps `func` to enable currying.
- *
- * @private
- * @param {Function} func The function to wrap.
- * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
- * @param {number} arity The arity of `func`.
- * @returns {Function} Returns the new wrapped function.
- */
-function createCurry(func, bitmask, arity) {
- var Ctor = createCtor(func);
-
- function wrapper() {
- var length = arguments.length,
- args = Array(length),
- index = length,
- placeholder = getHolder(wrapper);
-
- while (index--) {
- args[index] = arguments[index];
- }
- var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder)
- ? []
- : replaceHolders(args, placeholder);
-
- length -= holders.length;
- if (length < arity) {
- return createRecurry(
- func, bitmask, createHybrid, wrapper.placeholder, undefined,
- args, holders, undefined, undefined, arity - length);
- }
- var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;
- return apply(fn, this, args);
- }
- return wrapper;
-}
-
-export default createCurry;
diff --git a/node_modules/lodash-es/_createFind.js b/node_modules/lodash-es/_createFind.js
deleted file mode 100644
index d3f8bd5..0000000
--- a/node_modules/lodash-es/_createFind.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import isArrayLike from './isArrayLike.js';
-import keys from './keys.js';
-
-/**
- * Creates a `_.find` or `_.findLast` function.
- *
- * @private
- * @param {Function} findIndexFunc The function to find the collection index.
- * @returns {Function} Returns the new find function.
- */
-function createFind(findIndexFunc) {
- return function(collection, predicate, fromIndex) {
- var iterable = Object(collection);
- if (!isArrayLike(collection)) {
- var iteratee = baseIteratee(predicate, 3);
- collection = keys(collection);
- predicate = function(key) { return iteratee(iterable[key], key, iterable); };
- }
- var index = findIndexFunc(collection, predicate, fromIndex);
- return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined;
- };
-}
-
-export default createFind;
diff --git a/node_modules/lodash-es/_createFlow.js b/node_modules/lodash-es/_createFlow.js
deleted file mode 100644
index 8e97084..0000000
--- a/node_modules/lodash-es/_createFlow.js
+++ /dev/null
@@ -1,78 +0,0 @@
-import LodashWrapper from './_LodashWrapper.js';
-import flatRest from './_flatRest.js';
-import getData from './_getData.js';
-import getFuncName from './_getFuncName.js';
-import isArray from './isArray.js';
-import isLaziable from './_isLaziable.js';
-
-/** Error message constants. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_CURRY_FLAG = 8,
- WRAP_PARTIAL_FLAG = 32,
- WRAP_ARY_FLAG = 128,
- WRAP_REARG_FLAG = 256;
-
-/**
- * Creates a `_.flow` or `_.flowRight` function.
- *
- * @private
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {Function} Returns the new flow function.
- */
-function createFlow(fromRight) {
- return flatRest(function(funcs) {
- var length = funcs.length,
- index = length,
- prereq = LodashWrapper.prototype.thru;
-
- if (fromRight) {
- funcs.reverse();
- }
- while (index--) {
- var func = funcs[index];
- if (typeof func != 'function') {
- throw new TypeError(FUNC_ERROR_TEXT);
- }
- if (prereq && !wrapper && getFuncName(func) == 'wrapper') {
- var wrapper = new LodashWrapper([], true);
- }
- }
- index = wrapper ? index : length;
- while (++index < length) {
- func = funcs[index];
-
- var funcName = getFuncName(func),
- data = funcName == 'wrapper' ? getData(func) : undefined;
-
- if (data && isLaziable(data[0]) &&
- data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) &&
- !data[4].length && data[9] == 1
- ) {
- wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]);
- } else {
- wrapper = (func.length == 1 && isLaziable(func))
- ? wrapper[funcName]()
- : wrapper.thru(func);
- }
- }
- return function() {
- var args = arguments,
- value = args[0];
-
- if (wrapper && args.length == 1 && isArray(value)) {
- return wrapper.plant(value).value();
- }
- var index = 0,
- result = length ? funcs[index].apply(this, args) : value;
-
- while (++index < length) {
- result = funcs[index].call(this, result);
- }
- return result;
- };
- });
-}
-
-export default createFlow;
diff --git a/node_modules/lodash-es/_createHybrid.js b/node_modules/lodash-es/_createHybrid.js
deleted file mode 100644
index 300f66b..0000000
--- a/node_modules/lodash-es/_createHybrid.js
+++ /dev/null
@@ -1,92 +0,0 @@
-import composeArgs from './_composeArgs.js';
-import composeArgsRight from './_composeArgsRight.js';
-import countHolders from './_countHolders.js';
-import createCtor from './_createCtor.js';
-import createRecurry from './_createRecurry.js';
-import getHolder from './_getHolder.js';
-import reorder from './_reorder.js';
-import replaceHolders from './_replaceHolders.js';
-import root from './_root.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_BIND_FLAG = 1,
- WRAP_BIND_KEY_FLAG = 2,
- WRAP_CURRY_FLAG = 8,
- WRAP_CURRY_RIGHT_FLAG = 16,
- WRAP_ARY_FLAG = 128,
- WRAP_FLIP_FLAG = 512;
-
-/**
- * Creates a function that wraps `func` to invoke it with optional `this`
- * binding of `thisArg`, partial application, and currying.
- *
- * @private
- * @param {Function|string} func The function or method name to wrap.
- * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
- * @param {*} [thisArg] The `this` binding of `func`.
- * @param {Array} [partials] The arguments to prepend to those provided to
- * the new function.
- * @param {Array} [holders] The `partials` placeholder indexes.
- * @param {Array} [partialsRight] The arguments to append to those provided
- * to the new function.
- * @param {Array} [holdersRight] The `partialsRight` placeholder indexes.
- * @param {Array} [argPos] The argument positions of the new function.
- * @param {number} [ary] The arity cap of `func`.
- * @param {number} [arity] The arity of `func`.
- * @returns {Function} Returns the new wrapped function.
- */
-function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) {
- var isAry = bitmask & WRAP_ARY_FLAG,
- isBind = bitmask & WRAP_BIND_FLAG,
- isBindKey = bitmask & WRAP_BIND_KEY_FLAG,
- isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG),
- isFlip = bitmask & WRAP_FLIP_FLAG,
- Ctor = isBindKey ? undefined : createCtor(func);
-
- function wrapper() {
- var length = arguments.length,
- args = Array(length),
- index = length;
-
- while (index--) {
- args[index] = arguments[index];
- }
- if (isCurried) {
- var placeholder = getHolder(wrapper),
- holdersCount = countHolders(args, placeholder);
- }
- if (partials) {
- args = composeArgs(args, partials, holders, isCurried);
- }
- if (partialsRight) {
- args = composeArgsRight(args, partialsRight, holdersRight, isCurried);
- }
- length -= holdersCount;
- if (isCurried && length < arity) {
- var newHolders = replaceHolders(args, placeholder);
- return createRecurry(
- func, bitmask, createHybrid, wrapper.placeholder, thisArg,
- args, newHolders, argPos, ary, arity - length
- );
- }
- var thisBinding = isBind ? thisArg : this,
- fn = isBindKey ? thisBinding[func] : func;
-
- length = args.length;
- if (argPos) {
- args = reorder(args, argPos);
- } else if (isFlip && length > 1) {
- args.reverse();
- }
- if (isAry && ary < length) {
- args.length = ary;
- }
- if (this && this !== root && this instanceof wrapper) {
- fn = Ctor || createCtor(fn);
- }
- return fn.apply(thisBinding, args);
- }
- return wrapper;
-}
-
-export default createHybrid;
diff --git a/node_modules/lodash-es/_createInverter.js b/node_modules/lodash-es/_createInverter.js
deleted file mode 100644
index 3db3f12..0000000
--- a/node_modules/lodash-es/_createInverter.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import baseInverter from './_baseInverter.js';
-
-/**
- * Creates a function like `_.invertBy`.
- *
- * @private
- * @param {Function} setter The function to set accumulator values.
- * @param {Function} toIteratee The function to resolve iteratees.
- * @returns {Function} Returns the new inverter function.
- */
-function createInverter(setter, toIteratee) {
- return function(object, iteratee) {
- return baseInverter(object, setter, toIteratee(iteratee), {});
- };
-}
-
-export default createInverter;
diff --git a/node_modules/lodash-es/_createMathOperation.js b/node_modules/lodash-es/_createMathOperation.js
deleted file mode 100644
index cffe75d..0000000
--- a/node_modules/lodash-es/_createMathOperation.js
+++ /dev/null
@@ -1,38 +0,0 @@
-import baseToNumber from './_baseToNumber.js';
-import baseToString from './_baseToString.js';
-
-/**
- * Creates a function that performs a mathematical operation on two values.
- *
- * @private
- * @param {Function} operator The function to perform the operation.
- * @param {number} [defaultValue] The value used for `undefined` arguments.
- * @returns {Function} Returns the new mathematical operation function.
- */
-function createMathOperation(operator, defaultValue) {
- return function(value, other) {
- var result;
- if (value === undefined && other === undefined) {
- return defaultValue;
- }
- if (value !== undefined) {
- result = value;
- }
- if (other !== undefined) {
- if (result === undefined) {
- return other;
- }
- if (typeof value == 'string' || typeof other == 'string') {
- value = baseToString(value);
- other = baseToString(other);
- } else {
- value = baseToNumber(value);
- other = baseToNumber(other);
- }
- result = operator(value, other);
- }
- return result;
- };
-}
-
-export default createMathOperation;
diff --git a/node_modules/lodash-es/_createOver.js b/node_modules/lodash-es/_createOver.js
deleted file mode 100644
index a79f373..0000000
--- a/node_modules/lodash-es/_createOver.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import apply from './_apply.js';
-import arrayMap from './_arrayMap.js';
-import baseIteratee from './_baseIteratee.js';
-import baseRest from './_baseRest.js';
-import baseUnary from './_baseUnary.js';
-import flatRest from './_flatRest.js';
-
-/**
- * Creates a function like `_.over`.
- *
- * @private
- * @param {Function} arrayFunc The function to iterate over iteratees.
- * @returns {Function} Returns the new over function.
- */
-function createOver(arrayFunc) {
- return flatRest(function(iteratees) {
- iteratees = arrayMap(iteratees, baseUnary(baseIteratee));
- return baseRest(function(args) {
- var thisArg = this;
- return arrayFunc(iteratees, function(iteratee) {
- return apply(iteratee, thisArg, args);
- });
- });
- });
-}
-
-export default createOver;
diff --git a/node_modules/lodash-es/_createPadding.js b/node_modules/lodash-es/_createPadding.js
deleted file mode 100644
index 1e35cd8..0000000
--- a/node_modules/lodash-es/_createPadding.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import baseRepeat from './_baseRepeat.js';
-import baseToString from './_baseToString.js';
-import castSlice from './_castSlice.js';
-import hasUnicode from './_hasUnicode.js';
-import stringSize from './_stringSize.js';
-import stringToArray from './_stringToArray.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeCeil = Math.ceil;
-
-/**
- * Creates the padding for `string` based on `length`. The `chars` string
- * is truncated if the number of characters exceeds `length`.
- *
- * @private
- * @param {number} length The padding length.
- * @param {string} [chars=' '] The string used as padding.
- * @returns {string} Returns the padding for `string`.
- */
-function createPadding(length, chars) {
- chars = chars === undefined ? ' ' : baseToString(chars);
-
- var charsLength = chars.length;
- if (charsLength < 2) {
- return charsLength ? baseRepeat(chars, length) : chars;
- }
- var result = baseRepeat(chars, nativeCeil(length / stringSize(chars)));
- return hasUnicode(chars)
- ? castSlice(stringToArray(result), 0, length).join('')
- : result.slice(0, length);
-}
-
-export default createPadding;
diff --git a/node_modules/lodash-es/_createPartial.js b/node_modules/lodash-es/_createPartial.js
deleted file mode 100644
index 851a3b6..0000000
--- a/node_modules/lodash-es/_createPartial.js
+++ /dev/null
@@ -1,43 +0,0 @@
-import apply from './_apply.js';
-import createCtor from './_createCtor.js';
-import root from './_root.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_BIND_FLAG = 1;
-
-/**
- * Creates a function that wraps `func` to invoke it with the `this` binding
- * of `thisArg` and `partials` prepended to the arguments it receives.
- *
- * @private
- * @param {Function} func The function to wrap.
- * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
- * @param {*} thisArg The `this` binding of `func`.
- * @param {Array} partials The arguments to prepend to those provided to
- * the new function.
- * @returns {Function} Returns the new wrapped function.
- */
-function createPartial(func, bitmask, thisArg, partials) {
- var isBind = bitmask & WRAP_BIND_FLAG,
- Ctor = createCtor(func);
-
- function wrapper() {
- var argsIndex = -1,
- argsLength = arguments.length,
- leftIndex = -1,
- leftLength = partials.length,
- args = Array(leftLength + argsLength),
- fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;
-
- while (++leftIndex < leftLength) {
- args[leftIndex] = partials[leftIndex];
- }
- while (argsLength--) {
- args[leftIndex++] = arguments[++argsIndex];
- }
- return apply(fn, isBind ? thisArg : this, args);
- }
- return wrapper;
-}
-
-export default createPartial;
diff --git a/node_modules/lodash-es/_createRange.js b/node_modules/lodash-es/_createRange.js
deleted file mode 100644
index 51b427e..0000000
--- a/node_modules/lodash-es/_createRange.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import baseRange from './_baseRange.js';
-import isIterateeCall from './_isIterateeCall.js';
-import toFinite from './toFinite.js';
-
-/**
- * Creates a `_.range` or `_.rangeRight` function.
- *
- * @private
- * @param {boolean} [fromRight] Specify iterating from right to left.
- * @returns {Function} Returns the new range function.
- */
-function createRange(fromRight) {
- return function(start, end, step) {
- if (step && typeof step != 'number' && isIterateeCall(start, end, step)) {
- end = step = undefined;
- }
- // Ensure the sign of `-0` is preserved.
- start = toFinite(start);
- if (end === undefined) {
- end = start;
- start = 0;
- } else {
- end = toFinite(end);
- }
- step = step === undefined ? (start < end ? 1 : -1) : toFinite(step);
- return baseRange(start, end, step, fromRight);
- };
-}
-
-export default createRange;
diff --git a/node_modules/lodash-es/_createRecurry.js b/node_modules/lodash-es/_createRecurry.js
deleted file mode 100644
index d4bd588..0000000
--- a/node_modules/lodash-es/_createRecurry.js
+++ /dev/null
@@ -1,56 +0,0 @@
-import isLaziable from './_isLaziable.js';
-import setData from './_setData.js';
-import setWrapToString from './_setWrapToString.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_BIND_FLAG = 1,
- WRAP_BIND_KEY_FLAG = 2,
- WRAP_CURRY_BOUND_FLAG = 4,
- WRAP_CURRY_FLAG = 8,
- WRAP_PARTIAL_FLAG = 32,
- WRAP_PARTIAL_RIGHT_FLAG = 64;
-
-/**
- * Creates a function that wraps `func` to continue currying.
- *
- * @private
- * @param {Function} func The function to wrap.
- * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
- * @param {Function} wrapFunc The function to create the `func` wrapper.
- * @param {*} placeholder The placeholder value.
- * @param {*} [thisArg] The `this` binding of `func`.
- * @param {Array} [partials] The arguments to prepend to those provided to
- * the new function.
- * @param {Array} [holders] The `partials` placeholder indexes.
- * @param {Array} [argPos] The argument positions of the new function.
- * @param {number} [ary] The arity cap of `func`.
- * @param {number} [arity] The arity of `func`.
- * @returns {Function} Returns the new wrapped function.
- */
-function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) {
- var isCurry = bitmask & WRAP_CURRY_FLAG,
- newHolders = isCurry ? holders : undefined,
- newHoldersRight = isCurry ? undefined : holders,
- newPartials = isCurry ? partials : undefined,
- newPartialsRight = isCurry ? undefined : partials;
-
- bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG);
- bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG);
-
- if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) {
- bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG);
- }
- var newData = [
- func, bitmask, thisArg, newPartials, newHolders, newPartialsRight,
- newHoldersRight, argPos, ary, arity
- ];
-
- var result = wrapFunc.apply(undefined, newData);
- if (isLaziable(func)) {
- setData(result, newData);
- }
- result.placeholder = placeholder;
- return setWrapToString(result, func, bitmask);
-}
-
-export default createRecurry;
diff --git a/node_modules/lodash-es/_createRelationalOperation.js b/node_modules/lodash-es/_createRelationalOperation.js
deleted file mode 100644
index ea208c6..0000000
--- a/node_modules/lodash-es/_createRelationalOperation.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import toNumber from './toNumber.js';
-
-/**
- * Creates a function that performs a relational operation on two values.
- *
- * @private
- * @param {Function} operator The function to perform the operation.
- * @returns {Function} Returns the new relational operation function.
- */
-function createRelationalOperation(operator) {
- return function(value, other) {
- if (!(typeof value == 'string' && typeof other == 'string')) {
- value = toNumber(value);
- other = toNumber(other);
- }
- return operator(value, other);
- };
-}
-
-export default createRelationalOperation;
diff --git a/node_modules/lodash-es/_createRound.js b/node_modules/lodash-es/_createRound.js
deleted file mode 100644
index 8b3edab..0000000
--- a/node_modules/lodash-es/_createRound.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import toInteger from './toInteger.js';
-import toNumber from './toNumber.js';
-import toString from './toString.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min;
-
-/**
- * Creates a function like `_.round`.
- *
- * @private
- * @param {string} methodName The name of the `Math` method to use when rounding.
- * @returns {Function} Returns the new round function.
- */
-function createRound(methodName) {
- var func = Math[methodName];
- return function(number, precision) {
- number = toNumber(number);
- precision = precision == null ? 0 : nativeMin(toInteger(precision), 292);
- if (precision) {
- // Shift with exponential notation to avoid floating-point issues.
- // See [MDN](https://mdn.io/round#Examples) for more details.
- var pair = (toString(number) + 'e').split('e'),
- value = func(pair[0] + 'e' + (+pair[1] + precision));
-
- pair = (toString(value) + 'e').split('e');
- return +(pair[0] + 'e' + (+pair[1] - precision));
- }
- return func(number);
- };
-}
-
-export default createRound;
diff --git a/node_modules/lodash-es/_createSet.js b/node_modules/lodash-es/_createSet.js
deleted file mode 100644
index ead1dd7..0000000
--- a/node_modules/lodash-es/_createSet.js
+++ /dev/null
@@ -1,19 +0,0 @@
-import Set from './_Set.js';
-import noop from './noop.js';
-import setToArray from './_setToArray.js';
-
-/** Used as references for various `Number` constants. */
-var INFINITY = 1 / 0;
-
-/**
- * Creates a set object of `values`.
- *
- * @private
- * @param {Array} values The values to add to the set.
- * @returns {Object} Returns the new set.
- */
-var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) {
- return new Set(values);
-};
-
-export default createSet;
diff --git a/node_modules/lodash-es/_createToPairs.js b/node_modules/lodash-es/_createToPairs.js
deleted file mode 100644
index 433d654..0000000
--- a/node_modules/lodash-es/_createToPairs.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import baseToPairs from './_baseToPairs.js';
-import getTag from './_getTag.js';
-import mapToArray from './_mapToArray.js';
-import setToPairs from './_setToPairs.js';
-
-/** `Object#toString` result references. */
-var mapTag = '[object Map]',
- setTag = '[object Set]';
-
-/**
- * Creates a `_.toPairs` or `_.toPairsIn` function.
- *
- * @private
- * @param {Function} keysFunc The function to get the keys of a given object.
- * @returns {Function} Returns the new pairs function.
- */
-function createToPairs(keysFunc) {
- return function(object) {
- var tag = getTag(object);
- if (tag == mapTag) {
- return mapToArray(object);
- }
- if (tag == setTag) {
- return setToPairs(object);
- }
- return baseToPairs(object, keysFunc(object));
- };
-}
-
-export default createToPairs;
diff --git a/node_modules/lodash-es/_createWrap.js b/node_modules/lodash-es/_createWrap.js
deleted file mode 100644
index 6b05382..0000000
--- a/node_modules/lodash-es/_createWrap.js
+++ /dev/null
@@ -1,106 +0,0 @@
-import baseSetData from './_baseSetData.js';
-import createBind from './_createBind.js';
-import createCurry from './_createCurry.js';
-import createHybrid from './_createHybrid.js';
-import createPartial from './_createPartial.js';
-import getData from './_getData.js';
-import mergeData from './_mergeData.js';
-import setData from './_setData.js';
-import setWrapToString from './_setWrapToString.js';
-import toInteger from './toInteger.js';
-
-/** Error message constants. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_BIND_FLAG = 1,
- WRAP_BIND_KEY_FLAG = 2,
- WRAP_CURRY_FLAG = 8,
- WRAP_CURRY_RIGHT_FLAG = 16,
- WRAP_PARTIAL_FLAG = 32,
- WRAP_PARTIAL_RIGHT_FLAG = 64;
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Creates a function that either curries or invokes `func` with optional
- * `this` binding and partially applied arguments.
- *
- * @private
- * @param {Function|string} func The function or method name to wrap.
- * @param {number} bitmask The bitmask flags.
- * 1 - `_.bind`
- * 2 - `_.bindKey`
- * 4 - `_.curry` or `_.curryRight` of a bound function
- * 8 - `_.curry`
- * 16 - `_.curryRight`
- * 32 - `_.partial`
- * 64 - `_.partialRight`
- * 128 - `_.rearg`
- * 256 - `_.ary`
- * 512 - `_.flip`
- * @param {*} [thisArg] The `this` binding of `func`.
- * @param {Array} [partials] The arguments to be partially applied.
- * @param {Array} [holders] The `partials` placeholder indexes.
- * @param {Array} [argPos] The argument positions of the new function.
- * @param {number} [ary] The arity cap of `func`.
- * @param {number} [arity] The arity of `func`.
- * @returns {Function} Returns the new wrapped function.
- */
-function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) {
- var isBindKey = bitmask & WRAP_BIND_KEY_FLAG;
- if (!isBindKey && typeof func != 'function') {
- throw new TypeError(FUNC_ERROR_TEXT);
- }
- var length = partials ? partials.length : 0;
- if (!length) {
- bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG);
- partials = holders = undefined;
- }
- ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0);
- arity = arity === undefined ? arity : toInteger(arity);
- length -= holders ? holders.length : 0;
-
- if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) {
- var partialsRight = partials,
- holdersRight = holders;
-
- partials = holders = undefined;
- }
- var data = isBindKey ? undefined : getData(func);
-
- var newData = [
- func, bitmask, thisArg, partials, holders, partialsRight, holdersRight,
- argPos, ary, arity
- ];
-
- if (data) {
- mergeData(newData, data);
- }
- func = newData[0];
- bitmask = newData[1];
- thisArg = newData[2];
- partials = newData[3];
- holders = newData[4];
- arity = newData[9] = newData[9] === undefined
- ? (isBindKey ? 0 : func.length)
- : nativeMax(newData[9] - length, 0);
-
- if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) {
- bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG);
- }
- if (!bitmask || bitmask == WRAP_BIND_FLAG) {
- var result = createBind(func, bitmask, thisArg);
- } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) {
- result = createCurry(func, bitmask, arity);
- } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) {
- result = createPartial(func, bitmask, thisArg, partials);
- } else {
- result = createHybrid.apply(undefined, newData);
- }
- var setter = data ? baseSetData : setData;
- return setWrapToString(setter(result, newData), func, bitmask);
-}
-
-export default createWrap;
diff --git a/node_modules/lodash-es/_customDefaultsAssignIn.js b/node_modules/lodash-es/_customDefaultsAssignIn.js
deleted file mode 100644
index 0de9339..0000000
--- a/node_modules/lodash-es/_customDefaultsAssignIn.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import eq from './eq.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Used by `_.defaults` to customize its `_.assignIn` use to assign properties
- * of source objects to the destination object for all destination properties
- * that resolve to `undefined`.
- *
- * @private
- * @param {*} objValue The destination value.
- * @param {*} srcValue The source value.
- * @param {string} key The key of the property to assign.
- * @param {Object} object The parent object of `objValue`.
- * @returns {*} Returns the value to assign.
- */
-function customDefaultsAssignIn(objValue, srcValue, key, object) {
- if (objValue === undefined ||
- (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) {
- return srcValue;
- }
- return objValue;
-}
-
-export default customDefaultsAssignIn;
diff --git a/node_modules/lodash-es/_customDefaultsMerge.js b/node_modules/lodash-es/_customDefaultsMerge.js
deleted file mode 100644
index 63c21c8..0000000
--- a/node_modules/lodash-es/_customDefaultsMerge.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import baseMerge from './_baseMerge.js';
-import isObject from './isObject.js';
-
-/**
- * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source
- * objects into destination objects that are passed thru.
- *
- * @private
- * @param {*} objValue The destination value.
- * @param {*} srcValue The source value.
- * @param {string} key The key of the property to merge.
- * @param {Object} object The parent object of `objValue`.
- * @param {Object} source The parent object of `srcValue`.
- * @param {Object} [stack] Tracks traversed source values and their merged
- * counterparts.
- * @returns {*} Returns the value to assign.
- */
-function customDefaultsMerge(objValue, srcValue, key, object, source, stack) {
- if (isObject(objValue) && isObject(srcValue)) {
- // Recursively merge objects and arrays (susceptible to call stack limits).
- stack.set(srcValue, objValue);
- baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack);
- stack['delete'](srcValue);
- }
- return objValue;
-}
-
-export default customDefaultsMerge;
diff --git a/node_modules/lodash-es/_customOmitClone.js b/node_modules/lodash-es/_customOmitClone.js
deleted file mode 100644
index 00ca441..0000000
--- a/node_modules/lodash-es/_customOmitClone.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import isPlainObject from './isPlainObject.js';
-
-/**
- * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain
- * objects.
- *
- * @private
- * @param {*} value The value to inspect.
- * @param {string} key The key of the property to inspect.
- * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`.
- */
-function customOmitClone(value) {
- return isPlainObject(value) ? undefined : value;
-}
-
-export default customOmitClone;
diff --git a/node_modules/lodash-es/_deburrLetter.js b/node_modules/lodash-es/_deburrLetter.js
deleted file mode 100644
index 88a7b99..0000000
--- a/node_modules/lodash-es/_deburrLetter.js
+++ /dev/null
@@ -1,71 +0,0 @@
-import basePropertyOf from './_basePropertyOf.js';
-
-/** Used to map Latin Unicode letters to basic Latin letters. */
-var deburredLetters = {
- // Latin-1 Supplement block.
- '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A',
- '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a',
- '\xc7': 'C', '\xe7': 'c',
- '\xd0': 'D', '\xf0': 'd',
- '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E',
- '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e',
- '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I',
- '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i',
- '\xd1': 'N', '\xf1': 'n',
- '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O',
- '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o',
- '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U',
- '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u',
- '\xdd': 'Y', '\xfd': 'y', '\xff': 'y',
- '\xc6': 'Ae', '\xe6': 'ae',
- '\xde': 'Th', '\xfe': 'th',
- '\xdf': 'ss',
- // Latin Extended-A block.
- '\u0100': 'A', '\u0102': 'A', '\u0104': 'A',
- '\u0101': 'a', '\u0103': 'a', '\u0105': 'a',
- '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C',
- '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c',
- '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd',
- '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E',
- '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e',
- '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G',
- '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g',
- '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h',
- '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I',
- '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i',
- '\u0134': 'J', '\u0135': 'j',
- '\u0136': 'K', '\u0137': 'k', '\u0138': 'k',
- '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L',
- '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l',
- '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N',
- '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n',
- '\u014c': 'O', '\u014e': 'O', '\u0150': 'O',
- '\u014d': 'o', '\u014f': 'o', '\u0151': 'o',
- '\u0154': 'R', '\u0156': 'R', '\u0158': 'R',
- '\u0155': 'r', '\u0157': 'r', '\u0159': 'r',
- '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S',
- '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's',
- '\u0162': 'T', '\u0164': 'T', '\u0166': 'T',
- '\u0163': 't', '\u0165': 't', '\u0167': 't',
- '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U',
- '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u',
- '\u0174': 'W', '\u0175': 'w',
- '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y',
- '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z',
- '\u017a': 'z', '\u017c': 'z', '\u017e': 'z',
- '\u0132': 'IJ', '\u0133': 'ij',
- '\u0152': 'Oe', '\u0153': 'oe',
- '\u0149': "'n", '\u017f': 's'
-};
-
-/**
- * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A
- * letters to basic Latin letters.
- *
- * @private
- * @param {string} letter The matched letter to deburr.
- * @returns {string} Returns the deburred letter.
- */
-var deburrLetter = basePropertyOf(deburredLetters);
-
-export default deburrLetter;
diff --git a/node_modules/lodash-es/_defineProperty.js b/node_modules/lodash-es/_defineProperty.js
deleted file mode 100644
index 826fc1d..0000000
--- a/node_modules/lodash-es/_defineProperty.js
+++ /dev/null
@@ -1,11 +0,0 @@
-import getNative from './_getNative.js';
-
-var defineProperty = (function() {
- try {
- var func = getNative(Object, 'defineProperty');
- func({}, '', {});
- return func;
- } catch (e) {}
-}());
-
-export default defineProperty;
diff --git a/node_modules/lodash-es/_equalArrays.js b/node_modules/lodash-es/_equalArrays.js
deleted file mode 100644
index 77cafd9..0000000
--- a/node_modules/lodash-es/_equalArrays.js
+++ /dev/null
@@ -1,83 +0,0 @@
-import SetCache from './_SetCache.js';
-import arraySome from './_arraySome.js';
-import cacheHas from './_cacheHas.js';
-
-/** Used to compose bitmasks for value comparisons. */
-var COMPARE_PARTIAL_FLAG = 1,
- COMPARE_UNORDERED_FLAG = 2;
-
-/**
- * A specialized version of `baseIsEqualDeep` for arrays with support for
- * partial deep comparisons.
- *
- * @private
- * @param {Array} array The array to compare.
- * @param {Array} other The other array to compare.
- * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
- * @param {Function} customizer The function to customize comparisons.
- * @param {Function} equalFunc The function to determine equivalents of values.
- * @param {Object} stack Tracks traversed `array` and `other` objects.
- * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.
- */
-function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {
- var isPartial = bitmask & COMPARE_PARTIAL_FLAG,
- arrLength = array.length,
- othLength = other.length;
-
- if (arrLength != othLength && !(isPartial && othLength > arrLength)) {
- return false;
- }
- // Assume cyclic values are equal.
- var stacked = stack.get(array);
- if (stacked && stack.get(other)) {
- return stacked == other;
- }
- var index = -1,
- result = true,
- seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;
-
- stack.set(array, other);
- stack.set(other, array);
-
- // Ignore non-index properties.
- while (++index < arrLength) {
- var arrValue = array[index],
- othValue = other[index];
-
- if (customizer) {
- var compared = isPartial
- ? customizer(othValue, arrValue, index, other, array, stack)
- : customizer(arrValue, othValue, index, array, other, stack);
- }
- if (compared !== undefined) {
- if (compared) {
- continue;
- }
- result = false;
- break;
- }
- // Recursively compare arrays (susceptible to call stack limits).
- if (seen) {
- if (!arraySome(other, function(othValue, othIndex) {
- if (!cacheHas(seen, othIndex) &&
- (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {
- return seen.push(othIndex);
- }
- })) {
- result = false;
- break;
- }
- } else if (!(
- arrValue === othValue ||
- equalFunc(arrValue, othValue, bitmask, customizer, stack)
- )) {
- result = false;
- break;
- }
- }
- stack['delete'](array);
- stack['delete'](other);
- return result;
-}
-
-export default equalArrays;
diff --git a/node_modules/lodash-es/_equalByTag.js b/node_modules/lodash-es/_equalByTag.js
deleted file mode 100644
index a7090ff..0000000
--- a/node_modules/lodash-es/_equalByTag.js
+++ /dev/null
@@ -1,112 +0,0 @@
-import Symbol from './_Symbol.js';
-import Uint8Array from './_Uint8Array.js';
-import eq from './eq.js';
-import equalArrays from './_equalArrays.js';
-import mapToArray from './_mapToArray.js';
-import setToArray from './_setToArray.js';
-
-/** Used to compose bitmasks for value comparisons. */
-var COMPARE_PARTIAL_FLAG = 1,
- COMPARE_UNORDERED_FLAG = 2;
-
-/** `Object#toString` result references. */
-var boolTag = '[object Boolean]',
- dateTag = '[object Date]',
- errorTag = '[object Error]',
- mapTag = '[object Map]',
- numberTag = '[object Number]',
- regexpTag = '[object RegExp]',
- setTag = '[object Set]',
- stringTag = '[object String]',
- symbolTag = '[object Symbol]';
-
-var arrayBufferTag = '[object ArrayBuffer]',
- dataViewTag = '[object DataView]';
-
-/** Used to convert symbols to primitives and strings. */
-var symbolProto = Symbol ? Symbol.prototype : undefined,
- symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;
-
-/**
- * A specialized version of `baseIsEqualDeep` for comparing objects of
- * the same `toStringTag`.
- *
- * **Note:** This function only supports comparing values with tags of
- * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.
- *
- * @private
- * @param {Object} object The object to compare.
- * @param {Object} other The other object to compare.
- * @param {string} tag The `toStringTag` of the objects to compare.
- * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
- * @param {Function} customizer The function to customize comparisons.
- * @param {Function} equalFunc The function to determine equivalents of values.
- * @param {Object} stack Tracks traversed `object` and `other` objects.
- * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
- */
-function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {
- switch (tag) {
- case dataViewTag:
- if ((object.byteLength != other.byteLength) ||
- (object.byteOffset != other.byteOffset)) {
- return false;
- }
- object = object.buffer;
- other = other.buffer;
-
- case arrayBufferTag:
- if ((object.byteLength != other.byteLength) ||
- !equalFunc(new Uint8Array(object), new Uint8Array(other))) {
- return false;
- }
- return true;
-
- case boolTag:
- case dateTag:
- case numberTag:
- // Coerce booleans to `1` or `0` and dates to milliseconds.
- // Invalid dates are coerced to `NaN`.
- return eq(+object, +other);
-
- case errorTag:
- return object.name == other.name && object.message == other.message;
-
- case regexpTag:
- case stringTag:
- // Coerce regexes to strings and treat strings, primitives and objects,
- // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring
- // for more details.
- return object == (other + '');
-
- case mapTag:
- var convert = mapToArray;
-
- case setTag:
- var isPartial = bitmask & COMPARE_PARTIAL_FLAG;
- convert || (convert = setToArray);
-
- if (object.size != other.size && !isPartial) {
- return false;
- }
- // Assume cyclic values are equal.
- var stacked = stack.get(object);
- if (stacked) {
- return stacked == other;
- }
- bitmask |= COMPARE_UNORDERED_FLAG;
-
- // Recursively compare objects (susceptible to call stack limits).
- stack.set(object, other);
- var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);
- stack['delete'](object);
- return result;
-
- case symbolTag:
- if (symbolValueOf) {
- return symbolValueOf.call(object) == symbolValueOf.call(other);
- }
- }
- return false;
-}
-
-export default equalByTag;
diff --git a/node_modules/lodash-es/_equalObjects.js b/node_modules/lodash-es/_equalObjects.js
deleted file mode 100644
index 9f304ab..0000000
--- a/node_modules/lodash-es/_equalObjects.js
+++ /dev/null
@@ -1,89 +0,0 @@
-import getAllKeys from './_getAllKeys.js';
-
-/** Used to compose bitmasks for value comparisons. */
-var COMPARE_PARTIAL_FLAG = 1;
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * A specialized version of `baseIsEqualDeep` for objects with support for
- * partial deep comparisons.
- *
- * @private
- * @param {Object} object The object to compare.
- * @param {Object} other The other object to compare.
- * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.
- * @param {Function} customizer The function to customize comparisons.
- * @param {Function} equalFunc The function to determine equivalents of values.
- * @param {Object} stack Tracks traversed `object` and `other` objects.
- * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.
- */
-function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {
- var isPartial = bitmask & COMPARE_PARTIAL_FLAG,
- objProps = getAllKeys(object),
- objLength = objProps.length,
- othProps = getAllKeys(other),
- othLength = othProps.length;
-
- if (objLength != othLength && !isPartial) {
- return false;
- }
- var index = objLength;
- while (index--) {
- var key = objProps[index];
- if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {
- return false;
- }
- }
- // Assume cyclic values are equal.
- var stacked = stack.get(object);
- if (stacked && stack.get(other)) {
- return stacked == other;
- }
- var result = true;
- stack.set(object, other);
- stack.set(other, object);
-
- var skipCtor = isPartial;
- while (++index < objLength) {
- key = objProps[index];
- var objValue = object[key],
- othValue = other[key];
-
- if (customizer) {
- var compared = isPartial
- ? customizer(othValue, objValue, key, other, object, stack)
- : customizer(objValue, othValue, key, object, other, stack);
- }
- // Recursively compare objects (susceptible to call stack limits).
- if (!(compared === undefined
- ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))
- : compared
- )) {
- result = false;
- break;
- }
- skipCtor || (skipCtor = key == 'constructor');
- }
- if (result && !skipCtor) {
- var objCtor = object.constructor,
- othCtor = other.constructor;
-
- // Non `Object` object instances with different constructors are not equal.
- if (objCtor != othCtor &&
- ('constructor' in object && 'constructor' in other) &&
- !(typeof objCtor == 'function' && objCtor instanceof objCtor &&
- typeof othCtor == 'function' && othCtor instanceof othCtor)) {
- result = false;
- }
- }
- stack['delete'](object);
- stack['delete'](other);
- return result;
-}
-
-export default equalObjects;
diff --git a/node_modules/lodash-es/_escapeHtmlChar.js b/node_modules/lodash-es/_escapeHtmlChar.js
deleted file mode 100644
index 5362403..0000000
--- a/node_modules/lodash-es/_escapeHtmlChar.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import basePropertyOf from './_basePropertyOf.js';
-
-/** Used to map characters to HTML entities. */
-var htmlEscapes = {
- '&': '&',
- '<': '<',
- '>': '>',
- '"': '"',
- "'": '''
-};
-
-/**
- * Used by `_.escape` to convert characters to HTML entities.
- *
- * @private
- * @param {string} chr The matched character to escape.
- * @returns {string} Returns the escaped character.
- */
-var escapeHtmlChar = basePropertyOf(htmlEscapes);
-
-export default escapeHtmlChar;
diff --git a/node_modules/lodash-es/_escapeStringChar.js b/node_modules/lodash-es/_escapeStringChar.js
deleted file mode 100644
index bec2249..0000000
--- a/node_modules/lodash-es/_escapeStringChar.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/** Used to escape characters for inclusion in compiled string literals. */
-var stringEscapes = {
- '\\': '\\',
- "'": "'",
- '\n': 'n',
- '\r': 'r',
- '\u2028': 'u2028',
- '\u2029': 'u2029'
-};
-
-/**
- * Used by `_.template` to escape characters for inclusion in compiled string literals.
- *
- * @private
- * @param {string} chr The matched character to escape.
- * @returns {string} Returns the escaped character.
- */
-function escapeStringChar(chr) {
- return '\\' + stringEscapes[chr];
-}
-
-export default escapeStringChar;
diff --git a/node_modules/lodash-es/_flatRest.js b/node_modules/lodash-es/_flatRest.js
deleted file mode 100644
index 45dc439..0000000
--- a/node_modules/lodash-es/_flatRest.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import flatten from './flatten.js';
-import overRest from './_overRest.js';
-import setToString from './_setToString.js';
-
-/**
- * A specialized version of `baseRest` which flattens the rest array.
- *
- * @private
- * @param {Function} func The function to apply a rest parameter to.
- * @returns {Function} Returns the new function.
- */
-function flatRest(func) {
- return setToString(overRest(func, undefined, flatten), func + '');
-}
-
-export default flatRest;
diff --git a/node_modules/lodash-es/_freeGlobal.js b/node_modules/lodash-es/_freeGlobal.js
deleted file mode 100644
index 5e383a1..0000000
--- a/node_modules/lodash-es/_freeGlobal.js
+++ /dev/null
@@ -1,4 +0,0 @@
-/** Detect free variable `global` from Node.js. */
-var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;
-
-export default freeGlobal;
diff --git a/node_modules/lodash-es/_getAllKeys.js b/node_modules/lodash-es/_getAllKeys.js
deleted file mode 100644
index e9a6772..0000000
--- a/node_modules/lodash-es/_getAllKeys.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import baseGetAllKeys from './_baseGetAllKeys.js';
-import getSymbols from './_getSymbols.js';
-import keys from './keys.js';
-
-/**
- * Creates an array of own enumerable property names and symbols of `object`.
- *
- * @private
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of property names and symbols.
- */
-function getAllKeys(object) {
- return baseGetAllKeys(object, keys, getSymbols);
-}
-
-export default getAllKeys;
diff --git a/node_modules/lodash-es/_getAllKeysIn.js b/node_modules/lodash-es/_getAllKeysIn.js
deleted file mode 100644
index d7fac96..0000000
--- a/node_modules/lodash-es/_getAllKeysIn.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import baseGetAllKeys from './_baseGetAllKeys.js';
-import getSymbolsIn from './_getSymbolsIn.js';
-import keysIn from './keysIn.js';
-
-/**
- * Creates an array of own and inherited enumerable property names and
- * symbols of `object`.
- *
- * @private
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of property names and symbols.
- */
-function getAllKeysIn(object) {
- return baseGetAllKeys(object, keysIn, getSymbolsIn);
-}
-
-export default getAllKeysIn;
diff --git a/node_modules/lodash-es/_getData.js b/node_modules/lodash-es/_getData.js
deleted file mode 100644
index 36265eb..0000000
--- a/node_modules/lodash-es/_getData.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import metaMap from './_metaMap.js';
-import noop from './noop.js';
-
-/**
- * Gets metadata for `func`.
- *
- * @private
- * @param {Function} func The function to query.
- * @returns {*} Returns the metadata for `func`.
- */
-var getData = !metaMap ? noop : function(func) {
- return metaMap.get(func);
-};
-
-export default getData;
diff --git a/node_modules/lodash-es/_getFuncName.js b/node_modules/lodash-es/_getFuncName.js
deleted file mode 100644
index 06e2a3d..0000000
--- a/node_modules/lodash-es/_getFuncName.js
+++ /dev/null
@@ -1,31 +0,0 @@
-import realNames from './_realNames.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Gets the name of `func`.
- *
- * @private
- * @param {Function} func The function to query.
- * @returns {string} Returns the function name.
- */
-function getFuncName(func) {
- var result = (func.name + ''),
- array = realNames[result],
- length = hasOwnProperty.call(realNames, result) ? array.length : 0;
-
- while (length--) {
- var data = array[length],
- otherFunc = data.func;
- if (otherFunc == null || otherFunc == func) {
- return data.name;
- }
- }
- return result;
-}
-
-export default getFuncName;
diff --git a/node_modules/lodash-es/_getHolder.js b/node_modules/lodash-es/_getHolder.js
deleted file mode 100644
index 9f76b19..0000000
--- a/node_modules/lodash-es/_getHolder.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/**
- * Gets the argument placeholder value for `func`.
- *
- * @private
- * @param {Function} func The function to inspect.
- * @returns {*} Returns the placeholder value.
- */
-function getHolder(func) {
- var object = func;
- return object.placeholder;
-}
-
-export default getHolder;
diff --git a/node_modules/lodash-es/_getMapData.js b/node_modules/lodash-es/_getMapData.js
deleted file mode 100644
index 6f55f4f..0000000
--- a/node_modules/lodash-es/_getMapData.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import isKeyable from './_isKeyable.js';
-
-/**
- * Gets the data for `map`.
- *
- * @private
- * @param {Object} map The map to query.
- * @param {string} key The reference key.
- * @returns {*} Returns the map data.
- */
-function getMapData(map, key) {
- var data = map.__data__;
- return isKeyable(key)
- ? data[typeof key == 'string' ? 'string' : 'hash']
- : data.map;
-}
-
-export default getMapData;
diff --git a/node_modules/lodash-es/_getMatchData.js b/node_modules/lodash-es/_getMatchData.js
deleted file mode 100644
index 545d3e8..0000000
--- a/node_modules/lodash-es/_getMatchData.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import isStrictComparable from './_isStrictComparable.js';
-import keys from './keys.js';
-
-/**
- * Gets the property names, values, and compare flags of `object`.
- *
- * @private
- * @param {Object} object The object to query.
- * @returns {Array} Returns the match data of `object`.
- */
-function getMatchData(object) {
- var result = keys(object),
- length = result.length;
-
- while (length--) {
- var key = result[length],
- value = object[key];
-
- result[length] = [key, value, isStrictComparable(value)];
- }
- return result;
-}
-
-export default getMatchData;
diff --git a/node_modules/lodash-es/_getNative.js b/node_modules/lodash-es/_getNative.js
deleted file mode 100644
index d2cb438..0000000
--- a/node_modules/lodash-es/_getNative.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import baseIsNative from './_baseIsNative.js';
-import getValue from './_getValue.js';
-
-/**
- * Gets the native function at `key` of `object`.
- *
- * @private
- * @param {Object} object The object to query.
- * @param {string} key The key of the method to get.
- * @returns {*} Returns the function if it's native, else `undefined`.
- */
-function getNative(object, key) {
- var value = getValue(object, key);
- return baseIsNative(value) ? value : undefined;
-}
-
-export default getNative;
diff --git a/node_modules/lodash-es/_getPrototype.js b/node_modules/lodash-es/_getPrototype.js
deleted file mode 100644
index ce92d48..0000000
--- a/node_modules/lodash-es/_getPrototype.js
+++ /dev/null
@@ -1,6 +0,0 @@
-import overArg from './_overArg.js';
-
-/** Built-in value references. */
-var getPrototype = overArg(Object.getPrototypeOf, Object);
-
-export default getPrototype;
diff --git a/node_modules/lodash-es/_getRawTag.js b/node_modules/lodash-es/_getRawTag.js
deleted file mode 100644
index a89a35b..0000000
--- a/node_modules/lodash-es/_getRawTag.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import Symbol from './_Symbol.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Used to resolve the
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
- * of values.
- */
-var nativeObjectToString = objectProto.toString;
-
-/** Built-in value references. */
-var symToStringTag = Symbol ? Symbol.toStringTag : undefined;
-
-/**
- * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
- *
- * @private
- * @param {*} value The value to query.
- * @returns {string} Returns the raw `toStringTag`.
- */
-function getRawTag(value) {
- var isOwn = hasOwnProperty.call(value, symToStringTag),
- tag = value[symToStringTag];
-
- try {
- value[symToStringTag] = undefined;
- var unmasked = true;
- } catch (e) {}
-
- var result = nativeObjectToString.call(value);
- if (unmasked) {
- if (isOwn) {
- value[symToStringTag] = tag;
- } else {
- delete value[symToStringTag];
- }
- }
- return result;
-}
-
-export default getRawTag;
diff --git a/node_modules/lodash-es/_getSymbols.js b/node_modules/lodash-es/_getSymbols.js
deleted file mode 100644
index 474442a..0000000
--- a/node_modules/lodash-es/_getSymbols.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import arrayFilter from './_arrayFilter.js';
-import stubArray from './stubArray.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Built-in value references. */
-var propertyIsEnumerable = objectProto.propertyIsEnumerable;
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeGetSymbols = Object.getOwnPropertySymbols;
-
-/**
- * Creates an array of the own enumerable symbols of `object`.
- *
- * @private
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of symbols.
- */
-var getSymbols = !nativeGetSymbols ? stubArray : function(object) {
- if (object == null) {
- return [];
- }
- object = Object(object);
- return arrayFilter(nativeGetSymbols(object), function(symbol) {
- return propertyIsEnumerable.call(object, symbol);
- });
-};
-
-export default getSymbols;
diff --git a/node_modules/lodash-es/_getSymbolsIn.js b/node_modules/lodash-es/_getSymbolsIn.js
deleted file mode 100644
index 5f33b71..0000000
--- a/node_modules/lodash-es/_getSymbolsIn.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import arrayPush from './_arrayPush.js';
-import getPrototype from './_getPrototype.js';
-import getSymbols from './_getSymbols.js';
-import stubArray from './stubArray.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeGetSymbols = Object.getOwnPropertySymbols;
-
-/**
- * Creates an array of the own and inherited enumerable symbols of `object`.
- *
- * @private
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of symbols.
- */
-var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {
- var result = [];
- while (object) {
- arrayPush(result, getSymbols(object));
- object = getPrototype(object);
- }
- return result;
-};
-
-export default getSymbolsIn;
diff --git a/node_modules/lodash-es/_getTag.js b/node_modules/lodash-es/_getTag.js
deleted file mode 100644
index 0c86db0..0000000
--- a/node_modules/lodash-es/_getTag.js
+++ /dev/null
@@ -1,58 +0,0 @@
-import DataView from './_DataView.js';
-import Map from './_Map.js';
-import Promise from './_Promise.js';
-import Set from './_Set.js';
-import WeakMap from './_WeakMap.js';
-import baseGetTag from './_baseGetTag.js';
-import toSource from './_toSource.js';
-
-/** `Object#toString` result references. */
-var mapTag = '[object Map]',
- objectTag = '[object Object]',
- promiseTag = '[object Promise]',
- setTag = '[object Set]',
- weakMapTag = '[object WeakMap]';
-
-var dataViewTag = '[object DataView]';
-
-/** Used to detect maps, sets, and weakmaps. */
-var dataViewCtorString = toSource(DataView),
- mapCtorString = toSource(Map),
- promiseCtorString = toSource(Promise),
- setCtorString = toSource(Set),
- weakMapCtorString = toSource(WeakMap);
-
-/**
- * Gets the `toStringTag` of `value`.
- *
- * @private
- * @param {*} value The value to query.
- * @returns {string} Returns the `toStringTag`.
- */
-var getTag = baseGetTag;
-
-// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.
-if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||
- (Map && getTag(new Map) != mapTag) ||
- (Promise && getTag(Promise.resolve()) != promiseTag) ||
- (Set && getTag(new Set) != setTag) ||
- (WeakMap && getTag(new WeakMap) != weakMapTag)) {
- getTag = function(value) {
- var result = baseGetTag(value),
- Ctor = result == objectTag ? value.constructor : undefined,
- ctorString = Ctor ? toSource(Ctor) : '';
-
- if (ctorString) {
- switch (ctorString) {
- case dataViewCtorString: return dataViewTag;
- case mapCtorString: return mapTag;
- case promiseCtorString: return promiseTag;
- case setCtorString: return setTag;
- case weakMapCtorString: return weakMapTag;
- }
- }
- return result;
- };
-}
-
-export default getTag;
diff --git a/node_modules/lodash-es/_getValue.js b/node_modules/lodash-es/_getValue.js
deleted file mode 100644
index cbdd538..0000000
--- a/node_modules/lodash-es/_getValue.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/**
- * Gets the value at `key` of `object`.
- *
- * @private
- * @param {Object} [object] The object to query.
- * @param {string} key The key of the property to get.
- * @returns {*} Returns the property value.
- */
-function getValue(object, key) {
- return object == null ? undefined : object[key];
-}
-
-export default getValue;
diff --git a/node_modules/lodash-es/_getView.js b/node_modules/lodash-es/_getView.js
deleted file mode 100644
index 14fbba4..0000000
--- a/node_modules/lodash-es/_getView.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max,
- nativeMin = Math.min;
-
-/**
- * Gets the view, applying any `transforms` to the `start` and `end` positions.
- *
- * @private
- * @param {number} start The start of the view.
- * @param {number} end The end of the view.
- * @param {Array} transforms The transformations to apply to the view.
- * @returns {Object} Returns an object containing the `start` and `end`
- * positions of the view.
- */
-function getView(start, end, transforms) {
- var index = -1,
- length = transforms.length;
-
- while (++index < length) {
- var data = transforms[index],
- size = data.size;
-
- switch (data.type) {
- case 'drop': start += size; break;
- case 'dropRight': end -= size; break;
- case 'take': end = nativeMin(end, start + size); break;
- case 'takeRight': start = nativeMax(start, end - size); break;
- }
- }
- return { 'start': start, 'end': end };
-}
-
-export default getView;
diff --git a/node_modules/lodash-es/_getWrapDetails.js b/node_modules/lodash-es/_getWrapDetails.js
deleted file mode 100644
index 1de838d..0000000
--- a/node_modules/lodash-es/_getWrapDetails.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/** Used to match wrap detail comments. */
-var reWrapDetails = /\{\n\/\* \[wrapped with (.+)\] \*/,
- reSplitDetails = /,? & /;
-
-/**
- * Extracts wrapper details from the `source` body comment.
- *
- * @private
- * @param {string} source The source to inspect.
- * @returns {Array} Returns the wrapper details.
- */
-function getWrapDetails(source) {
- var match = source.match(reWrapDetails);
- return match ? match[1].split(reSplitDetails) : [];
-}
-
-export default getWrapDetails;
diff --git a/node_modules/lodash-es/_hasPath.js b/node_modules/lodash-es/_hasPath.js
deleted file mode 100644
index 7decc6c..0000000
--- a/node_modules/lodash-es/_hasPath.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import castPath from './_castPath.js';
-import isArguments from './isArguments.js';
-import isArray from './isArray.js';
-import isIndex from './_isIndex.js';
-import isLength from './isLength.js';
-import toKey from './_toKey.js';
-
-/**
- * Checks if `path` exists on `object`.
- *
- * @private
- * @param {Object} object The object to query.
- * @param {Array|string} path The path to check.
- * @param {Function} hasFunc The function to check properties.
- * @returns {boolean} Returns `true` if `path` exists, else `false`.
- */
-function hasPath(object, path, hasFunc) {
- path = castPath(path, object);
-
- var index = -1,
- length = path.length,
- result = false;
-
- while (++index < length) {
- var key = toKey(path[index]);
- if (!(result = object != null && hasFunc(object, key))) {
- break;
- }
- object = object[key];
- }
- if (result || ++index != length) {
- return result;
- }
- length = object == null ? 0 : object.length;
- return !!length && isLength(length) && isIndex(key, length) &&
- (isArray(object) || isArguments(object));
-}
-
-export default hasPath;
diff --git a/node_modules/lodash-es/_hasUnicode.js b/node_modules/lodash-es/_hasUnicode.js
deleted file mode 100644
index c080898..0000000
--- a/node_modules/lodash-es/_hasUnicode.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/** Used to compose unicode character classes. */
-var rsAstralRange = '\\ud800-\\udfff',
- rsComboMarksRange = '\\u0300-\\u036f',
- reComboHalfMarksRange = '\\ufe20-\\ufe2f',
- rsComboSymbolsRange = '\\u20d0-\\u20ff',
- rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,
- rsVarRange = '\\ufe0e\\ufe0f';
-
-/** Used to compose unicode capture groups. */
-var rsZWJ = '\\u200d';
-
-/** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */
-var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']');
-
-/**
- * Checks if `string` contains Unicode symbols.
- *
- * @private
- * @param {string} string The string to inspect.
- * @returns {boolean} Returns `true` if a symbol is found, else `false`.
- */
-function hasUnicode(string) {
- return reHasUnicode.test(string);
-}
-
-export default hasUnicode;
diff --git a/node_modules/lodash-es/_hasUnicodeWord.js b/node_modules/lodash-es/_hasUnicodeWord.js
deleted file mode 100644
index eecc5dd..0000000
--- a/node_modules/lodash-es/_hasUnicodeWord.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/** Used to detect strings that need a more robust regexp to match words. */
-var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;
-
-/**
- * Checks if `string` contains a word composed of Unicode symbols.
- *
- * @private
- * @param {string} string The string to inspect.
- * @returns {boolean} Returns `true` if a word is found, else `false`.
- */
-function hasUnicodeWord(string) {
- return reHasUnicodeWord.test(string);
-}
-
-export default hasUnicodeWord;
diff --git a/node_modules/lodash-es/_hashClear.js b/node_modules/lodash-es/_hashClear.js
deleted file mode 100644
index 5b7cc2d..0000000
--- a/node_modules/lodash-es/_hashClear.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import nativeCreate from './_nativeCreate.js';
-
-/**
- * Removes all key-value entries from the hash.
- *
- * @private
- * @name clear
- * @memberOf Hash
- */
-function hashClear() {
- this.__data__ = nativeCreate ? nativeCreate(null) : {};
- this.size = 0;
-}
-
-export default hashClear;
diff --git a/node_modules/lodash-es/_hashDelete.js b/node_modules/lodash-es/_hashDelete.js
deleted file mode 100644
index 509839f..0000000
--- a/node_modules/lodash-es/_hashDelete.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Removes `key` and its value from the hash.
- *
- * @private
- * @name delete
- * @memberOf Hash
- * @param {Object} hash The hash to modify.
- * @param {string} key The key of the value to remove.
- * @returns {boolean} Returns `true` if the entry was removed, else `false`.
- */
-function hashDelete(key) {
- var result = this.has(key) && delete this.__data__[key];
- this.size -= result ? 1 : 0;
- return result;
-}
-
-export default hashDelete;
diff --git a/node_modules/lodash-es/_hashGet.js b/node_modules/lodash-es/_hashGet.js
deleted file mode 100644
index 4a3f43b..0000000
--- a/node_modules/lodash-es/_hashGet.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import nativeCreate from './_nativeCreate.js';
-
-/** Used to stand-in for `undefined` hash values. */
-var HASH_UNDEFINED = '__lodash_hash_undefined__';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Gets the hash value for `key`.
- *
- * @private
- * @name get
- * @memberOf Hash
- * @param {string} key The key of the value to get.
- * @returns {*} Returns the entry value.
- */
-function hashGet(key) {
- var data = this.__data__;
- if (nativeCreate) {
- var result = data[key];
- return result === HASH_UNDEFINED ? undefined : result;
- }
- return hasOwnProperty.call(data, key) ? data[key] : undefined;
-}
-
-export default hashGet;
diff --git a/node_modules/lodash-es/_hashHas.js b/node_modules/lodash-es/_hashHas.js
deleted file mode 100644
index 6db025d..0000000
--- a/node_modules/lodash-es/_hashHas.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import nativeCreate from './_nativeCreate.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Checks if a hash value for `key` exists.
- *
- * @private
- * @name has
- * @memberOf Hash
- * @param {string} key The key of the entry to check.
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
- */
-function hashHas(key) {
- var data = this.__data__;
- return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);
-}
-
-export default hashHas;
diff --git a/node_modules/lodash-es/_hashSet.js b/node_modules/lodash-es/_hashSet.js
deleted file mode 100644
index 63a0115..0000000
--- a/node_modules/lodash-es/_hashSet.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import nativeCreate from './_nativeCreate.js';
-
-/** Used to stand-in for `undefined` hash values. */
-var HASH_UNDEFINED = '__lodash_hash_undefined__';
-
-/**
- * Sets the hash `key` to `value`.
- *
- * @private
- * @name set
- * @memberOf Hash
- * @param {string} key The key of the value to set.
- * @param {*} value The value to set.
- * @returns {Object} Returns the hash instance.
- */
-function hashSet(key, value) {
- var data = this.__data__;
- this.size += this.has(key) ? 0 : 1;
- data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;
- return this;
-}
-
-export default hashSet;
diff --git a/node_modules/lodash-es/_initCloneArray.js b/node_modules/lodash-es/_initCloneArray.js
deleted file mode 100644
index 67478a8..0000000
--- a/node_modules/lodash-es/_initCloneArray.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Initializes an array clone.
- *
- * @private
- * @param {Array} array The array to clone.
- * @returns {Array} Returns the initialized clone.
- */
-function initCloneArray(array) {
- var length = array.length,
- result = new array.constructor(length);
-
- // Add properties assigned by `RegExp#exec`.
- if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {
- result.index = array.index;
- result.input = array.input;
- }
- return result;
-}
-
-export default initCloneArray;
diff --git a/node_modules/lodash-es/_initCloneByTag.js b/node_modules/lodash-es/_initCloneByTag.js
deleted file mode 100644
index 0b03f8d..0000000
--- a/node_modules/lodash-es/_initCloneByTag.js
+++ /dev/null
@@ -1,77 +0,0 @@
-import cloneArrayBuffer from './_cloneArrayBuffer.js';
-import cloneDataView from './_cloneDataView.js';
-import cloneRegExp from './_cloneRegExp.js';
-import cloneSymbol from './_cloneSymbol.js';
-import cloneTypedArray from './_cloneTypedArray.js';
-
-/** `Object#toString` result references. */
-var boolTag = '[object Boolean]',
- dateTag = '[object Date]',
- mapTag = '[object Map]',
- numberTag = '[object Number]',
- regexpTag = '[object RegExp]',
- setTag = '[object Set]',
- stringTag = '[object String]',
- symbolTag = '[object Symbol]';
-
-var arrayBufferTag = '[object ArrayBuffer]',
- dataViewTag = '[object DataView]',
- float32Tag = '[object Float32Array]',
- float64Tag = '[object Float64Array]',
- int8Tag = '[object Int8Array]',
- int16Tag = '[object Int16Array]',
- int32Tag = '[object Int32Array]',
- uint8Tag = '[object Uint8Array]',
- uint8ClampedTag = '[object Uint8ClampedArray]',
- uint16Tag = '[object Uint16Array]',
- uint32Tag = '[object Uint32Array]';
-
-/**
- * Initializes an object clone based on its `toStringTag`.
- *
- * **Note:** This function only supports cloning values with tags of
- * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.
- *
- * @private
- * @param {Object} object The object to clone.
- * @param {string} tag The `toStringTag` of the object to clone.
- * @param {boolean} [isDeep] Specify a deep clone.
- * @returns {Object} Returns the initialized clone.
- */
-function initCloneByTag(object, tag, isDeep) {
- var Ctor = object.constructor;
- switch (tag) {
- case arrayBufferTag:
- return cloneArrayBuffer(object);
-
- case boolTag:
- case dateTag:
- return new Ctor(+object);
-
- case dataViewTag:
- return cloneDataView(object, isDeep);
-
- case float32Tag: case float64Tag:
- case int8Tag: case int16Tag: case int32Tag:
- case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:
- return cloneTypedArray(object, isDeep);
-
- case mapTag:
- return new Ctor;
-
- case numberTag:
- case stringTag:
- return new Ctor(object);
-
- case regexpTag:
- return cloneRegExp(object);
-
- case setTag:
- return new Ctor;
-
- case symbolTag:
- return cloneSymbol(object);
- }
-}
-
-export default initCloneByTag;
diff --git a/node_modules/lodash-es/_initCloneObject.js b/node_modules/lodash-es/_initCloneObject.js
deleted file mode 100644
index bdcf19b..0000000
--- a/node_modules/lodash-es/_initCloneObject.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import baseCreate from './_baseCreate.js';
-import getPrototype from './_getPrototype.js';
-import isPrototype from './_isPrototype.js';
-
-/**
- * Initializes an object clone.
- *
- * @private
- * @param {Object} object The object to clone.
- * @returns {Object} Returns the initialized clone.
- */
-function initCloneObject(object) {
- return (typeof object.constructor == 'function' && !isPrototype(object))
- ? baseCreate(getPrototype(object))
- : {};
-}
-
-export default initCloneObject;
diff --git a/node_modules/lodash-es/_insertWrapDetails.js b/node_modules/lodash-es/_insertWrapDetails.js
deleted file mode 100644
index 5191b7a..0000000
--- a/node_modules/lodash-es/_insertWrapDetails.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/** Used to match wrap detail comments. */
-var reWrapComment = /\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/;
-
-/**
- * Inserts wrapper `details` in a comment at the top of the `source` body.
- *
- * @private
- * @param {string} source The source to modify.
- * @returns {Array} details The details to insert.
- * @returns {string} Returns the modified source.
- */
-function insertWrapDetails(source, details) {
- var length = details.length;
- if (!length) {
- return source;
- }
- var lastIndex = length - 1;
- details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex];
- details = details.join(length > 2 ? ', ' : ' ');
- return source.replace(reWrapComment, '{\n/* [wrapped with ' + details + '] */\n');
-}
-
-export default insertWrapDetails;
diff --git a/node_modules/lodash-es/_isFlattenable.js b/node_modules/lodash-es/_isFlattenable.js
deleted file mode 100644
index 3bdef96..0000000
--- a/node_modules/lodash-es/_isFlattenable.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import Symbol from './_Symbol.js';
-import isArguments from './isArguments.js';
-import isArray from './isArray.js';
-
-/** Built-in value references. */
-var spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined;
-
-/**
- * Checks if `value` is a flattenable `arguments` object or array.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.
- */
-function isFlattenable(value) {
- return isArray(value) || isArguments(value) ||
- !!(spreadableSymbol && value && value[spreadableSymbol]);
-}
-
-export default isFlattenable;
diff --git a/node_modules/lodash-es/_isIndex.js b/node_modules/lodash-es/_isIndex.js
deleted file mode 100644
index b6cb47f..0000000
--- a/node_modules/lodash-es/_isIndex.js
+++ /dev/null
@@ -1,25 +0,0 @@
-/** Used as references for various `Number` constants. */
-var MAX_SAFE_INTEGER = 9007199254740991;
-
-/** Used to detect unsigned integer values. */
-var reIsUint = /^(?:0|[1-9]\d*)$/;
-
-/**
- * Checks if `value` is a valid array-like index.
- *
- * @private
- * @param {*} value The value to check.
- * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
- * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
- */
-function isIndex(value, length) {
- var type = typeof value;
- length = length == null ? MAX_SAFE_INTEGER : length;
-
- return !!length &&
- (type == 'number' ||
- (type != 'symbol' && reIsUint.test(value))) &&
- (value > -1 && value % 1 == 0 && value < length);
-}
-
-export default isIndex;
diff --git a/node_modules/lodash-es/_isIterateeCall.js b/node_modules/lodash-es/_isIterateeCall.js
deleted file mode 100644
index 1fb6dc9..0000000
--- a/node_modules/lodash-es/_isIterateeCall.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import eq from './eq.js';
-import isArrayLike from './isArrayLike.js';
-import isIndex from './_isIndex.js';
-import isObject from './isObject.js';
-
-/**
- * Checks if the given arguments are from an iteratee call.
- *
- * @private
- * @param {*} value The potential iteratee value argument.
- * @param {*} index The potential iteratee index or key argument.
- * @param {*} object The potential iteratee object argument.
- * @returns {boolean} Returns `true` if the arguments are from an iteratee call,
- * else `false`.
- */
-function isIterateeCall(value, index, object) {
- if (!isObject(object)) {
- return false;
- }
- var type = typeof index;
- if (type == 'number'
- ? (isArrayLike(object) && isIndex(index, object.length))
- : (type == 'string' && index in object)
- ) {
- return eq(object[index], value);
- }
- return false;
-}
-
-export default isIterateeCall;
diff --git a/node_modules/lodash-es/_isKey.js b/node_modules/lodash-es/_isKey.js
deleted file mode 100644
index 3e36bce..0000000
--- a/node_modules/lodash-es/_isKey.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import isArray from './isArray.js';
-import isSymbol from './isSymbol.js';
-
-/** Used to match property names within property paths. */
-var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,
- reIsPlainProp = /^\w*$/;
-
-/**
- * Checks if `value` is a property name and not a property path.
- *
- * @private
- * @param {*} value The value to check.
- * @param {Object} [object] The object to query keys on.
- * @returns {boolean} Returns `true` if `value` is a property name, else `false`.
- */
-function isKey(value, object) {
- if (isArray(value)) {
- return false;
- }
- var type = typeof value;
- if (type == 'number' || type == 'symbol' || type == 'boolean' ||
- value == null || isSymbol(value)) {
- return true;
- }
- return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||
- (object != null && value in Object(object));
-}
-
-export default isKey;
diff --git a/node_modules/lodash-es/_isKeyable.js b/node_modules/lodash-es/_isKeyable.js
deleted file mode 100644
index 2271596..0000000
--- a/node_modules/lodash-es/_isKeyable.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Checks if `value` is suitable for use as unique object key.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is suitable, else `false`.
- */
-function isKeyable(value) {
- var type = typeof value;
- return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')
- ? (value !== '__proto__')
- : (value === null);
-}
-
-export default isKeyable;
diff --git a/node_modules/lodash-es/_isLaziable.js b/node_modules/lodash-es/_isLaziable.js
deleted file mode 100644
index 45a8b1f..0000000
--- a/node_modules/lodash-es/_isLaziable.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import LazyWrapper from './_LazyWrapper.js';
-import getData from './_getData.js';
-import getFuncName from './_getFuncName.js';
-import lodash from './wrapperLodash.js';
-
-/**
- * Checks if `func` has a lazy counterpart.
- *
- * @private
- * @param {Function} func The function to check.
- * @returns {boolean} Returns `true` if `func` has a lazy counterpart,
- * else `false`.
- */
-function isLaziable(func) {
- var funcName = getFuncName(func),
- other = lodash[funcName];
-
- if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) {
- return false;
- }
- if (func === other) {
- return true;
- }
- var data = getData(other);
- return !!data && func === data[0];
-}
-
-export default isLaziable;
diff --git a/node_modules/lodash-es/_isMaskable.js b/node_modules/lodash-es/_isMaskable.js
deleted file mode 100644
index 4c17c1c..0000000
--- a/node_modules/lodash-es/_isMaskable.js
+++ /dev/null
@@ -1,14 +0,0 @@
-import coreJsData from './_coreJsData.js';
-import isFunction from './isFunction.js';
-import stubFalse from './stubFalse.js';
-
-/**
- * Checks if `func` is capable of being masked.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `func` is maskable, else `false`.
- */
-var isMaskable = coreJsData ? isFunction : stubFalse;
-
-export default isMaskable;
diff --git a/node_modules/lodash-es/_isMasked.js b/node_modules/lodash-es/_isMasked.js
deleted file mode 100644
index e3f9d6f..0000000
--- a/node_modules/lodash-es/_isMasked.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import coreJsData from './_coreJsData.js';
-
-/** Used to detect methods masquerading as native. */
-var maskSrcKey = (function() {
- var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');
- return uid ? ('Symbol(src)_1.' + uid) : '';
-}());
-
-/**
- * Checks if `func` has its source masked.
- *
- * @private
- * @param {Function} func The function to check.
- * @returns {boolean} Returns `true` if `func` is masked, else `false`.
- */
-function isMasked(func) {
- return !!maskSrcKey && (maskSrcKey in func);
-}
-
-export default isMasked;
diff --git a/node_modules/lodash-es/_isPrototype.js b/node_modules/lodash-es/_isPrototype.js
deleted file mode 100644
index f6c7660..0000000
--- a/node_modules/lodash-es/_isPrototype.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/**
- * Checks if `value` is likely a prototype object.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
- */
-function isPrototype(value) {
- var Ctor = value && value.constructor,
- proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;
-
- return value === proto;
-}
-
-export default isPrototype;
diff --git a/node_modules/lodash-es/_isStrictComparable.js b/node_modules/lodash-es/_isStrictComparable.js
deleted file mode 100644
index 087efdd..0000000
--- a/node_modules/lodash-es/_isStrictComparable.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import isObject from './isObject.js';
-
-/**
- * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.
- *
- * @private
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` if suitable for strict
- * equality comparisons, else `false`.
- */
-function isStrictComparable(value) {
- return value === value && !isObject(value);
-}
-
-export default isStrictComparable;
diff --git a/node_modules/lodash-es/_iteratorToArray.js b/node_modules/lodash-es/_iteratorToArray.js
deleted file mode 100644
index 315bf2b..0000000
--- a/node_modules/lodash-es/_iteratorToArray.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Converts `iterator` to an array.
- *
- * @private
- * @param {Object} iterator The iterator to convert.
- * @returns {Array} Returns the converted array.
- */
-function iteratorToArray(iterator) {
- var data,
- result = [];
-
- while (!(data = iterator.next()).done) {
- result.push(data.value);
- }
- return result;
-}
-
-export default iteratorToArray;
diff --git a/node_modules/lodash-es/_lazyClone.js b/node_modules/lodash-es/_lazyClone.js
deleted file mode 100644
index d2f1629..0000000
--- a/node_modules/lodash-es/_lazyClone.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import LazyWrapper from './_LazyWrapper.js';
-import copyArray from './_copyArray.js';
-
-/**
- * Creates a clone of the lazy wrapper object.
- *
- * @private
- * @name clone
- * @memberOf LazyWrapper
- * @returns {Object} Returns the cloned `LazyWrapper` object.
- */
-function lazyClone() {
- var result = new LazyWrapper(this.__wrapped__);
- result.__actions__ = copyArray(this.__actions__);
- result.__dir__ = this.__dir__;
- result.__filtered__ = this.__filtered__;
- result.__iteratees__ = copyArray(this.__iteratees__);
- result.__takeCount__ = this.__takeCount__;
- result.__views__ = copyArray(this.__views__);
- return result;
-}
-
-export default lazyClone;
diff --git a/node_modules/lodash-es/_lazyReverse.js b/node_modules/lodash-es/_lazyReverse.js
deleted file mode 100644
index e79a9bc..0000000
--- a/node_modules/lodash-es/_lazyReverse.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import LazyWrapper from './_LazyWrapper.js';
-
-/**
- * Reverses the direction of lazy iteration.
- *
- * @private
- * @name reverse
- * @memberOf LazyWrapper
- * @returns {Object} Returns the new reversed `LazyWrapper` object.
- */
-function lazyReverse() {
- if (this.__filtered__) {
- var result = new LazyWrapper(this);
- result.__dir__ = -1;
- result.__filtered__ = true;
- } else {
- result = this.clone();
- result.__dir__ *= -1;
- }
- return result;
-}
-
-export default lazyReverse;
diff --git a/node_modules/lodash-es/_lazyValue.js b/node_modules/lodash-es/_lazyValue.js
deleted file mode 100644
index ca2e011..0000000
--- a/node_modules/lodash-es/_lazyValue.js
+++ /dev/null
@@ -1,69 +0,0 @@
-import baseWrapperValue from './_baseWrapperValue.js';
-import getView from './_getView.js';
-import isArray from './isArray.js';
-
-/** Used to indicate the type of lazy iteratees. */
-var LAZY_FILTER_FLAG = 1,
- LAZY_MAP_FLAG = 2;
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min;
-
-/**
- * Extracts the unwrapped value from its lazy wrapper.
- *
- * @private
- * @name value
- * @memberOf LazyWrapper
- * @returns {*} Returns the unwrapped value.
- */
-function lazyValue() {
- var array = this.__wrapped__.value(),
- dir = this.__dir__,
- isArr = isArray(array),
- isRight = dir < 0,
- arrLength = isArr ? array.length : 0,
- view = getView(0, arrLength, this.__views__),
- start = view.start,
- end = view.end,
- length = end - start,
- index = isRight ? end : (start - 1),
- iteratees = this.__iteratees__,
- iterLength = iteratees.length,
- resIndex = 0,
- takeCount = nativeMin(length, this.__takeCount__);
-
- if (!isArr || (!isRight && arrLength == length && takeCount == length)) {
- return baseWrapperValue(array, this.__actions__);
- }
- var result = [];
-
- outer:
- while (length-- && resIndex < takeCount) {
- index += dir;
-
- var iterIndex = -1,
- value = array[index];
-
- while (++iterIndex < iterLength) {
- var data = iteratees[iterIndex],
- iteratee = data.iteratee,
- type = data.type,
- computed = iteratee(value);
-
- if (type == LAZY_MAP_FLAG) {
- value = computed;
- } else if (!computed) {
- if (type == LAZY_FILTER_FLAG) {
- continue outer;
- } else {
- break outer;
- }
- }
- }
- result[resIndex++] = value;
- }
- return result;
-}
-
-export default lazyValue;
diff --git a/node_modules/lodash-es/_listCacheClear.js b/node_modules/lodash-es/_listCacheClear.js
deleted file mode 100644
index 8cfa184..0000000
--- a/node_modules/lodash-es/_listCacheClear.js
+++ /dev/null
@@ -1,13 +0,0 @@
-/**
- * Removes all key-value entries from the list cache.
- *
- * @private
- * @name clear
- * @memberOf ListCache
- */
-function listCacheClear() {
- this.__data__ = [];
- this.size = 0;
-}
-
-export default listCacheClear;
diff --git a/node_modules/lodash-es/_listCacheDelete.js b/node_modules/lodash-es/_listCacheDelete.js
deleted file mode 100644
index b08c834..0000000
--- a/node_modules/lodash-es/_listCacheDelete.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import assocIndexOf from './_assocIndexOf.js';
-
-/** Used for built-in method references. */
-var arrayProto = Array.prototype;
-
-/** Built-in value references. */
-var splice = arrayProto.splice;
-
-/**
- * Removes `key` and its value from the list cache.
- *
- * @private
- * @name delete
- * @memberOf ListCache
- * @param {string} key The key of the value to remove.
- * @returns {boolean} Returns `true` if the entry was removed, else `false`.
- */
-function listCacheDelete(key) {
- var data = this.__data__,
- index = assocIndexOf(data, key);
-
- if (index < 0) {
- return false;
- }
- var lastIndex = data.length - 1;
- if (index == lastIndex) {
- data.pop();
- } else {
- splice.call(data, index, 1);
- }
- --this.size;
- return true;
-}
-
-export default listCacheDelete;
diff --git a/node_modules/lodash-es/_listCacheGet.js b/node_modules/lodash-es/_listCacheGet.js
deleted file mode 100644
index 53ce001..0000000
--- a/node_modules/lodash-es/_listCacheGet.js
+++ /dev/null
@@ -1,19 +0,0 @@
-import assocIndexOf from './_assocIndexOf.js';
-
-/**
- * Gets the list cache value for `key`.
- *
- * @private
- * @name get
- * @memberOf ListCache
- * @param {string} key The key of the value to get.
- * @returns {*} Returns the entry value.
- */
-function listCacheGet(key) {
- var data = this.__data__,
- index = assocIndexOf(data, key);
-
- return index < 0 ? undefined : data[index][1];
-}
-
-export default listCacheGet;
diff --git a/node_modules/lodash-es/_listCacheHas.js b/node_modules/lodash-es/_listCacheHas.js
deleted file mode 100644
index 8701cae..0000000
--- a/node_modules/lodash-es/_listCacheHas.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import assocIndexOf from './_assocIndexOf.js';
-
-/**
- * Checks if a list cache value for `key` exists.
- *
- * @private
- * @name has
- * @memberOf ListCache
- * @param {string} key The key of the entry to check.
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
- */
-function listCacheHas(key) {
- return assocIndexOf(this.__data__, key) > -1;
-}
-
-export default listCacheHas;
diff --git a/node_modules/lodash-es/_listCacheSet.js b/node_modules/lodash-es/_listCacheSet.js
deleted file mode 100644
index 8c5a198..0000000
--- a/node_modules/lodash-es/_listCacheSet.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import assocIndexOf from './_assocIndexOf.js';
-
-/**
- * Sets the list cache `key` to `value`.
- *
- * @private
- * @name set
- * @memberOf ListCache
- * @param {string} key The key of the value to set.
- * @param {*} value The value to set.
- * @returns {Object} Returns the list cache instance.
- */
-function listCacheSet(key, value) {
- var data = this.__data__,
- index = assocIndexOf(data, key);
-
- if (index < 0) {
- ++this.size;
- data.push([key, value]);
- } else {
- data[index][1] = value;
- }
- return this;
-}
-
-export default listCacheSet;
diff --git a/node_modules/lodash-es/_mapCacheClear.js b/node_modules/lodash-es/_mapCacheClear.js
deleted file mode 100644
index e6b3d9c..0000000
--- a/node_modules/lodash-es/_mapCacheClear.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import Hash from './_Hash.js';
-import ListCache from './_ListCache.js';
-import Map from './_Map.js';
-
-/**
- * Removes all key-value entries from the map.
- *
- * @private
- * @name clear
- * @memberOf MapCache
- */
-function mapCacheClear() {
- this.size = 0;
- this.__data__ = {
- 'hash': new Hash,
- 'map': new (Map || ListCache),
- 'string': new Hash
- };
-}
-
-export default mapCacheClear;
diff --git a/node_modules/lodash-es/_mapCacheDelete.js b/node_modules/lodash-es/_mapCacheDelete.js
deleted file mode 100644
index 1afc18f..0000000
--- a/node_modules/lodash-es/_mapCacheDelete.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import getMapData from './_getMapData.js';
-
-/**
- * Removes `key` and its value from the map.
- *
- * @private
- * @name delete
- * @memberOf MapCache
- * @param {string} key The key of the value to remove.
- * @returns {boolean} Returns `true` if the entry was removed, else `false`.
- */
-function mapCacheDelete(key) {
- var result = getMapData(this, key)['delete'](key);
- this.size -= result ? 1 : 0;
- return result;
-}
-
-export default mapCacheDelete;
diff --git a/node_modules/lodash-es/_mapCacheGet.js b/node_modules/lodash-es/_mapCacheGet.js
deleted file mode 100644
index 3b481e0..0000000
--- a/node_modules/lodash-es/_mapCacheGet.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import getMapData from './_getMapData.js';
-
-/**
- * Gets the map value for `key`.
- *
- * @private
- * @name get
- * @memberOf MapCache
- * @param {string} key The key of the value to get.
- * @returns {*} Returns the entry value.
- */
-function mapCacheGet(key) {
- return getMapData(this, key).get(key);
-}
-
-export default mapCacheGet;
diff --git a/node_modules/lodash-es/_mapCacheHas.js b/node_modules/lodash-es/_mapCacheHas.js
deleted file mode 100644
index 9de3e7f..0000000
--- a/node_modules/lodash-es/_mapCacheHas.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import getMapData from './_getMapData.js';
-
-/**
- * Checks if a map value for `key` exists.
- *
- * @private
- * @name has
- * @memberOf MapCache
- * @param {string} key The key of the entry to check.
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
- */
-function mapCacheHas(key) {
- return getMapData(this, key).has(key);
-}
-
-export default mapCacheHas;
diff --git a/node_modules/lodash-es/_mapCacheSet.js b/node_modules/lodash-es/_mapCacheSet.js
deleted file mode 100644
index e757c36..0000000
--- a/node_modules/lodash-es/_mapCacheSet.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import getMapData from './_getMapData.js';
-
-/**
- * Sets the map `key` to `value`.
- *
- * @private
- * @name set
- * @memberOf MapCache
- * @param {string} key The key of the value to set.
- * @param {*} value The value to set.
- * @returns {Object} Returns the map cache instance.
- */
-function mapCacheSet(key, value) {
- var data = getMapData(this, key),
- size = data.size;
-
- data.set(key, value);
- this.size += data.size == size ? 0 : 1;
- return this;
-}
-
-export default mapCacheSet;
diff --git a/node_modules/lodash-es/_mapToArray.js b/node_modules/lodash-es/_mapToArray.js
deleted file mode 100644
index 82346d5..0000000
--- a/node_modules/lodash-es/_mapToArray.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Converts `map` to its key-value pairs.
- *
- * @private
- * @param {Object} map The map to convert.
- * @returns {Array} Returns the key-value pairs.
- */
-function mapToArray(map) {
- var index = -1,
- result = Array(map.size);
-
- map.forEach(function(value, key) {
- result[++index] = [key, value];
- });
- return result;
-}
-
-export default mapToArray;
diff --git a/node_modules/lodash-es/_matchesStrictComparable.js b/node_modules/lodash-es/_matchesStrictComparable.js
deleted file mode 100644
index 531ffb3..0000000
--- a/node_modules/lodash-es/_matchesStrictComparable.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * A specialized version of `matchesProperty` for source values suitable
- * for strict equality comparisons, i.e. `===`.
- *
- * @private
- * @param {string} key The key of the property to get.
- * @param {*} srcValue The value to match.
- * @returns {Function} Returns the new spec function.
- */
-function matchesStrictComparable(key, srcValue) {
- return function(object) {
- if (object == null) {
- return false;
- }
- return object[key] === srcValue &&
- (srcValue !== undefined || (key in Object(object)));
- };
-}
-
-export default matchesStrictComparable;
diff --git a/node_modules/lodash-es/_memoizeCapped.js b/node_modules/lodash-es/_memoizeCapped.js
deleted file mode 100644
index d2b9399..0000000
--- a/node_modules/lodash-es/_memoizeCapped.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import memoize from './memoize.js';
-
-/** Used as the maximum memoize cache size. */
-var MAX_MEMOIZE_SIZE = 500;
-
-/**
- * A specialized version of `_.memoize` which clears the memoized function's
- * cache when it exceeds `MAX_MEMOIZE_SIZE`.
- *
- * @private
- * @param {Function} func The function to have its output memoized.
- * @returns {Function} Returns the new memoized function.
- */
-function memoizeCapped(func) {
- var result = memoize(func, function(key) {
- if (cache.size === MAX_MEMOIZE_SIZE) {
- cache.clear();
- }
- return key;
- });
-
- var cache = result.cache;
- return result;
-}
-
-export default memoizeCapped;
diff --git a/node_modules/lodash-es/_mergeData.js b/node_modules/lodash-es/_mergeData.js
deleted file mode 100644
index 9222069..0000000
--- a/node_modules/lodash-es/_mergeData.js
+++ /dev/null
@@ -1,90 +0,0 @@
-import composeArgs from './_composeArgs.js';
-import composeArgsRight from './_composeArgsRight.js';
-import replaceHolders from './_replaceHolders.js';
-
-/** Used as the internal argument placeholder. */
-var PLACEHOLDER = '__lodash_placeholder__';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_BIND_FLAG = 1,
- WRAP_BIND_KEY_FLAG = 2,
- WRAP_CURRY_BOUND_FLAG = 4,
- WRAP_CURRY_FLAG = 8,
- WRAP_ARY_FLAG = 128,
- WRAP_REARG_FLAG = 256;
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min;
-
-/**
- * Merges the function metadata of `source` into `data`.
- *
- * Merging metadata reduces the number of wrappers used to invoke a function.
- * This is possible because methods like `_.bind`, `_.curry`, and `_.partial`
- * may be applied regardless of execution order. Methods like `_.ary` and
- * `_.rearg` modify function arguments, making the order in which they are
- * executed important, preventing the merging of metadata. However, we make
- * an exception for a safe combined case where curried functions have `_.ary`
- * and or `_.rearg` applied.
- *
- * @private
- * @param {Array} data The destination metadata.
- * @param {Array} source The source metadata.
- * @returns {Array} Returns `data`.
- */
-function mergeData(data, source) {
- var bitmask = data[1],
- srcBitmask = source[1],
- newBitmask = bitmask | srcBitmask,
- isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG);
-
- var isCombo =
- ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) ||
- ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) ||
- ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG));
-
- // Exit early if metadata can't be merged.
- if (!(isCommon || isCombo)) {
- return data;
- }
- // Use source `thisArg` if available.
- if (srcBitmask & WRAP_BIND_FLAG) {
- data[2] = source[2];
- // Set when currying a bound function.
- newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG;
- }
- // Compose partial arguments.
- var value = source[3];
- if (value) {
- var partials = data[3];
- data[3] = partials ? composeArgs(partials, value, source[4]) : value;
- data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4];
- }
- // Compose partial right arguments.
- value = source[5];
- if (value) {
- partials = data[5];
- data[5] = partials ? composeArgsRight(partials, value, source[6]) : value;
- data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6];
- }
- // Use source `argPos` if available.
- value = source[7];
- if (value) {
- data[7] = value;
- }
- // Use source `ary` if it's smaller.
- if (srcBitmask & WRAP_ARY_FLAG) {
- data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]);
- }
- // Use source `arity` if one is not provided.
- if (data[9] == null) {
- data[9] = source[9];
- }
- // Use source `func` and merge bitmasks.
- data[0] = source[0];
- data[1] = newBitmask;
-
- return data;
-}
-
-export default mergeData;
diff --git a/node_modules/lodash-es/_metaMap.js b/node_modules/lodash-es/_metaMap.js
deleted file mode 100644
index d7e5b95..0000000
--- a/node_modules/lodash-es/_metaMap.js
+++ /dev/null
@@ -1,6 +0,0 @@
-import WeakMap from './_WeakMap.js';
-
-/** Used to store function metadata. */
-var metaMap = WeakMap && new WeakMap;
-
-export default metaMap;
diff --git a/node_modules/lodash-es/_nativeCreate.js b/node_modules/lodash-es/_nativeCreate.js
deleted file mode 100644
index 27b476b..0000000
--- a/node_modules/lodash-es/_nativeCreate.js
+++ /dev/null
@@ -1,6 +0,0 @@
-import getNative from './_getNative.js';
-
-/* Built-in method references that are verified to be native. */
-var nativeCreate = getNative(Object, 'create');
-
-export default nativeCreate;
diff --git a/node_modules/lodash-es/_nativeKeys.js b/node_modules/lodash-es/_nativeKeys.js
deleted file mode 100644
index 2ec8ec6..0000000
--- a/node_modules/lodash-es/_nativeKeys.js
+++ /dev/null
@@ -1,6 +0,0 @@
-import overArg from './_overArg.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeKeys = overArg(Object.keys, Object);
-
-export default nativeKeys;
diff --git a/node_modules/lodash-es/_nativeKeysIn.js b/node_modules/lodash-es/_nativeKeysIn.js
deleted file mode 100644
index 94eda99..0000000
--- a/node_modules/lodash-es/_nativeKeysIn.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * This function is like
- * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
- * except that it includes inherited enumerable properties.
- *
- * @private
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of property names.
- */
-function nativeKeysIn(object) {
- var result = [];
- if (object != null) {
- for (var key in Object(object)) {
- result.push(key);
- }
- }
- return result;
-}
-
-export default nativeKeysIn;
diff --git a/node_modules/lodash-es/_nodeUtil.js b/node_modules/lodash-es/_nodeUtil.js
deleted file mode 100644
index 553c4d9..0000000
--- a/node_modules/lodash-es/_nodeUtil.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import freeGlobal from './_freeGlobal.js';
-
-/** Detect free variable `exports`. */
-var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;
-
-/** Detect free variable `module`. */
-var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
-
-/** Detect the popular CommonJS extension `module.exports`. */
-var moduleExports = freeModule && freeModule.exports === freeExports;
-
-/** Detect free variable `process` from Node.js. */
-var freeProcess = moduleExports && freeGlobal.process;
-
-/** Used to access faster Node.js helpers. */
-var nodeUtil = (function() {
- try {
- // Use `util.types` for Node.js 10+.
- var types = freeModule && freeModule.require && freeModule.require('util').types;
-
- if (types) {
- return types;
- }
-
- // Legacy `process.binding('util')` for Node.js < 10.
- return freeProcess && freeProcess.binding && freeProcess.binding('util');
- } catch (e) {}
-}());
-
-export default nodeUtil;
diff --git a/node_modules/lodash-es/_objectToString.js b/node_modules/lodash-es/_objectToString.js
deleted file mode 100644
index 749a5f9..0000000
--- a/node_modules/lodash-es/_objectToString.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
- * of values.
- */
-var nativeObjectToString = objectProto.toString;
-
-/**
- * Converts `value` to a string using `Object.prototype.toString`.
- *
- * @private
- * @param {*} value The value to convert.
- * @returns {string} Returns the converted string.
- */
-function objectToString(value) {
- return nativeObjectToString.call(value);
-}
-
-export default objectToString;
diff --git a/node_modules/lodash-es/_overArg.js b/node_modules/lodash-es/_overArg.js
deleted file mode 100644
index 93bafe3..0000000
--- a/node_modules/lodash-es/_overArg.js
+++ /dev/null
@@ -1,15 +0,0 @@
-/**
- * Creates a unary function that invokes `func` with its argument transformed.
- *
- * @private
- * @param {Function} func The function to wrap.
- * @param {Function} transform The argument transform.
- * @returns {Function} Returns the new function.
- */
-function overArg(func, transform) {
- return function(arg) {
- return func(transform(arg));
- };
-}
-
-export default overArg;
diff --git a/node_modules/lodash-es/_overRest.js b/node_modules/lodash-es/_overRest.js
deleted file mode 100644
index f4f79cb..0000000
--- a/node_modules/lodash-es/_overRest.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import apply from './_apply.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * A specialized version of `baseRest` which transforms the rest array.
- *
- * @private
- * @param {Function} func The function to apply a rest parameter to.
- * @param {number} [start=func.length-1] The start position of the rest parameter.
- * @param {Function} transform The rest array transform.
- * @returns {Function} Returns the new function.
- */
-function overRest(func, start, transform) {
- start = nativeMax(start === undefined ? (func.length - 1) : start, 0);
- return function() {
- var args = arguments,
- index = -1,
- length = nativeMax(args.length - start, 0),
- array = Array(length);
-
- while (++index < length) {
- array[index] = args[start + index];
- }
- index = -1;
- var otherArgs = Array(start + 1);
- while (++index < start) {
- otherArgs[index] = args[index];
- }
- otherArgs[start] = transform(array);
- return apply(func, this, otherArgs);
- };
-}
-
-export default overRest;
diff --git a/node_modules/lodash-es/_parent.js b/node_modules/lodash-es/_parent.js
deleted file mode 100644
index ef6f8b4..0000000
--- a/node_modules/lodash-es/_parent.js
+++ /dev/null
@@ -1,16 +0,0 @@
-import baseGet from './_baseGet.js';
-import baseSlice from './_baseSlice.js';
-
-/**
- * Gets the parent value at `path` of `object`.
- *
- * @private
- * @param {Object} object The object to query.
- * @param {Array} path The path to get the parent value of.
- * @returns {*} Returns the parent value.
- */
-function parent(object, path) {
- return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));
-}
-
-export default parent;
diff --git a/node_modules/lodash-es/_reEscape.js b/node_modules/lodash-es/_reEscape.js
deleted file mode 100644
index cd3729b..0000000
--- a/node_modules/lodash-es/_reEscape.js
+++ /dev/null
@@ -1,4 +0,0 @@
-/** Used to match template delimiters. */
-var reEscape = /<%-([\s\S]+?)%>/g;
-
-export default reEscape;
diff --git a/node_modules/lodash-es/_reEvaluate.js b/node_modules/lodash-es/_reEvaluate.js
deleted file mode 100644
index 563964b..0000000
--- a/node_modules/lodash-es/_reEvaluate.js
+++ /dev/null
@@ -1,4 +0,0 @@
-/** Used to match template delimiters. */
-var reEvaluate = /<%([\s\S]+?)%>/g;
-
-export default reEvaluate;
diff --git a/node_modules/lodash-es/_reInterpolate.js b/node_modules/lodash-es/_reInterpolate.js
deleted file mode 100644
index a3cdb20..0000000
--- a/node_modules/lodash-es/_reInterpolate.js
+++ /dev/null
@@ -1,4 +0,0 @@
-/** Used to match template delimiters. */
-var reInterpolate = /<%=([\s\S]+?)%>/g;
-
-export default reInterpolate;
diff --git a/node_modules/lodash-es/_realNames.js b/node_modules/lodash-es/_realNames.js
deleted file mode 100644
index df195ed..0000000
--- a/node_modules/lodash-es/_realNames.js
+++ /dev/null
@@ -1,4 +0,0 @@
-/** Used to lookup unminified function names. */
-var realNames = {};
-
-export default realNames;
diff --git a/node_modules/lodash-es/_reorder.js b/node_modules/lodash-es/_reorder.js
deleted file mode 100644
index b7ade47..0000000
--- a/node_modules/lodash-es/_reorder.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import copyArray from './_copyArray.js';
-import isIndex from './_isIndex.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min;
-
-/**
- * Reorder `array` according to the specified indexes where the element at
- * the first index is assigned as the first element, the element at
- * the second index is assigned as the second element, and so on.
- *
- * @private
- * @param {Array} array The array to reorder.
- * @param {Array} indexes The arranged array indexes.
- * @returns {Array} Returns `array`.
- */
-function reorder(array, indexes) {
- var arrLength = array.length,
- length = nativeMin(indexes.length, arrLength),
- oldArray = copyArray(array);
-
- while (length--) {
- var index = indexes[length];
- array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined;
- }
- return array;
-}
-
-export default reorder;
diff --git a/node_modules/lodash-es/_replaceHolders.js b/node_modules/lodash-es/_replaceHolders.js
deleted file mode 100644
index e636054..0000000
--- a/node_modules/lodash-es/_replaceHolders.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/** Used as the internal argument placeholder. */
-var PLACEHOLDER = '__lodash_placeholder__';
-
-/**
- * Replaces all `placeholder` elements in `array` with an internal placeholder
- * and returns an array of their indexes.
- *
- * @private
- * @param {Array} array The array to modify.
- * @param {*} placeholder The placeholder to replace.
- * @returns {Array} Returns the new array of placeholder indexes.
- */
-function replaceHolders(array, placeholder) {
- var index = -1,
- length = array.length,
- resIndex = 0,
- result = [];
-
- while (++index < length) {
- var value = array[index];
- if (value === placeholder || value === PLACEHOLDER) {
- array[index] = PLACEHOLDER;
- result[resIndex++] = index;
- }
- }
- return result;
-}
-
-export default replaceHolders;
diff --git a/node_modules/lodash-es/_root.js b/node_modules/lodash-es/_root.js
deleted file mode 100644
index 281f812..0000000
--- a/node_modules/lodash-es/_root.js
+++ /dev/null
@@ -1,9 +0,0 @@
-import freeGlobal from './_freeGlobal.js';
-
-/** Detect free variable `self`. */
-var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
-
-/** Used as a reference to the global object. */
-var root = freeGlobal || freeSelf || Function('return this')();
-
-export default root;
diff --git a/node_modules/lodash-es/_safeGet.js b/node_modules/lodash-es/_safeGet.js
deleted file mode 100644
index e08241a..0000000
--- a/node_modules/lodash-es/_safeGet.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * Gets the value at `key`, unless `key` is "__proto__".
- *
- * @private
- * @param {Object} object The object to query.
- * @param {string} key The key of the property to get.
- * @returns {*} Returns the property value.
- */
-function safeGet(object, key) {
- if (key == '__proto__') {
- return;
- }
-
- return object[key];
-}
-
-export default safeGet;
diff --git a/node_modules/lodash-es/_setCacheAdd.js b/node_modules/lodash-es/_setCacheAdd.js
deleted file mode 100644
index d3a42d3..0000000
--- a/node_modules/lodash-es/_setCacheAdd.js
+++ /dev/null
@@ -1,19 +0,0 @@
-/** Used to stand-in for `undefined` hash values. */
-var HASH_UNDEFINED = '__lodash_hash_undefined__';
-
-/**
- * Adds `value` to the array cache.
- *
- * @private
- * @name add
- * @memberOf SetCache
- * @alias push
- * @param {*} value The value to cache.
- * @returns {Object} Returns the cache instance.
- */
-function setCacheAdd(value) {
- this.__data__.set(value, HASH_UNDEFINED);
- return this;
-}
-
-export default setCacheAdd;
diff --git a/node_modules/lodash-es/_setCacheHas.js b/node_modules/lodash-es/_setCacheHas.js
deleted file mode 100644
index 67f4c8a..0000000
--- a/node_modules/lodash-es/_setCacheHas.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * Checks if `value` is in the array cache.
- *
- * @private
- * @name has
- * @memberOf SetCache
- * @param {*} value The value to search for.
- * @returns {number} Returns `true` if `value` is found, else `false`.
- */
-function setCacheHas(value) {
- return this.__data__.has(value);
-}
-
-export default setCacheHas;
diff --git a/node_modules/lodash-es/_setData.js b/node_modules/lodash-es/_setData.js
deleted file mode 100644
index 8b6bac9..0000000
--- a/node_modules/lodash-es/_setData.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import baseSetData from './_baseSetData.js';
-import shortOut from './_shortOut.js';
-
-/**
- * Sets metadata for `func`.
- *
- * **Note:** If this function becomes hot, i.e. is invoked a lot in a short
- * period of time, it will trip its breaker and transition to an identity
- * function to avoid garbage collection pauses in V8. See
- * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070)
- * for more details.
- *
- * @private
- * @param {Function} func The function to associate metadata with.
- * @param {*} data The metadata.
- * @returns {Function} Returns `func`.
- */
-var setData = shortOut(baseSetData);
-
-export default setData;
diff --git a/node_modules/lodash-es/_setToArray.js b/node_modules/lodash-es/_setToArray.js
deleted file mode 100644
index fdf823c..0000000
--- a/node_modules/lodash-es/_setToArray.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Converts `set` to an array of its values.
- *
- * @private
- * @param {Object} set The set to convert.
- * @returns {Array} Returns the values.
- */
-function setToArray(set) {
- var index = -1,
- result = Array(set.size);
-
- set.forEach(function(value) {
- result[++index] = value;
- });
- return result;
-}
-
-export default setToArray;
diff --git a/node_modules/lodash-es/_setToPairs.js b/node_modules/lodash-es/_setToPairs.js
deleted file mode 100644
index f0d123b..0000000
--- a/node_modules/lodash-es/_setToPairs.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Converts `set` to its value-value pairs.
- *
- * @private
- * @param {Object} set The set to convert.
- * @returns {Array} Returns the value-value pairs.
- */
-function setToPairs(set) {
- var index = -1,
- result = Array(set.size);
-
- set.forEach(function(value) {
- result[++index] = [value, value];
- });
- return result;
-}
-
-export default setToPairs;
diff --git a/node_modules/lodash-es/_setToString.js b/node_modules/lodash-es/_setToString.js
deleted file mode 100644
index db2dd26..0000000
--- a/node_modules/lodash-es/_setToString.js
+++ /dev/null
@@ -1,14 +0,0 @@
-import baseSetToString from './_baseSetToString.js';
-import shortOut from './_shortOut.js';
-
-/**
- * Sets the `toString` method of `func` to return `string`.
- *
- * @private
- * @param {Function} func The function to modify.
- * @param {Function} string The `toString` result.
- * @returns {Function} Returns `func`.
- */
-var setToString = shortOut(baseSetToString);
-
-export default setToString;
diff --git a/node_modules/lodash-es/_setWrapToString.js b/node_modules/lodash-es/_setWrapToString.js
deleted file mode 100644
index 16b08fd..0000000
--- a/node_modules/lodash-es/_setWrapToString.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import getWrapDetails from './_getWrapDetails.js';
-import insertWrapDetails from './_insertWrapDetails.js';
-import setToString from './_setToString.js';
-import updateWrapDetails from './_updateWrapDetails.js';
-
-/**
- * Sets the `toString` method of `wrapper` to mimic the source of `reference`
- * with wrapper details in a comment at the top of the source body.
- *
- * @private
- * @param {Function} wrapper The function to modify.
- * @param {Function} reference The reference function.
- * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
- * @returns {Function} Returns `wrapper`.
- */
-function setWrapToString(wrapper, reference, bitmask) {
- var source = (reference + '');
- return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask)));
-}
-
-export default setWrapToString;
diff --git a/node_modules/lodash-es/_shortOut.js b/node_modules/lodash-es/_shortOut.js
deleted file mode 100644
index 78fadcd..0000000
--- a/node_modules/lodash-es/_shortOut.js
+++ /dev/null
@@ -1,37 +0,0 @@
-/** Used to detect hot functions by number of calls within a span of milliseconds. */
-var HOT_COUNT = 800,
- HOT_SPAN = 16;
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeNow = Date.now;
-
-/**
- * Creates a function that'll short out and invoke `identity` instead
- * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`
- * milliseconds.
- *
- * @private
- * @param {Function} func The function to restrict.
- * @returns {Function} Returns the new shortable function.
- */
-function shortOut(func) {
- var count = 0,
- lastCalled = 0;
-
- return function() {
- var stamp = nativeNow(),
- remaining = HOT_SPAN - (stamp - lastCalled);
-
- lastCalled = stamp;
- if (remaining > 0) {
- if (++count >= HOT_COUNT) {
- return arguments[0];
- }
- } else {
- count = 0;
- }
- return func.apply(undefined, arguments);
- };
-}
-
-export default shortOut;
diff --git a/node_modules/lodash-es/_shuffleSelf.js b/node_modules/lodash-es/_shuffleSelf.js
deleted file mode 100644
index a04ebea..0000000
--- a/node_modules/lodash-es/_shuffleSelf.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import baseRandom from './_baseRandom.js';
-
-/**
- * A specialized version of `_.shuffle` which mutates and sets the size of `array`.
- *
- * @private
- * @param {Array} array The array to shuffle.
- * @param {number} [size=array.length] The size of `array`.
- * @returns {Array} Returns `array`.
- */
-function shuffleSelf(array, size) {
- var index = -1,
- length = array.length,
- lastIndex = length - 1;
-
- size = size === undefined ? length : size;
- while (++index < size) {
- var rand = baseRandom(index, lastIndex),
- value = array[rand];
-
- array[rand] = array[index];
- array[index] = value;
- }
- array.length = size;
- return array;
-}
-
-export default shuffleSelf;
diff --git a/node_modules/lodash-es/_stackClear.js b/node_modules/lodash-es/_stackClear.js
deleted file mode 100644
index d4b10b0..0000000
--- a/node_modules/lodash-es/_stackClear.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import ListCache from './_ListCache.js';
-
-/**
- * Removes all key-value entries from the stack.
- *
- * @private
- * @name clear
- * @memberOf Stack
- */
-function stackClear() {
- this.__data__ = new ListCache;
- this.size = 0;
-}
-
-export default stackClear;
diff --git a/node_modules/lodash-es/_stackDelete.js b/node_modules/lodash-es/_stackDelete.js
deleted file mode 100644
index c3df897..0000000
--- a/node_modules/lodash-es/_stackDelete.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * Removes `key` and its value from the stack.
- *
- * @private
- * @name delete
- * @memberOf Stack
- * @param {string} key The key of the value to remove.
- * @returns {boolean} Returns `true` if the entry was removed, else `false`.
- */
-function stackDelete(key) {
- var data = this.__data__,
- result = data['delete'](key);
-
- this.size = data.size;
- return result;
-}
-
-export default stackDelete;
diff --git a/node_modules/lodash-es/_stackGet.js b/node_modules/lodash-es/_stackGet.js
deleted file mode 100644
index 139b9ac..0000000
--- a/node_modules/lodash-es/_stackGet.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * Gets the stack value for `key`.
- *
- * @private
- * @name get
- * @memberOf Stack
- * @param {string} key The key of the value to get.
- * @returns {*} Returns the entry value.
- */
-function stackGet(key) {
- return this.__data__.get(key);
-}
-
-export default stackGet;
diff --git a/node_modules/lodash-es/_stackHas.js b/node_modules/lodash-es/_stackHas.js
deleted file mode 100644
index bc25f5a..0000000
--- a/node_modules/lodash-es/_stackHas.js
+++ /dev/null
@@ -1,14 +0,0 @@
-/**
- * Checks if a stack value for `key` exists.
- *
- * @private
- * @name has
- * @memberOf Stack
- * @param {string} key The key of the entry to check.
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
- */
-function stackHas(key) {
- return this.__data__.has(key);
-}
-
-export default stackHas;
diff --git a/node_modules/lodash-es/_stackSet.js b/node_modules/lodash-es/_stackSet.js
deleted file mode 100644
index a85af6c..0000000
--- a/node_modules/lodash-es/_stackSet.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import ListCache from './_ListCache.js';
-import Map from './_Map.js';
-import MapCache from './_MapCache.js';
-
-/** Used as the size to enable large array optimizations. */
-var LARGE_ARRAY_SIZE = 200;
-
-/**
- * Sets the stack `key` to `value`.
- *
- * @private
- * @name set
- * @memberOf Stack
- * @param {string} key The key of the value to set.
- * @param {*} value The value to set.
- * @returns {Object} Returns the stack cache instance.
- */
-function stackSet(key, value) {
- var data = this.__data__;
- if (data instanceof ListCache) {
- var pairs = data.__data__;
- if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {
- pairs.push([key, value]);
- this.size = ++data.size;
- return this;
- }
- data = this.__data__ = new MapCache(pairs);
- }
- data.set(key, value);
- this.size = data.size;
- return this;
-}
-
-export default stackSet;
diff --git a/node_modules/lodash-es/_strictIndexOf.js b/node_modules/lodash-es/_strictIndexOf.js
deleted file mode 100644
index 0dfad1e..0000000
--- a/node_modules/lodash-es/_strictIndexOf.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * A specialized version of `_.indexOf` which performs strict equality
- * comparisons of values, i.e. `===`.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {*} value The value to search for.
- * @param {number} fromIndex The index to search from.
- * @returns {number} Returns the index of the matched value, else `-1`.
- */
-function strictIndexOf(array, value, fromIndex) {
- var index = fromIndex - 1,
- length = array.length;
-
- while (++index < length) {
- if (array[index] === value) {
- return index;
- }
- }
- return -1;
-}
-
-export default strictIndexOf;
diff --git a/node_modules/lodash-es/_strictLastIndexOf.js b/node_modules/lodash-es/_strictLastIndexOf.js
deleted file mode 100644
index 6ddf04c..0000000
--- a/node_modules/lodash-es/_strictLastIndexOf.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * A specialized version of `_.lastIndexOf` which performs strict equality
- * comparisons of values, i.e. `===`.
- *
- * @private
- * @param {Array} array The array to inspect.
- * @param {*} value The value to search for.
- * @param {number} fromIndex The index to search from.
- * @returns {number} Returns the index of the matched value, else `-1`.
- */
-function strictLastIndexOf(array, value, fromIndex) {
- var index = fromIndex + 1;
- while (index--) {
- if (array[index] === value) {
- return index;
- }
- }
- return index;
-}
-
-export default strictLastIndexOf;
diff --git a/node_modules/lodash-es/_stringSize.js b/node_modules/lodash-es/_stringSize.js
deleted file mode 100644
index 17443a8..0000000
--- a/node_modules/lodash-es/_stringSize.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import asciiSize from './_asciiSize.js';
-import hasUnicode from './_hasUnicode.js';
-import unicodeSize from './_unicodeSize.js';
-
-/**
- * Gets the number of symbols in `string`.
- *
- * @private
- * @param {string} string The string to inspect.
- * @returns {number} Returns the string size.
- */
-function stringSize(string) {
- return hasUnicode(string)
- ? unicodeSize(string)
- : asciiSize(string);
-}
-
-export default stringSize;
diff --git a/node_modules/lodash-es/_stringToArray.js b/node_modules/lodash-es/_stringToArray.js
deleted file mode 100644
index 1ce84fd..0000000
--- a/node_modules/lodash-es/_stringToArray.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import asciiToArray from './_asciiToArray.js';
-import hasUnicode from './_hasUnicode.js';
-import unicodeToArray from './_unicodeToArray.js';
-
-/**
- * Converts `string` to an array.
- *
- * @private
- * @param {string} string The string to convert.
- * @returns {Array} Returns the converted array.
- */
-function stringToArray(string) {
- return hasUnicode(string)
- ? unicodeToArray(string)
- : asciiToArray(string);
-}
-
-export default stringToArray;
diff --git a/node_modules/lodash-es/_stringToPath.js b/node_modules/lodash-es/_stringToPath.js
deleted file mode 100644
index acf73e0..0000000
--- a/node_modules/lodash-es/_stringToPath.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import memoizeCapped from './_memoizeCapped.js';
-
-/** Used to match property names within property paths. */
-var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
-
-/** Used to match backslashes in property paths. */
-var reEscapeChar = /\\(\\)?/g;
-
-/**
- * Converts `string` to a property path array.
- *
- * @private
- * @param {string} string The string to convert.
- * @returns {Array} Returns the property path array.
- */
-var stringToPath = memoizeCapped(function(string) {
- var result = [];
- if (string.charCodeAt(0) === 46 /* . */) {
- result.push('');
- }
- string.replace(rePropName, function(match, number, quote, subString) {
- result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));
- });
- return result;
-});
-
-export default stringToPath;
diff --git a/node_modules/lodash-es/_toKey.js b/node_modules/lodash-es/_toKey.js
deleted file mode 100644
index 295277f..0000000
--- a/node_modules/lodash-es/_toKey.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import isSymbol from './isSymbol.js';
-
-/** Used as references for various `Number` constants. */
-var INFINITY = 1 / 0;
-
-/**
- * Converts `value` to a string key if it's not a string or symbol.
- *
- * @private
- * @param {*} value The value to inspect.
- * @returns {string|symbol} Returns the key.
- */
-function toKey(value) {
- if (typeof value == 'string' || isSymbol(value)) {
- return value;
- }
- var result = (value + '');
- return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
-}
-
-export default toKey;
diff --git a/node_modules/lodash-es/_toSource.js b/node_modules/lodash-es/_toSource.js
deleted file mode 100644
index 2696f7a..0000000
--- a/node_modules/lodash-es/_toSource.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/** Used for built-in method references. */
-var funcProto = Function.prototype;
-
-/** Used to resolve the decompiled source of functions. */
-var funcToString = funcProto.toString;
-
-/**
- * Converts `func` to its source code.
- *
- * @private
- * @param {Function} func The function to convert.
- * @returns {string} Returns the source code.
- */
-function toSource(func) {
- if (func != null) {
- try {
- return funcToString.call(func);
- } catch (e) {}
- try {
- return (func + '');
- } catch (e) {}
- }
- return '';
-}
-
-export default toSource;
diff --git a/node_modules/lodash-es/_unescapeHtmlChar.js b/node_modules/lodash-es/_unescapeHtmlChar.js
deleted file mode 100644
index e1876cc..0000000
--- a/node_modules/lodash-es/_unescapeHtmlChar.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import basePropertyOf from './_basePropertyOf.js';
-
-/** Used to map HTML entities to characters. */
-var htmlUnescapes = {
- '&': '&',
- '<': '<',
- '>': '>',
- '"': '"',
- ''': "'"
-};
-
-/**
- * Used by `_.unescape` to convert HTML entities to characters.
- *
- * @private
- * @param {string} chr The matched character to unescape.
- * @returns {string} Returns the unescaped character.
- */
-var unescapeHtmlChar = basePropertyOf(htmlUnescapes);
-
-export default unescapeHtmlChar;
diff --git a/node_modules/lodash-es/_unicodeSize.js b/node_modules/lodash-es/_unicodeSize.js
deleted file mode 100644
index 8c03175..0000000
--- a/node_modules/lodash-es/_unicodeSize.js
+++ /dev/null
@@ -1,44 +0,0 @@
-/** Used to compose unicode character classes. */
-var rsAstralRange = '\\ud800-\\udfff',
- rsComboMarksRange = '\\u0300-\\u036f',
- reComboHalfMarksRange = '\\ufe20-\\ufe2f',
- rsComboSymbolsRange = '\\u20d0-\\u20ff',
- rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,
- rsVarRange = '\\ufe0e\\ufe0f';
-
-/** Used to compose unicode capture groups. */
-var rsAstral = '[' + rsAstralRange + ']',
- rsCombo = '[' + rsComboRange + ']',
- rsFitz = '\\ud83c[\\udffb-\\udfff]',
- rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',
- rsNonAstral = '[^' + rsAstralRange + ']',
- rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}',
- rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]',
- rsZWJ = '\\u200d';
-
-/** Used to compose unicode regexes. */
-var reOptMod = rsModifier + '?',
- rsOptVar = '[' + rsVarRange + ']?',
- rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',
- rsSeq = rsOptVar + reOptMod + rsOptJoin,
- rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')';
-
-/** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */
-var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g');
-
-/**
- * Gets the size of a Unicode `string`.
- *
- * @private
- * @param {string} string The string inspect.
- * @returns {number} Returns the string size.
- */
-function unicodeSize(string) {
- var result = reUnicode.lastIndex = 0;
- while (reUnicode.test(string)) {
- ++result;
- }
- return result;
-}
-
-export default unicodeSize;
diff --git a/node_modules/lodash-es/_unicodeToArray.js b/node_modules/lodash-es/_unicodeToArray.js
deleted file mode 100644
index ea49762..0000000
--- a/node_modules/lodash-es/_unicodeToArray.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/** Used to compose unicode character classes. */
-var rsAstralRange = '\\ud800-\\udfff',
- rsComboMarksRange = '\\u0300-\\u036f',
- reComboHalfMarksRange = '\\ufe20-\\ufe2f',
- rsComboSymbolsRange = '\\u20d0-\\u20ff',
- rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,
- rsVarRange = '\\ufe0e\\ufe0f';
-
-/** Used to compose unicode capture groups. */
-var rsAstral = '[' + rsAstralRange + ']',
- rsCombo = '[' + rsComboRange + ']',
- rsFitz = '\\ud83c[\\udffb-\\udfff]',
- rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',
- rsNonAstral = '[^' + rsAstralRange + ']',
- rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}',
- rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]',
- rsZWJ = '\\u200d';
-
-/** Used to compose unicode regexes. */
-var reOptMod = rsModifier + '?',
- rsOptVar = '[' + rsVarRange + ']?',
- rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',
- rsSeq = rsOptVar + reOptMod + rsOptJoin,
- rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')';
-
-/** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */
-var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g');
-
-/**
- * Converts a Unicode `string` to an array.
- *
- * @private
- * @param {string} string The string to convert.
- * @returns {Array} Returns the converted array.
- */
-function unicodeToArray(string) {
- return string.match(reUnicode) || [];
-}
-
-export default unicodeToArray;
diff --git a/node_modules/lodash-es/_unicodeWords.js b/node_modules/lodash-es/_unicodeWords.js
deleted file mode 100644
index 97b92ab..0000000
--- a/node_modules/lodash-es/_unicodeWords.js
+++ /dev/null
@@ -1,69 +0,0 @@
-/** Used to compose unicode character classes. */
-var rsAstralRange = '\\ud800-\\udfff',
- rsComboMarksRange = '\\u0300-\\u036f',
- reComboHalfMarksRange = '\\ufe20-\\ufe2f',
- rsComboSymbolsRange = '\\u20d0-\\u20ff',
- rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,
- rsDingbatRange = '\\u2700-\\u27bf',
- rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff',
- rsMathOpRange = '\\xac\\xb1\\xd7\\xf7',
- rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf',
- rsPunctuationRange = '\\u2000-\\u206f',
- rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000',
- rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde',
- rsVarRange = '\\ufe0e\\ufe0f',
- rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;
-
-/** Used to compose unicode capture groups. */
-var rsApos = "['\u2019]",
- rsBreak = '[' + rsBreakRange + ']',
- rsCombo = '[' + rsComboRange + ']',
- rsDigits = '\\d+',
- rsDingbat = '[' + rsDingbatRange + ']',
- rsLower = '[' + rsLowerRange + ']',
- rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',
- rsFitz = '\\ud83c[\\udffb-\\udfff]',
- rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',
- rsNonAstral = '[^' + rsAstralRange + ']',
- rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}',
- rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]',
- rsUpper = '[' + rsUpperRange + ']',
- rsZWJ = '\\u200d';
-
-/** Used to compose unicode regexes. */
-var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',
- rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',
- rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',
- rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',
- reOptMod = rsModifier + '?',
- rsOptVar = '[' + rsVarRange + ']?',
- rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',
- rsOrdLower = '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])',
- rsOrdUpper = '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])',
- rsSeq = rsOptVar + reOptMod + rsOptJoin,
- rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq;
-
-/** Used to match complex or compound words. */
-var reUnicodeWord = RegExp([
- rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',
- rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',
- rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,
- rsUpper + '+' + rsOptContrUpper,
- rsOrdUpper,
- rsOrdLower,
- rsDigits,
- rsEmoji
-].join('|'), 'g');
-
-/**
- * Splits a Unicode `string` into an array of its words.
- *
- * @private
- * @param {string} The string to inspect.
- * @returns {Array} Returns the words of `string`.
- */
-function unicodeWords(string) {
- return string.match(reUnicodeWord) || [];
-}
-
-export default unicodeWords;
diff --git a/node_modules/lodash-es/_updateWrapDetails.js b/node_modules/lodash-es/_updateWrapDetails.js
deleted file mode 100644
index 69ecc1e..0000000
--- a/node_modules/lodash-es/_updateWrapDetails.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import arrayEach from './_arrayEach.js';
-import arrayIncludes from './_arrayIncludes.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_BIND_FLAG = 1,
- WRAP_BIND_KEY_FLAG = 2,
- WRAP_CURRY_FLAG = 8,
- WRAP_CURRY_RIGHT_FLAG = 16,
- WRAP_PARTIAL_FLAG = 32,
- WRAP_PARTIAL_RIGHT_FLAG = 64,
- WRAP_ARY_FLAG = 128,
- WRAP_REARG_FLAG = 256,
- WRAP_FLIP_FLAG = 512;
-
-/** Used to associate wrap methods with their bit flags. */
-var wrapFlags = [
- ['ary', WRAP_ARY_FLAG],
- ['bind', WRAP_BIND_FLAG],
- ['bindKey', WRAP_BIND_KEY_FLAG],
- ['curry', WRAP_CURRY_FLAG],
- ['curryRight', WRAP_CURRY_RIGHT_FLAG],
- ['flip', WRAP_FLIP_FLAG],
- ['partial', WRAP_PARTIAL_FLAG],
- ['partialRight', WRAP_PARTIAL_RIGHT_FLAG],
- ['rearg', WRAP_REARG_FLAG]
-];
-
-/**
- * Updates wrapper `details` based on `bitmask` flags.
- *
- * @private
- * @returns {Array} details The details to modify.
- * @param {number} bitmask The bitmask flags. See `createWrap` for more details.
- * @returns {Array} Returns `details`.
- */
-function updateWrapDetails(details, bitmask) {
- arrayEach(wrapFlags, function(pair) {
- var value = '_.' + pair[0];
- if ((bitmask & pair[1]) && !arrayIncludes(details, value)) {
- details.push(value);
- }
- });
- return details.sort();
-}
-
-export default updateWrapDetails;
diff --git a/node_modules/lodash-es/_wrapperClone.js b/node_modules/lodash-es/_wrapperClone.js
deleted file mode 100644
index 8d0d730..0000000
--- a/node_modules/lodash-es/_wrapperClone.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import LazyWrapper from './_LazyWrapper.js';
-import LodashWrapper from './_LodashWrapper.js';
-import copyArray from './_copyArray.js';
-
-/**
- * Creates a clone of `wrapper`.
- *
- * @private
- * @param {Object} wrapper The wrapper to clone.
- * @returns {Object} Returns the cloned wrapper.
- */
-function wrapperClone(wrapper) {
- if (wrapper instanceof LazyWrapper) {
- return wrapper.clone();
- }
- var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__);
- result.__actions__ = copyArray(wrapper.__actions__);
- result.__index__ = wrapper.__index__;
- result.__values__ = wrapper.__values__;
- return result;
-}
-
-export default wrapperClone;
diff --git a/node_modules/lodash-es/add.js b/node_modules/lodash-es/add.js
deleted file mode 100644
index b17f107..0000000
--- a/node_modules/lodash-es/add.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import createMathOperation from './_createMathOperation.js';
-
-/**
- * Adds two numbers.
- *
- * @static
- * @memberOf _
- * @since 3.4.0
- * @category Math
- * @param {number} augend The first number in an addition.
- * @param {number} addend The second number in an addition.
- * @returns {number} Returns the total.
- * @example
- *
- * _.add(6, 4);
- * // => 10
- */
-var add = createMathOperation(function(augend, addend) {
- return augend + addend;
-}, 0);
-
-export default add;
diff --git a/node_modules/lodash-es/after.js b/node_modules/lodash-es/after.js
deleted file mode 100644
index f05a32d..0000000
--- a/node_modules/lodash-es/after.js
+++ /dev/null
@@ -1,42 +0,0 @@
-import toInteger from './toInteger.js';
-
-/** Error message constants. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/**
- * The opposite of `_.before`; this method creates a function that invokes
- * `func` once it's called `n` or more times.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Function
- * @param {number} n The number of calls before `func` is invoked.
- * @param {Function} func The function to restrict.
- * @returns {Function} Returns the new restricted function.
- * @example
- *
- * var saves = ['profile', 'settings'];
- *
- * var done = _.after(saves.length, function() {
- * console.log('done saving!');
- * });
- *
- * _.forEach(saves, function(type) {
- * asyncSave({ 'type': type, 'complete': done });
- * });
- * // => Logs 'done saving!' after the two async saves have completed.
- */
-function after(n, func) {
- if (typeof func != 'function') {
- throw new TypeError(FUNC_ERROR_TEXT);
- }
- n = toInteger(n);
- return function() {
- if (--n < 1) {
- return func.apply(this, arguments);
- }
- };
-}
-
-export default after;
diff --git a/node_modules/lodash-es/array.default.js b/node_modules/lodash-es/array.default.js
deleted file mode 100644
index 13c0797..0000000
--- a/node_modules/lodash-es/array.default.js
+++ /dev/null
@@ -1,81 +0,0 @@
-import chunk from './chunk.js';
-import compact from './compact.js';
-import concat from './concat.js';
-import difference from './difference.js';
-import differenceBy from './differenceBy.js';
-import differenceWith from './differenceWith.js';
-import drop from './drop.js';
-import dropRight from './dropRight.js';
-import dropRightWhile from './dropRightWhile.js';
-import dropWhile from './dropWhile.js';
-import fill from './fill.js';
-import findIndex from './findIndex.js';
-import findLastIndex from './findLastIndex.js';
-import first from './first.js';
-import flatten from './flatten.js';
-import flattenDeep from './flattenDeep.js';
-import flattenDepth from './flattenDepth.js';
-import fromPairs from './fromPairs.js';
-import head from './head.js';
-import indexOf from './indexOf.js';
-import initial from './initial.js';
-import intersection from './intersection.js';
-import intersectionBy from './intersectionBy.js';
-import intersectionWith from './intersectionWith.js';
-import join from './join.js';
-import last from './last.js';
-import lastIndexOf from './lastIndexOf.js';
-import nth from './nth.js';
-import pull from './pull.js';
-import pullAll from './pullAll.js';
-import pullAllBy from './pullAllBy.js';
-import pullAllWith from './pullAllWith.js';
-import pullAt from './pullAt.js';
-import remove from './remove.js';
-import reverse from './reverse.js';
-import slice from './slice.js';
-import sortedIndex from './sortedIndex.js';
-import sortedIndexBy from './sortedIndexBy.js';
-import sortedIndexOf from './sortedIndexOf.js';
-import sortedLastIndex from './sortedLastIndex.js';
-import sortedLastIndexBy from './sortedLastIndexBy.js';
-import sortedLastIndexOf from './sortedLastIndexOf.js';
-import sortedUniq from './sortedUniq.js';
-import sortedUniqBy from './sortedUniqBy.js';
-import tail from './tail.js';
-import take from './take.js';
-import takeRight from './takeRight.js';
-import takeRightWhile from './takeRightWhile.js';
-import takeWhile from './takeWhile.js';
-import union from './union.js';
-import unionBy from './unionBy.js';
-import unionWith from './unionWith.js';
-import uniq from './uniq.js';
-import uniqBy from './uniqBy.js';
-import uniqWith from './uniqWith.js';
-import unzip from './unzip.js';
-import unzipWith from './unzipWith.js';
-import without from './without.js';
-import xor from './xor.js';
-import xorBy from './xorBy.js';
-import xorWith from './xorWith.js';
-import zip from './zip.js';
-import zipObject from './zipObject.js';
-import zipObjectDeep from './zipObjectDeep.js';
-import zipWith from './zipWith.js';
-
-export default {
- chunk, compact, concat, difference, differenceBy,
- differenceWith, drop, dropRight, dropRightWhile, dropWhile,
- fill, findIndex, findLastIndex, first, flatten,
- flattenDeep, flattenDepth, fromPairs, head, indexOf,
- initial, intersection, intersectionBy, intersectionWith, join,
- last, lastIndexOf, nth, pull, pullAll,
- pullAllBy, pullAllWith, pullAt, remove, reverse,
- slice, sortedIndex, sortedIndexBy, sortedIndexOf, sortedLastIndex,
- sortedLastIndexBy, sortedLastIndexOf, sortedUniq, sortedUniqBy, tail,
- take, takeRight, takeRightWhile, takeWhile, union,
- unionBy, unionWith, uniq, uniqBy, uniqWith,
- unzip, unzipWith, without, xor, xorBy,
- xorWith, zip, zipObject, zipObjectDeep, zipWith
-};
diff --git a/node_modules/lodash-es/array.js b/node_modules/lodash-es/array.js
deleted file mode 100644
index b579b5c..0000000
--- a/node_modules/lodash-es/array.js
+++ /dev/null
@@ -1,66 +0,0 @@
-export { default as chunk } from './chunk.js';
-export { default as compact } from './compact.js';
-export { default as concat } from './concat.js';
-export { default as difference } from './difference.js';
-export { default as differenceBy } from './differenceBy.js';
-export { default as differenceWith } from './differenceWith.js';
-export { default as drop } from './drop.js';
-export { default as dropRight } from './dropRight.js';
-export { default as dropRightWhile } from './dropRightWhile.js';
-export { default as dropWhile } from './dropWhile.js';
-export { default as fill } from './fill.js';
-export { default as findIndex } from './findIndex.js';
-export { default as findLastIndex } from './findLastIndex.js';
-export { default as first } from './first.js';
-export { default as flatten } from './flatten.js';
-export { default as flattenDeep } from './flattenDeep.js';
-export { default as flattenDepth } from './flattenDepth.js';
-export { default as fromPairs } from './fromPairs.js';
-export { default as head } from './head.js';
-export { default as indexOf } from './indexOf.js';
-export { default as initial } from './initial.js';
-export { default as intersection } from './intersection.js';
-export { default as intersectionBy } from './intersectionBy.js';
-export { default as intersectionWith } from './intersectionWith.js';
-export { default as join } from './join.js';
-export { default as last } from './last.js';
-export { default as lastIndexOf } from './lastIndexOf.js';
-export { default as nth } from './nth.js';
-export { default as pull } from './pull.js';
-export { default as pullAll } from './pullAll.js';
-export { default as pullAllBy } from './pullAllBy.js';
-export { default as pullAllWith } from './pullAllWith.js';
-export { default as pullAt } from './pullAt.js';
-export { default as remove } from './remove.js';
-export { default as reverse } from './reverse.js';
-export { default as slice } from './slice.js';
-export { default as sortedIndex } from './sortedIndex.js';
-export { default as sortedIndexBy } from './sortedIndexBy.js';
-export { default as sortedIndexOf } from './sortedIndexOf.js';
-export { default as sortedLastIndex } from './sortedLastIndex.js';
-export { default as sortedLastIndexBy } from './sortedLastIndexBy.js';
-export { default as sortedLastIndexOf } from './sortedLastIndexOf.js';
-export { default as sortedUniq } from './sortedUniq.js';
-export { default as sortedUniqBy } from './sortedUniqBy.js';
-export { default as tail } from './tail.js';
-export { default as take } from './take.js';
-export { default as takeRight } from './takeRight.js';
-export { default as takeRightWhile } from './takeRightWhile.js';
-export { default as takeWhile } from './takeWhile.js';
-export { default as union } from './union.js';
-export { default as unionBy } from './unionBy.js';
-export { default as unionWith } from './unionWith.js';
-export { default as uniq } from './uniq.js';
-export { default as uniqBy } from './uniqBy.js';
-export { default as uniqWith } from './uniqWith.js';
-export { default as unzip } from './unzip.js';
-export { default as unzipWith } from './unzipWith.js';
-export { default as without } from './without.js';
-export { default as xor } from './xor.js';
-export { default as xorBy } from './xorBy.js';
-export { default as xorWith } from './xorWith.js';
-export { default as zip } from './zip.js';
-export { default as zipObject } from './zipObject.js';
-export { default as zipObjectDeep } from './zipObjectDeep.js';
-export { default as zipWith } from './zipWith.js';
-export { default } from './array.default.js';
diff --git a/node_modules/lodash-es/ary.js b/node_modules/lodash-es/ary.js
deleted file mode 100644
index eb64a45..0000000
--- a/node_modules/lodash-es/ary.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import createWrap from './_createWrap.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_ARY_FLAG = 128;
-
-/**
- * Creates a function that invokes `func`, with up to `n` arguments,
- * ignoring any additional arguments.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Function
- * @param {Function} func The function to cap arguments for.
- * @param {number} [n=func.length] The arity cap.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {Function} Returns the new capped function.
- * @example
- *
- * _.map(['6', '8', '10'], _.ary(parseInt, 1));
- * // => [6, 8, 10]
- */
-function ary(func, n, guard) {
- n = guard ? undefined : n;
- n = (func && n == null) ? func.length : n;
- return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n);
-}
-
-export default ary;
diff --git a/node_modules/lodash-es/assign.js b/node_modules/lodash-es/assign.js
deleted file mode 100644
index ed9329f..0000000
--- a/node_modules/lodash-es/assign.js
+++ /dev/null
@@ -1,58 +0,0 @@
-import assignValue from './_assignValue.js';
-import copyObject from './_copyObject.js';
-import createAssigner from './_createAssigner.js';
-import isArrayLike from './isArrayLike.js';
-import isPrototype from './_isPrototype.js';
-import keys from './keys.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Assigns own enumerable string keyed properties of source objects to the
- * destination object. Source objects are applied from left to right.
- * Subsequent sources overwrite property assignments of previous sources.
- *
- * **Note:** This method mutates `object` and is loosely based on
- * [`Object.assign`](https://mdn.io/Object/assign).
- *
- * @static
- * @memberOf _
- * @since 0.10.0
- * @category Object
- * @param {Object} object The destination object.
- * @param {...Object} [sources] The source objects.
- * @returns {Object} Returns `object`.
- * @see _.assignIn
- * @example
- *
- * function Foo() {
- * this.a = 1;
- * }
- *
- * function Bar() {
- * this.c = 3;
- * }
- *
- * Foo.prototype.b = 2;
- * Bar.prototype.d = 4;
- *
- * _.assign({ 'a': 0 }, new Foo, new Bar);
- * // => { 'a': 1, 'c': 3 }
- */
-var assign = createAssigner(function(object, source) {
- if (isPrototype(source) || isArrayLike(source)) {
- copyObject(source, keys(source), object);
- return;
- }
- for (var key in source) {
- if (hasOwnProperty.call(source, key)) {
- assignValue(object, key, source[key]);
- }
- }
-});
-
-export default assign;
diff --git a/node_modules/lodash-es/assignIn.js b/node_modules/lodash-es/assignIn.js
deleted file mode 100644
index 8aab0e0..0000000
--- a/node_modules/lodash-es/assignIn.js
+++ /dev/null
@@ -1,40 +0,0 @@
-import copyObject from './_copyObject.js';
-import createAssigner from './_createAssigner.js';
-import keysIn from './keysIn.js';
-
-/**
- * This method is like `_.assign` except that it iterates over own and
- * inherited source properties.
- *
- * **Note:** This method mutates `object`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @alias extend
- * @category Object
- * @param {Object} object The destination object.
- * @param {...Object} [sources] The source objects.
- * @returns {Object} Returns `object`.
- * @see _.assign
- * @example
- *
- * function Foo() {
- * this.a = 1;
- * }
- *
- * function Bar() {
- * this.c = 3;
- * }
- *
- * Foo.prototype.b = 2;
- * Bar.prototype.d = 4;
- *
- * _.assignIn({ 'a': 0 }, new Foo, new Bar);
- * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 }
- */
-var assignIn = createAssigner(function(object, source) {
- copyObject(source, keysIn(source), object);
-});
-
-export default assignIn;
diff --git a/node_modules/lodash-es/assignInWith.js b/node_modules/lodash-es/assignInWith.js
deleted file mode 100644
index c7864a1..0000000
--- a/node_modules/lodash-es/assignInWith.js
+++ /dev/null
@@ -1,38 +0,0 @@
-import copyObject from './_copyObject.js';
-import createAssigner from './_createAssigner.js';
-import keysIn from './keysIn.js';
-
-/**
- * This method is like `_.assignIn` except that it accepts `customizer`
- * which is invoked to produce the assigned values. If `customizer` returns
- * `undefined`, assignment is handled by the method instead. The `customizer`
- * is invoked with five arguments: (objValue, srcValue, key, object, source).
- *
- * **Note:** This method mutates `object`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @alias extendWith
- * @category Object
- * @param {Object} object The destination object.
- * @param {...Object} sources The source objects.
- * @param {Function} [customizer] The function to customize assigned values.
- * @returns {Object} Returns `object`.
- * @see _.assignWith
- * @example
- *
- * function customizer(objValue, srcValue) {
- * return _.isUndefined(objValue) ? srcValue : objValue;
- * }
- *
- * var defaults = _.partialRight(_.assignInWith, customizer);
- *
- * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });
- * // => { 'a': 1, 'b': 2 }
- */
-var assignInWith = createAssigner(function(object, source, srcIndex, customizer) {
- copyObject(source, keysIn(source), object, customizer);
-});
-
-export default assignInWith;
diff --git a/node_modules/lodash-es/assignWith.js b/node_modules/lodash-es/assignWith.js
deleted file mode 100644
index f19d7c5..0000000
--- a/node_modules/lodash-es/assignWith.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import copyObject from './_copyObject.js';
-import createAssigner from './_createAssigner.js';
-import keys from './keys.js';
-
-/**
- * This method is like `_.assign` except that it accepts `customizer`
- * which is invoked to produce the assigned values. If `customizer` returns
- * `undefined`, assignment is handled by the method instead. The `customizer`
- * is invoked with five arguments: (objValue, srcValue, key, object, source).
- *
- * **Note:** This method mutates `object`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Object
- * @param {Object} object The destination object.
- * @param {...Object} sources The source objects.
- * @param {Function} [customizer] The function to customize assigned values.
- * @returns {Object} Returns `object`.
- * @see _.assignInWith
- * @example
- *
- * function customizer(objValue, srcValue) {
- * return _.isUndefined(objValue) ? srcValue : objValue;
- * }
- *
- * var defaults = _.partialRight(_.assignWith, customizer);
- *
- * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });
- * // => { 'a': 1, 'b': 2 }
- */
-var assignWith = createAssigner(function(object, source, srcIndex, customizer) {
- copyObject(source, keys(source), object, customizer);
-});
-
-export default assignWith;
diff --git a/node_modules/lodash-es/at.js b/node_modules/lodash-es/at.js
deleted file mode 100644
index 6475c67..0000000
--- a/node_modules/lodash-es/at.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import baseAt from './_baseAt.js';
-import flatRest from './_flatRest.js';
-
-/**
- * Creates an array of values corresponding to `paths` of `object`.
- *
- * @static
- * @memberOf _
- * @since 1.0.0
- * @category Object
- * @param {Object} object The object to iterate over.
- * @param {...(string|string[])} [paths] The property paths to pick.
- * @returns {Array} Returns the picked values.
- * @example
- *
- * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };
- *
- * _.at(object, ['a[0].b.c', 'a[1]']);
- * // => [3, 4]
- */
-var at = flatRest(baseAt);
-
-export default at;
diff --git a/node_modules/lodash-es/attempt.js b/node_modules/lodash-es/attempt.js
deleted file mode 100644
index ff4df28..0000000
--- a/node_modules/lodash-es/attempt.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import apply from './_apply.js';
-import baseRest from './_baseRest.js';
-import isError from './isError.js';
-
-/**
- * Attempts to invoke `func`, returning either the result or the caught error
- * object. Any additional arguments are provided to `func` when it's invoked.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Util
- * @param {Function} func The function to attempt.
- * @param {...*} [args] The arguments to invoke `func` with.
- * @returns {*} Returns the `func` result or error object.
- * @example
- *
- * // Avoid throwing errors for invalid selectors.
- * var elements = _.attempt(function(selector) {
- * return document.querySelectorAll(selector);
- * }, '>_>');
- *
- * if (_.isError(elements)) {
- * elements = [];
- * }
- */
-var attempt = baseRest(function(func, args) {
- try {
- return apply(func, undefined, args);
- } catch (e) {
- return isError(e) ? e : new Error(e);
- }
-});
-
-export default attempt;
diff --git a/node_modules/lodash-es/before.js b/node_modules/lodash-es/before.js
deleted file mode 100644
index 15a670b..0000000
--- a/node_modules/lodash-es/before.js
+++ /dev/null
@@ -1,40 +0,0 @@
-import toInteger from './toInteger.js';
-
-/** Error message constants. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/**
- * Creates a function that invokes `func`, with the `this` binding and arguments
- * of the created function, while it's called less than `n` times. Subsequent
- * calls to the created function return the result of the last `func` invocation.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Function
- * @param {number} n The number of calls at which `func` is no longer invoked.
- * @param {Function} func The function to restrict.
- * @returns {Function} Returns the new restricted function.
- * @example
- *
- * jQuery(element).on('click', _.before(5, addContactToList));
- * // => Allows adding up to 4 contacts to the list.
- */
-function before(n, func) {
- var result;
- if (typeof func != 'function') {
- throw new TypeError(FUNC_ERROR_TEXT);
- }
- n = toInteger(n);
- return function() {
- if (--n > 0) {
- result = func.apply(this, arguments);
- }
- if (n <= 1) {
- func = undefined;
- }
- return result;
- };
-}
-
-export default before;
diff --git a/node_modules/lodash-es/bind.js b/node_modules/lodash-es/bind.js
deleted file mode 100644
index 4bc03b3..0000000
--- a/node_modules/lodash-es/bind.js
+++ /dev/null
@@ -1,57 +0,0 @@
-import baseRest from './_baseRest.js';
-import createWrap from './_createWrap.js';
-import getHolder from './_getHolder.js';
-import replaceHolders from './_replaceHolders.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_BIND_FLAG = 1,
- WRAP_PARTIAL_FLAG = 32;
-
-/**
- * Creates a function that invokes `func` with the `this` binding of `thisArg`
- * and `partials` prepended to the arguments it receives.
- *
- * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds,
- * may be used as a placeholder for partially applied arguments.
- *
- * **Note:** Unlike native `Function#bind`, this method doesn't set the "length"
- * property of bound functions.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Function
- * @param {Function} func The function to bind.
- * @param {*} thisArg The `this` binding of `func`.
- * @param {...*} [partials] The arguments to be partially applied.
- * @returns {Function} Returns the new bound function.
- * @example
- *
- * function greet(greeting, punctuation) {
- * return greeting + ' ' + this.user + punctuation;
- * }
- *
- * var object = { 'user': 'fred' };
- *
- * var bound = _.bind(greet, object, 'hi');
- * bound('!');
- * // => 'hi fred!'
- *
- * // Bound with placeholders.
- * var bound = _.bind(greet, object, _, '!');
- * bound('hi');
- * // => 'hi fred!'
- */
-var bind = baseRest(function(func, thisArg, partials) {
- var bitmask = WRAP_BIND_FLAG;
- if (partials.length) {
- var holders = replaceHolders(partials, getHolder(bind));
- bitmask |= WRAP_PARTIAL_FLAG;
- }
- return createWrap(func, bitmask, thisArg, partials, holders);
-});
-
-// Assign default placeholders.
-bind.placeholder = {};
-
-export default bind;
diff --git a/node_modules/lodash-es/bindAll.js b/node_modules/lodash-es/bindAll.js
deleted file mode 100644
index 37ae093..0000000
--- a/node_modules/lodash-es/bindAll.js
+++ /dev/null
@@ -1,41 +0,0 @@
-import arrayEach from './_arrayEach.js';
-import baseAssignValue from './_baseAssignValue.js';
-import bind from './bind.js';
-import flatRest from './_flatRest.js';
-import toKey from './_toKey.js';
-
-/**
- * Binds methods of an object to the object itself, overwriting the existing
- * method.
- *
- * **Note:** This method doesn't set the "length" property of bound functions.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Util
- * @param {Object} object The object to bind and assign the bound methods to.
- * @param {...(string|string[])} methodNames The object method names to bind.
- * @returns {Object} Returns `object`.
- * @example
- *
- * var view = {
- * 'label': 'docs',
- * 'click': function() {
- * console.log('clicked ' + this.label);
- * }
- * };
- *
- * _.bindAll(view, ['click']);
- * jQuery(element).on('click', view.click);
- * // => Logs 'clicked docs' when clicked.
- */
-var bindAll = flatRest(function(object, methodNames) {
- arrayEach(methodNames, function(key) {
- key = toKey(key);
- baseAssignValue(object, key, bind(object[key], object));
- });
- return object;
-});
-
-export default bindAll;
diff --git a/node_modules/lodash-es/bindKey.js b/node_modules/lodash-es/bindKey.js
deleted file mode 100644
index fbbfa29..0000000
--- a/node_modules/lodash-es/bindKey.js
+++ /dev/null
@@ -1,68 +0,0 @@
-import baseRest from './_baseRest.js';
-import createWrap from './_createWrap.js';
-import getHolder from './_getHolder.js';
-import replaceHolders from './_replaceHolders.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_BIND_FLAG = 1,
- WRAP_BIND_KEY_FLAG = 2,
- WRAP_PARTIAL_FLAG = 32;
-
-/**
- * Creates a function that invokes the method at `object[key]` with `partials`
- * prepended to the arguments it receives.
- *
- * This method differs from `_.bind` by allowing bound functions to reference
- * methods that may be redefined or don't yet exist. See
- * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern)
- * for more details.
- *
- * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic
- * builds, may be used as a placeholder for partially applied arguments.
- *
- * @static
- * @memberOf _
- * @since 0.10.0
- * @category Function
- * @param {Object} object The object to invoke the method on.
- * @param {string} key The key of the method.
- * @param {...*} [partials] The arguments to be partially applied.
- * @returns {Function} Returns the new bound function.
- * @example
- *
- * var object = {
- * 'user': 'fred',
- * 'greet': function(greeting, punctuation) {
- * return greeting + ' ' + this.user + punctuation;
- * }
- * };
- *
- * var bound = _.bindKey(object, 'greet', 'hi');
- * bound('!');
- * // => 'hi fred!'
- *
- * object.greet = function(greeting, punctuation) {
- * return greeting + 'ya ' + this.user + punctuation;
- * };
- *
- * bound('!');
- * // => 'hiya fred!'
- *
- * // Bound with placeholders.
- * var bound = _.bindKey(object, 'greet', _, '!');
- * bound('hi');
- * // => 'hiya fred!'
- */
-var bindKey = baseRest(function(object, key, partials) {
- var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG;
- if (partials.length) {
- var holders = replaceHolders(partials, getHolder(bindKey));
- bitmask |= WRAP_PARTIAL_FLAG;
- }
- return createWrap(key, bitmask, object, partials, holders);
-});
-
-// Assign default placeholders.
-bindKey.placeholder = {};
-
-export default bindKey;
diff --git a/node_modules/lodash-es/camelCase.js b/node_modules/lodash-es/camelCase.js
deleted file mode 100644
index cc5ee93..0000000
--- a/node_modules/lodash-es/camelCase.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import capitalize from './capitalize.js';
-import createCompounder from './_createCompounder.js';
-
-/**
- * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category String
- * @param {string} [string=''] The string to convert.
- * @returns {string} Returns the camel cased string.
- * @example
- *
- * _.camelCase('Foo Bar');
- * // => 'fooBar'
- *
- * _.camelCase('--foo-bar--');
- * // => 'fooBar'
- *
- * _.camelCase('__FOO_BAR__');
- * // => 'fooBar'
- */
-var camelCase = createCompounder(function(result, word, index) {
- word = word.toLowerCase();
- return result + (index ? capitalize(word) : word);
-});
-
-export default camelCase;
diff --git a/node_modules/lodash-es/capitalize.js b/node_modules/lodash-es/capitalize.js
deleted file mode 100644
index 557673b..0000000
--- a/node_modules/lodash-es/capitalize.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import toString from './toString.js';
-import upperFirst from './upperFirst.js';
-
-/**
- * Converts the first character of `string` to upper case and the remaining
- * to lower case.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category String
- * @param {string} [string=''] The string to capitalize.
- * @returns {string} Returns the capitalized string.
- * @example
- *
- * _.capitalize('FRED');
- * // => 'Fred'
- */
-function capitalize(string) {
- return upperFirst(toString(string).toLowerCase());
-}
-
-export default capitalize;
diff --git a/node_modules/lodash-es/castArray.js b/node_modules/lodash-es/castArray.js
deleted file mode 100644
index 1ec560a..0000000
--- a/node_modules/lodash-es/castArray.js
+++ /dev/null
@@ -1,44 +0,0 @@
-import isArray from './isArray.js';
-
-/**
- * Casts `value` as an array if it's not one.
- *
- * @static
- * @memberOf _
- * @since 4.4.0
- * @category Lang
- * @param {*} value The value to inspect.
- * @returns {Array} Returns the cast array.
- * @example
- *
- * _.castArray(1);
- * // => [1]
- *
- * _.castArray({ 'a': 1 });
- * // => [{ 'a': 1 }]
- *
- * _.castArray('abc');
- * // => ['abc']
- *
- * _.castArray(null);
- * // => [null]
- *
- * _.castArray(undefined);
- * // => [undefined]
- *
- * _.castArray();
- * // => []
- *
- * var array = [1, 2, 3];
- * console.log(_.castArray(array) === array);
- * // => true
- */
-function castArray() {
- if (!arguments.length) {
- return [];
- }
- var value = arguments[0];
- return isArray(value) ? value : [value];
-}
-
-export default castArray;
diff --git a/node_modules/lodash-es/ceil.js b/node_modules/lodash-es/ceil.js
deleted file mode 100644
index e86212a..0000000
--- a/node_modules/lodash-es/ceil.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import createRound from './_createRound.js';
-
-/**
- * Computes `number` rounded up to `precision`.
- *
- * @static
- * @memberOf _
- * @since 3.10.0
- * @category Math
- * @param {number} number The number to round up.
- * @param {number} [precision=0] The precision to round up to.
- * @returns {number} Returns the rounded up number.
- * @example
- *
- * _.ceil(4.006);
- * // => 5
- *
- * _.ceil(6.004, 2);
- * // => 6.01
- *
- * _.ceil(6040, -2);
- * // => 6100
- */
-var ceil = createRound('ceil');
-
-export default ceil;
diff --git a/node_modules/lodash-es/chain.js b/node_modules/lodash-es/chain.js
deleted file mode 100644
index 6556af1..0000000
--- a/node_modules/lodash-es/chain.js
+++ /dev/null
@@ -1,38 +0,0 @@
-import lodash from './wrapperLodash.js';
-
-/**
- * Creates a `lodash` wrapper instance that wraps `value` with explicit method
- * chain sequences enabled. The result of such sequences must be unwrapped
- * with `_#value`.
- *
- * @static
- * @memberOf _
- * @since 1.3.0
- * @category Seq
- * @param {*} value The value to wrap.
- * @returns {Object} Returns the new `lodash` wrapper instance.
- * @example
- *
- * var users = [
- * { 'user': 'barney', 'age': 36 },
- * { 'user': 'fred', 'age': 40 },
- * { 'user': 'pebbles', 'age': 1 }
- * ];
- *
- * var youngest = _
- * .chain(users)
- * .sortBy('age')
- * .map(function(o) {
- * return o.user + ' is ' + o.age;
- * })
- * .head()
- * .value();
- * // => 'pebbles is 1'
- */
-function chain(value) {
- var result = lodash(value);
- result.__chain__ = true;
- return result;
-}
-
-export default chain;
diff --git a/node_modules/lodash-es/chunk.js b/node_modules/lodash-es/chunk.js
deleted file mode 100644
index 70dd983..0000000
--- a/node_modules/lodash-es/chunk.js
+++ /dev/null
@@ -1,50 +0,0 @@
-import baseSlice from './_baseSlice.js';
-import isIterateeCall from './_isIterateeCall.js';
-import toInteger from './toInteger.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeCeil = Math.ceil,
- nativeMax = Math.max;
-
-/**
- * Creates an array of elements split into groups the length of `size`.
- * If `array` can't be split evenly, the final chunk will be the remaining
- * elements.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Array
- * @param {Array} array The array to process.
- * @param {number} [size=1] The length of each chunk
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {Array} Returns the new array of chunks.
- * @example
- *
- * _.chunk(['a', 'b', 'c', 'd'], 2);
- * // => [['a', 'b'], ['c', 'd']]
- *
- * _.chunk(['a', 'b', 'c', 'd'], 3);
- * // => [['a', 'b', 'c'], ['d']]
- */
-function chunk(array, size, guard) {
- if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) {
- size = 1;
- } else {
- size = nativeMax(toInteger(size), 0);
- }
- var length = array == null ? 0 : array.length;
- if (!length || size < 1) {
- return [];
- }
- var index = 0,
- resIndex = 0,
- result = Array(nativeCeil(length / size));
-
- while (index < length) {
- result[resIndex++] = baseSlice(array, index, (index += size));
- }
- return result;
-}
-
-export default chunk;
diff --git a/node_modules/lodash-es/clamp.js b/node_modules/lodash-es/clamp.js
deleted file mode 100644
index fbb5116..0000000
--- a/node_modules/lodash-es/clamp.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import baseClamp from './_baseClamp.js';
-import toNumber from './toNumber.js';
-
-/**
- * Clamps `number` within the inclusive `lower` and `upper` bounds.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Number
- * @param {number} number The number to clamp.
- * @param {number} [lower] The lower bound.
- * @param {number} upper The upper bound.
- * @returns {number} Returns the clamped number.
- * @example
- *
- * _.clamp(-10, -5, 5);
- * // => -5
- *
- * _.clamp(10, -5, 5);
- * // => 5
- */
-function clamp(number, lower, upper) {
- if (upper === undefined) {
- upper = lower;
- lower = undefined;
- }
- if (upper !== undefined) {
- upper = toNumber(upper);
- upper = upper === upper ? upper : 0;
- }
- if (lower !== undefined) {
- lower = toNumber(lower);
- lower = lower === lower ? lower : 0;
- }
- return baseClamp(toNumber(number), lower, upper);
-}
-
-export default clamp;
diff --git a/node_modules/lodash-es/clone.js b/node_modules/lodash-es/clone.js
deleted file mode 100644
index b147012..0000000
--- a/node_modules/lodash-es/clone.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import baseClone from './_baseClone.js';
-
-/** Used to compose bitmasks for cloning. */
-var CLONE_SYMBOLS_FLAG = 4;
-
-/**
- * Creates a shallow clone of `value`.
- *
- * **Note:** This method is loosely based on the
- * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)
- * and supports cloning arrays, array buffers, booleans, date objects, maps,
- * numbers, `Object` objects, regexes, sets, strings, symbols, and typed
- * arrays. The own enumerable properties of `arguments` objects are cloned
- * as plain objects. An empty object is returned for uncloneable values such
- * as error objects, functions, DOM nodes, and WeakMaps.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to clone.
- * @returns {*} Returns the cloned value.
- * @see _.cloneDeep
- * @example
- *
- * var objects = [{ 'a': 1 }, { 'b': 2 }];
- *
- * var shallow = _.clone(objects);
- * console.log(shallow[0] === objects[0]);
- * // => true
- */
-function clone(value) {
- return baseClone(value, CLONE_SYMBOLS_FLAG);
-}
-
-export default clone;
diff --git a/node_modules/lodash-es/cloneDeep.js b/node_modules/lodash-es/cloneDeep.js
deleted file mode 100644
index 44d403d..0000000
--- a/node_modules/lodash-es/cloneDeep.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import baseClone from './_baseClone.js';
-
-/** Used to compose bitmasks for cloning. */
-var CLONE_DEEP_FLAG = 1,
- CLONE_SYMBOLS_FLAG = 4;
-
-/**
- * This method is like `_.clone` except that it recursively clones `value`.
- *
- * @static
- * @memberOf _
- * @since 1.0.0
- * @category Lang
- * @param {*} value The value to recursively clone.
- * @returns {*} Returns the deep cloned value.
- * @see _.clone
- * @example
- *
- * var objects = [{ 'a': 1 }, { 'b': 2 }];
- *
- * var deep = _.cloneDeep(objects);
- * console.log(deep[0] === objects[0]);
- * // => false
- */
-function cloneDeep(value) {
- return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);
-}
-
-export default cloneDeep;
diff --git a/node_modules/lodash-es/cloneDeepWith.js b/node_modules/lodash-es/cloneDeepWith.js
deleted file mode 100644
index 8cd7885..0000000
--- a/node_modules/lodash-es/cloneDeepWith.js
+++ /dev/null
@@ -1,40 +0,0 @@
-import baseClone from './_baseClone.js';
-
-/** Used to compose bitmasks for cloning. */
-var CLONE_DEEP_FLAG = 1,
- CLONE_SYMBOLS_FLAG = 4;
-
-/**
- * This method is like `_.cloneWith` except that it recursively clones `value`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {*} value The value to recursively clone.
- * @param {Function} [customizer] The function to customize cloning.
- * @returns {*} Returns the deep cloned value.
- * @see _.cloneWith
- * @example
- *
- * function customizer(value) {
- * if (_.isElement(value)) {
- * return value.cloneNode(true);
- * }
- * }
- *
- * var el = _.cloneDeepWith(document.body, customizer);
- *
- * console.log(el === document.body);
- * // => false
- * console.log(el.nodeName);
- * // => 'BODY'
- * console.log(el.childNodes.length);
- * // => 20
- */
-function cloneDeepWith(value, customizer) {
- customizer = typeof customizer == 'function' ? customizer : undefined;
- return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer);
-}
-
-export default cloneDeepWith;
diff --git a/node_modules/lodash-es/cloneWith.js b/node_modules/lodash-es/cloneWith.js
deleted file mode 100644
index c900df1..0000000
--- a/node_modules/lodash-es/cloneWith.js
+++ /dev/null
@@ -1,42 +0,0 @@
-import baseClone from './_baseClone.js';
-
-/** Used to compose bitmasks for cloning. */
-var CLONE_SYMBOLS_FLAG = 4;
-
-/**
- * This method is like `_.clone` except that it accepts `customizer` which
- * is invoked to produce the cloned value. If `customizer` returns `undefined`,
- * cloning is handled by the method instead. The `customizer` is invoked with
- * up to four arguments; (value [, index|key, object, stack]).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {*} value The value to clone.
- * @param {Function} [customizer] The function to customize cloning.
- * @returns {*} Returns the cloned value.
- * @see _.cloneDeepWith
- * @example
- *
- * function customizer(value) {
- * if (_.isElement(value)) {
- * return value.cloneNode(false);
- * }
- * }
- *
- * var el = _.cloneWith(document.body, customizer);
- *
- * console.log(el === document.body);
- * // => false
- * console.log(el.nodeName);
- * // => 'BODY'
- * console.log(el.childNodes.length);
- * // => 0
- */
-function cloneWith(value, customizer) {
- customizer = typeof customizer == 'function' ? customizer : undefined;
- return baseClone(value, CLONE_SYMBOLS_FLAG, customizer);
-}
-
-export default cloneWith;
diff --git a/node_modules/lodash-es/collection.default.js b/node_modules/lodash-es/collection.default.js
deleted file mode 100644
index 2f262bf..0000000
--- a/node_modules/lodash-es/collection.default.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import countBy from './countBy.js';
-import each from './each.js';
-import eachRight from './eachRight.js';
-import every from './every.js';
-import filter from './filter.js';
-import find from './find.js';
-import findLast from './findLast.js';
-import flatMap from './flatMap.js';
-import flatMapDeep from './flatMapDeep.js';
-import flatMapDepth from './flatMapDepth.js';
-import forEach from './forEach.js';
-import forEachRight from './forEachRight.js';
-import groupBy from './groupBy.js';
-import includes from './includes.js';
-import invokeMap from './invokeMap.js';
-import keyBy from './keyBy.js';
-import map from './map.js';
-import orderBy from './orderBy.js';
-import partition from './partition.js';
-import reduce from './reduce.js';
-import reduceRight from './reduceRight.js';
-import reject from './reject.js';
-import sample from './sample.js';
-import sampleSize from './sampleSize.js';
-import shuffle from './shuffle.js';
-import size from './size.js';
-import some from './some.js';
-import sortBy from './sortBy.js';
-
-export default {
- countBy, each, eachRight, every, filter,
- find, findLast, flatMap, flatMapDeep, flatMapDepth,
- forEach, forEachRight, groupBy, includes, invokeMap,
- keyBy, map, orderBy, partition, reduce,
- reduceRight, reject, sample, sampleSize, shuffle,
- size, some, sortBy
-};
diff --git a/node_modules/lodash-es/collection.js b/node_modules/lodash-es/collection.js
deleted file mode 100644
index 2c9fab9..0000000
--- a/node_modules/lodash-es/collection.js
+++ /dev/null
@@ -1,29 +0,0 @@
-export { default as countBy } from './countBy.js';
-export { default as each } from './each.js';
-export { default as eachRight } from './eachRight.js';
-export { default as every } from './every.js';
-export { default as filter } from './filter.js';
-export { default as find } from './find.js';
-export { default as findLast } from './findLast.js';
-export { default as flatMap } from './flatMap.js';
-export { default as flatMapDeep } from './flatMapDeep.js';
-export { default as flatMapDepth } from './flatMapDepth.js';
-export { default as forEach } from './forEach.js';
-export { default as forEachRight } from './forEachRight.js';
-export { default as groupBy } from './groupBy.js';
-export { default as includes } from './includes.js';
-export { default as invokeMap } from './invokeMap.js';
-export { default as keyBy } from './keyBy.js';
-export { default as map } from './map.js';
-export { default as orderBy } from './orderBy.js';
-export { default as partition } from './partition.js';
-export { default as reduce } from './reduce.js';
-export { default as reduceRight } from './reduceRight.js';
-export { default as reject } from './reject.js';
-export { default as sample } from './sample.js';
-export { default as sampleSize } from './sampleSize.js';
-export { default as shuffle } from './shuffle.js';
-export { default as size } from './size.js';
-export { default as some } from './some.js';
-export { default as sortBy } from './sortBy.js';
-export { default } from './collection.default.js';
diff --git a/node_modules/lodash-es/commit.js b/node_modules/lodash-es/commit.js
deleted file mode 100644
index e449abe..0000000
--- a/node_modules/lodash-es/commit.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import LodashWrapper from './_LodashWrapper.js';
-
-/**
- * Executes the chain sequence and returns the wrapped result.
- *
- * @name commit
- * @memberOf _
- * @since 3.2.0
- * @category Seq
- * @returns {Object} Returns the new `lodash` wrapper instance.
- * @example
- *
- * var array = [1, 2];
- * var wrapped = _(array).push(3);
- *
- * console.log(array);
- * // => [1, 2]
- *
- * wrapped = wrapped.commit();
- * console.log(array);
- * // => [1, 2, 3]
- *
- * wrapped.last();
- * // => 3
- *
- * console.log(array);
- * // => [1, 2, 3]
- */
-function wrapperCommit() {
- return new LodashWrapper(this.value(), this.__chain__);
-}
-
-export default wrapperCommit;
diff --git a/node_modules/lodash-es/compact.js b/node_modules/lodash-es/compact.js
deleted file mode 100644
index b644f28..0000000
--- a/node_modules/lodash-es/compact.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * Creates an array with all falsey values removed. The values `false`, `null`,
- * `0`, `""`, `undefined`, and `NaN` are falsey.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Array
- * @param {Array} array The array to compact.
- * @returns {Array} Returns the new array of filtered values.
- * @example
- *
- * _.compact([0, 1, false, 2, '', 3]);
- * // => [1, 2, 3]
- */
-function compact(array) {
- var index = -1,
- length = array == null ? 0 : array.length,
- resIndex = 0,
- result = [];
-
- while (++index < length) {
- var value = array[index];
- if (value) {
- result[resIndex++] = value;
- }
- }
- return result;
-}
-
-export default compact;
diff --git a/node_modules/lodash-es/concat.js b/node_modules/lodash-es/concat.js
deleted file mode 100644
index 4f598c3..0000000
--- a/node_modules/lodash-es/concat.js
+++ /dev/null
@@ -1,43 +0,0 @@
-import arrayPush from './_arrayPush.js';
-import baseFlatten from './_baseFlatten.js';
-import copyArray from './_copyArray.js';
-import isArray from './isArray.js';
-
-/**
- * Creates a new array concatenating `array` with any additional arrays
- * and/or values.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The array to concatenate.
- * @param {...*} [values] The values to concatenate.
- * @returns {Array} Returns the new concatenated array.
- * @example
- *
- * var array = [1];
- * var other = _.concat(array, 2, [3], [[4]]);
- *
- * console.log(other);
- * // => [1, 2, 3, [4]]
- *
- * console.log(array);
- * // => [1]
- */
-function concat() {
- var length = arguments.length;
- if (!length) {
- return [];
- }
- var args = Array(length - 1),
- array = arguments[0],
- index = length;
-
- while (index--) {
- args[index - 1] = arguments[index];
- }
- return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1));
-}
-
-export default concat;
diff --git a/node_modules/lodash-es/cond.js b/node_modules/lodash-es/cond.js
deleted file mode 100644
index 21eec13..0000000
--- a/node_modules/lodash-es/cond.js
+++ /dev/null
@@ -1,60 +0,0 @@
-import apply from './_apply.js';
-import arrayMap from './_arrayMap.js';
-import baseIteratee from './_baseIteratee.js';
-import baseRest from './_baseRest.js';
-
-/** Error message constants. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/**
- * Creates a function that iterates over `pairs` and invokes the corresponding
- * function of the first predicate to return truthy. The predicate-function
- * pairs are invoked with the `this` binding and arguments of the created
- * function.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Util
- * @param {Array} pairs The predicate-function pairs.
- * @returns {Function} Returns the new composite function.
- * @example
- *
- * var func = _.cond([
- * [_.matches({ 'a': 1 }), _.constant('matches A')],
- * [_.conforms({ 'b': _.isNumber }), _.constant('matches B')],
- * [_.stubTrue, _.constant('no match')]
- * ]);
- *
- * func({ 'a': 1, 'b': 2 });
- * // => 'matches A'
- *
- * func({ 'a': 0, 'b': 1 });
- * // => 'matches B'
- *
- * func({ 'a': '1', 'b': '2' });
- * // => 'no match'
- */
-function cond(pairs) {
- var length = pairs == null ? 0 : pairs.length,
- toIteratee = baseIteratee;
-
- pairs = !length ? [] : arrayMap(pairs, function(pair) {
- if (typeof pair[1] != 'function') {
- throw new TypeError(FUNC_ERROR_TEXT);
- }
- return [toIteratee(pair[0]), pair[1]];
- });
-
- return baseRest(function(args) {
- var index = -1;
- while (++index < length) {
- var pair = pairs[index];
- if (apply(pair[0], this, args)) {
- return apply(pair[1], this, args);
- }
- }
- });
-}
-
-export default cond;
diff --git a/node_modules/lodash-es/conforms.js b/node_modules/lodash-es/conforms.js
deleted file mode 100644
index 2fb1ebe..0000000
--- a/node_modules/lodash-es/conforms.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import baseClone from './_baseClone.js';
-import baseConforms from './_baseConforms.js';
-
-/** Used to compose bitmasks for cloning. */
-var CLONE_DEEP_FLAG = 1;
-
-/**
- * Creates a function that invokes the predicate properties of `source` with
- * the corresponding property values of a given object, returning `true` if
- * all predicates return truthy, else `false`.
- *
- * **Note:** The created function is equivalent to `_.conformsTo` with
- * `source` partially applied.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Util
- * @param {Object} source The object of property predicates to conform to.
- * @returns {Function} Returns the new spec function.
- * @example
- *
- * var objects = [
- * { 'a': 2, 'b': 1 },
- * { 'a': 1, 'b': 2 }
- * ];
- *
- * _.filter(objects, _.conforms({ 'b': function(n) { return n > 1; } }));
- * // => [{ 'a': 1, 'b': 2 }]
- */
-function conforms(source) {
- return baseConforms(baseClone(source, CLONE_DEEP_FLAG));
-}
-
-export default conforms;
diff --git a/node_modules/lodash-es/conformsTo.js b/node_modules/lodash-es/conformsTo.js
deleted file mode 100644
index 6f011ba..0000000
--- a/node_modules/lodash-es/conformsTo.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import baseConformsTo from './_baseConformsTo.js';
-import keys from './keys.js';
-
-/**
- * Checks if `object` conforms to `source` by invoking the predicate
- * properties of `source` with the corresponding property values of `object`.
- *
- * **Note:** This method is equivalent to `_.conforms` when `source` is
- * partially applied.
- *
- * @static
- * @memberOf _
- * @since 4.14.0
- * @category Lang
- * @param {Object} object The object to inspect.
- * @param {Object} source The object of property predicates to conform to.
- * @returns {boolean} Returns `true` if `object` conforms, else `false`.
- * @example
- *
- * var object = { 'a': 1, 'b': 2 };
- *
- * _.conformsTo(object, { 'b': function(n) { return n > 1; } });
- * // => true
- *
- * _.conformsTo(object, { 'b': function(n) { return n > 2; } });
- * // => false
- */
-function conformsTo(object, source) {
- return source == null || baseConformsTo(object, source, keys(source));
-}
-
-export default conformsTo;
diff --git a/node_modules/lodash-es/constant.js b/node_modules/lodash-es/constant.js
deleted file mode 100644
index c8dac98..0000000
--- a/node_modules/lodash-es/constant.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Creates a function that returns `value`.
- *
- * @static
- * @memberOf _
- * @since 2.4.0
- * @category Util
- * @param {*} value The value to return from the new function.
- * @returns {Function} Returns the new constant function.
- * @example
- *
- * var objects = _.times(2, _.constant({ 'a': 1 }));
- *
- * console.log(objects);
- * // => [{ 'a': 1 }, { 'a': 1 }]
- *
- * console.log(objects[0] === objects[1]);
- * // => true
- */
-function constant(value) {
- return function() {
- return value;
- };
-}
-
-export default constant;
diff --git a/node_modules/lodash-es/countBy.js b/node_modules/lodash-es/countBy.js
deleted file mode 100644
index 2d01213..0000000
--- a/node_modules/lodash-es/countBy.js
+++ /dev/null
@@ -1,40 +0,0 @@
-import baseAssignValue from './_baseAssignValue.js';
-import createAggregator from './_createAggregator.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Creates an object composed of keys generated from the results of running
- * each element of `collection` thru `iteratee`. The corresponding value of
- * each key is the number of times the key was returned by `iteratee`. The
- * iteratee is invoked with one argument: (value).
- *
- * @static
- * @memberOf _
- * @since 0.5.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The iteratee to transform keys.
- * @returns {Object} Returns the composed aggregate object.
- * @example
- *
- * _.countBy([6.1, 4.2, 6.3], Math.floor);
- * // => { '4': 1, '6': 2 }
- *
- * // The `_.property` iteratee shorthand.
- * _.countBy(['one', 'two', 'three'], 'length');
- * // => { '3': 2, '5': 1 }
- */
-var countBy = createAggregator(function(result, value, key) {
- if (hasOwnProperty.call(result, key)) {
- ++result[key];
- } else {
- baseAssignValue(result, key, 1);
- }
-});
-
-export default countBy;
diff --git a/node_modules/lodash-es/create.js b/node_modules/lodash-es/create.js
deleted file mode 100644
index 5a9aa37..0000000
--- a/node_modules/lodash-es/create.js
+++ /dev/null
@@ -1,43 +0,0 @@
-import baseAssign from './_baseAssign.js';
-import baseCreate from './_baseCreate.js';
-
-/**
- * Creates an object that inherits from the `prototype` object. If a
- * `properties` object is given, its own enumerable string keyed properties
- * are assigned to the created object.
- *
- * @static
- * @memberOf _
- * @since 2.3.0
- * @category Object
- * @param {Object} prototype The object to inherit from.
- * @param {Object} [properties] The properties to assign to the object.
- * @returns {Object} Returns the new object.
- * @example
- *
- * function Shape() {
- * this.x = 0;
- * this.y = 0;
- * }
- *
- * function Circle() {
- * Shape.call(this);
- * }
- *
- * Circle.prototype = _.create(Shape.prototype, {
- * 'constructor': Circle
- * });
- *
- * var circle = new Circle;
- * circle instanceof Circle;
- * // => true
- *
- * circle instanceof Shape;
- * // => true
- */
-function create(prototype, properties) {
- var result = baseCreate(prototype);
- return properties == null ? result : baseAssign(result, properties);
-}
-
-export default create;
diff --git a/node_modules/lodash-es/curry.js b/node_modules/lodash-es/curry.js
deleted file mode 100644
index 953102f..0000000
--- a/node_modules/lodash-es/curry.js
+++ /dev/null
@@ -1,57 +0,0 @@
-import createWrap from './_createWrap.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_CURRY_FLAG = 8;
-
-/**
- * Creates a function that accepts arguments of `func` and either invokes
- * `func` returning its result, if at least `arity` number of arguments have
- * been provided, or returns a function that accepts the remaining `func`
- * arguments, and so on. The arity of `func` may be specified if `func.length`
- * is not sufficient.
- *
- * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds,
- * may be used as a placeholder for provided arguments.
- *
- * **Note:** This method doesn't set the "length" property of curried functions.
- *
- * @static
- * @memberOf _
- * @since 2.0.0
- * @category Function
- * @param {Function} func The function to curry.
- * @param {number} [arity=func.length] The arity of `func`.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {Function} Returns the new curried function.
- * @example
- *
- * var abc = function(a, b, c) {
- * return [a, b, c];
- * };
- *
- * var curried = _.curry(abc);
- *
- * curried(1)(2)(3);
- * // => [1, 2, 3]
- *
- * curried(1, 2)(3);
- * // => [1, 2, 3]
- *
- * curried(1, 2, 3);
- * // => [1, 2, 3]
- *
- * // Curried with placeholders.
- * curried(1)(_, 3)(2);
- * // => [1, 2, 3]
- */
-function curry(func, arity, guard) {
- arity = guard ? undefined : arity;
- var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity);
- result.placeholder = curry.placeholder;
- return result;
-}
-
-// Assign default placeholders.
-curry.placeholder = {};
-
-export default curry;
diff --git a/node_modules/lodash-es/curryRight.js b/node_modules/lodash-es/curryRight.js
deleted file mode 100644
index 5cc33aa..0000000
--- a/node_modules/lodash-es/curryRight.js
+++ /dev/null
@@ -1,54 +0,0 @@
-import createWrap from './_createWrap.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_CURRY_RIGHT_FLAG = 16;
-
-/**
- * This method is like `_.curry` except that arguments are applied to `func`
- * in the manner of `_.partialRight` instead of `_.partial`.
- *
- * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic
- * builds, may be used as a placeholder for provided arguments.
- *
- * **Note:** This method doesn't set the "length" property of curried functions.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Function
- * @param {Function} func The function to curry.
- * @param {number} [arity=func.length] The arity of `func`.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {Function} Returns the new curried function.
- * @example
- *
- * var abc = function(a, b, c) {
- * return [a, b, c];
- * };
- *
- * var curried = _.curryRight(abc);
- *
- * curried(3)(2)(1);
- * // => [1, 2, 3]
- *
- * curried(2, 3)(1);
- * // => [1, 2, 3]
- *
- * curried(1, 2, 3);
- * // => [1, 2, 3]
- *
- * // Curried with placeholders.
- * curried(3)(1, _)(2);
- * // => [1, 2, 3]
- */
-function curryRight(func, arity, guard) {
- arity = guard ? undefined : arity;
- var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity);
- result.placeholder = curryRight.placeholder;
- return result;
-}
-
-// Assign default placeholders.
-curryRight.placeholder = {};
-
-export default curryRight;
diff --git a/node_modules/lodash-es/date.default.js b/node_modules/lodash-es/date.default.js
deleted file mode 100644
index 9f1ee49..0000000
--- a/node_modules/lodash-es/date.default.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import now from './now.js';
-
-export default {
- now
-};
diff --git a/node_modules/lodash-es/date.js b/node_modules/lodash-es/date.js
deleted file mode 100644
index bea18b6..0000000
--- a/node_modules/lodash-es/date.js
+++ /dev/null
@@ -1,2 +0,0 @@
-export { default as now } from './now.js';
-export { default } from './date.default.js';
diff --git a/node_modules/lodash-es/debounce.js b/node_modules/lodash-es/debounce.js
deleted file mode 100644
index c65962a..0000000
--- a/node_modules/lodash-es/debounce.js
+++ /dev/null
@@ -1,190 +0,0 @@
-import isObject from './isObject.js';
-import now from './now.js';
-import toNumber from './toNumber.js';
-
-/** Error message constants. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max,
- nativeMin = Math.min;
-
-/**
- * Creates a debounced function that delays invoking `func` until after `wait`
- * milliseconds have elapsed since the last time the debounced function was
- * invoked. The debounced function comes with a `cancel` method to cancel
- * delayed `func` invocations and a `flush` method to immediately invoke them.
- * Provide `options` to indicate whether `func` should be invoked on the
- * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
- * with the last arguments provided to the debounced function. Subsequent
- * calls to the debounced function return the result of the last `func`
- * invocation.
- *
- * **Note:** If `leading` and `trailing` options are `true`, `func` is
- * invoked on the trailing edge of the timeout only if the debounced function
- * is invoked more than once during the `wait` timeout.
- *
- * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
- * until to the next tick, similar to `setTimeout` with a timeout of `0`.
- *
- * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
- * for details over the differences between `_.debounce` and `_.throttle`.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Function
- * @param {Function} func The function to debounce.
- * @param {number} [wait=0] The number of milliseconds to delay.
- * @param {Object} [options={}] The options object.
- * @param {boolean} [options.leading=false]
- * Specify invoking on the leading edge of the timeout.
- * @param {number} [options.maxWait]
- * The maximum time `func` is allowed to be delayed before it's invoked.
- * @param {boolean} [options.trailing=true]
- * Specify invoking on the trailing edge of the timeout.
- * @returns {Function} Returns the new debounced function.
- * @example
- *
- * // Avoid costly calculations while the window size is in flux.
- * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
- *
- * // Invoke `sendMail` when clicked, debouncing subsequent calls.
- * jQuery(element).on('click', _.debounce(sendMail, 300, {
- * 'leading': true,
- * 'trailing': false
- * }));
- *
- * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
- * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
- * var source = new EventSource('/stream');
- * jQuery(source).on('message', debounced);
- *
- * // Cancel the trailing debounced invocation.
- * jQuery(window).on('popstate', debounced.cancel);
- */
-function debounce(func, wait, options) {
- var lastArgs,
- lastThis,
- maxWait,
- result,
- timerId,
- lastCallTime,
- lastInvokeTime = 0,
- leading = false,
- maxing = false,
- trailing = true;
-
- if (typeof func != 'function') {
- throw new TypeError(FUNC_ERROR_TEXT);
- }
- wait = toNumber(wait) || 0;
- if (isObject(options)) {
- leading = !!options.leading;
- maxing = 'maxWait' in options;
- maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
- trailing = 'trailing' in options ? !!options.trailing : trailing;
- }
-
- function invokeFunc(time) {
- var args = lastArgs,
- thisArg = lastThis;
-
- lastArgs = lastThis = undefined;
- lastInvokeTime = time;
- result = func.apply(thisArg, args);
- return result;
- }
-
- function leadingEdge(time) {
- // Reset any `maxWait` timer.
- lastInvokeTime = time;
- // Start the timer for the trailing edge.
- timerId = setTimeout(timerExpired, wait);
- // Invoke the leading edge.
- return leading ? invokeFunc(time) : result;
- }
-
- function remainingWait(time) {
- var timeSinceLastCall = time - lastCallTime,
- timeSinceLastInvoke = time - lastInvokeTime,
- timeWaiting = wait - timeSinceLastCall;
-
- return maxing
- ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)
- : timeWaiting;
- }
-
- function shouldInvoke(time) {
- var timeSinceLastCall = time - lastCallTime,
- timeSinceLastInvoke = time - lastInvokeTime;
-
- // Either this is the first call, activity has stopped and we're at the
- // trailing edge, the system time has gone backwards and we're treating
- // it as the trailing edge, or we've hit the `maxWait` limit.
- return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||
- (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));
- }
-
- function timerExpired() {
- var time = now();
- if (shouldInvoke(time)) {
- return trailingEdge(time);
- }
- // Restart the timer.
- timerId = setTimeout(timerExpired, remainingWait(time));
- }
-
- function trailingEdge(time) {
- timerId = undefined;
-
- // Only invoke if we have `lastArgs` which means `func` has been
- // debounced at least once.
- if (trailing && lastArgs) {
- return invokeFunc(time);
- }
- lastArgs = lastThis = undefined;
- return result;
- }
-
- function cancel() {
- if (timerId !== undefined) {
- clearTimeout(timerId);
- }
- lastInvokeTime = 0;
- lastArgs = lastCallTime = lastThis = timerId = undefined;
- }
-
- function flush() {
- return timerId === undefined ? result : trailingEdge(now());
- }
-
- function debounced() {
- var time = now(),
- isInvoking = shouldInvoke(time);
-
- lastArgs = arguments;
- lastThis = this;
- lastCallTime = time;
-
- if (isInvoking) {
- if (timerId === undefined) {
- return leadingEdge(lastCallTime);
- }
- if (maxing) {
- // Handle invocations in a tight loop.
- timerId = setTimeout(timerExpired, wait);
- return invokeFunc(lastCallTime);
- }
- }
- if (timerId === undefined) {
- timerId = setTimeout(timerExpired, wait);
- }
- return result;
- }
- debounced.cancel = cancel;
- debounced.flush = flush;
- return debounced;
-}
-
-export default debounce;
diff --git a/node_modules/lodash-es/deburr.js b/node_modules/lodash-es/deburr.js
deleted file mode 100644
index 73dc9b3..0000000
--- a/node_modules/lodash-es/deburr.js
+++ /dev/null
@@ -1,45 +0,0 @@
-import deburrLetter from './_deburrLetter.js';
-import toString from './toString.js';
-
-/** Used to match Latin Unicode letters (excluding mathematical operators). */
-var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g;
-
-/** Used to compose unicode character classes. */
-var rsComboMarksRange = '\\u0300-\\u036f',
- reComboHalfMarksRange = '\\ufe20-\\ufe2f',
- rsComboSymbolsRange = '\\u20d0-\\u20ff',
- rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange;
-
-/** Used to compose unicode capture groups. */
-var rsCombo = '[' + rsComboRange + ']';
-
-/**
- * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and
- * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).
- */
-var reComboMark = RegExp(rsCombo, 'g');
-
-/**
- * Deburrs `string` by converting
- * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)
- * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)
- * letters to basic Latin letters and removing
- * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category String
- * @param {string} [string=''] The string to deburr.
- * @returns {string} Returns the deburred string.
- * @example
- *
- * _.deburr('déjà vu');
- * // => 'deja vu'
- */
-function deburr(string) {
- string = toString(string);
- return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');
-}
-
-export default deburr;
diff --git a/node_modules/lodash-es/defaultTo.js b/node_modules/lodash-es/defaultTo.js
deleted file mode 100644
index 2fafeac..0000000
--- a/node_modules/lodash-es/defaultTo.js
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * Checks `value` to determine whether a default value should be returned in
- * its place. The `defaultValue` is returned if `value` is `NaN`, `null`,
- * or `undefined`.
- *
- * @static
- * @memberOf _
- * @since 4.14.0
- * @category Util
- * @param {*} value The value to check.
- * @param {*} defaultValue The default value.
- * @returns {*} Returns the resolved value.
- * @example
- *
- * _.defaultTo(1, 10);
- * // => 1
- *
- * _.defaultTo(undefined, 10);
- * // => 10
- */
-function defaultTo(value, defaultValue) {
- return (value == null || value !== value) ? defaultValue : value;
-}
-
-export default defaultTo;
diff --git a/node_modules/lodash-es/defaults.js b/node_modules/lodash-es/defaults.js
deleted file mode 100644
index 122908a..0000000
--- a/node_modules/lodash-es/defaults.js
+++ /dev/null
@@ -1,64 +0,0 @@
-import baseRest from './_baseRest.js';
-import eq from './eq.js';
-import isIterateeCall from './_isIterateeCall.js';
-import keysIn from './keysIn.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Assigns own and inherited enumerable string keyed properties of source
- * objects to the destination object for all destination properties that
- * resolve to `undefined`. Source objects are applied from left to right.
- * Once a property is set, additional values of the same property are ignored.
- *
- * **Note:** This method mutates `object`.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Object
- * @param {Object} object The destination object.
- * @param {...Object} [sources] The source objects.
- * @returns {Object} Returns `object`.
- * @see _.defaultsDeep
- * @example
- *
- * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });
- * // => { 'a': 1, 'b': 2 }
- */
-var defaults = baseRest(function(object, sources) {
- object = Object(object);
-
- var index = -1;
- var length = sources.length;
- var guard = length > 2 ? sources[2] : undefined;
-
- if (guard && isIterateeCall(sources[0], sources[1], guard)) {
- length = 1;
- }
-
- while (++index < length) {
- var source = sources[index];
- var props = keysIn(source);
- var propsIndex = -1;
- var propsLength = props.length;
-
- while (++propsIndex < propsLength) {
- var key = props[propsIndex];
- var value = object[key];
-
- if (value === undefined ||
- (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) {
- object[key] = source[key];
- }
- }
- }
-
- return object;
-});
-
-export default defaults;
diff --git a/node_modules/lodash-es/defaultsDeep.js b/node_modules/lodash-es/defaultsDeep.js
deleted file mode 100644
index 409383e..0000000
--- a/node_modules/lodash-es/defaultsDeep.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import apply from './_apply.js';
-import baseRest from './_baseRest.js';
-import customDefaultsMerge from './_customDefaultsMerge.js';
-import mergeWith from './mergeWith.js';
-
-/**
- * This method is like `_.defaults` except that it recursively assigns
- * default properties.
- *
- * **Note:** This method mutates `object`.
- *
- * @static
- * @memberOf _
- * @since 3.10.0
- * @category Object
- * @param {Object} object The destination object.
- * @param {...Object} [sources] The source objects.
- * @returns {Object} Returns `object`.
- * @see _.defaults
- * @example
- *
- * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } });
- * // => { 'a': { 'b': 2, 'c': 3 } }
- */
-var defaultsDeep = baseRest(function(args) {
- args.push(undefined, customDefaultsMerge);
- return apply(mergeWith, undefined, args);
-});
-
-export default defaultsDeep;
diff --git a/node_modules/lodash-es/defer.js b/node_modules/lodash-es/defer.js
deleted file mode 100644
index 7c4c284..0000000
--- a/node_modules/lodash-es/defer.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import baseDelay from './_baseDelay.js';
-import baseRest from './_baseRest.js';
-
-/**
- * Defers invoking the `func` until the current call stack has cleared. Any
- * additional arguments are provided to `func` when it's invoked.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Function
- * @param {Function} func The function to defer.
- * @param {...*} [args] The arguments to invoke `func` with.
- * @returns {number} Returns the timer id.
- * @example
- *
- * _.defer(function(text) {
- * console.log(text);
- * }, 'deferred');
- * // => Logs 'deferred' after one millisecond.
- */
-var defer = baseRest(function(func, args) {
- return baseDelay(func, 1, args);
-});
-
-export default defer;
diff --git a/node_modules/lodash-es/delay.js b/node_modules/lodash-es/delay.js
deleted file mode 100644
index d9b5eb4..0000000
--- a/node_modules/lodash-es/delay.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import baseDelay from './_baseDelay.js';
-import baseRest from './_baseRest.js';
-import toNumber from './toNumber.js';
-
-/**
- * Invokes `func` after `wait` milliseconds. Any additional arguments are
- * provided to `func` when it's invoked.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Function
- * @param {Function} func The function to delay.
- * @param {number} wait The number of milliseconds to delay invocation.
- * @param {...*} [args] The arguments to invoke `func` with.
- * @returns {number} Returns the timer id.
- * @example
- *
- * _.delay(function(text) {
- * console.log(text);
- * }, 1000, 'later');
- * // => Logs 'later' after one second.
- */
-var delay = baseRest(function(func, wait, args) {
- return baseDelay(func, toNumber(wait) || 0, args);
-});
-
-export default delay;
diff --git a/node_modules/lodash-es/difference.js b/node_modules/lodash-es/difference.js
deleted file mode 100644
index ddc1db5..0000000
--- a/node_modules/lodash-es/difference.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import baseDifference from './_baseDifference.js';
-import baseFlatten from './_baseFlatten.js';
-import baseRest from './_baseRest.js';
-import isArrayLikeObject from './isArrayLikeObject.js';
-
-/**
- * Creates an array of `array` values not included in the other given arrays
- * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
- * for equality comparisons. The order and references of result values are
- * determined by the first array.
- *
- * **Note:** Unlike `_.pullAll`, this method returns a new array.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Array
- * @param {Array} array The array to inspect.
- * @param {...Array} [values] The values to exclude.
- * @returns {Array} Returns the new array of filtered values.
- * @see _.without, _.xor
- * @example
- *
- * _.difference([2, 1], [2, 3]);
- * // => [1]
- */
-var difference = baseRest(function(array, values) {
- return isArrayLikeObject(array)
- ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true))
- : [];
-});
-
-export default difference;
diff --git a/node_modules/lodash-es/differenceBy.js b/node_modules/lodash-es/differenceBy.js
deleted file mode 100644
index 983cc54..0000000
--- a/node_modules/lodash-es/differenceBy.js
+++ /dev/null
@@ -1,44 +0,0 @@
-import baseDifference from './_baseDifference.js';
-import baseFlatten from './_baseFlatten.js';
-import baseIteratee from './_baseIteratee.js';
-import baseRest from './_baseRest.js';
-import isArrayLikeObject from './isArrayLikeObject.js';
-import last from './last.js';
-
-/**
- * This method is like `_.difference` except that it accepts `iteratee` which
- * is invoked for each element of `array` and `values` to generate the criterion
- * by which they're compared. The order and references of result values are
- * determined by the first array. The iteratee is invoked with one argument:
- * (value).
- *
- * **Note:** Unlike `_.pullAllBy`, this method returns a new array.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The array to inspect.
- * @param {...Array} [values] The values to exclude.
- * @param {Function} [iteratee=_.identity] The iteratee invoked per element.
- * @returns {Array} Returns the new array of filtered values.
- * @example
- *
- * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor);
- * // => [1.2]
- *
- * // The `_.property` iteratee shorthand.
- * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x');
- * // => [{ 'x': 2 }]
- */
-var differenceBy = baseRest(function(array, values) {
- var iteratee = last(values);
- if (isArrayLikeObject(iteratee)) {
- iteratee = undefined;
- }
- return isArrayLikeObject(array)
- ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), baseIteratee(iteratee, 2))
- : [];
-});
-
-export default differenceBy;
diff --git a/node_modules/lodash-es/differenceWith.js b/node_modules/lodash-es/differenceWith.js
deleted file mode 100644
index 980a68c..0000000
--- a/node_modules/lodash-es/differenceWith.js
+++ /dev/null
@@ -1,40 +0,0 @@
-import baseDifference from './_baseDifference.js';
-import baseFlatten from './_baseFlatten.js';
-import baseRest from './_baseRest.js';
-import isArrayLikeObject from './isArrayLikeObject.js';
-import last from './last.js';
-
-/**
- * This method is like `_.difference` except that it accepts `comparator`
- * which is invoked to compare elements of `array` to `values`. The order and
- * references of result values are determined by the first array. The comparator
- * is invoked with two arguments: (arrVal, othVal).
- *
- * **Note:** Unlike `_.pullAllWith`, this method returns a new array.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The array to inspect.
- * @param {...Array} [values] The values to exclude.
- * @param {Function} [comparator] The comparator invoked per element.
- * @returns {Array} Returns the new array of filtered values.
- * @example
- *
- * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];
- *
- * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual);
- * // => [{ 'x': 2, 'y': 1 }]
- */
-var differenceWith = baseRest(function(array, values) {
- var comparator = last(values);
- if (isArrayLikeObject(comparator)) {
- comparator = undefined;
- }
- return isArrayLikeObject(array)
- ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator)
- : [];
-});
-
-export default differenceWith;
diff --git a/node_modules/lodash-es/divide.js b/node_modules/lodash-es/divide.js
deleted file mode 100644
index f281786..0000000
--- a/node_modules/lodash-es/divide.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import createMathOperation from './_createMathOperation.js';
-
-/**
- * Divide two numbers.
- *
- * @static
- * @memberOf _
- * @since 4.7.0
- * @category Math
- * @param {number} dividend The first number in a division.
- * @param {number} divisor The second number in a division.
- * @returns {number} Returns the quotient.
- * @example
- *
- * _.divide(6, 4);
- * // => 1.5
- */
-var divide = createMathOperation(function(dividend, divisor) {
- return dividend / divisor;
-}, 1);
-
-export default divide;
diff --git a/node_modules/lodash-es/drop.js b/node_modules/lodash-es/drop.js
deleted file mode 100644
index 03e59a9..0000000
--- a/node_modules/lodash-es/drop.js
+++ /dev/null
@@ -1,38 +0,0 @@
-import baseSlice from './_baseSlice.js';
-import toInteger from './toInteger.js';
-
-/**
- * Creates a slice of `array` with `n` elements dropped from the beginning.
- *
- * @static
- * @memberOf _
- * @since 0.5.0
- * @category Array
- * @param {Array} array The array to query.
- * @param {number} [n=1] The number of elements to drop.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.drop([1, 2, 3]);
- * // => [2, 3]
- *
- * _.drop([1, 2, 3], 2);
- * // => [3]
- *
- * _.drop([1, 2, 3], 5);
- * // => []
- *
- * _.drop([1, 2, 3], 0);
- * // => [1, 2, 3]
- */
-function drop(array, n, guard) {
- var length = array == null ? 0 : array.length;
- if (!length) {
- return [];
- }
- n = (guard || n === undefined) ? 1 : toInteger(n);
- return baseSlice(array, n < 0 ? 0 : n, length);
-}
-
-export default drop;
diff --git a/node_modules/lodash-es/dropRight.js b/node_modules/lodash-es/dropRight.js
deleted file mode 100644
index 642f241..0000000
--- a/node_modules/lodash-es/dropRight.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import baseSlice from './_baseSlice.js';
-import toInteger from './toInteger.js';
-
-/**
- * Creates a slice of `array` with `n` elements dropped from the end.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Array
- * @param {Array} array The array to query.
- * @param {number} [n=1] The number of elements to drop.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.dropRight([1, 2, 3]);
- * // => [1, 2]
- *
- * _.dropRight([1, 2, 3], 2);
- * // => [1]
- *
- * _.dropRight([1, 2, 3], 5);
- * // => []
- *
- * _.dropRight([1, 2, 3], 0);
- * // => [1, 2, 3]
- */
-function dropRight(array, n, guard) {
- var length = array == null ? 0 : array.length;
- if (!length) {
- return [];
- }
- n = (guard || n === undefined) ? 1 : toInteger(n);
- n = length - n;
- return baseSlice(array, 0, n < 0 ? 0 : n);
-}
-
-export default dropRight;
diff --git a/node_modules/lodash-es/dropRightWhile.js b/node_modules/lodash-es/dropRightWhile.js
deleted file mode 100644
index c5cdbc6..0000000
--- a/node_modules/lodash-es/dropRightWhile.js
+++ /dev/null
@@ -1,45 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import baseWhile from './_baseWhile.js';
-
-/**
- * Creates a slice of `array` excluding elements dropped from the end.
- * Elements are dropped until `predicate` returns falsey. The predicate is
- * invoked with three arguments: (value, index, array).
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Array
- * @param {Array} array The array to query.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * var users = [
- * { 'user': 'barney', 'active': true },
- * { 'user': 'fred', 'active': false },
- * { 'user': 'pebbles', 'active': false }
- * ];
- *
- * _.dropRightWhile(users, function(o) { return !o.active; });
- * // => objects for ['barney']
- *
- * // The `_.matches` iteratee shorthand.
- * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false });
- * // => objects for ['barney', 'fred']
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.dropRightWhile(users, ['active', false]);
- * // => objects for ['barney']
- *
- * // The `_.property` iteratee shorthand.
- * _.dropRightWhile(users, 'active');
- * // => objects for ['barney', 'fred', 'pebbles']
- */
-function dropRightWhile(array, predicate) {
- return (array && array.length)
- ? baseWhile(array, baseIteratee(predicate, 3), true, true)
- : [];
-}
-
-export default dropRightWhile;
diff --git a/node_modules/lodash-es/dropWhile.js b/node_modules/lodash-es/dropWhile.js
deleted file mode 100644
index 688c4dc..0000000
--- a/node_modules/lodash-es/dropWhile.js
+++ /dev/null
@@ -1,45 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import baseWhile from './_baseWhile.js';
-
-/**
- * Creates a slice of `array` excluding elements dropped from the beginning.
- * Elements are dropped until `predicate` returns falsey. The predicate is
- * invoked with three arguments: (value, index, array).
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Array
- * @param {Array} array The array to query.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * var users = [
- * { 'user': 'barney', 'active': false },
- * { 'user': 'fred', 'active': false },
- * { 'user': 'pebbles', 'active': true }
- * ];
- *
- * _.dropWhile(users, function(o) { return !o.active; });
- * // => objects for ['pebbles']
- *
- * // The `_.matches` iteratee shorthand.
- * _.dropWhile(users, { 'user': 'barney', 'active': false });
- * // => objects for ['fred', 'pebbles']
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.dropWhile(users, ['active', false]);
- * // => objects for ['pebbles']
- *
- * // The `_.property` iteratee shorthand.
- * _.dropWhile(users, 'active');
- * // => objects for ['barney', 'fred', 'pebbles']
- */
-function dropWhile(array, predicate) {
- return (array && array.length)
- ? baseWhile(array, baseIteratee(predicate, 3), true)
- : [];
-}
-
-export default dropWhile;
diff --git a/node_modules/lodash-es/each.js b/node_modules/lodash-es/each.js
deleted file mode 100644
index d2fd2ff..0000000
--- a/node_modules/lodash-es/each.js
+++ /dev/null
@@ -1 +0,0 @@
-export { default } from './forEach.js'
diff --git a/node_modules/lodash-es/eachRight.js b/node_modules/lodash-es/eachRight.js
deleted file mode 100644
index b08d8f5..0000000
--- a/node_modules/lodash-es/eachRight.js
+++ /dev/null
@@ -1 +0,0 @@
-export { default } from './forEachRight.js'
diff --git a/node_modules/lodash-es/endsWith.js b/node_modules/lodash-es/endsWith.js
deleted file mode 100644
index 1554a6e..0000000
--- a/node_modules/lodash-es/endsWith.js
+++ /dev/null
@@ -1,43 +0,0 @@
-import baseClamp from './_baseClamp.js';
-import baseToString from './_baseToString.js';
-import toInteger from './toInteger.js';
-import toString from './toString.js';
-
-/**
- * Checks if `string` ends with the given target string.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category String
- * @param {string} [string=''] The string to inspect.
- * @param {string} [target] The string to search for.
- * @param {number} [position=string.length] The position to search up to.
- * @returns {boolean} Returns `true` if `string` ends with `target`,
- * else `false`.
- * @example
- *
- * _.endsWith('abc', 'c');
- * // => true
- *
- * _.endsWith('abc', 'b');
- * // => false
- *
- * _.endsWith('abc', 'b', 2);
- * // => true
- */
-function endsWith(string, target, position) {
- string = toString(string);
- target = baseToString(target);
-
- var length = string.length;
- position = position === undefined
- ? length
- : baseClamp(toInteger(position), 0, length);
-
- var end = position;
- position -= target.length;
- return position >= 0 && string.slice(position, end) == target;
-}
-
-export default endsWith;
diff --git a/node_modules/lodash-es/entries.js b/node_modules/lodash-es/entries.js
deleted file mode 100644
index d532bf9..0000000
--- a/node_modules/lodash-es/entries.js
+++ /dev/null
@@ -1 +0,0 @@
-export { default } from './toPairs.js'
diff --git a/node_modules/lodash-es/entriesIn.js b/node_modules/lodash-es/entriesIn.js
deleted file mode 100644
index 74db25d..0000000
--- a/node_modules/lodash-es/entriesIn.js
+++ /dev/null
@@ -1 +0,0 @@
-export { default } from './toPairsIn.js'
diff --git a/node_modules/lodash-es/eq.js b/node_modules/lodash-es/eq.js
deleted file mode 100644
index c3206c6..0000000
--- a/node_modules/lodash-es/eq.js
+++ /dev/null
@@ -1,37 +0,0 @@
-/**
- * Performs a
- * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
- * comparison between two values to determine if they are equivalent.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {*} value The value to compare.
- * @param {*} other The other value to compare.
- * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
- * @example
- *
- * var object = { 'a': 1 };
- * var other = { 'a': 1 };
- *
- * _.eq(object, object);
- * // => true
- *
- * _.eq(object, other);
- * // => false
- *
- * _.eq('a', 'a');
- * // => true
- *
- * _.eq('a', Object('a'));
- * // => false
- *
- * _.eq(NaN, NaN);
- * // => true
- */
-function eq(value, other) {
- return value === other || (value !== value && other !== other);
-}
-
-export default eq;
diff --git a/node_modules/lodash-es/escape.js b/node_modules/lodash-es/escape.js
deleted file mode 100644
index 6c720ae..0000000
--- a/node_modules/lodash-es/escape.js
+++ /dev/null
@@ -1,43 +0,0 @@
-import escapeHtmlChar from './_escapeHtmlChar.js';
-import toString from './toString.js';
-
-/** Used to match HTML entities and HTML characters. */
-var reUnescapedHtml = /[&<>"']/g,
- reHasUnescapedHtml = RegExp(reUnescapedHtml.source);
-
-/**
- * Converts the characters "&", "<", ">", '"', and "'" in `string` to their
- * corresponding HTML entities.
- *
- * **Note:** No other characters are escaped. To escape additional
- * characters use a third-party library like [_he_](https://mths.be/he).
- *
- * Though the ">" character is escaped for symmetry, characters like
- * ">" and "/" don't need escaping in HTML and have no special meaning
- * unless they're part of a tag or unquoted attribute value. See
- * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands)
- * (under "semi-related fun fact") for more details.
- *
- * When working with HTML you should always
- * [quote attribute values](http://wonko.com/post/html-escaping) to reduce
- * XSS vectors.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category String
- * @param {string} [string=''] The string to escape.
- * @returns {string} Returns the escaped string.
- * @example
- *
- * _.escape('fred, barney, & pebbles');
- * // => 'fred, barney, & pebbles'
- */
-function escape(string) {
- string = toString(string);
- return (string && reHasUnescapedHtml.test(string))
- ? string.replace(reUnescapedHtml, escapeHtmlChar)
- : string;
-}
-
-export default escape;
diff --git a/node_modules/lodash-es/escapeRegExp.js b/node_modules/lodash-es/escapeRegExp.js
deleted file mode 100644
index 0b904ca..0000000
--- a/node_modules/lodash-es/escapeRegExp.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import toString from './toString.js';
-
-/**
- * Used to match `RegExp`
- * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
- */
-var reRegExpChar = /[\\^$.*+?()[\]{}|]/g,
- reHasRegExpChar = RegExp(reRegExpChar.source);
-
-/**
- * Escapes the `RegExp` special characters "^", "$", "\", ".", "*", "+",
- * "?", "(", ")", "[", "]", "{", "}", and "|" in `string`.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category String
- * @param {string} [string=''] The string to escape.
- * @returns {string} Returns the escaped string.
- * @example
- *
- * _.escapeRegExp('[lodash](https://lodash.com/)');
- * // => '\[lodash\]\(https://lodash\.com/\)'
- */
-function escapeRegExp(string) {
- string = toString(string);
- return (string && reHasRegExpChar.test(string))
- ? string.replace(reRegExpChar, '\\$&')
- : string;
-}
-
-export default escapeRegExp;
diff --git a/node_modules/lodash-es/every.js b/node_modules/lodash-es/every.js
deleted file mode 100644
index f44d02c..0000000
--- a/node_modules/lodash-es/every.js
+++ /dev/null
@@ -1,56 +0,0 @@
-import arrayEvery from './_arrayEvery.js';
-import baseEvery from './_baseEvery.js';
-import baseIteratee from './_baseIteratee.js';
-import isArray from './isArray.js';
-import isIterateeCall from './_isIterateeCall.js';
-
-/**
- * Checks if `predicate` returns truthy for **all** elements of `collection`.
- * Iteration is stopped once `predicate` returns falsey. The predicate is
- * invoked with three arguments: (value, index|key, collection).
- *
- * **Note:** This method returns `true` for
- * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because
- * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of
- * elements of empty collections.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {boolean} Returns `true` if all elements pass the predicate check,
- * else `false`.
- * @example
- *
- * _.every([true, 1, null, 'yes'], Boolean);
- * // => false
- *
- * var users = [
- * { 'user': 'barney', 'age': 36, 'active': false },
- * { 'user': 'fred', 'age': 40, 'active': false }
- * ];
- *
- * // The `_.matches` iteratee shorthand.
- * _.every(users, { 'user': 'barney', 'active': false });
- * // => false
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.every(users, ['active', false]);
- * // => true
- *
- * // The `_.property` iteratee shorthand.
- * _.every(users, 'active');
- * // => false
- */
-function every(collection, predicate, guard) {
- var func = isArray(collection) ? arrayEvery : baseEvery;
- if (guard && isIterateeCall(collection, predicate, guard)) {
- predicate = undefined;
- }
- return func(collection, baseIteratee(predicate, 3));
-}
-
-export default every;
diff --git a/node_modules/lodash-es/extend.js b/node_modules/lodash-es/extend.js
deleted file mode 100644
index 2feb9d1..0000000
--- a/node_modules/lodash-es/extend.js
+++ /dev/null
@@ -1 +0,0 @@
-export { default } from './assignIn.js'
diff --git a/node_modules/lodash-es/extendWith.js b/node_modules/lodash-es/extendWith.js
deleted file mode 100644
index 106469d..0000000
--- a/node_modules/lodash-es/extendWith.js
+++ /dev/null
@@ -1 +0,0 @@
-export { default } from './assignInWith.js'
diff --git a/node_modules/lodash-es/fill.js b/node_modules/lodash-es/fill.js
deleted file mode 100644
index 42c2ba7..0000000
--- a/node_modules/lodash-es/fill.js
+++ /dev/null
@@ -1,45 +0,0 @@
-import baseFill from './_baseFill.js';
-import isIterateeCall from './_isIterateeCall.js';
-
-/**
- * Fills elements of `array` with `value` from `start` up to, but not
- * including, `end`.
- *
- * **Note:** This method mutates `array`.
- *
- * @static
- * @memberOf _
- * @since 3.2.0
- * @category Array
- * @param {Array} array The array to fill.
- * @param {*} value The value to fill `array` with.
- * @param {number} [start=0] The start position.
- * @param {number} [end=array.length] The end position.
- * @returns {Array} Returns `array`.
- * @example
- *
- * var array = [1, 2, 3];
- *
- * _.fill(array, 'a');
- * console.log(array);
- * // => ['a', 'a', 'a']
- *
- * _.fill(Array(3), 2);
- * // => [2, 2, 2]
- *
- * _.fill([4, 6, 8, 10], '*', 1, 3);
- * // => [4, '*', '*', 10]
- */
-function fill(array, value, start, end) {
- var length = array == null ? 0 : array.length;
- if (!length) {
- return [];
- }
- if (start && typeof start != 'number' && isIterateeCall(array, value, start)) {
- start = 0;
- end = length;
- }
- return baseFill(array, value, start, end);
-}
-
-export default fill;
diff --git a/node_modules/lodash-es/filter.js b/node_modules/lodash-es/filter.js
deleted file mode 100644
index e45a7ba..0000000
--- a/node_modules/lodash-es/filter.js
+++ /dev/null
@@ -1,48 +0,0 @@
-import arrayFilter from './_arrayFilter.js';
-import baseFilter from './_baseFilter.js';
-import baseIteratee from './_baseIteratee.js';
-import isArray from './isArray.js';
-
-/**
- * Iterates over elements of `collection`, returning an array of all elements
- * `predicate` returns truthy for. The predicate is invoked with three
- * arguments: (value, index|key, collection).
- *
- * **Note:** Unlike `_.remove`, this method returns a new array.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @returns {Array} Returns the new filtered array.
- * @see _.reject
- * @example
- *
- * var users = [
- * { 'user': 'barney', 'age': 36, 'active': true },
- * { 'user': 'fred', 'age': 40, 'active': false }
- * ];
- *
- * _.filter(users, function(o) { return !o.active; });
- * // => objects for ['fred']
- *
- * // The `_.matches` iteratee shorthand.
- * _.filter(users, { 'age': 36, 'active': true });
- * // => objects for ['barney']
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.filter(users, ['active', false]);
- * // => objects for ['fred']
- *
- * // The `_.property` iteratee shorthand.
- * _.filter(users, 'active');
- * // => objects for ['barney']
- */
-function filter(collection, predicate) {
- var func = isArray(collection) ? arrayFilter : baseFilter;
- return func(collection, baseIteratee(predicate, 3));
-}
-
-export default filter;
diff --git a/node_modules/lodash-es/find.js b/node_modules/lodash-es/find.js
deleted file mode 100644
index fd8de52..0000000
--- a/node_modules/lodash-es/find.js
+++ /dev/null
@@ -1,42 +0,0 @@
-import createFind from './_createFind.js';
-import findIndex from './findIndex.js';
-
-/**
- * Iterates over elements of `collection`, returning the first element
- * `predicate` returns truthy for. The predicate is invoked with three
- * arguments: (value, index|key, collection).
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Collection
- * @param {Array|Object} collection The collection to inspect.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @param {number} [fromIndex=0] The index to search from.
- * @returns {*} Returns the matched element, else `undefined`.
- * @example
- *
- * var users = [
- * { 'user': 'barney', 'age': 36, 'active': true },
- * { 'user': 'fred', 'age': 40, 'active': false },
- * { 'user': 'pebbles', 'age': 1, 'active': true }
- * ];
- *
- * _.find(users, function(o) { return o.age < 40; });
- * // => object for 'barney'
- *
- * // The `_.matches` iteratee shorthand.
- * _.find(users, { 'age': 1, 'active': true });
- * // => object for 'pebbles'
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.find(users, ['active', false]);
- * // => object for 'fred'
- *
- * // The `_.property` iteratee shorthand.
- * _.find(users, 'active');
- * // => object for 'barney'
- */
-var find = createFind(findIndex);
-
-export default find;
diff --git a/node_modules/lodash-es/findIndex.js b/node_modules/lodash-es/findIndex.js
deleted file mode 100644
index c1cd7cd..0000000
--- a/node_modules/lodash-es/findIndex.js
+++ /dev/null
@@ -1,55 +0,0 @@
-import baseFindIndex from './_baseFindIndex.js';
-import baseIteratee from './_baseIteratee.js';
-import toInteger from './toInteger.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * This method is like `_.find` except that it returns the index of the first
- * element `predicate` returns truthy for instead of the element itself.
- *
- * @static
- * @memberOf _
- * @since 1.1.0
- * @category Array
- * @param {Array} array The array to inspect.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @param {number} [fromIndex=0] The index to search from.
- * @returns {number} Returns the index of the found element, else `-1`.
- * @example
- *
- * var users = [
- * { 'user': 'barney', 'active': false },
- * { 'user': 'fred', 'active': false },
- * { 'user': 'pebbles', 'active': true }
- * ];
- *
- * _.findIndex(users, function(o) { return o.user == 'barney'; });
- * // => 0
- *
- * // The `_.matches` iteratee shorthand.
- * _.findIndex(users, { 'user': 'fred', 'active': false });
- * // => 1
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.findIndex(users, ['active', false]);
- * // => 0
- *
- * // The `_.property` iteratee shorthand.
- * _.findIndex(users, 'active');
- * // => 2
- */
-function findIndex(array, predicate, fromIndex) {
- var length = array == null ? 0 : array.length;
- if (!length) {
- return -1;
- }
- var index = fromIndex == null ? 0 : toInteger(fromIndex);
- if (index < 0) {
- index = nativeMax(length + index, 0);
- }
- return baseFindIndex(array, baseIteratee(predicate, 3), index);
-}
-
-export default findIndex;
diff --git a/node_modules/lodash-es/findKey.js b/node_modules/lodash-es/findKey.js
deleted file mode 100644
index a578ede..0000000
--- a/node_modules/lodash-es/findKey.js
+++ /dev/null
@@ -1,44 +0,0 @@
-import baseFindKey from './_baseFindKey.js';
-import baseForOwn from './_baseForOwn.js';
-import baseIteratee from './_baseIteratee.js';
-
-/**
- * This method is like `_.find` except that it returns the key of the first
- * element `predicate` returns truthy for instead of the element itself.
- *
- * @static
- * @memberOf _
- * @since 1.1.0
- * @category Object
- * @param {Object} object The object to inspect.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @returns {string|undefined} Returns the key of the matched element,
- * else `undefined`.
- * @example
- *
- * var users = {
- * 'barney': { 'age': 36, 'active': true },
- * 'fred': { 'age': 40, 'active': false },
- * 'pebbles': { 'age': 1, 'active': true }
- * };
- *
- * _.findKey(users, function(o) { return o.age < 40; });
- * // => 'barney' (iteration order is not guaranteed)
- *
- * // The `_.matches` iteratee shorthand.
- * _.findKey(users, { 'age': 1, 'active': true });
- * // => 'pebbles'
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.findKey(users, ['active', false]);
- * // => 'fred'
- *
- * // The `_.property` iteratee shorthand.
- * _.findKey(users, 'active');
- * // => 'barney'
- */
-function findKey(object, predicate) {
- return baseFindKey(object, baseIteratee(predicate, 3), baseForOwn);
-}
-
-export default findKey;
diff --git a/node_modules/lodash-es/findLast.js b/node_modules/lodash-es/findLast.js
deleted file mode 100644
index 0237386..0000000
--- a/node_modules/lodash-es/findLast.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import createFind from './_createFind.js';
-import findLastIndex from './findLastIndex.js';
-
-/**
- * This method is like `_.find` except that it iterates over elements of
- * `collection` from right to left.
- *
- * @static
- * @memberOf _
- * @since 2.0.0
- * @category Collection
- * @param {Array|Object} collection The collection to inspect.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @param {number} [fromIndex=collection.length-1] The index to search from.
- * @returns {*} Returns the matched element, else `undefined`.
- * @example
- *
- * _.findLast([1, 2, 3, 4], function(n) {
- * return n % 2 == 1;
- * });
- * // => 3
- */
-var findLast = createFind(findLastIndex);
-
-export default findLast;
diff --git a/node_modules/lodash-es/findLastIndex.js b/node_modules/lodash-es/findLastIndex.js
deleted file mode 100644
index c2bb6dc..0000000
--- a/node_modules/lodash-es/findLastIndex.js
+++ /dev/null
@@ -1,59 +0,0 @@
-import baseFindIndex from './_baseFindIndex.js';
-import baseIteratee from './_baseIteratee.js';
-import toInteger from './toInteger.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max,
- nativeMin = Math.min;
-
-/**
- * This method is like `_.findIndex` except that it iterates over elements
- * of `collection` from right to left.
- *
- * @static
- * @memberOf _
- * @since 2.0.0
- * @category Array
- * @param {Array} array The array to inspect.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @param {number} [fromIndex=array.length-1] The index to search from.
- * @returns {number} Returns the index of the found element, else `-1`.
- * @example
- *
- * var users = [
- * { 'user': 'barney', 'active': true },
- * { 'user': 'fred', 'active': false },
- * { 'user': 'pebbles', 'active': false }
- * ];
- *
- * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; });
- * // => 2
- *
- * // The `_.matches` iteratee shorthand.
- * _.findLastIndex(users, { 'user': 'barney', 'active': true });
- * // => 0
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.findLastIndex(users, ['active', false]);
- * // => 2
- *
- * // The `_.property` iteratee shorthand.
- * _.findLastIndex(users, 'active');
- * // => 0
- */
-function findLastIndex(array, predicate, fromIndex) {
- var length = array == null ? 0 : array.length;
- if (!length) {
- return -1;
- }
- var index = length - 1;
- if (fromIndex !== undefined) {
- index = toInteger(fromIndex);
- index = fromIndex < 0
- ? nativeMax(length + index, 0)
- : nativeMin(index, length - 1);
- }
- return baseFindIndex(array, baseIteratee(predicate, 3), index, true);
-}
-
-export default findLastIndex;
diff --git a/node_modules/lodash-es/findLastKey.js b/node_modules/lodash-es/findLastKey.js
deleted file mode 100644
index 6b391dc..0000000
--- a/node_modules/lodash-es/findLastKey.js
+++ /dev/null
@@ -1,44 +0,0 @@
-import baseFindKey from './_baseFindKey.js';
-import baseForOwnRight from './_baseForOwnRight.js';
-import baseIteratee from './_baseIteratee.js';
-
-/**
- * This method is like `_.findKey` except that it iterates over elements of
- * a collection in the opposite order.
- *
- * @static
- * @memberOf _
- * @since 2.0.0
- * @category Object
- * @param {Object} object The object to inspect.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @returns {string|undefined} Returns the key of the matched element,
- * else `undefined`.
- * @example
- *
- * var users = {
- * 'barney': { 'age': 36, 'active': true },
- * 'fred': { 'age': 40, 'active': false },
- * 'pebbles': { 'age': 1, 'active': true }
- * };
- *
- * _.findLastKey(users, function(o) { return o.age < 40; });
- * // => returns 'pebbles' assuming `_.findKey` returns 'barney'
- *
- * // The `_.matches` iteratee shorthand.
- * _.findLastKey(users, { 'age': 36, 'active': true });
- * // => 'barney'
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.findLastKey(users, ['active', false]);
- * // => 'fred'
- *
- * // The `_.property` iteratee shorthand.
- * _.findLastKey(users, 'active');
- * // => 'pebbles'
- */
-function findLastKey(object, predicate) {
- return baseFindKey(object, baseIteratee(predicate, 3), baseForOwnRight);
-}
-
-export default findLastKey;
diff --git a/node_modules/lodash-es/first.js b/node_modules/lodash-es/first.js
deleted file mode 100644
index db707ff..0000000
--- a/node_modules/lodash-es/first.js
+++ /dev/null
@@ -1 +0,0 @@
-export { default } from './head.js'
diff --git a/node_modules/lodash-es/flatMap.js b/node_modules/lodash-es/flatMap.js
deleted file mode 100644
index 52a6a7a..0000000
--- a/node_modules/lodash-es/flatMap.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import baseFlatten from './_baseFlatten.js';
-import map from './map.js';
-
-/**
- * Creates a flattened array of values by running each element in `collection`
- * thru `iteratee` and flattening the mapped results. The iteratee is invoked
- * with three arguments: (value, index|key, collection).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @returns {Array} Returns the new flattened array.
- * @example
- *
- * function duplicate(n) {
- * return [n, n];
- * }
- *
- * _.flatMap([1, 2], duplicate);
- * // => [1, 1, 2, 2]
- */
-function flatMap(collection, iteratee) {
- return baseFlatten(map(collection, iteratee), 1);
-}
-
-export default flatMap;
diff --git a/node_modules/lodash-es/flatMapDeep.js b/node_modules/lodash-es/flatMapDeep.js
deleted file mode 100644
index d33d219..0000000
--- a/node_modules/lodash-es/flatMapDeep.js
+++ /dev/null
@@ -1,31 +0,0 @@
-import baseFlatten from './_baseFlatten.js';
-import map from './map.js';
-
-/** Used as references for various `Number` constants. */
-var INFINITY = 1 / 0;
-
-/**
- * This method is like `_.flatMap` except that it recursively flattens the
- * mapped results.
- *
- * @static
- * @memberOf _
- * @since 4.7.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @returns {Array} Returns the new flattened array.
- * @example
- *
- * function duplicate(n) {
- * return [[[n, n]]];
- * }
- *
- * _.flatMapDeep([1, 2], duplicate);
- * // => [1, 1, 2, 2]
- */
-function flatMapDeep(collection, iteratee) {
- return baseFlatten(map(collection, iteratee), INFINITY);
-}
-
-export default flatMapDeep;
diff --git a/node_modules/lodash-es/flatMapDepth.js b/node_modules/lodash-es/flatMapDepth.js
deleted file mode 100644
index 4be0096..0000000
--- a/node_modules/lodash-es/flatMapDepth.js
+++ /dev/null
@@ -1,31 +0,0 @@
-import baseFlatten from './_baseFlatten.js';
-import map from './map.js';
-import toInteger from './toInteger.js';
-
-/**
- * This method is like `_.flatMap` except that it recursively flattens the
- * mapped results up to `depth` times.
- *
- * @static
- * @memberOf _
- * @since 4.7.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @param {number} [depth=1] The maximum recursion depth.
- * @returns {Array} Returns the new flattened array.
- * @example
- *
- * function duplicate(n) {
- * return [[[n, n]]];
- * }
- *
- * _.flatMapDepth([1, 2], duplicate, 2);
- * // => [[1, 1], [2, 2]]
- */
-function flatMapDepth(collection, iteratee, depth) {
- depth = depth === undefined ? 1 : toInteger(depth);
- return baseFlatten(map(collection, iteratee), depth);
-}
-
-export default flatMapDepth;
diff --git a/node_modules/lodash-es/flatten.js b/node_modules/lodash-es/flatten.js
deleted file mode 100644
index 399b2a7..0000000
--- a/node_modules/lodash-es/flatten.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import baseFlatten from './_baseFlatten.js';
-
-/**
- * Flattens `array` a single level deep.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Array
- * @param {Array} array The array to flatten.
- * @returns {Array} Returns the new flattened array.
- * @example
- *
- * _.flatten([1, [2, [3, [4]], 5]]);
- * // => [1, 2, [3, [4]], 5]
- */
-function flatten(array) {
- var length = array == null ? 0 : array.length;
- return length ? baseFlatten(array, 1) : [];
-}
-
-export default flatten;
diff --git a/node_modules/lodash-es/flattenDeep.js b/node_modules/lodash-es/flattenDeep.js
deleted file mode 100644
index 4a7a9a9..0000000
--- a/node_modules/lodash-es/flattenDeep.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import baseFlatten from './_baseFlatten.js';
-
-/** Used as references for various `Number` constants. */
-var INFINITY = 1 / 0;
-
-/**
- * Recursively flattens `array`.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Array
- * @param {Array} array The array to flatten.
- * @returns {Array} Returns the new flattened array.
- * @example
- *
- * _.flattenDeep([1, [2, [3, [4]], 5]]);
- * // => [1, 2, 3, 4, 5]
- */
-function flattenDeep(array) {
- var length = array == null ? 0 : array.length;
- return length ? baseFlatten(array, INFINITY) : [];
-}
-
-export default flattenDeep;
diff --git a/node_modules/lodash-es/flattenDepth.js b/node_modules/lodash-es/flattenDepth.js
deleted file mode 100644
index 101dc3f..0000000
--- a/node_modules/lodash-es/flattenDepth.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import baseFlatten from './_baseFlatten.js';
-import toInteger from './toInteger.js';
-
-/**
- * Recursively flatten `array` up to `depth` times.
- *
- * @static
- * @memberOf _
- * @since 4.4.0
- * @category Array
- * @param {Array} array The array to flatten.
- * @param {number} [depth=1] The maximum recursion depth.
- * @returns {Array} Returns the new flattened array.
- * @example
- *
- * var array = [1, [2, [3, [4]], 5]];
- *
- * _.flattenDepth(array, 1);
- * // => [1, 2, [3, [4]], 5]
- *
- * _.flattenDepth(array, 2);
- * // => [1, 2, 3, [4], 5]
- */
-function flattenDepth(array, depth) {
- var length = array == null ? 0 : array.length;
- if (!length) {
- return [];
- }
- depth = depth === undefined ? 1 : toInteger(depth);
- return baseFlatten(array, depth);
-}
-
-export default flattenDepth;
diff --git a/node_modules/lodash-es/flip.js b/node_modules/lodash-es/flip.js
deleted file mode 100644
index 787324c..0000000
--- a/node_modules/lodash-es/flip.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import createWrap from './_createWrap.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_FLIP_FLAG = 512;
-
-/**
- * Creates a function that invokes `func` with arguments reversed.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Function
- * @param {Function} func The function to flip arguments for.
- * @returns {Function} Returns the new flipped function.
- * @example
- *
- * var flipped = _.flip(function() {
- * return _.toArray(arguments);
- * });
- *
- * flipped('a', 'b', 'c', 'd');
- * // => ['d', 'c', 'b', 'a']
- */
-function flip(func) {
- return createWrap(func, WRAP_FLIP_FLAG);
-}
-
-export default flip;
diff --git a/node_modules/lodash-es/floor.js b/node_modules/lodash-es/floor.js
deleted file mode 100644
index 7ea5394..0000000
--- a/node_modules/lodash-es/floor.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import createRound from './_createRound.js';
-
-/**
- * Computes `number` rounded down to `precision`.
- *
- * @static
- * @memberOf _
- * @since 3.10.0
- * @category Math
- * @param {number} number The number to round down.
- * @param {number} [precision=0] The precision to round down to.
- * @returns {number} Returns the rounded down number.
- * @example
- *
- * _.floor(4.006);
- * // => 4
- *
- * _.floor(0.046, 2);
- * // => 0.04
- *
- * _.floor(4060, -2);
- * // => 4000
- */
-var floor = createRound('floor');
-
-export default floor;
diff --git a/node_modules/lodash-es/flow.js b/node_modules/lodash-es/flow.js
deleted file mode 100644
index 0a3e633..0000000
--- a/node_modules/lodash-es/flow.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import createFlow from './_createFlow.js';
-
-/**
- * Creates a function that returns the result of invoking the given functions
- * with the `this` binding of the created function, where each successive
- * invocation is supplied the return value of the previous.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Util
- * @param {...(Function|Function[])} [funcs] The functions to invoke.
- * @returns {Function} Returns the new composite function.
- * @see _.flowRight
- * @example
- *
- * function square(n) {
- * return n * n;
- * }
- *
- * var addSquare = _.flow([_.add, square]);
- * addSquare(1, 2);
- * // => 9
- */
-var flow = createFlow();
-
-export default flow;
diff --git a/node_modules/lodash-es/flowRight.js b/node_modules/lodash-es/flowRight.js
deleted file mode 100644
index cec0b80..0000000
--- a/node_modules/lodash-es/flowRight.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import createFlow from './_createFlow.js';
-
-/**
- * This method is like `_.flow` except that it creates a function that
- * invokes the given functions from right to left.
- *
- * @static
- * @since 3.0.0
- * @memberOf _
- * @category Util
- * @param {...(Function|Function[])} [funcs] The functions to invoke.
- * @returns {Function} Returns the new composite function.
- * @see _.flow
- * @example
- *
- * function square(n) {
- * return n * n;
- * }
- *
- * var addSquare = _.flowRight([square, _.add]);
- * addSquare(1, 2);
- * // => 9
- */
-var flowRight = createFlow(true);
-
-export default flowRight;
diff --git a/node_modules/lodash-es/forEach.js b/node_modules/lodash-es/forEach.js
deleted file mode 100644
index ac1310c..0000000
--- a/node_modules/lodash-es/forEach.js
+++ /dev/null
@@ -1,41 +0,0 @@
-import arrayEach from './_arrayEach.js';
-import baseEach from './_baseEach.js';
-import castFunction from './_castFunction.js';
-import isArray from './isArray.js';
-
-/**
- * Iterates over elements of `collection` and invokes `iteratee` for each element.
- * The iteratee is invoked with three arguments: (value, index|key, collection).
- * Iteratee functions may exit iteration early by explicitly returning `false`.
- *
- * **Note:** As with other "Collections" methods, objects with a "length"
- * property are iterated like arrays. To avoid this behavior use `_.forIn`
- * or `_.forOwn` for object iteration.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @alias each
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @returns {Array|Object} Returns `collection`.
- * @see _.forEachRight
- * @example
- *
- * _.forEach([1, 2], function(value) {
- * console.log(value);
- * });
- * // => Logs `1` then `2`.
- *
- * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) {
- * console.log(key);
- * });
- * // => Logs 'a' then 'b' (iteration order is not guaranteed).
- */
-function forEach(collection, iteratee) {
- var func = isArray(collection) ? arrayEach : baseEach;
- return func(collection, castFunction(iteratee));
-}
-
-export default forEach;
diff --git a/node_modules/lodash-es/forEachRight.js b/node_modules/lodash-es/forEachRight.js
deleted file mode 100644
index 924548e..0000000
--- a/node_modules/lodash-es/forEachRight.js
+++ /dev/null
@@ -1,31 +0,0 @@
-import arrayEachRight from './_arrayEachRight.js';
-import baseEachRight from './_baseEachRight.js';
-import castFunction from './_castFunction.js';
-import isArray from './isArray.js';
-
-/**
- * This method is like `_.forEach` except that it iterates over elements of
- * `collection` from right to left.
- *
- * @static
- * @memberOf _
- * @since 2.0.0
- * @alias eachRight
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @returns {Array|Object} Returns `collection`.
- * @see _.forEach
- * @example
- *
- * _.forEachRight([1, 2], function(value) {
- * console.log(value);
- * });
- * // => Logs `2` then `1`.
- */
-function forEachRight(collection, iteratee) {
- var func = isArray(collection) ? arrayEachRight : baseEachRight;
- return func(collection, castFunction(iteratee));
-}
-
-export default forEachRight;
diff --git a/node_modules/lodash-es/forIn.js b/node_modules/lodash-es/forIn.js
deleted file mode 100644
index 436f319..0000000
--- a/node_modules/lodash-es/forIn.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import baseFor from './_baseFor.js';
-import castFunction from './_castFunction.js';
-import keysIn from './keysIn.js';
-
-/**
- * Iterates over own and inherited enumerable string keyed properties of an
- * object and invokes `iteratee` for each property. The iteratee is invoked
- * with three arguments: (value, key, object). Iteratee functions may exit
- * iteration early by explicitly returning `false`.
- *
- * @static
- * @memberOf _
- * @since 0.3.0
- * @category Object
- * @param {Object} object The object to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @returns {Object} Returns `object`.
- * @see _.forInRight
- * @example
- *
- * function Foo() {
- * this.a = 1;
- * this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.forIn(new Foo, function(value, key) {
- * console.log(key);
- * });
- * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed).
- */
-function forIn(object, iteratee) {
- return object == null
- ? object
- : baseFor(object, castFunction(iteratee), keysIn);
-}
-
-export default forIn;
diff --git a/node_modules/lodash-es/forInRight.js b/node_modules/lodash-es/forInRight.js
deleted file mode 100644
index cc92970..0000000
--- a/node_modules/lodash-es/forInRight.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import baseForRight from './_baseForRight.js';
-import castFunction from './_castFunction.js';
-import keysIn from './keysIn.js';
-
-/**
- * This method is like `_.forIn` except that it iterates over properties of
- * `object` in the opposite order.
- *
- * @static
- * @memberOf _
- * @since 2.0.0
- * @category Object
- * @param {Object} object The object to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @returns {Object} Returns `object`.
- * @see _.forIn
- * @example
- *
- * function Foo() {
- * this.a = 1;
- * this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.forInRight(new Foo, function(value, key) {
- * console.log(key);
- * });
- * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'.
- */
-function forInRight(object, iteratee) {
- return object == null
- ? object
- : baseForRight(object, castFunction(iteratee), keysIn);
-}
-
-export default forInRight;
diff --git a/node_modules/lodash-es/forOwn.js b/node_modules/lodash-es/forOwn.js
deleted file mode 100644
index fe66169..0000000
--- a/node_modules/lodash-es/forOwn.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import baseForOwn from './_baseForOwn.js';
-import castFunction from './_castFunction.js';
-
-/**
- * Iterates over own enumerable string keyed properties of an object and
- * invokes `iteratee` for each property. The iteratee is invoked with three
- * arguments: (value, key, object). Iteratee functions may exit iteration
- * early by explicitly returning `false`.
- *
- * @static
- * @memberOf _
- * @since 0.3.0
- * @category Object
- * @param {Object} object The object to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @returns {Object} Returns `object`.
- * @see _.forOwnRight
- * @example
- *
- * function Foo() {
- * this.a = 1;
- * this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.forOwn(new Foo, function(value, key) {
- * console.log(key);
- * });
- * // => Logs 'a' then 'b' (iteration order is not guaranteed).
- */
-function forOwn(object, iteratee) {
- return object && baseForOwn(object, castFunction(iteratee));
-}
-
-export default forOwn;
diff --git a/node_modules/lodash-es/forOwnRight.js b/node_modules/lodash-es/forOwnRight.js
deleted file mode 100644
index fe2dd28..0000000
--- a/node_modules/lodash-es/forOwnRight.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import baseForOwnRight from './_baseForOwnRight.js';
-import castFunction from './_castFunction.js';
-
-/**
- * This method is like `_.forOwn` except that it iterates over properties of
- * `object` in the opposite order.
- *
- * @static
- * @memberOf _
- * @since 2.0.0
- * @category Object
- * @param {Object} object The object to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @returns {Object} Returns `object`.
- * @see _.forOwn
- * @example
- *
- * function Foo() {
- * this.a = 1;
- * this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.forOwnRight(new Foo, function(value, key) {
- * console.log(key);
- * });
- * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'.
- */
-function forOwnRight(object, iteratee) {
- return object && baseForOwnRight(object, castFunction(iteratee));
-}
-
-export default forOwnRight;
diff --git a/node_modules/lodash-es/fromPairs.js b/node_modules/lodash-es/fromPairs.js
deleted file mode 100644
index 4267cfb..0000000
--- a/node_modules/lodash-es/fromPairs.js
+++ /dev/null
@@ -1,28 +0,0 @@
-/**
- * The inverse of `_.toPairs`; this method returns an object composed
- * from key-value `pairs`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} pairs The key-value pairs.
- * @returns {Object} Returns the new object.
- * @example
- *
- * _.fromPairs([['a', 1], ['b', 2]]);
- * // => { 'a': 1, 'b': 2 }
- */
-function fromPairs(pairs) {
- var index = -1,
- length = pairs == null ? 0 : pairs.length,
- result = {};
-
- while (++index < length) {
- var pair = pairs[index];
- result[pair[0]] = pair[1];
- }
- return result;
-}
-
-export default fromPairs;
diff --git a/node_modules/lodash-es/function.default.js b/node_modules/lodash-es/function.default.js
deleted file mode 100644
index a92f4df..0000000
--- a/node_modules/lodash-es/function.default.js
+++ /dev/null
@@ -1,31 +0,0 @@
-import after from './after.js';
-import ary from './ary.js';
-import before from './before.js';
-import bind from './bind.js';
-import bindKey from './bindKey.js';
-import curry from './curry.js';
-import curryRight from './curryRight.js';
-import debounce from './debounce.js';
-import defer from './defer.js';
-import delay from './delay.js';
-import flip from './flip.js';
-import memoize from './memoize.js';
-import negate from './negate.js';
-import once from './once.js';
-import overArgs from './overArgs.js';
-import partial from './partial.js';
-import partialRight from './partialRight.js';
-import rearg from './rearg.js';
-import rest from './rest.js';
-import spread from './spread.js';
-import throttle from './throttle.js';
-import unary from './unary.js';
-import wrap from './wrap.js';
-
-export default {
- after, ary, before, bind, bindKey,
- curry, curryRight, debounce, defer, delay,
- flip, memoize, negate, once, overArgs,
- partial, partialRight, rearg, rest, spread,
- throttle, unary, wrap
-};
diff --git a/node_modules/lodash-es/function.js b/node_modules/lodash-es/function.js
deleted file mode 100644
index 7c1dddf..0000000
--- a/node_modules/lodash-es/function.js
+++ /dev/null
@@ -1,24 +0,0 @@
-export { default as after } from './after.js';
-export { default as ary } from './ary.js';
-export { default as before } from './before.js';
-export { default as bind } from './bind.js';
-export { default as bindKey } from './bindKey.js';
-export { default as curry } from './curry.js';
-export { default as curryRight } from './curryRight.js';
-export { default as debounce } from './debounce.js';
-export { default as defer } from './defer.js';
-export { default as delay } from './delay.js';
-export { default as flip } from './flip.js';
-export { default as memoize } from './memoize.js';
-export { default as negate } from './negate.js';
-export { default as once } from './once.js';
-export { default as overArgs } from './overArgs.js';
-export { default as partial } from './partial.js';
-export { default as partialRight } from './partialRight.js';
-export { default as rearg } from './rearg.js';
-export { default as rest } from './rest.js';
-export { default as spread } from './spread.js';
-export { default as throttle } from './throttle.js';
-export { default as unary } from './unary.js';
-export { default as wrap } from './wrap.js';
-export { default } from './function.default.js';
diff --git a/node_modules/lodash-es/functions.js b/node_modules/lodash-es/functions.js
deleted file mode 100644
index b9ea4de..0000000
--- a/node_modules/lodash-es/functions.js
+++ /dev/null
@@ -1,31 +0,0 @@
-import baseFunctions from './_baseFunctions.js';
-import keys from './keys.js';
-
-/**
- * Creates an array of function property names from own enumerable properties
- * of `object`.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Object
- * @param {Object} object The object to inspect.
- * @returns {Array} Returns the function names.
- * @see _.functionsIn
- * @example
- *
- * function Foo() {
- * this.a = _.constant('a');
- * this.b = _.constant('b');
- * }
- *
- * Foo.prototype.c = _.constant('c');
- *
- * _.functions(new Foo);
- * // => ['a', 'b']
- */
-function functions(object) {
- return object == null ? [] : baseFunctions(object, keys(object));
-}
-
-export default functions;
diff --git a/node_modules/lodash-es/functionsIn.js b/node_modules/lodash-es/functionsIn.js
deleted file mode 100644
index fb727f1..0000000
--- a/node_modules/lodash-es/functionsIn.js
+++ /dev/null
@@ -1,31 +0,0 @@
-import baseFunctions from './_baseFunctions.js';
-import keysIn from './keysIn.js';
-
-/**
- * Creates an array of function property names from own and inherited
- * enumerable properties of `object`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Object
- * @param {Object} object The object to inspect.
- * @returns {Array} Returns the function names.
- * @see _.functions
- * @example
- *
- * function Foo() {
- * this.a = _.constant('a');
- * this.b = _.constant('b');
- * }
- *
- * Foo.prototype.c = _.constant('c');
- *
- * _.functionsIn(new Foo);
- * // => ['a', 'b', 'c']
- */
-function functionsIn(object) {
- return object == null ? [] : baseFunctions(object, keysIn(object));
-}
-
-export default functionsIn;
diff --git a/node_modules/lodash-es/get.js b/node_modules/lodash-es/get.js
deleted file mode 100644
index 5517835..0000000
--- a/node_modules/lodash-es/get.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import baseGet from './_baseGet.js';
-
-/**
- * Gets the value at `path` of `object`. If the resolved value is
- * `undefined`, the `defaultValue` is returned in its place.
- *
- * @static
- * @memberOf _
- * @since 3.7.0
- * @category Object
- * @param {Object} object The object to query.
- * @param {Array|string} path The path of the property to get.
- * @param {*} [defaultValue] The value returned for `undefined` resolved values.
- * @returns {*} Returns the resolved value.
- * @example
- *
- * var object = { 'a': [{ 'b': { 'c': 3 } }] };
- *
- * _.get(object, 'a[0].b.c');
- * // => 3
- *
- * _.get(object, ['a', '0', 'b', 'c']);
- * // => 3
- *
- * _.get(object, 'a.b.c', 'default');
- * // => 'default'
- */
-function get(object, path, defaultValue) {
- var result = object == null ? undefined : baseGet(object, path);
- return result === undefined ? defaultValue : result;
-}
-
-export default get;
diff --git a/node_modules/lodash-es/groupBy.js b/node_modules/lodash-es/groupBy.js
deleted file mode 100644
index ba83631..0000000
--- a/node_modules/lodash-es/groupBy.js
+++ /dev/null
@@ -1,41 +0,0 @@
-import baseAssignValue from './_baseAssignValue.js';
-import createAggregator from './_createAggregator.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Creates an object composed of keys generated from the results of running
- * each element of `collection` thru `iteratee`. The order of grouped values
- * is determined by the order they occur in `collection`. The corresponding
- * value of each key is an array of elements responsible for generating the
- * key. The iteratee is invoked with one argument: (value).
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The iteratee to transform keys.
- * @returns {Object} Returns the composed aggregate object.
- * @example
- *
- * _.groupBy([6.1, 4.2, 6.3], Math.floor);
- * // => { '4': [4.2], '6': [6.1, 6.3] }
- *
- * // The `_.property` iteratee shorthand.
- * _.groupBy(['one', 'two', 'three'], 'length');
- * // => { '3': ['one', 'two'], '5': ['three'] }
- */
-var groupBy = createAggregator(function(result, value, key) {
- if (hasOwnProperty.call(result, key)) {
- result[key].push(value);
- } else {
- baseAssignValue(result, key, [value]);
- }
-});
-
-export default groupBy;
diff --git a/node_modules/lodash-es/gt.js b/node_modules/lodash-es/gt.js
deleted file mode 100644
index 6a7227f..0000000
--- a/node_modules/lodash-es/gt.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import baseGt from './_baseGt.js';
-import createRelationalOperation from './_createRelationalOperation.js';
-
-/**
- * Checks if `value` is greater than `other`.
- *
- * @static
- * @memberOf _
- * @since 3.9.0
- * @category Lang
- * @param {*} value The value to compare.
- * @param {*} other The other value to compare.
- * @returns {boolean} Returns `true` if `value` is greater than `other`,
- * else `false`.
- * @see _.lt
- * @example
- *
- * _.gt(3, 1);
- * // => true
- *
- * _.gt(3, 3);
- * // => false
- *
- * _.gt(1, 3);
- * // => false
- */
-var gt = createRelationalOperation(baseGt);
-
-export default gt;
diff --git a/node_modules/lodash-es/gte.js b/node_modules/lodash-es/gte.js
deleted file mode 100644
index 22c72b2..0000000
--- a/node_modules/lodash-es/gte.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import createRelationalOperation from './_createRelationalOperation.js';
-
-/**
- * Checks if `value` is greater than or equal to `other`.
- *
- * @static
- * @memberOf _
- * @since 3.9.0
- * @category Lang
- * @param {*} value The value to compare.
- * @param {*} other The other value to compare.
- * @returns {boolean} Returns `true` if `value` is greater than or equal to
- * `other`, else `false`.
- * @see _.lte
- * @example
- *
- * _.gte(3, 1);
- * // => true
- *
- * _.gte(3, 3);
- * // => true
- *
- * _.gte(1, 3);
- * // => false
- */
-var gte = createRelationalOperation(function(value, other) {
- return value >= other;
-});
-
-export default gte;
diff --git a/node_modules/lodash-es/has.js b/node_modules/lodash-es/has.js
deleted file mode 100644
index 83c8e49..0000000
--- a/node_modules/lodash-es/has.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import baseHas from './_baseHas.js';
-import hasPath from './_hasPath.js';
-
-/**
- * Checks if `path` is a direct property of `object`.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Object
- * @param {Object} object The object to query.
- * @param {Array|string} path The path to check.
- * @returns {boolean} Returns `true` if `path` exists, else `false`.
- * @example
- *
- * var object = { 'a': { 'b': 2 } };
- * var other = _.create({ 'a': _.create({ 'b': 2 }) });
- *
- * _.has(object, 'a');
- * // => true
- *
- * _.has(object, 'a.b');
- * // => true
- *
- * _.has(object, ['a', 'b']);
- * // => true
- *
- * _.has(other, 'a');
- * // => false
- */
-function has(object, path) {
- return object != null && hasPath(object, path, baseHas);
-}
-
-export default has;
diff --git a/node_modules/lodash-es/hasIn.js b/node_modules/lodash-es/hasIn.js
deleted file mode 100644
index c02eb1f..0000000
--- a/node_modules/lodash-es/hasIn.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import baseHasIn from './_baseHasIn.js';
-import hasPath from './_hasPath.js';
-
-/**
- * Checks if `path` is a direct or inherited property of `object`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Object
- * @param {Object} object The object to query.
- * @param {Array|string} path The path to check.
- * @returns {boolean} Returns `true` if `path` exists, else `false`.
- * @example
- *
- * var object = _.create({ 'a': _.create({ 'b': 2 }) });
- *
- * _.hasIn(object, 'a');
- * // => true
- *
- * _.hasIn(object, 'a.b');
- * // => true
- *
- * _.hasIn(object, ['a', 'b']);
- * // => true
- *
- * _.hasIn(object, 'b');
- * // => false
- */
-function hasIn(object, path) {
- return object != null && hasPath(object, path, baseHasIn);
-}
-
-export default hasIn;
diff --git a/node_modules/lodash-es/head.js b/node_modules/lodash-es/head.js
deleted file mode 100644
index 0a62691..0000000
--- a/node_modules/lodash-es/head.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * Gets the first element of `array`.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @alias first
- * @category Array
- * @param {Array} array The array to query.
- * @returns {*} Returns the first element of `array`.
- * @example
- *
- * _.head([1, 2, 3]);
- * // => 1
- *
- * _.head([]);
- * // => undefined
- */
-function head(array) {
- return (array && array.length) ? array[0] : undefined;
-}
-
-export default head;
diff --git a/node_modules/lodash-es/identity.js b/node_modules/lodash-es/identity.js
deleted file mode 100644
index ed074d8..0000000
--- a/node_modules/lodash-es/identity.js
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * This method returns the first argument it receives.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Util
- * @param {*} value Any value.
- * @returns {*} Returns `value`.
- * @example
- *
- * var object = { 'a': 1 };
- *
- * console.log(_.identity(object) === object);
- * // => true
- */
-function identity(value) {
- return value;
-}
-
-export default identity;
diff --git a/node_modules/lodash-es/inRange.js b/node_modules/lodash-es/inRange.js
deleted file mode 100644
index 0e130ab..0000000
--- a/node_modules/lodash-es/inRange.js
+++ /dev/null
@@ -1,55 +0,0 @@
-import baseInRange from './_baseInRange.js';
-import toFinite from './toFinite.js';
-import toNumber from './toNumber.js';
-
-/**
- * Checks if `n` is between `start` and up to, but not including, `end`. If
- * `end` is not specified, it's set to `start` with `start` then set to `0`.
- * If `start` is greater than `end` the params are swapped to support
- * negative ranges.
- *
- * @static
- * @memberOf _
- * @since 3.3.0
- * @category Number
- * @param {number} number The number to check.
- * @param {number} [start=0] The start of the range.
- * @param {number} end The end of the range.
- * @returns {boolean} Returns `true` if `number` is in the range, else `false`.
- * @see _.range, _.rangeRight
- * @example
- *
- * _.inRange(3, 2, 4);
- * // => true
- *
- * _.inRange(4, 8);
- * // => true
- *
- * _.inRange(4, 2);
- * // => false
- *
- * _.inRange(2, 2);
- * // => false
- *
- * _.inRange(1.2, 2);
- * // => true
- *
- * _.inRange(5.2, 4);
- * // => false
- *
- * _.inRange(-3, -2, -6);
- * // => true
- */
-function inRange(number, start, end) {
- start = toFinite(start);
- if (end === undefined) {
- end = start;
- start = 0;
- } else {
- end = toFinite(end);
- }
- number = toNumber(number);
- return baseInRange(number, start, end);
-}
-
-export default inRange;
diff --git a/node_modules/lodash-es/includes.js b/node_modules/lodash-es/includes.js
deleted file mode 100644
index 7bb3793..0000000
--- a/node_modules/lodash-es/includes.js
+++ /dev/null
@@ -1,53 +0,0 @@
-import baseIndexOf from './_baseIndexOf.js';
-import isArrayLike from './isArrayLike.js';
-import isString from './isString.js';
-import toInteger from './toInteger.js';
-import values from './values.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Checks if `value` is in `collection`. If `collection` is a string, it's
- * checked for a substring of `value`, otherwise
- * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
- * is used for equality comparisons. If `fromIndex` is negative, it's used as
- * the offset from the end of `collection`.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Collection
- * @param {Array|Object|string} collection The collection to inspect.
- * @param {*} value The value to search for.
- * @param {number} [fromIndex=0] The index to search from.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.
- * @returns {boolean} Returns `true` if `value` is found, else `false`.
- * @example
- *
- * _.includes([1, 2, 3], 1);
- * // => true
- *
- * _.includes([1, 2, 3], 1, 2);
- * // => false
- *
- * _.includes({ 'a': 1, 'b': 2 }, 1);
- * // => true
- *
- * _.includes('abcd', 'bc');
- * // => true
- */
-function includes(collection, value, fromIndex, guard) {
- collection = isArrayLike(collection) ? collection : values(collection);
- fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0;
-
- var length = collection.length;
- if (fromIndex < 0) {
- fromIndex = nativeMax(length + fromIndex, 0);
- }
- return isString(collection)
- ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1)
- : (!!length && baseIndexOf(collection, value, fromIndex) > -1);
-}
-
-export default includes;
diff --git a/node_modules/lodash-es/indexOf.js b/node_modules/lodash-es/indexOf.js
deleted file mode 100644
index ea3f959..0000000
--- a/node_modules/lodash-es/indexOf.js
+++ /dev/null
@@ -1,42 +0,0 @@
-import baseIndexOf from './_baseIndexOf.js';
-import toInteger from './toInteger.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Gets the index at which the first occurrence of `value` is found in `array`
- * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
- * for equality comparisons. If `fromIndex` is negative, it's used as the
- * offset from the end of `array`.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Array
- * @param {Array} array The array to inspect.
- * @param {*} value The value to search for.
- * @param {number} [fromIndex=0] The index to search from.
- * @returns {number} Returns the index of the matched value, else `-1`.
- * @example
- *
- * _.indexOf([1, 2, 1, 2], 2);
- * // => 1
- *
- * // Search from the `fromIndex`.
- * _.indexOf([1, 2, 1, 2], 2, 2);
- * // => 3
- */
-function indexOf(array, value, fromIndex) {
- var length = array == null ? 0 : array.length;
- if (!length) {
- return -1;
- }
- var index = fromIndex == null ? 0 : toInteger(fromIndex);
- if (index < 0) {
- index = nativeMax(length + index, 0);
- }
- return baseIndexOf(array, value, index);
-}
-
-export default indexOf;
diff --git a/node_modules/lodash-es/initial.js b/node_modules/lodash-es/initial.js
deleted file mode 100644
index 908e560..0000000
--- a/node_modules/lodash-es/initial.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import baseSlice from './_baseSlice.js';
-
-/**
- * Gets all but the last element of `array`.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Array
- * @param {Array} array The array to query.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.initial([1, 2, 3]);
- * // => [1, 2]
- */
-function initial(array) {
- var length = array == null ? 0 : array.length;
- return length ? baseSlice(array, 0, -1) : [];
-}
-
-export default initial;
diff --git a/node_modules/lodash-es/intersection.js b/node_modules/lodash-es/intersection.js
deleted file mode 100644
index 9d4ef19..0000000
--- a/node_modules/lodash-es/intersection.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import arrayMap from './_arrayMap.js';
-import baseIntersection from './_baseIntersection.js';
-import baseRest from './_baseRest.js';
-import castArrayLikeObject from './_castArrayLikeObject.js';
-
-/**
- * Creates an array of unique values that are included in all given arrays
- * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
- * for equality comparisons. The order and references of result values are
- * determined by the first array.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Array
- * @param {...Array} [arrays] The arrays to inspect.
- * @returns {Array} Returns the new array of intersecting values.
- * @example
- *
- * _.intersection([2, 1], [2, 3]);
- * // => [2]
- */
-var intersection = baseRest(function(arrays) {
- var mapped = arrayMap(arrays, castArrayLikeObject);
- return (mapped.length && mapped[0] === arrays[0])
- ? baseIntersection(mapped)
- : [];
-});
-
-export default intersection;
diff --git a/node_modules/lodash-es/intersectionBy.js b/node_modules/lodash-es/intersectionBy.js
deleted file mode 100644
index 6886f90..0000000
--- a/node_modules/lodash-es/intersectionBy.js
+++ /dev/null
@@ -1,45 +0,0 @@
-import arrayMap from './_arrayMap.js';
-import baseIntersection from './_baseIntersection.js';
-import baseIteratee from './_baseIteratee.js';
-import baseRest from './_baseRest.js';
-import castArrayLikeObject from './_castArrayLikeObject.js';
-import last from './last.js';
-
-/**
- * This method is like `_.intersection` except that it accepts `iteratee`
- * which is invoked for each element of each `arrays` to generate the criterion
- * by which they're compared. The order and references of result values are
- * determined by the first array. The iteratee is invoked with one argument:
- * (value).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {...Array} [arrays] The arrays to inspect.
- * @param {Function} [iteratee=_.identity] The iteratee invoked per element.
- * @returns {Array} Returns the new array of intersecting values.
- * @example
- *
- * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor);
- * // => [2.1]
- *
- * // The `_.property` iteratee shorthand.
- * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');
- * // => [{ 'x': 1 }]
- */
-var intersectionBy = baseRest(function(arrays) {
- var iteratee = last(arrays),
- mapped = arrayMap(arrays, castArrayLikeObject);
-
- if (iteratee === last(mapped)) {
- iteratee = undefined;
- } else {
- mapped.pop();
- }
- return (mapped.length && mapped[0] === arrays[0])
- ? baseIntersection(mapped, baseIteratee(iteratee, 2))
- : [];
-});
-
-export default intersectionBy;
diff --git a/node_modules/lodash-es/intersectionWith.js b/node_modules/lodash-es/intersectionWith.js
deleted file mode 100644
index 79e9424..0000000
--- a/node_modules/lodash-es/intersectionWith.js
+++ /dev/null
@@ -1,41 +0,0 @@
-import arrayMap from './_arrayMap.js';
-import baseIntersection from './_baseIntersection.js';
-import baseRest from './_baseRest.js';
-import castArrayLikeObject from './_castArrayLikeObject.js';
-import last from './last.js';
-
-/**
- * This method is like `_.intersection` except that it accepts `comparator`
- * which is invoked to compare elements of `arrays`. The order and references
- * of result values are determined by the first array. The comparator is
- * invoked with two arguments: (arrVal, othVal).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {...Array} [arrays] The arrays to inspect.
- * @param {Function} [comparator] The comparator invoked per element.
- * @returns {Array} Returns the new array of intersecting values.
- * @example
- *
- * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];
- * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];
- *
- * _.intersectionWith(objects, others, _.isEqual);
- * // => [{ 'x': 1, 'y': 2 }]
- */
-var intersectionWith = baseRest(function(arrays) {
- var comparator = last(arrays),
- mapped = arrayMap(arrays, castArrayLikeObject);
-
- comparator = typeof comparator == 'function' ? comparator : undefined;
- if (comparator) {
- mapped.pop();
- }
- return (mapped.length && mapped[0] === arrays[0])
- ? baseIntersection(mapped, undefined, comparator)
- : [];
-});
-
-export default intersectionWith;
diff --git a/node_modules/lodash-es/invert.js b/node_modules/lodash-es/invert.js
deleted file mode 100644
index 4e93801..0000000
--- a/node_modules/lodash-es/invert.js
+++ /dev/null
@@ -1,42 +0,0 @@
-import constant from './constant.js';
-import createInverter from './_createInverter.js';
-import identity from './identity.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/**
- * Used to resolve the
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
- * of values.
- */
-var nativeObjectToString = objectProto.toString;
-
-/**
- * Creates an object composed of the inverted keys and values of `object`.
- * If `object` contains duplicate values, subsequent values overwrite
- * property assignments of previous values.
- *
- * @static
- * @memberOf _
- * @since 0.7.0
- * @category Object
- * @param {Object} object The object to invert.
- * @returns {Object} Returns the new inverted object.
- * @example
- *
- * var object = { 'a': 1, 'b': 2, 'c': 1 };
- *
- * _.invert(object);
- * // => { '1': 'c', '2': 'b' }
- */
-var invert = createInverter(function(result, value, key) {
- if (value != null &&
- typeof value.toString != 'function') {
- value = nativeObjectToString.call(value);
- }
-
- result[value] = key;
-}, constant(identity));
-
-export default invert;
diff --git a/node_modules/lodash-es/invertBy.js b/node_modules/lodash-es/invertBy.js
deleted file mode 100644
index facffc5..0000000
--- a/node_modules/lodash-es/invertBy.js
+++ /dev/null
@@ -1,56 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import createInverter from './_createInverter.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Used to resolve the
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
- * of values.
- */
-var nativeObjectToString = objectProto.toString;
-
-/**
- * This method is like `_.invert` except that the inverted object is generated
- * from the results of running each element of `object` thru `iteratee`. The
- * corresponding inverted value of each inverted key is an array of keys
- * responsible for generating the inverted value. The iteratee is invoked
- * with one argument: (value).
- *
- * @static
- * @memberOf _
- * @since 4.1.0
- * @category Object
- * @param {Object} object The object to invert.
- * @param {Function} [iteratee=_.identity] The iteratee invoked per element.
- * @returns {Object} Returns the new inverted object.
- * @example
- *
- * var object = { 'a': 1, 'b': 2, 'c': 1 };
- *
- * _.invertBy(object);
- * // => { '1': ['a', 'c'], '2': ['b'] }
- *
- * _.invertBy(object, function(value) {
- * return 'group' + value;
- * });
- * // => { 'group1': ['a', 'c'], 'group2': ['b'] }
- */
-var invertBy = createInverter(function(result, value, key) {
- if (value != null &&
- typeof value.toString != 'function') {
- value = nativeObjectToString.call(value);
- }
-
- if (hasOwnProperty.call(result, value)) {
- result[value].push(key);
- } else {
- result[value] = [key];
- }
-}, baseIteratee);
-
-export default invertBy;
diff --git a/node_modules/lodash-es/invoke.js b/node_modules/lodash-es/invoke.js
deleted file mode 100644
index a21208b..0000000
--- a/node_modules/lodash-es/invoke.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import baseInvoke from './_baseInvoke.js';
-import baseRest from './_baseRest.js';
-
-/**
- * Invokes the method at `path` of `object`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Object
- * @param {Object} object The object to query.
- * @param {Array|string} path The path of the method to invoke.
- * @param {...*} [args] The arguments to invoke the method with.
- * @returns {*} Returns the result of the invoked method.
- * @example
- *
- * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] };
- *
- * _.invoke(object, 'a[0].b.c.slice', 1, 3);
- * // => [2, 3]
- */
-var invoke = baseRest(baseInvoke);
-
-export default invoke;
diff --git a/node_modules/lodash-es/invokeMap.js b/node_modules/lodash-es/invokeMap.js
deleted file mode 100644
index bab3383..0000000
--- a/node_modules/lodash-es/invokeMap.js
+++ /dev/null
@@ -1,41 +0,0 @@
-import apply from './_apply.js';
-import baseEach from './_baseEach.js';
-import baseInvoke from './_baseInvoke.js';
-import baseRest from './_baseRest.js';
-import isArrayLike from './isArrayLike.js';
-
-/**
- * Invokes the method at `path` of each element in `collection`, returning
- * an array of the results of each invoked method. Any additional arguments
- * are provided to each invoked method. If `path` is a function, it's invoked
- * for, and `this` bound to, each element in `collection`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Array|Function|string} path The path of the method to invoke or
- * the function invoked per iteration.
- * @param {...*} [args] The arguments to invoke each method with.
- * @returns {Array} Returns the array of results.
- * @example
- *
- * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort');
- * // => [[1, 5, 7], [1, 2, 3]]
- *
- * _.invokeMap([123, 456], String.prototype.split, '');
- * // => [['1', '2', '3'], ['4', '5', '6']]
- */
-var invokeMap = baseRest(function(collection, path, args) {
- var index = -1,
- isFunc = typeof path == 'function',
- result = isArrayLike(collection) ? Array(collection.length) : [];
-
- baseEach(collection, function(value) {
- result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args);
- });
- return result;
-});
-
-export default invokeMap;
diff --git a/node_modules/lodash-es/isArguments.js b/node_modules/lodash-es/isArguments.js
deleted file mode 100644
index 6c49fe5..0000000
--- a/node_modules/lodash-es/isArguments.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import baseIsArguments from './_baseIsArguments.js';
-import isObjectLike from './isObjectLike.js';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/** Built-in value references. */
-var propertyIsEnumerable = objectProto.propertyIsEnumerable;
-
-/**
- * Checks if `value` is likely an `arguments` object.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is an `arguments` object,
- * else `false`.
- * @example
- *
- * _.isArguments(function() { return arguments; }());
- * // => true
- *
- * _.isArguments([1, 2, 3]);
- * // => false
- */
-var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {
- return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&
- !propertyIsEnumerable.call(value, 'callee');
-};
-
-export default isArguments;
diff --git a/node_modules/lodash-es/isArray.js b/node_modules/lodash-es/isArray.js
deleted file mode 100644
index 5643c19..0000000
--- a/node_modules/lodash-es/isArray.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Checks if `value` is classified as an `Array` object.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is an array, else `false`.
- * @example
- *
- * _.isArray([1, 2, 3]);
- * // => true
- *
- * _.isArray(document.body.children);
- * // => false
- *
- * _.isArray('abc');
- * // => false
- *
- * _.isArray(_.noop);
- * // => false
- */
-var isArray = Array.isArray;
-
-export default isArray;
diff --git a/node_modules/lodash-es/isArrayBuffer.js b/node_modules/lodash-es/isArrayBuffer.js
deleted file mode 100644
index 32f91ac..0000000
--- a/node_modules/lodash-es/isArrayBuffer.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import baseIsArrayBuffer from './_baseIsArrayBuffer.js';
-import baseUnary from './_baseUnary.js';
-import nodeUtil from './_nodeUtil.js';
-
-/* Node.js helper references. */
-var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer;
-
-/**
- * Checks if `value` is classified as an `ArrayBuffer` object.
- *
- * @static
- * @memberOf _
- * @since 4.3.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.
- * @example
- *
- * _.isArrayBuffer(new ArrayBuffer(2));
- * // => true
- *
- * _.isArrayBuffer(new Array(2));
- * // => false
- */
-var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer;
-
-export default isArrayBuffer;
diff --git a/node_modules/lodash-es/isArrayLike.js b/node_modules/lodash-es/isArrayLike.js
deleted file mode 100644
index f763abd..0000000
--- a/node_modules/lodash-es/isArrayLike.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import isFunction from './isFunction.js';
-import isLength from './isLength.js';
-
-/**
- * Checks if `value` is array-like. A value is considered array-like if it's
- * not a function and has a `value.length` that's an integer greater than or
- * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
- * @example
- *
- * _.isArrayLike([1, 2, 3]);
- * // => true
- *
- * _.isArrayLike(document.body.children);
- * // => true
- *
- * _.isArrayLike('abc');
- * // => true
- *
- * _.isArrayLike(_.noop);
- * // => false
- */
-function isArrayLike(value) {
- return value != null && isLength(value.length) && !isFunction(value);
-}
-
-export default isArrayLike;
diff --git a/node_modules/lodash-es/isArrayLikeObject.js b/node_modules/lodash-es/isArrayLikeObject.js
deleted file mode 100644
index 0332da4..0000000
--- a/node_modules/lodash-es/isArrayLikeObject.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import isArrayLike from './isArrayLike.js';
-import isObjectLike from './isObjectLike.js';
-
-/**
- * This method is like `_.isArrayLike` except that it also checks if `value`
- * is an object.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is an array-like object,
- * else `false`.
- * @example
- *
- * _.isArrayLikeObject([1, 2, 3]);
- * // => true
- *
- * _.isArrayLikeObject(document.body.children);
- * // => true
- *
- * _.isArrayLikeObject('abc');
- * // => false
- *
- * _.isArrayLikeObject(_.noop);
- * // => false
- */
-function isArrayLikeObject(value) {
- return isObjectLike(value) && isArrayLike(value);
-}
-
-export default isArrayLikeObject;
diff --git a/node_modules/lodash-es/isBoolean.js b/node_modules/lodash-es/isBoolean.js
deleted file mode 100644
index 883cee9..0000000
--- a/node_modules/lodash-es/isBoolean.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import baseGetTag from './_baseGetTag.js';
-import isObjectLike from './isObjectLike.js';
-
-/** `Object#toString` result references. */
-var boolTag = '[object Boolean]';
-
-/**
- * Checks if `value` is classified as a boolean primitive or object.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.
- * @example
- *
- * _.isBoolean(false);
- * // => true
- *
- * _.isBoolean(null);
- * // => false
- */
-function isBoolean(value) {
- return value === true || value === false ||
- (isObjectLike(value) && baseGetTag(value) == boolTag);
-}
-
-export default isBoolean;
diff --git a/node_modules/lodash-es/isBuffer.js b/node_modules/lodash-es/isBuffer.js
deleted file mode 100644
index d7ba078..0000000
--- a/node_modules/lodash-es/isBuffer.js
+++ /dev/null
@@ -1,38 +0,0 @@
-import root from './_root.js';
-import stubFalse from './stubFalse.js';
-
-/** Detect free variable `exports`. */
-var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;
-
-/** Detect free variable `module`. */
-var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;
-
-/** Detect the popular CommonJS extension `module.exports`. */
-var moduleExports = freeModule && freeModule.exports === freeExports;
-
-/** Built-in value references. */
-var Buffer = moduleExports ? root.Buffer : undefined;
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;
-
-/**
- * Checks if `value` is a buffer.
- *
- * @static
- * @memberOf _
- * @since 4.3.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.
- * @example
- *
- * _.isBuffer(new Buffer(2));
- * // => true
- *
- * _.isBuffer(new Uint8Array(2));
- * // => false
- */
-var isBuffer = nativeIsBuffer || stubFalse;
-
-export default isBuffer;
diff --git a/node_modules/lodash-es/isDate.js b/node_modules/lodash-es/isDate.js
deleted file mode 100644
index d586c51..0000000
--- a/node_modules/lodash-es/isDate.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import baseIsDate from './_baseIsDate.js';
-import baseUnary from './_baseUnary.js';
-import nodeUtil from './_nodeUtil.js';
-
-/* Node.js helper references. */
-var nodeIsDate = nodeUtil && nodeUtil.isDate;
-
-/**
- * Checks if `value` is classified as a `Date` object.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a date object, else `false`.
- * @example
- *
- * _.isDate(new Date);
- * // => true
- *
- * _.isDate('Mon April 23 2012');
- * // => false
- */
-var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate;
-
-export default isDate;
diff --git a/node_modules/lodash-es/isElement.js b/node_modules/lodash-es/isElement.js
deleted file mode 100644
index c79ba5b..0000000
--- a/node_modules/lodash-es/isElement.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import isObjectLike from './isObjectLike.js';
-import isPlainObject from './isPlainObject.js';
-
-/**
- * Checks if `value` is likely a DOM element.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`.
- * @example
- *
- * _.isElement(document.body);
- * // => true
- *
- * _.isElement('');
- * // => false
- */
-function isElement(value) {
- return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value);
-}
-
-export default isElement;
diff --git a/node_modules/lodash-es/isEmpty.js b/node_modules/lodash-es/isEmpty.js
deleted file mode 100644
index c2e55f8..0000000
--- a/node_modules/lodash-es/isEmpty.js
+++ /dev/null
@@ -1,77 +0,0 @@
-import baseKeys from './_baseKeys.js';
-import getTag from './_getTag.js';
-import isArguments from './isArguments.js';
-import isArray from './isArray.js';
-import isArrayLike from './isArrayLike.js';
-import isBuffer from './isBuffer.js';
-import isPrototype from './_isPrototype.js';
-import isTypedArray from './isTypedArray.js';
-
-/** `Object#toString` result references. */
-var mapTag = '[object Map]',
- setTag = '[object Set]';
-
-/** Used for built-in method references. */
-var objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/**
- * Checks if `value` is an empty object, collection, map, or set.
- *
- * Objects are considered empty if they have no own enumerable string keyed
- * properties.
- *
- * Array-like values such as `arguments` objects, arrays, buffers, strings, or
- * jQuery-like collections are considered empty if they have a `length` of `0`.
- * Similarly, maps and sets are considered empty if they have a `size` of `0`.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is empty, else `false`.
- * @example
- *
- * _.isEmpty(null);
- * // => true
- *
- * _.isEmpty(true);
- * // => true
- *
- * _.isEmpty(1);
- * // => true
- *
- * _.isEmpty([1, 2, 3]);
- * // => false
- *
- * _.isEmpty({ 'a': 1 });
- * // => false
- */
-function isEmpty(value) {
- if (value == null) {
- return true;
- }
- if (isArrayLike(value) &&
- (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' ||
- isBuffer(value) || isTypedArray(value) || isArguments(value))) {
- return !value.length;
- }
- var tag = getTag(value);
- if (tag == mapTag || tag == setTag) {
- return !value.size;
- }
- if (isPrototype(value)) {
- return !baseKeys(value).length;
- }
- for (var key in value) {
- if (hasOwnProperty.call(value, key)) {
- return false;
- }
- }
- return true;
-}
-
-export default isEmpty;
diff --git a/node_modules/lodash-es/isEqual.js b/node_modules/lodash-es/isEqual.js
deleted file mode 100644
index 8be0e2c..0000000
--- a/node_modules/lodash-es/isEqual.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import baseIsEqual from './_baseIsEqual.js';
-
-/**
- * Performs a deep comparison between two values to determine if they are
- * equivalent.
- *
- * **Note:** This method supports comparing arrays, array buffers, booleans,
- * date objects, error objects, maps, numbers, `Object` objects, regexes,
- * sets, strings, symbols, and typed arrays. `Object` objects are compared
- * by their own, not inherited, enumerable properties. Functions and DOM
- * nodes are compared by strict equality, i.e. `===`.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to compare.
- * @param {*} other The other value to compare.
- * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
- * @example
- *
- * var object = { 'a': 1 };
- * var other = { 'a': 1 };
- *
- * _.isEqual(object, other);
- * // => true
- *
- * object === other;
- * // => false
- */
-function isEqual(value, other) {
- return baseIsEqual(value, other);
-}
-
-export default isEqual;
diff --git a/node_modules/lodash-es/isEqualWith.js b/node_modules/lodash-es/isEqualWith.js
deleted file mode 100644
index c16f205..0000000
--- a/node_modules/lodash-es/isEqualWith.js
+++ /dev/null
@@ -1,41 +0,0 @@
-import baseIsEqual from './_baseIsEqual.js';
-
-/**
- * This method is like `_.isEqual` except that it accepts `customizer` which
- * is invoked to compare values. If `customizer` returns `undefined`, comparisons
- * are handled by the method instead. The `customizer` is invoked with up to
- * six arguments: (objValue, othValue [, index|key, object, other, stack]).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {*} value The value to compare.
- * @param {*} other The other value to compare.
- * @param {Function} [customizer] The function to customize comparisons.
- * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
- * @example
- *
- * function isGreeting(value) {
- * return /^h(?:i|ello)$/.test(value);
- * }
- *
- * function customizer(objValue, othValue) {
- * if (isGreeting(objValue) && isGreeting(othValue)) {
- * return true;
- * }
- * }
- *
- * var array = ['hello', 'goodbye'];
- * var other = ['hi', 'goodbye'];
- *
- * _.isEqualWith(array, other, customizer);
- * // => true
- */
-function isEqualWith(value, other, customizer) {
- customizer = typeof customizer == 'function' ? customizer : undefined;
- var result = customizer ? customizer(value, other) : undefined;
- return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result;
-}
-
-export default isEqualWith;
diff --git a/node_modules/lodash-es/isError.js b/node_modules/lodash-es/isError.js
deleted file mode 100644
index c57a38b..0000000
--- a/node_modules/lodash-es/isError.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import baseGetTag from './_baseGetTag.js';
-import isObjectLike from './isObjectLike.js';
-import isPlainObject from './isPlainObject.js';
-
-/** `Object#toString` result references. */
-var domExcTag = '[object DOMException]',
- errorTag = '[object Error]';
-
-/**
- * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,
- * `SyntaxError`, `TypeError`, or `URIError` object.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is an error object, else `false`.
- * @example
- *
- * _.isError(new Error);
- * // => true
- *
- * _.isError(Error);
- * // => false
- */
-function isError(value) {
- if (!isObjectLike(value)) {
- return false;
- }
- var tag = baseGetTag(value);
- return tag == errorTag || tag == domExcTag ||
- (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value));
-}
-
-export default isError;
diff --git a/node_modules/lodash-es/isFinite.js b/node_modules/lodash-es/isFinite.js
deleted file mode 100644
index 1c6a506..0000000
--- a/node_modules/lodash-es/isFinite.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import root from './_root.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeIsFinite = root.isFinite;
-
-/**
- * Checks if `value` is a finite primitive number.
- *
- * **Note:** This method is based on
- * [`Number.isFinite`](https://mdn.io/Number/isFinite).
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a finite number, else `false`.
- * @example
- *
- * _.isFinite(3);
- * // => true
- *
- * _.isFinite(Number.MIN_VALUE);
- * // => true
- *
- * _.isFinite(Infinity);
- * // => false
- *
- * _.isFinite('3');
- * // => false
- */
-function isFinite(value) {
- return typeof value == 'number' && nativeIsFinite(value);
-}
-
-export default isFinite;
diff --git a/node_modules/lodash-es/isFunction.js b/node_modules/lodash-es/isFunction.js
deleted file mode 100644
index 57c133d..0000000
--- a/node_modules/lodash-es/isFunction.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import baseGetTag from './_baseGetTag.js';
-import isObject from './isObject.js';
-
-/** `Object#toString` result references. */
-var asyncTag = '[object AsyncFunction]',
- funcTag = '[object Function]',
- genTag = '[object GeneratorFunction]',
- proxyTag = '[object Proxy]';
-
-/**
- * Checks if `value` is classified as a `Function` object.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a function, else `false`.
- * @example
- *
- * _.isFunction(_);
- * // => true
- *
- * _.isFunction(/abc/);
- * // => false
- */
-function isFunction(value) {
- if (!isObject(value)) {
- return false;
- }
- // The use of `Object#toString` avoids issues with the `typeof` operator
- // in Safari 9 which returns 'object' for typed arrays and other constructors.
- var tag = baseGetTag(value);
- return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
-}
-
-export default isFunction;
diff --git a/node_modules/lodash-es/isInteger.js b/node_modules/lodash-es/isInteger.js
deleted file mode 100644
index 8284ac0..0000000
--- a/node_modules/lodash-es/isInteger.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import toInteger from './toInteger.js';
-
-/**
- * Checks if `value` is an integer.
- *
- * **Note:** This method is based on
- * [`Number.isInteger`](https://mdn.io/Number/isInteger).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is an integer, else `false`.
- * @example
- *
- * _.isInteger(3);
- * // => true
- *
- * _.isInteger(Number.MIN_VALUE);
- * // => false
- *
- * _.isInteger(Infinity);
- * // => false
- *
- * _.isInteger('3');
- * // => false
- */
-function isInteger(value) {
- return typeof value == 'number' && value == toInteger(value);
-}
-
-export default isInteger;
diff --git a/node_modules/lodash-es/isLength.js b/node_modules/lodash-es/isLength.js
deleted file mode 100644
index 2acf24e..0000000
--- a/node_modules/lodash-es/isLength.js
+++ /dev/null
@@ -1,35 +0,0 @@
-/** Used as references for various `Number` constants. */
-var MAX_SAFE_INTEGER = 9007199254740991;
-
-/**
- * Checks if `value` is a valid array-like length.
- *
- * **Note:** This method is loosely based on
- * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
- * @example
- *
- * _.isLength(3);
- * // => true
- *
- * _.isLength(Number.MIN_VALUE);
- * // => false
- *
- * _.isLength(Infinity);
- * // => false
- *
- * _.isLength('3');
- * // => false
- */
-function isLength(value) {
- return typeof value == 'number' &&
- value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
-}
-
-export default isLength;
diff --git a/node_modules/lodash-es/isMap.js b/node_modules/lodash-es/isMap.js
deleted file mode 100644
index d867dfa..0000000
--- a/node_modules/lodash-es/isMap.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import baseIsMap from './_baseIsMap.js';
-import baseUnary from './_baseUnary.js';
-import nodeUtil from './_nodeUtil.js';
-
-/* Node.js helper references. */
-var nodeIsMap = nodeUtil && nodeUtil.isMap;
-
-/**
- * Checks if `value` is classified as a `Map` object.
- *
- * @static
- * @memberOf _
- * @since 4.3.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a map, else `false`.
- * @example
- *
- * _.isMap(new Map);
- * // => true
- *
- * _.isMap(new WeakMap);
- * // => false
- */
-var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;
-
-export default isMap;
diff --git a/node_modules/lodash-es/isMatch.js b/node_modules/lodash-es/isMatch.js
deleted file mode 100644
index 4872ebf..0000000
--- a/node_modules/lodash-es/isMatch.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import baseIsMatch from './_baseIsMatch.js';
-import getMatchData from './_getMatchData.js';
-
-/**
- * Performs a partial deep comparison between `object` and `source` to
- * determine if `object` contains equivalent property values.
- *
- * **Note:** This method is equivalent to `_.matches` when `source` is
- * partially applied.
- *
- * Partial comparisons will match empty array and empty object `source`
- * values against any array or object value, respectively. See `_.isEqual`
- * for a list of supported value comparisons.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Lang
- * @param {Object} object The object to inspect.
- * @param {Object} source The object of property values to match.
- * @returns {boolean} Returns `true` if `object` is a match, else `false`.
- * @example
- *
- * var object = { 'a': 1, 'b': 2 };
- *
- * _.isMatch(object, { 'b': 2 });
- * // => true
- *
- * _.isMatch(object, { 'b': 1 });
- * // => false
- */
-function isMatch(object, source) {
- return object === source || baseIsMatch(object, source, getMatchData(source));
-}
-
-export default isMatch;
diff --git a/node_modules/lodash-es/isMatchWith.js b/node_modules/lodash-es/isMatchWith.js
deleted file mode 100644
index aeec8f5..0000000
--- a/node_modules/lodash-es/isMatchWith.js
+++ /dev/null
@@ -1,41 +0,0 @@
-import baseIsMatch from './_baseIsMatch.js';
-import getMatchData from './_getMatchData.js';
-
-/**
- * This method is like `_.isMatch` except that it accepts `customizer` which
- * is invoked to compare values. If `customizer` returns `undefined`, comparisons
- * are handled by the method instead. The `customizer` is invoked with five
- * arguments: (objValue, srcValue, index|key, object, source).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {Object} object The object to inspect.
- * @param {Object} source The object of property values to match.
- * @param {Function} [customizer] The function to customize comparisons.
- * @returns {boolean} Returns `true` if `object` is a match, else `false`.
- * @example
- *
- * function isGreeting(value) {
- * return /^h(?:i|ello)$/.test(value);
- * }
- *
- * function customizer(objValue, srcValue) {
- * if (isGreeting(objValue) && isGreeting(srcValue)) {
- * return true;
- * }
- * }
- *
- * var object = { 'greeting': 'hello' };
- * var source = { 'greeting': 'hi' };
- *
- * _.isMatchWith(object, source, customizer);
- * // => true
- */
-function isMatchWith(object, source, customizer) {
- customizer = typeof customizer == 'function' ? customizer : undefined;
- return baseIsMatch(object, source, getMatchData(source), customizer);
-}
-
-export default isMatchWith;
diff --git a/node_modules/lodash-es/isNaN.js b/node_modules/lodash-es/isNaN.js
deleted file mode 100644
index c1747b3..0000000
--- a/node_modules/lodash-es/isNaN.js
+++ /dev/null
@@ -1,38 +0,0 @@
-import isNumber from './isNumber.js';
-
-/**
- * Checks if `value` is `NaN`.
- *
- * **Note:** This method is based on
- * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as
- * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for
- * `undefined` and other non-number values.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.
- * @example
- *
- * _.isNaN(NaN);
- * // => true
- *
- * _.isNaN(new Number(NaN));
- * // => true
- *
- * isNaN(undefined);
- * // => true
- *
- * _.isNaN(undefined);
- * // => false
- */
-function isNaN(value) {
- // An `NaN` primitive is the only value that is not equal to itself.
- // Perform the `toStringTag` check first to avoid errors with some
- // ActiveX objects in IE.
- return isNumber(value) && value != +value;
-}
-
-export default isNaN;
diff --git a/node_modules/lodash-es/isNative.js b/node_modules/lodash-es/isNative.js
deleted file mode 100644
index f1d2c32..0000000
--- a/node_modules/lodash-es/isNative.js
+++ /dev/null
@@ -1,40 +0,0 @@
-import baseIsNative from './_baseIsNative.js';
-import isMaskable from './_isMaskable.js';
-
-/** Error message constants. */
-var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.';
-
-/**
- * Checks if `value` is a pristine native function.
- *
- * **Note:** This method can't reliably detect native functions in the presence
- * of the core-js package because core-js circumvents this kind of detection.
- * Despite multiple requests, the core-js maintainer has made it clear: any
- * attempt to fix the detection will be obstructed. As a result, we're left
- * with little choice but to throw an error. Unfortunately, this also affects
- * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill),
- * which rely on core-js.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a native function,
- * else `false`.
- * @example
- *
- * _.isNative(Array.prototype.push);
- * // => true
- *
- * _.isNative(_);
- * // => false
- */
-function isNative(value) {
- if (isMaskable(value)) {
- throw new Error(CORE_ERROR_TEXT);
- }
- return baseIsNative(value);
-}
-
-export default isNative;
diff --git a/node_modules/lodash-es/isNil.js b/node_modules/lodash-es/isNil.js
deleted file mode 100644
index 9c4a93c..0000000
--- a/node_modules/lodash-es/isNil.js
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * Checks if `value` is `null` or `undefined`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is nullish, else `false`.
- * @example
- *
- * _.isNil(null);
- * // => true
- *
- * _.isNil(void 0);
- * // => true
- *
- * _.isNil(NaN);
- * // => false
- */
-function isNil(value) {
- return value == null;
-}
-
-export default isNil;
diff --git a/node_modules/lodash-es/isNull.js b/node_modules/lodash-es/isNull.js
deleted file mode 100644
index 5d88598..0000000
--- a/node_modules/lodash-es/isNull.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * Checks if `value` is `null`.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is `null`, else `false`.
- * @example
- *
- * _.isNull(null);
- * // => true
- *
- * _.isNull(void 0);
- * // => false
- */
-function isNull(value) {
- return value === null;
-}
-
-export default isNull;
diff --git a/node_modules/lodash-es/isNumber.js b/node_modules/lodash-es/isNumber.js
deleted file mode 100644
index 8cbdaa6..0000000
--- a/node_modules/lodash-es/isNumber.js
+++ /dev/null
@@ -1,38 +0,0 @@
-import baseGetTag from './_baseGetTag.js';
-import isObjectLike from './isObjectLike.js';
-
-/** `Object#toString` result references. */
-var numberTag = '[object Number]';
-
-/**
- * Checks if `value` is classified as a `Number` primitive or object.
- *
- * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are
- * classified as numbers, use the `_.isFinite` method.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a number, else `false`.
- * @example
- *
- * _.isNumber(3);
- * // => true
- *
- * _.isNumber(Number.MIN_VALUE);
- * // => true
- *
- * _.isNumber(Infinity);
- * // => true
- *
- * _.isNumber('3');
- * // => false
- */
-function isNumber(value) {
- return typeof value == 'number' ||
- (isObjectLike(value) && baseGetTag(value) == numberTag);
-}
-
-export default isNumber;
diff --git a/node_modules/lodash-es/isObject.js b/node_modules/lodash-es/isObject.js
deleted file mode 100644
index ddfebd5..0000000
--- a/node_modules/lodash-es/isObject.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * Checks if `value` is the
- * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
- * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is an object, else `false`.
- * @example
- *
- * _.isObject({});
- * // => true
- *
- * _.isObject([1, 2, 3]);
- * // => true
- *
- * _.isObject(_.noop);
- * // => true
- *
- * _.isObject(null);
- * // => false
- */
-function isObject(value) {
- var type = typeof value;
- return value != null && (type == 'object' || type == 'function');
-}
-
-export default isObject;
diff --git a/node_modules/lodash-es/isObjectLike.js b/node_modules/lodash-es/isObjectLike.js
deleted file mode 100644
index 0e931b1..0000000
--- a/node_modules/lodash-es/isObjectLike.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- * Checks if `value` is object-like. A value is object-like if it's not `null`
- * and has a `typeof` result of "object".
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
- * @example
- *
- * _.isObjectLike({});
- * // => true
- *
- * _.isObjectLike([1, 2, 3]);
- * // => true
- *
- * _.isObjectLike(_.noop);
- * // => false
- *
- * _.isObjectLike(null);
- * // => false
- */
-function isObjectLike(value) {
- return value != null && typeof value == 'object';
-}
-
-export default isObjectLike;
diff --git a/node_modules/lodash-es/isPlainObject.js b/node_modules/lodash-es/isPlainObject.js
deleted file mode 100644
index 45ec39f..0000000
--- a/node_modules/lodash-es/isPlainObject.js
+++ /dev/null
@@ -1,62 +0,0 @@
-import baseGetTag from './_baseGetTag.js';
-import getPrototype from './_getPrototype.js';
-import isObjectLike from './isObjectLike.js';
-
-/** `Object#toString` result references. */
-var objectTag = '[object Object]';
-
-/** Used for built-in method references. */
-var funcProto = Function.prototype,
- objectProto = Object.prototype;
-
-/** Used to resolve the decompiled source of functions. */
-var funcToString = funcProto.toString;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/** Used to infer the `Object` constructor. */
-var objectCtorString = funcToString.call(Object);
-
-/**
- * Checks if `value` is a plain object, that is, an object created by the
- * `Object` constructor or one with a `[[Prototype]]` of `null`.
- *
- * @static
- * @memberOf _
- * @since 0.8.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.
- * @example
- *
- * function Foo() {
- * this.a = 1;
- * }
- *
- * _.isPlainObject(new Foo);
- * // => false
- *
- * _.isPlainObject([1, 2, 3]);
- * // => false
- *
- * _.isPlainObject({ 'x': 0, 'y': 0 });
- * // => true
- *
- * _.isPlainObject(Object.create(null));
- * // => true
- */
-function isPlainObject(value) {
- if (!isObjectLike(value) || baseGetTag(value) != objectTag) {
- return false;
- }
- var proto = getPrototype(value);
- if (proto === null) {
- return true;
- }
- var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;
- return typeof Ctor == 'function' && Ctor instanceof Ctor &&
- funcToString.call(Ctor) == objectCtorString;
-}
-
-export default isPlainObject;
diff --git a/node_modules/lodash-es/isRegExp.js b/node_modules/lodash-es/isRegExp.js
deleted file mode 100644
index 19580db..0000000
--- a/node_modules/lodash-es/isRegExp.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import baseIsRegExp from './_baseIsRegExp.js';
-import baseUnary from './_baseUnary.js';
-import nodeUtil from './_nodeUtil.js';
-
-/* Node.js helper references. */
-var nodeIsRegExp = nodeUtil && nodeUtil.isRegExp;
-
-/**
- * Checks if `value` is classified as a `RegExp` object.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.
- * @example
- *
- * _.isRegExp(/abc/);
- * // => true
- *
- * _.isRegExp('/abc/');
- * // => false
- */
-var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp;
-
-export default isRegExp;
diff --git a/node_modules/lodash-es/isSafeInteger.js b/node_modules/lodash-es/isSafeInteger.js
deleted file mode 100644
index beda911..0000000
--- a/node_modules/lodash-es/isSafeInteger.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import isInteger from './isInteger.js';
-
-/** Used as references for various `Number` constants. */
-var MAX_SAFE_INTEGER = 9007199254740991;
-
-/**
- * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754
- * double precision number which isn't the result of a rounded unsafe integer.
- *
- * **Note:** This method is based on
- * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`.
- * @example
- *
- * _.isSafeInteger(3);
- * // => true
- *
- * _.isSafeInteger(Number.MIN_VALUE);
- * // => false
- *
- * _.isSafeInteger(Infinity);
- * // => false
- *
- * _.isSafeInteger('3');
- * // => false
- */
-function isSafeInteger(value) {
- return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER;
-}
-
-export default isSafeInteger;
diff --git a/node_modules/lodash-es/isSet.js b/node_modules/lodash-es/isSet.js
deleted file mode 100644
index 78c8198..0000000
--- a/node_modules/lodash-es/isSet.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import baseIsSet from './_baseIsSet.js';
-import baseUnary from './_baseUnary.js';
-import nodeUtil from './_nodeUtil.js';
-
-/* Node.js helper references. */
-var nodeIsSet = nodeUtil && nodeUtil.isSet;
-
-/**
- * Checks if `value` is classified as a `Set` object.
- *
- * @static
- * @memberOf _
- * @since 4.3.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a set, else `false`.
- * @example
- *
- * _.isSet(new Set);
- * // => true
- *
- * _.isSet(new WeakSet);
- * // => false
- */
-var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;
-
-export default isSet;
diff --git a/node_modules/lodash-es/isString.js b/node_modules/lodash-es/isString.js
deleted file mode 100644
index a422954..0000000
--- a/node_modules/lodash-es/isString.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import baseGetTag from './_baseGetTag.js';
-import isArray from './isArray.js';
-import isObjectLike from './isObjectLike.js';
-
-/** `Object#toString` result references. */
-var stringTag = '[object String]';
-
-/**
- * Checks if `value` is classified as a `String` primitive or object.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a string, else `false`.
- * @example
- *
- * _.isString('abc');
- * // => true
- *
- * _.isString(1);
- * // => false
- */
-function isString(value) {
- return typeof value == 'string' ||
- (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);
-}
-
-export default isString;
diff --git a/node_modules/lodash-es/isSymbol.js b/node_modules/lodash-es/isSymbol.js
deleted file mode 100644
index 61702c6..0000000
--- a/node_modules/lodash-es/isSymbol.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import baseGetTag from './_baseGetTag.js';
-import isObjectLike from './isObjectLike.js';
-
-/** `Object#toString` result references. */
-var symbolTag = '[object Symbol]';
-
-/**
- * Checks if `value` is classified as a `Symbol` primitive or object.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
- * @example
- *
- * _.isSymbol(Symbol.iterator);
- * // => true
- *
- * _.isSymbol('abc');
- * // => false
- */
-function isSymbol(value) {
- return typeof value == 'symbol' ||
- (isObjectLike(value) && baseGetTag(value) == symbolTag);
-}
-
-export default isSymbol;
diff --git a/node_modules/lodash-es/isTypedArray.js b/node_modules/lodash-es/isTypedArray.js
deleted file mode 100644
index 8cffbef..0000000
--- a/node_modules/lodash-es/isTypedArray.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import baseIsTypedArray from './_baseIsTypedArray.js';
-import baseUnary from './_baseUnary.js';
-import nodeUtil from './_nodeUtil.js';
-
-/* Node.js helper references. */
-var nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;
-
-/**
- * Checks if `value` is classified as a typed array.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
- * @example
- *
- * _.isTypedArray(new Uint8Array);
- * // => true
- *
- * _.isTypedArray([]);
- * // => false
- */
-var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;
-
-export default isTypedArray;
diff --git a/node_modules/lodash-es/isUndefined.js b/node_modules/lodash-es/isUndefined.js
deleted file mode 100644
index d4f97d5..0000000
--- a/node_modules/lodash-es/isUndefined.js
+++ /dev/null
@@ -1,22 +0,0 @@
-/**
- * Checks if `value` is `undefined`.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.
- * @example
- *
- * _.isUndefined(void 0);
- * // => true
- *
- * _.isUndefined(null);
- * // => false
- */
-function isUndefined(value) {
- return value === undefined;
-}
-
-export default isUndefined;
diff --git a/node_modules/lodash-es/isWeakMap.js b/node_modules/lodash-es/isWeakMap.js
deleted file mode 100644
index a85307f..0000000
--- a/node_modules/lodash-es/isWeakMap.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import getTag from './_getTag.js';
-import isObjectLike from './isObjectLike.js';
-
-/** `Object#toString` result references. */
-var weakMapTag = '[object WeakMap]';
-
-/**
- * Checks if `value` is classified as a `WeakMap` object.
- *
- * @static
- * @memberOf _
- * @since 4.3.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a weak map, else `false`.
- * @example
- *
- * _.isWeakMap(new WeakMap);
- * // => true
- *
- * _.isWeakMap(new Map);
- * // => false
- */
-function isWeakMap(value) {
- return isObjectLike(value) && getTag(value) == weakMapTag;
-}
-
-export default isWeakMap;
diff --git a/node_modules/lodash-es/isWeakSet.js b/node_modules/lodash-es/isWeakSet.js
deleted file mode 100644
index 69ad22e..0000000
--- a/node_modules/lodash-es/isWeakSet.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import baseGetTag from './_baseGetTag.js';
-import isObjectLike from './isObjectLike.js';
-
-/** `Object#toString` result references. */
-var weakSetTag = '[object WeakSet]';
-
-/**
- * Checks if `value` is classified as a `WeakSet` object.
- *
- * @static
- * @memberOf _
- * @since 4.3.0
- * @category Lang
- * @param {*} value The value to check.
- * @returns {boolean} Returns `true` if `value` is a weak set, else `false`.
- * @example
- *
- * _.isWeakSet(new WeakSet);
- * // => true
- *
- * _.isWeakSet(new Set);
- * // => false
- */
-function isWeakSet(value) {
- return isObjectLike(value) && baseGetTag(value) == weakSetTag;
-}
-
-export default isWeakSet;
diff --git a/node_modules/lodash-es/iteratee.js b/node_modules/lodash-es/iteratee.js
deleted file mode 100644
index a2a4af2..0000000
--- a/node_modules/lodash-es/iteratee.js
+++ /dev/null
@@ -1,53 +0,0 @@
-import baseClone from './_baseClone.js';
-import baseIteratee from './_baseIteratee.js';
-
-/** Used to compose bitmasks for cloning. */
-var CLONE_DEEP_FLAG = 1;
-
-/**
- * Creates a function that invokes `func` with the arguments of the created
- * function. If `func` is a property name, the created function returns the
- * property value for a given element. If `func` is an array or object, the
- * created function returns `true` for elements that contain the equivalent
- * source properties, otherwise it returns `false`.
- *
- * @static
- * @since 4.0.0
- * @memberOf _
- * @category Util
- * @param {*} [func=_.identity] The value to convert to a callback.
- * @returns {Function} Returns the callback.
- * @example
- *
- * var users = [
- * { 'user': 'barney', 'age': 36, 'active': true },
- * { 'user': 'fred', 'age': 40, 'active': false }
- * ];
- *
- * // The `_.matches` iteratee shorthand.
- * _.filter(users, _.iteratee({ 'user': 'barney', 'active': true }));
- * // => [{ 'user': 'barney', 'age': 36, 'active': true }]
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.filter(users, _.iteratee(['user', 'fred']));
- * // => [{ 'user': 'fred', 'age': 40 }]
- *
- * // The `_.property` iteratee shorthand.
- * _.map(users, _.iteratee('user'));
- * // => ['barney', 'fred']
- *
- * // Create custom iteratee shorthands.
- * _.iteratee = _.wrap(_.iteratee, function(iteratee, func) {
- * return !_.isRegExp(func) ? iteratee(func) : function(string) {
- * return func.test(string);
- * };
- * });
- *
- * _.filter(['abc', 'def'], /ef/);
- * // => ['def']
- */
-function iteratee(func) {
- return baseIteratee(typeof func == 'function' ? func : baseClone(func, CLONE_DEEP_FLAG));
-}
-
-export default iteratee;
diff --git a/node_modules/lodash-es/join.js b/node_modules/lodash-es/join.js
deleted file mode 100644
index 61dd65b..0000000
--- a/node_modules/lodash-es/join.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/** Used for built-in method references. */
-var arrayProto = Array.prototype;
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeJoin = arrayProto.join;
-
-/**
- * Converts all elements in `array` into a string separated by `separator`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The array to convert.
- * @param {string} [separator=','] The element separator.
- * @returns {string} Returns the joined string.
- * @example
- *
- * _.join(['a', 'b', 'c'], '~');
- * // => 'a~b~c'
- */
-function join(array, separator) {
- return array == null ? '' : nativeJoin.call(array, separator);
-}
-
-export default join;
diff --git a/node_modules/lodash-es/kebabCase.js b/node_modules/lodash-es/kebabCase.js
deleted file mode 100644
index 1df34db..0000000
--- a/node_modules/lodash-es/kebabCase.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import createCompounder from './_createCompounder.js';
-
-/**
- * Converts `string` to
- * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category String
- * @param {string} [string=''] The string to convert.
- * @returns {string} Returns the kebab cased string.
- * @example
- *
- * _.kebabCase('Foo Bar');
- * // => 'foo-bar'
- *
- * _.kebabCase('fooBar');
- * // => 'foo-bar'
- *
- * _.kebabCase('__FOO_BAR__');
- * // => 'foo-bar'
- */
-var kebabCase = createCompounder(function(result, word, index) {
- return result + (index ? '-' : '') + word.toLowerCase();
-});
-
-export default kebabCase;
diff --git a/node_modules/lodash-es/keyBy.js b/node_modules/lodash-es/keyBy.js
deleted file mode 100644
index 3349522..0000000
--- a/node_modules/lodash-es/keyBy.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import baseAssignValue from './_baseAssignValue.js';
-import createAggregator from './_createAggregator.js';
-
-/**
- * Creates an object composed of keys generated from the results of running
- * each element of `collection` thru `iteratee`. The corresponding value of
- * each key is the last element responsible for generating the key. The
- * iteratee is invoked with one argument: (value).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The iteratee to transform keys.
- * @returns {Object} Returns the composed aggregate object.
- * @example
- *
- * var array = [
- * { 'dir': 'left', 'code': 97 },
- * { 'dir': 'right', 'code': 100 }
- * ];
- *
- * _.keyBy(array, function(o) {
- * return String.fromCharCode(o.code);
- * });
- * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } }
- *
- * _.keyBy(array, 'dir');
- * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } }
- */
-var keyBy = createAggregator(function(result, value, key) {
- baseAssignValue(result, key, value);
-});
-
-export default keyBy;
diff --git a/node_modules/lodash-es/keys.js b/node_modules/lodash-es/keys.js
deleted file mode 100644
index fd7089b..0000000
--- a/node_modules/lodash-es/keys.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import arrayLikeKeys from './_arrayLikeKeys.js';
-import baseKeys from './_baseKeys.js';
-import isArrayLike from './isArrayLike.js';
-
-/**
- * Creates an array of the own enumerable property names of `object`.
- *
- * **Note:** Non-object values are coerced to objects. See the
- * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
- * for more details.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Object
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of property names.
- * @example
- *
- * function Foo() {
- * this.a = 1;
- * this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.keys(new Foo);
- * // => ['a', 'b'] (iteration order is not guaranteed)
- *
- * _.keys('hi');
- * // => ['0', '1']
- */
-function keys(object) {
- return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);
-}
-
-export default keys;
diff --git a/node_modules/lodash-es/keysIn.js b/node_modules/lodash-es/keysIn.js
deleted file mode 100644
index a77147a..0000000
--- a/node_modules/lodash-es/keysIn.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import arrayLikeKeys from './_arrayLikeKeys.js';
-import baseKeysIn from './_baseKeysIn.js';
-import isArrayLike from './isArrayLike.js';
-
-/**
- * Creates an array of the own and inherited enumerable property names of `object`.
- *
- * **Note:** Non-object values are coerced to objects.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Object
- * @param {Object} object The object to query.
- * @returns {Array} Returns the array of property names.
- * @example
- *
- * function Foo() {
- * this.a = 1;
- * this.b = 2;
- * }
- *
- * Foo.prototype.c = 3;
- *
- * _.keysIn(new Foo);
- * // => ['a', 'b', 'c'] (iteration order is not guaranteed)
- */
-function keysIn(object) {
- return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);
-}
-
-export default keysIn;
diff --git a/node_modules/lodash-es/lang.default.js b/node_modules/lodash-es/lang.default.js
deleted file mode 100644
index 8fd434d..0000000
--- a/node_modules/lodash-es/lang.default.js
+++ /dev/null
@@ -1,71 +0,0 @@
-import castArray from './castArray.js';
-import clone from './clone.js';
-import cloneDeep from './cloneDeep.js';
-import cloneDeepWith from './cloneDeepWith.js';
-import cloneWith from './cloneWith.js';
-import conformsTo from './conformsTo.js';
-import eq from './eq.js';
-import gt from './gt.js';
-import gte from './gte.js';
-import isArguments from './isArguments.js';
-import isArray from './isArray.js';
-import isArrayBuffer from './isArrayBuffer.js';
-import isArrayLike from './isArrayLike.js';
-import isArrayLikeObject from './isArrayLikeObject.js';
-import isBoolean from './isBoolean.js';
-import isBuffer from './isBuffer.js';
-import isDate from './isDate.js';
-import isElement from './isElement.js';
-import isEmpty from './isEmpty.js';
-import isEqual from './isEqual.js';
-import isEqualWith from './isEqualWith.js';
-import isError from './isError.js';
-import isFinite from './isFinite.js';
-import isFunction from './isFunction.js';
-import isInteger from './isInteger.js';
-import isLength from './isLength.js';
-import isMap from './isMap.js';
-import isMatch from './isMatch.js';
-import isMatchWith from './isMatchWith.js';
-import isNaN from './isNaN.js';
-import isNative from './isNative.js';
-import isNil from './isNil.js';
-import isNull from './isNull.js';
-import isNumber from './isNumber.js';
-import isObject from './isObject.js';
-import isObjectLike from './isObjectLike.js';
-import isPlainObject from './isPlainObject.js';
-import isRegExp from './isRegExp.js';
-import isSafeInteger from './isSafeInteger.js';
-import isSet from './isSet.js';
-import isString from './isString.js';
-import isSymbol from './isSymbol.js';
-import isTypedArray from './isTypedArray.js';
-import isUndefined from './isUndefined.js';
-import isWeakMap from './isWeakMap.js';
-import isWeakSet from './isWeakSet.js';
-import lt from './lt.js';
-import lte from './lte.js';
-import toArray from './toArray.js';
-import toFinite from './toFinite.js';
-import toInteger from './toInteger.js';
-import toLength from './toLength.js';
-import toNumber from './toNumber.js';
-import toPlainObject from './toPlainObject.js';
-import toSafeInteger from './toSafeInteger.js';
-import toString from './toString.js';
-
-export default {
- castArray, clone, cloneDeep, cloneDeepWith, cloneWith,
- conformsTo, eq, gt, gte, isArguments,
- isArray, isArrayBuffer, isArrayLike, isArrayLikeObject, isBoolean,
- isBuffer, isDate, isElement, isEmpty, isEqual,
- isEqualWith, isError, isFinite, isFunction, isInteger,
- isLength, isMap, isMatch, isMatchWith, isNaN,
- isNative, isNil, isNull, isNumber, isObject,
- isObjectLike, isPlainObject, isRegExp, isSafeInteger, isSet,
- isString, isSymbol, isTypedArray, isUndefined, isWeakMap,
- isWeakSet, lt, lte, toArray, toFinite,
- toInteger, toLength, toNumber, toPlainObject, toSafeInteger,
- toString
-};
diff --git a/node_modules/lodash-es/lang.js b/node_modules/lodash-es/lang.js
deleted file mode 100644
index eb837d9..0000000
--- a/node_modules/lodash-es/lang.js
+++ /dev/null
@@ -1,57 +0,0 @@
-export { default as castArray } from './castArray.js';
-export { default as clone } from './clone.js';
-export { default as cloneDeep } from './cloneDeep.js';
-export { default as cloneDeepWith } from './cloneDeepWith.js';
-export { default as cloneWith } from './cloneWith.js';
-export { default as conformsTo } from './conformsTo.js';
-export { default as eq } from './eq.js';
-export { default as gt } from './gt.js';
-export { default as gte } from './gte.js';
-export { default as isArguments } from './isArguments.js';
-export { default as isArray } from './isArray.js';
-export { default as isArrayBuffer } from './isArrayBuffer.js';
-export { default as isArrayLike } from './isArrayLike.js';
-export { default as isArrayLikeObject } from './isArrayLikeObject.js';
-export { default as isBoolean } from './isBoolean.js';
-export { default as isBuffer } from './isBuffer.js';
-export { default as isDate } from './isDate.js';
-export { default as isElement } from './isElement.js';
-export { default as isEmpty } from './isEmpty.js';
-export { default as isEqual } from './isEqual.js';
-export { default as isEqualWith } from './isEqualWith.js';
-export { default as isError } from './isError.js';
-export { default as isFinite } from './isFinite.js';
-export { default as isFunction } from './isFunction.js';
-export { default as isInteger } from './isInteger.js';
-export { default as isLength } from './isLength.js';
-export { default as isMap } from './isMap.js';
-export { default as isMatch } from './isMatch.js';
-export { default as isMatchWith } from './isMatchWith.js';
-export { default as isNaN } from './isNaN.js';
-export { default as isNative } from './isNative.js';
-export { default as isNil } from './isNil.js';
-export { default as isNull } from './isNull.js';
-export { default as isNumber } from './isNumber.js';
-export { default as isObject } from './isObject.js';
-export { default as isObjectLike } from './isObjectLike.js';
-export { default as isPlainObject } from './isPlainObject.js';
-export { default as isRegExp } from './isRegExp.js';
-export { default as isSafeInteger } from './isSafeInteger.js';
-export { default as isSet } from './isSet.js';
-export { default as isString } from './isString.js';
-export { default as isSymbol } from './isSymbol.js';
-export { default as isTypedArray } from './isTypedArray.js';
-export { default as isUndefined } from './isUndefined.js';
-export { default as isWeakMap } from './isWeakMap.js';
-export { default as isWeakSet } from './isWeakSet.js';
-export { default as lt } from './lt.js';
-export { default as lte } from './lte.js';
-export { default as toArray } from './toArray.js';
-export { default as toFinite } from './toFinite.js';
-export { default as toInteger } from './toInteger.js';
-export { default as toLength } from './toLength.js';
-export { default as toNumber } from './toNumber.js';
-export { default as toPlainObject } from './toPlainObject.js';
-export { default as toSafeInteger } from './toSafeInteger.js';
-export { default as toString } from './toString.js';
-export { default } from './lang.default.js';
diff --git a/node_modules/lodash-es/last.js b/node_modules/lodash-es/last.js
deleted file mode 100644
index b4135f7..0000000
--- a/node_modules/lodash-es/last.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/**
- * Gets the last element of `array`.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Array
- * @param {Array} array The array to query.
- * @returns {*} Returns the last element of `array`.
- * @example
- *
- * _.last([1, 2, 3]);
- * // => 3
- */
-function last(array) {
- var length = array == null ? 0 : array.length;
- return length ? array[length - 1] : undefined;
-}
-
-export default last;
diff --git a/node_modules/lodash-es/lastIndexOf.js b/node_modules/lodash-es/lastIndexOf.js
deleted file mode 100644
index bf6eac8..0000000
--- a/node_modules/lodash-es/lastIndexOf.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import baseFindIndex from './_baseFindIndex.js';
-import baseIsNaN from './_baseIsNaN.js';
-import strictLastIndexOf from './_strictLastIndexOf.js';
-import toInteger from './toInteger.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max,
- nativeMin = Math.min;
-
-/**
- * This method is like `_.indexOf` except that it iterates over elements of
- * `array` from right to left.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Array
- * @param {Array} array The array to inspect.
- * @param {*} value The value to search for.
- * @param {number} [fromIndex=array.length-1] The index to search from.
- * @returns {number} Returns the index of the matched value, else `-1`.
- * @example
- *
- * _.lastIndexOf([1, 2, 1, 2], 2);
- * // => 3
- *
- * // Search from the `fromIndex`.
- * _.lastIndexOf([1, 2, 1, 2], 2, 2);
- * // => 1
- */
-function lastIndexOf(array, value, fromIndex) {
- var length = array == null ? 0 : array.length;
- if (!length) {
- return -1;
- }
- var index = length;
- if (fromIndex !== undefined) {
- index = toInteger(fromIndex);
- index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1);
- }
- return value === value
- ? strictLastIndexOf(array, value, index)
- : baseFindIndex(array, baseIsNaN, index, true);
-}
-
-export default lastIndexOf;
diff --git a/node_modules/lodash-es/lodash.default.js b/node_modules/lodash-es/lodash.default.js
deleted file mode 100644
index 388431d..0000000
--- a/node_modules/lodash-es/lodash.default.js
+++ /dev/null
@@ -1,642 +0,0 @@
-/**
- * @license
- * Lodash (Custom Build)
- * Build: `lodash modularize exports="es" -o ./`
- * Copyright JS Foundation and other contributors
- * Released under MIT license
- * Based on Underscore.js 1.8.3
- * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
- */
-import array from './array.js';
-import collection from './collection.js';
-import date from './date.js';
-import func from './function.js';
-import lang from './lang.js';
-import math from './math.js';
-import number from './number.js';
-import object from './object.js';
-import seq from './seq.js';
-import string from './string.js';
-import util from './util.js';
-import LazyWrapper from './_LazyWrapper.js';
-import LodashWrapper from './_LodashWrapper.js';
-import Symbol from './_Symbol.js';
-import arrayEach from './_arrayEach.js';
-import arrayPush from './_arrayPush.js';
-import baseForOwn from './_baseForOwn.js';
-import baseFunctions from './_baseFunctions.js';
-import baseInvoke from './_baseInvoke.js';
-import baseIteratee from './_baseIteratee.js';
-import baseRest from './_baseRest.js';
-import createHybrid from './_createHybrid.js';
-import identity from './identity.js';
-import isArray from './isArray.js';
-import isObject from './isObject.js';
-import keys from './keys.js';
-import last from './last.js';
-import lazyClone from './_lazyClone.js';
-import lazyReverse from './_lazyReverse.js';
-import lazyValue from './_lazyValue.js';
-import _mixin from './mixin.js';
-import negate from './negate.js';
-import realNames from './_realNames.js';
-import thru from './thru.js';
-import toInteger from './toInteger.js';
-import lodash from './wrapperLodash.js';
-
-/** Used as the semantic version number. */
-var VERSION = '4.17.11';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_BIND_KEY_FLAG = 2;
-
-/** Used to indicate the type of lazy iteratees. */
-var LAZY_FILTER_FLAG = 1,
- LAZY_WHILE_FLAG = 3;
-
-/** Used as references for the maximum length and index of an array. */
-var MAX_ARRAY_LENGTH = 4294967295;
-
-/** Used for built-in method references. */
-var arrayProto = Array.prototype,
- objectProto = Object.prototype;
-
-/** Used to check objects for own properties. */
-var hasOwnProperty = objectProto.hasOwnProperty;
-
-/** Built-in value references. */
-var symIterator = Symbol ? Symbol.iterator : undefined;
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max,
- nativeMin = Math.min;
-
-// wrap `_.mixin` so it works when provided only one argument
-var mixin = (function(func) {
- return function(object, source, options) {
- if (options == null) {
- var isObj = isObject(source),
- props = isObj && keys(source),
- methodNames = props && props.length && baseFunctions(source, props);
-
- if (!(methodNames ? methodNames.length : isObj)) {
- options = source;
- source = object;
- object = this;
- }
- }
- return func(object, source, options);
- };
-}(_mixin));
-
-// Add methods that return wrapped values in chain sequences.
-lodash.after = func.after;
-lodash.ary = func.ary;
-lodash.assign = object.assign;
-lodash.assignIn = object.assignIn;
-lodash.assignInWith = object.assignInWith;
-lodash.assignWith = object.assignWith;
-lodash.at = object.at;
-lodash.before = func.before;
-lodash.bind = func.bind;
-lodash.bindAll = util.bindAll;
-lodash.bindKey = func.bindKey;
-lodash.castArray = lang.castArray;
-lodash.chain = seq.chain;
-lodash.chunk = array.chunk;
-lodash.compact = array.compact;
-lodash.concat = array.concat;
-lodash.cond = util.cond;
-lodash.conforms = util.conforms;
-lodash.constant = util.constant;
-lodash.countBy = collection.countBy;
-lodash.create = object.create;
-lodash.curry = func.curry;
-lodash.curryRight = func.curryRight;
-lodash.debounce = func.debounce;
-lodash.defaults = object.defaults;
-lodash.defaultsDeep = object.defaultsDeep;
-lodash.defer = func.defer;
-lodash.delay = func.delay;
-lodash.difference = array.difference;
-lodash.differenceBy = array.differenceBy;
-lodash.differenceWith = array.differenceWith;
-lodash.drop = array.drop;
-lodash.dropRight = array.dropRight;
-lodash.dropRightWhile = array.dropRightWhile;
-lodash.dropWhile = array.dropWhile;
-lodash.fill = array.fill;
-lodash.filter = collection.filter;
-lodash.flatMap = collection.flatMap;
-lodash.flatMapDeep = collection.flatMapDeep;
-lodash.flatMapDepth = collection.flatMapDepth;
-lodash.flatten = array.flatten;
-lodash.flattenDeep = array.flattenDeep;
-lodash.flattenDepth = array.flattenDepth;
-lodash.flip = func.flip;
-lodash.flow = util.flow;
-lodash.flowRight = util.flowRight;
-lodash.fromPairs = array.fromPairs;
-lodash.functions = object.functions;
-lodash.functionsIn = object.functionsIn;
-lodash.groupBy = collection.groupBy;
-lodash.initial = array.initial;
-lodash.intersection = array.intersection;
-lodash.intersectionBy = array.intersectionBy;
-lodash.intersectionWith = array.intersectionWith;
-lodash.invert = object.invert;
-lodash.invertBy = object.invertBy;
-lodash.invokeMap = collection.invokeMap;
-lodash.iteratee = util.iteratee;
-lodash.keyBy = collection.keyBy;
-lodash.keys = keys;
-lodash.keysIn = object.keysIn;
-lodash.map = collection.map;
-lodash.mapKeys = object.mapKeys;
-lodash.mapValues = object.mapValues;
-lodash.matches = util.matches;
-lodash.matchesProperty = util.matchesProperty;
-lodash.memoize = func.memoize;
-lodash.merge = object.merge;
-lodash.mergeWith = object.mergeWith;
-lodash.method = util.method;
-lodash.methodOf = util.methodOf;
-lodash.mixin = mixin;
-lodash.negate = negate;
-lodash.nthArg = util.nthArg;
-lodash.omit = object.omit;
-lodash.omitBy = object.omitBy;
-lodash.once = func.once;
-lodash.orderBy = collection.orderBy;
-lodash.over = util.over;
-lodash.overArgs = func.overArgs;
-lodash.overEvery = util.overEvery;
-lodash.overSome = util.overSome;
-lodash.partial = func.partial;
-lodash.partialRight = func.partialRight;
-lodash.partition = collection.partition;
-lodash.pick = object.pick;
-lodash.pickBy = object.pickBy;
-lodash.property = util.property;
-lodash.propertyOf = util.propertyOf;
-lodash.pull = array.pull;
-lodash.pullAll = array.pullAll;
-lodash.pullAllBy = array.pullAllBy;
-lodash.pullAllWith = array.pullAllWith;
-lodash.pullAt = array.pullAt;
-lodash.range = util.range;
-lodash.rangeRight = util.rangeRight;
-lodash.rearg = func.rearg;
-lodash.reject = collection.reject;
-lodash.remove = array.remove;
-lodash.rest = func.rest;
-lodash.reverse = array.reverse;
-lodash.sampleSize = collection.sampleSize;
-lodash.set = object.set;
-lodash.setWith = object.setWith;
-lodash.shuffle = collection.shuffle;
-lodash.slice = array.slice;
-lodash.sortBy = collection.sortBy;
-lodash.sortedUniq = array.sortedUniq;
-lodash.sortedUniqBy = array.sortedUniqBy;
-lodash.split = string.split;
-lodash.spread = func.spread;
-lodash.tail = array.tail;
-lodash.take = array.take;
-lodash.takeRight = array.takeRight;
-lodash.takeRightWhile = array.takeRightWhile;
-lodash.takeWhile = array.takeWhile;
-lodash.tap = seq.tap;
-lodash.throttle = func.throttle;
-lodash.thru = thru;
-lodash.toArray = lang.toArray;
-lodash.toPairs = object.toPairs;
-lodash.toPairsIn = object.toPairsIn;
-lodash.toPath = util.toPath;
-lodash.toPlainObject = lang.toPlainObject;
-lodash.transform = object.transform;
-lodash.unary = func.unary;
-lodash.union = array.union;
-lodash.unionBy = array.unionBy;
-lodash.unionWith = array.unionWith;
-lodash.uniq = array.uniq;
-lodash.uniqBy = array.uniqBy;
-lodash.uniqWith = array.uniqWith;
-lodash.unset = object.unset;
-lodash.unzip = array.unzip;
-lodash.unzipWith = array.unzipWith;
-lodash.update = object.update;
-lodash.updateWith = object.updateWith;
-lodash.values = object.values;
-lodash.valuesIn = object.valuesIn;
-lodash.without = array.without;
-lodash.words = string.words;
-lodash.wrap = func.wrap;
-lodash.xor = array.xor;
-lodash.xorBy = array.xorBy;
-lodash.xorWith = array.xorWith;
-lodash.zip = array.zip;
-lodash.zipObject = array.zipObject;
-lodash.zipObjectDeep = array.zipObjectDeep;
-lodash.zipWith = array.zipWith;
-
-// Add aliases.
-lodash.entries = object.toPairs;
-lodash.entriesIn = object.toPairsIn;
-lodash.extend = object.assignIn;
-lodash.extendWith = object.assignInWith;
-
-// Add methods to `lodash.prototype`.
-mixin(lodash, lodash);
-
-// Add methods that return unwrapped values in chain sequences.
-lodash.add = math.add;
-lodash.attempt = util.attempt;
-lodash.camelCase = string.camelCase;
-lodash.capitalize = string.capitalize;
-lodash.ceil = math.ceil;
-lodash.clamp = number.clamp;
-lodash.clone = lang.clone;
-lodash.cloneDeep = lang.cloneDeep;
-lodash.cloneDeepWith = lang.cloneDeepWith;
-lodash.cloneWith = lang.cloneWith;
-lodash.conformsTo = lang.conformsTo;
-lodash.deburr = string.deburr;
-lodash.defaultTo = util.defaultTo;
-lodash.divide = math.divide;
-lodash.endsWith = string.endsWith;
-lodash.eq = lang.eq;
-lodash.escape = string.escape;
-lodash.escapeRegExp = string.escapeRegExp;
-lodash.every = collection.every;
-lodash.find = collection.find;
-lodash.findIndex = array.findIndex;
-lodash.findKey = object.findKey;
-lodash.findLast = collection.findLast;
-lodash.findLastIndex = array.findLastIndex;
-lodash.findLastKey = object.findLastKey;
-lodash.floor = math.floor;
-lodash.forEach = collection.forEach;
-lodash.forEachRight = collection.forEachRight;
-lodash.forIn = object.forIn;
-lodash.forInRight = object.forInRight;
-lodash.forOwn = object.forOwn;
-lodash.forOwnRight = object.forOwnRight;
-lodash.get = object.get;
-lodash.gt = lang.gt;
-lodash.gte = lang.gte;
-lodash.has = object.has;
-lodash.hasIn = object.hasIn;
-lodash.head = array.head;
-lodash.identity = identity;
-lodash.includes = collection.includes;
-lodash.indexOf = array.indexOf;
-lodash.inRange = number.inRange;
-lodash.invoke = object.invoke;
-lodash.isArguments = lang.isArguments;
-lodash.isArray = isArray;
-lodash.isArrayBuffer = lang.isArrayBuffer;
-lodash.isArrayLike = lang.isArrayLike;
-lodash.isArrayLikeObject = lang.isArrayLikeObject;
-lodash.isBoolean = lang.isBoolean;
-lodash.isBuffer = lang.isBuffer;
-lodash.isDate = lang.isDate;
-lodash.isElement = lang.isElement;
-lodash.isEmpty = lang.isEmpty;
-lodash.isEqual = lang.isEqual;
-lodash.isEqualWith = lang.isEqualWith;
-lodash.isError = lang.isError;
-lodash.isFinite = lang.isFinite;
-lodash.isFunction = lang.isFunction;
-lodash.isInteger = lang.isInteger;
-lodash.isLength = lang.isLength;
-lodash.isMap = lang.isMap;
-lodash.isMatch = lang.isMatch;
-lodash.isMatchWith = lang.isMatchWith;
-lodash.isNaN = lang.isNaN;
-lodash.isNative = lang.isNative;
-lodash.isNil = lang.isNil;
-lodash.isNull = lang.isNull;
-lodash.isNumber = lang.isNumber;
-lodash.isObject = isObject;
-lodash.isObjectLike = lang.isObjectLike;
-lodash.isPlainObject = lang.isPlainObject;
-lodash.isRegExp = lang.isRegExp;
-lodash.isSafeInteger = lang.isSafeInteger;
-lodash.isSet = lang.isSet;
-lodash.isString = lang.isString;
-lodash.isSymbol = lang.isSymbol;
-lodash.isTypedArray = lang.isTypedArray;
-lodash.isUndefined = lang.isUndefined;
-lodash.isWeakMap = lang.isWeakMap;
-lodash.isWeakSet = lang.isWeakSet;
-lodash.join = array.join;
-lodash.kebabCase = string.kebabCase;
-lodash.last = last;
-lodash.lastIndexOf = array.lastIndexOf;
-lodash.lowerCase = string.lowerCase;
-lodash.lowerFirst = string.lowerFirst;
-lodash.lt = lang.lt;
-lodash.lte = lang.lte;
-lodash.max = math.max;
-lodash.maxBy = math.maxBy;
-lodash.mean = math.mean;
-lodash.meanBy = math.meanBy;
-lodash.min = math.min;
-lodash.minBy = math.minBy;
-lodash.stubArray = util.stubArray;
-lodash.stubFalse = util.stubFalse;
-lodash.stubObject = util.stubObject;
-lodash.stubString = util.stubString;
-lodash.stubTrue = util.stubTrue;
-lodash.multiply = math.multiply;
-lodash.nth = array.nth;
-lodash.noop = util.noop;
-lodash.now = date.now;
-lodash.pad = string.pad;
-lodash.padEnd = string.padEnd;
-lodash.padStart = string.padStart;
-lodash.parseInt = string.parseInt;
-lodash.random = number.random;
-lodash.reduce = collection.reduce;
-lodash.reduceRight = collection.reduceRight;
-lodash.repeat = string.repeat;
-lodash.replace = string.replace;
-lodash.result = object.result;
-lodash.round = math.round;
-lodash.sample = collection.sample;
-lodash.size = collection.size;
-lodash.snakeCase = string.snakeCase;
-lodash.some = collection.some;
-lodash.sortedIndex = array.sortedIndex;
-lodash.sortedIndexBy = array.sortedIndexBy;
-lodash.sortedIndexOf = array.sortedIndexOf;
-lodash.sortedLastIndex = array.sortedLastIndex;
-lodash.sortedLastIndexBy = array.sortedLastIndexBy;
-lodash.sortedLastIndexOf = array.sortedLastIndexOf;
-lodash.startCase = string.startCase;
-lodash.startsWith = string.startsWith;
-lodash.subtract = math.subtract;
-lodash.sum = math.sum;
-lodash.sumBy = math.sumBy;
-lodash.template = string.template;
-lodash.times = util.times;
-lodash.toFinite = lang.toFinite;
-lodash.toInteger = toInteger;
-lodash.toLength = lang.toLength;
-lodash.toLower = string.toLower;
-lodash.toNumber = lang.toNumber;
-lodash.toSafeInteger = lang.toSafeInteger;
-lodash.toString = lang.toString;
-lodash.toUpper = string.toUpper;
-lodash.trim = string.trim;
-lodash.trimEnd = string.trimEnd;
-lodash.trimStart = string.trimStart;
-lodash.truncate = string.truncate;
-lodash.unescape = string.unescape;
-lodash.uniqueId = util.uniqueId;
-lodash.upperCase = string.upperCase;
-lodash.upperFirst = string.upperFirst;
-
-// Add aliases.
-lodash.each = collection.forEach;
-lodash.eachRight = collection.forEachRight;
-lodash.first = array.head;
-
-mixin(lodash, (function() {
- var source = {};
- baseForOwn(lodash, function(func, methodName) {
- if (!hasOwnProperty.call(lodash.prototype, methodName)) {
- source[methodName] = func;
- }
- });
- return source;
-}()), { 'chain': false });
-
-/**
- * The semantic version number.
- *
- * @static
- * @memberOf _
- * @type {string}
- */
-lodash.VERSION = VERSION;
-(lodash.templateSettings = string.templateSettings).imports._ = lodash;
-
-// Assign default placeholders.
-arrayEach(['bind', 'bindKey', 'curry', 'curryRight', 'partial', 'partialRight'], function(methodName) {
- lodash[methodName].placeholder = lodash;
-});
-
-// Add `LazyWrapper` methods for `_.drop` and `_.take` variants.
-arrayEach(['drop', 'take'], function(methodName, index) {
- LazyWrapper.prototype[methodName] = function(n) {
- n = n === undefined ? 1 : nativeMax(toInteger(n), 0);
-
- var result = (this.__filtered__ && !index)
- ? new LazyWrapper(this)
- : this.clone();
-
- if (result.__filtered__) {
- result.__takeCount__ = nativeMin(n, result.__takeCount__);
- } else {
- result.__views__.push({
- 'size': nativeMin(n, MAX_ARRAY_LENGTH),
- 'type': methodName + (result.__dir__ < 0 ? 'Right' : '')
- });
- }
- return result;
- };
-
- LazyWrapper.prototype[methodName + 'Right'] = function(n) {
- return this.reverse()[methodName](n).reverse();
- };
-});
-
-// Add `LazyWrapper` methods that accept an `iteratee` value.
-arrayEach(['filter', 'map', 'takeWhile'], function(methodName, index) {
- var type = index + 1,
- isFilter = type == LAZY_FILTER_FLAG || type == LAZY_WHILE_FLAG;
-
- LazyWrapper.prototype[methodName] = function(iteratee) {
- var result = this.clone();
- result.__iteratees__.push({
- 'iteratee': baseIteratee(iteratee, 3),
- 'type': type
- });
- result.__filtered__ = result.__filtered__ || isFilter;
- return result;
- };
-});
-
-// Add `LazyWrapper` methods for `_.head` and `_.last`.
-arrayEach(['head', 'last'], function(methodName, index) {
- var takeName = 'take' + (index ? 'Right' : '');
-
- LazyWrapper.prototype[methodName] = function() {
- return this[takeName](1).value()[0];
- };
-});
-
-// Add `LazyWrapper` methods for `_.initial` and `_.tail`.
-arrayEach(['initial', 'tail'], function(methodName, index) {
- var dropName = 'drop' + (index ? '' : 'Right');
-
- LazyWrapper.prototype[methodName] = function() {
- return this.__filtered__ ? new LazyWrapper(this) : this[dropName](1);
- };
-});
-
-LazyWrapper.prototype.compact = function() {
- return this.filter(identity);
-};
-
-LazyWrapper.prototype.find = function(predicate) {
- return this.filter(predicate).head();
-};
-
-LazyWrapper.prototype.findLast = function(predicate) {
- return this.reverse().find(predicate);
-};
-
-LazyWrapper.prototype.invokeMap = baseRest(function(path, args) {
- if (typeof path == 'function') {
- return new LazyWrapper(this);
- }
- return this.map(function(value) {
- return baseInvoke(value, path, args);
- });
-});
-
-LazyWrapper.prototype.reject = function(predicate) {
- return this.filter(negate(baseIteratee(predicate)));
-};
-
-LazyWrapper.prototype.slice = function(start, end) {
- start = toInteger(start);
-
- var result = this;
- if (result.__filtered__ && (start > 0 || end < 0)) {
- return new LazyWrapper(result);
- }
- if (start < 0) {
- result = result.takeRight(-start);
- } else if (start) {
- result = result.drop(start);
- }
- if (end !== undefined) {
- end = toInteger(end);
- result = end < 0 ? result.dropRight(-end) : result.take(end - start);
- }
- return result;
-};
-
-LazyWrapper.prototype.takeRightWhile = function(predicate) {
- return this.reverse().takeWhile(predicate).reverse();
-};
-
-LazyWrapper.prototype.toArray = function() {
- return this.take(MAX_ARRAY_LENGTH);
-};
-
-// Add `LazyWrapper` methods to `lodash.prototype`.
-baseForOwn(LazyWrapper.prototype, function(func, methodName) {
- var checkIteratee = /^(?:filter|find|map|reject)|While$/.test(methodName),
- isTaker = /^(?:head|last)$/.test(methodName),
- lodashFunc = lodash[isTaker ? ('take' + (methodName == 'last' ? 'Right' : '')) : methodName],
- retUnwrapped = isTaker || /^find/.test(methodName);
-
- if (!lodashFunc) {
- return;
- }
- lodash.prototype[methodName] = function() {
- var value = this.__wrapped__,
- args = isTaker ? [1] : arguments,
- isLazy = value instanceof LazyWrapper,
- iteratee = args[0],
- useLazy = isLazy || isArray(value);
-
- var interceptor = function(value) {
- var result = lodashFunc.apply(lodash, arrayPush([value], args));
- return (isTaker && chainAll) ? result[0] : result;
- };
-
- if (useLazy && checkIteratee && typeof iteratee == 'function' && iteratee.length != 1) {
- // Avoid lazy use if the iteratee has a "length" value other than `1`.
- isLazy = useLazy = false;
- }
- var chainAll = this.__chain__,
- isHybrid = !!this.__actions__.length,
- isUnwrapped = retUnwrapped && !chainAll,
- onlyLazy = isLazy && !isHybrid;
-
- if (!retUnwrapped && useLazy) {
- value = onlyLazy ? value : new LazyWrapper(this);
- var result = func.apply(value, args);
- result.__actions__.push({ 'func': thru, 'args': [interceptor], 'thisArg': undefined });
- return new LodashWrapper(result, chainAll);
- }
- if (isUnwrapped && onlyLazy) {
- return func.apply(this, args);
- }
- result = this.thru(interceptor);
- return isUnwrapped ? (isTaker ? result.value()[0] : result.value()) : result;
- };
-});
-
-// Add `Array` methods to `lodash.prototype`.
-arrayEach(['pop', 'push', 'shift', 'sort', 'splice', 'unshift'], function(methodName) {
- var func = arrayProto[methodName],
- chainName = /^(?:push|sort|unshift)$/.test(methodName) ? 'tap' : 'thru',
- retUnwrapped = /^(?:pop|shift)$/.test(methodName);
-
- lodash.prototype[methodName] = function() {
- var args = arguments;
- if (retUnwrapped && !this.__chain__) {
- var value = this.value();
- return func.apply(isArray(value) ? value : [], args);
- }
- return this[chainName](function(value) {
- return func.apply(isArray(value) ? value : [], args);
- });
- };
-});
-
-// Map minified method names to their real names.
-baseForOwn(LazyWrapper.prototype, function(func, methodName) {
- var lodashFunc = lodash[methodName];
- if (lodashFunc) {
- var key = (lodashFunc.name + ''),
- names = realNames[key] || (realNames[key] = []);
-
- names.push({ 'name': methodName, 'func': lodashFunc });
- }
-});
-
-realNames[createHybrid(undefined, WRAP_BIND_KEY_FLAG).name] = [{
- 'name': 'wrapper',
- 'func': undefined
-}];
-
-// Add methods to `LazyWrapper`.
-LazyWrapper.prototype.clone = lazyClone;
-LazyWrapper.prototype.reverse = lazyReverse;
-LazyWrapper.prototype.value = lazyValue;
-
-// Add chain sequence methods to the `lodash` wrapper.
-lodash.prototype.at = seq.at;
-lodash.prototype.chain = seq.wrapperChain;
-lodash.prototype.commit = seq.commit;
-lodash.prototype.next = seq.next;
-lodash.prototype.plant = seq.plant;
-lodash.prototype.reverse = seq.reverse;
-lodash.prototype.toJSON = lodash.prototype.valueOf = lodash.prototype.value = seq.value;
-
-// Add lazy aliases.
-lodash.prototype.first = lodash.prototype.head;
-
-if (symIterator) {
- lodash.prototype[symIterator] = seq.toIterator;
-}
-
-export default lodash;
diff --git a/node_modules/lodash-es/lodash.js b/node_modules/lodash-es/lodash.js
deleted file mode 100644
index 706eb5e..0000000
--- a/node_modules/lodash-es/lodash.js
+++ /dev/null
@@ -1,331 +0,0 @@
-/**
- * @license
- * Lodash (Custom Build)
- * Build: `lodash modularize exports="es" -o ./`
- * Copyright JS Foundation and other contributors
- * Released under MIT license
- * Based on Underscore.js 1.8.3
- * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
- */
-export { default as add } from './add.js';
-export { default as after } from './after.js';
-export { default as ary } from './ary.js';
-export { default as assign } from './assign.js';
-export { default as assignIn } from './assignIn.js';
-export { default as assignInWith } from './assignInWith.js';
-export { default as assignWith } from './assignWith.js';
-export { default as at } from './at.js';
-export { default as attempt } from './attempt.js';
-export { default as before } from './before.js';
-export { default as bind } from './bind.js';
-export { default as bindAll } from './bindAll.js';
-export { default as bindKey } from './bindKey.js';
-export { default as camelCase } from './camelCase.js';
-export { default as capitalize } from './capitalize.js';
-export { default as castArray } from './castArray.js';
-export { default as ceil } from './ceil.js';
-export { default as chain } from './chain.js';
-export { default as chunk } from './chunk.js';
-export { default as clamp } from './clamp.js';
-export { default as clone } from './clone.js';
-export { default as cloneDeep } from './cloneDeep.js';
-export { default as cloneDeepWith } from './cloneDeepWith.js';
-export { default as cloneWith } from './cloneWith.js';
-export { default as commit } from './commit.js';
-export { default as compact } from './compact.js';
-export { default as concat } from './concat.js';
-export { default as cond } from './cond.js';
-export { default as conforms } from './conforms.js';
-export { default as conformsTo } from './conformsTo.js';
-export { default as constant } from './constant.js';
-export { default as countBy } from './countBy.js';
-export { default as create } from './create.js';
-export { default as curry } from './curry.js';
-export { default as curryRight } from './curryRight.js';
-export { default as debounce } from './debounce.js';
-export { default as deburr } from './deburr.js';
-export { default as defaultTo } from './defaultTo.js';
-export { default as defaults } from './defaults.js';
-export { default as defaultsDeep } from './defaultsDeep.js';
-export { default as defer } from './defer.js';
-export { default as delay } from './delay.js';
-export { default as difference } from './difference.js';
-export { default as differenceBy } from './differenceBy.js';
-export { default as differenceWith } from './differenceWith.js';
-export { default as divide } from './divide.js';
-export { default as drop } from './drop.js';
-export { default as dropRight } from './dropRight.js';
-export { default as dropRightWhile } from './dropRightWhile.js';
-export { default as dropWhile } from './dropWhile.js';
-export { default as each } from './each.js';
-export { default as eachRight } from './eachRight.js';
-export { default as endsWith } from './endsWith.js';
-export { default as entries } from './entries.js';
-export { default as entriesIn } from './entriesIn.js';
-export { default as eq } from './eq.js';
-export { default as escape } from './escape.js';
-export { default as escapeRegExp } from './escapeRegExp.js';
-export { default as every } from './every.js';
-export { default as extend } from './extend.js';
-export { default as extendWith } from './extendWith.js';
-export { default as fill } from './fill.js';
-export { default as filter } from './filter.js';
-export { default as find } from './find.js';
-export { default as findIndex } from './findIndex.js';
-export { default as findKey } from './findKey.js';
-export { default as findLast } from './findLast.js';
-export { default as findLastIndex } from './findLastIndex.js';
-export { default as findLastKey } from './findLastKey.js';
-export { default as first } from './first.js';
-export { default as flatMap } from './flatMap.js';
-export { default as flatMapDeep } from './flatMapDeep.js';
-export { default as flatMapDepth } from './flatMapDepth.js';
-export { default as flatten } from './flatten.js';
-export { default as flattenDeep } from './flattenDeep.js';
-export { default as flattenDepth } from './flattenDepth.js';
-export { default as flip } from './flip.js';
-export { default as floor } from './floor.js';
-export { default as flow } from './flow.js';
-export { default as flowRight } from './flowRight.js';
-export { default as forEach } from './forEach.js';
-export { default as forEachRight } from './forEachRight.js';
-export { default as forIn } from './forIn.js';
-export { default as forInRight } from './forInRight.js';
-export { default as forOwn } from './forOwn.js';
-export { default as forOwnRight } from './forOwnRight.js';
-export { default as fromPairs } from './fromPairs.js';
-export { default as functions } from './functions.js';
-export { default as functionsIn } from './functionsIn.js';
-export { default as get } from './get.js';
-export { default as groupBy } from './groupBy.js';
-export { default as gt } from './gt.js';
-export { default as gte } from './gte.js';
-export { default as has } from './has.js';
-export { default as hasIn } from './hasIn.js';
-export { default as head } from './head.js';
-export { default as identity } from './identity.js';
-export { default as inRange } from './inRange.js';
-export { default as includes } from './includes.js';
-export { default as indexOf } from './indexOf.js';
-export { default as initial } from './initial.js';
-export { default as intersection } from './intersection.js';
-export { default as intersectionBy } from './intersectionBy.js';
-export { default as intersectionWith } from './intersectionWith.js';
-export { default as invert } from './invert.js';
-export { default as invertBy } from './invertBy.js';
-export { default as invoke } from './invoke.js';
-export { default as invokeMap } from './invokeMap.js';
-export { default as isArguments } from './isArguments.js';
-export { default as isArray } from './isArray.js';
-export { default as isArrayBuffer } from './isArrayBuffer.js';
-export { default as isArrayLike } from './isArrayLike.js';
-export { default as isArrayLikeObject } from './isArrayLikeObject.js';
-export { default as isBoolean } from './isBoolean.js';
-export { default as isBuffer } from './isBuffer.js';
-export { default as isDate } from './isDate.js';
-export { default as isElement } from './isElement.js';
-export { default as isEmpty } from './isEmpty.js';
-export { default as isEqual } from './isEqual.js';
-export { default as isEqualWith } from './isEqualWith.js';
-export { default as isError } from './isError.js';
-export { default as isFinite } from './isFinite.js';
-export { default as isFunction } from './isFunction.js';
-export { default as isInteger } from './isInteger.js';
-export { default as isLength } from './isLength.js';
-export { default as isMap } from './isMap.js';
-export { default as isMatch } from './isMatch.js';
-export { default as isMatchWith } from './isMatchWith.js';
-export { default as isNaN } from './isNaN.js';
-export { default as isNative } from './isNative.js';
-export { default as isNil } from './isNil.js';
-export { default as isNull } from './isNull.js';
-export { default as isNumber } from './isNumber.js';
-export { default as isObject } from './isObject.js';
-export { default as isObjectLike } from './isObjectLike.js';
-export { default as isPlainObject } from './isPlainObject.js';
-export { default as isRegExp } from './isRegExp.js';
-export { default as isSafeInteger } from './isSafeInteger.js';
-export { default as isSet } from './isSet.js';
-export { default as isString } from './isString.js';
-export { default as isSymbol } from './isSymbol.js';
-export { default as isTypedArray } from './isTypedArray.js';
-export { default as isUndefined } from './isUndefined.js';
-export { default as isWeakMap } from './isWeakMap.js';
-export { default as isWeakSet } from './isWeakSet.js';
-export { default as iteratee } from './iteratee.js';
-export { default as join } from './join.js';
-export { default as kebabCase } from './kebabCase.js';
-export { default as keyBy } from './keyBy.js';
-export { default as keys } from './keys.js';
-export { default as keysIn } from './keysIn.js';
-export { default as last } from './last.js';
-export { default as lastIndexOf } from './lastIndexOf.js';
-export { default as lodash } from './wrapperLodash.js';
-export { default as lowerCase } from './lowerCase.js';
-export { default as lowerFirst } from './lowerFirst.js';
-export { default as lt } from './lt.js';
-export { default as lte } from './lte.js';
-export { default as map } from './map.js';
-export { default as mapKeys } from './mapKeys.js';
-export { default as mapValues } from './mapValues.js';
-export { default as matches } from './matches.js';
-export { default as matchesProperty } from './matchesProperty.js';
-export { default as max } from './max.js';
-export { default as maxBy } from './maxBy.js';
-export { default as mean } from './mean.js';
-export { default as meanBy } from './meanBy.js';
-export { default as memoize } from './memoize.js';
-export { default as merge } from './merge.js';
-export { default as mergeWith } from './mergeWith.js';
-export { default as method } from './method.js';
-export { default as methodOf } from './methodOf.js';
-export { default as min } from './min.js';
-export { default as minBy } from './minBy.js';
-export { default as mixin } from './mixin.js';
-export { default as multiply } from './multiply.js';
-export { default as negate } from './negate.js';
-export { default as next } from './next.js';
-export { default as noop } from './noop.js';
-export { default as now } from './now.js';
-export { default as nth } from './nth.js';
-export { default as nthArg } from './nthArg.js';
-export { default as omit } from './omit.js';
-export { default as omitBy } from './omitBy.js';
-export { default as once } from './once.js';
-export { default as orderBy } from './orderBy.js';
-export { default as over } from './over.js';
-export { default as overArgs } from './overArgs.js';
-export { default as overEvery } from './overEvery.js';
-export { default as overSome } from './overSome.js';
-export { default as pad } from './pad.js';
-export { default as padEnd } from './padEnd.js';
-export { default as padStart } from './padStart.js';
-export { default as parseInt } from './parseInt.js';
-export { default as partial } from './partial.js';
-export { default as partialRight } from './partialRight.js';
-export { default as partition } from './partition.js';
-export { default as pick } from './pick.js';
-export { default as pickBy } from './pickBy.js';
-export { default as plant } from './plant.js';
-export { default as property } from './property.js';
-export { default as propertyOf } from './propertyOf.js';
-export { default as pull } from './pull.js';
-export { default as pullAll } from './pullAll.js';
-export { default as pullAllBy } from './pullAllBy.js';
-export { default as pullAllWith } from './pullAllWith.js';
-export { default as pullAt } from './pullAt.js';
-export { default as random } from './random.js';
-export { default as range } from './range.js';
-export { default as rangeRight } from './rangeRight.js';
-export { default as rearg } from './rearg.js';
-export { default as reduce } from './reduce.js';
-export { default as reduceRight } from './reduceRight.js';
-export { default as reject } from './reject.js';
-export { default as remove } from './remove.js';
-export { default as repeat } from './repeat.js';
-export { default as replace } from './replace.js';
-export { default as rest } from './rest.js';
-export { default as result } from './result.js';
-export { default as reverse } from './reverse.js';
-export { default as round } from './round.js';
-export { default as sample } from './sample.js';
-export { default as sampleSize } from './sampleSize.js';
-export { default as set } from './set.js';
-export { default as setWith } from './setWith.js';
-export { default as shuffle } from './shuffle.js';
-export { default as size } from './size.js';
-export { default as slice } from './slice.js';
-export { default as snakeCase } from './snakeCase.js';
-export { default as some } from './some.js';
-export { default as sortBy } from './sortBy.js';
-export { default as sortedIndex } from './sortedIndex.js';
-export { default as sortedIndexBy } from './sortedIndexBy.js';
-export { default as sortedIndexOf } from './sortedIndexOf.js';
-export { default as sortedLastIndex } from './sortedLastIndex.js';
-export { default as sortedLastIndexBy } from './sortedLastIndexBy.js';
-export { default as sortedLastIndexOf } from './sortedLastIndexOf.js';
-export { default as sortedUniq } from './sortedUniq.js';
-export { default as sortedUniqBy } from './sortedUniqBy.js';
-export { default as split } from './split.js';
-export { default as spread } from './spread.js';
-export { default as startCase } from './startCase.js';
-export { default as startsWith } from './startsWith.js';
-export { default as stubArray } from './stubArray.js';
-export { default as stubFalse } from './stubFalse.js';
-export { default as stubObject } from './stubObject.js';
-export { default as stubString } from './stubString.js';
-export { default as stubTrue } from './stubTrue.js';
-export { default as subtract } from './subtract.js';
-export { default as sum } from './sum.js';
-export { default as sumBy } from './sumBy.js';
-export { default as tail } from './tail.js';
-export { default as take } from './take.js';
-export { default as takeRight } from './takeRight.js';
-export { default as takeRightWhile } from './takeRightWhile.js';
-export { default as takeWhile } from './takeWhile.js';
-export { default as tap } from './tap.js';
-export { default as template } from './template.js';
-export { default as templateSettings } from './templateSettings.js';
-export { default as throttle } from './throttle.js';
-export { default as thru } from './thru.js';
-export { default as times } from './times.js';
-export { default as toArray } from './toArray.js';
-export { default as toFinite } from './toFinite.js';
-export { default as toInteger } from './toInteger.js';
-export { default as toIterator } from './toIterator.js';
-export { default as toJSON } from './toJSON.js';
-export { default as toLength } from './toLength.js';
-export { default as toLower } from './toLower.js';
-export { default as toNumber } from './toNumber.js';
-export { default as toPairs } from './toPairs.js';
-export { default as toPairsIn } from './toPairsIn.js';
-export { default as toPath } from './toPath.js';
-export { default as toPlainObject } from './toPlainObject.js';
-export { default as toSafeInteger } from './toSafeInteger.js';
-export { default as toString } from './toString.js';
-export { default as toUpper } from './toUpper.js';
-export { default as transform } from './transform.js';
-export { default as trim } from './trim.js';
-export { default as trimEnd } from './trimEnd.js';
-export { default as trimStart } from './trimStart.js';
-export { default as truncate } from './truncate.js';
-export { default as unary } from './unary.js';
-export { default as unescape } from './unescape.js';
-export { default as union } from './union.js';
-export { default as unionBy } from './unionBy.js';
-export { default as unionWith } from './unionWith.js';
-export { default as uniq } from './uniq.js';
-export { default as uniqBy } from './uniqBy.js';
-export { default as uniqWith } from './uniqWith.js';
-export { default as uniqueId } from './uniqueId.js';
-export { default as unset } from './unset.js';
-export { default as unzip } from './unzip.js';
-export { default as unzipWith } from './unzipWith.js';
-export { default as update } from './update.js';
-export { default as updateWith } from './updateWith.js';
-export { default as upperCase } from './upperCase.js';
-export { default as upperFirst } from './upperFirst.js';
-export { default as value } from './value.js';
-export { default as valueOf } from './valueOf.js';
-export { default as values } from './values.js';
-export { default as valuesIn } from './valuesIn.js';
-export { default as without } from './without.js';
-export { default as words } from './words.js';
-export { default as wrap } from './wrap.js';
-export { default as wrapperAt } from './wrapperAt.js';
-export { default as wrapperChain } from './wrapperChain.js';
-export { default as wrapperCommit } from './commit.js';
-export { default as wrapperLodash } from './wrapperLodash.js';
-export { default as wrapperNext } from './next.js';
-export { default as wrapperPlant } from './plant.js';
-export { default as wrapperReverse } from './wrapperReverse.js';
-export { default as wrapperToIterator } from './toIterator.js';
-export { default as wrapperValue } from './wrapperValue.js';
-export { default as xor } from './xor.js';
-export { default as xorBy } from './xorBy.js';
-export { default as xorWith } from './xorWith.js';
-export { default as zip } from './zip.js';
-export { default as zipObject } from './zipObject.js';
-export { default as zipObjectDeep } from './zipObjectDeep.js';
-export { default as zipWith } from './zipWith.js';
-export { default } from './lodash.default.js';
diff --git a/node_modules/lodash-es/lowerCase.js b/node_modules/lodash-es/lowerCase.js
deleted file mode 100644
index 570d3b6..0000000
--- a/node_modules/lodash-es/lowerCase.js
+++ /dev/null
@@ -1,27 +0,0 @@
-import createCompounder from './_createCompounder.js';
-
-/**
- * Converts `string`, as space separated words, to lower case.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category String
- * @param {string} [string=''] The string to convert.
- * @returns {string} Returns the lower cased string.
- * @example
- *
- * _.lowerCase('--Foo-Bar--');
- * // => 'foo bar'
- *
- * _.lowerCase('fooBar');
- * // => 'foo bar'
- *
- * _.lowerCase('__FOO_BAR__');
- * // => 'foo bar'
- */
-var lowerCase = createCompounder(function(result, word, index) {
- return result + (index ? ' ' : '') + word.toLowerCase();
-});
-
-export default lowerCase;
diff --git a/node_modules/lodash-es/lowerFirst.js b/node_modules/lodash-es/lowerFirst.js
deleted file mode 100644
index d7cb4b0..0000000
--- a/node_modules/lodash-es/lowerFirst.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import createCaseFirst from './_createCaseFirst.js';
-
-/**
- * Converts the first character of `string` to lower case.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category String
- * @param {string} [string=''] The string to convert.
- * @returns {string} Returns the converted string.
- * @example
- *
- * _.lowerFirst('Fred');
- * // => 'fred'
- *
- * _.lowerFirst('FRED');
- * // => 'fRED'
- */
-var lowerFirst = createCaseFirst('toLowerCase');
-
-export default lowerFirst;
diff --git a/node_modules/lodash-es/lt.js b/node_modules/lodash-es/lt.js
deleted file mode 100644
index 8418113..0000000
--- a/node_modules/lodash-es/lt.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import baseLt from './_baseLt.js';
-import createRelationalOperation from './_createRelationalOperation.js';
-
-/**
- * Checks if `value` is less than `other`.
- *
- * @static
- * @memberOf _
- * @since 3.9.0
- * @category Lang
- * @param {*} value The value to compare.
- * @param {*} other The other value to compare.
- * @returns {boolean} Returns `true` if `value` is less than `other`,
- * else `false`.
- * @see _.gt
- * @example
- *
- * _.lt(1, 3);
- * // => true
- *
- * _.lt(3, 3);
- * // => false
- *
- * _.lt(3, 1);
- * // => false
- */
-var lt = createRelationalOperation(baseLt);
-
-export default lt;
diff --git a/node_modules/lodash-es/lte.js b/node_modules/lodash-es/lte.js
deleted file mode 100644
index 50c90a9..0000000
--- a/node_modules/lodash-es/lte.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import createRelationalOperation from './_createRelationalOperation.js';
-
-/**
- * Checks if `value` is less than or equal to `other`.
- *
- * @static
- * @memberOf _
- * @since 3.9.0
- * @category Lang
- * @param {*} value The value to compare.
- * @param {*} other The other value to compare.
- * @returns {boolean} Returns `true` if `value` is less than or equal to
- * `other`, else `false`.
- * @see _.gte
- * @example
- *
- * _.lte(1, 3);
- * // => true
- *
- * _.lte(3, 3);
- * // => true
- *
- * _.lte(3, 1);
- * // => false
- */
-var lte = createRelationalOperation(function(value, other) {
- return value <= other;
-});
-
-export default lte;
diff --git a/node_modules/lodash-es/map.js b/node_modules/lodash-es/map.js
deleted file mode 100644
index 36139f9..0000000
--- a/node_modules/lodash-es/map.js
+++ /dev/null
@@ -1,53 +0,0 @@
-import arrayMap from './_arrayMap.js';
-import baseIteratee from './_baseIteratee.js';
-import baseMap from './_baseMap.js';
-import isArray from './isArray.js';
-
-/**
- * Creates an array of values by running each element in `collection` thru
- * `iteratee`. The iteratee is invoked with three arguments:
- * (value, index|key, collection).
- *
- * Many lodash methods are guarded to work as iteratees for methods like
- * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.
- *
- * The guarded methods are:
- * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`,
- * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`,
- * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`,
- * `template`, `trim`, `trimEnd`, `trimStart`, and `words`
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @returns {Array} Returns the new mapped array.
- * @example
- *
- * function square(n) {
- * return n * n;
- * }
- *
- * _.map([4, 8], square);
- * // => [16, 64]
- *
- * _.map({ 'a': 4, 'b': 8 }, square);
- * // => [16, 64] (iteration order is not guaranteed)
- *
- * var users = [
- * { 'user': 'barney' },
- * { 'user': 'fred' }
- * ];
- *
- * // The `_.property` iteratee shorthand.
- * _.map(users, 'user');
- * // => ['barney', 'fred']
- */
-function map(collection, iteratee) {
- var func = isArray(collection) ? arrayMap : baseMap;
- return func(collection, baseIteratee(iteratee, 3));
-}
-
-export default map;
diff --git a/node_modules/lodash-es/mapKeys.js b/node_modules/lodash-es/mapKeys.js
deleted file mode 100644
index 24fc689..0000000
--- a/node_modules/lodash-es/mapKeys.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import baseAssignValue from './_baseAssignValue.js';
-import baseForOwn from './_baseForOwn.js';
-import baseIteratee from './_baseIteratee.js';
-
-/**
- * The opposite of `_.mapValues`; this method creates an object with the
- * same values as `object` and keys generated by running each own enumerable
- * string keyed property of `object` thru `iteratee`. The iteratee is invoked
- * with three arguments: (value, key, object).
- *
- * @static
- * @memberOf _
- * @since 3.8.0
- * @category Object
- * @param {Object} object The object to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @returns {Object} Returns the new mapped object.
- * @see _.mapValues
- * @example
- *
- * _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) {
- * return key + value;
- * });
- * // => { 'a1': 1, 'b2': 2 }
- */
-function mapKeys(object, iteratee) {
- var result = {};
- iteratee = baseIteratee(iteratee, 3);
-
- baseForOwn(object, function(value, key, object) {
- baseAssignValue(result, iteratee(value, key, object), value);
- });
- return result;
-}
-
-export default mapKeys;
diff --git a/node_modules/lodash-es/mapValues.js b/node_modules/lodash-es/mapValues.js
deleted file mode 100644
index bcc48e0..0000000
--- a/node_modules/lodash-es/mapValues.js
+++ /dev/null
@@ -1,43 +0,0 @@
-import baseAssignValue from './_baseAssignValue.js';
-import baseForOwn from './_baseForOwn.js';
-import baseIteratee from './_baseIteratee.js';
-
-/**
- * Creates an object with the same keys as `object` and values generated
- * by running each own enumerable string keyed property of `object` thru
- * `iteratee`. The iteratee is invoked with three arguments:
- * (value, key, object).
- *
- * @static
- * @memberOf _
- * @since 2.4.0
- * @category Object
- * @param {Object} object The object to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @returns {Object} Returns the new mapped object.
- * @see _.mapKeys
- * @example
- *
- * var users = {
- * 'fred': { 'user': 'fred', 'age': 40 },
- * 'pebbles': { 'user': 'pebbles', 'age': 1 }
- * };
- *
- * _.mapValues(users, function(o) { return o.age; });
- * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)
- *
- * // The `_.property` iteratee shorthand.
- * _.mapValues(users, 'age');
- * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)
- */
-function mapValues(object, iteratee) {
- var result = {};
- iteratee = baseIteratee(iteratee, 3);
-
- baseForOwn(object, function(value, key, object) {
- baseAssignValue(result, key, iteratee(value, key, object));
- });
- return result;
-}
-
-export default mapValues;
diff --git a/node_modules/lodash-es/matches.js b/node_modules/lodash-es/matches.js
deleted file mode 100644
index 62aed6c..0000000
--- a/node_modules/lodash-es/matches.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import baseClone from './_baseClone.js';
-import baseMatches from './_baseMatches.js';
-
-/** Used to compose bitmasks for cloning. */
-var CLONE_DEEP_FLAG = 1;
-
-/**
- * Creates a function that performs a partial deep comparison between a given
- * object and `source`, returning `true` if the given object has equivalent
- * property values, else `false`.
- *
- * **Note:** The created function is equivalent to `_.isMatch` with `source`
- * partially applied.
- *
- * Partial comparisons will match empty array and empty object `source`
- * values against any array or object value, respectively. See `_.isEqual`
- * for a list of supported value comparisons.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Util
- * @param {Object} source The object of property values to match.
- * @returns {Function} Returns the new spec function.
- * @example
- *
- * var objects = [
- * { 'a': 1, 'b': 2, 'c': 3 },
- * { 'a': 4, 'b': 5, 'c': 6 }
- * ];
- *
- * _.filter(objects, _.matches({ 'a': 4, 'c': 6 }));
- * // => [{ 'a': 4, 'b': 5, 'c': 6 }]
- */
-function matches(source) {
- return baseMatches(baseClone(source, CLONE_DEEP_FLAG));
-}
-
-export default matches;
diff --git a/node_modules/lodash-es/matchesProperty.js b/node_modules/lodash-es/matchesProperty.js
deleted file mode 100644
index a98fea9..0000000
--- a/node_modules/lodash-es/matchesProperty.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import baseClone from './_baseClone.js';
-import baseMatchesProperty from './_baseMatchesProperty.js';
-
-/** Used to compose bitmasks for cloning. */
-var CLONE_DEEP_FLAG = 1;
-
-/**
- * Creates a function that performs a partial deep comparison between the
- * value at `path` of a given object to `srcValue`, returning `true` if the
- * object value is equivalent, else `false`.
- *
- * **Note:** Partial comparisons will match empty array and empty object
- * `srcValue` values against any array or object value, respectively. See
- * `_.isEqual` for a list of supported value comparisons.
- *
- * @static
- * @memberOf _
- * @since 3.2.0
- * @category Util
- * @param {Array|string} path The path of the property to get.
- * @param {*} srcValue The value to match.
- * @returns {Function} Returns the new spec function.
- * @example
- *
- * var objects = [
- * { 'a': 1, 'b': 2, 'c': 3 },
- * { 'a': 4, 'b': 5, 'c': 6 }
- * ];
- *
- * _.find(objects, _.matchesProperty('a', 4));
- * // => { 'a': 4, 'b': 5, 'c': 6 }
- */
-function matchesProperty(path, srcValue) {
- return baseMatchesProperty(path, baseClone(srcValue, CLONE_DEEP_FLAG));
-}
-
-export default matchesProperty;
diff --git a/node_modules/lodash-es/math.default.js b/node_modules/lodash-es/math.default.js
deleted file mode 100644
index 3705ee5..0000000
--- a/node_modules/lodash-es/math.default.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import add from './add.js';
-import ceil from './ceil.js';
-import divide from './divide.js';
-import floor from './floor.js';
-import max from './max.js';
-import maxBy from './maxBy.js';
-import mean from './mean.js';
-import meanBy from './meanBy.js';
-import min from './min.js';
-import minBy from './minBy.js';
-import multiply from './multiply.js';
-import round from './round.js';
-import subtract from './subtract.js';
-import sum from './sum.js';
-import sumBy from './sumBy.js';
-
-export default {
- add, ceil, divide, floor, max,
- maxBy, mean, meanBy, min, minBy,
- multiply, round, subtract, sum, sumBy
-};
diff --git a/node_modules/lodash-es/math.js b/node_modules/lodash-es/math.js
deleted file mode 100644
index 8be0338..0000000
--- a/node_modules/lodash-es/math.js
+++ /dev/null
@@ -1,16 +0,0 @@
-export { default as add } from './add.js';
-export { default as ceil } from './ceil.js';
-export { default as divide } from './divide.js';
-export { default as floor } from './floor.js';
-export { default as max } from './max.js';
-export { default as maxBy } from './maxBy.js';
-export { default as mean } from './mean.js';
-export { default as meanBy } from './meanBy.js';
-export { default as min } from './min.js';
-export { default as minBy } from './minBy.js';
-export { default as multiply } from './multiply.js';
-export { default as round } from './round.js';
-export { default as subtract } from './subtract.js';
-export { default as sum } from './sum.js';
-export { default as sumBy } from './sumBy.js';
-export { default } from './math.default.js';
diff --git a/node_modules/lodash-es/max.js b/node_modules/lodash-es/max.js
deleted file mode 100644
index 3394969..0000000
--- a/node_modules/lodash-es/max.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import baseExtremum from './_baseExtremum.js';
-import baseGt from './_baseGt.js';
-import identity from './identity.js';
-
-/**
- * Computes the maximum value of `array`. If `array` is empty or falsey,
- * `undefined` is returned.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Math
- * @param {Array} array The array to iterate over.
- * @returns {*} Returns the maximum value.
- * @example
- *
- * _.max([4, 2, 8, 6]);
- * // => 8
- *
- * _.max([]);
- * // => undefined
- */
-function max(array) {
- return (array && array.length)
- ? baseExtremum(array, identity, baseGt)
- : undefined;
-}
-
-export default max;
diff --git a/node_modules/lodash-es/maxBy.js b/node_modules/lodash-es/maxBy.js
deleted file mode 100644
index 6cbd1ce..0000000
--- a/node_modules/lodash-es/maxBy.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import baseExtremum from './_baseExtremum.js';
-import baseGt from './_baseGt.js';
-import baseIteratee from './_baseIteratee.js';
-
-/**
- * This method is like `_.max` except that it accepts `iteratee` which is
- * invoked for each element in `array` to generate the criterion by which
- * the value is ranked. The iteratee is invoked with one argument: (value).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Math
- * @param {Array} array The array to iterate over.
- * @param {Function} [iteratee=_.identity] The iteratee invoked per element.
- * @returns {*} Returns the maximum value.
- * @example
- *
- * var objects = [{ 'n': 1 }, { 'n': 2 }];
- *
- * _.maxBy(objects, function(o) { return o.n; });
- * // => { 'n': 2 }
- *
- * // The `_.property` iteratee shorthand.
- * _.maxBy(objects, 'n');
- * // => { 'n': 2 }
- */
-function maxBy(array, iteratee) {
- return (array && array.length)
- ? baseExtremum(array, baseIteratee(iteratee, 2), baseGt)
- : undefined;
-}
-
-export default maxBy;
diff --git a/node_modules/lodash-es/mean.js b/node_modules/lodash-es/mean.js
deleted file mode 100644
index 2323aef..0000000
--- a/node_modules/lodash-es/mean.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import baseMean from './_baseMean.js';
-import identity from './identity.js';
-
-/**
- * Computes the mean of the values in `array`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Math
- * @param {Array} array The array to iterate over.
- * @returns {number} Returns the mean.
- * @example
- *
- * _.mean([4, 2, 8, 6]);
- * // => 5
- */
-function mean(array) {
- return baseMean(array, identity);
-}
-
-export default mean;
diff --git a/node_modules/lodash-es/meanBy.js b/node_modules/lodash-es/meanBy.js
deleted file mode 100644
index 4a29ebd..0000000
--- a/node_modules/lodash-es/meanBy.js
+++ /dev/null
@@ -1,31 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import baseMean from './_baseMean.js';
-
-/**
- * This method is like `_.mean` except that it accepts `iteratee` which is
- * invoked for each element in `array` to generate the value to be averaged.
- * The iteratee is invoked with one argument: (value).
- *
- * @static
- * @memberOf _
- * @since 4.7.0
- * @category Math
- * @param {Array} array The array to iterate over.
- * @param {Function} [iteratee=_.identity] The iteratee invoked per element.
- * @returns {number} Returns the mean.
- * @example
- *
- * var objects = [{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }];
- *
- * _.meanBy(objects, function(o) { return o.n; });
- * // => 5
- *
- * // The `_.property` iteratee shorthand.
- * _.meanBy(objects, 'n');
- * // => 5
- */
-function meanBy(array, iteratee) {
- return baseMean(array, baseIteratee(iteratee, 2));
-}
-
-export default meanBy;
diff --git a/node_modules/lodash-es/memoize.js b/node_modules/lodash-es/memoize.js
deleted file mode 100644
index 41a1615..0000000
--- a/node_modules/lodash-es/memoize.js
+++ /dev/null
@@ -1,73 +0,0 @@
-import MapCache from './_MapCache.js';
-
-/** Error message constants. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/**
- * Creates a function that memoizes the result of `func`. If `resolver` is
- * provided, it determines the cache key for storing the result based on the
- * arguments provided to the memoized function. By default, the first argument
- * provided to the memoized function is used as the map cache key. The `func`
- * is invoked with the `this` binding of the memoized function.
- *
- * **Note:** The cache is exposed as the `cache` property on the memoized
- * function. Its creation may be customized by replacing the `_.memoize.Cache`
- * constructor with one whose instances implement the
- * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)
- * method interface of `clear`, `delete`, `get`, `has`, and `set`.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Function
- * @param {Function} func The function to have its output memoized.
- * @param {Function} [resolver] The function to resolve the cache key.
- * @returns {Function} Returns the new memoized function.
- * @example
- *
- * var object = { 'a': 1, 'b': 2 };
- * var other = { 'c': 3, 'd': 4 };
- *
- * var values = _.memoize(_.values);
- * values(object);
- * // => [1, 2]
- *
- * values(other);
- * // => [3, 4]
- *
- * object.a = 2;
- * values(object);
- * // => [1, 2]
- *
- * // Modify the result cache.
- * values.cache.set(object, ['a', 'b']);
- * values(object);
- * // => ['a', 'b']
- *
- * // Replace `_.memoize.Cache`.
- * _.memoize.Cache = WeakMap;
- */
-function memoize(func, resolver) {
- if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {
- throw new TypeError(FUNC_ERROR_TEXT);
- }
- var memoized = function() {
- var args = arguments,
- key = resolver ? resolver.apply(this, args) : args[0],
- cache = memoized.cache;
-
- if (cache.has(key)) {
- return cache.get(key);
- }
- var result = func.apply(this, args);
- memoized.cache = cache.set(key, result) || cache;
- return result;
- };
- memoized.cache = new (memoize.Cache || MapCache);
- return memoized;
-}
-
-// Expose `MapCache`.
-memoize.Cache = MapCache;
-
-export default memoize;
diff --git a/node_modules/lodash-es/merge.js b/node_modules/lodash-es/merge.js
deleted file mode 100644
index 9aab628..0000000
--- a/node_modules/lodash-es/merge.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import baseMerge from './_baseMerge.js';
-import createAssigner from './_createAssigner.js';
-
-/**
- * This method is like `_.assign` except that it recursively merges own and
- * inherited enumerable string keyed properties of source objects into the
- * destination object. Source properties that resolve to `undefined` are
- * skipped if a destination value exists. Array and plain object properties
- * are merged recursively. Other objects and value types are overridden by
- * assignment. Source objects are applied from left to right. Subsequent
- * sources overwrite property assignments of previous sources.
- *
- * **Note:** This method mutates `object`.
- *
- * @static
- * @memberOf _
- * @since 0.5.0
- * @category Object
- * @param {Object} object The destination object.
- * @param {...Object} [sources] The source objects.
- * @returns {Object} Returns `object`.
- * @example
- *
- * var object = {
- * 'a': [{ 'b': 2 }, { 'd': 4 }]
- * };
- *
- * var other = {
- * 'a': [{ 'c': 3 }, { 'e': 5 }]
- * };
- *
- * _.merge(object, other);
- * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }
- */
-var merge = createAssigner(function(object, source, srcIndex) {
- baseMerge(object, source, srcIndex);
-});
-
-export default merge;
diff --git a/node_modules/lodash-es/mergeWith.js b/node_modules/lodash-es/mergeWith.js
deleted file mode 100644
index 6b7e098..0000000
--- a/node_modules/lodash-es/mergeWith.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import baseMerge from './_baseMerge.js';
-import createAssigner from './_createAssigner.js';
-
-/**
- * This method is like `_.merge` except that it accepts `customizer` which
- * is invoked to produce the merged values of the destination and source
- * properties. If `customizer` returns `undefined`, merging is handled by the
- * method instead. The `customizer` is invoked with six arguments:
- * (objValue, srcValue, key, object, source, stack).
- *
- * **Note:** This method mutates `object`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Object
- * @param {Object} object The destination object.
- * @param {...Object} sources The source objects.
- * @param {Function} customizer The function to customize assigned values.
- * @returns {Object} Returns `object`.
- * @example
- *
- * function customizer(objValue, srcValue) {
- * if (_.isArray(objValue)) {
- * return objValue.concat(srcValue);
- * }
- * }
- *
- * var object = { 'a': [1], 'b': [2] };
- * var other = { 'a': [3], 'b': [4] };
- *
- * _.mergeWith(object, other, customizer);
- * // => { 'a': [1, 3], 'b': [2, 4] }
- */
-var mergeWith = createAssigner(function(object, source, srcIndex, customizer) {
- baseMerge(object, source, srcIndex, customizer);
-});
-
-export default mergeWith;
diff --git a/node_modules/lodash-es/method.js b/node_modules/lodash-es/method.js
deleted file mode 100644
index 9daed78..0000000
--- a/node_modules/lodash-es/method.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import baseInvoke from './_baseInvoke.js';
-import baseRest from './_baseRest.js';
-
-/**
- * Creates a function that invokes the method at `path` of a given object.
- * Any additional arguments are provided to the invoked method.
- *
- * @static
- * @memberOf _
- * @since 3.7.0
- * @category Util
- * @param {Array|string} path The path of the method to invoke.
- * @param {...*} [args] The arguments to invoke the method with.
- * @returns {Function} Returns the new invoker function.
- * @example
- *
- * var objects = [
- * { 'a': { 'b': _.constant(2) } },
- * { 'a': { 'b': _.constant(1) } }
- * ];
- *
- * _.map(objects, _.method('a.b'));
- * // => [2, 1]
- *
- * _.map(objects, _.method(['a', 'b']));
- * // => [2, 1]
- */
-var method = baseRest(function(path, args) {
- return function(object) {
- return baseInvoke(object, path, args);
- };
-});
-
-export default method;
diff --git a/node_modules/lodash-es/methodOf.js b/node_modules/lodash-es/methodOf.js
deleted file mode 100644
index 1a4d98d..0000000
--- a/node_modules/lodash-es/methodOf.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import baseInvoke from './_baseInvoke.js';
-import baseRest from './_baseRest.js';
-
-/**
- * The opposite of `_.method`; this method creates a function that invokes
- * the method at a given path of `object`. Any additional arguments are
- * provided to the invoked method.
- *
- * @static
- * @memberOf _
- * @since 3.7.0
- * @category Util
- * @param {Object} object The object to query.
- * @param {...*} [args] The arguments to invoke the method with.
- * @returns {Function} Returns the new invoker function.
- * @example
- *
- * var array = _.times(3, _.constant),
- * object = { 'a': array, 'b': array, 'c': array };
- *
- * _.map(['a[2]', 'c[0]'], _.methodOf(object));
- * // => [2, 0]
- *
- * _.map([['a', '2'], ['c', '0']], _.methodOf(object));
- * // => [2, 0]
- */
-var methodOf = baseRest(function(object, args) {
- return function(path) {
- return baseInvoke(object, path, args);
- };
-});
-
-export default methodOf;
diff --git a/node_modules/lodash-es/min.js b/node_modules/lodash-es/min.js
deleted file mode 100644
index c411e51..0000000
--- a/node_modules/lodash-es/min.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import baseExtremum from './_baseExtremum.js';
-import baseLt from './_baseLt.js';
-import identity from './identity.js';
-
-/**
- * Computes the minimum value of `array`. If `array` is empty or falsey,
- * `undefined` is returned.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Math
- * @param {Array} array The array to iterate over.
- * @returns {*} Returns the minimum value.
- * @example
- *
- * _.min([4, 2, 8, 6]);
- * // => 2
- *
- * _.min([]);
- * // => undefined
- */
-function min(array) {
- return (array && array.length)
- ? baseExtremum(array, identity, baseLt)
- : undefined;
-}
-
-export default min;
diff --git a/node_modules/lodash-es/minBy.js b/node_modules/lodash-es/minBy.js
deleted file mode 100644
index 2d810a8..0000000
--- a/node_modules/lodash-es/minBy.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import baseExtremum from './_baseExtremum.js';
-import baseIteratee from './_baseIteratee.js';
-import baseLt from './_baseLt.js';
-
-/**
- * This method is like `_.min` except that it accepts `iteratee` which is
- * invoked for each element in `array` to generate the criterion by which
- * the value is ranked. The iteratee is invoked with one argument: (value).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Math
- * @param {Array} array The array to iterate over.
- * @param {Function} [iteratee=_.identity] The iteratee invoked per element.
- * @returns {*} Returns the minimum value.
- * @example
- *
- * var objects = [{ 'n': 1 }, { 'n': 2 }];
- *
- * _.minBy(objects, function(o) { return o.n; });
- * // => { 'n': 1 }
- *
- * // The `_.property` iteratee shorthand.
- * _.minBy(objects, 'n');
- * // => { 'n': 1 }
- */
-function minBy(array, iteratee) {
- return (array && array.length)
- ? baseExtremum(array, baseIteratee(iteratee, 2), baseLt)
- : undefined;
-}
-
-export default minBy;
diff --git a/node_modules/lodash-es/mixin.js b/node_modules/lodash-es/mixin.js
deleted file mode 100644
index 7d33a25..0000000
--- a/node_modules/lodash-es/mixin.js
+++ /dev/null
@@ -1,74 +0,0 @@
-import arrayEach from './_arrayEach.js';
-import arrayPush from './_arrayPush.js';
-import baseFunctions from './_baseFunctions.js';
-import copyArray from './_copyArray.js';
-import isFunction from './isFunction.js';
-import isObject from './isObject.js';
-import keys from './keys.js';
-
-/**
- * Adds all own enumerable string keyed function properties of a source
- * object to the destination object. If `object` is a function, then methods
- * are added to its prototype as well.
- *
- * **Note:** Use `_.runInContext` to create a pristine `lodash` function to
- * avoid conflicts caused by modifying the original.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Util
- * @param {Function|Object} [object=lodash] The destination object.
- * @param {Object} source The object of functions to add.
- * @param {Object} [options={}] The options object.
- * @param {boolean} [options.chain=true] Specify whether mixins are chainable.
- * @returns {Function|Object} Returns `object`.
- * @example
- *
- * function vowels(string) {
- * return _.filter(string, function(v) {
- * return /[aeiou]/i.test(v);
- * });
- * }
- *
- * _.mixin({ 'vowels': vowels });
- * _.vowels('fred');
- * // => ['e']
- *
- * _('fred').vowels().value();
- * // => ['e']
- *
- * _.mixin({ 'vowels': vowels }, { 'chain': false });
- * _('fred').vowels();
- * // => ['e']
- */
-function mixin(object, source, options) {
- var props = keys(source),
- methodNames = baseFunctions(source, props);
-
- var chain = !(isObject(options) && 'chain' in options) || !!options.chain,
- isFunc = isFunction(object);
-
- arrayEach(methodNames, function(methodName) {
- var func = source[methodName];
- object[methodName] = func;
- if (isFunc) {
- object.prototype[methodName] = function() {
- var chainAll = this.__chain__;
- if (chain || chainAll) {
- var result = object(this.__wrapped__),
- actions = result.__actions__ = copyArray(this.__actions__);
-
- actions.push({ 'func': func, 'args': arguments, 'thisArg': object });
- result.__chain__ = chainAll;
- return result;
- }
- return func.apply(object, arrayPush([this.value()], arguments));
- };
- }
- });
-
- return object;
-}
-
-export default mixin;
diff --git a/node_modules/lodash-es/multiply.js b/node_modules/lodash-es/multiply.js
deleted file mode 100644
index 19aba72..0000000
--- a/node_modules/lodash-es/multiply.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import createMathOperation from './_createMathOperation.js';
-
-/**
- * Multiply two numbers.
- *
- * @static
- * @memberOf _
- * @since 4.7.0
- * @category Math
- * @param {number} multiplier The first number in a multiplication.
- * @param {number} multiplicand The second number in a multiplication.
- * @returns {number} Returns the product.
- * @example
- *
- * _.multiply(6, 4);
- * // => 24
- */
-var multiply = createMathOperation(function(multiplier, multiplicand) {
- return multiplier * multiplicand;
-}, 1);
-
-export default multiply;
diff --git a/node_modules/lodash-es/negate.js b/node_modules/lodash-es/negate.js
deleted file mode 100644
index 9c23aa8..0000000
--- a/node_modules/lodash-es/negate.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/** Error message constants. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/**
- * Creates a function that negates the result of the predicate `func`. The
- * `func` predicate is invoked with the `this` binding and arguments of the
- * created function.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Function
- * @param {Function} predicate The predicate to negate.
- * @returns {Function} Returns the new negated function.
- * @example
- *
- * function isEven(n) {
- * return n % 2 == 0;
- * }
- *
- * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));
- * // => [1, 3, 5]
- */
-function negate(predicate) {
- if (typeof predicate != 'function') {
- throw new TypeError(FUNC_ERROR_TEXT);
- }
- return function() {
- var args = arguments;
- switch (args.length) {
- case 0: return !predicate.call(this);
- case 1: return !predicate.call(this, args[0]);
- case 2: return !predicate.call(this, args[0], args[1]);
- case 3: return !predicate.call(this, args[0], args[1], args[2]);
- }
- return !predicate.apply(this, args);
- };
-}
-
-export default negate;
diff --git a/node_modules/lodash-es/next.js b/node_modules/lodash-es/next.js
deleted file mode 100644
index bb7117b..0000000
--- a/node_modules/lodash-es/next.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import toArray from './toArray.js';
-
-/**
- * Gets the next value on a wrapped object following the
- * [iterator protocol](https://mdn.io/iteration_protocols#iterator).
- *
- * @name next
- * @memberOf _
- * @since 4.0.0
- * @category Seq
- * @returns {Object} Returns the next iterator value.
- * @example
- *
- * var wrapped = _([1, 2]);
- *
- * wrapped.next();
- * // => { 'done': false, 'value': 1 }
- *
- * wrapped.next();
- * // => { 'done': false, 'value': 2 }
- *
- * wrapped.next();
- * // => { 'done': true, 'value': undefined }
- */
-function wrapperNext() {
- if (this.__values__ === undefined) {
- this.__values__ = toArray(this.value());
- }
- var done = this.__index__ >= this.__values__.length,
- value = done ? undefined : this.__values__[this.__index__++];
-
- return { 'done': done, 'value': value };
-}
-
-export default wrapperNext;
diff --git a/node_modules/lodash-es/noop.js b/node_modules/lodash-es/noop.js
deleted file mode 100644
index 6b4847c..0000000
--- a/node_modules/lodash-es/noop.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/**
- * This method returns `undefined`.
- *
- * @static
- * @memberOf _
- * @since 2.3.0
- * @category Util
- * @example
- *
- * _.times(2, _.noop);
- * // => [undefined, undefined]
- */
-function noop() {
- // No operation performed.
-}
-
-export default noop;
diff --git a/node_modules/lodash-es/now.js b/node_modules/lodash-es/now.js
deleted file mode 100644
index 096807b..0000000
--- a/node_modules/lodash-es/now.js
+++ /dev/null
@@ -1,23 +0,0 @@
-import root from './_root.js';
-
-/**
- * Gets the timestamp of the number of milliseconds that have elapsed since
- * the Unix epoch (1 January 1970 00:00:00 UTC).
- *
- * @static
- * @memberOf _
- * @since 2.4.0
- * @category Date
- * @returns {number} Returns the timestamp.
- * @example
- *
- * _.defer(function(stamp) {
- * console.log(_.now() - stamp);
- * }, _.now());
- * // => Logs the number of milliseconds it took for the deferred invocation.
- */
-var now = function() {
- return root.Date.now();
-};
-
-export default now;
diff --git a/node_modules/lodash-es/nth.js b/node_modules/lodash-es/nth.js
deleted file mode 100644
index 8ebf949..0000000
--- a/node_modules/lodash-es/nth.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import baseNth from './_baseNth.js';
-import toInteger from './toInteger.js';
-
-/**
- * Gets the element at index `n` of `array`. If `n` is negative, the nth
- * element from the end is returned.
- *
- * @static
- * @memberOf _
- * @since 4.11.0
- * @category Array
- * @param {Array} array The array to query.
- * @param {number} [n=0] The index of the element to return.
- * @returns {*} Returns the nth element of `array`.
- * @example
- *
- * var array = ['a', 'b', 'c', 'd'];
- *
- * _.nth(array, 1);
- * // => 'b'
- *
- * _.nth(array, -2);
- * // => 'c';
- */
-function nth(array, n) {
- return (array && array.length) ? baseNth(array, toInteger(n)) : undefined;
-}
-
-export default nth;
diff --git a/node_modules/lodash-es/nthArg.js b/node_modules/lodash-es/nthArg.js
deleted file mode 100644
index be3a4cc..0000000
--- a/node_modules/lodash-es/nthArg.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import baseNth from './_baseNth.js';
-import baseRest from './_baseRest.js';
-import toInteger from './toInteger.js';
-
-/**
- * Creates a function that gets the argument at index `n`. If `n` is negative,
- * the nth argument from the end is returned.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Util
- * @param {number} [n=0] The index of the argument to return.
- * @returns {Function} Returns the new pass-thru function.
- * @example
- *
- * var func = _.nthArg(1);
- * func('a', 'b', 'c', 'd');
- * // => 'b'
- *
- * var func = _.nthArg(-2);
- * func('a', 'b', 'c', 'd');
- * // => 'c'
- */
-function nthArg(n) {
- n = toInteger(n);
- return baseRest(function(args) {
- return baseNth(args, n);
- });
-}
-
-export default nthArg;
diff --git a/node_modules/lodash-es/number.default.js b/node_modules/lodash-es/number.default.js
deleted file mode 100644
index 5eef337..0000000
--- a/node_modules/lodash-es/number.default.js
+++ /dev/null
@@ -1,7 +0,0 @@
-import clamp from './clamp.js';
-import inRange from './inRange.js';
-import random from './random.js';
-
-export default {
- clamp, inRange, random
-};
diff --git a/node_modules/lodash-es/number.js b/node_modules/lodash-es/number.js
deleted file mode 100644
index 2ff09e3..0000000
--- a/node_modules/lodash-es/number.js
+++ /dev/null
@@ -1,4 +0,0 @@
-export { default as clamp } from './clamp.js';
-export { default as inRange } from './inRange.js';
-export { default as random } from './random.js';
-export { default } from './number.default.js';
diff --git a/node_modules/lodash-es/object.default.js b/node_modules/lodash-es/object.default.js
deleted file mode 100644
index 931ac0e..0000000
--- a/node_modules/lodash-es/object.default.js
+++ /dev/null
@@ -1,60 +0,0 @@
-import assign from './assign.js';
-import assignIn from './assignIn.js';
-import assignInWith from './assignInWith.js';
-import assignWith from './assignWith.js';
-import at from './at.js';
-import create from './create.js';
-import defaults from './defaults.js';
-import defaultsDeep from './defaultsDeep.js';
-import entries from './entries.js';
-import entriesIn from './entriesIn.js';
-import extend from './extend.js';
-import extendWith from './extendWith.js';
-import findKey from './findKey.js';
-import findLastKey from './findLastKey.js';
-import forIn from './forIn.js';
-import forInRight from './forInRight.js';
-import forOwn from './forOwn.js';
-import forOwnRight from './forOwnRight.js';
-import functions from './functions.js';
-import functionsIn from './functionsIn.js';
-import get from './get.js';
-import has from './has.js';
-import hasIn from './hasIn.js';
-import invert from './invert.js';
-import invertBy from './invertBy.js';
-import invoke from './invoke.js';
-import keys from './keys.js';
-import keysIn from './keysIn.js';
-import mapKeys from './mapKeys.js';
-import mapValues from './mapValues.js';
-import merge from './merge.js';
-import mergeWith from './mergeWith.js';
-import omit from './omit.js';
-import omitBy from './omitBy.js';
-import pick from './pick.js';
-import pickBy from './pickBy.js';
-import result from './result.js';
-import set from './set.js';
-import setWith from './setWith.js';
-import toPairs from './toPairs.js';
-import toPairsIn from './toPairsIn.js';
-import transform from './transform.js';
-import unset from './unset.js';
-import update from './update.js';
-import updateWith from './updateWith.js';
-import values from './values.js';
-import valuesIn from './valuesIn.js';
-
-export default {
- assign, assignIn, assignInWith, assignWith, at,
- create, defaults, defaultsDeep, entries, entriesIn,
- extend, extendWith, findKey, findLastKey, forIn,
- forInRight, forOwn, forOwnRight, functions, functionsIn,
- get, has, hasIn, invert, invertBy,
- invoke, keys, keysIn, mapKeys, mapValues,
- merge, mergeWith, omit, omitBy, pick,
- pickBy, result, set, setWith, toPairs,
- toPairsIn, transform, unset, update, updateWith,
- values, valuesIn
-};
diff --git a/node_modules/lodash-es/object.js b/node_modules/lodash-es/object.js
deleted file mode 100644
index aa7ce3d..0000000
--- a/node_modules/lodash-es/object.js
+++ /dev/null
@@ -1,48 +0,0 @@
-export { default as assign } from './assign.js';
-export { default as assignIn } from './assignIn.js';
-export { default as assignInWith } from './assignInWith.js';
-export { default as assignWith } from './assignWith.js';
-export { default as at } from './at.js';
-export { default as create } from './create.js';
-export { default as defaults } from './defaults.js';
-export { default as defaultsDeep } from './defaultsDeep.js';
-export { default as entries } from './entries.js';
-export { default as entriesIn } from './entriesIn.js';
-export { default as extend } from './extend.js';
-export { default as extendWith } from './extendWith.js';
-export { default as findKey } from './findKey.js';
-export { default as findLastKey } from './findLastKey.js';
-export { default as forIn } from './forIn.js';
-export { default as forInRight } from './forInRight.js';
-export { default as forOwn } from './forOwn.js';
-export { default as forOwnRight } from './forOwnRight.js';
-export { default as functions } from './functions.js';
-export { default as functionsIn } from './functionsIn.js';
-export { default as get } from './get.js';
-export { default as has } from './has.js';
-export { default as hasIn } from './hasIn.js';
-export { default as invert } from './invert.js';
-export { default as invertBy } from './invertBy.js';
-export { default as invoke } from './invoke.js';
-export { default as keys } from './keys.js';
-export { default as keysIn } from './keysIn.js';
-export { default as mapKeys } from './mapKeys.js';
-export { default as mapValues } from './mapValues.js';
-export { default as merge } from './merge.js';
-export { default as mergeWith } from './mergeWith.js';
-export { default as omit } from './omit.js';
-export { default as omitBy } from './omitBy.js';
-export { default as pick } from './pick.js';
-export { default as pickBy } from './pickBy.js';
-export { default as result } from './result.js';
-export { default as set } from './set.js';
-export { default as setWith } from './setWith.js';
-export { default as toPairs } from './toPairs.js';
-export { default as toPairsIn } from './toPairsIn.js';
-export { default as transform } from './transform.js';
-export { default as unset } from './unset.js';
-export { default as update } from './update.js';
-export { default as updateWith } from './updateWith.js';
-export { default as values } from './values.js';
-export { default as valuesIn } from './valuesIn.js';
-export { default } from './object.default.js';
diff --git a/node_modules/lodash-es/omit.js b/node_modules/lodash-es/omit.js
deleted file mode 100644
index 4657d0c..0000000
--- a/node_modules/lodash-es/omit.js
+++ /dev/null
@@ -1,57 +0,0 @@
-import arrayMap from './_arrayMap.js';
-import baseClone from './_baseClone.js';
-import baseUnset from './_baseUnset.js';
-import castPath from './_castPath.js';
-import copyObject from './_copyObject.js';
-import customOmitClone from './_customOmitClone.js';
-import flatRest from './_flatRest.js';
-import getAllKeysIn from './_getAllKeysIn.js';
-
-/** Used to compose bitmasks for cloning. */
-var CLONE_DEEP_FLAG = 1,
- CLONE_FLAT_FLAG = 2,
- CLONE_SYMBOLS_FLAG = 4;
-
-/**
- * The opposite of `_.pick`; this method creates an object composed of the
- * own and inherited enumerable property paths of `object` that are not omitted.
- *
- * **Note:** This method is considerably slower than `_.pick`.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Object
- * @param {Object} object The source object.
- * @param {...(string|string[])} [paths] The property paths to omit.
- * @returns {Object} Returns the new object.
- * @example
- *
- * var object = { 'a': 1, 'b': '2', 'c': 3 };
- *
- * _.omit(object, ['a', 'c']);
- * // => { 'b': '2' }
- */
-var omit = flatRest(function(object, paths) {
- var result = {};
- if (object == null) {
- return result;
- }
- var isDeep = false;
- paths = arrayMap(paths, function(path) {
- path = castPath(path, object);
- isDeep || (isDeep = path.length > 1);
- return path;
- });
- copyObject(object, getAllKeysIn(object), result);
- if (isDeep) {
- result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone);
- }
- var length = paths.length;
- while (length--) {
- baseUnset(result, paths[length]);
- }
- return result;
-});
-
-export default omit;
diff --git a/node_modules/lodash-es/omitBy.js b/node_modules/lodash-es/omitBy.js
deleted file mode 100644
index cab01bd..0000000
--- a/node_modules/lodash-es/omitBy.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import negate from './negate.js';
-import pickBy from './pickBy.js';
-
-/**
- * The opposite of `_.pickBy`; this method creates an object composed of
- * the own and inherited enumerable string keyed properties of `object` that
- * `predicate` doesn't return truthy for. The predicate is invoked with two
- * arguments: (value, key).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Object
- * @param {Object} object The source object.
- * @param {Function} [predicate=_.identity] The function invoked per property.
- * @returns {Object} Returns the new object.
- * @example
- *
- * var object = { 'a': 1, 'b': '2', 'c': 3 };
- *
- * _.omitBy(object, _.isNumber);
- * // => { 'b': '2' }
- */
-function omitBy(object, predicate) {
- return pickBy(object, negate(baseIteratee(predicate)));
-}
-
-export default omitBy;
diff --git a/node_modules/lodash-es/once.js b/node_modules/lodash-es/once.js
deleted file mode 100644
index 603c73e..0000000
--- a/node_modules/lodash-es/once.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import before from './before.js';
-
-/**
- * Creates a function that is restricted to invoking `func` once. Repeat calls
- * to the function return the value of the first invocation. The `func` is
- * invoked with the `this` binding and arguments of the created function.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Function
- * @param {Function} func The function to restrict.
- * @returns {Function} Returns the new restricted function.
- * @example
- *
- * var initialize = _.once(createApplication);
- * initialize();
- * initialize();
- * // => `createApplication` is invoked once
- */
-function once(func) {
- return before(2, func);
-}
-
-export default once;
diff --git a/node_modules/lodash-es/orderBy.js b/node_modules/lodash-es/orderBy.js
deleted file mode 100644
index 2f9e00e..0000000
--- a/node_modules/lodash-es/orderBy.js
+++ /dev/null
@@ -1,47 +0,0 @@
-import baseOrderBy from './_baseOrderBy.js';
-import isArray from './isArray.js';
-
-/**
- * This method is like `_.sortBy` except that it allows specifying the sort
- * orders of the iteratees to sort by. If `orders` is unspecified, all values
- * are sorted in ascending order. Otherwise, specify an order of "desc" for
- * descending or "asc" for ascending sort order of corresponding values.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]]
- * The iteratees to sort by.
- * @param {string[]} [orders] The sort orders of `iteratees`.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.
- * @returns {Array} Returns the new sorted array.
- * @example
- *
- * var users = [
- * { 'user': 'fred', 'age': 48 },
- * { 'user': 'barney', 'age': 34 },
- * { 'user': 'fred', 'age': 40 },
- * { 'user': 'barney', 'age': 36 }
- * ];
- *
- * // Sort by `user` in ascending order and by `age` in descending order.
- * _.orderBy(users, ['user', 'age'], ['asc', 'desc']);
- * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]]
- */
-function orderBy(collection, iteratees, orders, guard) {
- if (collection == null) {
- return [];
- }
- if (!isArray(iteratees)) {
- iteratees = iteratees == null ? [] : [iteratees];
- }
- orders = guard ? undefined : orders;
- if (!isArray(orders)) {
- orders = orders == null ? [] : [orders];
- }
- return baseOrderBy(collection, iteratees, orders);
-}
-
-export default orderBy;
diff --git a/node_modules/lodash-es/over.js b/node_modules/lodash-es/over.js
deleted file mode 100644
index 51b6339..0000000
--- a/node_modules/lodash-es/over.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import arrayMap from './_arrayMap.js';
-import createOver from './_createOver.js';
-
-/**
- * Creates a function that invokes `iteratees` with the arguments it receives
- * and returns their results.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Util
- * @param {...(Function|Function[])} [iteratees=[_.identity]]
- * The iteratees to invoke.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var func = _.over([Math.max, Math.min]);
- *
- * func(1, 2, 3, 4);
- * // => [4, 1]
- */
-var over = createOver(arrayMap);
-
-export default over;
diff --git a/node_modules/lodash-es/overArgs.js b/node_modules/lodash-es/overArgs.js
deleted file mode 100644
index c9409f4..0000000
--- a/node_modules/lodash-es/overArgs.js
+++ /dev/null
@@ -1,61 +0,0 @@
-import apply from './_apply.js';
-import arrayMap from './_arrayMap.js';
-import baseFlatten from './_baseFlatten.js';
-import baseIteratee from './_baseIteratee.js';
-import baseRest from './_baseRest.js';
-import baseUnary from './_baseUnary.js';
-import castRest from './_castRest.js';
-import isArray from './isArray.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min;
-
-/**
- * Creates a function that invokes `func` with its arguments transformed.
- *
- * @static
- * @since 4.0.0
- * @memberOf _
- * @category Function
- * @param {Function} func The function to wrap.
- * @param {...(Function|Function[])} [transforms=[_.identity]]
- * The argument transforms.
- * @returns {Function} Returns the new function.
- * @example
- *
- * function doubled(n) {
- * return n * 2;
- * }
- *
- * function square(n) {
- * return n * n;
- * }
- *
- * var func = _.overArgs(function(x, y) {
- * return [x, y];
- * }, [square, doubled]);
- *
- * func(9, 3);
- * // => [81, 6]
- *
- * func(10, 5);
- * // => [100, 10]
- */
-var overArgs = castRest(function(func, transforms) {
- transforms = (transforms.length == 1 && isArray(transforms[0]))
- ? arrayMap(transforms[0], baseUnary(baseIteratee))
- : arrayMap(baseFlatten(transforms, 1), baseUnary(baseIteratee));
-
- var funcsLength = transforms.length;
- return baseRest(function(args) {
- var index = -1,
- length = nativeMin(args.length, funcsLength);
-
- while (++index < length) {
- args[index] = transforms[index].call(this, args[index]);
- }
- return apply(func, this, args);
- });
-});
-
-export default overArgs;
diff --git a/node_modules/lodash-es/overEvery.js b/node_modules/lodash-es/overEvery.js
deleted file mode 100644
index 6b262d8..0000000
--- a/node_modules/lodash-es/overEvery.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import arrayEvery from './_arrayEvery.js';
-import createOver from './_createOver.js';
-
-/**
- * Creates a function that checks if **all** of the `predicates` return
- * truthy when invoked with the arguments it receives.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Util
- * @param {...(Function|Function[])} [predicates=[_.identity]]
- * The predicates to check.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var func = _.overEvery([Boolean, isFinite]);
- *
- * func('1');
- * // => true
- *
- * func(null);
- * // => false
- *
- * func(NaN);
- * // => false
- */
-var overEvery = createOver(arrayEvery);
-
-export default overEvery;
diff --git a/node_modules/lodash-es/overSome.js b/node_modules/lodash-es/overSome.js
deleted file mode 100644
index 9893ba6..0000000
--- a/node_modules/lodash-es/overSome.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import arraySome from './_arraySome.js';
-import createOver from './_createOver.js';
-
-/**
- * Creates a function that checks if **any** of the `predicates` return
- * truthy when invoked with the arguments it receives.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Util
- * @param {...(Function|Function[])} [predicates=[_.identity]]
- * The predicates to check.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var func = _.overSome([Boolean, isFinite]);
- *
- * func('1');
- * // => true
- *
- * func(null);
- * // => true
- *
- * func(NaN);
- * // => false
- */
-var overSome = createOver(arraySome);
-
-export default overSome;
diff --git a/node_modules/lodash-es/package.json b/node_modules/lodash-es/package.json
deleted file mode 100644
index dd72ab1..0000000
--- a/node_modules/lodash-es/package.json
+++ /dev/null
@@ -1,69 +0,0 @@
-{
- "_from": "lodash-es@^4.17.5",
- "_id": "lodash-es@4.17.11",
- "_inBundle": false,
- "_integrity": "sha512-DHb1ub+rMjjrxqlB3H56/6MXtm1lSksDp2rA2cNWjG8mlDUYFhUj3Di2Zn5IwSU87xLv8tNIQ7sSwE/YOX/D/Q==",
- "_location": "/lodash-es",
- "_phantomChildren": {},
- "_requested": {
- "type": "range",
- "registry": true,
- "raw": "lodash-es@^4.17.5",
- "name": "lodash-es",
- "escapedName": "lodash-es",
- "rawSpec": "^4.17.5",
- "saveSpec": null,
- "fetchSpec": "^4.17.5"
- },
- "_requiredBy": [
- "/react-redux"
- ],
- "_resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.11.tgz",
- "_shasum": "145ab4a7ac5c5e52a3531fb4f310255a152b4be0",
- "_spec": "lodash-es@^4.17.5",
- "_where": "C:\\Users\\d.onaolapo\\Desktop\\Workspace\\dev\\local-desktop\\node_modules\\react-redux",
- "author": {
- "name": "John-David Dalton",
- "email": "john.david.dalton@gmail.com",
- "url": "http://allyoucanleet.com/"
- },
- "bugs": {
- "url": "https://github.com/lodash/lodash-cli/issues"
- },
- "bundleDependencies": false,
- "contributors": [
- {
- "name": "John-David Dalton",
- "email": "john.david.dalton@gmail.com",
- "url": "http://allyoucanleet.com/"
- },
- {
- "name": "Mathias Bynens",
- "email": "mathias@qiwi.be",
- "url": "https://mathiasbynens.be/"
- }
- ],
- "deprecated": false,
- "description": "Lodash exported as ES modules.",
- "homepage": "https://lodash.com/custom-builds",
- "jsnext:main": "lodash.js",
- "keywords": [
- "es6",
- "modules",
- "stdlib",
- "util"
- ],
- "license": "MIT",
- "main": "lodash.js",
- "module": "lodash.js",
- "name": "lodash-es",
- "repository": {
- "type": "git",
- "url": "git+https://github.com/lodash/lodash.git"
- },
- "scripts": {
- "test": "echo \"See https://travis-ci.org/lodash-archive/lodash-cli for testing details.\""
- },
- "sideEffects": false,
- "version": "4.17.11"
-}
diff --git a/node_modules/lodash-es/pad.js b/node_modules/lodash-es/pad.js
deleted file mode 100644
index b74a097..0000000
--- a/node_modules/lodash-es/pad.js
+++ /dev/null
@@ -1,49 +0,0 @@
-import createPadding from './_createPadding.js';
-import stringSize from './_stringSize.js';
-import toInteger from './toInteger.js';
-import toString from './toString.js';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeCeil = Math.ceil,
- nativeFloor = Math.floor;
-
-/**
- * Pads `string` on the left and right sides if it's shorter than `length`.
- * Padding characters are truncated if they can't be evenly divided by `length`.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category String
- * @param {string} [string=''] The string to pad.
- * @param {number} [length=0] The padding length.
- * @param {string} [chars=' '] The string used as padding.
- * @returns {string} Returns the padded string.
- * @example
- *
- * _.pad('abc', 8);
- * // => ' abc '
- *
- * _.pad('abc', 8, '_-');
- * // => '_-abc_-_'
- *
- * _.pad('abc', 3);
- * // => 'abc'
- */
-function pad(string, length, chars) {
- string = toString(string);
- length = toInteger(length);
-
- var strLength = length ? stringSize(string) : 0;
- if (!length || strLength >= length) {
- return string;
- }
- var mid = (length - strLength) / 2;
- return (
- createPadding(nativeFloor(mid), chars) +
- string +
- createPadding(nativeCeil(mid), chars)
- );
-}
-
-export default pad;
diff --git a/node_modules/lodash-es/padEnd.js b/node_modules/lodash-es/padEnd.js
deleted file mode 100644
index c7df21b..0000000
--- a/node_modules/lodash-es/padEnd.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import createPadding from './_createPadding.js';
-import stringSize from './_stringSize.js';
-import toInteger from './toInteger.js';
-import toString from './toString.js';
-
-/**
- * Pads `string` on the right side if it's shorter than `length`. Padding
- * characters are truncated if they exceed `length`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category String
- * @param {string} [string=''] The string to pad.
- * @param {number} [length=0] The padding length.
- * @param {string} [chars=' '] The string used as padding.
- * @returns {string} Returns the padded string.
- * @example
- *
- * _.padEnd('abc', 6);
- * // => 'abc '
- *
- * _.padEnd('abc', 6, '_-');
- * // => 'abc_-_'
- *
- * _.padEnd('abc', 3);
- * // => 'abc'
- */
-function padEnd(string, length, chars) {
- string = toString(string);
- length = toInteger(length);
-
- var strLength = length ? stringSize(string) : 0;
- return (length && strLength < length)
- ? (string + createPadding(length - strLength, chars))
- : string;
-}
-
-export default padEnd;
diff --git a/node_modules/lodash-es/padStart.js b/node_modules/lodash-es/padStart.js
deleted file mode 100644
index c61644a..0000000
--- a/node_modules/lodash-es/padStart.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import createPadding from './_createPadding.js';
-import stringSize from './_stringSize.js';
-import toInteger from './toInteger.js';
-import toString from './toString.js';
-
-/**
- * Pads `string` on the left side if it's shorter than `length`. Padding
- * characters are truncated if they exceed `length`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category String
- * @param {string} [string=''] The string to pad.
- * @param {number} [length=0] The padding length.
- * @param {string} [chars=' '] The string used as padding.
- * @returns {string} Returns the padded string.
- * @example
- *
- * _.padStart('abc', 6);
- * // => ' abc'
- *
- * _.padStart('abc', 6, '_-');
- * // => '_-_abc'
- *
- * _.padStart('abc', 3);
- * // => 'abc'
- */
-function padStart(string, length, chars) {
- string = toString(string);
- length = toInteger(length);
-
- var strLength = length ? stringSize(string) : 0;
- return (length && strLength < length)
- ? (createPadding(length - strLength, chars) + string)
- : string;
-}
-
-export default padStart;
diff --git a/node_modules/lodash-es/parseInt.js b/node_modules/lodash-es/parseInt.js
deleted file mode 100644
index 3400b6b..0000000
--- a/node_modules/lodash-es/parseInt.js
+++ /dev/null
@@ -1,43 +0,0 @@
-import root from './_root.js';
-import toString from './toString.js';
-
-/** Used to match leading and trailing whitespace. */
-var reTrimStart = /^\s+/;
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeParseInt = root.parseInt;
-
-/**
- * Converts `string` to an integer of the specified radix. If `radix` is
- * `undefined` or `0`, a `radix` of `10` is used unless `value` is a
- * hexadecimal, in which case a `radix` of `16` is used.
- *
- * **Note:** This method aligns with the
- * [ES5 implementation](https://es5.github.io/#x15.1.2.2) of `parseInt`.
- *
- * @static
- * @memberOf _
- * @since 1.1.0
- * @category String
- * @param {string} string The string to convert.
- * @param {number} [radix=10] The radix to interpret `value` by.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {number} Returns the converted integer.
- * @example
- *
- * _.parseInt('08');
- * // => 8
- *
- * _.map(['6', '08', '10'], _.parseInt);
- * // => [6, 8, 10]
- */
-function parseInt(string, radix, guard) {
- if (guard || radix == null) {
- radix = 0;
- } else if (radix) {
- radix = +radix;
- }
- return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0);
-}
-
-export default parseInt;
diff --git a/node_modules/lodash-es/partial.js b/node_modules/lodash-es/partial.js
deleted file mode 100644
index eaf6c43..0000000
--- a/node_modules/lodash-es/partial.js
+++ /dev/null
@@ -1,50 +0,0 @@
-import baseRest from './_baseRest.js';
-import createWrap from './_createWrap.js';
-import getHolder from './_getHolder.js';
-import replaceHolders from './_replaceHolders.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_PARTIAL_FLAG = 32;
-
-/**
- * Creates a function that invokes `func` with `partials` prepended to the
- * arguments it receives. This method is like `_.bind` except it does **not**
- * alter the `this` binding.
- *
- * The `_.partial.placeholder` value, which defaults to `_` in monolithic
- * builds, may be used as a placeholder for partially applied arguments.
- *
- * **Note:** This method doesn't set the "length" property of partially
- * applied functions.
- *
- * @static
- * @memberOf _
- * @since 0.2.0
- * @category Function
- * @param {Function} func The function to partially apply arguments to.
- * @param {...*} [partials] The arguments to be partially applied.
- * @returns {Function} Returns the new partially applied function.
- * @example
- *
- * function greet(greeting, name) {
- * return greeting + ' ' + name;
- * }
- *
- * var sayHelloTo = _.partial(greet, 'hello');
- * sayHelloTo('fred');
- * // => 'hello fred'
- *
- * // Partially applied with placeholders.
- * var greetFred = _.partial(greet, _, 'fred');
- * greetFred('hi');
- * // => 'hi fred'
- */
-var partial = baseRest(function(func, partials) {
- var holders = replaceHolders(partials, getHolder(partial));
- return createWrap(func, WRAP_PARTIAL_FLAG, undefined, partials, holders);
-});
-
-// Assign default placeholders.
-partial.placeholder = {};
-
-export default partial;
diff --git a/node_modules/lodash-es/partialRight.js b/node_modules/lodash-es/partialRight.js
deleted file mode 100644
index 8ffe3eb..0000000
--- a/node_modules/lodash-es/partialRight.js
+++ /dev/null
@@ -1,49 +0,0 @@
-import baseRest from './_baseRest.js';
-import createWrap from './_createWrap.js';
-import getHolder from './_getHolder.js';
-import replaceHolders from './_replaceHolders.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_PARTIAL_RIGHT_FLAG = 64;
-
-/**
- * This method is like `_.partial` except that partially applied arguments
- * are appended to the arguments it receives.
- *
- * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic
- * builds, may be used as a placeholder for partially applied arguments.
- *
- * **Note:** This method doesn't set the "length" property of partially
- * applied functions.
- *
- * @static
- * @memberOf _
- * @since 1.0.0
- * @category Function
- * @param {Function} func The function to partially apply arguments to.
- * @param {...*} [partials] The arguments to be partially applied.
- * @returns {Function} Returns the new partially applied function.
- * @example
- *
- * function greet(greeting, name) {
- * return greeting + ' ' + name;
- * }
- *
- * var greetFred = _.partialRight(greet, 'fred');
- * greetFred('hi');
- * // => 'hi fred'
- *
- * // Partially applied with placeholders.
- * var sayHelloTo = _.partialRight(greet, 'hello', _);
- * sayHelloTo('fred');
- * // => 'hello fred'
- */
-var partialRight = baseRest(function(func, partials) {
- var holders = replaceHolders(partials, getHolder(partialRight));
- return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined, partials, holders);
-});
-
-// Assign default placeholders.
-partialRight.placeholder = {};
-
-export default partialRight;
diff --git a/node_modules/lodash-es/partition.js b/node_modules/lodash-es/partition.js
deleted file mode 100644
index a58b6de..0000000
--- a/node_modules/lodash-es/partition.js
+++ /dev/null
@@ -1,43 +0,0 @@
-import createAggregator from './_createAggregator.js';
-
-/**
- * Creates an array of elements split into two groups, the first of which
- * contains elements `predicate` returns truthy for, the second of which
- * contains elements `predicate` returns falsey for. The predicate is
- * invoked with one argument: (value).
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @returns {Array} Returns the array of grouped elements.
- * @example
- *
- * var users = [
- * { 'user': 'barney', 'age': 36, 'active': false },
- * { 'user': 'fred', 'age': 40, 'active': true },
- * { 'user': 'pebbles', 'age': 1, 'active': false }
- * ];
- *
- * _.partition(users, function(o) { return o.active; });
- * // => objects for [['fred'], ['barney', 'pebbles']]
- *
- * // The `_.matches` iteratee shorthand.
- * _.partition(users, { 'age': 1, 'active': false });
- * // => objects for [['pebbles'], ['barney', 'fred']]
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.partition(users, ['active', false]);
- * // => objects for [['barney', 'pebbles'], ['fred']]
- *
- * // The `_.property` iteratee shorthand.
- * _.partition(users, 'active');
- * // => objects for [['fred'], ['barney', 'pebbles']]
- */
-var partition = createAggregator(function(result, value, key) {
- result[key ? 0 : 1].push(value);
-}, function() { return [[], []]; });
-
-export default partition;
diff --git a/node_modules/lodash-es/pick.js b/node_modules/lodash-es/pick.js
deleted file mode 100644
index fb84992..0000000
--- a/node_modules/lodash-es/pick.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import basePick from './_basePick.js';
-import flatRest from './_flatRest.js';
-
-/**
- * Creates an object composed of the picked `object` properties.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Object
- * @param {Object} object The source object.
- * @param {...(string|string[])} [paths] The property paths to pick.
- * @returns {Object} Returns the new object.
- * @example
- *
- * var object = { 'a': 1, 'b': '2', 'c': 3 };
- *
- * _.pick(object, ['a', 'c']);
- * // => { 'a': 1, 'c': 3 }
- */
-var pick = flatRest(function(object, paths) {
- return object == null ? {} : basePick(object, paths);
-});
-
-export default pick;
diff --git a/node_modules/lodash-es/pickBy.js b/node_modules/lodash-es/pickBy.js
deleted file mode 100644
index 4ff3598..0000000
--- a/node_modules/lodash-es/pickBy.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import arrayMap from './_arrayMap.js';
-import baseIteratee from './_baseIteratee.js';
-import basePickBy from './_basePickBy.js';
-import getAllKeysIn from './_getAllKeysIn.js';
-
-/**
- * Creates an object composed of the `object` properties `predicate` returns
- * truthy for. The predicate is invoked with two arguments: (value, key).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Object
- * @param {Object} object The source object.
- * @param {Function} [predicate=_.identity] The function invoked per property.
- * @returns {Object} Returns the new object.
- * @example
- *
- * var object = { 'a': 1, 'b': '2', 'c': 3 };
- *
- * _.pickBy(object, _.isNumber);
- * // => { 'a': 1, 'c': 3 }
- */
-function pickBy(object, predicate) {
- if (object == null) {
- return {};
- }
- var props = arrayMap(getAllKeysIn(object), function(prop) {
- return [prop];
- });
- predicate = baseIteratee(predicate);
- return basePickBy(object, props, function(value, path) {
- return predicate(value, path[0]);
- });
-}
-
-export default pickBy;
diff --git a/node_modules/lodash-es/plant.js b/node_modules/lodash-es/plant.js
deleted file mode 100644
index c165ea5..0000000
--- a/node_modules/lodash-es/plant.js
+++ /dev/null
@@ -1,48 +0,0 @@
-import baseLodash from './_baseLodash.js';
-import wrapperClone from './_wrapperClone.js';
-
-/**
- * Creates a clone of the chain sequence planting `value` as the wrapped value.
- *
- * @name plant
- * @memberOf _
- * @since 3.2.0
- * @category Seq
- * @param {*} value The value to plant.
- * @returns {Object} Returns the new `lodash` wrapper instance.
- * @example
- *
- * function square(n) {
- * return n * n;
- * }
- *
- * var wrapped = _([1, 2]).map(square);
- * var other = wrapped.plant([3, 4]);
- *
- * other.value();
- * // => [9, 16]
- *
- * wrapped.value();
- * // => [1, 4]
- */
-function wrapperPlant(value) {
- var result,
- parent = this;
-
- while (parent instanceof baseLodash) {
- var clone = wrapperClone(parent);
- clone.__index__ = 0;
- clone.__values__ = undefined;
- if (result) {
- previous.__wrapped__ = clone;
- } else {
- result = clone;
- }
- var previous = clone;
- parent = parent.__wrapped__;
- }
- previous.__wrapped__ = value;
- return result;
-}
-
-export default wrapperPlant;
diff --git a/node_modules/lodash-es/property.js b/node_modules/lodash-es/property.js
deleted file mode 100644
index 45152aa..0000000
--- a/node_modules/lodash-es/property.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import baseProperty from './_baseProperty.js';
-import basePropertyDeep from './_basePropertyDeep.js';
-import isKey from './_isKey.js';
-import toKey from './_toKey.js';
-
-/**
- * Creates a function that returns the value at `path` of a given object.
- *
- * @static
- * @memberOf _
- * @since 2.4.0
- * @category Util
- * @param {Array|string} path The path of the property to get.
- * @returns {Function} Returns the new accessor function.
- * @example
- *
- * var objects = [
- * { 'a': { 'b': 2 } },
- * { 'a': { 'b': 1 } }
- * ];
- *
- * _.map(objects, _.property('a.b'));
- * // => [2, 1]
- *
- * _.map(_.sortBy(objects, _.property(['a', 'b'])), 'a.b');
- * // => [1, 2]
- */
-function property(path) {
- return isKey(path) ? baseProperty(toKey(path)) : basePropertyDeep(path);
-}
-
-export default property;
diff --git a/node_modules/lodash-es/propertyOf.js b/node_modules/lodash-es/propertyOf.js
deleted file mode 100644
index 457c759..0000000
--- a/node_modules/lodash-es/propertyOf.js
+++ /dev/null
@@ -1,30 +0,0 @@
-import baseGet from './_baseGet.js';
-
-/**
- * The opposite of `_.property`; this method creates a function that returns
- * the value at a given path of `object`.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Util
- * @param {Object} object The object to query.
- * @returns {Function} Returns the new accessor function.
- * @example
- *
- * var array = [0, 1, 2],
- * object = { 'a': array, 'b': array, 'c': array };
- *
- * _.map(['a[2]', 'c[0]'], _.propertyOf(object));
- * // => [2, 0]
- *
- * _.map([['a', '2'], ['c', '0']], _.propertyOf(object));
- * // => [2, 0]
- */
-function propertyOf(object) {
- return function(path) {
- return object == null ? undefined : baseGet(object, path);
- };
-}
-
-export default propertyOf;
diff --git a/node_modules/lodash-es/pull.js b/node_modules/lodash-es/pull.js
deleted file mode 100644
index 10872f2..0000000
--- a/node_modules/lodash-es/pull.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import baseRest from './_baseRest.js';
-import pullAll from './pullAll.js';
-
-/**
- * Removes all given values from `array` using
- * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
- * for equality comparisons.
- *
- * **Note:** Unlike `_.without`, this method mutates `array`. Use `_.remove`
- * to remove elements from an array by predicate.
- *
- * @static
- * @memberOf _
- * @since 2.0.0
- * @category Array
- * @param {Array} array The array to modify.
- * @param {...*} [values] The values to remove.
- * @returns {Array} Returns `array`.
- * @example
- *
- * var array = ['a', 'b', 'c', 'a', 'b', 'c'];
- *
- * _.pull(array, 'a', 'c');
- * console.log(array);
- * // => ['b', 'b']
- */
-var pull = baseRest(pullAll);
-
-export default pull;
diff --git a/node_modules/lodash-es/pullAll.js b/node_modules/lodash-es/pullAll.js
deleted file mode 100644
index fe3a2b5..0000000
--- a/node_modules/lodash-es/pullAll.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import basePullAll from './_basePullAll.js';
-
-/**
- * This method is like `_.pull` except that it accepts an array of values to remove.
- *
- * **Note:** Unlike `_.difference`, this method mutates `array`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The array to modify.
- * @param {Array} values The values to remove.
- * @returns {Array} Returns `array`.
- * @example
- *
- * var array = ['a', 'b', 'c', 'a', 'b', 'c'];
- *
- * _.pullAll(array, ['a', 'c']);
- * console.log(array);
- * // => ['b', 'b']
- */
-function pullAll(array, values) {
- return (array && array.length && values && values.length)
- ? basePullAll(array, values)
- : array;
-}
-
-export default pullAll;
diff --git a/node_modules/lodash-es/pullAllBy.js b/node_modules/lodash-es/pullAllBy.js
deleted file mode 100644
index 2f9e415..0000000
--- a/node_modules/lodash-es/pullAllBy.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import basePullAll from './_basePullAll.js';
-
-/**
- * This method is like `_.pullAll` except that it accepts `iteratee` which is
- * invoked for each element of `array` and `values` to generate the criterion
- * by which they're compared. The iteratee is invoked with one argument: (value).
- *
- * **Note:** Unlike `_.differenceBy`, this method mutates `array`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The array to modify.
- * @param {Array} values The values to remove.
- * @param {Function} [iteratee=_.identity] The iteratee invoked per element.
- * @returns {Array} Returns `array`.
- * @example
- *
- * var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }];
- *
- * _.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x');
- * console.log(array);
- * // => [{ 'x': 2 }]
- */
-function pullAllBy(array, values, iteratee) {
- return (array && array.length && values && values.length)
- ? basePullAll(array, values, baseIteratee(iteratee, 2))
- : array;
-}
-
-export default pullAllBy;
diff --git a/node_modules/lodash-es/pullAllWith.js b/node_modules/lodash-es/pullAllWith.js
deleted file mode 100644
index f60530d..0000000
--- a/node_modules/lodash-es/pullAllWith.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import basePullAll from './_basePullAll.js';
-
-/**
- * This method is like `_.pullAll` except that it accepts `comparator` which
- * is invoked to compare elements of `array` to `values`. The comparator is
- * invoked with two arguments: (arrVal, othVal).
- *
- * **Note:** Unlike `_.differenceWith`, this method mutates `array`.
- *
- * @static
- * @memberOf _
- * @since 4.6.0
- * @category Array
- * @param {Array} array The array to modify.
- * @param {Array} values The values to remove.
- * @param {Function} [comparator] The comparator invoked per element.
- * @returns {Array} Returns `array`.
- * @example
- *
- * var array = [{ 'x': 1, 'y': 2 }, { 'x': 3, 'y': 4 }, { 'x': 5, 'y': 6 }];
- *
- * _.pullAllWith(array, [{ 'x': 3, 'y': 4 }], _.isEqual);
- * console.log(array);
- * // => [{ 'x': 1, 'y': 2 }, { 'x': 5, 'y': 6 }]
- */
-function pullAllWith(array, values, comparator) {
- return (array && array.length && values && values.length)
- ? basePullAll(array, values, undefined, comparator)
- : array;
-}
-
-export default pullAllWith;
diff --git a/node_modules/lodash-es/pullAt.js b/node_modules/lodash-es/pullAt.js
deleted file mode 100644
index 23213c7..0000000
--- a/node_modules/lodash-es/pullAt.js
+++ /dev/null
@@ -1,43 +0,0 @@
-import arrayMap from './_arrayMap.js';
-import baseAt from './_baseAt.js';
-import basePullAt from './_basePullAt.js';
-import compareAscending from './_compareAscending.js';
-import flatRest from './_flatRest.js';
-import isIndex from './_isIndex.js';
-
-/**
- * Removes elements from `array` corresponding to `indexes` and returns an
- * array of removed elements.
- *
- * **Note:** Unlike `_.at`, this method mutates `array`.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Array
- * @param {Array} array The array to modify.
- * @param {...(number|number[])} [indexes] The indexes of elements to remove.
- * @returns {Array} Returns the new array of removed elements.
- * @example
- *
- * var array = ['a', 'b', 'c', 'd'];
- * var pulled = _.pullAt(array, [1, 3]);
- *
- * console.log(array);
- * // => ['a', 'c']
- *
- * console.log(pulled);
- * // => ['b', 'd']
- */
-var pullAt = flatRest(function(array, indexes) {
- var length = array == null ? 0 : array.length,
- result = baseAt(array, indexes);
-
- basePullAt(array, arrayMap(indexes, function(index) {
- return isIndex(index, length) ? +index : index;
- }).sort(compareAscending));
-
- return result;
-});
-
-export default pullAt;
diff --git a/node_modules/lodash-es/random.js b/node_modules/lodash-es/random.js
deleted file mode 100644
index b97563d..0000000
--- a/node_modules/lodash-es/random.js
+++ /dev/null
@@ -1,82 +0,0 @@
-import baseRandom from './_baseRandom.js';
-import isIterateeCall from './_isIterateeCall.js';
-import toFinite from './toFinite.js';
-
-/** Built-in method references without a dependency on `root`. */
-var freeParseFloat = parseFloat;
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMin = Math.min,
- nativeRandom = Math.random;
-
-/**
- * Produces a random number between the inclusive `lower` and `upper` bounds.
- * If only one argument is provided a number between `0` and the given number
- * is returned. If `floating` is `true`, or either `lower` or `upper` are
- * floats, a floating-point number is returned instead of an integer.
- *
- * **Note:** JavaScript follows the IEEE-754 standard for resolving
- * floating-point values which can produce unexpected results.
- *
- * @static
- * @memberOf _
- * @since 0.7.0
- * @category Number
- * @param {number} [lower=0] The lower bound.
- * @param {number} [upper=1] The upper bound.
- * @param {boolean} [floating] Specify returning a floating-point number.
- * @returns {number} Returns the random number.
- * @example
- *
- * _.random(0, 5);
- * // => an integer between 0 and 5
- *
- * _.random(5);
- * // => also an integer between 0 and 5
- *
- * _.random(5, true);
- * // => a floating-point number between 0 and 5
- *
- * _.random(1.2, 5.2);
- * // => a floating-point number between 1.2 and 5.2
- */
-function random(lower, upper, floating) {
- if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) {
- upper = floating = undefined;
- }
- if (floating === undefined) {
- if (typeof upper == 'boolean') {
- floating = upper;
- upper = undefined;
- }
- else if (typeof lower == 'boolean') {
- floating = lower;
- lower = undefined;
- }
- }
- if (lower === undefined && upper === undefined) {
- lower = 0;
- upper = 1;
- }
- else {
- lower = toFinite(lower);
- if (upper === undefined) {
- upper = lower;
- lower = 0;
- } else {
- upper = toFinite(upper);
- }
- }
- if (lower > upper) {
- var temp = lower;
- lower = upper;
- upper = temp;
- }
- if (floating || lower % 1 || upper % 1) {
- var rand = nativeRandom();
- return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper);
- }
- return baseRandom(lower, upper);
-}
-
-export default random;
diff --git a/node_modules/lodash-es/range.js b/node_modules/lodash-es/range.js
deleted file mode 100644
index 71f26da..0000000
--- a/node_modules/lodash-es/range.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import createRange from './_createRange.js';
-
-/**
- * Creates an array of numbers (positive and/or negative) progressing from
- * `start` up to, but not including, `end`. A step of `-1` is used if a negative
- * `start` is specified without an `end` or `step`. If `end` is not specified,
- * it's set to `start` with `start` then set to `0`.
- *
- * **Note:** JavaScript follows the IEEE-754 standard for resolving
- * floating-point values which can produce unexpected results.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Util
- * @param {number} [start=0] The start of the range.
- * @param {number} end The end of the range.
- * @param {number} [step=1] The value to increment or decrement by.
- * @returns {Array} Returns the range of numbers.
- * @see _.inRange, _.rangeRight
- * @example
- *
- * _.range(4);
- * // => [0, 1, 2, 3]
- *
- * _.range(-4);
- * // => [0, -1, -2, -3]
- *
- * _.range(1, 5);
- * // => [1, 2, 3, 4]
- *
- * _.range(0, 20, 5);
- * // => [0, 5, 10, 15]
- *
- * _.range(0, -4, -1);
- * // => [0, -1, -2, -3]
- *
- * _.range(1, 4, 0);
- * // => [1, 1, 1]
- *
- * _.range(0);
- * // => []
- */
-var range = createRange();
-
-export default range;
diff --git a/node_modules/lodash-es/rangeRight.js b/node_modules/lodash-es/rangeRight.js
deleted file mode 100644
index 3472513..0000000
--- a/node_modules/lodash-es/rangeRight.js
+++ /dev/null
@@ -1,41 +0,0 @@
-import createRange from './_createRange.js';
-
-/**
- * This method is like `_.range` except that it populates values in
- * descending order.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Util
- * @param {number} [start=0] The start of the range.
- * @param {number} end The end of the range.
- * @param {number} [step=1] The value to increment or decrement by.
- * @returns {Array} Returns the range of numbers.
- * @see _.inRange, _.range
- * @example
- *
- * _.rangeRight(4);
- * // => [3, 2, 1, 0]
- *
- * _.rangeRight(-4);
- * // => [-3, -2, -1, 0]
- *
- * _.rangeRight(1, 5);
- * // => [4, 3, 2, 1]
- *
- * _.rangeRight(0, 20, 5);
- * // => [15, 10, 5, 0]
- *
- * _.rangeRight(0, -4, -1);
- * // => [-3, -2, -1, 0]
- *
- * _.rangeRight(1, 4, 0);
- * // => [1, 1, 1]
- *
- * _.rangeRight(0);
- * // => []
- */
-var rangeRight = createRange(true);
-
-export default rangeRight;
diff --git a/node_modules/lodash-es/rearg.js b/node_modules/lodash-es/rearg.js
deleted file mode 100644
index 6bdda0c..0000000
--- a/node_modules/lodash-es/rearg.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import createWrap from './_createWrap.js';
-import flatRest from './_flatRest.js';
-
-/** Used to compose bitmasks for function metadata. */
-var WRAP_REARG_FLAG = 256;
-
-/**
- * Creates a function that invokes `func` with arguments arranged according
- * to the specified `indexes` where the argument value at the first index is
- * provided as the first argument, the argument value at the second index is
- * provided as the second argument, and so on.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Function
- * @param {Function} func The function to rearrange arguments for.
- * @param {...(number|number[])} indexes The arranged argument indexes.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var rearged = _.rearg(function(a, b, c) {
- * return [a, b, c];
- * }, [2, 0, 1]);
- *
- * rearged('b', 'c', 'a')
- * // => ['a', 'b', 'c']
- */
-var rearg = flatRest(function(func, indexes) {
- return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes);
-});
-
-export default rearg;
diff --git a/node_modules/lodash-es/reduce.js b/node_modules/lodash-es/reduce.js
deleted file mode 100644
index 5dc6c12..0000000
--- a/node_modules/lodash-es/reduce.js
+++ /dev/null
@@ -1,51 +0,0 @@
-import arrayReduce from './_arrayReduce.js';
-import baseEach from './_baseEach.js';
-import baseIteratee from './_baseIteratee.js';
-import baseReduce from './_baseReduce.js';
-import isArray from './isArray.js';
-
-/**
- * Reduces `collection` to a value which is the accumulated result of running
- * each element in `collection` thru `iteratee`, where each successive
- * invocation is supplied the return value of the previous. If `accumulator`
- * is not given, the first element of `collection` is used as the initial
- * value. The iteratee is invoked with four arguments:
- * (accumulator, value, index|key, collection).
- *
- * Many lodash methods are guarded to work as iteratees for methods like
- * `_.reduce`, `_.reduceRight`, and `_.transform`.
- *
- * The guarded methods are:
- * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`,
- * and `sortBy`
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @param {*} [accumulator] The initial value.
- * @returns {*} Returns the accumulated value.
- * @see _.reduceRight
- * @example
- *
- * _.reduce([1, 2], function(sum, n) {
- * return sum + n;
- * }, 0);
- * // => 3
- *
- * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {
- * (result[value] || (result[value] = [])).push(key);
- * return result;
- * }, {});
- * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed)
- */
-function reduce(collection, iteratee, accumulator) {
- var func = isArray(collection) ? arrayReduce : baseReduce,
- initAccum = arguments.length < 3;
-
- return func(collection, baseIteratee(iteratee, 4), accumulator, initAccum, baseEach);
-}
-
-export default reduce;
diff --git a/node_modules/lodash-es/reduceRight.js b/node_modules/lodash-es/reduceRight.js
deleted file mode 100644
index b0f5d82..0000000
--- a/node_modules/lodash-es/reduceRight.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import arrayReduceRight from './_arrayReduceRight.js';
-import baseEachRight from './_baseEachRight.js';
-import baseIteratee from './_baseIteratee.js';
-import baseReduce from './_baseReduce.js';
-import isArray from './isArray.js';
-
-/**
- * This method is like `_.reduce` except that it iterates over elements of
- * `collection` from right to left.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [iteratee=_.identity] The function invoked per iteration.
- * @param {*} [accumulator] The initial value.
- * @returns {*} Returns the accumulated value.
- * @see _.reduce
- * @example
- *
- * var array = [[0, 1], [2, 3], [4, 5]];
- *
- * _.reduceRight(array, function(flattened, other) {
- * return flattened.concat(other);
- * }, []);
- * // => [4, 5, 2, 3, 0, 1]
- */
-function reduceRight(collection, iteratee, accumulator) {
- var func = isArray(collection) ? arrayReduceRight : baseReduce,
- initAccum = arguments.length < 3;
-
- return func(collection, baseIteratee(iteratee, 4), accumulator, initAccum, baseEachRight);
-}
-
-export default reduceRight;
diff --git a/node_modules/lodash-es/reject.js b/node_modules/lodash-es/reject.js
deleted file mode 100644
index f3a1c55..0000000
--- a/node_modules/lodash-es/reject.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import arrayFilter from './_arrayFilter.js';
-import baseFilter from './_baseFilter.js';
-import baseIteratee from './_baseIteratee.js';
-import isArray from './isArray.js';
-import negate from './negate.js';
-
-/**
- * The opposite of `_.filter`; this method returns the elements of `collection`
- * that `predicate` does **not** return truthy for.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @returns {Array} Returns the new filtered array.
- * @see _.filter
- * @example
- *
- * var users = [
- * { 'user': 'barney', 'age': 36, 'active': false },
- * { 'user': 'fred', 'age': 40, 'active': true }
- * ];
- *
- * _.reject(users, function(o) { return !o.active; });
- * // => objects for ['fred']
- *
- * // The `_.matches` iteratee shorthand.
- * _.reject(users, { 'age': 40, 'active': true });
- * // => objects for ['barney']
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.reject(users, ['active', false]);
- * // => objects for ['fred']
- *
- * // The `_.property` iteratee shorthand.
- * _.reject(users, 'active');
- * // => objects for ['barney']
- */
-function reject(collection, predicate) {
- var func = isArray(collection) ? arrayFilter : baseFilter;
- return func(collection, negate(baseIteratee(predicate, 3)));
-}
-
-export default reject;
diff --git a/node_modules/lodash-es/remove.js b/node_modules/lodash-es/remove.js
deleted file mode 100644
index c1e775f..0000000
--- a/node_modules/lodash-es/remove.js
+++ /dev/null
@@ -1,53 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import basePullAt from './_basePullAt.js';
-
-/**
- * Removes all elements from `array` that `predicate` returns truthy for
- * and returns an array of the removed elements. The predicate is invoked
- * with three arguments: (value, index, array).
- *
- * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull`
- * to pull elements from an array by value.
- *
- * @static
- * @memberOf _
- * @since 2.0.0
- * @category Array
- * @param {Array} array The array to modify.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @returns {Array} Returns the new array of removed elements.
- * @example
- *
- * var array = [1, 2, 3, 4];
- * var evens = _.remove(array, function(n) {
- * return n % 2 == 0;
- * });
- *
- * console.log(array);
- * // => [1, 3]
- *
- * console.log(evens);
- * // => [2, 4]
- */
-function remove(array, predicate) {
- var result = [];
- if (!(array && array.length)) {
- return result;
- }
- var index = -1,
- indexes = [],
- length = array.length;
-
- predicate = baseIteratee(predicate, 3);
- while (++index < length) {
- var value = array[index];
- if (predicate(value, index, array)) {
- result.push(value);
- indexes.push(index);
- }
- }
- basePullAt(array, indexes);
- return result;
-}
-
-export default remove;
diff --git a/node_modules/lodash-es/repeat.js b/node_modules/lodash-es/repeat.js
deleted file mode 100644
index 353e98c..0000000
--- a/node_modules/lodash-es/repeat.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import baseRepeat from './_baseRepeat.js';
-import isIterateeCall from './_isIterateeCall.js';
-import toInteger from './toInteger.js';
-import toString from './toString.js';
-
-/**
- * Repeats the given string `n` times.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category String
- * @param {string} [string=''] The string to repeat.
- * @param {number} [n=1] The number of times to repeat the string.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {string} Returns the repeated string.
- * @example
- *
- * _.repeat('*', 3);
- * // => '***'
- *
- * _.repeat('abc', 2);
- * // => 'abcabc'
- *
- * _.repeat('abc', 0);
- * // => ''
- */
-function repeat(string, n, guard) {
- if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) {
- n = 1;
- } else {
- n = toInteger(n);
- }
- return baseRepeat(toString(string), n);
-}
-
-export default repeat;
diff --git a/node_modules/lodash-es/replace.js b/node_modules/lodash-es/replace.js
deleted file mode 100644
index c14a169..0000000
--- a/node_modules/lodash-es/replace.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import toString from './toString.js';
-
-/**
- * Replaces matches for `pattern` in `string` with `replacement`.
- *
- * **Note:** This method is based on
- * [`String#replace`](https://mdn.io/String/replace).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category String
- * @param {string} [string=''] The string to modify.
- * @param {RegExp|string} pattern The pattern to replace.
- * @param {Function|string} replacement The match replacement.
- * @returns {string} Returns the modified string.
- * @example
- *
- * _.replace('Hi Fred', 'Fred', 'Barney');
- * // => 'Hi Barney'
- */
-function replace() {
- var args = arguments,
- string = toString(args[0]);
-
- return args.length < 3 ? string : string.replace(args[1], args[2]);
-}
-
-export default replace;
diff --git a/node_modules/lodash-es/rest.js b/node_modules/lodash-es/rest.js
deleted file mode 100644
index c460425..0000000
--- a/node_modules/lodash-es/rest.js
+++ /dev/null
@@ -1,40 +0,0 @@
-import baseRest from './_baseRest.js';
-import toInteger from './toInteger.js';
-
-/** Error message constants. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/**
- * Creates a function that invokes `func` with the `this` binding of the
- * created function and arguments from `start` and beyond provided as
- * an array.
- *
- * **Note:** This method is based on the
- * [rest parameter](https://mdn.io/rest_parameters).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Function
- * @param {Function} func The function to apply a rest parameter to.
- * @param {number} [start=func.length-1] The start position of the rest parameter.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var say = _.rest(function(what, names) {
- * return what + ' ' + _.initial(names).join(', ') +
- * (_.size(names) > 1 ? ', & ' : '') + _.last(names);
- * });
- *
- * say('hello', 'fred', 'barney', 'pebbles');
- * // => 'hello fred, barney, & pebbles'
- */
-function rest(func, start) {
- if (typeof func != 'function') {
- throw new TypeError(FUNC_ERROR_TEXT);
- }
- start = start === undefined ? start : toInteger(start);
- return baseRest(func, start);
-}
-
-export default rest;
diff --git a/node_modules/lodash-es/result.js b/node_modules/lodash-es/result.js
deleted file mode 100644
index fe519c8..0000000
--- a/node_modules/lodash-es/result.js
+++ /dev/null
@@ -1,56 +0,0 @@
-import castPath from './_castPath.js';
-import isFunction from './isFunction.js';
-import toKey from './_toKey.js';
-
-/**
- * This method is like `_.get` except that if the resolved value is a
- * function it's invoked with the `this` binding of its parent object and
- * its result is returned.
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category Object
- * @param {Object} object The object to query.
- * @param {Array|string} path The path of the property to resolve.
- * @param {*} [defaultValue] The value returned for `undefined` resolved values.
- * @returns {*} Returns the resolved value.
- * @example
- *
- * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] };
- *
- * _.result(object, 'a[0].b.c1');
- * // => 3
- *
- * _.result(object, 'a[0].b.c2');
- * // => 4
- *
- * _.result(object, 'a[0].b.c3', 'default');
- * // => 'default'
- *
- * _.result(object, 'a[0].b.c3', _.constant('default'));
- * // => 'default'
- */
-function result(object, path, defaultValue) {
- path = castPath(path, object);
-
- var index = -1,
- length = path.length;
-
- // Ensure the loop is entered when path is empty.
- if (!length) {
- length = 1;
- object = undefined;
- }
- while (++index < length) {
- var value = object == null ? undefined : object[toKey(path[index])];
- if (value === undefined) {
- index = length;
- value = defaultValue;
- }
- object = isFunction(value) ? value.call(object) : value;
- }
- return object;
-}
-
-export default result;
diff --git a/node_modules/lodash-es/reverse.js b/node_modules/lodash-es/reverse.js
deleted file mode 100644
index 33156a2..0000000
--- a/node_modules/lodash-es/reverse.js
+++ /dev/null
@@ -1,34 +0,0 @@
-/** Used for built-in method references. */
-var arrayProto = Array.prototype;
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeReverse = arrayProto.reverse;
-
-/**
- * Reverses `array` so that the first element becomes the last, the second
- * element becomes the second to last, and so on.
- *
- * **Note:** This method mutates `array` and is based on
- * [`Array#reverse`](https://mdn.io/Array/reverse).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The array to modify.
- * @returns {Array} Returns `array`.
- * @example
- *
- * var array = [1, 2, 3];
- *
- * _.reverse(array);
- * // => [3, 2, 1]
- *
- * console.log(array);
- * // => [3, 2, 1]
- */
-function reverse(array) {
- return array == null ? array : nativeReverse.call(array);
-}
-
-export default reverse;
diff --git a/node_modules/lodash-es/round.js b/node_modules/lodash-es/round.js
deleted file mode 100644
index f4616dc..0000000
--- a/node_modules/lodash-es/round.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import createRound from './_createRound.js';
-
-/**
- * Computes `number` rounded to `precision`.
- *
- * @static
- * @memberOf _
- * @since 3.10.0
- * @category Math
- * @param {number} number The number to round.
- * @param {number} [precision=0] The precision to round to.
- * @returns {number} Returns the rounded number.
- * @example
- *
- * _.round(4.006);
- * // => 4
- *
- * _.round(4.006, 2);
- * // => 4.01
- *
- * _.round(4060, -2);
- * // => 4100
- */
-var round = createRound('round');
-
-export default round;
diff --git a/node_modules/lodash-es/sample.js b/node_modules/lodash-es/sample.js
deleted file mode 100644
index bebe569..0000000
--- a/node_modules/lodash-es/sample.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import arraySample from './_arraySample.js';
-import baseSample from './_baseSample.js';
-import isArray from './isArray.js';
-
-/**
- * Gets a random element from `collection`.
- *
- * @static
- * @memberOf _
- * @since 2.0.0
- * @category Collection
- * @param {Array|Object} collection The collection to sample.
- * @returns {*} Returns the random element.
- * @example
- *
- * _.sample([1, 2, 3, 4]);
- * // => 2
- */
-function sample(collection) {
- var func = isArray(collection) ? arraySample : baseSample;
- return func(collection);
-}
-
-export default sample;
diff --git a/node_modules/lodash-es/sampleSize.js b/node_modules/lodash-es/sampleSize.js
deleted file mode 100644
index 152bedb..0000000
--- a/node_modules/lodash-es/sampleSize.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import arraySampleSize from './_arraySampleSize.js';
-import baseSampleSize from './_baseSampleSize.js';
-import isArray from './isArray.js';
-import isIterateeCall from './_isIterateeCall.js';
-import toInteger from './toInteger.js';
-
-/**
- * Gets `n` random elements at unique keys from `collection` up to the
- * size of `collection`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Collection
- * @param {Array|Object} collection The collection to sample.
- * @param {number} [n=1] The number of elements to sample.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {Array} Returns the random elements.
- * @example
- *
- * _.sampleSize([1, 2, 3], 2);
- * // => [3, 1]
- *
- * _.sampleSize([1, 2, 3], 4);
- * // => [2, 3, 1]
- */
-function sampleSize(collection, n, guard) {
- if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) {
- n = 1;
- } else {
- n = toInteger(n);
- }
- var func = isArray(collection) ? arraySampleSize : baseSampleSize;
- return func(collection, n);
-}
-
-export default sampleSize;
diff --git a/node_modules/lodash-es/seq.default.js b/node_modules/lodash-es/seq.default.js
deleted file mode 100644
index c7c3207..0000000
--- a/node_modules/lodash-es/seq.default.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import at from './wrapperAt.js';
-import chain from './chain.js';
-import commit from './commit.js';
-import lodash from './wrapperLodash.js';
-import next from './next.js';
-import plant from './plant.js';
-import reverse from './wrapperReverse.js';
-import tap from './tap.js';
-import thru from './thru.js';
-import toIterator from './toIterator.js';
-import toJSON from './toJSON.js';
-import value from './wrapperValue.js';
-import valueOf from './valueOf.js';
-import wrapperChain from './wrapperChain.js';
-
-export default {
- at, chain, commit, lodash, next,
- plant, reverse, tap, thru, toIterator,
- toJSON, value, valueOf, wrapperChain
-};
diff --git a/node_modules/lodash-es/seq.js b/node_modules/lodash-es/seq.js
deleted file mode 100644
index f679d30..0000000
--- a/node_modules/lodash-es/seq.js
+++ /dev/null
@@ -1,15 +0,0 @@
-export { default as at } from './wrapperAt.js';
-export { default as chain } from './chain.js';
-export { default as commit } from './commit.js';
-export { default as lodash } from './wrapperLodash.js';
-export { default as next } from './next.js';
-export { default as plant } from './plant.js';
-export { default as reverse } from './wrapperReverse.js';
-export { default as tap } from './tap.js';
-export { default as thru } from './thru.js';
-export { default as toIterator } from './toIterator.js';
-export { default as toJSON } from './toJSON.js';
-export { default as value } from './wrapperValue.js';
-export { default as valueOf } from './valueOf.js';
-export { default as wrapperChain } from './wrapperChain.js';
-export { default } from './seq.default.js';
diff --git a/node_modules/lodash-es/set.js b/node_modules/lodash-es/set.js
deleted file mode 100644
index 15ed46e..0000000
--- a/node_modules/lodash-es/set.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import baseSet from './_baseSet.js';
-
-/**
- * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,
- * it's created. Arrays are created for missing index properties while objects
- * are created for all other missing properties. Use `_.setWith` to customize
- * `path` creation.
- *
- * **Note:** This method mutates `object`.
- *
- * @static
- * @memberOf _
- * @since 3.7.0
- * @category Object
- * @param {Object} object The object to modify.
- * @param {Array|string} path The path of the property to set.
- * @param {*} value The value to set.
- * @returns {Object} Returns `object`.
- * @example
- *
- * var object = { 'a': [{ 'b': { 'c': 3 } }] };
- *
- * _.set(object, 'a[0].b.c', 4);
- * console.log(object.a[0].b.c);
- * // => 4
- *
- * _.set(object, ['x', '0', 'y', 'z'], 5);
- * console.log(object.x[0].y.z);
- * // => 5
- */
-function set(object, path, value) {
- return object == null ? object : baseSet(object, path, value);
-}
-
-export default set;
diff --git a/node_modules/lodash-es/setWith.js b/node_modules/lodash-es/setWith.js
deleted file mode 100644
index 963fcd8..0000000
--- a/node_modules/lodash-es/setWith.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import baseSet from './_baseSet.js';
-
-/**
- * This method is like `_.set` except that it accepts `customizer` which is
- * invoked to produce the objects of `path`. If `customizer` returns `undefined`
- * path creation is handled by the method instead. The `customizer` is invoked
- * with three arguments: (nsValue, key, nsObject).
- *
- * **Note:** This method mutates `object`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Object
- * @param {Object} object The object to modify.
- * @param {Array|string} path The path of the property to set.
- * @param {*} value The value to set.
- * @param {Function} [customizer] The function to customize assigned values.
- * @returns {Object} Returns `object`.
- * @example
- *
- * var object = {};
- *
- * _.setWith(object, '[0][1]', 'a', Object);
- * // => { '0': { '1': 'a' } }
- */
-function setWith(object, path, value, customizer) {
- customizer = typeof customizer == 'function' ? customizer : undefined;
- return object == null ? object : baseSet(object, path, value, customizer);
-}
-
-export default setWith;
diff --git a/node_modules/lodash-es/shuffle.js b/node_modules/lodash-es/shuffle.js
deleted file mode 100644
index 6907699..0000000
--- a/node_modules/lodash-es/shuffle.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import arrayShuffle from './_arrayShuffle.js';
-import baseShuffle from './_baseShuffle.js';
-import isArray from './isArray.js';
-
-/**
- * Creates an array of shuffled values, using a version of the
- * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Collection
- * @param {Array|Object} collection The collection to shuffle.
- * @returns {Array} Returns the new shuffled array.
- * @example
- *
- * _.shuffle([1, 2, 3, 4]);
- * // => [4, 1, 3, 2]
- */
-function shuffle(collection) {
- var func = isArray(collection) ? arrayShuffle : baseShuffle;
- return func(collection);
-}
-
-export default shuffle;
diff --git a/node_modules/lodash-es/size.js b/node_modules/lodash-es/size.js
deleted file mode 100644
index b808aaa..0000000
--- a/node_modules/lodash-es/size.js
+++ /dev/null
@@ -1,46 +0,0 @@
-import baseKeys from './_baseKeys.js';
-import getTag from './_getTag.js';
-import isArrayLike from './isArrayLike.js';
-import isString from './isString.js';
-import stringSize from './_stringSize.js';
-
-/** `Object#toString` result references. */
-var mapTag = '[object Map]',
- setTag = '[object Set]';
-
-/**
- * Gets the size of `collection` by returning its length for array-like
- * values or the number of own enumerable string keyed properties for objects.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Collection
- * @param {Array|Object|string} collection The collection to inspect.
- * @returns {number} Returns the collection size.
- * @example
- *
- * _.size([1, 2, 3]);
- * // => 3
- *
- * _.size({ 'a': 1, 'b': 2 });
- * // => 2
- *
- * _.size('pebbles');
- * // => 7
- */
-function size(collection) {
- if (collection == null) {
- return 0;
- }
- if (isArrayLike(collection)) {
- return isString(collection) ? stringSize(collection) : collection.length;
- }
- var tag = getTag(collection);
- if (tag == mapTag || tag == setTag) {
- return collection.size;
- }
- return baseKeys(collection).length;
-}
-
-export default size;
diff --git a/node_modules/lodash-es/slice.js b/node_modules/lodash-es/slice.js
deleted file mode 100644
index 02d03d7..0000000
--- a/node_modules/lodash-es/slice.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import baseSlice from './_baseSlice.js';
-import isIterateeCall from './_isIterateeCall.js';
-import toInteger from './toInteger.js';
-
-/**
- * Creates a slice of `array` from `start` up to, but not including, `end`.
- *
- * **Note:** This method is used instead of
- * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are
- * returned.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Array
- * @param {Array} array The array to slice.
- * @param {number} [start=0] The start position.
- * @param {number} [end=array.length] The end position.
- * @returns {Array} Returns the slice of `array`.
- */
-function slice(array, start, end) {
- var length = array == null ? 0 : array.length;
- if (!length) {
- return [];
- }
- if (end && typeof end != 'number' && isIterateeCall(array, start, end)) {
- start = 0;
- end = length;
- }
- else {
- start = start == null ? 0 : toInteger(start);
- end = end === undefined ? length : toInteger(end);
- }
- return baseSlice(array, start, end);
-}
-
-export default slice;
diff --git a/node_modules/lodash-es/snakeCase.js b/node_modules/lodash-es/snakeCase.js
deleted file mode 100644
index 83f1635..0000000
--- a/node_modules/lodash-es/snakeCase.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import createCompounder from './_createCompounder.js';
-
-/**
- * Converts `string` to
- * [snake case](https://en.wikipedia.org/wiki/Snake_case).
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category String
- * @param {string} [string=''] The string to convert.
- * @returns {string} Returns the snake cased string.
- * @example
- *
- * _.snakeCase('Foo Bar');
- * // => 'foo_bar'
- *
- * _.snakeCase('fooBar');
- * // => 'foo_bar'
- *
- * _.snakeCase('--FOO-BAR--');
- * // => 'foo_bar'
- */
-var snakeCase = createCompounder(function(result, word, index) {
- return result + (index ? '_' : '') + word.toLowerCase();
-});
-
-export default snakeCase;
diff --git a/node_modules/lodash-es/some.js b/node_modules/lodash-es/some.js
deleted file mode 100644
index 27f1996..0000000
--- a/node_modules/lodash-es/some.js
+++ /dev/null
@@ -1,51 +0,0 @@
-import arraySome from './_arraySome.js';
-import baseIteratee from './_baseIteratee.js';
-import baseSome from './_baseSome.js';
-import isArray from './isArray.js';
-import isIterateeCall from './_isIterateeCall.js';
-
-/**
- * Checks if `predicate` returns truthy for **any** element of `collection`.
- * Iteration is stopped once `predicate` returns truthy. The predicate is
- * invoked with three arguments: (value, index|key, collection).
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {boolean} Returns `true` if any element passes the predicate check,
- * else `false`.
- * @example
- *
- * _.some([null, 0, 'yes', false], Boolean);
- * // => true
- *
- * var users = [
- * { 'user': 'barney', 'active': true },
- * { 'user': 'fred', 'active': false }
- * ];
- *
- * // The `_.matches` iteratee shorthand.
- * _.some(users, { 'user': 'barney', 'active': false });
- * // => false
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.some(users, ['active', false]);
- * // => true
- *
- * // The `_.property` iteratee shorthand.
- * _.some(users, 'active');
- * // => true
- */
-function some(collection, predicate, guard) {
- var func = isArray(collection) ? arraySome : baseSome;
- if (guard && isIterateeCall(collection, predicate, guard)) {
- predicate = undefined;
- }
- return func(collection, baseIteratee(predicate, 3));
-}
-
-export default some;
diff --git a/node_modules/lodash-es/sortBy.js b/node_modules/lodash-es/sortBy.js
deleted file mode 100644
index e37cd2c..0000000
--- a/node_modules/lodash-es/sortBy.js
+++ /dev/null
@@ -1,48 +0,0 @@
-import baseFlatten from './_baseFlatten.js';
-import baseOrderBy from './_baseOrderBy.js';
-import baseRest from './_baseRest.js';
-import isIterateeCall from './_isIterateeCall.js';
-
-/**
- * Creates an array of elements, sorted in ascending order by the results of
- * running each element in a collection thru each iteratee. This method
- * performs a stable sort, that is, it preserves the original sort order of
- * equal elements. The iteratees are invoked with one argument: (value).
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Collection
- * @param {Array|Object} collection The collection to iterate over.
- * @param {...(Function|Function[])} [iteratees=[_.identity]]
- * The iteratees to sort by.
- * @returns {Array} Returns the new sorted array.
- * @example
- *
- * var users = [
- * { 'user': 'fred', 'age': 48 },
- * { 'user': 'barney', 'age': 36 },
- * { 'user': 'fred', 'age': 40 },
- * { 'user': 'barney', 'age': 34 }
- * ];
- *
- * _.sortBy(users, [function(o) { return o.user; }]);
- * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]]
- *
- * _.sortBy(users, ['user', 'age']);
- * // => objects for [['barney', 34], ['barney', 36], ['fred', 40], ['fred', 48]]
- */
-var sortBy = baseRest(function(collection, iteratees) {
- if (collection == null) {
- return [];
- }
- var length = iteratees.length;
- if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) {
- iteratees = [];
- } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) {
- iteratees = [iteratees[0]];
- }
- return baseOrderBy(collection, baseFlatten(iteratees, 1), []);
-});
-
-export default sortBy;
diff --git a/node_modules/lodash-es/sortedIndex.js b/node_modules/lodash-es/sortedIndex.js
deleted file mode 100644
index 5104d8d..0000000
--- a/node_modules/lodash-es/sortedIndex.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import baseSortedIndex from './_baseSortedIndex.js';
-
-/**
- * Uses a binary search to determine the lowest index at which `value`
- * should be inserted into `array` in order to maintain its sort order.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Array
- * @param {Array} array The sorted array to inspect.
- * @param {*} value The value to evaluate.
- * @returns {number} Returns the index at which `value` should be inserted
- * into `array`.
- * @example
- *
- * _.sortedIndex([30, 50], 40);
- * // => 1
- */
-function sortedIndex(array, value) {
- return baseSortedIndex(array, value);
-}
-
-export default sortedIndex;
diff --git a/node_modules/lodash-es/sortedIndexBy.js b/node_modules/lodash-es/sortedIndexBy.js
deleted file mode 100644
index b5ee6db..0000000
--- a/node_modules/lodash-es/sortedIndexBy.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import baseSortedIndexBy from './_baseSortedIndexBy.js';
-
-/**
- * This method is like `_.sortedIndex` except that it accepts `iteratee`
- * which is invoked for `value` and each element of `array` to compute their
- * sort ranking. The iteratee is invoked with one argument: (value).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The sorted array to inspect.
- * @param {*} value The value to evaluate.
- * @param {Function} [iteratee=_.identity] The iteratee invoked per element.
- * @returns {number} Returns the index at which `value` should be inserted
- * into `array`.
- * @example
- *
- * var objects = [{ 'x': 4 }, { 'x': 5 }];
- *
- * _.sortedIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });
- * // => 0
- *
- * // The `_.property` iteratee shorthand.
- * _.sortedIndexBy(objects, { 'x': 4 }, 'x');
- * // => 0
- */
-function sortedIndexBy(array, value, iteratee) {
- return baseSortedIndexBy(array, value, baseIteratee(iteratee, 2));
-}
-
-export default sortedIndexBy;
diff --git a/node_modules/lodash-es/sortedIndexOf.js b/node_modules/lodash-es/sortedIndexOf.js
deleted file mode 100644
index f9410d7..0000000
--- a/node_modules/lodash-es/sortedIndexOf.js
+++ /dev/null
@@ -1,31 +0,0 @@
-import baseSortedIndex from './_baseSortedIndex.js';
-import eq from './eq.js';
-
-/**
- * This method is like `_.indexOf` except that it performs a binary
- * search on a sorted `array`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The array to inspect.
- * @param {*} value The value to search for.
- * @returns {number} Returns the index of the matched value, else `-1`.
- * @example
- *
- * _.sortedIndexOf([4, 5, 5, 5, 6], 5);
- * // => 1
- */
-function sortedIndexOf(array, value) {
- var length = array == null ? 0 : array.length;
- if (length) {
- var index = baseSortedIndex(array, value);
- if (index < length && eq(array[index], value)) {
- return index;
- }
- }
- return -1;
-}
-
-export default sortedIndexOf;
diff --git a/node_modules/lodash-es/sortedLastIndex.js b/node_modules/lodash-es/sortedLastIndex.js
deleted file mode 100644
index a9cdeee..0000000
--- a/node_modules/lodash-es/sortedLastIndex.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import baseSortedIndex from './_baseSortedIndex.js';
-
-/**
- * This method is like `_.sortedIndex` except that it returns the highest
- * index at which `value` should be inserted into `array` in order to
- * maintain its sort order.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Array
- * @param {Array} array The sorted array to inspect.
- * @param {*} value The value to evaluate.
- * @returns {number} Returns the index at which `value` should be inserted
- * into `array`.
- * @example
- *
- * _.sortedLastIndex([4, 5, 5, 5, 6], 5);
- * // => 4
- */
-function sortedLastIndex(array, value) {
- return baseSortedIndex(array, value, true);
-}
-
-export default sortedLastIndex;
diff --git a/node_modules/lodash-es/sortedLastIndexBy.js b/node_modules/lodash-es/sortedLastIndexBy.js
deleted file mode 100644
index bb84f81..0000000
--- a/node_modules/lodash-es/sortedLastIndexBy.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import baseSortedIndexBy from './_baseSortedIndexBy.js';
-
-/**
- * This method is like `_.sortedLastIndex` except that it accepts `iteratee`
- * which is invoked for `value` and each element of `array` to compute their
- * sort ranking. The iteratee is invoked with one argument: (value).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The sorted array to inspect.
- * @param {*} value The value to evaluate.
- * @param {Function} [iteratee=_.identity] The iteratee invoked per element.
- * @returns {number} Returns the index at which `value` should be inserted
- * into `array`.
- * @example
- *
- * var objects = [{ 'x': 4 }, { 'x': 5 }];
- *
- * _.sortedLastIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });
- * // => 1
- *
- * // The `_.property` iteratee shorthand.
- * _.sortedLastIndexBy(objects, { 'x': 4 }, 'x');
- * // => 1
- */
-function sortedLastIndexBy(array, value, iteratee) {
- return baseSortedIndexBy(array, value, baseIteratee(iteratee, 2), true);
-}
-
-export default sortedLastIndexBy;
diff --git a/node_modules/lodash-es/sortedLastIndexOf.js b/node_modules/lodash-es/sortedLastIndexOf.js
deleted file mode 100644
index 802ebe4..0000000
--- a/node_modules/lodash-es/sortedLastIndexOf.js
+++ /dev/null
@@ -1,31 +0,0 @@
-import baseSortedIndex from './_baseSortedIndex.js';
-import eq from './eq.js';
-
-/**
- * This method is like `_.lastIndexOf` except that it performs a binary
- * search on a sorted `array`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The array to inspect.
- * @param {*} value The value to search for.
- * @returns {number} Returns the index of the matched value, else `-1`.
- * @example
- *
- * _.sortedLastIndexOf([4, 5, 5, 5, 6], 5);
- * // => 3
- */
-function sortedLastIndexOf(array, value) {
- var length = array == null ? 0 : array.length;
- if (length) {
- var index = baseSortedIndex(array, value, true) - 1;
- if (eq(array[index], value)) {
- return index;
- }
- }
- return -1;
-}
-
-export default sortedLastIndexOf;
diff --git a/node_modules/lodash-es/sortedUniq.js b/node_modules/lodash-es/sortedUniq.js
deleted file mode 100644
index f0d1c56..0000000
--- a/node_modules/lodash-es/sortedUniq.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import baseSortedUniq from './_baseSortedUniq.js';
-
-/**
- * This method is like `_.uniq` except that it's designed and optimized
- * for sorted arrays.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The array to inspect.
- * @returns {Array} Returns the new duplicate free array.
- * @example
- *
- * _.sortedUniq([1, 1, 2]);
- * // => [1, 2]
- */
-function sortedUniq(array) {
- return (array && array.length)
- ? baseSortedUniq(array)
- : [];
-}
-
-export default sortedUniq;
diff --git a/node_modules/lodash-es/sortedUniqBy.js b/node_modules/lodash-es/sortedUniqBy.js
deleted file mode 100644
index 48894fe..0000000
--- a/node_modules/lodash-es/sortedUniqBy.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import baseSortedUniq from './_baseSortedUniq.js';
-
-/**
- * This method is like `_.uniqBy` except that it's designed and optimized
- * for sorted arrays.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The array to inspect.
- * @param {Function} [iteratee] The iteratee invoked per element.
- * @returns {Array} Returns the new duplicate free array.
- * @example
- *
- * _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor);
- * // => [1.1, 2.3]
- */
-function sortedUniqBy(array, iteratee) {
- return (array && array.length)
- ? baseSortedUniq(array, baseIteratee(iteratee, 2))
- : [];
-}
-
-export default sortedUniqBy;
diff --git a/node_modules/lodash-es/split.js b/node_modules/lodash-es/split.js
deleted file mode 100644
index ad36812..0000000
--- a/node_modules/lodash-es/split.js
+++ /dev/null
@@ -1,52 +0,0 @@
-import baseToString from './_baseToString.js';
-import castSlice from './_castSlice.js';
-import hasUnicode from './_hasUnicode.js';
-import isIterateeCall from './_isIterateeCall.js';
-import isRegExp from './isRegExp.js';
-import stringToArray from './_stringToArray.js';
-import toString from './toString.js';
-
-/** Used as references for the maximum length and index of an array. */
-var MAX_ARRAY_LENGTH = 4294967295;
-
-/**
- * Splits `string` by `separator`.
- *
- * **Note:** This method is based on
- * [`String#split`](https://mdn.io/String/split).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category String
- * @param {string} [string=''] The string to split.
- * @param {RegExp|string} separator The separator pattern to split by.
- * @param {number} [limit] The length to truncate results to.
- * @returns {Array} Returns the string segments.
- * @example
- *
- * _.split('a-b-c', '-', 2);
- * // => ['a', 'b']
- */
-function split(string, separator, limit) {
- if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) {
- separator = limit = undefined;
- }
- limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0;
- if (!limit) {
- return [];
- }
- string = toString(string);
- if (string && (
- typeof separator == 'string' ||
- (separator != null && !isRegExp(separator))
- )) {
- separator = baseToString(separator);
- if (!separator && hasUnicode(string)) {
- return castSlice(stringToArray(string), 0, limit);
- }
- }
- return string.split(separator, limit);
-}
-
-export default split;
diff --git a/node_modules/lodash-es/spread.js b/node_modules/lodash-es/spread.js
deleted file mode 100644
index 3fb8b23..0000000
--- a/node_modules/lodash-es/spread.js
+++ /dev/null
@@ -1,63 +0,0 @@
-import apply from './_apply.js';
-import arrayPush from './_arrayPush.js';
-import baseRest from './_baseRest.js';
-import castSlice from './_castSlice.js';
-import toInteger from './toInteger.js';
-
-/** Error message constants. */
-var FUNC_ERROR_TEXT = 'Expected a function';
-
-/* Built-in method references for those with the same name as other `lodash` methods. */
-var nativeMax = Math.max;
-
-/**
- * Creates a function that invokes `func` with the `this` binding of the
- * create function and an array of arguments much like
- * [`Function#apply`](http://www.ecma-international.org/ecma-262/7.0/#sec-function.prototype.apply).
- *
- * **Note:** This method is based on the
- * [spread operator](https://mdn.io/spread_operator).
- *
- * @static
- * @memberOf _
- * @since 3.2.0
- * @category Function
- * @param {Function} func The function to spread arguments over.
- * @param {number} [start=0] The start position of the spread.
- * @returns {Function} Returns the new function.
- * @example
- *
- * var say = _.spread(function(who, what) {
- * return who + ' says ' + what;
- * });
- *
- * say(['fred', 'hello']);
- * // => 'fred says hello'
- *
- * var numbers = Promise.all([
- * Promise.resolve(40),
- * Promise.resolve(36)
- * ]);
- *
- * numbers.then(_.spread(function(x, y) {
- * return x + y;
- * }));
- * // => a Promise of 76
- */
-function spread(func, start) {
- if (typeof func != 'function') {
- throw new TypeError(FUNC_ERROR_TEXT);
- }
- start = start == null ? 0 : nativeMax(toInteger(start), 0);
- return baseRest(function(args) {
- var array = args[start],
- otherArgs = castSlice(args, 0, start);
-
- if (array) {
- arrayPush(otherArgs, array);
- }
- return apply(func, this, otherArgs);
- });
-}
-
-export default spread;
diff --git a/node_modules/lodash-es/startCase.js b/node_modules/lodash-es/startCase.js
deleted file mode 100644
index 17f9cde..0000000
--- a/node_modules/lodash-es/startCase.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import createCompounder from './_createCompounder.js';
-import upperFirst from './upperFirst.js';
-
-/**
- * Converts `string` to
- * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage).
- *
- * @static
- * @memberOf _
- * @since 3.1.0
- * @category String
- * @param {string} [string=''] The string to convert.
- * @returns {string} Returns the start cased string.
- * @example
- *
- * _.startCase('--foo-bar--');
- * // => 'Foo Bar'
- *
- * _.startCase('fooBar');
- * // => 'Foo Bar'
- *
- * _.startCase('__FOO_BAR__');
- * // => 'FOO BAR'
- */
-var startCase = createCompounder(function(result, word, index) {
- return result + (index ? ' ' : '') + upperFirst(word);
-});
-
-export default startCase;
diff --git a/node_modules/lodash-es/startsWith.js b/node_modules/lodash-es/startsWith.js
deleted file mode 100644
index 19ca033..0000000
--- a/node_modules/lodash-es/startsWith.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import baseClamp from './_baseClamp.js';
-import baseToString from './_baseToString.js';
-import toInteger from './toInteger.js';
-import toString from './toString.js';
-
-/**
- * Checks if `string` starts with the given target string.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category String
- * @param {string} [string=''] The string to inspect.
- * @param {string} [target] The string to search for.
- * @param {number} [position=0] The position to search from.
- * @returns {boolean} Returns `true` if `string` starts with `target`,
- * else `false`.
- * @example
- *
- * _.startsWith('abc', 'a');
- * // => true
- *
- * _.startsWith('abc', 'b');
- * // => false
- *
- * _.startsWith('abc', 'b', 1);
- * // => true
- */
-function startsWith(string, target, position) {
- string = toString(string);
- position = position == null
- ? 0
- : baseClamp(toInteger(position), 0, string.length);
-
- target = baseToString(target);
- return string.slice(position, position + target.length) == target;
-}
-
-export default startsWith;
diff --git a/node_modules/lodash-es/string.default.js b/node_modules/lodash-es/string.default.js
deleted file mode 100644
index 7a23a64..0000000
--- a/node_modules/lodash-es/string.default.js
+++ /dev/null
@@ -1,41 +0,0 @@
-import camelCase from './camelCase.js';
-import capitalize from './capitalize.js';
-import deburr from './deburr.js';
-import endsWith from './endsWith.js';
-import escape from './escape.js';
-import escapeRegExp from './escapeRegExp.js';
-import kebabCase from './kebabCase.js';
-import lowerCase from './lowerCase.js';
-import lowerFirst from './lowerFirst.js';
-import pad from './pad.js';
-import padEnd from './padEnd.js';
-import padStart from './padStart.js';
-import parseInt from './parseInt.js';
-import repeat from './repeat.js';
-import replace from './replace.js';
-import snakeCase from './snakeCase.js';
-import split from './split.js';
-import startCase from './startCase.js';
-import startsWith from './startsWith.js';
-import template from './template.js';
-import templateSettings from './templateSettings.js';
-import toLower from './toLower.js';
-import toUpper from './toUpper.js';
-import trim from './trim.js';
-import trimEnd from './trimEnd.js';
-import trimStart from './trimStart.js';
-import truncate from './truncate.js';
-import unescape from './unescape.js';
-import upperCase from './upperCase.js';
-import upperFirst from './upperFirst.js';
-import words from './words.js';
-
-export default {
- camelCase, capitalize, deburr, endsWith, escape,
- escapeRegExp, kebabCase, lowerCase, lowerFirst, pad,
- padEnd, padStart, parseInt, repeat, replace,
- snakeCase, split, startCase, startsWith, template,
- templateSettings, toLower, toUpper, trim, trimEnd,
- trimStart, truncate, unescape, upperCase, upperFirst,
- words
-};
diff --git a/node_modules/lodash-es/string.js b/node_modules/lodash-es/string.js
deleted file mode 100644
index 2534e7c..0000000
--- a/node_modules/lodash-es/string.js
+++ /dev/null
@@ -1,32 +0,0 @@
-export { default as camelCase } from './camelCase.js';
-export { default as capitalize } from './capitalize.js';
-export { default as deburr } from './deburr.js';
-export { default as endsWith } from './endsWith.js';
-export { default as escape } from './escape.js';
-export { default as escapeRegExp } from './escapeRegExp.js';
-export { default as kebabCase } from './kebabCase.js';
-export { default as lowerCase } from './lowerCase.js';
-export { default as lowerFirst } from './lowerFirst.js';
-export { default as pad } from './pad.js';
-export { default as padEnd } from './padEnd.js';
-export { default as padStart } from './padStart.js';
-export { default as parseInt } from './parseInt.js';
-export { default as repeat } from './repeat.js';
-export { default as replace } from './replace.js';
-export { default as snakeCase } from './snakeCase.js';
-export { default as split } from './split.js';
-export { default as startCase } from './startCase.js';
-export { default as startsWith } from './startsWith.js';
-export { default as template } from './template.js';
-export { default as templateSettings } from './templateSettings.js';
-export { default as toLower } from './toLower.js';
-export { default as toUpper } from './toUpper.js';
-export { default as trim } from './trim.js';
-export { default as trimEnd } from './trimEnd.js';
-export { default as trimStart } from './trimStart.js';
-export { default as truncate } from './truncate.js';
-export { default as unescape } from './unescape.js';
-export { default as upperCase } from './upperCase.js';
-export { default as upperFirst } from './upperFirst.js';
-export { default as words } from './words.js';
-export { default } from './string.default.js';
diff --git a/node_modules/lodash-es/stubArray.js b/node_modules/lodash-es/stubArray.js
deleted file mode 100644
index b2b5503..0000000
--- a/node_modules/lodash-es/stubArray.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * This method returns a new empty array.
- *
- * @static
- * @memberOf _
- * @since 4.13.0
- * @category Util
- * @returns {Array} Returns the new empty array.
- * @example
- *
- * var arrays = _.times(2, _.stubArray);
- *
- * console.log(arrays);
- * // => [[], []]
- *
- * console.log(arrays[0] === arrays[1]);
- * // => false
- */
-function stubArray() {
- return [];
-}
-
-export default stubArray;
diff --git a/node_modules/lodash-es/stubFalse.js b/node_modules/lodash-es/stubFalse.js
deleted file mode 100644
index c569c25..0000000
--- a/node_modules/lodash-es/stubFalse.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * This method returns `false`.
- *
- * @static
- * @memberOf _
- * @since 4.13.0
- * @category Util
- * @returns {boolean} Returns `false`.
- * @example
- *
- * _.times(2, _.stubFalse);
- * // => [false, false]
- */
-function stubFalse() {
- return false;
-}
-
-export default stubFalse;
diff --git a/node_modules/lodash-es/stubObject.js b/node_modules/lodash-es/stubObject.js
deleted file mode 100644
index f634824..0000000
--- a/node_modules/lodash-es/stubObject.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/**
- * This method returns a new empty object.
- *
- * @static
- * @memberOf _
- * @since 4.13.0
- * @category Util
- * @returns {Object} Returns the new empty object.
- * @example
- *
- * var objects = _.times(2, _.stubObject);
- *
- * console.log(objects);
- * // => [{}, {}]
- *
- * console.log(objects[0] === objects[1]);
- * // => false
- */
-function stubObject() {
- return {};
-}
-
-export default stubObject;
diff --git a/node_modules/lodash-es/stubString.js b/node_modules/lodash-es/stubString.js
deleted file mode 100644
index 783b57c..0000000
--- a/node_modules/lodash-es/stubString.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * This method returns an empty string.
- *
- * @static
- * @memberOf _
- * @since 4.13.0
- * @category Util
- * @returns {string} Returns the empty string.
- * @example
- *
- * _.times(2, _.stubString);
- * // => ['', '']
- */
-function stubString() {
- return '';
-}
-
-export default stubString;
diff --git a/node_modules/lodash-es/stubTrue.js b/node_modules/lodash-es/stubTrue.js
deleted file mode 100644
index 405a29d..0000000
--- a/node_modules/lodash-es/stubTrue.js
+++ /dev/null
@@ -1,18 +0,0 @@
-/**
- * This method returns `true`.
- *
- * @static
- * @memberOf _
- * @since 4.13.0
- * @category Util
- * @returns {boolean} Returns `true`.
- * @example
- *
- * _.times(2, _.stubTrue);
- * // => [true, true]
- */
-function stubTrue() {
- return true;
-}
-
-export default stubTrue;
diff --git a/node_modules/lodash-es/subtract.js b/node_modules/lodash-es/subtract.js
deleted file mode 100644
index c2ca691..0000000
--- a/node_modules/lodash-es/subtract.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import createMathOperation from './_createMathOperation.js';
-
-/**
- * Subtract two numbers.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Math
- * @param {number} minuend The first number in a subtraction.
- * @param {number} subtrahend The second number in a subtraction.
- * @returns {number} Returns the difference.
- * @example
- *
- * _.subtract(6, 4);
- * // => 2
- */
-var subtract = createMathOperation(function(minuend, subtrahend) {
- return minuend - subtrahend;
-}, 0);
-
-export default subtract;
diff --git a/node_modules/lodash-es/sum.js b/node_modules/lodash-es/sum.js
deleted file mode 100644
index 708254b..0000000
--- a/node_modules/lodash-es/sum.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import baseSum from './_baseSum.js';
-import identity from './identity.js';
-
-/**
- * Computes the sum of the values in `array`.
- *
- * @static
- * @memberOf _
- * @since 3.4.0
- * @category Math
- * @param {Array} array The array to iterate over.
- * @returns {number} Returns the sum.
- * @example
- *
- * _.sum([4, 2, 8, 6]);
- * // => 20
- */
-function sum(array) {
- return (array && array.length)
- ? baseSum(array, identity)
- : 0;
-}
-
-export default sum;
diff --git a/node_modules/lodash-es/sumBy.js b/node_modules/lodash-es/sumBy.js
deleted file mode 100644
index 6828c16..0000000
--- a/node_modules/lodash-es/sumBy.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import baseSum from './_baseSum.js';
-
-/**
- * This method is like `_.sum` except that it accepts `iteratee` which is
- * invoked for each element in `array` to generate the value to be summed.
- * The iteratee is invoked with one argument: (value).
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Math
- * @param {Array} array The array to iterate over.
- * @param {Function} [iteratee=_.identity] The iteratee invoked per element.
- * @returns {number} Returns the sum.
- * @example
- *
- * var objects = [{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }];
- *
- * _.sumBy(objects, function(o) { return o.n; });
- * // => 20
- *
- * // The `_.property` iteratee shorthand.
- * _.sumBy(objects, 'n');
- * // => 20
- */
-function sumBy(array, iteratee) {
- return (array && array.length)
- ? baseSum(array, baseIteratee(iteratee, 2))
- : 0;
-}
-
-export default sumBy;
diff --git a/node_modules/lodash-es/tail.js b/node_modules/lodash-es/tail.js
deleted file mode 100644
index d8b9796..0000000
--- a/node_modules/lodash-es/tail.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import baseSlice from './_baseSlice.js';
-
-/**
- * Gets all but the first element of `array`.
- *
- * @static
- * @memberOf _
- * @since 4.0.0
- * @category Array
- * @param {Array} array The array to query.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.tail([1, 2, 3]);
- * // => [2, 3]
- */
-function tail(array) {
- var length = array == null ? 0 : array.length;
- return length ? baseSlice(array, 1, length) : [];
-}
-
-export default tail;
diff --git a/node_modules/lodash-es/take.js b/node_modules/lodash-es/take.js
deleted file mode 100644
index f8fef31..0000000
--- a/node_modules/lodash-es/take.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import baseSlice from './_baseSlice.js';
-import toInteger from './toInteger.js';
-
-/**
- * Creates a slice of `array` with `n` elements taken from the beginning.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Array
- * @param {Array} array The array to query.
- * @param {number} [n=1] The number of elements to take.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.take([1, 2, 3]);
- * // => [1]
- *
- * _.take([1, 2, 3], 2);
- * // => [1, 2]
- *
- * _.take([1, 2, 3], 5);
- * // => [1, 2, 3]
- *
- * _.take([1, 2, 3], 0);
- * // => []
- */
-function take(array, n, guard) {
- if (!(array && array.length)) {
- return [];
- }
- n = (guard || n === undefined) ? 1 : toInteger(n);
- return baseSlice(array, 0, n < 0 ? 0 : n);
-}
-
-export default take;
diff --git a/node_modules/lodash-es/takeRight.js b/node_modules/lodash-es/takeRight.js
deleted file mode 100644
index 36399de..0000000
--- a/node_modules/lodash-es/takeRight.js
+++ /dev/null
@@ -1,39 +0,0 @@
-import baseSlice from './_baseSlice.js';
-import toInteger from './toInteger.js';
-
-/**
- * Creates a slice of `array` with `n` elements taken from the end.
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Array
- * @param {Array} array The array to query.
- * @param {number} [n=1] The number of elements to take.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * _.takeRight([1, 2, 3]);
- * // => [3]
- *
- * _.takeRight([1, 2, 3], 2);
- * // => [2, 3]
- *
- * _.takeRight([1, 2, 3], 5);
- * // => [1, 2, 3]
- *
- * _.takeRight([1, 2, 3], 0);
- * // => []
- */
-function takeRight(array, n, guard) {
- var length = array == null ? 0 : array.length;
- if (!length) {
- return [];
- }
- n = (guard || n === undefined) ? 1 : toInteger(n);
- n = length - n;
- return baseSlice(array, n < 0 ? 0 : n, length);
-}
-
-export default takeRight;
diff --git a/node_modules/lodash-es/takeRightWhile.js b/node_modules/lodash-es/takeRightWhile.js
deleted file mode 100644
index 6424543..0000000
--- a/node_modules/lodash-es/takeRightWhile.js
+++ /dev/null
@@ -1,45 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import baseWhile from './_baseWhile.js';
-
-/**
- * Creates a slice of `array` with elements taken from the end. Elements are
- * taken until `predicate` returns falsey. The predicate is invoked with
- * three arguments: (value, index, array).
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Array
- * @param {Array} array The array to query.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * var users = [
- * { 'user': 'barney', 'active': true },
- * { 'user': 'fred', 'active': false },
- * { 'user': 'pebbles', 'active': false }
- * ];
- *
- * _.takeRightWhile(users, function(o) { return !o.active; });
- * // => objects for ['fred', 'pebbles']
- *
- * // The `_.matches` iteratee shorthand.
- * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false });
- * // => objects for ['pebbles']
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.takeRightWhile(users, ['active', false]);
- * // => objects for ['fred', 'pebbles']
- *
- * // The `_.property` iteratee shorthand.
- * _.takeRightWhile(users, 'active');
- * // => []
- */
-function takeRightWhile(array, predicate) {
- return (array && array.length)
- ? baseWhile(array, baseIteratee(predicate, 3), false, true)
- : [];
-}
-
-export default takeRightWhile;
diff --git a/node_modules/lodash-es/takeWhile.js b/node_modules/lodash-es/takeWhile.js
deleted file mode 100644
index f220a6e..0000000
--- a/node_modules/lodash-es/takeWhile.js
+++ /dev/null
@@ -1,45 +0,0 @@
-import baseIteratee from './_baseIteratee.js';
-import baseWhile from './_baseWhile.js';
-
-/**
- * Creates a slice of `array` with elements taken from the beginning. Elements
- * are taken until `predicate` returns falsey. The predicate is invoked with
- * three arguments: (value, index, array).
- *
- * @static
- * @memberOf _
- * @since 3.0.0
- * @category Array
- * @param {Array} array The array to query.
- * @param {Function} [predicate=_.identity] The function invoked per iteration.
- * @returns {Array} Returns the slice of `array`.
- * @example
- *
- * var users = [
- * { 'user': 'barney', 'active': false },
- * { 'user': 'fred', 'active': false },
- * { 'user': 'pebbles', 'active': true }
- * ];
- *
- * _.takeWhile(users, function(o) { return !o.active; });
- * // => objects for ['barney', 'fred']
- *
- * // The `_.matches` iteratee shorthand.
- * _.takeWhile(users, { 'user': 'barney', 'active': false });
- * // => objects for ['barney']
- *
- * // The `_.matchesProperty` iteratee shorthand.
- * _.takeWhile(users, ['active', false]);
- * // => objects for ['barney', 'fred']
- *
- * // The `_.property` iteratee shorthand.
- * _.takeWhile(users, 'active');
- * // => []
- */
-function takeWhile(array, predicate) {
- return (array && array.length)
- ? baseWhile(array, baseIteratee(predicate, 3))
- : [];
-}
-
-export default takeWhile;
diff --git a/node_modules/lodash-es/tap.js b/node_modules/lodash-es/tap.js
deleted file mode 100644
index 464367c..0000000
--- a/node_modules/lodash-es/tap.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/**
- * This method invokes `interceptor` and returns `value`. The interceptor
- * is invoked with one argument; (value). The purpose of this method is to
- * "tap into" a method chain sequence in order to modify intermediate results.
- *
- * @static
- * @memberOf _
- * @since 0.1.0
- * @category Seq
- * @param {*} value The value to provide to `interceptor`.
- * @param {Function} interceptor The function to invoke.
- * @returns {*} Returns `value`.
- * @example
- *
- * _([1, 2, 3])
- * .tap(function(array) {
- * // Mutate input array.
- * array.pop();
- * })
- * .reverse()
- * .value();
- * // => [2, 1]
- */
-function tap(value, interceptor) {
- interceptor(value);
- return value;
-}
-
-export default tap;
diff --git a/node_modules/lodash-es/template.js b/node_modules/lodash-es/template.js
deleted file mode 100644
index 1787347..0000000
--- a/node_modules/lodash-es/template.js
+++ /dev/null
@@ -1,238 +0,0 @@
-import assignInWith from './assignInWith.js';
-import attempt from './attempt.js';
-import baseValues from './_baseValues.js';
-import customDefaultsAssignIn from './_customDefaultsAssignIn.js';
-import escapeStringChar from './_escapeStringChar.js';
-import isError from './isError.js';
-import isIterateeCall from './_isIterateeCall.js';
-import keys from './keys.js';
-import reInterpolate from './_reInterpolate.js';
-import templateSettings from './templateSettings.js';
-import toString from './toString.js';
-
-/** Used to match empty string literals in compiled template source. */
-var reEmptyStringLeading = /\b__p \+= '';/g,
- reEmptyStringMiddle = /\b(__p \+=) '' \+/g,
- reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g;
-
-/**
- * Used to match
- * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components).
- */
-var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g;
-
-/** Used to ensure capturing order of template delimiters. */
-var reNoMatch = /($^)/;
-
-/** Used to match unescaped characters in compiled string literals. */
-var reUnescapedString = /['\n\r\u2028\u2029\\]/g;
-
-/**
- * Creates a compiled template function that can interpolate data properties
- * in "interpolate" delimiters, HTML-escape interpolated data properties in
- * "escape" delimiters, and execute JavaScript in "evaluate" delimiters. Data
- * properties may be accessed as free variables in the template. If a setting
- * object is given, it takes precedence over `_.templateSettings` values.
- *
- * **Note:** In the development build `_.template` utilizes
- * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)
- * for easier debugging.
- *
- * For more information on precompiling templates see
- * [lodash's custom builds documentation](https://lodash.com/custom-builds).
- *
- * For more information on Chrome extension sandboxes see
- * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).
- *
- * @static
- * @since 0.1.0
- * @memberOf _
- * @category String
- * @param {string} [string=''] The template string.
- * @param {Object} [options={}] The options object.
- * @param {RegExp} [options.escape=_.templateSettings.escape]
- * The HTML "escape" delimiter.
- * @param {RegExp} [options.evaluate=_.templateSettings.evaluate]
- * The "evaluate" delimiter.
- * @param {Object} [options.imports=_.templateSettings.imports]
- * An object to import into the template as free variables.
- * @param {RegExp} [options.interpolate=_.templateSettings.interpolate]
- * The "interpolate" delimiter.
- * @param {string} [options.sourceURL='templateSources[n]']
- * The sourceURL of the compiled template.
- * @param {string} [options.variable='obj']
- * The data object variable name.
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
- * @returns {Function} Returns the compiled template function.
- * @example
- *
- * // Use the "interpolate" delimiter to create a compiled template.
- * var compiled = _.template('hello <%= user %>!');
- * compiled({ 'user': 'fred' });
- * // => 'hello fred!'
- *
- * // Use the HTML "escape" delimiter to escape data property values.
- * var compiled = _.template('<%- value %> ');
- * compiled({ 'value': '