sortier
Version:
An opinionated code sorter
25 lines (24 loc) • 807 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getParser = getParser;
const path_1 = require("path");
// Parsers
const index_js_1 = require("../parsers/flow/index.js");
const index_js_2 = require("../parsers/typescript/index.js");
function getParser(inputFilePath) {
const fileName = (0, path_1.basename)(inputFilePath);
const fileType = fileName.substring(0, fileName.indexOf("."));
let parser;
switch (fileType) {
case "es6":
case "typescript":
parser = index_js_2.parse;
break;
case "flow":
parser = index_js_1.parse;
break;
default:
throw new Error(`Unknown parser passed - ${fileType}. Expected 'flow', 'typescript' or 'es6'.`);
}
return parser;
}