UNPKG

astx

Version:

super powerful structural search and replace for JavaScript and TypeScript to automate your refactoring

66 lines (50 loc) 1.94 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = loadFile; var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); var _fsExtra = _interopRequireDefault(require("fs-extra")); var _chooseGetBackend = _interopRequireDefault(require("../chooseGetBackend")); var _Astx = _interopRequireDefault(require("../Astx")); function loadFile(_x) { return _loadFile.apply(this, arguments); } function _loadFile() { _loadFile = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(file) { var _ref, source, parser, parserOptions, backend, _args = arguments; return _regenerator["default"].wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _ref = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}, source = _ref.source, parser = _ref.parser, parserOptions = _ref.parserOptions; if (source) { _context.next = 5; break; } _context.next = 4; return _fsExtra["default"].readFile(file, 'utf8'); case 4: source = _context.sent; case 5: _context.next = 7; return (0, _chooseGetBackend["default"])(parser)(file, parserOptions); case 7: backend = _context.sent; return _context.abrupt("return", new _Astx["default"](backend, [new backend.t.NodePath(backend.parse(source))])); case 9: case "end": return _context.stop(); } } }, _callee); })); return _loadFile.apply(this, arguments); }