Summary: Just a small refactoring to only create array with plugins once. This should make transformations a bit faster as all these methods are called many times for each file in the project. Reviewed By: passy Differential Revision: D21308498 fbshipit-source-id: 0ed47f13cebfebd2992817caa207dc55f1dbeb0a
44 lines
892 B
TypeScript
44 lines
892 B
TypeScript
/**
|
|
* 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
|
|
*/
|
|
|
|
import {default as doTransform} from './transform';
|
|
import {default as getCacheKey} from './get-cache-key';
|
|
import {default as flipperEnv} from './flipper-env';
|
|
|
|
const presets = [
|
|
[
|
|
require('@babel/preset-env'),
|
|
{targets: {electron: flipperEnv.FLIPPER_ELECTRON_VERSION}},
|
|
],
|
|
];
|
|
const plugins = [
|
|
require('./electron-requires-main'),
|
|
require('./electron-process'),
|
|
];
|
|
if (flipperEnv.FLIPPER_FB) {
|
|
plugins.unshift(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});
|
|
}
|