UNPKG

firescript

Version:
195 lines (185 loc) 7.96 kB
const FirescriptParser = require('./FirescriptParser') const JavascriptTranspiler = require('./JavascriptTranspiler') require('./fs-parser/nodes/ArrayExpression.js') require('./fs-parser/nodes/ArrayPattern.js') require('./fs-parser/nodes/ArrowFunctionExpression.js') require('./fs-parser/nodes/AssignmentExpression.js') require('./fs-parser/nodes/AssignmentPattern.js') require('./fs-parser/nodes/AwaitExpression.js') require('./fs-parser/nodes/BinaryExpression.js') require('./fs-parser/nodes/BlockStatement.js') require('./fs-parser/nodes/BreakStatement.js') require('./fs-parser/nodes/CallExpression.js') require('./fs-parser/nodes/CatchClause.js') require('./fs-parser/nodes/ClassBody.js') require('./fs-parser/nodes/ClassDeclaration.js') require('./fs-parser/nodes/ClassExpression.js') require('./fs-parser/nodes/Comment.js') require('./fs-parser/nodes/ConditionalExpression.js') require('./fs-parser/nodes/ContinueStatement.js') require('./fs-parser/nodes/DebuggerStatement.js') require('./fs-parser/nodes/DoWhileStatement.js') require('./fs-parser/nodes/EmptyStatement.js') require('./fs-parser/nodes/ExportAllDeclaration.js') require('./fs-parser/nodes/ExportDefaultDeclaration.js') require('./fs-parser/nodes/ExportNamedDeclaration.js') require('./fs-parser/nodes/ExportSpecifier.js') require('./fs-parser/nodes/ExpressionStatement.js') require('./fs-parser/nodes/FirescriptGrouping.js') require('./fs-parser/nodes/FirescriptLogStatement.js') require('./fs-parser/nodes/FirescriptSyntaxError.js') require('./fs-parser/nodes/FirescriptTyping.js') require('./fs-parser/nodes/ForInStatement.js') require('./fs-parser/nodes/ForOfStatement.js') require('./fs-parser/nodes/ForStatement.js') require('./fs-parser/nodes/FunctionDeclaration.js') require('./fs-parser/nodes/FunctionExpression.js') require('./fs-parser/nodes/Identifier.js') require('./fs-parser/nodes/IfStatement.js') require('./fs-parser/nodes/ImportDeclaration.js') require('./fs-parser/nodes/ImportDefaultSpecifier.js') require('./fs-parser/nodes/ImportNamespaceSpecifier.js') require('./fs-parser/nodes/ImportSpecifier.js') require('./fs-parser/nodes/Literal.js') require('./fs-parser/nodes/LogicalExpression.js') require('./fs-parser/nodes/MemberExpression.js') require('./fs-parser/nodes/MetaProperty.js') require('./fs-parser/nodes/MethodDefinition.js') require('./fs-parser/nodes/NewExpression.js') require('./fs-parser/nodes/Node.js') require('./fs-parser/nodes/NullNode.js') require('./fs-parser/nodes/ObjectExpression.js') require('./fs-parser/nodes/ObjectPattern.js') require('./fs-parser/nodes/Program.js') require('./fs-parser/nodes/Property.js') require('./fs-parser/nodes/RestElement.js') require('./fs-parser/nodes/ReturnStatement.js') require('./fs-parser/nodes/SequenceExpression.js') require('./fs-parser/nodes/SpreadElement.js') require('./fs-parser/nodes/Super.js') require('./fs-parser/nodes/SwitchCase.js') require('./fs-parser/nodes/SwitchStatement.js') require('./fs-parser/nodes/TaggedTemplateExpression.js') require('./fs-parser/nodes/TemplateElement.js') require('./fs-parser/nodes/TemplateLiteral.js') require('./fs-parser/nodes/ThisExpression.js') require('./fs-parser/nodes/ThrowStatement.js') require('./fs-parser/nodes/TryStatement.js') require('./fs-parser/nodes/UnaryExpression.js') require('./fs-parser/nodes/UpdateExpression.js') require('./fs-parser/nodes/VariableDeclaration.js') require('./fs-parser/nodes/VariableDeclarator.js') require('./fs-parser/nodes/WhileStatement.js') require('./fs-parser/nodes/YieldExpression.js') require('./fs-parser/nodeDefinition.js') require('./fs-parser/nodeMapping.js') require('./js-transformations/classDeclaration.js') require('./js-transformations/exportAllDeclaration.js') require('./js-transformations/exportDeclaration.js') require('./js-transformations/functionDeclaration.js') require('./js-transformations/functionExpression.js') require('./js-transformations/functionParamTyping.js') require('./js-transformations/importDeclaration.js') require('./js-transformations/logStatement.js') require('./js-transformations/programm.js') require('./js-transformations/regexp.js') require('./js-transformations/templateLiteral.js') require('./js-transformations/variableTyping.js') require('./js-elements/ArrayExpression.js') require('./js-elements/ArrayPattern.js') require('./js-elements/ArrowFunctionExpression.js') require('./js-elements/AssignmentExpression.js') require('./js-elements/AssignmentPattern.js') require('./js-elements/AwaitExpression.js') require('./js-elements/BinaryExpression.js') require('./js-elements/Block.js') require('./js-elements/BlockStatement.js') require('./js-elements/BreakStatement.js') require('./js-elements/CallExpression.js') require('./js-elements/CatchClause.js') require('./js-elements/ClassBody.js') require('./js-elements/ClassDeclaration.js') require('./js-elements/ClassExpression.js') require('./js-elements/Comment.js') require('./js-elements/ConditionalExpression.js') require('./js-elements/ContinueStatement.js') require('./js-elements/DebuggerStatement.js') require('./js-elements/DoWhileStatement.js') require('./js-elements/EmptyStatement.js') require('./js-elements/ExportAllDeclaration.js') require('./js-elements/ExportDefaultDeclaration.js') require('./js-elements/ExportNamedDeclaration.js') require('./js-elements/ExportSpecifier.js') require('./js-elements/ExpressionStatement.js') require('./js-elements/ForInStatement.js') require('./js-elements/ForOfStatement.js') require('./js-elements/ForStatement.js') require('./js-elements/FunctionDeclaration.js') require('./js-elements/FunctionExpression.js') require('./js-elements/Identifier.js') require('./js-elements/IfStatement.js') require('./js-elements/ImportDeclaration.js') require('./js-elements/ImportDefaultSpecifier.js') require('./js-elements/ImportNamespaceSpecifier.js') require('./js-elements/ImportSpecifier.js') require('./js-elements/JSElement.js') require('./js-elements/LabeledStatement.js') require('./js-elements/Line.js') require('./js-elements/Literal.js') require('./js-elements/LogicalExpression.js') require('./js-elements/MemberExpression.js') require('./js-elements/MetaProperty.js') require('./js-elements/MethodDefinition.js') require('./js-elements/NewExpression.js') require('./js-elements/ObjectExpression.js') require('./js-elements/ObjectPattern.js') require('./js-elements/Program.js') require('./js-elements/Property.js') require('./js-elements/RestElement.js') require('./js-elements/ReturnStatement.js') require('./js-elements/SequenceExpression.js') require('./js-elements/SpreadElement.js') require('./js-elements/Super.js') require('./js-elements/SwitchCase.js') require('./js-elements/SwitchStatement.js') require('./js-elements/TaggedTemplateExpression.js') require('./js-elements/TemplateElement.js') require('./js-elements/TemplateLiteral.js') require('./js-elements/ThisExpression.js') require('./js-elements/ThrowStatement.js') require('./js-elements/TryStatement.js') require('./js-elements/UnaryExpression.js') require('./js-elements/UpdateExpression.js') require('./js-elements/VariableDeclaration.js') require('./js-elements/VariableDeclarator.js') require('./js-elements/WhileStatement.js') require('./js-elements/YieldExpression.js') module.exports = { FirescriptParser, parse (input, opts) { opts = opts || {} const parser = new FirescriptParser(opts) return parser.parse(input) }, transpile (input, opts) { opts = opts || {} let ast if (typeof input === 'string') { const parser = new FirescriptParser(opts) ast = parser.parse(input) } else { ast = input } opts.features = { esModules: false, esDefaultParams: false, esClasses: true, esTemplates: true, extendRegExp: true, dissableRuntime: false, fireRTModuleName: 'firescript-runtime' } const transpiler = new JavascriptTranspiler(opts) return transpiler.transpile(ast) } }