UNPKG

pg-proto-parser

Version:
20 lines (19 loc) 913 B
import generate from '@babel/generator'; import * as t from '@babel/types'; export const convertAstToCode = (body) => { const ast = t.file(t.program(body)); // @ts-ignore const { code } = generate(ast); return code; }; export const createDefaultImport = (importName, source) => { return t.importDeclaration([t.importDefaultSpecifier(t.identifier(importName))], t.stringLiteral(source)); }; export const createNamedImport = (importNames, source) => { const specifiers = importNames.map(name => t.importSpecifier(t.identifier(name), t.identifier(name))); return t.importDeclaration(specifiers, t.stringLiteral(source)); }; export const createNamedImportAsSuffix = (importNames, source, suffix) => { const specifiers = importNames.map(name => t.importSpecifier(t.identifier(name + suffix), t.identifier(name))); return t.importDeclaration(specifiers, t.stringLiteral(source)); };