babel-core
Version:
Turn ES6 code into readable vanilla ES5 with source maps
2 lines • 1.09 MB
JavaScript
(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.babel=f()}})(function(){var define,module,exports;return 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";var transform=module.exports=require("../transformation");transform.version=require("../../../package").version;transform.transform=transform;transform.run=function(code){var opts=arguments[1]===undefined?{}:arguments[1];opts.sourceMap="inline";return new Function(transform(code,opts).code)()};transform.load=function(url,callback,_x,hold){var opts=arguments[2]===undefined?{}:arguments[2];var _opts=opts;if(!_opts.filename)_opts.filename=url;var xhr=global.ActiveXObject?new global.ActiveXObject("Microsoft.XMLHTTP"):new global.XMLHttpRequest;xhr.open("GET",url,true);if("overrideMimeType"in xhr)xhr.overrideMimeType("text/plain");xhr.onreadystatechange=function(){if(xhr.readyState!==4)return;var status=xhr.status;if(status===0||status===200){var param=[xhr.responseText,opts];if(!hold)transform.run.apply(transform,param);if(callback)callback(param)}else{throw new Error("Could not load "+url)}};xhr.send(null)};var runScripts=function runScripts(){var scripts=[];var types=["text/ecmascript-6","text/6to5","text/babel","module"];var index=0;var exec=function(_exec){var _execWrapper=function exec(){return _exec.apply(this,arguments)};_execWrapper.toString=function(){return _exec.toString()};return _execWrapper}(function(){var param=scripts[index];if(param instanceof Array){transform.run.apply(transform,param);index++;exec()}});var run=function run(script,i){var opts={};if(script.src){transform.load(script.src,function(param){scripts[i]=param;exec()},opts,true)}else{opts.filename="embedded";scripts[i]=[script.innerHTML,opts]}};var _scripts=global.document.getElementsByTagName("script");for(var i=0;i<_scripts.length;++i){var _script=_scripts[i];if(types.indexOf(_script.type)>=0)scripts.push(_script)}for(i in scripts){run(scripts[i],i)}exec()};if(global.addEventListener){global.addEventListener("DOMContentLoaded",runScripts,false)}else if(global.attachEvent){global.attachEvent("onload",runScripts)}}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{"../../../package":350,"../transformation":42}],2:[function(require,module,exports){"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=_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(){function Buffer(position,format){_classCallCheck(this,Buffer);this.position=position;this._indent=format.indent.base;this.format=format;this.buf=""}Buffer.prototype.get=function get(){return trimRight(this.buf)};Buffer.prototype.getIndent=function getIndent(){if(this.format.compact||this.format.concise){return""}else{return repeating(this.format.indent.style,this._indent)}};Buffer.prototype.indentSize=function indentSize(){return this.getIndent().length};Buffer.prototype.indent=function indent(){this._indent++};Buffer.prototype.dedent=function dedent(){this._indent--};Buffer.prototype.semicolon=function semicolon(){this.push(";")};Buffer.prototype.ensureSemicolon=function ensureSemicolon(){if(!this.isLast(";"))this.semicolon()};Buffer.prototype.rightBrace=function rightBrace(){this.newline(true);this.push("}")};Buffer.prototype.keyword=function keyword(name){this.push(name);this.space()};Buffer.prototype.space=function space(){if(this.format.compact)return;if(this.buf&&!this.isLast(" ")&&!this.isLast("\n")){this.push(" ")}};Buffer.prototype.removeLast=function removeLast(cha){if(this.format.compact)return;if(!this.isLast(cha))return;this.buf=this.buf.substr(0,this.buf.length-1);this.position.unshift(cha)};Buffer.prototype.newline=function newline(i,removeLast){if(this.format.compact)return;if(this.format.concise){this.space();return}if(!removeLast)removeLast=false;if(isNumber(i)){i=Math.min(2,i);if(this.endsWith("{\n")||this.endsWith(":\n"))i--;if(i<=0)return;while(i>0){this._newline(removeLast);i--}return}if(isBoolean(i)){removeLast=i}this._newline(removeLast)};Buffer.prototype._newline=function _newline(removeLast){if(this.endsWith("\n\n"))return;if(removeLast&&this.isLast("\n"))this.removeLast("\n");this.removeLast(" ");this._removeSpacesAfterLastNewline();this._push("\n")};Buffer.prototype._removeSpacesAfterLastNewline=function _removeSpacesAfterLastNewline(){var lastNewlineIndex=this.buf.lastIndexOf("\n");if(lastNewlineIndex===-1)return;var index=this.buf.length-1;while(index>lastNewlineIndex){if(this.buf[index]!==" "){break}index--}if(index===lastNewlineIndex){this.buf=this.buf.substring(0,index+1)}};Buffer.prototype.push=function push(str,noIndent){if(!this.format.compact&&this._indent&&!noIndent&&str!=="\n"){var indent=this.getIndent();str=str.replace(/\n/g,"\n"+indent);if(this.isLast("\n"))this._push(indent)}this._push(str)};Buffer.prototype._push=function _push(str){this.position.push(str);this.buf+=str};Buffer.prototype.endsWith=function endsWith(str){return this.buf.slice(-str.length)===str};Buffer.prototype.isLast=function isLast(cha){if(this.format.compact)return false;var buf=this.buf;var last=buf[buf.length-1];if(Array.isArray(cha)){return includes(cha,last)}else{return cha===last}};return Buffer}();module.exports=Buffer},{"lodash/collection/includes":210,"lodash/lang/isBoolean":295,"lodash/lang/isNumber":299,repeating:333,"trim-right":349}],3:[function(require,module,exports){"use strict";exports.File=File;exports.Program=Program;exports.BlockStatement=BlockStatement;function File(node,print){print(node.program)}function Program(node,print){print.sequence(node.body)}function BlockStatement(node,print){if(node.body.length===0){this.push("{}")}else{this.push("{");this.newline();print.sequence(node.body,{indent:true});this.removeLast("\n");this.rightBrace()}}exports.__esModule=true},{}],4:[function(require,module,exports){"use strict";exports.ClassDeclaration=ClassDeclaration;exports.ClassBody=ClassBody;exports.MethodDefinition=MethodDefinition;function ClassDeclaration(node,print){this.push("class");if(node.id){this.space();print(node.id)}print(node.typeParameters);if(node.superClass){this.push(" extends ");print(node.superClass);print(node.superTypeParameters)}if(node["implements"]){this.push(" implements ");print.join(node["implements"],{separator:", "})}this.space();print(node.body)}exports.ClassExpression=ClassDeclaration;function ClassBody(node,print){if(node.body.length===0){this.push("{}")}else{this.push("{");this.newline();this.indent();print.sequence(node.body);this.dedent();this.rightBrace()}}function MethodDefinition(node,print){if(node["static"]){this.push("static ")}this._method(node,print)}exports.__esModule=true},{}],5:[function(require,module,exports){"use strict";exports.ComprehensionBlock=ComprehensionBlock;exports.ComprehensionExpression=ComprehensionExpression;function ComprehensionBlock(node,print){this.keyword("for");this.push("(");print(node.left);this.push(" of ");print(node.right);this.push(")")}function ComprehensionExpression(node,print){this.push(node.generator?"(":"[");print.join(node.blocks,{separator:" "});this.space();if(node.filter){this.keyword("if");this.push("(");print(node.filter);this.push(")");this.space()}print(node.body);this.push(node.generator?")":"]")}exports.__esModule=true},{}],6:[function(require,module,exports){"use strict";var _interopRequireWildcard=function(obj){return obj&&obj.__esModule?obj:{"default":obj}};var _interopRequire=function(obj){return obj&&obj.__esModule?obj["default"]:obj};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.AssignmentExpression=AssignmentExpression;exports.MemberExpression=MemberExpression;var isInteger=_interopRequire(require("is-integer"));var isNumber=_interopRequire(require("lodash/lang/isNumber"));var t=_interopRequireWildcard(require("../../types"));function UnaryExpression(node,print){var hasSpace=/[a-z]$/.test(node.operator);var arg=node.argument;if(t.isUpdateExpression(arg)||t.isUnaryExpression(arg)){hasSpace=true}if(t.isUnaryExpression(arg)&&arg.operator==="!"){hasSpace=false}this.push(node.operator);if(hasSpace)this.push(" ");print(node.argument)}function UpdateExpression(node,print){if(node.prefix){this.push(node.operator);print(node.argument)}else{print(node.argument);this.push(node.operator)}}function ConditionalExpression(node,print){print(node.test);this.space();this.push("?");this.space();print(node.consequent);this.space();this.push(":");this.space();print(node.alternate)}function NewExpression(node,print){this.push("new ");print(node.callee);this.push("(");print.list(node.arguments);this.push(")")}function SequenceExpression(node,print){print.list(node.expressions)}function ThisExpression(){this.push("this")}function CallExpression(node,print){print(node.callee);this.push("(");var separator=",";if(node._prettyCall){separator+="\n";this.newline();this.indent()}else{separator+=" "}print.list(node.arguments,{separator:separator});if(node._prettyCall){this.newline();this.dedent()}this.push(")")}var buildYieldAwait=function buildYieldAwait(keyword){return function(node,print){this.push(keyword);if(node.delegate||node.all){this.push("*")}if(node.argument){this.space();print(node.argument)}}};var YieldExpression=exports.YieldExpression=buildYieldAwait("yield");var AwaitExpression=exports.AwaitExpression=buildYieldAwait("await");function EmptyStatement(){this.semicolon()}function ExpressionStatement(node,print){print(node.expression);this.semicolon()}function AssignmentExpression(node,print){print(node.left);this.push(" ");this.push(node.operator);this.push(" ");print(node.right)}exports.BinaryExpression=AssignmentExpression;exports.LogicalExpression=AssignmentExpression;exports.AssignmentPattern=AssignmentExpression;var SCIENTIFIC_NOTATION=/e/i;function MemberExpression(node,print){var obj=node.object;print(obj);if(!node.computed&&t.isMemberExpression(node.property)){throw new TypeError("Got a MemberExpression for MemberExpression property")}var computed=node.computed;if(t.isLiteral(node.property)&&isNumber(node.property.value)){computed=true}if(computed){this.push("[");print(node.property);this.push("]")}else{if(t.isLiteral(obj)&&isInteger(obj.value)&&!SCIENTIFIC_NOTATION.test(obj.value.toString())){this.push(".")}this.push(".");print(node.property)}}exports.__esModule=true},{"../../types":125,"is-integer":194,"lodash/lang/isNumber":299}],7:[function(require,module,exports){"use strict";var _interopRequireWildcard=function(obj){return obj&&obj.__esModule?obj:{"default":obj}};exports.AnyTypeAnnotation=AnyTypeAnnotation;exports.ArrayTypeAnnotation=ArrayTypeAnnotation;exports.BooleanTypeAnnotation=BooleanTypeAnnotation;exports.ClassProperty=ClassProperty;exports.DeclareClass=DeclareClass;exports.DeclareFunction=DeclareFunction;exports.DeclareModule=DeclareModule;exports.DeclareVariable=DeclareVariable;exports.FunctionTypeAnnotation=FunctionTypeAnnotation;exports.FunctionTypeParam=FunctionTypeParam;exports.InterfaceExtends=InterfaceExtends;exports._interfaceish=_interfaceish;exports.InterfaceDeclaration=InterfaceDeclaration;exports.IntersectionTypeAnnotation=IntersectionTypeAnnotation;exports.NullableTypeAnnotation=NullableTypeAnnotation;exports.NumberTypeAnnotation=NumberTypeAnnotation;exports.StringLiteralTypeAnnotation=StringLiteralTypeAnnotation;exports.StringTypeAnnotation=StringTypeAnnotation;exports.TupleTypeAnnotation=TupleTypeAnnotation;exports.TypeofTypeAnnotation=TypeofTypeAnnotation;exports.TypeAlias=TypeAlias;exports.TypeAnnotation=TypeAnnotation;exports.TypeParameterInstantiation=TypeParameterInstantiation;exports.ObjectTypeAnnotation=ObjectTypeAnnotation;exports.ObjectTypeCallProperty=ObjectTypeCallProperty;exports.ObjectTypeIndexer=ObjectTypeIndexer;exports.ObjectTypeProperty=ObjectTypeProperty;exports.QualifiedTypeIdentifier=QualifiedTypeIdentifier;exports.UnionTypeAnnotation=UnionTypeAnnotation;exports.TypeCastExpression=TypeCastExpression;exports.VoidTypeAnnotation=VoidTypeAnnotation;var t=_interopRequireWildcard(require("../../types"));function AnyTypeAnnotation(){this.push("any")}function ArrayTypeAnnotation(node,print){print(node.elementType);this.push("[");this.push("]")}function BooleanTypeAnnotation(node){this.push("bool")}function ClassProperty(node,print){if(node["static"])this.push("static ");print(node.key);print(node.typeAnnotation);this.semicolon()}function DeclareClass(node,print){this.push("declare class ");this._interfaceish(node,print)}function DeclareFunction(node,print){this.push("declare function ");print(node.id);print(node.id.typeAnnotation.typeAnnotation);this.semicolon()}function DeclareModule(node,print){this.push("declare module ");print(node.id);this.space();print(node.body)}function DeclareVariable(node,print){this.push("declare var ");print(node.id);print(node.id.typeAnnotation);this.semicolon()}function FunctionTypeAnnotation(node,print,parent){print(node.typeParameters);this.push("(");print.list(node.params);if(node.rest){if(node.params.length){this.push(",");this.space()}this.push("...");print(node.rest)}this.push(")");if(parent.type==="ObjectTypeProperty"||parent.type==="ObjectTypeCallProperty"||parent.type==="DeclareFunction"){this.push(":")}else{this.space();this.push("=>")}this.space();print(node.returnType)}function FunctionTypeParam(node,print){print(node.name);if(node.optional)this.push("?");this.push(":");this.space();print(node.typeAnnotation)}function InterfaceExtends(node,print){print(node.id);print(node.typeParameters)}exports.ClassImplements=InterfaceExtends;exports.GenericTypeAnnotation=InterfaceExtends;function _interfaceish(node,print){print(node.id);print(node.typeParameters);if(node["extends"].length){this.push(" extends ");print.join(node["extends"],{separator:", "})}this.space();print(node.body)}function InterfaceDeclaration(node,print){this.push("interface ");this._interfaceish(node,print)}function IntersectionTypeAnnotation(node,print){print.join(node.types,{separator:" & "})}function NullableTypeAnnotation(node,print){this.push("?");print(node.typeAnnotation)}function NumberTypeAnnotation(){this.push("number")}function StringLiteralTypeAnnotation(node){this._stringLiteral(node.value)}function StringTypeAnnotation(){this.push("string")}function TupleTypeAnnotation(node,print){this.push("[");print.join(node.types,{separator:", "});this.push("]")}function TypeofTypeAnnotation(node,print){this.push("typeof ");print(node.argument)}function TypeAlias(node,print){this.push("type ");print(node.id);print(node.typeParameters);this.space();this.push("=");this.space();print(node.right);this.semicolon()}function TypeAnnotation(node,print){this.push(":");this.space();if(node.optional)this.push("?");print(node.typeAnnotation)}function TypeParameterInstantiation(node,print){this.push("<");print.join(node.params,{separator:", "});this.push(">")}exports.TypeParameterDeclaration=TypeParameterInstantiation;function ObjectTypeAnnotation(node,print){this.push("{");var props=node.properties.concat(node.callProperties,node.indexers);if(props.length){this.space();print.list(props,{indent:true,separator:"; "});this.space()}this.push("}")}function ObjectTypeCallProperty(node,print){if(node["static"])this.push("static ");print(node.value)}function ObjectTypeIndexer(node,print){if(node["static"])this.push("static ");this.push("[");print(node.id);this.push(":");this.space();print(node.key);this.push("]");this.push(":");this.space();print(node.value)}function ObjectTypeProperty(node,print){if(node["static"])this.push("static ");print(node.key);if(node.optional)this.push("?");if(!t.isFunctionTypeAnnotation(node.value)){this.push(":");this.space()}print(node.value)}function QualifiedTypeIdentifier(node,print){print(node.qualification);this.push(".");print(node.id)}function UnionTypeAnnotation(node,print){print.join(node.types,{separator:" | "})}function TypeCastExpression(node,print){this.push("(");print(node.expression);print(node.typeAnnotation);this.push(")")}function VoidTypeAnnotation(node){this.push("void")}exports.__esModule=true},{"../../types":125}],8:[function(require,module,exports){"use strict";var _interopRequireWildcard=function(obj){return obj&&obj.__esModule?obj:{"default":obj}};var _interopRequire=function(obj){return obj&&obj.__esModule?obj["default"]:obj};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=_interopRequireWildcard(require("../../types"));function JSXAttribute(node,print){print(node.name);if(node.value){this.push("=");print(node.value)}}function JSXIdentifier(node){this.push(node.name)}function JSXNamespacedName(node,print){print(node.namespace);this.push(":");print(node.name)}function JSXMemberExpression(node,print){print(node.object);this.push(".");print(node.property)}function JSXSpreadAttribute(node,print){this.push("{...");print(node.argument);this.push("}")}function JSXExpressionContainer(node,print){this.push("{");print(node.expression);this.push("}")}function JSXElement(node,print){var _this=this;var open=node.openingElement;print(open);if(open.selfClosing)return;this.indent();each(node.children,function(child){if(t.isLiteral(child)){_this.push(child.value)}else{print(child)}});this.dedent();print(node.closingElement)}function JSXOpeningElement(node,print){this.push("<");print(node.name);if(node.attributes.length>0){this.push(" ");print.join(node.attributes,{separator:" "})}this.push(node.selfClosing?" />":">")}function JSXClosingElement(node,print){this.push("</");print(node.name);this.push(">")}function JSXEmptyExpression(){}exports.__esModule=true},{"../../types":125,"lodash/collection/each":207}],9:[function(require,module,exports){"use strict";var _interopRequireWildcard=function(obj){return obj&&obj.__esModule?obj:{"default":obj}};exports._params=_params;exports._method=_method;exports.FunctionExpression=FunctionExpression;exports.ArrowFunctionExpression=ArrowFunctionExpression;var t=_interopRequireWildcard(require("../../types"));function _params(node,print){var _this=this;print(node.typeParameters);this.push("(");print.list(node.params,{iterator:function(node){if(node.optional)_this.push("?");print(node.typeAnnotation)}});this.push(")");if(node.returnType){print(node.returnType)}}function _method(node,print){var value=node.value;var kind=node.kind;var key=node.key;if(!kind||kind==="init"){if(value.generator){this.push("*")}}else{this.push(kind+" ")}if(value.async)this.push("async ");if(node.computed){this.push("[");print(key);this.push("]")}else{print(key)}this._params(value,print);this.push(" ");print(value.body)}function FunctionExpression(node,print){if(node.async)this.push("async ");this.push("function");if(node.generator)this.push("*");if(node.id){this.push(" ");print(node.id)}else{this.space()}this._params(node,print);this.space();print(node.body)}exports.FunctionDeclaration=FunctionExpression;function ArrowFunctionExpression(node,print){if(node.async)this.push("async ");if(node.params.length===1&&t.isIdentifier(node.params[0])){print(node.params[0])}else{this._params(node,print)}this.push(" => ");print(node.body)}exports.__esModule=true},{"../../types":125}],10:[function(require,module,exports){"use strict";var _interopRequireWildcard=function(obj){return obj&&obj.__esModule?obj:{"default":obj}};var _interopRequire=function(obj){return obj&&obj.__esModule?obj["default"]:obj};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=_interopRequireWildcard(require("../../types"));function ImportSpecifier(node,print){if(t.isSpecifierDefault(node)){print(t.getSpecifierName(node))}else{return ExportSpecifier.apply(this,arguments)}}function ExportSpecifier(node,print){print(node.id);if(node.name){this.push(" as ");print(node.name)}}function ExportBatchSpecifier(){this.push("*")}function ExportDeclaration(node,print){this.push("export ");var specifiers=node.specifiers;if(node["default"]){this.push("default ")}if(node.declaration){print(node.declaration);if(t.isStatement(node.declaration))return}else{if(specifiers.length===1&&t.isExportBatchSpecifier(specifiers[0])){print(specifiers[0])}else{this.push("{");if(specifiers.length){this.space();print.join(specifiers,{separator:", "});this.space()}this.push("}")}if(node.source){this.push(" from ");print(node.source)}}this.ensureSemicolon()}function ImportDeclaration(node,print){var _this=this;this.push("import ");if(node.isType){this.push("type ")}var specfiers=node.specifiers;if(specfiers&&specfiers.length){var foundImportSpecifier=false;each(node.specifiers,function(spec,i){if(+i>0){_this.push(", ")}var isDefault=t.isSpecifierDefault(spec);if(!isDefault&&spec.type!=="ImportBatchSpecifier"&&!foundImportSpecifier){foundImportSpecifier=true;_this.push("{ ")}print(spec)});if(foundImportSpecifier){this.push(" }")}this.push(" from ")}print(node.source);this.semicolon()}function ImportBatchSpecifier(node,print){this.push("* as ");print(node.name)}exports.__esModule=true},{"../../types":125,"lodash/collection/each":207}],11:[function(require,module,exports){"use strict";var _interopRequire=function(obj){return obj&&obj.__esModule?obj["default"]:obj};var each=_interopRequire(require("lodash/collection/each"));each(["BindMemberExpression","BindFunctionExpression"],function(type){exports[type]=function(){throw new ReferenceError("Trying to render non-standard playground node "+JSON.stringify(type))}})},{"lodash/collection/each":207}],12:[function(require,module,exports){"use strict";var _interopRequireWildcard=function(obj){return obj&&obj.__esModule?obj:{"default":obj}};var _interopRequire=function(obj){return obj&&obj.__esModule?obj["default"]:obj};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=_interopRequireWildcard(require("../../types"));function WithStatement(node,print){this.keyword("with");this.push("(");print(node.object);this.push(")");print.block(node.body)}function IfStatement(node,print){this.keyword("if");this.push("(");print(node.test);this.push(")");this.space();print.indentOnComments(node.consequent);if(node.alternate){if(this.isLast("}"))this.space();this.push("else ");print.indentOnComments(node.alternate)}}function ForStatement(node,print){this.keyword("for");this.push("(");print(node.init);this.push(";");if(node.test){this.push(" ");print(node.test)}this.push(";");if(node.update){this.push(" ");print(node.update)}this.push(")");print.block(node.body)}function WhileStatement(node,print){this.keyword("while");this.push("(");print(node.test);this.push(")");print.block(node.body)}var buildForXStatement=function buildForXStatement(op){return function(node,print){this.keyword("for");this.push("(");print(node.left);this.push(" "+op+" ");print(node.right);this.push(")");print.block(node.body)}};var ForInStatement=exports.ForInStatement=buildForXStatement("in");var ForOfStatement=exports.ForOfStatement=buildForXStatement("of");function DoWhileStatement(node,print){this.keyword("do");print(node.body);this.space();this.keyword("while");this.push("(");print(node.test);this.push(");")}var buildLabelStatement=function buildLabelStatement(prefix,key){return function(node,print){this.push(prefix);var label=node[key||"label"];if(label){this.push(" ");print(label)}this.semicolon()}};var ContinueStatement=exports.ContinueStatement=buildLabelStatement("continue");var ReturnStatement=exports.ReturnStatement=buildLabelStatement("return","argument");var BreakStatement=exports.BreakStatement=buildLabelStatement("break");function LabeledStatement(node,print){print(node.label);this.push(": ");print(node.body)}function TryStatement(node,print){this.keyword("try");print(node.block);this.space();if(node.handlers){print(node.handlers[0])}else{print(node.handler)}if(node.finalizer){this.space();this.push("finally ");print(node.finalizer)}}function CatchClause(node,print){this.keyword("catch");this.push("(");print(node.param);this.push(") ");print(node.body)}function ThrowStatement(node,print){this.push("throw ");print(node.argument);this.semicolon()}function SwitchStatement(node,print){this.keyword("switch");this.push("(");print(node.discriminant);this.push(")");this.space();this.push("{");print.sequence(node.cases,{indent:true,addNewlines:function addNewlines(leading,cas){if(!leading&&node.cases[node.cases.length-1]===cas)return-1}});this.push("}")}function SwitchCase(node,print){if(node.test){this.push("case ");print(node.test);this.push(":")}else{this.push("default:")}if(node.consequent.length){this.newline();print.sequence(node.consequent,{indent:true})}}function DebuggerStatement(){this.push("debugger;")}function VariableDeclaration(node,print,parent){this.push(node.kind+" ");var hasInits=false;if(!t.isFor(parent)){for(var i=0;i<node.declarations.length;i++){if(node.declarations[i].init){hasInits=true}}}var sep=",";if(!this.format.compact&&hasInits){sep+="\n"+repeating(" ",node.kind.length+1)}else{sep+=" "}print.list(node.declarations,{separator:sep});if(!t.isFor(parent)){this.semicolon()}}function PrivateDeclaration(node,print){this.push("private ");print.join(node.declarations,{separator:", "});this.semicolon()}function VariableDeclarator(node,print){print(node.id);print(node.id.typeAnnotation);if(node.init){this.space();this.push("=");this.space();print(node.init)}}exports.__esModule=true},{"../../types":125,repeating:333}],13:[function(require,module,exports){"use strict";var _interopRequire=function(obj){return obj&&obj.__esModule?obj["default"]:obj};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)}function TemplateElement(node){this._push(node.value.raw)}function TemplateLiteral(node,print){var _this=this;this.push("`");var quasis=node.quasis;var len=quasis.length;each(quasis,function(quasi,i){print(quasi);if(i+1<len){_this.push("${ ");print(node.expressions[i]);_this.push(" }")}});this._push("`")}exports.__esModule=true},{"lodash/collection/each":207}],14:[function(require,module,exports){"use strict";var _interopRequire=function(obj){return obj&&obj.__esModule?obj["default"]:obj};exports.Identifier=Identifier;exports.RestElement=RestElement;exports.VirtualPropertyExpression=VirtualPropertyExpression;exports.ObjectExpression=ObjectExpression;exports.Property=Property;exports.ArrayExpression=ArrayExpression;exports.Literal=Literal;exports._stringLiteral=_stringLiteral;var each=_interopRequire(require("lodash/collection/each"));function Identifier(node){this.push(node.name)}function RestElement(node,print){this.push("...");print(node.argument)}exports.SpreadElement=RestElement;exports.SpreadProperty=RestElement;function VirtualPropertyExpression(node,print){print(node.object);this.push("::");print(node.property)}function ObjectExpression(node,print){var props=node.properties;if(props.length){this.push("{");this.space();print.list(props,{indent:true});this.space();this.push("}")}else{this.push("{}")}}exports.ObjectPattern=ObjectExpression;function Property(node,print){if(node.method||node.kind==="get"||node.kind==="set"){this._method(node,print)}else{if(node.computed){this.push("[");print(node.key);this.push("]")}else{print(node.key);if(node.shorthand)return}this.push(":");this.space();print(node.value)}}function ArrayExpression(node,print){var _this=this;var elems=node.elements;var len=elems.length;this.push("[");each(elems,function(elem,i){if(!elem){_this.push(",")}else{if(i>0)_this.push(" ");print(elem);if(i<len-1)_this.push(",")}});this.push("]")}exports.ArrayPattern=ArrayExpression;function Literal(node){var val=node.value;var type=typeof val;if(type==="string"){this._stringLiteral(val)}else if(type==="number"){this.push(val+"")}else if(type==="boolean"){this.push(val?"true":"false")}else if(node.regex){this.push("/"+node.regex.pattern+"/"+node.regex.flags)}else if(val===null){this.push("null")}}function _stringLiteral(val){val=JSON.stringify(val);val=val.replace(/[\u000A\u000D\u2028\u2029]/g,function(c){return"\\u"+("0000"+c.charCodeAt(0).toString(16)).slice(-4)});this.push(val)}exports.__esModule=true},{"lodash/collection/each":207}],15:[function(require,module,exports){"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=_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=_interopRequireWildcard(require("../types"));var CodeGenerator=function(){function CodeGenerator(ast,opts,code){_classCallCheck(this,CodeGenerator);if(!opts)opts={};this.comments=ast.comments||[];this.tokens=ast.tokens||[];this.format=CodeGenerator.normalizeOptions(code,opts);this.opts=opts;
this.ast=ast;this.whitespace=new Whitespace(this.tokens,this.comments,this.format);this.position=new Position;this.map=new SourceMap(this.position,opts,code);this.buffer=new Buffer(this.position,this.format)}CodeGenerator.normalizeOptions=function normalizeOptions(code,opts){var style=" ";if(code){var indent=detectIndent(code).indent;if(indent&&indent!==" ")style=indent}var format={comments:opts.comments==null||opts.comments,compact:opts.compact,indent:{adjustMultilineComment:true,style:style,base:0}};if(format.compact==="auto"){format.compact=code.length>1e5;if(format.compact){console.error(messages.get("codeGeneratorDeopt",opts.filename,"100KB"))}}return format};CodeGenerator.generators={templateLiterals:require("./generators/template-literals"),comprehensions:require("./generators/comprehensions"),expressions:require("./generators/expressions"),statements:require("./generators/statements"),playground:require("./generators/playground"),classes:require("./generators/classes"),methods:require("./generators/methods"),modules:require("./generators/modules"),types:require("./generators/types"),flow:require("./generators/flow"),base:require("./generators/base"),jsx:require("./generators/jsx")};CodeGenerator.prototype.generate=function generate(){var ast=this.ast;this.print(ast);var comments=[];each(ast.comments,function(comment){if(!comment._displayed)comments.push(comment)});this._printComments(comments);return{map:this.map.get(),code:this.buffer.get()}};CodeGenerator.prototype.buildPrint=function buildPrint(parent){var _this=this;var print=function(node,opts){return _this.print(node,parent,opts)};print.sequence=function(nodes){var opts=arguments[1]===undefined?{}:arguments[1];opts.statement=true;return _this.printJoin(print,nodes,opts)};print.join=function(nodes,opts){return _this.printJoin(print,nodes,opts)};print.list=function(items){var opts=arguments[1]===undefined?{}:arguments[1];var _opts=opts;if(!_opts.separator)_opts.separator=", ";print.join(items,opts)};print.block=function(node){return _this.printBlock(print,node)};print.indentOnComments=function(node){return _this.printAndIndentOnComments(print,node)};return print};CodeGenerator.prototype.print=function print(node,parent){var _this=this;var opts=arguments[2]===undefined?{}:arguments[2];if(!node)return;if(parent&&parent._compact){node._compact=true}var oldConcise=this.format.concise;if(node._compact){this.format.concise=true}var newline=function(leading){if(!opts.statement&&!n.isUserWhitespacable(node,parent)){return}var lines=0;if(node.start!=null&&!node._ignoreUserWhitespace){if(leading){lines=_this.whitespace.getNewlinesBefore(node)}else{lines=_this.whitespace.getNewlinesAfter(node)}}else{if(!leading)lines++;if(opts.addNewlines)lines+=opts.addNewlines(leading,node)||0;var needs=n.needsWhitespaceAfter;if(leading)needs=n.needsWhitespaceBefore;if(needs(node,parent))lines++;if(!_this.buffer.buf)lines=0}_this.newline(lines)};if(this[node.type]){var needsNoLineTermParens=n.needsParensNoLineTerminator(node,parent);var needsParens=needsNoLineTermParens||n.needsParens(node,parent);if(needsParens)this.push("(");if(needsNoLineTermParens)this.indent();this.printLeadingComments(node,parent);newline(true);if(opts.before)opts.before();this.map.mark(node,"start");this[node.type](node,this.buildPrint(node),parent);if(needsNoLineTermParens){this.newline();this.dedent()}if(needsParens)this.push(")");this.map.mark(node,"end");if(opts.after)opts.after();newline(false);this.printTrailingComments(node,parent)}else{throw new ReferenceError("unknown node of type "+JSON.stringify(node.type)+" with constructor "+JSON.stringify(node&&node.constructor.name))}this.format.concise=oldConcise};CodeGenerator.prototype.printJoin=function printJoin(print,nodes){var _this=this;var opts=arguments[2]===undefined?{}:arguments[2];if(!nodes||!nodes.length)return;var len=nodes.length;if(opts.indent)this.indent();each(nodes,function(node,i){print(node,{statement:opts.statement,addNewlines:opts.addNewlines,after:function(){if(opts.iterator){opts.iterator(node,i)}if(opts.separator&&i<len-1){_this.push(opts.separator)}}})});if(opts.indent)this.dedent()};CodeGenerator.prototype.printAndIndentOnComments=function printAndIndentOnComments(print,node){var indent=!!node.leadingComments;if(indent)this.indent();print(node);if(indent)this.dedent()};CodeGenerator.prototype.printBlock=function printBlock(print,node){if(t.isEmptyStatement(node)){this.semicolon()}else{this.push(" ");print(node)}};CodeGenerator.prototype.generateComment=function generateComment(comment){var val=comment.value;if(comment.type==="Line"){val="//"+val}else{val="/*"+val+"*/"}return val};CodeGenerator.prototype.printTrailingComments=function printTrailingComments(node,parent){this._printComments(this.getComments("trailingComments",node,parent))};CodeGenerator.prototype.printLeadingComments=function printLeadingComments(node,parent){this._printComments(this.getComments("leadingComments",node,parent))};CodeGenerator.prototype.getComments=function getComments(key,node,parent){var _this=this;if(t.isExpressionStatement(parent)){return[]}var comments=[];var nodes=[node];if(t.isExpressionStatement(node)){nodes.push(node.argument)}each(nodes,function(node){comments=comments.concat(_this._getComments(key,node))});return comments};CodeGenerator.prototype._getComments=function _getComments(key,node){return node&&node[key]||[]};CodeGenerator.prototype._printComments=function _printComments(comments){var _this=this;if(this.format.compact)return;if(!this.format.comments)return;if(!comments||!comments.length)return;each(comments,function(comment){var skip=false;each(_this.ast.comments,function(origComment){if(origComment.start===comment.start){if(origComment._displayed)skip=true;origComment._displayed=true;return false}});if(skip)return;_this.newline(_this.whitespace.getNewlinesBefore(comment));var column=_this.position.column;var val=_this.generateComment(comment);if(column&&!_this.isLast(["\n"," ","[","{"])){_this._push(" ");column++}if(comment.type==="Block"&&_this.format.indent.adjustMultilineComment){var offset=comment.loc.start.column;if(offset){var newlineRegex=new RegExp("\\n\\s{1,"+offset+"}","g");val=val.replace(newlineRegex,"\n")}var indent=Math.max(_this.indentSize(),column);val=val.replace(/\n/g,"\n"+repeating(" ",indent))}if(column===0){val=_this.getIndent()+val}_this._push(val);_this.newline(_this.whitespace.getNewlinesAfter(comment))})};return CodeGenerator}();each(Buffer.prototype,function(fn,key){CodeGenerator.prototype[key]=function(){return fn.apply(this.buffer,arguments)}});each(CodeGenerator.generators,function(generator){extend(CodeGenerator.prototype,generator)});module.exports=function(ast,opts,code){var gen=new CodeGenerator(ast,opts,code);return gen.generate()};module.exports.CodeGenerator=CodeGenerator},{"../messages":26,"../types":125,"./buffer":2,"./generators/base":3,"./generators/classes":4,"./generators/comprehensions":5,"./generators/expressions":6,"./generators/flow":7,"./generators/jsx":8,"./generators/methods":9,"./generators/modules":10,"./generators/playground":11,"./generators/statements":12,"./generators/template-literals":13,"./generators/types":14,"./node":16,"./position":19,"./source-map":20,"./whitespace":21,"detect-indent":186,"lodash/collection/each":207,"lodash/object/extend":307,repeating:333}],16:[function(require,module,exports){"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=_interopRequire(require("./whitespace"));var parens=_interopRequireWildcard(require("./parentheses"));var each=_interopRequire(require("lodash/collection/each"));var some=_interopRequire(require("lodash/collection/some"));var t=_interopRequireWildcard(require("../../types"));var find=function find(obj,node,parent){if(!obj)return;var result;var types=Object.keys(obj);for(var i=0;i<types.length;i++){var type=types[i];if(t.is(type,node)){var fn=obj[type];result=fn(node,parent);if(result!=null)break}}return result};var Node=function(){function Node(node,parent){_classCallCheck(this,Node);this.parent=parent;this.node=node}Node.isUserWhitespacable=function isUserWhitespacable(node){return t.isUserWhitespacable(node)};Node.needsWhitespace=function needsWhitespace(node,parent,type){if(!node)return 0;if(t.isExpressionStatement(node)){node=node.expression}var linesInfo=find(whitespace.nodes,node,parent);if(!linesInfo){var items=find(whitespace.list,node,parent);if(items){for(var i=0;i<items.length;i++){linesInfo=Node.needsWhitespace(items[i],node,type);if(linesInfo)break}}}return linesInfo&&linesInfo[type]||0};Node.needsWhitespaceBefore=function needsWhitespaceBefore(node,parent){return Node.needsWhitespace(node,parent,"before")};Node.needsWhitespaceAfter=function needsWhitespaceAfter(node,parent){return Node.needsWhitespace(node,parent,"after")};Node.needsParens=function needsParens(node,parent){if(!parent)return false;if(t.isNewExpression(parent)&&parent.callee===node){if(t.isCallExpression(node))return true;var hasCall=some(node,function(val){return t.isCallExpression(val)});if(hasCall)return true}return find(parens,node,parent)};Node.needsParensNoLineTerminator=function needsParensNoLineTerminator(node,parent){if(!parent)return false;if(!node.leadingComments||!node.leadingComments.length){return false}if(t.isYieldExpression(parent)||t.isAwaitExpression(parent)){return true}if(t.isContinueStatement(parent)||t.isBreakStatement(parent)||t.isReturnStatement(parent)||t.isThrowStatement(parent)){return true}return false};return Node}();module.exports=Node;each(Node,function(fn,key){Node.prototype[key]=function(){var args=new Array(arguments.length+2);args[0]=this.node;args[1]=this.parent;for(var i=0;i<args.length;i++){args[i+2]=arguments[i]}return Node[key].apply(null,args)}})},{"../../types":125,"./parentheses":17,"./whitespace":18,"lodash/collection/each":207,"lodash/collection/some":213}],17:[function(require,module,exports){"use strict";var _interopRequireWildcard=function(obj){return obj&&obj.__esModule?obj:{"default":obj}};var _interopRequire=function(obj){return obj&&obj.__esModule?obj["default"]:obj};exports.NullableTypeAnnotation=NullableTypeAnnotation;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;exports.ConditionalExpression=ConditionalExpression;var each=_interopRequire(require("lodash/collection/each"));var t=_interopRequireWildcard(require("../../types"));var PRECEDENCE={};each([["||"],["&&"],["|"],["^"],["&"],["==","===","!=","!=="],["<",">","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"],["**"]],function(tier,i){each(tier,function(op){PRECEDENCE[op]=i})});function NullableTypeAnnotation(node,parent){return t.isArrayTypeAnnotation(parent)}exports.FunctionTypeAnnotation=NullableTypeAnnotation;function UpdateExpression(node,parent){if(t.isMemberExpression(parent)&&parent.object===node){return true}}function ObjectExpression(node,parent){if(t.isExpressionStatement(parent)){return true}if(t.isMemberExpression(parent)&&parent.object===node){return true}return false}function Binary(node,parent){if((t.isCallExpression(parent)||t.isNewExpression(parent))&&parent.callee===node){return true}if(t.isUnaryLike(parent)){return true}if(t.isMemberExpression(parent)&&parent.object===node){return true}if(t.isBinary(parent)){var parentOp=parent.operator;var parentPos=PRECEDENCE[parentOp];var nodeOp=node.operator;var nodePos=PRECEDENCE[nodeOp];if(parentPos>nodePos){return true}if(parentPos===nodePos&&parent.right===node){return true}}}function BinaryExpression(node,parent){if(node.operator==="in"){if(t.isVariableDeclarator(parent)){return true}if(t.isFor(parent)){return true}}}function SequenceExpression(node,parent){if(t.isForStatement(parent)){return false}if(t.isExpressionStatement(parent)&&parent.expression===node){return false}return true}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)}function ClassExpression(node,parent){return t.isExpressionStatement(parent)}function UnaryLike(node,parent){return t.isMemberExpression(parent)&&parent.object===node}function FunctionExpression(node,parent){if(t.isExpressionStatement(parent)){return true}if(t.isMemberExpression(parent)&&parent.object===node){return true}if(t.isCallExpression(parent)&&parent.callee===node){return true}}function ConditionalExpression(node,parent){if(t.isUnaryLike(parent)){return true}if(t.isBinary(parent)){return true}if(t.isCallExpression(parent)||t.isNewExpression(parent)){if(parent.callee===node){return true}}if(t.isConditionalExpression(parent)&&parent.test===node){return true}if(t.isMemberExpression(parent)&&parent.object===node){return true}return false}exports.AssignmentExpression=ConditionalExpression;exports.__esModule=true},{"../../types":125,"lodash/collection/each":207}],18:[function(require,module,exports){"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 isBoolean=_interopRequire(require("lodash/lang/isBoolean"));var each=_interopRequire(require("lodash/collection/each"));var map=_interopRequire(require("lodash/collection/map"));var t=_interopRequireWildcard(require("../../types"));function crawl(node){var state=arguments[1]===undefined?{}:arguments[1];if(t.isMemberExpression(node)){crawl(node.object,state);if(node.computed)crawl(node.property,state)}else if(t.isBinary(node)||t.isAssignmentExpression(node)){crawl(node.left,state);crawl(node.right,state)}else if(t.isCallExpression(node)){state.hasCall=true;crawl(node.callee,state)}else if(t.isFunction(node)){state.hasFunction=true}else if(t.isIdentifier(node)){var _state=state;if(!_state.hasHelper)_state.hasHelper=isHelper(node.callee)}return state}function isHelper(node){if(t.isMemberExpression(node)){return isHelper(node.object)||isHelper(node.property)}else if(t.isIdentifier(node)){return node.name==="require"||node.name[0]==="_"}else if(t.isCallExpression(node)){return isHelper(node.callee)}else if(t.isBinary(node)||t.isAssignmentExpression(node)){return t.isIdentifier(node.left)&&isHelper(node.left)||isHelper(node.right)}else{return false}}function isType(node){return t.isLiteral(node)||t.isObjectExpression(node)||t.isArrayExpression(node)||t.isIdentifier(node)||t.isMemberExpression(node)}exports.nodes={AssignmentExpression:function AssignmentExpression(node){var state=crawl(node.right);if(state.hasCall&&state.hasHelper||state.hasFunction){return{before:state.hasFunction,after:true}}},SwitchCase:function SwitchCase(node,parent){return{before:node.consequent.length||parent.cases[0]===node}},LogicalExpression:function LogicalExpression(node){if(t.isFunction(node.left)||t.isFunction(node.right)){return{after:true}}},Literal:function Literal(node){if(node.value==="use strict"){return{after:true}}},CallExpression:function CallExpression(node){if(t.isFunction(node.callee)||isHelper(node)){return{before:true,after:true}}},VariableDeclaration:function VariableDeclaration(node){for(var i=0;i<node.declarations.length;i++){var declar=node.declarations[i];var enabled=isHelper(declar.id)&&!isType(declar.init);if(!enabled){var state=crawl(declar.init);enabled=isHelper(declar.init)&&state.hasCall||state.hasFunction}if(enabled){return{before:true,after:true}}}},IfStatement:function IfStatement(node){if(t.isBlockStatement(node.consequent)){return{before:true,after:true}}}};exports.nodes.Property=exports.nodes.SpreadProperty=function(node,parent){if(parent.properties[0]===node){return{before:true}}};exports.list={VariableDeclaration:function VariableDeclaration(node){return map(node.declarations,"init")},ArrayExpression:function ArrayExpression(node){return node.elements},ObjectExpression:function ObjectExpression(node){return node.properties}};each({Function:true,Class:true,Loop:true,LabeledStatement:true,SwitchStatement:true,TryStatement:true},function(amounts,type){if(isBoolean(amounts)){amounts={after:amounts,before:amounts}}each([type].concat(t.FLIPPED_ALIAS_KEYS[type]||[]),function(type){exports.nodes[type]=function(){return amounts}})})},{"../../types":125,"lodash/collection/each":207,"lodash/collection/map":211,"lodash/lang/isBoolean":295}],19:[function(require,module,exports){"use strict";var _classCallCheck=function(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}};var Position=function(){function Position(){_classCallCheck(this,Position);this.line=1;this.column=0}Position.prototype.push=function push(str){for(var i=0;i<str.length;i++){if(str[i]==="\n"){this.line++;this.column=0}else{this.column++}}};Position.prototype.unshift=function unshift(str){for(var i=0;i<str.length;i++){if(str[i]==="\n"){this.line--}else{this.column--}}};return Position}();module.exports=Position},{}],20:[function(require,module,exports){"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 sourceMap=_interopRequire(require("source-map"));var t=_interopRequireWildcard(require("../types"));var So