Socket
Socket
Sign inDemoInstall

babel

Package Overview
Dependencies
Maintainers
1
Versions
165
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

babel - npm Package Compare versions

Comparing version 4.5.5 to 4.6.0

lib/babel/helpers/acorn-to-esprima.js

6

bin/babel/dir.js

@@ -67,3 +67,7 @@ var outputFileSync = require("output-file-sync");

var relative = path.relative(dirname, filename) || filename;
if (util.canCompile(filename)) write(filename, relative);
try {
if (util.canCompile(filename)) write(filename, relative);
} catch (err) {
console.error(err.stack);
}
});

@@ -70,0 +74,0 @@ });

@@ -122,3 +122,7 @@ var sourceMapToComment = require("source-map-to-comment");

console.log(type, filename);
walk();
try {
walk();
} catch (err) {
console.error(err.stack);
}
}

@@ -125,0 +129,0 @@ });

12

bin/babel/util.js

@@ -29,13 +29,3 @@ var resolveRc = require("../../lib/babel/api/register/resolve-rc");

var result;
try {
result = babel.transform(code, opts);
} catch (e) {
if (e instanceof SyntaxError) {
console.error("SyntaxError:", e.message);
process.exit(1);
} else {
throw e;
}
}
var result = babel.transform(code, opts);
result.filename = filename;

@@ -42,0 +32,0 @@ result.actual = code;

@@ -1,2 +0,2 @@

(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){(function(global){"use strict";if(global._babelPolyfill){throw new Error("only one instance of babel/polyfill is allowed")}global._babelPolyfill=true;require("core-js/shim");require("regenerator-babel/runtime")}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{"core-js/shim":2,"regenerator-babel/runtime":3}],2:[function(require,module,exports){!function(global,framework,undefined){"use strict";var OBJECT="Object",FUNCTION="Function",ARRAY="Array",STRING="String",NUMBER="Number",REGEXP="RegExp",DATE="Date",MAP="Map",SET="Set",WEAKMAP="WeakMap",WEAKSET="WeakSet",SYMBOL="Symbol",PROMISE="Promise",MATH="Math",ARGUMENTS="Arguments",PROTOTYPE="prototype",CONSTRUCTOR="constructor",TO_STRING="toString",TO_STRING_TAG=TO_STRING+"Tag",TO_LOCALE="toLocaleString",HAS_OWN="hasOwnProperty",FOR_EACH="forEach",ITERATOR="iterator",FF_ITERATOR="@@"+ITERATOR,PROCESS="process",CREATE_ELEMENT="createElement",Function=global[FUNCTION],Object=global[OBJECT],Array=global[ARRAY],String=global[STRING],Number=global[NUMBER],RegExp=global[REGEXP],Date=global[DATE],Map=global[MAP],Set=global[SET],WeakMap=global[WEAKMAP],WeakSet=global[WEAKSET],Symbol=global[SYMBOL],Math=global[MATH],TypeError=global.TypeError,RangeError=global.RangeError,setTimeout=global.setTimeout,setImmediate=global.setImmediate,clearImmediate=global.clearImmediate,parseInt=global.parseInt,isFinite=global.isFinite,process=global[PROCESS],nextTick=process&&process.nextTick,document=global.document,html=document&&document.documentElement,navigator=global.navigator,define=global.define,console=global.console||{},ArrayProto=Array[PROTOTYPE],ObjectProto=Object[PROTOTYPE],FunctionProto=Function[PROTOTYPE],Infinity=1/0,DOT=".";function isObject(it){return it!==null&&(typeof it=="object"||typeof it=="function")}function isFunction(it){return typeof it=="function"}var isNative=ctx(/./.test,/\[native code\]\s*\}\s*$/,1);var toString=ObjectProto[TO_STRING];function setToStringTag(it,tag,stat){if(it&&!has(it=stat?it:it[PROTOTYPE],SYMBOL_TAG))hidden(it,SYMBOL_TAG,tag)}function cof(it){return toString.call(it).slice(8,-1)}function classof(it){var O,T;return it==undefined?it===undefined?"Undefined":"Null":typeof(T=(O=Object(it))[SYMBOL_TAG])=="string"?T:cof(O)}var call=FunctionProto.call,apply=FunctionProto.apply,REFERENCE_GET;function part(){var fn=assertFunction(this),length=arguments.length,args=Array(length),i=0,_=path._,holder=false;while(length>i)if((args[i]=arguments[i++])===_)holder=true;return function(){var that=this,_length=arguments.length,i=0,j=0,_args;if(!holder&&!_length)return invoke(fn,args,that);_args=args.slice();if(holder)for(;length>i;i++)if(_args[i]===_)_args[i]=arguments[j++];while(_length>j)_args.push(arguments[j++]);return invoke(fn,_args,that)}}function ctx(fn,that,length){assertFunction(fn);if(~length&&that===undefined)return fn;switch(length){case 1:return function(a){return fn.call(that,a)};case 2:return function(a,b){return fn.call(that,a,b)};case 3:return function(a,b,c){return fn.call(that,a,b,c)}}return function(){return fn.apply(that,arguments)}}function invoke(fn,args,that){var un=that===undefined;switch(args.length|0){case 0:return un?fn():fn.call(that);case 1:return un?fn(args[0]):fn.call(that,args[0]);case 2:return un?fn(args[0],args[1]):fn.call(that,args[0],args[1]);case 3:return un?fn(args[0],args[1],args[2]):fn.call(that,args[0],args[1],args[2]);case 4:return un?fn(args[0],args[1],args[2],args[3]):fn.call(that,args[0],args[1],args[2],args[3]);case 5:return un?fn(args[0],args[1],args[2],args[3],args[4]):fn.call(that,args[0],args[1],args[2],args[3],args[4])}return fn.apply(that,args)}var create=Object.create,getPrototypeOf=Object.getPrototypeOf,setPrototypeOf=Object.setPrototypeOf,defineProperty=Object.defineProperty,defineProperties=Object.defineProperties,getOwnDescriptor=Object.getOwnPropertyDescriptor,getKeys=Object.keys,getNames=Object.getOwnPropertyNames,getSymbols=Object.getOwnPropertySymbols,isFrozen=Object.isFrozen,has=ctx(call,ObjectProto[HAS_OWN],2),ES5Object=Object,Dict;function toObject(it){return ES5Object(assertDefined(it))}function returnIt(it){return it}function returnThis(){return this}function get(object,key){if(has(object,key))return object[key]}function ownKeys(it){assertObject(it);return getSymbols?getNames(it).concat(getSymbols(it)):getNames(it)}var assign=Object.assign||function(target,source){var T=Object(assertDefined(target)),l=arguments.length,i=1;while(l>i){var S=ES5Object(arguments[i++]),keys=getKeys(S),length=keys.length,j=0,key;while(length>j)T[key=keys[j++]]=S[key]}return T};function keyOf(object,el){var O=toObject(object),keys=getKeys(O),length=keys.length,index=0,key;while(length>index)if(O[key=keys[index++]]===el)return key}function array(it){return String(it).split(",")}var push=ArrayProto.push,unshift=ArrayProto.unshift,slice=ArrayProto.slice,splice=ArrayProto.splice,indexOf=ArrayProto.indexOf,forEach=ArrayProto[FOR_EACH];function createArrayMethod(type){var isMap=type==1,isFilter=type==2,isSome=type==3,isEvery=type==4,isFindIndex=type==6,noholes=type==5||isFindIndex;return function(callbackfn){var O=Object(assertDefined(this)),that=arguments[1],self=ES5Object(O),f=ctx(callbackfn,that,3),length=toLength(self.length),index=0,result=isMap?Array(length):isFilter?[]:undefined,val,res;for(;length>index;index++)if(noholes||index in self){val=self[index];res=f(val,index,O);if(type){if(isMap)result[index]=res;else if(res)switch(type){case 3:return true;case 5:return val;case 6:return index;case 2:result.push(val)}else if(isEvery)return false}}return isFindIndex?-1:isSome||isEvery?isEvery:result}}function createArrayContains(isContains){return function(el){var O=toObject(this),length=toLength(O.length),index=toIndex(arguments[1],length);if(isContains&&el!=el){for(;length>index;index++)if(sameNaN(O[index]))return isContains||index}else for(;length>index;index++)if(isContains||index in O){if(O[index]===el)return isContains||index}return!isContains&&-1}}function generic(A,B){return typeof A=="function"?A:B}var MAX_SAFE_INTEGER=9007199254740991,pow=Math.pow,abs=Math.abs,ceil=Math.ceil,floor=Math.floor,max=Math.max,min=Math.min,random=Math.random,trunc=Math.trunc||function(it){return(it>0?floor:ceil)(it)};function sameNaN(number){return number!=number}function toInteger(it){return isNaN(it)?0:trunc(it)}function toLength(it){return it>0?min(toInteger(it),MAX_SAFE_INTEGER):0}function toIndex(index,length){var index=toInteger(index);return index<0?max(index+length,0):min(index,length)}function lz(num){return num>9?num:"0"+num}function createReplacer(regExp,replace,isStatic){var replacer=isObject(replace)?function(part){return replace[part]}:replace;return function(it){return String(isStatic?it:this).replace(regExp,replacer)}}function createPointAt(toString){return function(pos){var s=String(assertDefined(this)),i=toInteger(pos),l=s.length,a,b;if(i<0||i>=l)return toString?"":undefined;a=s.charCodeAt(i);return a<55296||a>56319||i+1===l||(b=s.charCodeAt(i+1))<56320||b>57343?toString?s.charAt(i):a:toString?s.slice(i,i+2):(a-55296<<10)+(b-56320)+65536}}var REDUCE_ERROR="Reduce of empty object with no initial value";function assert(condition,msg1,msg2){if(!condition)throw TypeError(msg2?msg1+msg2:msg1)}function assertDefined(it){if(it==undefined)throw TypeError("Function called on null or undefined");return it}function assertFunction(it){assert(isFunction(it),it," is not a function!");return it}function assertObject(it){assert(isObject(it),it," is not an object!");return it}function assertInstance(it,Constructor,name){assert(it instanceof Constructor,name,": use the 'new' operator!")}function descriptor(bitmap,value){return{enumerable:!(bitmap&1),configurable:!(bitmap&2),writable:!(bitmap&4),value:value}}function simpleSet(object,key,value){object[key]=value;return object}function createDefiner(bitmap){return DESC?function(object,key,value){return defineProperty(object,key,descriptor(bitmap,value))}:simpleSet}function uid(key){return SYMBOL+"("+key+")_"+(++sid+random())[TO_STRING](36)}function getWellKnownSymbol(name,setter){return Symbol&&Symbol[name]||(setter?Symbol:safeSymbol)(SYMBOL+DOT+name)}var DESC=!!function(){try{return defineProperty({},"a",{get:function(){return 2}}).a==2}catch(e){}}(),sid=0,hidden=createDefiner(1),set=Symbol?simpleSet:hidden,safeSymbol=Symbol||uid;function assignHidden(target,src){for(var key in src)hidden(target,key,src[key]);return target}var SYMBOL_UNSCOPABLES=getWellKnownSymbol("unscopables"),ArrayUnscopables=ArrayProto[SYMBOL_UNSCOPABLES]||{},SYMBOL_TAG=getWellKnownSymbol(TO_STRING_TAG),SYMBOL_SPECIES=getWellKnownSymbol("species"),SYMBOL_ITERATOR;function setSpecies(C){if(DESC&&(framework||!isNative(C)))defineProperty(C,SYMBOL_SPECIES,{configurable:true,get:returnThis})}var NODE=cof(process)==PROCESS,core={},path=framework?global:core,old=global.core,exportGlobal,FORCED=1,GLOBAL=2,STATIC=4,PROTO=8,BIND=16,WRAP=32;function $define(type,name,source){var key,own,out,exp,isGlobal=type&GLOBAL,target=isGlobal?global:type&STATIC?global[name]:(global[name]||ObjectProto)[PROTOTYPE],exports=isGlobal?core:core[name]||(core[name]={});if(isGlobal)source=name;for(key in source){own=!(type&FORCED)&&target&&key in target&&(!isFunction(target[key])||isNative(target[key]));out=(own?target:source)[key];if(!framework&&isGlobal&&!isFunction(target[key]))exp=source[key];else if(type&BIND&&own)exp=ctx(out,global);else if(type&WRAP&&!framework&&target[key]==out){exp=function(param){return this instanceof out?new out(param):out(param)};exp[PROTOTYPE]=out[PROTOTYPE]}else exp=type&PROTO&&isFunction(out)?ctx(call,out):out;if(framework&&target&&!own){if(isGlobal)target[key]=out;else delete target[key]&&hidden(target,key,out)}if(exports[key]!=out)hidden(exports,key,exp)}}if(typeof module!="undefined"&&module.exports)module.exports=core;else if(isFunction(define)&&define.amd)define(function(){return core});else exportGlobal=true;if(exportGlobal||framework){core.noConflict=function(){global.core=old;return core};global.core=core}SYMBOL_ITERATOR=getWellKnownSymbol(ITERATOR);var ITER=safeSymbol("iter"),KEY=1,VALUE=2,Iterators={},IteratorPrototype={},BUGGY_ITERATORS="keys"in ArrayProto&&!("next"in[].keys());setIterator(IteratorPrototype,returnThis);function setIterator(O,value){hidden(O,SYMBOL_ITERATOR,value);FF_ITERATOR in ArrayProto&&hidden(O,FF_ITERATOR,value)}function createIterator(Constructor,NAME,next,proto){Constructor[PROTOTYPE]=create(proto||IteratorPrototype,{next:descriptor(1,next)});setToStringTag(Constructor,NAME+" Iterator")}function defineIterator(Constructor,NAME,value,DEFAULT){var proto=Constructor[PROTOTYPE],iter=get(proto,SYMBOL_ITERATOR)||get(proto,FF_ITERATOR)||DEFAULT&&get(proto,DEFAULT)||value;if(framework){setIterator(proto,iter);if(iter!==value){var iterProto=getPrototypeOf(iter.call(new Constructor));setToStringTag(iterProto,NAME+" Iterator",true);has(proto,FF_ITERATOR)&&setIterator(iterProto,returnThis)}}Iterators[NAME]=iter;Iterators[NAME+" Iterator"]=returnThis;return iter}function defineStdIterators(Base,NAME,Constructor,next,DEFAULT,IS_SET){function createIter(kind){return function(){return new Constructor(this,kind)}}createIterator(Constructor,NAME,next);var entries=createIter(KEY+VALUE),values=createIter(VALUE);if(DEFAULT==VALUE)values=defineIterator(Base,NAME,values,"values");else entries=defineIterator(Base,NAME,entries,"entries");if(DEFAULT){$define(PROTO+FORCED*BUGGY_ITERATORS,NAME,{entries:entries,keys:IS_SET?values:createIter(KEY),values:values})}}function iterResult(done,value){return{value:value,done:!!done}}function isIterable(it){var O=Object(it),Symbol=global[SYMBOL],hasExt=(Symbol&&Symbol[ITERATOR]||FF_ITERATOR)in O;return hasExt||SYMBOL_ITERATOR in O||has(Iterators,classof(O))}function getIterator(it){var Symbol=global[SYMBOL],ext=it[Symbol&&Symbol[ITERATOR]||FF_ITERATOR],getIter=ext||it[SYMBOL_ITERATOR]||Iterators[classof(it)];return assertObject(getIter.call(it))}function stepCall(fn,value,entries){return entries?invoke(fn,value):fn(value)}function checkDangerIterClosing(fn){var danger=true;var O={next:function(){throw 1},"return":function(){danger=false}};O[SYMBOL_ITERATOR]=returnThis;try{fn(O)}catch(e){}return danger}function closeIterator(iterator){var ret=iterator["return"];if(ret!==undefined)ret.call(iterator)}function safeIterClose(exec,iterator){try{exec(iterator)}catch(e){closeIterator(iterator);throw e}}function forOf(iterable,entries,fn,that){safeIterClose(function(iterator){var f=ctx(fn,that,entries?2:1),step;while(!(step=iterator.next()).done)if(stepCall(f,step.value,entries)===false){return closeIterator(iterator)}},getIterator(iterable))}!function(TAG,SymbolRegistry,AllSymbols,setter){if(!isNative(Symbol)){Symbol=function(description){assert(!(this instanceof Symbol),SYMBOL+" is not a "+CONSTRUCTOR);var tag=uid(description),sym=set(create(Symbol[PROTOTYPE]),TAG,tag);AllSymbols[tag]=sym;DESC&&setter&&defineProperty(ObjectProto,tag,{configurable:true,set:function(value){hidden(this,tag,value)}});return sym};hidden(Symbol[PROTOTYPE],TO_STRING,function(){return this[TAG]})}$define(GLOBAL+WRAP,{Symbol:Symbol});var symbolStatics={"for":function(key){return has(SymbolRegistry,key+="")?SymbolRegistry[key]:SymbolRegistry[key]=Symbol(key)},iterator:SYMBOL_ITERATOR||getWellKnownSymbol(ITERATOR),keyFor:part.call(keyOf,SymbolRegistry),species:SYMBOL_SPECIES,toStringTag:SYMBOL_TAG=getWellKnownSymbol(TO_STRING_TAG,true),unscopables:SYMBOL_UNSCOPABLES,pure:safeSymbol,set:set,useSetter:function(){setter=true},useSimple:function(){setter=false}};forEach.call(array("hasInstance,isConcatSpreadable,match,replace,search,split,toPrimitive"),function(it){symbolStatics[it]=getWellKnownSymbol(it)});$define(STATIC,SYMBOL,symbolStatics);setToStringTag(Symbol,SYMBOL);$define(STATIC+FORCED*!isNative(Symbol),OBJECT,{getOwnPropertyNames:function(it){var names=getNames(toObject(it)),result=[],key,i=0;while(names.length>i)has(AllSymbols,key=names[i++])||result.push(key);return result},getOwnPropertySymbols:function(it){var names=getNames(toObject(it)),result=[],key,i=0;while(names.length>i)has(AllSymbols,key=names[i++])&&result.push(AllSymbols[key]);return result}});setToStringTag(Math,MATH,true);setToStringTag(global.JSON,"JSON",true)}(safeSymbol("tag"),{},{},true);!function(){var objectStatic={assign:assign,is:function(x,y){return x===y?x!==0||1/x===1/y:x!=x&&y!=y}};"__proto__"in ObjectProto&&function(buggy,set){try{set=ctx(call,getOwnDescriptor(ObjectProto,"__proto__").set,2);set({},ArrayProto)}catch(e){buggy=true}objectStatic.setPrototypeOf=setPrototypeOf=setPrototypeOf||function(O,proto){assertObject(O);assert(proto===null||isObject(proto),proto,": can't set as prototype!");if(buggy)O.__proto__=proto;else set(O,proto);return O}}();$define(STATIC,OBJECT,objectStatic)}();!function(tmp){tmp[SYMBOL_TAG]=DOT;if(cof(tmp)!=DOT)hidden(ObjectProto,TO_STRING,function(){return"[object "+classof(this)+"]"})}({});!function(){function wrapObjectMethod(key,MODE){var fn=Object[key],exp=core[OBJECT][key],f=0,o={};if(!exp||isNative(exp)){o[key]=MODE==1?function(it){return isObject(it)?fn(it):it}:MODE==2?function(it){return isObject(it)?fn(it):true}:MODE==3?function(it){return isObject(it)?fn(it):false}:MODE==4?function(it,key){return fn(toObject(it),key)}:function(it){return fn(toObject(it))};try{fn(DOT)}catch(e){f=1}$define(STATIC+FORCED*f,OBJECT,o)}}wrapObjectMethod("freeze",1);wrapObjectMethod("seal",1);wrapObjectMethod("preventExtensions",1);wrapObjectMethod("isFrozen",2);wrapObjectMethod("isSealed",2);wrapObjectMethod("isExtensible",3);wrapObjectMethod("getOwnPropertyDescriptor",4);wrapObjectMethod("getPrototypeOf");wrapObjectMethod("keys");wrapObjectMethod("getOwnPropertyNames")}();!function(NAME){NAME in FunctionProto||DESC&&defineProperty(FunctionProto,NAME,{configurable:true,get:function(){var match=String(this).match(/^\s*function ([^ (]*)/),name=match?match[1]:"";has(this,NAME)||defineProperty(this,NAME,descriptor(5,name));return name},set:function(value){has(this,NAME)||defineProperty(this,NAME,descriptor(0,value))}})}("name");Number("0o1")&&Number("0b1")||function(_Number,NumberProto){function toNumber(it){if(isObject(it))it=toPrimitive(it);if(typeof it=="string"&&it.length>2&&it.charCodeAt(0)==48){var binary=false;switch(it.charCodeAt(1)){case 66:case 98:binary=true;case 79:case 111:return parseInt(it.slice(2),binary?2:8)}}return+it}function toPrimitive(it){var fn,val;if(isFunction(fn=it.valueOf)&&!isObject(val=fn.call(it)))return val;if(isFunction(fn=it[TO_STRING])&&!isObject(val=fn.call(it)))return val;throw TypeError("Can't convert object to number")}Number=function Number(it){return this instanceof Number?new _Number(toNumber(it)):toNumber(it)};forEach.call(DESC?getNames(_Number):array("MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY"),function(key){key in Number||defineProperty(Number,key,getOwnDescriptor(_Number,key))});Number[PROTOTYPE]=NumberProto;NumberProto[CONSTRUCTOR]=Number;hidden(global,NUMBER,Number)}(Number,Number[PROTOTYPE]);!function(isInteger){$define(STATIC,NUMBER,{EPSILON:pow(2,-52),isFinite:function(it){return typeof it=="number"&&isFinite(it)},isInteger:isInteger,isNaN:sameNaN,isSafeInteger:function(number){return isInteger(number)&&abs(number)<=MAX_SAFE_INTEGER},MAX_SAFE_INTEGER:MAX_SAFE_INTEGER,MIN_SAFE_INTEGER:-MAX_SAFE_INTEGER,parseFloat:parseFloat,parseInt:parseInt})}(Number.isInteger||function(it){return!isObject(it)&&isFinite(it)&&floor(it)===it});!function(){var E=Math.E,exp=Math.exp,log=Math.log,sqrt=Math.sqrt,sign=Math.sign||function(x){return(x=+x)==0||x!=x?x:x<0?-1:1};function asinh(x){return!isFinite(x=+x)||x==0?x:x<0?-asinh(-x):log(x+sqrt(x*x+1))}function expm1(x){return(x=+x)==0?x:x>-1e-6&&x<1e-6?x+x*x/2:exp(x)-1}$define(STATIC,MATH,{acosh:function(x){return(x=+x)<1?NaN:isFinite(x)?log(x/E+sqrt(x+1)*sqrt(x-1)/E)+1:x},asinh:asinh,atanh:function(x){return(x=+x)==0?x:log((1+x)/(1-x))/2},cbrt:function(x){return sign(x=+x)*pow(abs(x),1/3)},clz32:function(x){return(x>>>=0)?32-x[TO_STRING](2).length:32},cosh:function(x){return(exp(x=+x)+exp(-x))/2},expm1:expm1,fround:function(x){return new Float32Array([x])[0]},hypot:function(value1,value2){var sum=0,len1=arguments.length,len2=len1,args=Array(len1),larg=-Infinity,arg;while(len1--){arg=args[len1]=+arguments[len1];if(arg==Infinity||arg==-Infinity)return Infinity;if(arg>larg)larg=arg}larg=arg||1;while(len2--)sum+=pow(args[len2]/larg,2);return larg*sqrt(sum)},imul:function(x,y){var UInt16=65535,xn=+x,yn=+y,xl=UInt16&xn,yl=UInt16&yn;return 0|xl*yl+((UInt16&xn>>>16)*yl+xl*(UInt16&yn>>>16)<<16>>>0)},log1p:function(x){return(x=+x)>-1e-8&&x<1e-8?x-x*x/2:log(1+x)},log10:function(x){return log(x)/Math.LN10},log2:function(x){return log(x)/Math.LN2},sign:sign,sinh:function(x){return abs(x=+x)<1?(expm1(x)-expm1(-x))/2:(exp(x-1)-exp(-x-1))*(E/2)},tanh:function(x){var a=expm1(x=+x),b=expm1(-x);return a==Infinity?1:b==Infinity?-1:(a-b)/(exp(x)+exp(-x))},trunc:trunc})}();!function(fromCharCode){function assertNotRegExp(it){if(cof(it)==REGEXP)throw TypeError()}$define(STATIC,STRING,{fromCodePoint:function(x){var res=[],len=arguments.length,i=0,code;while(len>i){code=+arguments[i++];if(toIndex(code,1114111)!==code)throw RangeError(code+" is not a valid code point");res.push(code<65536?fromCharCode(code):fromCharCode(((code-=65536)>>10)+55296,code%1024+56320))}return res.join("")},raw:function(callSite){var raw=toObject(callSite.raw),len=toLength(raw.length),sln=arguments.length,res=[],i=0;while(len>i){res.push(String(raw[i++]));if(i<sln)res.push(String(arguments[i]))}return res.join("")}});$define(PROTO,STRING,{codePointAt:createPointAt(false),endsWith:function(searchString){assertNotRegExp(searchString);var that=String(assertDefined(this)),endPosition=arguments[1],len=toLength(that.length),end=endPosition===undefined?len:min(toLength(endPosition),len);searchString+="";return that.slice(end-searchString.length,end)===searchString},includes:function(searchString){assertNotRegExp(searchString);return!!~String(assertDefined(this)).indexOf(searchString,arguments[1])},repeat:function(count){var str=String(assertDefined(this)),res="",n=toInteger(count);if(0>n||n==Infinity)throw RangeError("Count can't be negative");for(;n>0;(n>>>=1)&&(str+=str))if(n&1)res+=str;return res},startsWith:function(searchString){assertNotRegExp(searchString);var that=String(assertDefined(this)),index=toLength(min(arguments[1],that.length));searchString+="";return that.slice(index,index+searchString.length)===searchString}})}(String.fromCharCode);!function(){$define(STATIC+FORCED*checkDangerIterClosing(Array.from),ARRAY,{from:function(arrayLike){var O=Object(assertDefined(arrayLike)),mapfn=arguments[1],mapping=mapfn!==undefined,f=mapping?ctx(mapfn,arguments[2],2):undefined,index=0,length,result,step;if(isIterable(O)){result=new(generic(this,Array));safeIterClose(function(iterator){for(;!(step=iterator.next()).done;index++){result[index]=mapping?f(step.value,index):step.value}},getIterator(O))}else{result=new(generic(this,Array))(length=toLength(O.length));for(;length>index;index++){result[index]=mapping?f(O[index],index):O[index]}}result.length=index;return result}});$define(STATIC,ARRAY,{of:function(){var index=0,length=arguments.length,result=new(generic(this,Array))(length);while(length>index)result[index]=arguments[index++];result.length=length;return result}});setSpecies(Array)}();!function(){$define(PROTO,ARRAY,{copyWithin:function(target,start){var O=Object(assertDefined(this)),len=toLength(O.length),to=toIndex(target,len),from=toIndex(start,len),end=arguments[2],fin=end===undefined?len:toIndex(end,len),count=min(fin-from,len-to),inc=1;if(from<to&&to<from+count){inc=-1;from=from+count-1;to=to+count-1}while(count-->0){if(from in O)O[to]=O[from];else delete O[to];to+=inc;from+=inc}return O},fill:function(value){var O=Object(assertDefined(this)),length=toLength(O.length),index=toIndex(arguments[1],length),end=arguments[2],endPos=end===undefined?length:toIndex(end,length);while(endPos>index)O[index++]=value;return O},find:createArrayMethod(5),findIndex:createArrayMethod(6)});if(framework){forEach.call(array("find,findIndex,fill,copyWithin,entries,keys,values"),function(it){ArrayUnscopables[it]=true});SYMBOL_UNSCOPABLES in ArrayProto||hidden(ArrayProto,SYMBOL_UNSCOPABLES,ArrayUnscopables)}}();!function(at){defineStdIterators(Array,ARRAY,function(iterated,kind){set(this,ITER,{o:toObject(iterated),i:0,k:kind})},function(){var iter=this[ITER],O=iter.o,kind=iter.k,index=iter.i++;if(!O||index>=O.length){iter.o=undefined;return iterResult(1)}if(kind==KEY)return iterResult(0,index);if(kind==VALUE)return iterResult(0,O[index]);return iterResult(0,[index,O[index]])},VALUE);Iterators[ARGUMENTS]=Iterators[ARRAY];defineStdIterators(String,STRING,function(iterated){set(this,ITER,{o:String(iterated),i:0})},function(){var iter=this[ITER],O=iter.o,index=iter.i,point;if(index>=O.length)return iterResult(1);point=at.call(O,index);iter.i+=point.length;return iterResult(0,point)})}(createPointAt(true));DESC&&!function(RegExpProto,_RegExp){if(!function(){try{return RegExp(/a/g,"i")=="/a/i"}catch(e){}}()){RegExp=function RegExp(pattern,flags){return new _RegExp(cof(pattern)==REGEXP&&flags!==undefined?pattern.source:pattern,flags)};forEach.call(getNames(_RegExp),function(key){key in RegExp||defineProperty(RegExp,key,{configurable:true,get:function(){return _RegExp[key]},set:function(it){_RegExp[key]=it}})});RegExpProto[CONSTRUCTOR]=RegExp;RegExp[PROTOTYPE]=RegExpProto;hidden(global,REGEXP,RegExp)}if(/./g.flags!="g")defineProperty(RegExpProto,"flags",{configurable:true,get:createReplacer(/^.*\/(\w*)$/,"$1")});setSpecies(RegExp)}(RegExp[PROTOTYPE],RegExp);isFunction(setImmediate)&&isFunction(clearImmediate)||function(ONREADYSTATECHANGE){var postMessage=global.postMessage,addEventListener=global.addEventListener,MessageChannel=global.MessageChannel,counter=0,queue={},defer,channel,port;setImmediate=function(fn){var args=[],i=1;while(arguments.length>i)args.push(arguments[i++]);queue[++counter]=function(){invoke(isFunction(fn)?fn:Function(fn),args)};defer(counter);return counter};clearImmediate=function(id){delete queue[id]};function run(id){if(has(queue,id)){var fn=queue[id];delete queue[id];fn()}}function listner(event){run(event.data)}if(NODE){defer=function(id){nextTick(part.call(run,id))}}else if(addEventListener&&isFunction(postMessage)&&!global.importScripts){defer=function(id){postMessage(id,"*")};addEventListener("message",listner,false)}else if(isFunction(MessageChannel)){channel=new MessageChannel;port=channel.port2;channel.port1.onmessage=listner;defer=ctx(port.postMessage,port,1)}else if(document&&ONREADYSTATECHANGE in document[CREATE_ELEMENT]("script")){defer=function(id){html.appendChild(document[CREATE_ELEMENT]("script"))[ONREADYSTATECHANGE]=function(){html.removeChild(this);run(id)}}}else{defer=function(id){setTimeout(run,0,id)}}}("onreadystatechange");$define(GLOBAL+BIND,{setImmediate:setImmediate,clearImmediate:clearImmediate});!function(Promise,test){isFunction(Promise)&&isFunction(Promise.resolve)&&Promise.resolve(test=new Promise(function(){}))==test||function(asap,RECORD){function isThenable(it){var then;if(isObject(it))then=it.then;return isFunction(then)?then:false}function handledRejectionOrHasOnRejected(promise){var record=promise[RECORD],chain=record.c,i=0,react;if(record.h)return true;while(chain.length>i){react=chain[i++];if(react.fail||handledRejectionOrHasOnRejected(react.P))return true}}function notify(record,reject){var chain=record.c;if(reject||chain.length)asap(function(){var promise=record.p,value=record.v,ok=record.s==1,i=0;if(reject&&!handledRejectionOrHasOnRejected(promise)){setTimeout(function(){if(!handledRejectionOrHasOnRejected(promise)){if(NODE){if(!process.emit("unhandledRejection",value,promise)){}}else if(isFunction(console.error)){console.error("Unhandled promise rejection",value)}}},1e3)}else while(chain.length>i)!function(react){var cb=ok?react.ok:react.fail,ret,then;try{if(cb){if(!ok)record.h=true;ret=cb===true?value:cb(value);if(ret===react.P){react.rej(TypeError(PROMISE+"-chain cycle"))}else if(then=isThenable(ret)){then.call(ret,react.res,react.rej)}else react.res(ret)}else react.rej(value)}catch(err){react.rej(err)}}(chain[i++]);chain.length=0})}function resolve(value){var record=this,then,wrapper;if(record.d)return;record.d=true;record=record.r||record;try{if(then=isThenable(value)){wrapper={r:record,d:false};then.call(value,ctx(resolve,wrapper,1),ctx(reject,wrapper,1))}else{record.v=value;record.s=1;notify(record)}}catch(err){reject.call(wrapper||{r:record,d:false},err)}}function reject(value){var record=this;if(record.d)return;record.d=true;record=record.r||record;record.v=value;record.s=2;notify(record,true)}function getConstructor(C){var S=assertObject(C)[SYMBOL_SPECIES];return S!=undefined?S:C}Promise=function(executor){assertFunction(executor);assertInstance(this,Promise,PROMISE);var record={p:this,c:[],s:0,d:false,v:undefined,h:false};hidden(this,RECORD,record);try{executor(ctx(resolve,record,1),ctx(reject,record,1))}catch(err){reject.call(record,err)}};assignHidden(Promise[PROTOTYPE],{then:function(onFulfilled,onRejected){var S=assertObject(assertObject(this)[CONSTRUCTOR])[SYMBOL_SPECIES];var react={ok:isFunction(onFulfilled)?onFulfilled:true,fail:isFunction(onRejected)?onRejected:false},P=react.P=new(S!=undefined?S:Promise)(function(resolve,reject){react.res=assertFunction(resolve);react.rej=assertFunction(reject)}),record=this[RECORD];record.c.push(react);record.s&&notify(record);return P},"catch":function(onRejected){return this.then(undefined,onRejected)}});assignHidden(Promise,{all:function(iterable){var Promise=getConstructor(this),values=[];return new Promise(function(resolve,reject){forOf(iterable,false,push,values);var remaining=values.length,results=Array(remaining);if(remaining)forEach.call(values,function(promise,index){Promise.resolve(promise).then(function(value){results[index]=value;--remaining||resolve(results)},reject)});else resolve(results)})},race:function(iterable){var Promise=getConstructor(this);return new Promise(function(resolve,reject){forOf(iterable,false,function(promise){Promise.resolve(promise).then(resolve,reject)})})},reject:function(r){return new(getConstructor(this))(function(resolve,reject){reject(r)})},resolve:function(x){return isObject(x)&&RECORD in x&&getPrototypeOf(x)===this[PROTOTYPE]?x:new(getConstructor(this))(function(resolve,reject){resolve(x)})}})}(nextTick||setImmediate,safeSymbol("record"));setToStringTag(Promise,PROMISE);setSpecies(Promise);$define(GLOBAL+FORCED*!isNative(Promise),{Promise:Promise})}(global[PROMISE]);!function(){var UID=safeSymbol("uid"),O1=safeSymbol("O1"),WEAK=safeSymbol("weak"),LEAK=safeSymbol("leak"),LAST=safeSymbol("last"),FIRST=safeSymbol("first"),SIZE=DESC?safeSymbol("size"):"size",uid=0,tmp={};function getCollection(C,NAME,methods,commonMethods,isMap,isWeak){var ADDER=isMap?"set":"add",proto=C&&C[PROTOTYPE],O={};function initFromIterable(that,iterable){if(iterable!=undefined)forOf(iterable,isMap,that[ADDER],that);return that}function fixSVZ(key,chain){var method=proto[key];if(framework)proto[key]=function(a,b){var result=method.call(this,a===0?0:a,b);return chain?this:result}}if(!isNative(C)||!(isWeak||!BUGGY_ITERATORS&&has(proto,FOR_EACH)&&has(proto,"entries"))){C=isWeak?function(iterable){assertInstance(this,C,NAME);set(this,UID,uid++);initFromIterable(this,iterable)}:function(iterable){var that=this;assertInstance(that,C,NAME);set(that,O1,create(null));set(that,SIZE,0);set(that,LAST,undefined);set(that,FIRST,undefined);initFromIterable(that,iterable)};assignHidden(assignHidden(C[PROTOTYPE],methods),commonMethods);isWeak||!DESC||defineProperty(C[PROTOTYPE],"size",{get:function(){return assertDefined(this[SIZE])}})}else{var Native=C,inst=new C,chain=inst[ADDER](isWeak?{}:-0,1),buggyZero;if(checkDangerIterClosing(function(O){new C(O)})){C=function(iterable){assertInstance(this,C,NAME);return initFromIterable(new Native,iterable)};C[PROTOTYPE]=proto;if(framework)proto[CONSTRUCTOR]=C}isWeak||inst[FOR_EACH](function(val,key){buggyZero=1/key===-Infinity});if(buggyZero){fixSVZ("delete");fixSVZ("has");isMap&&fixSVZ("get")}if(buggyZero||chain!==inst)fixSVZ(ADDER,true)}setToStringTag(C,NAME);setSpecies(C);O[NAME]=C;$define(GLOBAL+WRAP+FORCED*!isNative(C),O);isWeak||defineStdIterators(C,NAME,function(iterated,kind){set(this,ITER,{o:iterated,k:kind})},function(){var iter=this[ITER],kind=iter.k,entry=iter.l;while(entry&&entry.r)entry=entry.p;if(!iter.o||!(iter.l=entry=entry?entry.n:iter.o[FIRST])){iter.o=undefined;return iterResult(1)}if(kind==KEY)return iterResult(0,entry.k);if(kind==VALUE)return iterResult(0,entry.v);return iterResult(0,[entry.k,entry.v])},isMap?KEY+VALUE:VALUE,!isMap);return C}function fastKey(it,create){if(!isObject(it))return(typeof it=="string"?"S":"P")+it;if(isFrozen(it))return"F";if(!has(it,UID)){if(!create)return"E";hidden(it,UID,++uid)}return"O"+it[UID]}function getEntry(that,key){var index=fastKey(key),entry;if(index!="F")return that[O1][index];for(entry=that[FIRST];entry;entry=entry.n){if(entry.k==key)return entry}}function def(that,key,value){var entry=getEntry(that,key),prev,index;if(entry)entry.v=value;else{that[LAST]=entry={i:index=fastKey(key,true),k:key,v:value,p:prev=that[LAST],n:undefined,r:false};if(!that[FIRST])that[FIRST]=entry;if(prev)prev.n=entry;that[SIZE]++;if(index!="F")that[O1][index]=entry}return that}var collectionMethods={clear:function(){for(var that=this,data=that[O1],entry=that[FIRST];entry;entry=entry.n){
entry.r=true;if(entry.p)entry.p=entry.p.n=undefined;delete data[entry.i]}that[FIRST]=that[LAST]=undefined;that[SIZE]=0},"delete":function(key){var that=this,entry=getEntry(that,key);if(entry){var next=entry.n,prev=entry.p;delete that[O1][entry.i];entry.r=true;if(prev)prev.n=next;if(next)next.p=prev;if(that[FIRST]==entry)that[FIRST]=next;if(that[LAST]==entry)that[LAST]=prev;that[SIZE]--}return!!entry},forEach:function(callbackfn){var f=ctx(callbackfn,arguments[1],3),entry;while(entry=entry?entry.n:this[FIRST]){f(entry.v,entry.k,this);while(entry&&entry.r)entry=entry.p}},has:function(key){return!!getEntry(this,key)}};Map=getCollection(Map,MAP,{get:function(key){var entry=getEntry(this,key);return entry&&entry.v},set:function(key,value){return def(this,key===0?0:key,value)}},collectionMethods,true);Set=getCollection(Set,SET,{add:function(value){return def(this,value=value===0?0:value,value)}},collectionMethods);function defWeak(that,key,value){if(isFrozen(assertObject(key)))leakStore(that).set(key,value);else{has(key,WEAK)||hidden(key,WEAK,{});key[WEAK][that[UID]]=value}return that}function leakStore(that){return that[LEAK]||hidden(that,LEAK,new Map)[LEAK]}var weakMethods={"delete":function(key){if(!isObject(key))return false;if(isFrozen(key))return leakStore(this)["delete"](key);return has(key,WEAK)&&has(key[WEAK],this[UID])&&delete key[WEAK][this[UID]]},has:function(key){if(!isObject(key))return false;if(isFrozen(key))return leakStore(this).has(key);return has(key,WEAK)&&has(key[WEAK],this[UID])}};WeakMap=getCollection(WeakMap,WEAKMAP,{get:function(key){if(isObject(key)){if(isFrozen(key))return leakStore(this).get(key);if(has(key,WEAK))return key[WEAK][this[UID]]}},set:function(key,value){return defWeak(this,key,value)}},weakMethods,true,true);if(framework&&(new WeakMap).set(Object.freeze(tmp),7).get(tmp)!=7){forEach.call(array("delete,has,get,set"),function(key){var method=WeakMap[PROTOTYPE][key];WeakMap[PROTOTYPE][key]=function(a,b){if(isObject(a)&&isFrozen(a)){var result=leakStore(this)[key](a,b);return key=="set"?this:result}return method.call(this,a,b)}})}WeakSet=getCollection(WeakSet,WEAKSET,{add:function(value){return defWeak(this,value,true)}},weakMethods,false,true)}();!function(){function Enumerate(iterated){var keys=[],key;for(key in iterated)keys.push(key);set(this,ITER,{o:iterated,a:keys,i:0})}createIterator(Enumerate,OBJECT,function(){var iter=this[ITER],keys=iter.a,key;do{if(iter.i>=keys.length)return iterResult(1)}while(!((key=keys[iter.i++])in iter.o));return iterResult(0,key)});function wrap(fn){return function(it){assertObject(it);try{return fn.apply(undefined,arguments),true}catch(e){return false}}}function reflectGet(target,propertyKey){var receiver=arguments.length<3?target:arguments[2],desc=getOwnDescriptor(assertObject(target),propertyKey),proto;if(desc)return has(desc,"value")?desc.value:desc.get===undefined?undefined:desc.get.call(receiver);return isObject(proto=getPrototypeOf(target))?reflectGet(proto,propertyKey,receiver):undefined}function reflectSet(target,propertyKey,V){var receiver=arguments.length<4?target:arguments[3],ownDesc=getOwnDescriptor(assertObject(target),propertyKey),existingDescriptor,proto;if(!ownDesc){if(isObject(proto=getPrototypeOf(target))){return reflectSet(proto,propertyKey,V,receiver)}ownDesc=descriptor(0)}if(has(ownDesc,"value")){if(ownDesc.writable===false||!isObject(receiver))return false;existingDescriptor=getOwnDescriptor(receiver,propertyKey)||descriptor(0);existingDescriptor.value=V;return defineProperty(receiver,propertyKey,existingDescriptor),true}return ownDesc.set===undefined?false:(ownDesc.set.call(receiver,V),true)}var isExtensible=Object.isExtensible||returnIt;var reflect={apply:ctx(call,apply,3),construct:function(target,argumentsList){var proto=assertFunction(arguments.length<3?target:arguments[2])[PROTOTYPE],instance=create(isObject(proto)?proto:ObjectProto),result=apply.call(target,instance,argumentsList);return isObject(result)?result:instance},defineProperty:wrap(defineProperty),deleteProperty:function(target,propertyKey){var desc=getOwnDescriptor(assertObject(target),propertyKey);return desc&&!desc.configurable?false:delete target[propertyKey]},enumerate:function(target){return new Enumerate(assertObject(target))},get:reflectGet,getOwnPropertyDescriptor:function(target,propertyKey){return getOwnDescriptor(assertObject(target),propertyKey)},getPrototypeOf:function(target){return getPrototypeOf(assertObject(target))},has:function(target,propertyKey){return propertyKey in target},isExtensible:function(target){return!!isExtensible(assertObject(target))},ownKeys:ownKeys,preventExtensions:wrap(Object.preventExtensions||returnIt),set:reflectSet};if(setPrototypeOf)reflect.setPrototypeOf=function(target,proto){return setPrototypeOf(assertObject(target),proto),true};$define(GLOBAL,{Reflect:{}});$define(STATIC,"Reflect",reflect)}();!function(){$define(PROTO,ARRAY,{includes:createArrayContains(true)});$define(PROTO,STRING,{at:createPointAt(true)});function createObjectToArray(isEntries){return function(object){var O=toObject(object),keys=getKeys(object),length=keys.length,i=0,result=Array(length),key;if(isEntries)while(length>i)result[i]=[key=keys[i++],O[key]];else while(length>i)result[i]=O[keys[i++]];return result}}$define(STATIC,OBJECT,{getOwnPropertyDescriptors:function(object){var O=toObject(object),result={};forEach.call(ownKeys(O),function(key){defineProperty(result,key,descriptor(0,getOwnDescriptor(O,key)))});return result},values:createObjectToArray(false),entries:createObjectToArray(true)});$define(STATIC,REGEXP,{escape:createReplacer(/([\\\-[\]{}()*+?.,^$|])/g,"\\$1",true)})}();!function(REFERENCE){REFERENCE_GET=getWellKnownSymbol(REFERENCE+"Get",true);var REFERENCE_SET=getWellKnownSymbol(REFERENCE+SET,true),REFERENCE_DELETE=getWellKnownSymbol(REFERENCE+"Delete",true);$define(STATIC,SYMBOL,{referenceGet:REFERENCE_GET,referenceSet:REFERENCE_SET,referenceDelete:REFERENCE_DELETE});hidden(FunctionProto,REFERENCE_GET,returnThis);function setMapMethods(Constructor){if(Constructor){var MapProto=Constructor[PROTOTYPE];hidden(MapProto,REFERENCE_GET,MapProto.get);hidden(MapProto,REFERENCE_SET,MapProto.set);hidden(MapProto,REFERENCE_DELETE,MapProto["delete"])}}setMapMethods(Map);setMapMethods(WeakMap)}("reference");!function(arrayStatics){function setArrayStatics(keys,length){forEach.call(array(keys),function(key){if(key in ArrayProto)arrayStatics[key]=ctx(call,ArrayProto[key],length)})}setArrayStatics("pop,reverse,shift,keys,values,entries",1);setArrayStatics("indexOf,every,some,forEach,map,filter,find,findIndex,includes",3);setArrayStatics("join,slice,concat,push,splice,unshift,sort,lastIndexOf,"+"reduce,reduceRight,copyWithin,fill,turn");$define(STATIC,ARRAY,arrayStatics)}({});!function(NodeList){if(framework&&NodeList&&!(SYMBOL_ITERATOR in NodeList[PROTOTYPE])){hidden(NodeList[PROTOTYPE],SYMBOL_ITERATOR,Iterators[ARRAY])}Iterators.NodeList=Iterators[ARRAY]}(global.NodeList)}(typeof self!="undefined"&&self.Math===Math?self:Function("return this")(),true)},{}],3:[function(require,module,exports){(function(global){!function(global){"use strict";var hasOwn=Object.prototype.hasOwnProperty;var undefined;var iteratorSymbol=typeof Symbol==="function"&&Symbol.iterator||"@@iterator";var inModule=typeof module==="object";var runtime=global.regeneratorRuntime;if(runtime){if(inModule){module.exports=runtime}return}runtime=global.regeneratorRuntime=inModule?module.exports:{};function wrap(innerFn,outerFn,self,tryLocsList){return new Generator(innerFn,outerFn,self||null,tryLocsList||[])}runtime.wrap=wrap;function tryCatch(fn,obj,arg){try{return{type:"normal",arg:fn.call(obj,arg)}}catch(err){return{type:"throw",arg:err}}}var GenStateSuspendedStart="suspendedStart";var GenStateSuspendedYield="suspendedYield";var GenStateExecuting="executing";var GenStateCompleted="completed";var ContinueSentinel={};function GeneratorFunction(){}function GeneratorFunctionPrototype(){}var Gp=GeneratorFunctionPrototype.prototype=Generator.prototype;GeneratorFunction.prototype=Gp.constructor=GeneratorFunctionPrototype;GeneratorFunctionPrototype.constructor=GeneratorFunction;GeneratorFunction.displayName="GeneratorFunction";runtime.isGeneratorFunction=function(genFun){var ctor=typeof genFun==="function"&&genFun.constructor;return ctor?ctor===GeneratorFunction||(ctor.displayName||ctor.name)==="GeneratorFunction":false};runtime.mark=function(genFun){genFun.__proto__=GeneratorFunctionPrototype;genFun.prototype=Object.create(Gp);return genFun};runtime.async=function(innerFn,outerFn,self,tryLocsList){return new Promise(function(resolve,reject){var generator=wrap(innerFn,outerFn,self,tryLocsList);var callNext=step.bind(generator.next);var callThrow=step.bind(generator["throw"]);function step(arg){var record=tryCatch(this,null,arg);if(record.type==="throw"){reject(record.arg);return}var info=record.arg;if(info.done){resolve(info.value)}else{Promise.resolve(info.value).then(callNext,callThrow)}}callNext()})};function Generator(innerFn,outerFn,self,tryLocsList){var generator=outerFn?Object.create(outerFn.prototype):this;var context=new Context(tryLocsList);var state=GenStateSuspendedStart;function invoke(method,arg){if(state===GenStateExecuting){throw new Error("Generator is already running")}if(state===GenStateCompleted){return doneResult()}while(true){var delegate=context.delegate;if(delegate){var record=tryCatch(delegate.iterator[method],delegate.iterator,arg);if(record.type==="throw"){context.delegate=null;method="throw";arg=record.arg;continue}method="next";arg=undefined;var info=record.arg;if(info.done){context[delegate.resultName]=info.value;context.next=delegate.nextLoc}else{state=GenStateSuspendedYield;return info}context.delegate=null}if(method==="next"){if(state===GenStateSuspendedStart&&typeof arg!=="undefined"){throw new TypeError("attempt to send "+JSON.stringify(arg)+" to newborn generator")}if(state===GenStateSuspendedYield){context.sent=arg}else{delete context.sent}}else if(method==="throw"){if(state===GenStateSuspendedStart){state=GenStateCompleted;throw arg}if(context.dispatchException(arg)){method="next";arg=undefined}}else if(method==="return"){context.abrupt("return",arg)}state=GenStateExecuting;var record=tryCatch(innerFn,self,context);if(record.type==="normal"){state=context.done?GenStateCompleted:GenStateSuspendedYield;var info={value:record.arg,done:context.done};if(record.arg===ContinueSentinel){if(context.delegate&&method==="next"){arg=undefined}}else{return info}}else if(record.type==="throw"){state=GenStateCompleted;if(method==="next"){context.dispatchException(record.arg)}else{arg=record.arg}}}}generator.next=invoke.bind(generator,"next");generator["throw"]=invoke.bind(generator,"throw");generator["return"]=invoke.bind(generator,"return");return generator}Gp[iteratorSymbol]=function(){return this};Gp.toString=function(){return"[object Generator]"};function pushTryEntry(locs){var entry={tryLoc:locs[0]};if(1 in locs){entry.catchLoc=locs[1]}if(2 in locs){entry.finallyLoc=locs[2];entry.afterLoc=locs[3]}this.tryEntries.push(entry)}function resetTryEntry(entry){var record=entry.completion||{};record.type="normal";delete record.arg;entry.completion=record}function Context(tryLocsList){this.tryEntries=[{tryLoc:"root"}];tryLocsList.forEach(pushTryEntry,this);this.reset()}runtime.keys=function(object){var keys=[];for(var key in object){keys.push(key)}keys.reverse();return function next(){while(keys.length){var key=keys.pop();if(key in object){next.value=key;next.done=false;return next}}next.done=true;return next}};function values(iterable){if(iterable){var iteratorMethod=iterable[iteratorSymbol];if(iteratorMethod){return iteratorMethod.call(iterable)}if(typeof iterable.next==="function"){return iterable}if(!isNaN(iterable.length)){var i=-1,next=function next(){while(++i<iterable.length){if(hasOwn.call(iterable,i)){next.value=iterable[i];next.done=false;return next}}next.value=undefined;next.done=true;return next};return next.next=next}}return{next:doneResult}}runtime.values=values;function doneResult(){return{value:undefined,done:true}}Context.prototype={constructor:Context,reset:function(){this.prev=0;this.next=0;this.sent=undefined;this.done=false;this.delegate=null;this.tryEntries.forEach(resetTryEntry);for(var tempIndex=0,tempName;hasOwn.call(this,tempName="t"+tempIndex)||tempIndex<20;++tempIndex){this[tempName]=null}},stop:function(){this.done=true;var rootEntry=this.tryEntries[0];var rootRecord=rootEntry.completion;if(rootRecord.type==="throw"){throw rootRecord.arg}return this.rval},dispatchException:function(exception){if(this.done){throw exception}var context=this;function handle(loc,caught){record.type="throw";record.arg=exception;context.next=loc;return!!caught}for(var i=this.tryEntries.length-1;i>=0;--i){var entry=this.tryEntries[i];var record=entry.completion;if(entry.tryLoc==="root"){return handle("end")}if(entry.tryLoc<=this.prev){var hasCatch=hasOwn.call(entry,"catchLoc");var hasFinally=hasOwn.call(entry,"finallyLoc");if(hasCatch&&hasFinally){if(this.prev<entry.catchLoc){return handle(entry.catchLoc,true)}else if(this.prev<entry.finallyLoc){return handle(entry.finallyLoc)}}else if(hasCatch){if(this.prev<entry.catchLoc){return handle(entry.catchLoc,true)}}else if(hasFinally){if(this.prev<entry.finallyLoc){return handle(entry.finallyLoc)}}else{throw new Error("try statement without catch or finally")}}}},abrupt:function(type,arg){for(var i=this.tryEntries.length-1;i>=0;--i){var entry=this.tryEntries[i];if(entry.tryLoc<=this.prev&&hasOwn.call(entry,"finallyLoc")&&this.prev<entry.finallyLoc){var finallyEntry=entry;break}}if(finallyEntry&&(type==="break"||type==="continue")&&finallyEntry.tryLoc<=arg&&arg<finallyEntry.finallyLoc){finallyEntry=null}var record=finallyEntry?finallyEntry.completion:{};record.type=type;record.arg=arg;if(finallyEntry){this.next=finallyEntry.finallyLoc}else{this.complete(record)}return ContinueSentinel},complete:function(record,afterLoc){if(record.type==="throw"){throw record.arg}if(record.type==="break"||record.type==="continue"){this.next=record.arg}else if(record.type==="return"){this.rval=record.arg;this.next="end"}else if(record.type==="normal"&&afterLoc){this.next=afterLoc}return ContinueSentinel},finish:function(finallyLoc){for(var i=this.tryEntries.length-1;i>=0;--i){var entry=this.tryEntries[i];if(entry.finallyLoc===finallyLoc){return this.complete(entry.completion,entry.afterLoc)}}},"catch":function(tryLoc){for(var i=this.tryEntries.length-1;i>=0;--i){var entry=this.tryEntries[i];if(entry.tryLoc===tryLoc){var record=entry.completion;if(record.type==="throw"){var thrown=record.arg;resetTryEntry(entry)}return thrown}}throw new Error("illegal catch attempt")},delegateYield:function(iterable,resultName,nextLoc){this.delegate={iterator:values(iterable),resultName:resultName,nextLoc:nextLoc};return ContinueSentinel}}}(typeof global==="object"?global:typeof window==="object"?window:this)}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}]},{},[1]);
(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){(function(global){"use strict";if(global._babelPolyfill){throw new Error("only one instance of babel/polyfill is allowed")}global._babelPolyfill=true;require("core-js/shim");require("regenerator-babel/runtime")}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{"core-js/shim":2,"regenerator-babel/runtime":3}],2:[function(require,module,exports){!function(global,framework,undefined){"use strict";var OBJECT="Object",FUNCTION="Function",ARRAY="Array",STRING="String",NUMBER="Number",REGEXP="RegExp",DATE="Date",MAP="Map",SET="Set",WEAKMAP="WeakMap",WEAKSET="WeakSet",SYMBOL="Symbol",PROMISE="Promise",MATH="Math",ARGUMENTS="Arguments",PROTOTYPE="prototype",CONSTRUCTOR="constructor",TO_STRING="toString",TO_STRING_TAG=TO_STRING+"Tag",TO_LOCALE="toLocaleString",HAS_OWN="hasOwnProperty",FOR_EACH="forEach",ITERATOR="iterator",FF_ITERATOR="@@"+ITERATOR,PROCESS="process",CREATE_ELEMENT="createElement",Function=global[FUNCTION],Object=global[OBJECT],Array=global[ARRAY],String=global[STRING],Number=global[NUMBER],RegExp=global[REGEXP],Date=global[DATE],Map=global[MAP],Set=global[SET],WeakMap=global[WEAKMAP],WeakSet=global[WEAKSET],Symbol=global[SYMBOL],Math=global[MATH],TypeError=global.TypeError,RangeError=global.RangeError,setTimeout=global.setTimeout,setImmediate=global.setImmediate,clearImmediate=global.clearImmediate,parseInt=global.parseInt,isFinite=global.isFinite,process=global[PROCESS],nextTick=process&&process.nextTick,document=global.document,html=document&&document.documentElement,navigator=global.navigator,define=global.define,console=global.console||{},ArrayProto=Array[PROTOTYPE],ObjectProto=Object[PROTOTYPE],FunctionProto=Function[PROTOTYPE],Infinity=1/0,DOT=".";function isObject(it){return it!==null&&(typeof it=="object"||typeof it=="function")}function isFunction(it){return typeof it=="function"}var isNative=ctx(/./.test,/\[native code\]\s*\}\s*$/,1);var toString=ObjectProto[TO_STRING];function setToStringTag(it,tag,stat){if(it&&!has(it=stat?it:it[PROTOTYPE],SYMBOL_TAG))hidden(it,SYMBOL_TAG,tag)}function cof(it){return toString.call(it).slice(8,-1)}function classof(it){var O,T;return it==undefined?it===undefined?"Undefined":"Null":typeof(T=(O=Object(it))[SYMBOL_TAG])=="string"?T:cof(O)}var call=FunctionProto.call,apply=FunctionProto.apply,REFERENCE_GET;function part(){var fn=assertFunction(this),length=arguments.length,args=Array(length),i=0,_=path._,holder=false;while(length>i)if((args[i]=arguments[i++])===_)holder=true;return function(){var that=this,_length=arguments.length,i=0,j=0,_args;if(!holder&&!_length)return invoke(fn,args,that);_args=args.slice();if(holder)for(;length>i;i++)if(_args[i]===_)_args[i]=arguments[j++];while(_length>j)_args.push(arguments[j++]);return invoke(fn,_args,that)}}function ctx(fn,that,length){assertFunction(fn);if(~length&&that===undefined)return fn;switch(length){case 1:return function(a){return fn.call(that,a)};case 2:return function(a,b){return fn.call(that,a,b)};case 3:return function(a,b,c){return fn.call(that,a,b,c)}}return function(){return fn.apply(that,arguments)}}function invoke(fn,args,that){var un=that===undefined;switch(args.length|0){case 0:return un?fn():fn.call(that);case 1:return un?fn(args[0]):fn.call(that,args[0]);case 2:return un?fn(args[0],args[1]):fn.call(that,args[0],args[1]);case 3:return un?fn(args[0],args[1],args[2]):fn.call(that,args[0],args[1],args[2]);case 4:return un?fn(args[0],args[1],args[2],args[3]):fn.call(that,args[0],args[1],args[2],args[3]);case 5:return un?fn(args[0],args[1],args[2],args[3],args[4]):fn.call(that,args[0],args[1],args[2],args[3],args[4])}return fn.apply(that,args)}var create=Object.create,getPrototypeOf=Object.getPrototypeOf,setPrototypeOf=Object.setPrototypeOf,defineProperty=Object.defineProperty,defineProperties=Object.defineProperties,getOwnDescriptor=Object.getOwnPropertyDescriptor,getKeys=Object.keys,getNames=Object.getOwnPropertyNames,getSymbols=Object.getOwnPropertySymbols,isFrozen=Object.isFrozen,has=ctx(call,ObjectProto[HAS_OWN],2),ES5Object=Object,Dict;function toObject(it){return ES5Object(assertDefined(it))}function returnIt(it){return it}function returnThis(){return this}function get(object,key){if(has(object,key))return object[key]}function ownKeys(it){assertObject(it);return getSymbols?getNames(it).concat(getSymbols(it)):getNames(it)}var assign=Object.assign||function(target,source){var T=Object(assertDefined(target)),l=arguments.length,i=1;while(l>i){var S=ES5Object(arguments[i++]),keys=getKeys(S),length=keys.length,j=0,key;while(length>j)T[key=keys[j++]]=S[key]}return T};function keyOf(object,el){var O=toObject(object),keys=getKeys(O),length=keys.length,index=0,key;while(length>index)if(O[key=keys[index++]]===el)return key}function array(it){return String(it).split(",")}var push=ArrayProto.push,unshift=ArrayProto.unshift,slice=ArrayProto.slice,splice=ArrayProto.splice,indexOf=ArrayProto.indexOf,forEach=ArrayProto[FOR_EACH];function createArrayMethod(type){var isMap=type==1,isFilter=type==2,isSome=type==3,isEvery=type==4,isFindIndex=type==6,noholes=type==5||isFindIndex;return function(callbackfn){var O=Object(assertDefined(this)),that=arguments[1],self=ES5Object(O),f=ctx(callbackfn,that,3),length=toLength(self.length),index=0,result=isMap?Array(length):isFilter?[]:undefined,val,res;for(;length>index;index++)if(noholes||index in self){val=self[index];res=f(val,index,O);if(type){if(isMap)result[index]=res;else if(res)switch(type){case 3:return true;case 5:return val;case 6:return index;case 2:result.push(val)}else if(isEvery)return false}}return isFindIndex?-1:isSome||isEvery?isEvery:result}}function createArrayContains(isContains){return function(el){var O=toObject(this),length=toLength(O.length),index=toIndex(arguments[1],length);if(isContains&&el!=el){for(;length>index;index++)if(sameNaN(O[index]))return isContains||index}else for(;length>index;index++)if(isContains||index in O){if(O[index]===el)return isContains||index}return!isContains&&-1}}function generic(A,B){return typeof A=="function"?A:B}var MAX_SAFE_INTEGER=9007199254740991,pow=Math.pow,abs=Math.abs,ceil=Math.ceil,floor=Math.floor,max=Math.max,min=Math.min,random=Math.random,trunc=Math.trunc||function(it){return(it>0?floor:ceil)(it)};function sameNaN(number){return number!=number}function toInteger(it){return isNaN(it)?0:trunc(it)}function toLength(it){return it>0?min(toInteger(it),MAX_SAFE_INTEGER):0}function toIndex(index,length){var index=toInteger(index);return index<0?max(index+length,0):min(index,length)}function lz(num){return num>9?num:"0"+num}function createReplacer(regExp,replace,isStatic){var replacer=isObject(replace)?function(part){return replace[part]}:replace;return function(it){return String(isStatic?it:this).replace(regExp,replacer)}}function createPointAt(toString){return function(pos){var s=String(assertDefined(this)),i=toInteger(pos),l=s.length,a,b;if(i<0||i>=l)return toString?"":undefined;a=s.charCodeAt(i);return a<55296||a>56319||i+1===l||(b=s.charCodeAt(i+1))<56320||b>57343?toString?s.charAt(i):a:toString?s.slice(i,i+2):(a-55296<<10)+(b-56320)+65536}}var REDUCE_ERROR="Reduce of empty object with no initial value";function assert(condition,msg1,msg2){if(!condition)throw TypeError(msg2?msg1+msg2:msg1)}function assertDefined(it){if(it==undefined)throw TypeError("Function called on null or undefined");return it}function assertFunction(it){assert(isFunction(it),it," is not a function!");return it}function assertObject(it){assert(isObject(it),it," is not an object!");return it}function assertInstance(it,Constructor,name){assert(it instanceof Constructor,name,": use the 'new' operator!")}function descriptor(bitmap,value){return{enumerable:!(bitmap&1),configurable:!(bitmap&2),writable:!(bitmap&4),value:value}}function simpleSet(object,key,value){object[key]=value;return object}function createDefiner(bitmap){return DESC?function(object,key,value){return defineProperty(object,key,descriptor(bitmap,value))}:simpleSet}function uid(key){return SYMBOL+"("+key+")_"+(++sid+random())[TO_STRING](36)}function getWellKnownSymbol(name,setter){return Symbol&&Symbol[name]||(setter?Symbol:safeSymbol)(SYMBOL+DOT+name)}var DESC=!!function(){try{return defineProperty({},"a",{get:function(){return 2}}).a==2}catch(e){}}(),sid=0,hidden=createDefiner(1),set=Symbol?simpleSet:hidden,safeSymbol=Symbol||uid;function assignHidden(target,src){for(var key in src)hidden(target,key,src[key]);return target}var SYMBOL_UNSCOPABLES=getWellKnownSymbol("unscopables"),ArrayUnscopables=ArrayProto[SYMBOL_UNSCOPABLES]||{},SYMBOL_TAG=getWellKnownSymbol(TO_STRING_TAG),SYMBOL_SPECIES=getWellKnownSymbol("species"),SYMBOL_ITERATOR;function setSpecies(C){if(DESC&&(framework||!isNative(C)))defineProperty(C,SYMBOL_SPECIES,{configurable:true,get:returnThis})}var NODE=cof(process)==PROCESS,core={},path=framework?global:core,old=global.core,exportGlobal,FORCED=1,GLOBAL=2,STATIC=4,PROTO=8,BIND=16,WRAP=32;function $define(type,name,source){var key,own,out,exp,isGlobal=type&GLOBAL,target=isGlobal?global:type&STATIC?global[name]:(global[name]||ObjectProto)[PROTOTYPE],exports=isGlobal?core:core[name]||(core[name]={});if(isGlobal)source=name;for(key in source){own=!(type&FORCED)&&target&&key in target&&(!isFunction(target[key])||isNative(target[key]));out=(own?target:source)[key];if(!framework&&isGlobal&&!isFunction(target[key]))exp=source[key];else if(type&BIND&&own)exp=ctx(out,global);else if(type&WRAP&&!framework&&target[key]==out){exp=function(param){return this instanceof out?new out(param):out(param)};exp[PROTOTYPE]=out[PROTOTYPE]}else exp=type&PROTO&&isFunction(out)?ctx(call,out):out;if(framework&&target&&!own){if(isGlobal)target[key]=out;else delete target[key]&&hidden(target,key,out)}if(exports[key]!=out)hidden(exports,key,exp)}}if(typeof module!="undefined"&&module.exports)module.exports=core;else if(isFunction(define)&&define.amd)define(function(){return core});else exportGlobal=true;if(exportGlobal||framework){core.noConflict=function(){global.core=old;return core};global.core=core}SYMBOL_ITERATOR=getWellKnownSymbol(ITERATOR);var ITER=safeSymbol("iter"),KEY=1,VALUE=2,Iterators={},IteratorPrototype={},BUGGY_ITERATORS="keys"in ArrayProto&&!("next"in[].keys());setIterator(IteratorPrototype,returnThis);function setIterator(O,value){hidden(O,SYMBOL_ITERATOR,value);FF_ITERATOR in ArrayProto&&hidden(O,FF_ITERATOR,value)}function createIterator(Constructor,NAME,next,proto){Constructor[PROTOTYPE]=create(proto||IteratorPrototype,{next:descriptor(1,next)});setToStringTag(Constructor,NAME+" Iterator")}function defineIterator(Constructor,NAME,value,DEFAULT){var proto=Constructor[PROTOTYPE],iter=get(proto,SYMBOL_ITERATOR)||get(proto,FF_ITERATOR)||DEFAULT&&get(proto,DEFAULT)||value;if(framework){setIterator(proto,iter);if(iter!==value){var iterProto=getPrototypeOf(iter.call(new Constructor));setToStringTag(iterProto,NAME+" Iterator",true);has(proto,FF_ITERATOR)&&setIterator(iterProto,returnThis)}}Iterators[NAME]=iter;Iterators[NAME+" Iterator"]=returnThis;return iter}function defineStdIterators(Base,NAME,Constructor,next,DEFAULT,IS_SET){function createIter(kind){return function(){return new Constructor(this,kind)}}createIterator(Constructor,NAME,next);var entries=createIter(KEY+VALUE),values=createIter(VALUE);if(DEFAULT==VALUE)values=defineIterator(Base,NAME,values,"values");else entries=defineIterator(Base,NAME,entries,"entries");if(DEFAULT){$define(PROTO+FORCED*BUGGY_ITERATORS,NAME,{entries:entries,keys:IS_SET?values:createIter(KEY),values:values})}}function iterResult(done,value){return{value:value,done:!!done}}function isIterable(it){var O=Object(it),Symbol=global[SYMBOL],hasExt=(Symbol&&Symbol[ITERATOR]||FF_ITERATOR)in O;return hasExt||SYMBOL_ITERATOR in O||has(Iterators,classof(O))}function getIterator(it){var Symbol=global[SYMBOL],ext=it[Symbol&&Symbol[ITERATOR]||FF_ITERATOR],getIter=ext||it[SYMBOL_ITERATOR]||Iterators[classof(it)];return assertObject(getIter.call(it))}function stepCall(fn,value,entries){return entries?invoke(fn,value):fn(value)}function checkDangerIterClosing(fn){var danger=true;var O={next:function(){throw 1},"return":function(){danger=false}};O[SYMBOL_ITERATOR]=returnThis;try{fn(O)}catch(e){}return danger}function closeIterator(iterator){var ret=iterator["return"];if(ret!==undefined)ret.call(iterator)}function safeIterClose(exec,iterator){try{exec(iterator)}catch(e){closeIterator(iterator);throw e}}function forOf(iterable,entries,fn,that){safeIterClose(function(iterator){var f=ctx(fn,that,entries?2:1),step;while(!(step=iterator.next()).done)if(stepCall(f,step.value,entries)===false){return closeIterator(iterator)}},getIterator(iterable))}!function(TAG,SymbolRegistry,AllSymbols,setter){if(!isNative(Symbol)){Symbol=function(description){assert(!(this instanceof Symbol),SYMBOL+" is not a "+CONSTRUCTOR);var tag=uid(description),sym=set(create(Symbol[PROTOTYPE]),TAG,tag);AllSymbols[tag]=sym;DESC&&setter&&defineProperty(ObjectProto,tag,{configurable:true,set:function(value){hidden(this,tag,value)}});return sym};hidden(Symbol[PROTOTYPE],TO_STRING,function(){return this[TAG]})}$define(GLOBAL+WRAP,{Symbol:Symbol});var symbolStatics={"for":function(key){return has(SymbolRegistry,key+="")?SymbolRegistry[key]:SymbolRegistry[key]=Symbol(key)},iterator:SYMBOL_ITERATOR||getWellKnownSymbol(ITERATOR),keyFor:part.call(keyOf,SymbolRegistry),species:SYMBOL_SPECIES,toStringTag:SYMBOL_TAG=getWellKnownSymbol(TO_STRING_TAG,true),unscopables:SYMBOL_UNSCOPABLES,pure:safeSymbol,set:set,useSetter:function(){setter=true},useSimple:function(){setter=false}};forEach.call(array("hasInstance,isConcatSpreadable,match,replace,search,split,toPrimitive"),function(it){symbolStatics[it]=getWellKnownSymbol(it)});$define(STATIC,SYMBOL,symbolStatics);setToStringTag(Symbol,SYMBOL);$define(STATIC+FORCED*!isNative(Symbol),OBJECT,{getOwnPropertyNames:function(it){var names=getNames(toObject(it)),result=[],key,i=0;while(names.length>i)has(AllSymbols,key=names[i++])||result.push(key);return result},getOwnPropertySymbols:function(it){var names=getNames(toObject(it)),result=[],key,i=0;while(names.length>i)has(AllSymbols,key=names[i++])&&result.push(AllSymbols[key]);return result}});setToStringTag(Math,MATH,true);setToStringTag(global.JSON,"JSON",true)}(safeSymbol("tag"),{},{},true);!function(){var objectStatic={assign:assign,is:function(x,y){return x===y?x!==0||1/x===1/y:x!=x&&y!=y}};"__proto__"in ObjectProto&&function(buggy,set){try{set=ctx(call,getOwnDescriptor(ObjectProto,"__proto__").set,2);set({},ArrayProto)}catch(e){buggy=true}objectStatic.setPrototypeOf=setPrototypeOf=setPrototypeOf||function(O,proto){assertObject(O);assert(proto===null||isObject(proto),proto,": can't set as prototype!");if(buggy)O.__proto__=proto;else set(O,proto);return O}}();$define(STATIC,OBJECT,objectStatic)}();!function(tmp){tmp[SYMBOL_TAG]=DOT;if(cof(tmp)!=DOT)hidden(ObjectProto,TO_STRING,function(){return"[object "+classof(this)+"]"})}({});!function(){function wrapObjectMethod(key,MODE){var fn=Object[key],exp=core[OBJECT][key],f=0,o={};if(!exp||isNative(exp)){o[key]=MODE==1?function(it){return isObject(it)?fn(it):it}:MODE==2?function(it){return isObject(it)?fn(it):true}:MODE==3?function(it){return isObject(it)?fn(it):false}:MODE==4?function(it,key){return fn(toObject(it),key)}:function(it){return fn(toObject(it))};try{fn(DOT)}catch(e){f=1}$define(STATIC+FORCED*f,OBJECT,o)}}wrapObjectMethod("freeze",1);wrapObjectMethod("seal",1);wrapObjectMethod("preventExtensions",1);wrapObjectMethod("isFrozen",2);wrapObjectMethod("isSealed",2);wrapObjectMethod("isExtensible",3);wrapObjectMethod("getOwnPropertyDescriptor",4);wrapObjectMethod("getPrototypeOf");wrapObjectMethod("keys");wrapObjectMethod("getOwnPropertyNames")}();!function(NAME){NAME in FunctionProto||DESC&&defineProperty(FunctionProto,NAME,{configurable:true,get:function(){var match=String(this).match(/^\s*function ([^ (]*)/),name=match?match[1]:"";has(this,NAME)||defineProperty(this,NAME,descriptor(5,name));return name},set:function(value){has(this,NAME)||defineProperty(this,NAME,descriptor(0,value))}})}("name");Number("0o1")&&Number("0b1")||function(_Number,NumberProto){function toNumber(it){if(isObject(it))it=toPrimitive(it);if(typeof it=="string"&&it.length>2&&it.charCodeAt(0)==48){var binary=false;switch(it.charCodeAt(1)){case 66:case 98:binary=true;case 79:case 111:return parseInt(it.slice(2),binary?2:8)}}return+it}function toPrimitive(it){var fn,val;if(isFunction(fn=it.valueOf)&&!isObject(val=fn.call(it)))return val;if(isFunction(fn=it[TO_STRING])&&!isObject(val=fn.call(it)))return val;throw TypeError("Can't convert object to number")}Number=function Number(it){return this instanceof Number?new _Number(toNumber(it)):toNumber(it)};forEach.call(DESC?getNames(_Number):array("MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY"),function(key){key in Number||defineProperty(Number,key,getOwnDescriptor(_Number,key))});Number[PROTOTYPE]=NumberProto;NumberProto[CONSTRUCTOR]=Number;hidden(global,NUMBER,Number)}(Number,Number[PROTOTYPE]);!function(isInteger){$define(STATIC,NUMBER,{EPSILON:pow(2,-52),isFinite:function(it){return typeof it=="number"&&isFinite(it)},isInteger:isInteger,isNaN:sameNaN,isSafeInteger:function(number){return isInteger(number)&&abs(number)<=MAX_SAFE_INTEGER},MAX_SAFE_INTEGER:MAX_SAFE_INTEGER,MIN_SAFE_INTEGER:-MAX_SAFE_INTEGER,parseFloat:parseFloat,parseInt:parseInt})}(Number.isInteger||function(it){return!isObject(it)&&isFinite(it)&&floor(it)===it});!function(){var E=Math.E,exp=Math.exp,log=Math.log,sqrt=Math.sqrt,sign=Math.sign||function(x){return(x=+x)==0||x!=x?x:x<0?-1:1};function asinh(x){return!isFinite(x=+x)||x==0?x:x<0?-asinh(-x):log(x+sqrt(x*x+1))}function expm1(x){return(x=+x)==0?x:x>-1e-6&&x<1e-6?x+x*x/2:exp(x)-1}$define(STATIC,MATH,{acosh:function(x){return(x=+x)<1?NaN:isFinite(x)?log(x/E+sqrt(x+1)*sqrt(x-1)/E)+1:x},asinh:asinh,atanh:function(x){return(x=+x)==0?x:log((1+x)/(1-x))/2},cbrt:function(x){return sign(x=+x)*pow(abs(x),1/3)},clz32:function(x){return(x>>>=0)?32-x[TO_STRING](2).length:32},cosh:function(x){return(exp(x=+x)+exp(-x))/2},expm1:expm1,fround:function(x){return new Float32Array([x])[0]},hypot:function(value1,value2){var sum=0,len1=arguments.length,len2=len1,args=Array(len1),larg=-Infinity,arg;while(len1--){arg=args[len1]=+arguments[len1];if(arg==Infinity||arg==-Infinity)return Infinity;if(arg>larg)larg=arg}larg=arg||1;while(len2--)sum+=pow(args[len2]/larg,2);return larg*sqrt(sum)},imul:function(x,y){var UInt16=65535,xn=+x,yn=+y,xl=UInt16&xn,yl=UInt16&yn;return 0|xl*yl+((UInt16&xn>>>16)*yl+xl*(UInt16&yn>>>16)<<16>>>0)},log1p:function(x){return(x=+x)>-1e-8&&x<1e-8?x-x*x/2:log(1+x)},log10:function(x){return log(x)/Math.LN10},log2:function(x){return log(x)/Math.LN2},sign:sign,sinh:function(x){return abs(x=+x)<1?(expm1(x)-expm1(-x))/2:(exp(x-1)-exp(-x-1))*(E/2)},tanh:function(x){var a=expm1(x=+x),b=expm1(-x);return a==Infinity?1:b==Infinity?-1:(a-b)/(exp(x)+exp(-x))},trunc:trunc})}();!function(fromCharCode){function assertNotRegExp(it){if(cof(it)==REGEXP)throw TypeError()}$define(STATIC,STRING,{fromCodePoint:function(x){var res=[],len=arguments.length,i=0,code;while(len>i){code=+arguments[i++];if(toIndex(code,1114111)!==code)throw RangeError(code+" is not a valid code point");res.push(code<65536?fromCharCode(code):fromCharCode(((code-=65536)>>10)+55296,code%1024+56320))}return res.join("")},raw:function(callSite){var raw=toObject(callSite.raw),len=toLength(raw.length),sln=arguments.length,res=[],i=0;while(len>i){res.push(String(raw[i++]));if(i<sln)res.push(String(arguments[i]))}return res.join("")}});$define(PROTO,STRING,{codePointAt:createPointAt(false),endsWith:function(searchString){assertNotRegExp(searchString);var that=String(assertDefined(this)),endPosition=arguments[1],len=toLength(that.length),end=endPosition===undefined?len:min(toLength(endPosition),len);searchString+="";return that.slice(end-searchString.length,end)===searchString},includes:function(searchString){assertNotRegExp(searchString);return!!~String(assertDefined(this)).indexOf(searchString,arguments[1])},repeat:function(count){var str=String(assertDefined(this)),res="",n=toInteger(count);if(0>n||n==Infinity)throw RangeError("Count can't be negative");for(;n>0;(n>>>=1)&&(str+=str))if(n&1)res+=str;return res},startsWith:function(searchString){assertNotRegExp(searchString);var that=String(assertDefined(this)),index=toLength(min(arguments[1],that.length));searchString+="";return that.slice(index,index+searchString.length)===searchString}})}(String.fromCharCode);!function(){$define(STATIC+FORCED*checkDangerIterClosing(Array.from),ARRAY,{from:function(arrayLike){var O=Object(assertDefined(arrayLike)),mapfn=arguments[1],mapping=mapfn!==undefined,f=mapping?ctx(mapfn,arguments[2],2):undefined,index=0,length,result,step;if(isIterable(O)){result=new(generic(this,Array));safeIterClose(function(iterator){for(;!(step=iterator.next()).done;index++){result[index]=mapping?f(step.value,index):step.value}},getIterator(O))}else{result=new(generic(this,Array))(length=toLength(O.length));for(;length>index;index++){result[index]=mapping?f(O[index],index):O[index]}}result.length=index;return result}});$define(STATIC,ARRAY,{of:function(){var index=0,length=arguments.length,result=new(generic(this,Array))(length);while(length>index)result[index]=arguments[index++];result.length=length;return result}});setSpecies(Array)}();!function(){$define(PROTO,ARRAY,{copyWithin:function(target,start){var O=Object(assertDefined(this)),len=toLength(O.length),to=toIndex(target,len),from=toIndex(start,len),end=arguments[2],fin=end===undefined?len:toIndex(end,len),count=min(fin-from,len-to),inc=1;if(from<to&&to<from+count){inc=-1;from=from+count-1;to=to+count-1}while(count-->0){if(from in O)O[to]=O[from];else delete O[to];to+=inc;from+=inc}return O},fill:function(value){var O=Object(assertDefined(this)),length=toLength(O.length),index=toIndex(arguments[1],length),end=arguments[2],endPos=end===undefined?length:toIndex(end,length);while(endPos>index)O[index++]=value;return O},find:createArrayMethod(5),findIndex:createArrayMethod(6)});if(framework){forEach.call(array("find,findIndex,fill,copyWithin,entries,keys,values"),function(it){ArrayUnscopables[it]=true});SYMBOL_UNSCOPABLES in ArrayProto||hidden(ArrayProto,SYMBOL_UNSCOPABLES,ArrayUnscopables)}}();!function(at){defineStdIterators(Array,ARRAY,function(iterated,kind){set(this,ITER,{o:toObject(iterated),i:0,k:kind})},function(){var iter=this[ITER],O=iter.o,kind=iter.k,index=iter.i++;if(!O||index>=O.length){iter.o=undefined;return iterResult(1)}if(kind==KEY)return iterResult(0,index);if(kind==VALUE)return iterResult(0,O[index]);return iterResult(0,[index,O[index]])},VALUE);Iterators[ARGUMENTS]=Iterators[ARRAY];defineStdIterators(String,STRING,function(iterated){set(this,ITER,{o:String(iterated),i:0})},function(){var iter=this[ITER],O=iter.o,index=iter.i,point;if(index>=O.length)return iterResult(1);point=at.call(O,index);iter.i+=point.length;return iterResult(0,point)})}(createPointAt(true));DESC&&!function(RegExpProto,_RegExp){if(!function(){try{return RegExp(/a/g,"i")=="/a/i"}catch(e){}}()){RegExp=function RegExp(pattern,flags){return new _RegExp(cof(pattern)==REGEXP&&flags!==undefined?pattern.source:pattern,flags)};forEach.call(getNames(_RegExp),function(key){key in RegExp||defineProperty(RegExp,key,{configurable:true,get:function(){return _RegExp[key]},set:function(it){_RegExp[key]=it}})});RegExpProto[CONSTRUCTOR]=RegExp;RegExp[PROTOTYPE]=RegExpProto;hidden(global,REGEXP,RegExp)}if(/./g.flags!="g")defineProperty(RegExpProto,"flags",{configurable:true,get:createReplacer(/^.*\/(\w*)$/,"$1")});setSpecies(RegExp)}(RegExp[PROTOTYPE],RegExp);isFunction(setImmediate)&&isFunction(clearImmediate)||function(ONREADYSTATECHANGE){var postMessage=global.postMessage,addEventListener=global.addEventListener,MessageChannel=global.MessageChannel,counter=0,queue={},defer,channel,port;setImmediate=function(fn){var args=[],i=1;while(arguments.length>i)args.push(arguments[i++]);queue[++counter]=function(){invoke(isFunction(fn)?fn:Function(fn),args)};defer(counter);return counter};clearImmediate=function(id){delete queue[id]};function run(id){if(has(queue,id)){var fn=queue[id];delete queue[id];fn()}}function listner(event){run(event.data)}if(NODE){defer=function(id){nextTick(part.call(run,id))}}else if(addEventListener&&isFunction(postMessage)&&!global.importScripts){defer=function(id){postMessage(id,"*")};addEventListener("message",listner,false)}else if(isFunction(MessageChannel)){channel=new MessageChannel;port=channel.port2;channel.port1.onmessage=listner;defer=ctx(port.postMessage,port,1)}else if(document&&ONREADYSTATECHANGE in document[CREATE_ELEMENT]("script")){defer=function(id){html.appendChild(document[CREATE_ELEMENT]("script"))[ONREADYSTATECHANGE]=function(){html.removeChild(this);run(id)}}}else{defer=function(id){setTimeout(run,0,id)}}}("onreadystatechange");$define(GLOBAL+BIND,{setImmediate:setImmediate,clearImmediate:clearImmediate});!function(Promise,test){isFunction(Promise)&&isFunction(Promise.resolve)&&Promise.resolve(test=new Promise(function(){}))==test||function(asap,RECORD){function isThenable(it){var then;if(isObject(it))then=it.then;return isFunction(then)?then:false}function handledRejectionOrHasOnRejected(promise){var record=promise[RECORD],chain=record.c,i=0,react;if(record.h)return true;while(chain.length>i){react=chain[i++];if(react.fail||handledRejectionOrHasOnRejected(react.P))return true}}function notify(record,reject){var chain=record.c;if(reject||chain.length)asap(function(){var promise=record.p,value=record.v,ok=record.s==1,i=0;if(reject&&!handledRejectionOrHasOnRejected(promise)){setTimeout(function(){if(!handledRejectionOrHasOnRejected(promise)){if(NODE){if(!process.emit("unhandledRejection",value,promise)){}}else if(isFunction(console.error)){console.error("Unhandled promise rejection",value)}}},1e3)}else while(chain.length>i)!function(react){var cb=ok?react.ok:react.fail,ret,then;try{if(cb){if(!ok)record.h=true;ret=cb===true?value:cb(value);if(ret===react.P){react.rej(TypeError(PROMISE+"-chain cycle"))}else if(then=isThenable(ret)){then.call(ret,react.res,react.rej)}else react.res(ret)}else react.rej(value)}catch(err){react.rej(err)}}(chain[i++]);chain.length=0})}function resolve(value){var record=this,then,wrapper;if(record.d)return;record.d=true;record=record.r||record;try{if(then=isThenable(value)){wrapper={r:record,d:false};then.call(value,ctx(resolve,wrapper,1),ctx(reject,wrapper,1))}else{record.v=value;record.s=1;notify(record)}}catch(err){reject.call(wrapper||{r:record,d:false},err)}}function reject(value){var record=this;if(record.d)return;record.d=true;record=record.r||record;record.v=value;record.s=2;notify(record,true)}function getConstructor(C){var S=assertObject(C)[SYMBOL_SPECIES];return S!=undefined?S:C}Promise=function(executor){assertFunction(executor);assertInstance(this,Promise,PROMISE);var record={p:this,c:[],s:0,d:false,v:undefined,h:false};hidden(this,RECORD,record);try{executor(ctx(resolve,record,1),ctx(reject,record,1))}catch(err){reject.call(record,err)}};assignHidden(Promise[PROTOTYPE],{then:function(onFulfilled,onRejected){var S=assertObject(assertObject(this)[CONSTRUCTOR])[SYMBOL_SPECIES];var react={ok:isFunction(onFulfilled)?onFulfilled:true,fail:isFunction(onRejected)?onRejected:false},P=react.P=new(S!=undefined?S:Promise)(function(resolve,reject){react.res=assertFunction(resolve);react.rej=assertFunction(reject)}),record=this[RECORD];record.c.push(react);record.s&&notify(record);return P},"catch":function(onRejected){return this.then(undefined,onRejected)}});assignHidden(Promise,{all:function(iterable){var Promise=getConstructor(this),values=[];return new Promise(function(resolve,reject){forOf(iterable,false,push,values);var remaining=values.length,results=Array(remaining);if(remaining)forEach.call(values,function(promise,index){Promise.resolve(promise).then(function(value){results[index]=value;--remaining||resolve(results)},reject)});else resolve(results)})},race:function(iterable){var Promise=getConstructor(this);return new Promise(function(resolve,reject){forOf(iterable,false,function(promise){Promise.resolve(promise).then(resolve,reject)})})},reject:function(r){return new(getConstructor(this))(function(resolve,reject){reject(r)})},resolve:function(x){return isObject(x)&&RECORD in x&&getPrototypeOf(x)===this[PROTOTYPE]?x:new(getConstructor(this))(function(resolve,reject){resolve(x)})}})}(nextTick||setImmediate,safeSymbol("record"));setToStringTag(Promise,PROMISE);setSpecies(Promise);$define(GLOBAL+FORCED*!isNative(Promise),{Promise:Promise})}(global[PROMISE]);!function(){var UID=safeSymbol("uid"),O1=safeSymbol("O1"),WEAK=safeSymbol("weak"),LEAK=safeSymbol("leak"),LAST=safeSymbol("last"),FIRST=safeSymbol("first"),SIZE=DESC?safeSymbol("size"):"size",uid=0,tmp={};function getCollection(C,NAME,methods,commonMethods,isMap,isWeak){var ADDER=isMap?"set":"add",proto=C&&C[PROTOTYPE],O={};function initFromIterable(that,iterable){if(iterable!=undefined)forOf(iterable,isMap,that[ADDER],that);return that}function fixSVZ(key,chain){var method=proto[key];if(framework)proto[key]=function(a,b){var result=method.call(this,a===0?0:a,b);return chain?this:result}}if(!isNative(C)||!(isWeak||!BUGGY_ITERATORS&&has(proto,FOR_EACH)&&has(proto,"entries"))){C=isWeak?function(iterable){assertInstance(this,C,NAME);set(this,UID,uid++);initFromIterable(this,iterable)}:function(iterable){var that=this;assertInstance(that,C,NAME);set(that,O1,create(null));set(that,SIZE,0);set(that,LAST,undefined);set(that,FIRST,undefined);initFromIterable(that,iterable)};assignHidden(assignHidden(C[PROTOTYPE],methods),commonMethods);isWeak||!DESC||defineProperty(C[PROTOTYPE],"size",{get:function(){return assertDefined(this[SIZE])}})}else{var Native=C,inst=new C,chain=inst[ADDER](isWeak?{}:-0,1),buggyZero;if(checkDangerIterClosing(function(O){new C(O)})){C=function(iterable){assertInstance(this,C,NAME);return initFromIterable(new Native,iterable)};C[PROTOTYPE]=proto;if(framework)proto[CONSTRUCTOR]=C}isWeak||inst[FOR_EACH](function(val,key){buggyZero=1/key===-Infinity});if(buggyZero){fixSVZ("delete");fixSVZ("has");isMap&&fixSVZ("get")}if(buggyZero||chain!==inst)fixSVZ(ADDER,true)}setToStringTag(C,NAME);setSpecies(C);O[NAME]=C;$define(GLOBAL+WRAP+FORCED*!isNative(C),O);isWeak||defineStdIterators(C,NAME,function(iterated,kind){set(this,ITER,{o:iterated,k:kind})},function(){var iter=this[ITER],kind=iter.k,entry=iter.l;while(entry&&entry.r)entry=entry.p;if(!iter.o||!(iter.l=entry=entry?entry.n:iter.o[FIRST])){iter.o=undefined;return iterResult(1)}if(kind==KEY)return iterResult(0,entry.k);if(kind==VALUE)return iterResult(0,entry.v);return iterResult(0,[entry.k,entry.v])},isMap?KEY+VALUE:VALUE,!isMap);return C}function fastKey(it,create){if(!isObject(it))return(typeof it=="string"?"S":"P")+it;if(isFrozen(it))return"F";if(!has(it,UID)){if(!create)return"E";hidden(it,UID,++uid)}return"O"+it[UID]}function getEntry(that,key){var index=fastKey(key),entry;if(index!="F")return that[O1][index];for(entry=that[FIRST];entry;entry=entry.n){if(entry.k==key)return entry}}function def(that,key,value){var entry=getEntry(that,key),prev,index;if(entry)entry.v=value;else{that[LAST]=entry={i:index=fastKey(key,true),k:key,v:value,p:prev=that[LAST],n:undefined,r:false};if(!that[FIRST])that[FIRST]=entry;if(prev)prev.n=entry;that[SIZE]++;if(index!="F")that[O1][index]=entry}return that}var collectionMethods={clear:function(){for(var that=this,data=that[O1],entry=that[FIRST];entry;entry=entry.n){entry.r=true;
if(entry.p)entry.p=entry.p.n=undefined;delete data[entry.i]}that[FIRST]=that[LAST]=undefined;that[SIZE]=0},"delete":function(key){var that=this,entry=getEntry(that,key);if(entry){var next=entry.n,prev=entry.p;delete that[O1][entry.i];entry.r=true;if(prev)prev.n=next;if(next)next.p=prev;if(that[FIRST]==entry)that[FIRST]=next;if(that[LAST]==entry)that[LAST]=prev;that[SIZE]--}return!!entry},forEach:function(callbackfn){var f=ctx(callbackfn,arguments[1],3),entry;while(entry=entry?entry.n:this[FIRST]){f(entry.v,entry.k,this);while(entry&&entry.r)entry=entry.p}},has:function(key){return!!getEntry(this,key)}};Map=getCollection(Map,MAP,{get:function(key){var entry=getEntry(this,key);return entry&&entry.v},set:function(key,value){return def(this,key===0?0:key,value)}},collectionMethods,true);Set=getCollection(Set,SET,{add:function(value){return def(this,value=value===0?0:value,value)}},collectionMethods);function defWeak(that,key,value){if(isFrozen(assertObject(key)))leakStore(that).set(key,value);else{has(key,WEAK)||hidden(key,WEAK,{});key[WEAK][that[UID]]=value}return that}function leakStore(that){return that[LEAK]||hidden(that,LEAK,new Map)[LEAK]}var weakMethods={"delete":function(key){if(!isObject(key))return false;if(isFrozen(key))return leakStore(this)["delete"](key);return has(key,WEAK)&&has(key[WEAK],this[UID])&&delete key[WEAK][this[UID]]},has:function(key){if(!isObject(key))return false;if(isFrozen(key))return leakStore(this).has(key);return has(key,WEAK)&&has(key[WEAK],this[UID])}};WeakMap=getCollection(WeakMap,WEAKMAP,{get:function(key){if(isObject(key)){if(isFrozen(key))return leakStore(this).get(key);if(has(key,WEAK))return key[WEAK][this[UID]]}},set:function(key,value){return defWeak(this,key,value)}},weakMethods,true,true);if(framework&&(new WeakMap).set(Object.freeze(tmp),7).get(tmp)!=7){forEach.call(array("delete,has,get,set"),function(key){var method=WeakMap[PROTOTYPE][key];WeakMap[PROTOTYPE][key]=function(a,b){if(isObject(a)&&isFrozen(a)){var result=leakStore(this)[key](a,b);return key=="set"?this:result}return method.call(this,a,b)}})}WeakSet=getCollection(WeakSet,WEAKSET,{add:function(value){return defWeak(this,value,true)}},weakMethods,false,true)}();!function(){function Enumerate(iterated){var keys=[],key;for(key in iterated)keys.push(key);set(this,ITER,{o:iterated,a:keys,i:0})}createIterator(Enumerate,OBJECT,function(){var iter=this[ITER],keys=iter.a,key;do{if(iter.i>=keys.length)return iterResult(1)}while(!((key=keys[iter.i++])in iter.o));return iterResult(0,key)});function wrap(fn){return function(it){assertObject(it);try{return fn.apply(undefined,arguments),true}catch(e){return false}}}function reflectGet(target,propertyKey){var receiver=arguments.length<3?target:arguments[2],desc=getOwnDescriptor(assertObject(target),propertyKey),proto;if(desc)return has(desc,"value")?desc.value:desc.get===undefined?undefined:desc.get.call(receiver);return isObject(proto=getPrototypeOf(target))?reflectGet(proto,propertyKey,receiver):undefined}function reflectSet(target,propertyKey,V){var receiver=arguments.length<4?target:arguments[3],ownDesc=getOwnDescriptor(assertObject(target),propertyKey),existingDescriptor,proto;if(!ownDesc){if(isObject(proto=getPrototypeOf(target))){return reflectSet(proto,propertyKey,V,receiver)}ownDesc=descriptor(0)}if(has(ownDesc,"value")){if(ownDesc.writable===false||!isObject(receiver))return false;existingDescriptor=getOwnDescriptor(receiver,propertyKey)||descriptor(0);existingDescriptor.value=V;return defineProperty(receiver,propertyKey,existingDescriptor),true}return ownDesc.set===undefined?false:(ownDesc.set.call(receiver,V),true)}var isExtensible=Object.isExtensible||returnIt;var reflect={apply:ctx(call,apply,3),construct:function(target,argumentsList){var proto=assertFunction(arguments.length<3?target:arguments[2])[PROTOTYPE],instance=create(isObject(proto)?proto:ObjectProto),result=apply.call(target,instance,argumentsList);return isObject(result)?result:instance},defineProperty:wrap(defineProperty),deleteProperty:function(target,propertyKey){var desc=getOwnDescriptor(assertObject(target),propertyKey);return desc&&!desc.configurable?false:delete target[propertyKey]},enumerate:function(target){return new Enumerate(assertObject(target))},get:reflectGet,getOwnPropertyDescriptor:function(target,propertyKey){return getOwnDescriptor(assertObject(target),propertyKey)},getPrototypeOf:function(target){return getPrototypeOf(assertObject(target))},has:function(target,propertyKey){return propertyKey in target},isExtensible:function(target){return!!isExtensible(assertObject(target))},ownKeys:ownKeys,preventExtensions:wrap(Object.preventExtensions||returnIt),set:reflectSet};if(setPrototypeOf)reflect.setPrototypeOf=function(target,proto){return setPrototypeOf(assertObject(target),proto),true};$define(GLOBAL,{Reflect:{}});$define(STATIC,"Reflect",reflect)}();!function(){$define(PROTO,ARRAY,{includes:createArrayContains(true)});$define(PROTO,STRING,{at:createPointAt(true)});function createObjectToArray(isEntries){return function(object){var O=toObject(object),keys=getKeys(object),length=keys.length,i=0,result=Array(length),key;if(isEntries)while(length>i)result[i]=[key=keys[i++],O[key]];else while(length>i)result[i]=O[keys[i++]];return result}}$define(STATIC,OBJECT,{getOwnPropertyDescriptors:function(object){var O=toObject(object),result={};forEach.call(ownKeys(O),function(key){defineProperty(result,key,descriptor(0,getOwnDescriptor(O,key)))});return result},values:createObjectToArray(false),entries:createObjectToArray(true)});$define(STATIC,REGEXP,{escape:createReplacer(/([\\\-[\]{}()*+?.,^$|])/g,"\\$1",true)})}();!function(REFERENCE){REFERENCE_GET=getWellKnownSymbol(REFERENCE+"Get",true);var REFERENCE_SET=getWellKnownSymbol(REFERENCE+SET,true),REFERENCE_DELETE=getWellKnownSymbol(REFERENCE+"Delete",true);$define(STATIC,SYMBOL,{referenceGet:REFERENCE_GET,referenceSet:REFERENCE_SET,referenceDelete:REFERENCE_DELETE});hidden(FunctionProto,REFERENCE_GET,returnThis);function setMapMethods(Constructor){if(Constructor){var MapProto=Constructor[PROTOTYPE];hidden(MapProto,REFERENCE_GET,MapProto.get);hidden(MapProto,REFERENCE_SET,MapProto.set);hidden(MapProto,REFERENCE_DELETE,MapProto["delete"])}}setMapMethods(Map);setMapMethods(WeakMap)}("reference");!function(arrayStatics){function setArrayStatics(keys,length){forEach.call(array(keys),function(key){if(key in ArrayProto)arrayStatics[key]=ctx(call,ArrayProto[key],length)})}setArrayStatics("pop,reverse,shift,keys,values,entries",1);setArrayStatics("indexOf,every,some,forEach,map,filter,find,findIndex,includes",3);setArrayStatics("join,slice,concat,push,splice,unshift,sort,lastIndexOf,"+"reduce,reduceRight,copyWithin,fill,turn");$define(STATIC,ARRAY,arrayStatics)}({});!function(NodeList){if(framework&&NodeList&&!(SYMBOL_ITERATOR in NodeList[PROTOTYPE])){hidden(NodeList[PROTOTYPE],SYMBOL_ITERATOR,Iterators[ARRAY])}Iterators.NodeList=Iterators[ARRAY]}(global.NodeList)}(typeof self!="undefined"&&self.Math===Math?self:Function("return this")(),true)},{}],3:[function(require,module,exports){(function(global){!function(global){"use strict";var hasOwn=Object.prototype.hasOwnProperty;var undefined;var iteratorSymbol=typeof Symbol==="function"&&Symbol.iterator||"@@iterator";var inModule=typeof module==="object";var runtime=global.regeneratorRuntime;if(runtime){if(inModule){module.exports=runtime}return}runtime=global.regeneratorRuntime=inModule?module.exports:{};function wrap(innerFn,outerFn,self,tryLocsList){return new Generator(innerFn,outerFn,self||null,tryLocsList||[])}runtime.wrap=wrap;function tryCatch(fn,obj,arg){try{return{type:"normal",arg:fn.call(obj,arg)}}catch(err){return{type:"throw",arg:err}}}var GenStateSuspendedStart="suspendedStart";var GenStateSuspendedYield="suspendedYield";var GenStateExecuting="executing";var GenStateCompleted="completed";var ContinueSentinel={};function GeneratorFunction(){}function GeneratorFunctionPrototype(){}var Gp=GeneratorFunctionPrototype.prototype=Generator.prototype;GeneratorFunction.prototype=Gp.constructor=GeneratorFunctionPrototype;GeneratorFunctionPrototype.constructor=GeneratorFunction;GeneratorFunction.displayName="GeneratorFunction";runtime.isGeneratorFunction=function(genFun){var ctor=typeof genFun==="function"&&genFun.constructor;return ctor?ctor===GeneratorFunction||(ctor.displayName||ctor.name)==="GeneratorFunction":false};runtime.mark=function(genFun){genFun.__proto__=GeneratorFunctionPrototype;genFun.prototype=Object.create(Gp);return genFun};runtime.async=function(innerFn,outerFn,self,tryLocsList){return new Promise(function(resolve,reject){var generator=wrap(innerFn,outerFn,self,tryLocsList);var callNext=step.bind(generator.next);var callThrow=step.bind(generator["throw"]);function step(arg){var record=tryCatch(this,null,arg);if(record.type==="throw"){reject(record.arg);return}var info=record.arg;if(info.done){resolve(info.value)}else{Promise.resolve(info.value).then(callNext,callThrow)}}callNext()})};function Generator(innerFn,outerFn,self,tryLocsList){var generator=outerFn?Object.create(outerFn.prototype):this;var context=new Context(tryLocsList);var state=GenStateSuspendedStart;function invoke(method,arg){if(state===GenStateExecuting){throw new Error("Generator is already running")}if(state===GenStateCompleted){return doneResult()}while(true){var delegate=context.delegate;if(delegate){var record=tryCatch(delegate.iterator[method],delegate.iterator,arg);if(record.type==="throw"){context.delegate=null;method="throw";arg=record.arg;continue}method="next";arg=undefined;var info=record.arg;if(info.done){context[delegate.resultName]=info.value;context.next=delegate.nextLoc}else{state=GenStateSuspendedYield;return info}context.delegate=null}if(method==="next"){if(state===GenStateSuspendedStart&&typeof arg!=="undefined"){throw new TypeError("attempt to send "+JSON.stringify(arg)+" to newborn generator")}if(state===GenStateSuspendedYield){context.sent=arg}else{delete context.sent}}else if(method==="throw"){if(state===GenStateSuspendedStart){state=GenStateCompleted;throw arg}if(context.dispatchException(arg)){method="next";arg=undefined}}else if(method==="return"){context.abrupt("return",arg)}state=GenStateExecuting;var record=tryCatch(innerFn,self,context);if(record.type==="normal"){state=context.done?GenStateCompleted:GenStateSuspendedYield;var info={value:record.arg,done:context.done};if(record.arg===ContinueSentinel){if(context.delegate&&method==="next"){arg=undefined}}else{return info}}else if(record.type==="throw"){state=GenStateCompleted;if(method==="next"){context.dispatchException(record.arg)}else{arg=record.arg}}}}generator.next=invoke.bind(generator,"next");generator["throw"]=invoke.bind(generator,"throw");generator["return"]=invoke.bind(generator,"return");return generator}Gp[iteratorSymbol]=function(){return this};Gp.toString=function(){return"[object Generator]"};function pushTryEntry(locs){var entry={tryLoc:locs[0]};if(1 in locs){entry.catchLoc=locs[1]}if(2 in locs){entry.finallyLoc=locs[2];entry.afterLoc=locs[3]}this.tryEntries.push(entry)}function resetTryEntry(entry){var record=entry.completion||{};record.type="normal";delete record.arg;entry.completion=record}function Context(tryLocsList){this.tryEntries=[{tryLoc:"root"}];tryLocsList.forEach(pushTryEntry,this);this.reset()}runtime.keys=function(object){var keys=[];for(var key in object){keys.push(key)}keys.reverse();return function next(){while(keys.length){var key=keys.pop();if(key in object){next.value=key;next.done=false;return next}}next.done=true;return next}};function values(iterable){if(iterable){var iteratorMethod=iterable[iteratorSymbol];if(iteratorMethod){return iteratorMethod.call(iterable)}if(typeof iterable.next==="function"){return iterable}if(!isNaN(iterable.length)){var i=-1,next=function next(){while(++i<iterable.length){if(hasOwn.call(iterable,i)){next.value=iterable[i];next.done=false;return next}}next.value=undefined;next.done=true;return next};return next.next=next}}return{next:doneResult}}runtime.values=values;function doneResult(){return{value:undefined,done:true}}Context.prototype={constructor:Context,reset:function(){this.prev=0;this.next=0;this.sent=undefined;this.done=false;this.delegate=null;this.tryEntries.forEach(resetTryEntry);for(var tempIndex=0,tempName;hasOwn.call(this,tempName="t"+tempIndex)||tempIndex<20;++tempIndex){this[tempName]=null}},stop:function(){this.done=true;var rootEntry=this.tryEntries[0];var rootRecord=rootEntry.completion;if(rootRecord.type==="throw"){throw rootRecord.arg}return this.rval},dispatchException:function(exception){if(this.done){throw exception}var context=this;function handle(loc,caught){record.type="throw";record.arg=exception;context.next=loc;return!!caught}for(var i=this.tryEntries.length-1;i>=0;--i){var entry=this.tryEntries[i];var record=entry.completion;if(entry.tryLoc==="root"){return handle("end")}if(entry.tryLoc<=this.prev){var hasCatch=hasOwn.call(entry,"catchLoc");var hasFinally=hasOwn.call(entry,"finallyLoc");if(hasCatch&&hasFinally){if(this.prev<entry.catchLoc){return handle(entry.catchLoc,true)}else if(this.prev<entry.finallyLoc){return handle(entry.finallyLoc)}}else if(hasCatch){if(this.prev<entry.catchLoc){return handle(entry.catchLoc,true)}}else if(hasFinally){if(this.prev<entry.finallyLoc){return handle(entry.finallyLoc)}}else{throw new Error("try statement without catch or finally")}}}},abrupt:function(type,arg){for(var i=this.tryEntries.length-1;i>=0;--i){var entry=this.tryEntries[i];if(entry.tryLoc<=this.prev&&hasOwn.call(entry,"finallyLoc")&&this.prev<entry.finallyLoc){var finallyEntry=entry;break}}if(finallyEntry&&(type==="break"||type==="continue")&&finallyEntry.tryLoc<=arg&&arg<finallyEntry.finallyLoc){finallyEntry=null}var record=finallyEntry?finallyEntry.completion:{};record.type=type;record.arg=arg;if(finallyEntry){this.next=finallyEntry.finallyLoc}else{this.complete(record)}return ContinueSentinel},complete:function(record,afterLoc){if(record.type==="throw"){throw record.arg}if(record.type==="break"||record.type==="continue"){this.next=record.arg}else if(record.type==="return"){this.rval=record.arg;this.next="end"}else if(record.type==="normal"&&afterLoc){this.next=afterLoc}return ContinueSentinel},finish:function(finallyLoc){for(var i=this.tryEntries.length-1;i>=0;--i){var entry=this.tryEntries[i];if(entry.finallyLoc===finallyLoc){return this.complete(entry.completion,entry.afterLoc)}}},"catch":function(tryLoc){for(var i=this.tryEntries.length-1;i>=0;--i){var entry=this.tryEntries[i];if(entry.tryLoc===tryLoc){var record=entry.completion;if(record.type==="throw"){var thrown=record.arg;resetTryEntry(entry)}return thrown}}throw new Error("illegal catch attempt")},delegateYield:function(iterable,resultName,nextLoc){this.delegate={iterator:values(iterable),resultName:resultName,nextLoc:nextLoc};return ContinueSentinel}}}(typeof global==="object"?global:typeof window==="object"?window:this)}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}]},{},[1]);

@@ -16,2 +16,7 @@ # Changelog

## 4.5.5
* **Polish**
* Delete old extensions when overriding them in `babel/register`.
## 4.5.3

@@ -18,0 +23,0 @@

@@ -7,6 +7,2 @@ # Contributing

**NOTE:** Please do not send pull requests that fix linting issues. It's highly
likely that they've already been fixed by the time it's submitted and it just
pollutes the git tree.
## Developing

@@ -48,11 +44,2 @@

#### Linting
Please follow the correct code style, this ensures that the code is consistent
and increases maintainability.
```sh
$ make lint
```
#### Workflow

@@ -59,0 +46,0 @@

@@ -9,4 +9,4 @@ "use strict";

transform.run = function (code, opts) {
if (!opts) opts = {};
transform.run = function (code) {
var opts = arguments[1] === undefined ? {} : arguments[1];

@@ -17,4 +17,4 @@ opts.sourceMap = "inline";

transform.load = function (url, callback, opts, hold) {
if (!opts) opts = {};
transform.load = function (url, callback, _x, hold) {
var opts = arguments[2] === undefined ? {} : arguments[2];
var _opts = opts;

@@ -21,0 +21,0 @@ if (!_opts.filename) _opts.filename = url;

"use strict";
var isFunction = require("lodash/lang/isFunction");
var transform = require("../transformation");
var util = require("../util");
var fs = require("fs");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.version = require("../../../package").version;
exports.register = register;
exports.polyfill = polyfill;
exports.transformFile = transformFile;
exports.transformFileSync = transformFileSync;
exports.buildExternalHelpers = require("../build-external-helpers");
var isFunction = _interopRequire(require("lodash/lang/isFunction"));
exports.types = require("../types");
var _transformation = require("../transformation");
exports.register = function (opts) {
var register = require("./register/node");
if (opts != null) register(opts);
return register;
};
var transform = _interopRequire(_transformation);
exports.polyfill = function () {
require("../polyfill");
};
var fs = _interopRequire(require("fs"));
exports.canCompile = util.canCompile;
exports.acorn = _interopRequire(require("acorn-babel"));
// do not use this - this is for use by official maintained babel plugins
exports._util = util;
var _util2 = require("../util");
exports.transform = transform;
exports._util = _interopRequire(_util2);
exports.canCompile = _util2.canCompile;
exports.transform = _interopRequire(_transformation);
exports.traverse = _interopRequire(require("../traversal"));
exports.buildExternalHelpers = _interopRequire(require("../build-external-helpers"));
exports.types = _interopRequire(require("../types"));
exports.version = require("../../../package").version;
function register(opts) {
var callback = require("./register/node");
if (opts != null) callback(opts);
return callback;
}
exports.transformFile = function (filename, opts, callback) {
function polyfill() {
require("../polyfill");
}
function transformFile(filename, opts, callback) {
if (isFunction(opts)) {

@@ -52,9 +60,10 @@ callback = opts;

});
};
}
exports.transformFileSync = function (filename, opts) {
if (!opts) opts = {};
function transformFileSync(filename) {
var opts = arguments[1] === undefined ? {} : arguments[1];
opts.filename = filename;
return transform(fs.readFileSync(filename), opts);
};
}
exports.__esModule = true;
"use strict";
var path = require("path");
var os = require("os");
var fs = require("fs");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.save = save;
exports.load = load;
exports.get = get;
var path = _interopRequire(require("path"));
var os = _interopRequire(require("os"));
var fs = _interopRequire(require("fs"));
var FILENAME = process.env.BABEL_CACHE_PATH || path.join(os.tmpdir(), "babel.json");
var data = {};
exports.save = function () {
function save() {
fs.writeFileSync(FILENAME, JSON.stringify(data, null, " "));
};
}
exports.load = function () {
function load() {
if (process.env.BABEL_DISABLE_CACHE) return;
process.on("exit", exports.save);
process.on("exit", save);

@@ -31,3 +39,3 @@ var sigint = (function (_sigint) {

process.removeListener("SIGINT", sigint);
exports.save();
save();
process.kill(process.pid, "SIGINT");

@@ -45,6 +53,7 @@ });

}
};
}
exports.get = function () {
function get() {
return data;
};
}
exports.__esModule = true;
"use strict";
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
require("../../polyfill");
var sourceMapSupport = require("source-map-support");
var registerCache = require("./cache");
var resolveRc = require("./resolve-rc");
var extend = require("lodash/object/extend");
var babel = require("../node");
var each = require("lodash/collection/each");
var util = require("../../util");
var fs = require("fs");
var sourceMapSupport = _interopRequire(require("source-map-support"));
var registerCache = _interopRequireWildcard(require("./cache"));
var resolveRc = _interopRequire(require("./resolve-rc"));
var extend = _interopRequire(require("lodash/object/extend"));
var babel = _interopRequireWildcard(require("../node"));
var each = _interopRequire(require("lodash/collection/each"));
var util = _interopRequireWildcard(require("../../util"));
var fs = _interopRequire(require("fs"));
sourceMapSupport.install({
handleUncaughtExceptions: false,
retrieveSourceMap: function retrieveSourceMap(source) {

@@ -38,3 +50,3 @@ var map = maps && maps[source];

var onlyRegex;
var exts = {};
var oldHandlers = {};
var maps = {};

@@ -112,3 +124,3 @@

var registerExtension = function registerExtension(ext) {
var old = require.extensions[ext];
var old = oldHandlers[ext] || oldHandlers[".js"];

@@ -128,3 +140,3 @@ var loader = normalLoader;

var hookExtensions = function hookExtensions(_exts) {
each(exts, function (old, ext) {
each(oldHandlers, function (old, ext) {
if (old === undefined) {

@@ -137,6 +149,6 @@ delete require.extensions[ext];

exts = {};
oldHandlers = {};
each(_exts, function (ext) {
exts[ext] = require.extensions[ext];
oldHandlers[ext] = require.extensions[ext];
registerExtension(ext);

@@ -148,5 +160,4 @@ });

module.exports = function (opts) {
// normalize options
if (!opts) opts = {};
module.exports = function () {
var opts = arguments[0] === undefined ? {} : arguments[0];

@@ -153,0 +164,0 @@ if (opts.only != null) onlyRegex = util.regexify(opts.only);

"use strict";
var merge = require("lodash/object/merge");
var path = require("path");
var fs = require("fs");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var merge = _interopRequire(require("lodash/object/merge"));
var path = _interopRequire(require("path"));
var fs = _interopRequire(require("fs"));
var cache = {};

@@ -15,5 +19,6 @@

module.exports = function (loc, opts) {
module.exports = function (loc) {
var opts = arguments[1] === undefined ? {} : arguments[1];
var rel = ".babelrc";
if (!opts) opts = {};

@@ -20,0 +25,0 @@ function find(start, rel) {

"use strict";
var buildHelpers = require("./build-helpers");
var generator = require("./generation");
var util = require("./util");
var t = require("./types");
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var buildHelpers = _interopRequire(require("./build-helpers"));
var generator = _interopRequire(require("./generation"));
var util = _interopRequireWildcard(require("./util"));
var t = _interopRequire(require("./types"));
module.exports = function (whitelist) {

@@ -9,0 +16,0 @@ var namespace = t.identifier("babelHelpers");

"use strict";
var File = require("./transformation/file");
var util = require("./util");
var each = require("lodash/collection/each");
var t = require("./types");
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var File = _interopRequire(require("./transformation/file"));
var util = _interopRequireWildcard(require("./util"));
var each = _interopRequire(require("lodash/collection/each"));
var t = _interopRequire(require("./types"));
module.exports = function (body, namespace) {

@@ -12,3 +19,3 @@ var whitelist = arguments[2] === undefined ? [] : arguments[2];

each(File.helpers, function (name) {
if (whitelist.length && whitelist.indexOf(name) == -1) return;
if (whitelist.length && whitelist.indexOf(name) === -1) return;

@@ -15,0 +22,0 @@ var key = t.identifier(t.toIdentifier(name));

"use strict";
module.exports = detect;
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var SYNTAX_KEYS = require("./syntax-keys");
var traverse = require("../traversal");
var SYNTAX_KEYS = _interopRequire(require("./syntax-keys"));
var traverse = _interopRequire(require("../traversal"));
var visitors = traverse.explode(require("./visitors"));
function detect(ast) {
module.exports = function (ast) {
var stats = {

@@ -31,2 +33,2 @@ syntax: {},

return stats;
}
};
"use strict";
var t = require("../types");
var includes = require("lodash/collection/includes");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.AssignmentExpression = function (node, parent, detected) {
exports.AssignmentExpression = AssignmentExpression;
exports.BinaryExpression = BinaryExpression;
exports.VariableDeclaration = VariableDeclaration;
exports.Property = Property;
exports.AssignmentPattern = AssignmentPattern;
var includes = _interopRequire(require("lodash/collection/includes"));
var t = _interopRequire(require("../types"));
function AssignmentExpression(node, parent, detected) {
if (node.operator === "**=") {
detected("es6.exponentation");
}
};
}
exports.BinaryExpression = function (node, parent, detected) {
function BinaryExpression(node, parent, detected) {
if (node.operator === "**") {
detected("es6.exponentation");
}
};
}
exports.VariableDeclaration = function (node, parent, detected) {
function VariableDeclaration(node, parent, detected) {
if (node.kind === "let" || node.kind === "const") {

@@ -26,5 +35,5 @@ detected("es6.blockScoping");

}
};
}
exports.Property = function (node, parent, detected) {
function Property(node, parent, detected) {
if (node.shorthand || node.method) {

@@ -41,9 +50,9 @@ detected("es6.properties.shorthand");

}
};
}
exports.AssignmentPattern = function (node, parent, detected) {
function AssignmentPattern(node, parent, detected) {
if (t.isFunction(parent) && includes(parent.params, node)) {
detected("es6.parameters.default");
}
};
}

@@ -58,2 +67,3 @@ exports.Function = function (node, parent, detected) {

}
};
};
exports.__esModule = true;
"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var repeating = require("repeating");
var trimRight = require("trim-right");
var isBoolean = require("lodash/lang/isBoolean");
var includes = require("lodash/collection/includes");
var isNumber = require("lodash/lang/isNumber");
var repeating = _interopRequire(require("repeating"));
var trimRight = _interopRequire(require("trim-right"));
var isBoolean = _interopRequire(require("lodash/lang/isBoolean"));
var includes = _interopRequire(require("lodash/collection/includes"));
var isNumber = _interopRequire(require("lodash/lang/isNumber"));
var Buffer = (function () {

@@ -12,0 +18,0 @@ function Buffer(position, format) {

"use strict";
exports.File = function (node, print) {
exports.File = File;
exports.Program = Program;
exports.BlockStatement = BlockStatement;
function File(node, print) {
print(node.program);
};
}
exports.Program = function (node, print) {
function Program(node, print) {
print.sequence(node.body);
};
}
exports.BlockStatement = function (node, print) {
function BlockStatement(node, print) {
if (node.body.length === 0) {

@@ -21,2 +24,3 @@ this.push("{}");

}
};
}
exports.__esModule = true;
"use strict";
exports.ClassBody = ClassBody;
exports.MethodDefinition = MethodDefinition;
exports.ClassExpression = exports.ClassDeclaration = function (node, print) {

@@ -20,3 +22,3 @@ this.push("class");

exports.ClassBody = function (node, print) {
function ClassBody(node, print) {
if (node.body.length === 0) {

@@ -34,5 +36,5 @@ this.push("{}");

}
};
}
exports.MethodDefinition = function (node, print) {
function MethodDefinition(node, print) {
if (node["static"]) {

@@ -43,2 +45,3 @@ this.push("static ");

this._method(node, print);
};
}
exports.__esModule = true;
"use strict";
exports.ComprehensionBlock = function (node, print) {
exports.ComprehensionBlock = ComprehensionBlock;
exports.ComprehensionExpression = ComprehensionExpression;
function ComprehensionBlock(node, print) {
this.keyword("for");

@@ -10,5 +12,5 @@ this.push("(");

this.push(")");
};
}
exports.ComprehensionExpression = function (node, print) {
function ComprehensionExpression(node, print) {
this.push(node.generator ? "(" : "[");

@@ -30,2 +32,3 @@

this.push(node.generator ? ")" : "]");
};
}
exports.__esModule = true;
"use strict";
var isInteger = require("is-integer");
var isNumber = require("lodash/lang/isNumber");
var t = require("../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.UnaryExpression = function (node, print) {
exports.UnaryExpression = UnaryExpression;
exports.UpdateExpression = UpdateExpression;
exports.ConditionalExpression = ConditionalExpression;
exports.NewExpression = NewExpression;
exports.SequenceExpression = SequenceExpression;
exports.ThisExpression = ThisExpression;
exports.CallExpression = CallExpression;
exports.EmptyStatement = EmptyStatement;
exports.ExpressionStatement = ExpressionStatement;
exports.MemberExpression = MemberExpression;
var isInteger = _interopRequire(require("is-integer"));
var isNumber = _interopRequire(require("lodash/lang/isNumber"));
var t = _interopRequire(require("../../types"));
function UnaryExpression(node, print) {
var hasSpace = /[a-z]$/.test(node.operator);

@@ -22,5 +37,5 @@ var arg = node.argument;

print(node.argument);
};
}
exports.UpdateExpression = function (node, print) {
function UpdateExpression(node, print) {
if (node.prefix) {

@@ -33,5 +48,5 @@ this.push(node.operator);

}
};
}
exports.ConditionalExpression = function (node, print) {
function ConditionalExpression(node, print) {
print(node.test);

@@ -46,5 +61,5 @@ this.space();

print(node.alternate);
};
}
exports.NewExpression = function (node, print) {
function NewExpression(node, print) {
this.push("new ");

@@ -55,13 +70,13 @@ print(node.callee);

this.push(")");
};
}
exports.SequenceExpression = function (node, print) {
function SequenceExpression(node, print) {
print.list(node.expressions);
};
}
exports.ThisExpression = function () {
function ThisExpression() {
this.push("this");
};
}
exports.CallExpression = function (node, print) {
function CallExpression(node, print) {
print(node.callee);

@@ -89,3 +104,3 @@

this.push(")");
};
}

@@ -107,13 +122,13 @@ var buildYieldAwait = function buildYieldAwait(keyword) {

exports.YieldExpression = buildYieldAwait("yield");
exports.AwaitExpression = buildYieldAwait("await");
var YieldExpression = exports.YieldExpression = buildYieldAwait("yield");
var AwaitExpression = exports.AwaitExpression = buildYieldAwait("await");
exports.EmptyStatement = function () {
function EmptyStatement() {
this.semicolon();
};
}
exports.ExpressionStatement = function (node, print) {
function ExpressionStatement(node, print) {
print(node.expression);
this.semicolon();
};
}

@@ -131,3 +146,3 @@ exports.BinaryExpression = exports.LogicalExpression = exports.AssignmentPattern = exports.AssignmentExpression = function (node, print) {

exports.MemberExpression = function (node, print) {
function MemberExpression(node, print) {
var obj = node.object;

@@ -158,2 +173,3 @@ print(obj);

}
};
}
exports.__esModule = true;
"use strict";
var t = require("../../types");
var each = require("lodash/collection/each");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.JSXAttribute = function (node, print) {
exports.JSXAttribute = JSXAttribute;
exports.JSXIdentifier = JSXIdentifier;
exports.JSXNamespacedName = JSXNamespacedName;
exports.JSXMemberExpression = JSXMemberExpression;
exports.JSXSpreadAttribute = JSXSpreadAttribute;
exports.JSXExpressionContainer = JSXExpressionContainer;
exports.JSXElement = JSXElement;
exports.JSXOpeningElement = JSXOpeningElement;
exports.JSXClosingElement = JSXClosingElement;
exports.JSXEmptyExpression = JSXEmptyExpression;
var each = _interopRequire(require("lodash/collection/each"));
var t = _interopRequire(require("../../types"));
function JSXAttribute(node, print) {
print(node.name);

@@ -12,33 +26,33 @@ if (node.value) {

}
};
}
exports.JSXIdentifier = function (node) {
function JSXIdentifier(node) {
this.push(node.name);
};
}
exports.JSXNamespacedName = function (node, print) {
function JSXNamespacedName(node, print) {
print(node.namespace);
this.push(":");
print(node.name);
};
}
exports.JSXMemberExpression = function (node, print) {
function JSXMemberExpression(node, print) {
print(node.object);
this.push(".");
print(node.property);
};
}
exports.JSXSpreadAttribute = function (node, print) {
function JSXSpreadAttribute(node, print) {
this.push("{...");
print(node.argument);
this.push("}");
};
}
exports.JSXExpressionContainer = function (node, print) {
function JSXExpressionContainer(node, print) {
this.push("{");
print(node.expression);
this.push("}");
};
}
exports.JSXElement = function (node, print) {
function JSXElement(node, print) {
var _this = this;

@@ -61,5 +75,5 @@

print(node.closingElement);
};
}
exports.JSXOpeningElement = function (node, print) {
function JSXOpeningElement(node, print) {
this.push("<");

@@ -72,10 +86,11 @@ print(node.name);

this.push(node.selfClosing ? " />" : ">");
};
}
exports.JSXClosingElement = function (node, print) {
function JSXClosingElement(node, print) {
this.push("</");
print(node.name);
this.push(">");
};
}
exports.JSXEmptyExpression = function () {};
function JSXEmptyExpression() {}
exports.__esModule = true;
"use strict";
var t = require("../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports._params = function (node, print) {
exports._params = _params;
exports._method = _method;
exports.ArrowFunctionExpression = ArrowFunctionExpression;
var t = _interopRequire(require("../../types"));
function _params(node, print) {
this.push("(");
print.list(node.params);
this.push(")");
};
}
exports._method = function (node, print) {
function _method(node, print) {
var value = node.value;

@@ -37,3 +43,3 @@ var kind = node.kind;

print(value.body);
};
}

@@ -57,3 +63,3 @@ exports.FunctionDeclaration = exports.FunctionExpression = function (node, print) {

exports.ArrowFunctionExpression = function (node, print) {
function ArrowFunctionExpression(node, print) {
if (node.async) this.push("async ");

@@ -69,2 +75,3 @@

print(node.body);
};
}
exports.__esModule = true;
"use strict";
var t = require("../../types");
var each = require("lodash/collection/each");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.ImportSpecifier = function (node, print) {
exports.ImportSpecifier = ImportSpecifier;
exports.ExportSpecifier = ExportSpecifier;
exports.ExportBatchSpecifier = ExportBatchSpecifier;
exports.ExportDeclaration = ExportDeclaration;
exports.ImportDeclaration = ImportDeclaration;
exports.ImportBatchSpecifier = ImportBatchSpecifier;
var each = _interopRequire(require("lodash/collection/each"));
var t = _interopRequire(require("../../types"));
function ImportSpecifier(node, print) {
if (t.isSpecifierDefault(node)) {

@@ -12,5 +22,5 @@ print(t.getSpecifierName(node));

}
};
}
exports.ExportSpecifier = function (node, print) {
function ExportSpecifier(node, print) {
print(node.id);

@@ -21,9 +31,9 @@ if (node.name) {

}
};
}
exports.ExportBatchSpecifier = function () {
function ExportBatchSpecifier() {
this.push("*");
};
}
exports.ExportDeclaration = function (node, print) {
function ExportDeclaration(node, print) {
this.push("export ");

@@ -60,5 +70,5 @@

this.ensureSemicolon();
};
}
exports.ImportDeclaration = function (node, print) {
function ImportDeclaration(node, print) {
var _this = this;

@@ -100,7 +110,8 @@

this.semicolon();
};
}
exports.ImportBatchSpecifier = function (node, print) {
function ImportBatchSpecifier(node, print) {
this.push("* as ");
print(node.name);
};
}
exports.__esModule = true;
"use strict";
var each = require("lodash/collection/each");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var each = _interopRequire(require("lodash/collection/each"));
each(["BindMemberExpression", "BindFunctionExpression"], function (type) {

@@ -6,0 +8,0 @@ exports[type] = function () {

"use strict";
var repeating = require("repeating");
var t = require("../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.WithStatement = function (node, print) {
exports.WithStatement = WithStatement;
exports.IfStatement = IfStatement;
exports.ForStatement = ForStatement;
exports.WhileStatement = WhileStatement;
exports.DoWhileStatement = DoWhileStatement;
exports.LabeledStatement = LabeledStatement;
exports.TryStatement = TryStatement;
exports.CatchClause = CatchClause;
exports.ThrowStatement = ThrowStatement;
exports.SwitchStatement = SwitchStatement;
exports.SwitchCase = SwitchCase;
exports.DebuggerStatement = DebuggerStatement;
exports.VariableDeclaration = VariableDeclaration;
exports.PrivateDeclaration = PrivateDeclaration;
exports.VariableDeclarator = VariableDeclarator;
var repeating = _interopRequire(require("repeating"));
var t = _interopRequire(require("../../types"));
function WithStatement(node, print) {
this.keyword("with");

@@ -12,5 +31,5 @@ this.push("(");

print.block(node.body);
};
}
exports.IfStatement = function (node, print) {
function IfStatement(node, print) {
this.keyword("if");

@@ -29,5 +48,5 @@ this.push("(");

}
};
}
exports.ForStatement = function (node, print) {
function ForStatement(node, print) {
this.keyword("for");

@@ -52,5 +71,5 @@ this.push("(");

print.block(node.body);
};
}
exports.WhileStatement = function (node, print) {
function WhileStatement(node, print) {
this.keyword("while");

@@ -61,3 +80,3 @@ this.push("(");

print.block(node.body);
};
}

@@ -76,6 +95,6 @@ var buildForXStatement = function buildForXStatement(op) {

exports.ForInStatement = buildForXStatement("in");
exports.ForOfStatement = buildForXStatement("of");
var ForInStatement = exports.ForInStatement = buildForXStatement("in");
var ForOfStatement = exports.ForOfStatement = buildForXStatement("of");
exports.DoWhileStatement = function (node, print) {
function DoWhileStatement(node, print) {
this.keyword("do");

@@ -88,3 +107,3 @@ print(node.body);

this.push(");");
};
}

@@ -105,13 +124,13 @@ var buildLabelStatement = function buildLabelStatement(prefix, key) {

exports.ContinueStatement = buildLabelStatement("continue");
exports.ReturnStatement = buildLabelStatement("return", "argument");
exports.BreakStatement = buildLabelStatement("break");
var ContinueStatement = exports.ContinueStatement = buildLabelStatement("continue");
var ReturnStatement = exports.ReturnStatement = buildLabelStatement("return", "argument");
var BreakStatement = exports.BreakStatement = buildLabelStatement("break");
exports.LabeledStatement = function (node, print) {
function LabeledStatement(node, print) {
print(node.label);
this.push(": ");
print(node.body);
};
}
exports.TryStatement = function (node, print) {
function TryStatement(node, print) {
this.keyword("try");

@@ -135,5 +154,5 @@ print(node.block);

}
};
}
exports.CatchClause = function (node, print) {
function CatchClause(node, print) {
this.keyword("catch");

@@ -144,11 +163,11 @@ this.push("(");

print(node.body);
};
}
exports.ThrowStatement = function (node, print) {
function ThrowStatement(node, print) {
this.push("throw ");
print(node.argument);
this.semicolon();
};
}
exports.SwitchStatement = function (node, print) {
function SwitchStatement(node, print) {
this.keyword("switch");

@@ -169,5 +188,5 @@ this.push("(");

this.push("}");
};
}
exports.SwitchCase = function (node, print) {
function SwitchCase(node, print) {
if (node.test) {

@@ -185,9 +204,9 @@ this.push("case ");

}
};
}
exports.DebuggerStatement = function () {
function DebuggerStatement() {
this.push("debugger;");
};
}
exports.VariableDeclaration = function (node, print, parent) {
function VariableDeclaration(node, print, parent) {
this.push(node.kind + " ");

@@ -218,11 +237,11 @@

}
};
}
exports.PrivateDeclaration = function (node, print) {
function PrivateDeclaration(node, print) {
this.push("private ");
print.join(node.declarations, { separator: ", " });
this.semicolon();
};
}
exports.VariableDeclarator = function (node, print) {
function VariableDeclarator(node, print) {
if (node.init) {

@@ -237,2 +256,3 @@ print(node.id);

}
};
}
exports.__esModule = true;
"use strict";
var each = require("lodash/collection/each");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.TaggedTemplateExpression = function (node, print) {
exports.TaggedTemplateExpression = TaggedTemplateExpression;
exports.TemplateElement = TemplateElement;
exports.TemplateLiteral = TemplateLiteral;
var each = _interopRequire(require("lodash/collection/each"));
function TaggedTemplateExpression(node, print) {
print(node.tag);
print(node.quasi);
};
}
exports.TemplateElement = function (node) {
function TemplateElement(node) {
this._push(node.value.raw);
};
}
exports.TemplateLiteral = function (node, print) {
function TemplateLiteral(node, print) {
var _this = this;

@@ -33,2 +39,3 @@

this._push("`");
};
}
exports.__esModule = true;
"use strict";
var each = require("lodash/collection/each");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.Identifier = function (node) {
exports.Identifier = Identifier;
exports.VirtualPropertyExpression = VirtualPropertyExpression;
exports.Property = Property;
exports.Literal = Literal;
var each = _interopRequire(require("lodash/collection/each"));
function Identifier(node) {
this.push(node.name);
};
}

@@ -14,7 +21,7 @@ exports.RestElement = exports.SpreadElement = exports.SpreadProperty = function (node, print) {

exports.VirtualPropertyExpression = function (node, print) {
function VirtualPropertyExpression(node, print) {
print(node.object);
this.push("::");
print(node.property);
};
}

@@ -37,3 +44,3 @@ exports.ObjectExpression = exports.ObjectPattern = function (node, print) {

exports.Property = function (node, print) {
function Property(node, print) {
if (node.method || node.kind === "get" || node.kind === "set") {

@@ -55,3 +62,3 @@ this._method(node, print);

}
};
}

@@ -84,3 +91,3 @@ exports.ArrayExpression = exports.ArrayPattern = function (node, print) {

exports.Literal = function (node) {
function Literal(node) {
var val = node.value;

@@ -107,2 +114,3 @@ var type = typeof val;

}
};
}
exports.__esModule = true;
"use strict";
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var detectIndent = require("detect-indent");
var Whitespace = require("./whitespace");
var repeating = require("repeating");
var SourceMap = require("./source-map");
var Position = require("./position");
var messages = require("../messages");
var Buffer = require("./buffer");
var extend = require("lodash/object/extend");
var each = require("lodash/collection/each");
var n = require("./node");
var t = require("../types");
var detectIndent = _interopRequire(require("detect-indent"));
var Whitespace = _interopRequire(require("./whitespace"));
var repeating = _interopRequire(require("repeating"));
var SourceMap = _interopRequire(require("./source-map"));
var Position = _interopRequire(require("./position"));
var messages = _interopRequireWildcard(require("../messages"));
var Buffer = _interopRequire(require("./buffer"));
var extend = _interopRequire(require("lodash/object/extend"));
var each = _interopRequire(require("lodash/collection/each"));
var n = _interopRequire(require("./node"));
var t = _interopRequire(require("../types"));
var CodeGenerator = (function () {

@@ -102,4 +116,4 @@ function CodeGenerator(ast, opts, code) {

print.sequence = function (nodes, opts) {
if (!opts) opts = {};
print.sequence = function (nodes) {
var opts = arguments[1] === undefined ? {} : arguments[1];

@@ -114,4 +128,4 @@ opts.statement = true;

print.list = function (items, opts) {
if (!opts) opts = {};
print.list = function (items) {
var opts = arguments[1] === undefined ? {} : arguments[1];
var _opts = opts;

@@ -134,5 +148,7 @@ if (!_opts.separator) _opts.separator = ", ";

CodeGenerator.prototype.print = function print(node, parent, opts) {
CodeGenerator.prototype.print = function print(node, parent) {
var _this = this;
var opts = arguments[2] === undefined ? {} : arguments[2];
if (!node) return "";

@@ -149,4 +165,2 @@

if (!opts) opts = {};
var newline = function (leading) {

@@ -217,9 +231,9 @@ if (!opts.statement && !n.isUserWhitespacable(node, parent)) {

CodeGenerator.prototype.printJoin = function printJoin(print, nodes, opts) {
CodeGenerator.prototype.printJoin = function printJoin(print, nodes) {
var _this = this;
var opts = arguments[2] === undefined ? {} : arguments[2];
if (!nodes || !nodes.length) return;
if (!opts) opts = {};
var len = nodes.length;

@@ -226,0 +240,0 @@

"use strict";
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var whitespace = require("./whitespace");
var parens = require("./parentheses");
var each = require("lodash/collection/each");
var some = require("lodash/collection/some");
var t = require("../../types");
var whitespace = _interopRequire(require("./whitespace"));
var parens = _interopRequireWildcard(require("./parentheses"));
var each = _interopRequire(require("lodash/collection/each"));
var some = _interopRequire(require("lodash/collection/some"));
var t = _interopRequire(require("../../types"));
var find = function find(obj, node, parent) {

@@ -12,0 +20,0 @@ if (!obj) return;

"use strict";
var t = require("../../types");
var each = require("lodash/collection/each");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.UpdateExpression = UpdateExpression;
exports.ObjectExpression = ObjectExpression;
exports.Binary = Binary;
exports.BinaryExpression = BinaryExpression;
exports.SequenceExpression = SequenceExpression;
exports.YieldExpression = YieldExpression;
exports.ClassExpression = ClassExpression;
exports.UnaryLike = UnaryLike;
exports.FunctionExpression = FunctionExpression;
var each = _interopRequire(require("lodash/collection/each"));
var t = _interopRequire(require("../../types"));
var PRECEDENCE = {};

@@ -14,3 +27,3 @@

exports.UpdateExpression = function (node, parent) {
function UpdateExpression(node, parent) {
if (t.isMemberExpression(parent) && parent.object === node) {

@@ -20,5 +33,5 @@ // (foo++).test()

}
};
}
exports.ObjectExpression = function (node, parent) {
function ObjectExpression(node, parent) {
if (t.isExpressionStatement(parent)) {

@@ -35,5 +48,5 @@ // ({ foo: "bar" });

return false;
};
}
exports.Binary = function (node, parent) {
function Binary(node, parent) {
if ((t.isCallExpression(parent) || t.isNewExpression(parent)) && parent.callee === node) {

@@ -66,5 +79,5 @@ return true;

}
};
}
exports.BinaryExpression = function (node, parent) {
function BinaryExpression(node, parent) {
if (node.operator === "in") {

@@ -81,5 +94,5 @@ // var i = (1 in []);

}
};
}
exports.SequenceExpression = function (node, parent) {
function SequenceExpression(node, parent) {
if (t.isForStatement(parent)) {

@@ -100,17 +113,17 @@ // Although parentheses wouldn't hurt around sequence

return true;
};
}
exports.YieldExpression = function (node, parent) {
function YieldExpression(node, parent) {
return t.isBinary(parent) || t.isUnaryLike(parent) || t.isCallExpression(parent) || t.isMemberExpression(parent) || t.isNewExpression(parent) || t.isConditionalExpression(parent) || t.isYieldExpression(parent);
};
}
exports.ClassExpression = function (node, parent) {
function ClassExpression(node, parent) {
return t.isExpressionStatement(parent);
};
}
exports.UnaryLike = function (node, parent) {
function UnaryLike(node, parent) {
return t.isMemberExpression(parent) && parent.object === node;
};
}
exports.FunctionExpression = function (node, parent) {
function FunctionExpression(node, parent) {
// function () {};

@@ -130,3 +143,3 @@ if (t.isExpressionStatement(parent)) {

}
};
}

@@ -157,2 +170,3 @@ exports.AssignmentExpression = exports.ConditionalExpression = function (node, parent) {

return false;
};
};
exports.__esModule = true;
"use strict";
var isBoolean = require("lodash/lang/isBoolean");
var each = require("lodash/collection/each");
var map = require("lodash/collection/map");
var t = require("../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var crawl = (function (_crawl) {
var _crawlWrapper = function crawl() {
return _crawl.apply(this, arguments);
};
var isBoolean = _interopRequire(require("lodash/lang/isBoolean"));
_crawlWrapper.toString = function () {
return _crawl.toString();
};
var each = _interopRequire(require("lodash/collection/each"));
return _crawlWrapper;
})(function (node, state) {
if (!state) state = {};
var map = _interopRequire(require("lodash/collection/map"));
var t = _interopRequire(require("../../types"));
function crawl(node) {
var state = arguments[1] === undefined ? {} : arguments[1];
if (t.isMemberExpression(node)) {

@@ -38,15 +33,5 @@ crawl(node.object, state);

return state;
});
}
var isHelper = (function (_isHelper) {
var _isHelperWrapper = function isHelper() {
return _isHelper.apply(this, arguments);
};
_isHelperWrapper.toString = function () {
return _isHelper.toString();
};
return _isHelperWrapper;
})(function (node) {
function isHelper(node) {
if (t.isMemberExpression(node)) {

@@ -63,7 +48,7 @@ return isHelper(node.object) || isHelper(node.property);

}
});
}
var isType = function isType(node) {
function isType(node) {
return t.isLiteral(node) || t.isObjectExpression(node) || t.isArrayExpression(node) || t.isIdentifier(node) || t.isMemberExpression(node);
};
}

@@ -70,0 +55,0 @@ exports.nodes = {

"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var sourceMap = require("source-map");
var t = require("../types");
var sourceMap = _interopRequire(require("source-map"));
var t = _interopRequire(require("../types"));
var SourceMap = (function () {

@@ -9,0 +12,0 @@ function SourceMap(position, opts, code) {

"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var sortBy = require("lodash/collection/sortBy");
var sortBy = _interopRequire(require("lodash/collection/sortBy"));

@@ -7,0 +9,0 @@ /**

"use strict";
var lineNumbers = require("line-numbers");
var repeating = require("repeating");
var jsTokens = require("js-tokens");
var esutils = require("esutils");
var chalk = require("chalk");
var ary = require("lodash/function/ary");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var lineNumbers = _interopRequire(require("line-numbers"));
var repeating = _interopRequire(require("repeating"));
var jsTokens = _interopRequire(require("js-tokens"));
var esutils = _interopRequire(require("esutils"));
var chalk = _interopRequire(require("chalk"));
var ary = _interopRequire(require("lodash/function/ary"));
var defs = {
string: chalk.red,
punctuation: chalk.white.bold,
operator: chalk.white.bold,
punctuator: chalk.white.bold,
curly: chalk.green,

@@ -30,7 +36,7 @@ parens: chalk.blue.bold,

var token = jsTokens.matchToToken(match);
if (token.type === "name" && esutils.keyword.isKeywordES6(token.value)) {
if (token.type === "name" && esutils.keyword.isReservedWordES6(token.value)) {
return "keyword";
}
if (token.type === "punctuation") {
if (token.type === "punctuator") {
switch (token.value) {

@@ -37,0 +43,0 @@ case "{":

"use strict";
var t = require("../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var t = _interopRequire(require("../types"));
module.exports = function (ast, comments, tokens) {

@@ -6,0 +8,0 @@ if (ast && ast.type === "Program") {

"use strict";
var normalizeAst = require("./normalize-ast");
var estraverse = require("estraverse");
var codeFrame = require("./code-frame");
var acorn = require("acorn-babel");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var normalizeAst = _interopRequire(require("./normalize-ast"));
var estraverse = _interopRequire(require("estraverse"));
var codeFrame = _interopRequire(require("./code-frame"));
var acorn = _interopRequire(require("acorn-babel"));
module.exports = function (opts, code, callback) {

@@ -9,0 +14,0 @@ try {

"use strict";
var util = require("util");
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
exports.messages = {
exports.get = get;
exports.parseArgs = parseArgs;
var util = _interopRequireWildcard(require("util"));
var messages = exports.messages = {
tailCallReassignmentDeopt: "Function reference has been reassigned so it's probably be dereferenced so we can't optimise this with confidence",

@@ -26,3 +31,3 @@ JSXNamespacedTags: "Namespace tags are not supported. ReactJSX is not XML.",

exports.get = function (key) {
function get(key) {
var msg = exports.messages[key];

@@ -40,5 +45,5 @@ if (!msg) throw new ReferenceError("Unknown message `" + key + "`");

});
};
}
exports.parseArgs = function (args) {
function parseArgs(args) {
return args.map(function (val) {

@@ -55,2 +60,3 @@ if (val != null && val.inspect) {

});
};
}
exports.__esModule = true;
"use strict";
var extend = require("lodash/object/extend");
var t = require("./types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var estraverse = _interopRequire(require("estraverse"));
var extend = _interopRequire(require("lodash/object/extend"));
var types = _interopRequire(require("ast-types"));
var t = _interopRequire(require("./types"));
// estraverse
var estraverse = require("estraverse");
extend(estraverse.VisitorKeys, t.VISITOR_KEYS);

@@ -13,3 +19,2 @@

var types = require("ast-types");
var def = types.Type.def;

@@ -16,0 +21,0 @@ var or = types.Type.or;

@@ -9,2 +9,3 @@ "use strict";

require("core-js/shim");
require("regenerator-babel/runtime");
"use strict";
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var sourceMapToComment = require("source-map-to-comment");
var shebangRegex = require("shebang-regex");
var isFunction = require("lodash/lang/isFunction");
var transform = require("./index");
var generate = require("../generation");
var defaults = require("lodash/object/defaults");
var includes = require("lodash/collection/includes");
var assign = require("lodash/object/assign");
var parse = require("../helpers/parse");
var Scope = require("../traversal/scope");
var slash = require("slash");
var util = require("../util");
var path = require("path");
var each = require("lodash/collection/each");
var t = require("../types");
var sourceMapToComment = _interopRequire(require("source-map-to-comment"));
var shebangRegex = _interopRequire(require("shebang-regex"));
var isFunction = _interopRequire(require("lodash/lang/isFunction"));
var transform = _interopRequire(require("./index"));
var generate = _interopRequire(require("../generation"));
var defaults = _interopRequire(require("lodash/object/defaults"));
var includes = _interopRequire(require("lodash/collection/includes"));
var assign = _interopRequire(require("lodash/object/assign"));
var parse = _interopRequire(require("../helpers/parse"));
var Scope = _interopRequire(require("../traversal/scope"));
var slash = _interopRequire(require("slash"));
var util = _interopRequireWildcard(require("../util"));
var path = _interopRequire(require("path"));
var each = _interopRequire(require("lodash/collection/each"));
var t = _interopRequire(require("../types"));
var checkTransformerVisitor = {

@@ -320,4 +338,4 @@ enter: function enter(node, parent, scope, state) {

File.prototype.errorWithNode = function errorWithNode(node, msg, Error) {
if (!Error) Error = SyntaxError;
File.prototype.errorWithNode = function errorWithNode(node, msg) {
var Error = arguments[2] === undefined ? SyntaxError : arguments[2];

@@ -324,0 +342,0 @@ var loc = node.loc.start;

"use strict";
var explode = require("./explode-assignable-expression");
var t = require("../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var explode = _interopRequire(require("./explode-assignable-expression"));
var t = _interopRequire(require("../../types"));
module.exports = function (exports, opts) {

@@ -7,0 +10,0 @@ var isAssignment = function isAssignment(node) {

"use strict";
var t = require("../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var t = _interopRequire(require("../../types"));
module.exports = function build(node, buildBody) {

@@ -6,0 +8,0 @@ var self = node.blocks.shift();

"use strict";
var explode = require("./explode-assignable-expression");
var t = require("../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var explode = _interopRequire(require("./explode-assignable-expression"));
var t = _interopRequire(require("../../types"));
module.exports = function (exports, opts) {

@@ -7,0 +10,0 @@ var buildAssignment = function buildAssignment(left, right) {

"use strict";
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
// Based upon the excellent jsx-transpiler by Ingvar Stepanyan (RReverser)

@@ -8,8 +12,12 @@ // https://github.com/RReverser/jsx-transpiler

var isString = require("lodash/lang/isString");
var messages = require("../../messages");
var esutils = require("esutils");
var react = require("./react");
var t = require("../../types");
var isString = _interopRequire(require("lodash/lang/isString"));
var messages = _interopRequireWildcard(require("../../messages"));
var esutils = _interopRequire(require("esutils"));
var react = _interopRequire(require("./react"));
var t = _interopRequire(require("../../types"));
module.exports = function (exports, opts) {

@@ -16,0 +24,0 @@ exports.check = function (node) {

"use strict";
var cloneDeep = require("lodash/lang/cloneDeep");
var traverse = require("../../traversal");
var clone = require("lodash/lang/clone");
var each = require("lodash/collection/each");
var has = require("lodash/object/has");
var t = require("../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var cloneDeep = _interopRequire(require("lodash/lang/cloneDeep"));
var traverse = _interopRequire(require("../../traversal"));
var clone = _interopRequire(require("lodash/lang/clone"));
var each = _interopRequire(require("lodash/collection/each"));
var has = _interopRequire(require("lodash/object/has"));
var t = _interopRequire(require("../../types"));
exports.push = function (mutatorMap, key, kind, computed, value) {

@@ -11,0 +18,0 @@ var alias;

"use strict";
var t = require("../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var t = _interopRequire(require("../../types"));
var getObjRef = function getObjRef(node, nodes, file, scope) {

@@ -6,0 +8,0 @@ var ref;

"use strict";
var t = require("../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var t = _interopRequire(require("../../types"));
module.exports = function (node) {

@@ -6,0 +8,0 @@ var lastNonDefault = 0;

"use strict";
var getFunctionArity = require("./get-function-arity");
var util = require("../../util");
var t = require("../../types");
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var getFunctionArity = _interopRequire(require("./get-function-arity"));
var util = _interopRequireWildcard(require("../../util"));
var t = _interopRequire(require("../../types"));
var visitor = {

@@ -54,3 +60,4 @@ enter: function enter(node, parent, scope, state) {

references: [],
name: name };
name: name
};

@@ -57,0 +64,0 @@ // check to see if we have a local binding of the id we're setting inside of

"use strict";
var t = require("../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var t = _interopRequire(require("../../types"));
var isCreateClassCallExpression = t.buildMatchMemberExpression("React.createClass");

@@ -6,0 +8,0 @@

"use strict";
var t = require("../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var t = _interopRequire(require("../../types"));
var visitor = {

@@ -6,0 +8,0 @@ enter: function enter(node) {

"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _toConsumableArray = function (arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; return arr2; } else { return Array.from(arr); } };

@@ -9,6 +13,7 @@

var messages = require("../../messages");
var t = require("../../types");
var messages = _interopRequireWildcard(require("../../messages"));
var isIllegalBareSuper = function isIllegalBareSuper(node, parent) {
var t = _interopRequire(require("../../types"));
function isIllegalBareSuper(node, parent) {
if (!isSuper(node, parent)) return false;

@@ -18,7 +23,7 @@ if (t.isMemberExpression(parent, { computed: false })) return false;

return true;
};
}
var isSuper = function isSuper(node, parent) {
function isSuper(node, parent) {
return t.isIdentifier(node, { name: "super" }) && t.isReferenced(node, parent);
};
}

@@ -25,0 +30,0 @@ var visitor = {

"use strict";
var t = require("../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var t = _interopRequire(require("../../types"));
exports.has = function (node) {

@@ -6,0 +8,0 @@ var first = node.body[0];

"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
module.exports = transform;
var normalizeAst = require("../helpers/normalize-ast");
var Transformer = require("./transformer");
var object = require("../helpers/object");
var File = require("./file");
var each = require("lodash/collection/each");
var normalizeAst = _interopRequire(require("../helpers/normalize-ast"));
var Transformer = _interopRequire(require("./transformer"));
var object = _interopRequire(require("../helpers/object"));
var File = _interopRequire(require("./file"));
var each = _interopRequire(require("lodash/collection/each"));
function transform(code, opts) {

@@ -58,3 +64,3 @@ var file = new File(opts);

var rawTransformers = require("./transformers");
var rawTransformers = _interopRequire(require("./transformers"));

@@ -61,0 +67,0 @@ each(rawTransformers, function (transformer, key) {

"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var messages = require("../../messages");
var extend = require("lodash/object/extend");
var object = require("../../helpers/object");
var util = require("../../util");
var t = require("../../types");
var messages = _interopRequireWildcard(require("../../messages"));
var extend = _interopRequire(require("lodash/object/extend"));
var object = _interopRequire(require("../../helpers/object"));
var util = _interopRequireWildcard(require("../../util"));
var t = _interopRequire(require("../../types"));
var remapVisitor = {

@@ -12,0 +20,0 @@ enter: function enter(node, parent, scope, formatter) {

"use strict";
var util = require("../../util");
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var util = _interopRequireWildcard(require("../../util"));
module.exports = function (Parent) {

@@ -6,0 +8,0 @@ var Constructor = function Constructor() {

"use strict";
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _inherits = function (subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) subClass.__proto__ = superClass; };

@@ -7,9 +11,14 @@

var DefaultFormatter = require("./_default");
var CommonFormatter = require("./common");
var includes = require("lodash/collection/includes");
var values = require("lodash/object/values");
var util = require("../../util");
var t = require("../../types");
var DefaultFormatter = _interopRequire(require("./_default"));
var CommonFormatter = _interopRequire(require("./common"));
var includes = _interopRequire(require("lodash/collection/includes"));
var values = _interopRequire(require("lodash/object/values"));
var util = _interopRequireWildcard(require("../../util"));
var t = _interopRequire(require("../../types"));
var AMDFormatter = (function (DefaultFormatter) {

@@ -16,0 +25,0 @@ function AMDFormatter() {

"use strict";
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _inherits = function (subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) subClass.__proto__ = superClass; };

@@ -7,7 +11,10 @@

var DefaultFormatter = require("./_default");
var includes = require("lodash/collection/includes");
var util = require("../../util");
var t = require("../../types");
var DefaultFormatter = _interopRequire(require("./_default"));
var includes = _interopRequire(require("lodash/collection/includes"));
var util = _interopRequireWildcard(require("../../util"));
var t = _interopRequire(require("../../types"));
var CommonJSFormatter = (function (DefaultFormatter) {

@@ -14,0 +21,0 @@ function CommonJSFormatter() {

"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var t = require("../../types");
var t = _interopRequire(require("../../types"));

@@ -7,0 +9,0 @@ var IgnoreFormatter = (function () {

"use strict";
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _inherits = function (subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) subClass.__proto__ = superClass; };

@@ -7,10 +11,16 @@

var DefaultFormatter = require("./_default");
var AMDFormatter = require("./amd");
var util = require("../../util");
var last = require("lodash/array/last");
var each = require("lodash/collection/each");
var map = require("lodash/collection/map");
var t = require("../../types");
var DefaultFormatter = _interopRequire(require("./_default"));
var AMDFormatter = _interopRequire(require("./amd"));
var util = _interopRequireWildcard(require("../../util"));
var last = _interopRequire(require("lodash/array/last"));
var each = _interopRequire(require("lodash/collection/each"));
var map = _interopRequire(require("lodash/collection/map"));
var t = _interopRequire(require("../../types"));
var hoistVariablesVisitor = {

@@ -17,0 +27,0 @@ enter: function enter(node, parent, scope, hoistDeclarators) {

"use strict";
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _inherits = function (subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) subClass.__proto__ = superClass; };

@@ -7,7 +11,10 @@

var AMDFormatter = require("./amd");
var values = require("lodash/object/values");
var util = require("../../util");
var t = require("../../types");
var AMDFormatter = _interopRequire(require("./amd"));
var values = _interopRequire(require("lodash/object/values"));
var util = _interopRequireWildcard(require("../../util"));
var t = _interopRequire(require("../../types"));
var UMDFormatter = (function (AMDFormatter) {

@@ -14,0 +21,0 @@ function UMDFormatter() {

"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var includes = require("lodash/collection/includes");
var includes = _interopRequire(require("lodash/collection/includes"));

@@ -7,0 +9,0 @@ /**

"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var TransformerPass = require("./transformer-pass");
var isFunction = require("lodash/lang/isFunction");
var traverse = require("../traversal");
var isObject = require("lodash/lang/isObject");
var assign = require("lodash/object/assign");
var each = require("lodash/collection/each");
var TransformerPass = _interopRequire(require("./transformer-pass"));
var isFunction = _interopRequire(require("lodash/lang/isFunction"));
var traverse = _interopRequire(require("../traversal"));
var isObject = _interopRequire(require("lodash/lang/isObject"));
var assign = _interopRequire(require("lodash/object/assign"));
var each = _interopRequire(require("lodash/collection/each"));
/**

@@ -19,3 +26,3 @@ * This is the class responsible for normalising a transformers handlers

var Transformer = (function () {
function Transformer(key, transformer, opts) {
function Transformer(transformerKey, transformer, opts) {
_classCallCheck(this, Transformer);

@@ -47,3 +54,3 @@

this.key = key;
this.key = transformerKey;
}

@@ -50,0 +57,0 @@

{
"selfContained": "runtime"
"selfContained": "runtime",
"unicode-regex": "regex.unicode"
}
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.MemberExpression = function (node) {
exports.MemberExpression = MemberExpression;
var t = _interopRequire(require("../../../types"));
function MemberExpression(node) {
var prop = node.property;

@@ -16,2 +20,3 @@ if (node.computed && t.isLiteral(prop) && t.isValidIdentifier(prop.value)) {

}
};
}
exports.__esModule = true;
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.Property = function (node) {
exports.Property = Property;
var t = _interopRequire(require("../../../types"));
function Property(node) {
var key = node.key;

@@ -15,2 +19,3 @@ if (t.isLiteral(key) && t.isValidIdentifier(key.value)) {

}
};
}
exports.__esModule = true;
"use strict";
var defineMap = require("../../helpers/define-map");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.check = function (node) {
exports.check = check;
exports.ObjectExpression = ObjectExpression;
var defineMap = _interopRequire(require("../../helpers/define-map"));
var t = _interopRequire(require("../../../types"));
function check(node) {
return t.isProperty(node) && (node.kind === "get" || node.kind === "set");
};
}
exports.ObjectExpression = function (node) {
function ObjectExpression(node) {
var mutatorMap = {};

@@ -27,2 +33,3 @@ var hasAny = false;

return t.callExpression(t.memberExpression(t.identifier("Object"), t.identifier("defineProperties")), [node, defineMap.build(mutatorMap)]);
};
}
exports.__esModule = true;
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.ArrowFunctionExpression = ArrowFunctionExpression;
var t = _interopRequire(require("../../../types"));
exports.check = t.isArrowFunctionExpression;
exports.ArrowFunctionExpression = function (node) {
function ArrowFunctionExpression(node) {
t.ensureBlock(node);

@@ -15,2 +19,3 @@

return node;
};
}
exports.__esModule = true;
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var t = _interopRequire(require("../../../types"));
var visitor = {

@@ -6,0 +8,0 @@ enter: function enter(node, parent, scope, state) {

"use strict";
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var traverse = require("../../../traversal");
var object = require("../../../helpers/object");
var util = require("../../../util");
var t = require("../../../types");
var values = require("lodash/object/values");
var extend = require("lodash/object/extend");
var traverse = _interopRequire(require("../../../traversal"));
var object = _interopRequire(require("../../../helpers/object"));
var util = _interopRequireWildcard(require("../../../util"));
var t = _interopRequire(require("../../../types"));
var values = _interopRequire(require("lodash/object/values"));
var extend = _interopRequire(require("lodash/object/extend"));
exports.check = function (node) {

@@ -13,0 +22,0 @@ return t.isVariableDeclaration(node) && (node.kind === "let" || node.kind === "const");

"use strict";
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var ReplaceSupers = require("../../helpers/replace-supers");
var nameMethod = require("../../helpers/name-method");
var defineMap = require("../../helpers/define-map");
var messages = require("../../../messages");
var util = require("../../../util");
var t = require("../../../types");
var ReplaceSupers = _interopRequire(require("../../helpers/replace-supers"));
var nameMethod = _interopRequire(require("../../helpers/name-method"));
var defineMap = _interopRequire(require("../../helpers/define-map"));
var messages = _interopRequireWildcard(require("../../../messages"));
var util = _interopRequireWildcard(require("../../../util"));
var t = _interopRequire(require("../../../types"));
exports.check = t.isClass;

@@ -13,0 +22,0 @@

"use strict";
var messages = require("../../../messages");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var messages = _interopRequireWildcard(require("../../../messages"));
var t = _interopRequire(require("../../../types"));
exports.check = function (node) {

@@ -7,0 +12,0 @@ return t.isVariableDeclaration(node, { kind: "const" });

"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var messages = require("../../../messages");
var t = require("../../../types");
var messages = _interopRequireWildcard(require("../../../messages"));
var t = _interopRequire(require("../../../types"));
exports.check = t.isPattern;

@@ -9,0 +14,0 @@

"use strict";
var messages = require("../../../messages");
var util = require("../../../util");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var messages = _interopRequireWildcard(require("../../../messages"));
var util = _interopRequireWildcard(require("../../../util"));
var t = _interopRequire(require("../../../types"));
exports.check = t.isForOfStatement;

@@ -37,3 +43,3 @@

return loop;
return build.node;
};

@@ -109,2 +115,3 @@

declar: declar,
node: loop,
loop: loop

@@ -135,8 +142,14 @@ };

var loop = util.template("for-of", {
var template = util.template("for-of", {
ITERATOR_HAD_ERROR_KEY: scope.generateUidIdentifier("didIteratorError"),
ITERATOR_COMPLETION: scope.generateUidIdentifier("iteratorNormalCompletion"),
ITERATOR_ERROR_KEY: scope.generateUidIdentifier("iteratorError"),
ITERATOR_KEY: iteratorKey,
STEP_KEY: stepKey,
OBJECT: node.right
OBJECT: node.right,
BODY: null
});
var loop = template[3].block.body[0];
//

@@ -146,6 +159,6 @@

iteratorKey: iteratorKey,
label: t.isLabeledStatement(parent) && parent.label.name,
wrapReturn: function wrapReturn(node) {
return t.ifStatement(t.memberExpression(iteratorKey, t.identifier("return")), node);
},
label: t.isLabeledStatement(parent) && parent.label.name
}
});

@@ -157,4 +170,5 @@

declar: declar,
loop: loop
loop: loop,
node: template
};
};
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.ImportDeclaration = ImportDeclaration;
exports.ExportDeclaration = ExportDeclaration;
var t = _interopRequire(require("../../../types"));
exports.check = require("../internal/modules").check;
exports.ImportDeclaration = function (node, parent, scope, file) {
function ImportDeclaration(node, parent, scope, file) {
// flow type

@@ -27,5 +31,5 @@ if (node.isType) return;

return nodes;
};
}
exports.ExportDeclaration = function (node, parent, scope, file) {
function ExportDeclaration(node, parent, scope, file) {
// flow type

@@ -59,2 +63,3 @@ if (t.isTypeAlias(node.declaration)) return;

return nodes;
};
}
exports.__esModule = true;
"use strict";
var ReplaceSupers = require("../../helpers/replace-supers");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.check = function (node) {
exports.check = check;
exports.Property = Property;
var ReplaceSupers = _interopRequire(require("../../helpers/replace-supers"));
var t = _interopRequire(require("../../../types"));
function check(node) {
return t.isIdentifier(node, { name: "super" });
};
}
exports.Property = function (node, parent, scope, file) {
function Property(node, parent, scope, file) {
if (!node.method) return;

@@ -30,2 +36,3 @@

}
};
}
exports.__esModule = true;
"use strict";
var util = require("../../../util");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.check = function (node) {
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
exports.check = check;
var util = _interopRequireWildcard(require("../../../util"));
var t = _interopRequire(require("../../../types"));
function check(node) {
return t.isFunction(node) && hasDefaults(node);
};
}

@@ -104,2 +111,3 @@ var hasDefaults = function hasDefaults(node) {

}
};
};
exports.__esModule = true;
"use strict";
var util = require("../../../util");
var t = require("../../../types");
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var isNumber = _interopRequire(require("lodash/lang/isNumber"));
var util = _interopRequireWildcard(require("../../../util"));
var t = _interopRequire(require("../../../types"));
exports.check = t.isRestElement;
var memberExpressionOptimisationVisitor = {
enter: function enter(node, parent, scope, state) {
// check if this scope has a local binding that will shadow the rest parameter
if (t.isScope(node, parent) && !scope.bindingIdentifierEquals(state.name, state.outerBinding)) {
return this.skip();
}
// skip over functions as whatever `arguments` we reference inside will refer
// to the wrong function
if (t.isFunctionDeclaration(node) || t.isFunctionExpression(node)) {
state.noOptimise = true;
scope.traverse(node, memberExpressionOptimisationVisitor, state);
state.noOptimise = false;
return this.skip();
}
// is this a referenced identifier and is it referencing the rest parameter?
if (!t.isReferencedIdentifier(node, parent, { name: state.name })) return;
if (!state.noOptimise && t.isMemberExpression(parent) && parent.computed) {
// if we know that this member expression is referencing a number then we can safely
// optimise it
var prop = parent.property;
if (isNumber(prop.value) || t.isUnaryExpression(prop) || t.isBinaryExpression(prop)) {
optimizeMemberExpression(node, parent, state.method.params.length);
state.hasShorthand = true;
return;
}
}
state.longForm = true;
}
};
function optimizeMemberExpression(node, parent, offset) {
var newExpr;
var prop = parent.property;
if (t.isLiteral(prop)) {
node.name = "arguments";
prop.value += offset;
prop.raw = String(prop.value);
} else {
// // UnaryExpression, BinaryExpression
node.name = "arguments";
newExpr = t.binaryExpression("+", prop, t.literal(offset));
parent.property = newExpr;
}
}
var hasRest = function hasRest(node) {

@@ -22,2 +79,29 @@ return t.isRestElement(node.params[node.params.length - 1]);

// support patterns
if (t.isPattern(rest)) {
var pattern = rest;
rest = scope.generateUidIdentifier("ref");
var declar = t.variableDeclaration("var", pattern.elements.map(function (elem, index) {
var accessExpr = t.memberExpression(rest, t.literal(index), true);
return t.variableDeclarator(elem, accessExpr);
}));
node.body.body.unshift(declar);
}
// check if rest is used in member expressions and optimise for those cases
var state = {
outerBinding: scope.getBindingIdentifier(rest.name),
hasShorthand: true,
longForm: false,
method: node,
name: rest.name };
scope.traverse(node, memberExpressionOptimisationVisitor, state);
// we only have shorthands and there's no other references
if (!state.longForm && state.hasShorthand) return;
//
var start = t.literal(node.params.length);

@@ -44,16 +128,2 @@ var key = scope.generateUidIdentifier("key");

// support patterns
if (t.isPattern(rest)) {
var pattern = rest;
rest = scope.generateUidIdentifier("ref");
// let the destructuring transformer handle this
var restDeclar = t.variableDeclaration("var", [t.variableDeclarator(pattern, rest)]);
// retain evaluation position
restDeclar._blockHoist = node.params.length + 1;
node.body.body.unshift(restDeclar);
}
scope.assignTypeGeneric(rest.name, "Array");

@@ -60,0 +130,0 @@

"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.check = function (node) {
return t.isProperty(node) && node.computed;
};
exports.check = check;
exports.ObjectExpression = ObjectExpression;
exports.ObjectExpression = function (node, parent, scope, file) {
var hasComputed = false;
var t = _interopRequire(require("../../../types"));
function loose(node, body, objId) {
for (var i = 0; i < node.properties.length; i++) {
hasComputed = t.isProperty(node.properties[i], { computed: true, kind: "init" });
if (hasComputed) break;
}
if (!hasComputed) return;
var initProps = [];
var objId = scope.generateUidBasedOnNode(parent);
//
var body = [];
var container = t.functionExpression(null, [], t.blockStatement(body));
container._aliasFunction = true;
//
var callback = spec;
if (file.isLoose("es6.properties.computed")) callback = loose;
var result = callback(node, body, objId, initProps, file);
if (result) return result;
//
body.unshift(t.variableDeclaration("var", [t.variableDeclarator(objId, t.objectExpression(initProps))]));
body.push(t.returnStatement(objId));
return t.callExpression(container, []);
};
var loose = function loose(node, body, objId) {
for (var i = 0; i < node.properties.length; i++) {
var prop = node.properties[i];

@@ -51,5 +16,5 @@

}
};
}
var spec = function spec(node, body, objId, initProps, file) {
function spec(node, body, objId, initProps, file) {
var props = node.properties;

@@ -118,2 +83,43 @@ var prop, key;

}
};
}
function check(node) {
return t.isProperty(node) && node.computed;
}
function ObjectExpression(node, parent, scope, file) {
var hasComputed = false;
for (var i = 0; i < node.properties.length; i++) {
hasComputed = t.isProperty(node.properties[i], { computed: true, kind: "init" });
if (hasComputed) break;
}
if (!hasComputed) return;
var initProps = [];
var objId = scope.generateUidBasedOnNode(parent);
//
var body = [];
var container = t.functionExpression(null, [], t.blockStatement(body));
container._aliasFunction = true;
//
var callback = spec;
if (file.isLoose("es6.properties.computed")) callback = loose;
var result = callback(node, body, objId, initProps, file);
if (result) return result;
//
body.unshift(t.variableDeclaration("var", [t.variableDeclarator(objId, t.objectExpression(initProps))]));
body.push(t.returnStatement(objId));
return t.callExpression(container, []);
}
exports.__esModule = true;
"use strict";
var clone = require("lodash/lang/clone");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.check = function (node) {
exports.check = check;
exports.Property = Property;
var clone = _interopRequire(require("lodash/lang/clone"));
var t = _interopRequire(require("../../../types"));
function check(node) {
return t.isProperty(node) && (node.method || node.shorthand);
};
}
exports.Property = function (node) {
function Property(node) {
if (node.method) {

@@ -19,2 +25,3 @@ node.method = false;

}
};
}
exports.__esModule = true;
"use strict";
var includes = require("lodash/collection/includes");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.ArrayExpression = ArrayExpression;
exports.CallExpression = CallExpression;
exports.NewExpression = NewExpression;
var includes = _interopRequire(require("lodash/collection/includes"));
var t = _interopRequire(require("../../../types"));
exports.check = t.isSpreadElement;
var getSpreadLiteral = function getSpreadLiteral(spread, scope) {
function getSpreadLiteral(spread, scope) {
return scope.toArray(spread.argument, true);
};
}
var hasSpread = function hasSpread(nodes) {
function hasSpread(nodes) {
for (var i = 0; i < nodes.length; i++) {

@@ -19,5 +26,5 @@ if (t.isSpreadElement(nodes[i])) {

return false;
};
}
var build = function build(props, scope) {
function build(props, scope) {
var nodes = [];

@@ -46,5 +53,5 @@

return nodes;
};
}
exports.ArrayExpression = function (node, parent, scope) {
function ArrayExpression(node, parent, scope) {
var elements = node.elements;

@@ -62,5 +69,5 @@ if (!hasSpread(elements)) return;

return t.callExpression(t.memberExpression(first, t.identifier("concat")), nodes);
};
}
exports.CallExpression = function (node, parent, scope) {
function CallExpression(node, parent, scope) {
var args = node.arguments;

@@ -103,5 +110,5 @@ if (!hasSpread(args)) return;

node.arguments.unshift(contextLiteral);
};
}
exports.NewExpression = function (node, parent, scope, file) {
function NewExpression(node, parent, scope, file) {
var args = node.arguments;

@@ -131,2 +138,3 @@ if (!hasSpread(args)) return;

}
};
}
exports.__esModule = true;
"use strict";
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var reduceRight = require("lodash/collection/reduceRight");
var messages = require("../../../messages");
var flatten = require("lodash/array/flatten");
var util = require("../../../util");
var map = require("lodash/collection/map");
var t = require("../../../types");
var reduceRight = _interopRequire(require("lodash/collection/reduceRight"));
var messages = _interopRequireWildcard(require("../../../messages"));
var flatten = _interopRequire(require("lodash/array/flatten"));
var util = _interopRequireWildcard(require("../../../util"));
var map = _interopRequire(require("lodash/collection/map"));
var t = _interopRequire(require("../../../types"));
exports.Function = function (node, parent, scope, file) {

@@ -13,0 +22,0 @@ var tailCall = new TailCallTransformer(node, scope, file);

"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.check = check;
exports.TaggedTemplateExpression = TaggedTemplateExpression;
exports.TemplateLiteral = TemplateLiteral;
var t = _interopRequire(require("../../../types"));
var buildBinaryExpression = function buildBinaryExpression(left, right) {

@@ -9,7 +15,7 @@ return t.binaryExpression("+", left, right);

exports.check = function (node) {
function check(node) {
return t.isTemplateLiteral(node) || t.isTaggedTemplateExpression(node);
};
}
exports.TaggedTemplateExpression = function (node, parent, scope, file) {
function TaggedTemplateExpression(node, parent, scope, file) {
var args = [];

@@ -37,5 +43,5 @@ var quasi = node.quasi;

return t.callExpression(node.tag, args);
};
}
exports.TemplateLiteral = function (node) {
function TemplateLiteral(node) {
var nodes = [];

@@ -68,2 +74,3 @@ var i;

}
};
}
exports.__esModule = true;
"use strict";
var rewritePattern = require("regexpu/rewrite-pattern");
var pull = require("lodash/array/pull");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.check = function (node) {
exports.check = check;
exports.Literal = Literal;
var rewritePattern = _interopRequire(require("regexpu/rewrite-pattern"));
var pull = _interopRequire(require("lodash/array/pull"));
var t = _interopRequire(require("../../../types"));
function check(node) {
return t.isLiteral(node) && node.regex && node.regex.flags.indexOf("u") >= 0;
};
}
exports.Literal = function (node) {
function Literal(node) {
var regex = node.regex;

@@ -21,2 +28,3 @@ if (!regex) return;

regex.flags = flags.join("");
};
}
exports.__esModule = true;
"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
exports.AssignmentExpression = AssignmentExpression;
exports.UnaryExpression = UnaryExpression;
exports.CallExpression = CallExpression;
exports.VirtualPropertyExpression = VirtualPropertyExpression;
exports.PrivateDeclaration = PrivateDeclaration;
// https://github.com/zenparsing/es-abstract-refs
var util = require("../../../util");
var t = require("../../../types");
var util = _interopRequireWildcard(require("../../../util"));
exports.experimental = true;
var t = _interopRequire(require("../../../types"));
var experimental = exports.experimental = true;
var container = function container(parent, call, ret, file) {

@@ -26,3 +36,3 @@ if (t.isExpressionStatement(parent) && !file.isConsequenceExpressionStatement(parent)) {

exports.AssignmentExpression = function (node, parent, scope, file) {
function AssignmentExpression(node, parent, scope, file) {
var left = node.left;

@@ -58,5 +68,5 @@ if (!t.isVirtualPropertyExpression(left)) return;

return container(parent, call, value, file);
};
}
exports.UnaryExpression = function (node, parent, scope, file) {
function UnaryExpression(node, parent, scope, file) {
var arg = node.argument;

@@ -72,5 +82,5 @@ if (!t.isVirtualPropertyExpression(arg)) return;

return container(parent, call, t.literal(true), file);
};
}
exports.CallExpression = function (node, parent, scope) {
function CallExpression(node, parent, scope) {
var callee = node.callee;

@@ -93,5 +103,5 @@ if (!t.isVirtualPropertyExpression(callee)) return;

}
};
}
exports.VirtualPropertyExpression = function (node) {
function VirtualPropertyExpression(node) {
return util.template("abstract-expression-get", {

@@ -101,8 +111,9 @@ PROPERTY: node.property,

});
};
}
exports.PrivateDeclaration = function (node) {
function PrivateDeclaration(node) {
return t.variableDeclaration("const", node.declarations.map(function (id) {
return t.variableDeclarator(id, t.newExpression(t.identifier("WeakMap"), []));
}));
};
}
exports.__esModule = true;
"use strict";
var buildComprehension = require("../../helpers/build-comprehension");
var traverse = require("../../../traversal");
var util = require("../../../util");
var t = require("../../../types");
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
exports.experimental = true;
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.ComprehensionExpression = function (node, parent, scope, file) {
exports.ComprehensionExpression = ComprehensionExpression;
var buildComprehension = _interopRequire(require("../../helpers/build-comprehension"));
var traverse = _interopRequire(require("../../../traversal"));
var util = _interopRequireWildcard(require("../../../util"));
var t = _interopRequire(require("../../../types"));
var experimental = exports.experimental = true;
function ComprehensionExpression(node, parent, scope, file) {
var callback = array;
if (node.generator) callback = generator;
return callback(node, parent, scope, file);
};
}
var generator = function generator(node) {
function generator(node) {
var body = [];

@@ -26,5 +35,5 @@ var container = t.functionExpression(null, [], t.blockStatement(body), true);

return t.callExpression(container, []);
};
}
var array = function array(node, parent, scope, file) {
function array(node, parent, scope, file) {
var uid = scope.generateUidBasedOnNode(parent, file);

@@ -56,2 +65,3 @@

return container;
};
}
exports.__esModule = true;
"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
// https://github.com/rwaldron/exponentiation-operator
exports.experimental = true;
var build = _interopRequire(require("../../helpers/build-binary-assignment-operator-transformer"));
var build = require("../../helpers/build-binary-assignment-operator-transformer");
var t = require("../../../types");
var t = _interopRequire(require("../../../types"));
var experimental = exports.experimental = true;
var MATH_POW = t.memberExpression(t.identifier("Math"), t.identifier("pow"));

@@ -18,2 +21,3 @@

}
});
});
exports.__esModule = true;
"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.manipulateOptions = manipulateOptions;
exports.ObjectExpression = ObjectExpression;
// https://github.com/sebmarkbage/ecmascript-rest-spread
var t = require("../../../types");
var t = _interopRequire(require("../../../types"));
exports.experimental = true;
var experimental = exports.experimental = true;
exports.manipulateOptions = function (opts) {
function manipulateOptions(opts) {
if (opts.whitelist.length) opts.whitelist.push("es6.destructuring");
};
}

@@ -22,3 +26,3 @@ var hasSpread = function hasSpread(node) {

exports.ObjectExpression = function (node, parent, scope, file) {
function ObjectExpression(node, parent, scope, file) {
if (!hasSpread(node)) return;

@@ -52,2 +56,3 @@

return t.callExpression(file.addHelper("extends"), args);
};
}
exports.__esModule = true;

@@ -52,3 +52,4 @@ "use strict";

"es6.unicodeRegex": require("./es6/unicode-regex"),
"es6.regex.sticky": require("./es6/regex.sticky"),
"es6.regex.unicode": require("./es6/regex.unicode"),
"es7.abstractReferences": require("./es7/abstract-references"),

@@ -55,0 +56,0 @@

"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var t = _interopRequire(require("../../../types"));
var functionChildrenVisitor = {

@@ -6,0 +8,0 @@ enter: function enter(node, parent, scope, state) {

"use strict";
var groupBy = require("lodash/collection/groupBy");
var flatten = require("lodash/array/flatten");
var values = require("lodash/object/values");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var groupBy = _interopRequire(require("lodash/collection/groupBy"));
var flatten = _interopRequire(require("lodash/array/flatten"));
var values = _interopRequire(require("lodash/object/values"));
// Priority:

@@ -8,0 +12,0 @@ //

"use strict";
exports.SequenceExpression = function (node) {
exports.SequenceExpression = SequenceExpression;
function SequenceExpression(node) {
if (node.expressions.length === 1) {
return node.expressions[0];
}
};
}
exports.__esModule = true;
"use strict";
var useStrict = require("../../helpers/use-strict");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.secondPass = true;
var useStrict = _interopRequire(require("../../helpers/use-strict"));
var t = _interopRequire(require("../../../types"));
var secondPass = exports.secondPass = true;
exports.BlockStatement = exports.Program = function (node, parent, scope, file) {

@@ -38,2 +41,3 @@ if (!node._declarations) return;

});
};
};
exports.__esModule = true;
"use strict";
var useStrict = require("../../helpers/use-strict");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.Program = function (program, parent, scope, file) {
exports.Program = Program;
var useStrict = _interopRequire(require("../../helpers/use-strict"));
function Program(program, parent, scope, file) {
if (!file.transformers["es6.modules"].canRun()) return;

@@ -15,2 +19,3 @@

}
};
}
exports.__esModule = true;
"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.check = check;
exports.ImportDeclaration = ImportDeclaration;
exports.ExportDeclaration = ExportDeclaration;
// in this transformer we have to split up classes and function declarations

@@ -9,15 +14,9 @@ // from their exports. why? because sometimes we need to replace classes with

var t = require("../../../types");
var t = _interopRequire(require("../../../types"));
var resolveModuleSource = (function (_resolveModuleSource) {
var _resolveModuleSourceWrapper = function resolveModuleSource() {
return _resolveModuleSource.apply(this, arguments);
};
function check(node) {
return t.isImportDeclaration(node) || t.isExportDeclaration(node);
}
_resolveModuleSourceWrapper.toString = function () {
return _resolveModuleSource.toString();
};
return _resolveModuleSourceWrapper;
})(function (node, parent, scope, file) {
function ImportDeclaration(node, parent, scope, file) {
var resolveModuleSource = file.opts.resolveModuleSource;

@@ -27,13 +26,7 @@ if (node.source && resolveModuleSource) {

}
});
}
exports.check = function (node) {
return t.isImportDeclaration(node) || t.isExportDeclaration(node);
};
function ExportDeclaration(node, parent, scope) {
ImportDeclaration.apply(this, arguments);
exports.ImportDeclaration = resolveModuleSource;
exports.ExportDeclaration = function (node, parent, scope) {
resolveModuleSource.apply(null, arguments);
// flow type

@@ -44,6 +37,11 @@ if (node.isType) return;

var getDeclar = function getDeclar() {
declar._ignoreUserWhitespace = true;
return declar;
};
if (node["default"]) {
if (t.isClassDeclaration(declar)) {
node.declaration = declar.id;
return [declar, node];
return [getDeclar(), node];
} else if (t.isClassExpression(declar)) {

@@ -53,7 +51,7 @@ var temp = scope.generateUidIdentifier("default");

node.declaration = temp;
return [declar, node];
return [getDeclar(), node];
} else if (t.isFunctionDeclaration(declar)) {
node._blockHoist = 2;
node.declaration = declar.id;
return [declar, node];
return [getDeclar(), node];
}

@@ -65,5 +63,6 @@ } else {

node._blockHoist = 2;
return [declar, node];
return [getDeclar(), node];
}
}
};
}
exports.__esModule = true;
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.Program = function (program, parent, scope, file) {
exports.Program = Program;
var t = _interopRequire(require("../../../types"));
function Program(program, parent, scope, file) {
if (file.transformers.useStrict.canRun()) {
program.body.unshift(t.expressionStatement(t.literal("use strict")));
}
};
}
exports.__esModule = true;
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.optional = true;
exports.ExpressionStatement = ExpressionStatement;
exports.ExpressionStatement = function (node) {
var t = _interopRequire(require("../../../types"));
var optional = exports.optional = true;
function ExpressionStatement(node) {
// remove consequence-less expressions such as local variables and literals

@@ -19,5 +23,5 @@ // note: will remove directives

}
};
}
exports.IfStatement = {
var IfStatement = exports.IfStatement = {
exit: function exit(node) {

@@ -79,2 +83,3 @@ // todo: in scenarios where we can just return the consequent or

}
};
};
exports.__esModule = true;
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.CallExpression = CallExpression;
var t = _interopRequire(require("../../../types"));
var isConsole = t.buildMatchMemberExpression("console", true);
exports.optional = true;
var optional = exports.optional = true;
exports.CallExpression = function (node, parent) {
function CallExpression(node, parent) {
if (isConsole(node.callee)) {

@@ -17,2 +21,3 @@ if (t.isExpressionStatement(parent)) {

}
};
}
exports.__esModule = true;
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.optional = true;
exports.ExpressionStatement = ExpressionStatement;
exports.ExpressionStatement = function (node) {
var t = _interopRequire(require("../../../types"));
var optional = exports.optional = true;
function ExpressionStatement(node) {
if (t.isIdentifier(node.expression, { name: "debugger" })) {
this.remove();
}
};
}
exports.__esModule = true;
"use strict";
//var t = require("../../../types");
exports.Scopable = Scopable;
//import t from "../../../types";
exports.optional = true;
var optional = exports.optional = true;
exports.Scopable = function () {};
function Scopable() {}
exports.__esModule = true;

@@ -9,0 +11,0 @@ //for (var name in scope.bindings) {

"use strict";
var remapAsyncToGenerator = require("../../helpers/remap-async-to-generator");
var bluebirdCoroutines = require("./bluebird-coroutines");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.optional = true;
var remapAsyncToGenerator = _interopRequire(require("../../helpers/remap-async-to-generator"));
exports.manipulateOptions = bluebirdCoroutines.manipulateOptions;
exports.manipulateOptions = require("./bluebird-coroutines").manipulateOptions;
var optional = exports.optional = true;

@@ -14,2 +14,3 @@ exports.Function = function (node, parent, scope, file) {

return remapAsyncToGenerator(node, file.addHelper("async-to-generator"), scope);
};
};
exports.__esModule = true;
"use strict";
var remapAsyncToGenerator = require("../../helpers/remap-async-to-generator");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.manipulateOptions = function (opts) {
exports.manipulateOptions = manipulateOptions;
var remapAsyncToGenerator = _interopRequire(require("../../helpers/remap-async-to-generator"));
var t = _interopRequire(require("../../../types"));
function manipulateOptions(opts) {
opts.experimental = true;
opts.blacklist.push("regenerator");
};
}
exports.optional = true;
var optional = exports.optional = true;

@@ -17,2 +22,3 @@ exports.Function = function (node, parent, scope, file) {

return remapAsyncToGenerator(node, t.memberExpression(file.addImport("bluebird", null, true), t.identifier("coroutine")), scope);
};
};
exports.__esModule = true;
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.TypeCastExpression = function (node) {
exports.TypeCastExpression = TypeCastExpression;
exports.ImportDeclaration = ImportDeclaration;
exports.ExportDeclaration = ExportDeclaration;
var t = _interopRequire(require("../../../types"));
function TypeCastExpression(node) {
return node.expression;
};
}
exports.ImportDeclaration = function (node) {
function ImportDeclaration(node) {
if (node.isType) this.remove();
};
}
exports.ExportDeclaration = function (node) {
function ExportDeclaration(node) {
if (t.isTypeAlias(node.declaration)) this.remove();
};
}
exports.__esModule = true;
"use strict";
var react = require("../../helpers/react");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.manipulateOptions = function (opts) {
exports.manipulateOptions = manipulateOptions;
var react = _interopRequire(require("../../helpers/react"));
var t = _interopRequire(require("../../../types"));
function manipulateOptions(opts) {
opts.blacklist.push("react");
};
}
exports.optional = true;
var optional = exports.optional = true;

@@ -22,2 +27,3 @@ require("../../helpers/build-react-transformer")(exports, {

}
});
});
exports.__esModule = true;
"use strict";
var react = require("../../helpers/react");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.Program = Program;
var react = _interopRequire(require("../../helpers/react"));
var t = _interopRequire(require("../../../types"));
var JSX_ANNOTATION_REGEX = /^\*\s*@jsx\s+([^\s]+)/;
exports.Program = function (node, parent, scope, file) {
function Program(node, parent, scope, file) {
var id = "React.createElement";

@@ -27,3 +32,3 @@

}));
};
}

@@ -44,2 +49,3 @@ require("../../helpers/build-react-transformer")(exports, {

}
});
});
exports.__esModule = true;
"use strict";
var regenerator = require("regenerator-babel");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.check = function (node) {
exports.check = check;
var regenerator = _interopRequire(require("regenerator-babel"));
var t = _interopRequire(require("../../../types"));
function check(node) {
return t.isFunction(node) && (node.async || node.generator);
};
}
exports.Program = {
var Program = exports.Program = {
enter: function enter(ast) {

@@ -15,2 +20,3 @@ regenerator.transform(ast);

}
};
};
exports.__esModule = true;
"use strict";
var includes = require("lodash/collection/includes");
var util = require("../../../util");
var core = require("core-js/library");
var has = require("lodash/object/has");
var t = require("../../../types");
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.manipulateOptions = manipulateOptions;
exports.Program = Program;
exports.pre = pre;
exports.Identifier = Identifier;
var includes = _interopRequire(require("lodash/collection/includes"));
var util = _interopRequireWildcard(require("../../../util"));
var core = _interopRequire(require("core-js/library"));
var has = _interopRequire(require("lodash/object/has"));
var t = _interopRequire(require("../../../types"));
var isSymboliterator = t.buildMatchMemberExpression("Symbol.iterator");

@@ -67,13 +80,13 @@

exports.optional = true;
var optional = exports.optional = true;
exports.manipulateOptions = function (opts) {
function manipulateOptions(opts) {
if (opts.whitelist.length) opts.whitelist.push("es6.modules");
};
}
exports.Program = function (node, parent, scope, file) {
function Program(node, parent, scope, file) {
scope.traverse(node, astVisitor, file);
};
}
exports.pre = function (file) {
function pre(file) {
file.setDynamic("helpersNamespace", function () {

@@ -90,8 +103,9 @@ return file.addImport("babel-runtime/helpers", "babelHelpers");

});
};
}
exports.Identifier = function (node, parent, scope, file) {
function Identifier(node, parent, scope, file) {
if (t.isReferencedIdentifier(node, parent, { name: "regeneratorRuntime" })) {
return file.get("regeneratorIdentifier");
}
};
}
exports.__esModule = true;
"use strict";
var messages = require("../../../messages");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.Program = function (program) {
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
exports.Program = Program;
exports.ThisExpression = ThisExpression;
exports.CallExpression = CallExpression;
var messages = _interopRequireWildcard(require("../../../messages"));
var t = _interopRequire(require("../../../types"));
function Program(program) {
var first = program.body[0];

@@ -11,3 +20,3 @@ if (t.isExpressionStatement(first) && t.isLiteral(first.expression, { value: "use strict" })) {

}
};
}

@@ -18,10 +27,11 @@ exports.FunctionDeclaration = exports.FunctionExpression = function () {

exports.ThisExpression = function () {
function ThisExpression() {
return t.identifier("undefined");
};
}
exports.CallExpression = function (node, parent, scope, file) {
function CallExpression(node, parent, scope, file) {
if (t.isIdentifier(node.callee, { name: "eval" })) {
throw file.errorWithNode(node, messages.get("evalInStrictMode"));
}
};
}
exports.__esModule = true;
"use strict";
var messages = require("../../../messages");
var build = require("../../helpers/build-conditional-assignment-operator-transformer");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.playground = true;
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var messages = _interopRequireWildcard(require("../../../messages"));
var build = _interopRequire(require("../../helpers/build-conditional-assignment-operator-transformer"));
var t = _interopRequire(require("../../../types"));
var playground = exports.playground = true;
build(exports, {

@@ -34,2 +40,3 @@ is: (function (_is) {

}
});
});
exports.__esModule = true;
"use strict";
var build = require("../../helpers/build-conditional-assignment-operator-transformer");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.playground = true;
var build = _interopRequire(require("../../helpers/build-conditional-assignment-operator-transformer"));
var t = _interopRequire(require("../../../types"));
var playground = exports.playground = true;
build(exports, {

@@ -28,2 +31,3 @@ is: (function (_is) {

}
});
});
exports.__esModule = true;
"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _toConsumableArray = function (arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i]; return arr2; } else { return Array.from(arr); } };
var t = require("../../../types");
exports.BindMemberExpression = BindMemberExpression;
exports.BindFunctionExpression = BindFunctionExpression;
exports.playground = true;
var t = _interopRequire(require("../../../types"));
exports.BindMemberExpression = function (node, parent, scope) {
var playground = exports.playground = true;
function BindMemberExpression(node, parent, scope) {
var object = node.object;

@@ -23,5 +28,5 @@ var prop = node.property;

}
};
}
exports.BindFunctionExpression = function (node, parent, scope) {
function BindFunctionExpression(node, parent, scope) {
var buildCall = function buildCall(args) {

@@ -37,2 +42,3 @@ var param = scope.generateUidIdentifier("val");

}))]);
};
}
exports.__esModule = true;
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.playground = true;
var t = _interopRequire(require("../../../types"));
var playground = exports.playground = true;
var visitor = {

@@ -38,2 +40,3 @@ enter: function enter(node, parent, scope, state) {

return node;
};
};
exports.__esModule = true;
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.BlockStatement = function (node, parent, scope, file) {
exports.BlockStatement = BlockStatement;
var t = _interopRequire(require("../../../types"));
function BlockStatement(node, parent, scope, file) {
if (t.isFunction(parent) && parent.body === node || t.isExportDeclaration(parent)) {

@@ -26,2 +30,3 @@ return;

}
};
}
exports.__esModule = true;
"use strict";
var nameMethod = require("../../helpers/name-method");
exports.FunctionExpression = nameMethod.bare;
exports.FunctionExpression = require("../../helpers/name-method").bare;
exports.__esModule = true;
"use strict";
var t = require("../../../types");
var pull = require("lodash/array/pull");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var isProtoKey = function isProtoKey(node) {
exports.AssignmentExpression = AssignmentExpression;
exports.ExpressionStatement = ExpressionStatement;
exports.ObjectExpression = ObjectExpression;
var t = _interopRequire(require("../../../types"));
var pull = _interopRequire(require("lodash/array/pull"));
function isProtoKey(node) {
return t.isLiteral(t.toComputedKey(node, node.key), { value: "__proto__" });
};
}
var isProtoAssignmentExpression = function isProtoAssignmentExpression(node) {
function isProtoAssignmentExpression(node) {
var left = node.left;
return t.isMemberExpression(left) && t.isLiteral(t.toComputedKey(left, left.property), { value: "__proto__" });
};
}
var buildDefaultsCallExpression = function buildDefaultsCallExpression(expr, ref, file) {
function buildDefaultsCallExpression(expr, ref, file) {
return t.expressionStatement(t.callExpression(file.addHelper("defaults"), [ref, expr.right]));
};
}
exports.optional = true;
exports.secondPass = true;
var secondPass = exports.secondPass = true;
var optional = exports.optional = true;
exports.AssignmentExpression = function (node, parent, scope, file) {
function AssignmentExpression(node, parent, scope, file) {
if (!isProtoAssignmentExpression(node)) return;

@@ -34,5 +41,5 @@

return t.toSequenceExpression(nodes);
};
}
exports.ExpressionStatement = function (node, parent, scope, file) {
function ExpressionStatement(node, parent, scope, file) {
var expr = node.expression;

@@ -44,5 +51,5 @@ if (!t.isAssignmentExpression(expr, { operator: "=" })) return;

}
};
}
exports.ObjectExpression = function (node, parent, scope, file) {
function ObjectExpression(node, parent, scope, file) {
var proto;

@@ -64,2 +71,3 @@

}
};
}
exports.__esModule = true;
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.optional = true;
exports.UnaryExpression = UnaryExpression;
exports.UnaryExpression = function (node, parent, scope, file) {
var t = _interopRequire(require("../../../types"));
var optional = exports.optional = true;
function UnaryExpression(node, parent, scope, file) {
this.skip();

@@ -19,2 +23,3 @@

}
};
}
exports.__esModule = true;
"use strict";
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.optional = true;
exports.Identifier = Identifier;
exports.Identifier = function (node, parent) {
var t = _interopRequire(require("../../../types"));
var optional = exports.optional = true;
function Identifier(node, parent) {
if (node.name === "undefined" && t.isReferenced(node, parent)) {
return t.unaryExpression("void", t.literal(0), true);
}
};
}
exports.__esModule = true;
"use strict";
var messages = require("../../../messages");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.check = t.isFor;
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var messages = _interopRequireWildcard(require("../../../messages"));
var _types = require("../../../types");
var t = _interopRequire(_types);
exports.check = _types.isFor;
exports.ForInStatement = exports.ForOfStatement = function (node, parent, scope, file) {

@@ -14,2 +21,3 @@ var left = node.left;

}
};
};
exports.__esModule = true;
"use strict";
var messages = require("../../../messages");
var t = require("../../../types");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
exports.CallExpression = CallExpression;
exports.ModuleDeclaration = ModuleDeclaration;
var messages = _interopRequireWildcard(require("../../../messages"));
var t = _interopRequire(require("../../../types"));
// check if the input Literal `source` is an alternate casing of "react"

@@ -18,10 +26,11 @@ var check = function check(source, file) {

exports.CallExpression = function (node, parent, scope, file) {
function CallExpression(node, parent, scope, file) {
if (t.isIdentifier(node.callee, { name: "require" }) && node.arguments.length === 1) {
check(node.arguments[0], file);
}
};
}
exports.ImportDeclaration = exports.ExportDeclaration = function (node, parent, scope, file) {
function ModuleDeclaration(node, parent, scope, file) {
check(node.source, file);
};
}
exports.__esModule = true;
"use strict";
var messages = require("../../../messages");
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
exports.check = function (node) {
exports.check = check;
var messages = _interopRequireWildcard(require("../../../messages"));
function check(node) {
return node.kind === "set";
};
}

@@ -13,2 +17,3 @@ exports.MethodDefinition = exports.Property = function (node, parent, scope, file) {

}
};
};
exports.__esModule = true;
"use strict";
var levenshtein = require("leven");
var messages = require("../../../messages");
var t = require("../../../types");
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
exports.optional = true;
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.Identifier = function (node, parent, scope, file) {
exports.Identifier = Identifier;
var levenshtein = _interopRequire(require("leven"));
var messages = _interopRequireWildcard(require("../../../messages"));
var t = _interopRequire(require("../../../types"));
var optional = exports.optional = true;
function Identifier(node, parent, scope, file) {
if (!t.isReferenced(node, parent)) return;

@@ -40,2 +48,3 @@ if (scope.hasBinding(node.name)) return;

throw file.errorWithNode(node, msg, ReferenceError);
};
}
exports.__esModule = true;
"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var TraversalPath = require("./path");
var flatten = require("lodash/array/flatten");
var compact = require("lodash/array/compact");
var TraversalPath = _interopRequire(require("./path"));
var flatten = _interopRequire(require("lodash/array/flatten"));
var compact = _interopRequire(require("lodash/array/compact"));
var TraversalConext = (function () {

@@ -10,0 +14,0 @@ function TraversalConext(scope, opts, state, parentPath) {

"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
module.exports = traverse;
var TraversalContext = require("./context");
var includes = require("lodash/collection/includes");
var t = require("../types");
var TraversalContext = _interopRequire(require("./context"));
var includes = _interopRequire(require("lodash/collection/includes"));
var t = _interopRequire(require("../types"));
function traverse(parent, opts, scope, state) {

@@ -10,0 +14,0 @@ if (!parent) return;

"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _prototypeProperties = function (child, staticProps, instanceProps) { if (staticProps) Object.defineProperties(child, staticProps); if (instanceProps) Object.defineProperties(child.prototype, instanceProps); };

@@ -7,7 +9,10 @@

var traverse = require("./index");
var includes = require("lodash/collection/includes");
var Scope = require("./scope");
var t = require("../types");
var traverse = _interopRequire(require("./index"));
var includes = _interopRequire(require("lodash/collection/includes"));
var Scope = _interopRequire(require("./scope"));
var t = _interopRequire(require("../types"));
var TraversalPath = (function () {

@@ -94,3 +99,3 @@ function TraversalPath(context, parent, container, key) {

if (opts.blacklist && opts.blacklist.indexOf(node.type) > -1) {
return;
return false;
}

@@ -97,0 +102,0 @@

"use strict";
var _interopRequireWildcard = function (obj) { return obj && obj.__esModule ? obj : { "default": obj }; };
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var _classCallCheck = function (instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } };
var includes = require("lodash/collection/includes");
var traverse = require("./index");
var defaults = require("lodash/object/defaults");
var messages = require("../messages");
var globals = require("globals");
var flatten = require("lodash/array/flatten");
var extend = require("lodash/object/extend");
var object = require("../helpers/object");
var each = require("lodash/collection/each");
var t = require("../types");
var includes = _interopRequire(require("lodash/collection/includes"));
var traverse = _interopRequire(require("./index"));
var defaults = _interopRequire(require("lodash/object/defaults"));
var messages = _interopRequireWildcard(require("../messages"));
var globals = _interopRequire(require("globals"));
var flatten = _interopRequire(require("lodash/array/flatten"));
var extend = _interopRequire(require("lodash/object/extend"));
var object = _interopRequire(require("../helpers/object"));
var each = _interopRequire(require("lodash/collection/each"));
var t = _interopRequire(require("../types"));
var functionVariableVisitor = {

@@ -17,0 +30,0 @@ enter: function enter(node, parent, scope, state) {

@@ -17,4 +17,4 @@ {

"VariableDeclaration": ["Statement", "Declaration"],
"ExportDeclaration": ["Statement", "Declaration"],
"ImportDeclaration": ["Statement", "Declaration"],
"ExportDeclaration": ["Statement", "Declaration", "ModuleDeclaration"],
"ImportDeclaration": ["Statement", "Declaration", "ModuleDeclaration"],
"PrivateDeclaration": ["Statement", "Declaration"],

@@ -21,0 +21,0 @@

@@ -139,2 +139,7 @@ {

"TemplateLiteral": {
"quasis": null,
"expressions": null
},
"ThrowExpression": {

@@ -141,0 +146,0 @@ "argument": null

"use strict";
var toFastProperties = require("../helpers/to-fast-properties");
var isString = require("lodash/lang/isString");
var compact = require("lodash/array/compact");
var esutils = require("esutils");
var object = require("../helpers/object");
var each = require("lodash/collection/each");
var uniq = require("lodash/array/uniq");
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var t = exports;
var toFastProperties = _interopRequire(require("../helpers/to-fast-properties"));
var isString = _interopRequire(require("lodash/lang/isString"));
var compact = _interopRequire(require("lodash/array/compact"));
var esutils = _interopRequire(require("esutils"));
var object = _interopRequire(require("../helpers/object"));
var each = _interopRequire(require("lodash/collection/each"));
var uniq = _interopRequire(require("lodash/array/uniq"));
var t = {};
module.exports = t;
/**

@@ -525,3 +534,3 @@ * Registers `is[Type]` and `assert[Type]` generated functions for a given `type`.

exports.toExpression = function (node) {
t.toExpression = function (node) {
if (t.isExpressionStatement(node)) {

@@ -528,0 +537,0 @@ node = node.expression;

"use strict";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
exports.canCompile = canCompile;
exports.resolve = resolve;
exports.list = list;
exports.regexify = regexify;
exports.arrayify = arrayify;
exports.booleanify = booleanify;
exports.template = template;
exports.parseTemplate = parseTemplate;
require("./patch");
var cloneDeep = require("lodash/lang/cloneDeep");
var isBoolean = require("lodash/lang/isBoolean");
var contains = require("lodash/collection/contains");
var traverse = require("./traversal");
var isString = require("lodash/lang/isString");
var isRegExp = require("lodash/lang/isRegExp");
var isEmpty = require("lodash/lang/isEmpty");
var parse = require("./helpers/parse");
var debug = require("debug/node");
var path = require("path");
var util = require("util");
var each = require("lodash/collection/each");
var has = require("lodash/object/has");
var fs = require("fs");
var t = require("./types");
var buildDebug = _interopRequire(require("debug/node"));
exports.inherits = util.inherits;
var cloneDeep = _interopRequire(require("lodash/lang/cloneDeep"));
exports.debug = debug("babel");
var isBoolean = _interopRequire(require("lodash/lang/isBoolean"));
exports.canCompile = function (filename, altExts) {
var contains = _interopRequire(require("lodash/collection/contains"));
var traverse = _interopRequire(require("./traversal"));
var isString = _interopRequire(require("lodash/lang/isString"));
var isRegExp = _interopRequire(require("lodash/lang/isRegExp"));
var isEmpty = _interopRequire(require("lodash/lang/isEmpty"));
var parse = _interopRequire(require("./helpers/parse"));
var path = _interopRequire(require("path"));
var each = _interopRequire(require("lodash/collection/each"));
var has = _interopRequire(require("lodash/object/has"));
var fs = _interopRequire(require("fs"));
var t = _interopRequire(require("./types"));
exports.inherits = require("util").inherits;
var debug = exports.debug = buildDebug("babel");
function canCompile(filename, altExts) {
var exts = altExts || exports.canCompile.EXTENSIONS;
var ext = path.extname(filename);
return contains(exts, ext);
};
}
exports.canCompile.EXTENSIONS = [".js", ".jsx", ".es6", ".es"];
canCompile.EXTENSIONS = [".js", ".jsx", ".es6", ".es"];
exports.resolve = function (loc) {
function resolve(loc) {
try {

@@ -39,9 +61,9 @@ return require.resolve(loc);

}
};
}
exports.list = function (val) {
function list(val) {
return val ? val.split(",") : [];
};
}
exports.regexify = function (val) {
function regexify(val) {
if (!val) return new RegExp(/.^/);

@@ -52,5 +74,5 @@ if (Array.isArray(val)) val = val.join("|");

throw new TypeError("illegal type for regexify");
};
}
exports.arrayify = function (val) {
function arrayify(val) {
if (!val) return [];

@@ -61,9 +83,9 @@ if (isBoolean(val)) return [val];

throw new TypeError("illegal type for arrayify");
};
}
exports.booleanify = function (val) {
function booleanify(val) {
if (val === "true") return true;
if (val === "false") return false;
return val;
};
}

@@ -82,5 +104,5 @@ var templateVisitor = {

exports.template = function (name, nodes, keepExpression) {
var template = exports.templates[name];
if (!template) throw new ReferenceError("unknown template " + name);
function template(name, nodes, keepExpression) {
var ast = exports.templates[name];
if (!ast) throw new ReferenceError("unknown template " + name);

@@ -92,11 +114,11 @@ if (nodes === true) {

template = cloneDeep(template);
ast = cloneDeep(ast);
if (!isEmpty(nodes)) {
traverse(template, templateVisitor, null, nodes);
traverse(ast, templateVisitor, null, nodes);
}
if (template.body.length > 1) return template.body;
if (ast.body.length > 1) return ast.body;
var node = template.body[0];
var node = ast.body[0];

@@ -108,13 +130,13 @@ if (!keepExpression && t.isExpressionStatement(node)) {

}
};
}
exports.parseTemplate = function (loc, code) {
function parseTemplate(loc, code) {
var ast = parse({ filename: loc }, code).program;
return traverse.removeProperties(ast);
};
}
var loadTemplates = function loadTemplates() {
function loadTemplates() {
var templates = {};
var templatesLoc = __dirname + "/transformation/templates";
var templatesLoc = path.join(__dirname, "transformation/templates");
if (!fs.existsSync(templatesLoc)) {

@@ -128,10 +150,10 @@ throw new Error("no templates directory - this is most likely the " + "result of a broken `npm publish`. Please report to " + "https://github.com/babel/babel/issues");

var key = path.basename(name, path.extname(name));
var loc = templatesLoc + "/" + name;
var loc = path.join(templatesLoc, name);
var code = fs.readFileSync(loc, "utf8");
templates[key] = exports.parseTemplate(loc, code);
templates[key] = parseTemplate(loc, code);
});
return templates;
};
}

@@ -144,2 +166,3 @@ try {

exports.templates = loadTemplates();
}
}
exports.__esModule = true;
{
"name": "babel",
"description": "Turn ES6 code into readable vanilla ES5 with source maps",
"version": "4.5.5",
"version": "4.6.0",
"author": "Sebastian McKenzie <sebmck@gmail.com>",

@@ -52,3 +52,3 @@ "homepage": "https://babeljs.io/",

"is-integer": "^1.0.4",
"js-tokens": "0.4.1",
"js-tokens": "1.0.0",
"leven": "^1.0.1",

@@ -65,3 +65,3 @@ "line-numbers": "0.2.0",

"slash": "^1.0.0",
"source-map": "^0.1.43",
"source-map": "^0.4.0",
"source-map-support": "^0.2.9",

@@ -73,4 +73,6 @@ "source-map-to-comment": "^1.0.0",

"babel": "4.5.1",
"browserify": "^8.1.3",
"browserify": "^9.0.3",
"chai": "^2.0.0",
"eslint": "^0.15.1",
"babel-eslint": "^1.0.0",
"esvalid": "^1.1.0",

@@ -77,0 +79,0 @@ "istanbul": "^0.3.5",

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc