Make getFlipperLib generally available, and use it to decouple opening links from Electron

Summary:
This stack reduces our direct dependency on Electron, for example by exposing our own API to open links.

Also exposing `getFlipperLib` as API from `flipper-plugin`, so that these utility methods are available outside plugin contexts as well.

Reviewed By: timur-valiev

Differential Revision: D29661689

fbshipit-source-id: 0c0523326eeb0d9d8fbe3e03c4609327bb53596b
This commit is contained in:
Michel Weststrate
2021-07-15 01:51:58 -07:00
committed by Facebook GitHub Bot
parent 2b236c6114
commit 5dbd3bd414
20 changed files with 60 additions and 54 deletions

View File

@@ -26,11 +26,7 @@ import {processMessagesLater} from './utils/messageQueue';
import {emitBytesReceived} from './dispatcher/tracking';
import {debounce} from 'lodash';
import {batch} from 'react-redux';
import {
createState,
_SandyPluginInstance,
_getFlipperLibImplementation,
} from 'flipper-plugin';
import {createState, _SandyPluginInstance, getFlipperLib} from 'flipper-plugin';
import {freeze} from 'immer';
import GK from './fb-stubs/GK';
import {message} from 'antd';
@@ -224,7 +220,7 @@ export default class Client extends EventEmitter {
this.sandyPluginStates.set(
plugin.id,
new _SandyPluginInstance(
_getFlipperLibImplementation(),
getFlipperLib(),
plugin,
this,
getPluginKey(this.id, {serial: this.query.device_id}, plugin.id),
@@ -260,7 +256,7 @@ export default class Client extends EventEmitter {
this.sandyPluginStates.set(
plugin.id,
new _SandyPluginInstance(
_getFlipperLibImplementation(),
getFlipperLib(),
plugin,
this,
getPluginKey(this.id, {serial: this.query.device_id}, plugin.id),