/** * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * * @format */ "use strict"; const _require = require("@babel/core"), transformSync = _require.transformSync; function transform(_ref) { let filename = _ref.filename, options = _ref.options, plugins = _ref.plugins, src = _ref.src; const OLD_BABEL_ENV = process.env.BABEL_ENV; process.env.BABEL_ENV = options.dev ? "development" : "production"; try { const _transformSync = transformSync(src, { caller: { name: "metro", platform: options.platform }, ast: true, babelrc: options.enableBabelRCLookup, code: false, highlightCode: true, filename, plugins, sourceType: "module" }), ast = _transformSync.ast; return { ast }; } finally { process.env.BABEL_ENV = OLD_BABEL_ENV; } } module.exports = { transform };