Set global replacements in flipper-frontend-core

Summary: Extract setting global replacements from plugin initialization

Reviewed By: mweststrate

Differential Revision: D36129749

fbshipit-source-id: 6f5b3e27c1b798124b5f2772e9099899ce521d0a
This commit is contained in:
Andrey Goncharov
2022-05-10 05:13:24 -07:00
committed by Facebook GitHub Bot
parent 658cd1544d
commit ea6c293726

View File

@@ -0,0 +1,31 @@
/**
* 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
*/
// this list should match `replace-flipper-requires.tsx` and the `builtInModules` in `desktop/.eslintrc`
export interface GlobalObject {
React: any;
ReactDOM: any;
ReactDOMClient: any;
ReactIs: any;
Flipper: any;
FlipperPlugin: any;
Immer: any;
antd: any;
emotion_styled: any;
antdesign_icons: any;
}
export const setGlobalObject = (replacements: GlobalObject) => {
const globalObject = (function (this: any) {
return this;
})();
for (const [name, module] of Object.entries(replacements)) {
globalObject[name] = module;
}
};