From 9449f61adb1e0f6f140cd7f75ff1f7d7a8f07ed5 Mon Sep 17 00:00:00 2001 From: Andrey Goncharov Date: Mon, 28 Feb 2022 03:50:34 -0800 Subject: [PATCH] Add server add-on babel transform Reviewed By: antonk52 Differential Revision: D34393126 fbshipit-source-id: d910392d9ac7e7a44e2e9ede690a6bed77f018c7 --- .../src/transform-server-add-on.tsx | 47 +++++++++++++++++++ desktop/pkg-lib/src/runBuild.tsx | 4 +- 2 files changed, 48 insertions(+), 3 deletions(-) create mode 100644 desktop/babel-transformer/src/transform-server-add-on.tsx diff --git a/desktop/babel-transformer/src/transform-server-add-on.tsx b/desktop/babel-transformer/src/transform-server-add-on.tsx new file mode 100644 index 000000000..476b15586 --- /dev/null +++ b/desktop/babel-transformer/src/transform-server-add-on.tsx @@ -0,0 +1,47 @@ +/** + * Copyright (c) Meta Platforms, Inc. and affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + * + * @format + */ + +import {default as doTransform} from './transform'; +import {default as getCacheKey} from './get-cache-key'; + +// Copy-paste from transform-plugin with @babel/preset-env instead of @babel/preset-react + +const presets = [ + [ + '@babel/preset-env', + { + targets: { + node: 'current', + }, + }, + ], +]; + +const plugins = [ + require('./electron-requires'), + require('./plugin-flipper-requires'), + require('./fb-stubs'), +]; + +module.exports = { + transform, + getCacheKey, +}; + +function transform({ + filename, + options, + src, +}: { + filename: string; + options: any; + src: string; +}) { + return doTransform({filename, options, src, presets, plugins}); +} diff --git a/desktop/pkg-lib/src/runBuild.tsx b/desktop/pkg-lib/src/runBuild.tsx index ea6282b4c..932045968 100644 --- a/desktop/pkg-lib/src/runBuild.tsx +++ b/desktop/pkg-lib/src/runBuild.tsx @@ -166,9 +166,7 @@ export default async function bundlePlugin( dev, sourceMapPath: options?.sourceMapPathServerAddOn, babelTransformerPath: require.resolve( - `flipper-babel-transformer/${ - dev ? 'lib/transform-server-dev' : 'lib/transform-server-prod' - }`, + 'flipper-babel-transformer/lib/transform-server-add-on', ), }); }