Files
flipper/desktop
Aero Wang b596c9c797 Fix electron error during build for desktop plugins (#4145)
Summary:
Related GH issue: https://github.com/facebook/flipper/issues/4139

Context:
The current direction is that all plugins should be able to run in browser envs. Opening external windows, deeplinks and etc. should be abstracted away in getFlipperLib().
For plugin developers, it could be challenging to upgrade the existing plugins that rely on electron being present. We should not failing the build process for them because their plugins depend on electron.

Allow desktop plugin to build

Relevant ticket: https://github.com/facebook/flipper/issues/4139

Pull Request resolved: https://github.com/facebook/flipper/pull/4145

Reviewed By: mweststrate

Differential Revision: D39887902

Pulled By: mweststrate

fbshipit-source-id: 4132912b5a2b598c7897d434647cffed6980de19
2022-09-29 09:09:44 -07:00
..
2022-09-21 09:26:19 -07:00
2022-09-15 10:02:19 -07:00
2022-05-30 03:41:33 -07:00
2022-09-15 10:02:19 -07:00
2022-09-29 04:38:46 -07:00
2022-09-15 10:02:19 -07:00
2021-09-27 08:25:20 -07:00
2022-09-29 04:38:46 -07:00
2021-10-08 01:33:03 -07:00
2021-12-17 07:36:07 -08:00
2021-12-17 10:04:23 -08:00

Flipper Desktop

This folder contains everything to run the Flipper 'Desktop', that is, the UI which you use to interact with the device / app under debug.

Packages provided here:

  • flipper-common: utilities & types shared between client, server, flipper-plugin
  • flipper-server-core: all device & client management goes in here. Basically flipper's backend
  • flipper-ui-core: all UI goes in here, as far as it doesn't depend on Electron
  • flipper-ui-electron: the Electron app, will load server-core and ui-core, and glue them together, providing implementations for some electron * specific stuff like dialgos
  • flipper-server: A node process hosting flipper-server-core, that can be connected to over websockets. And probably can serve a browser version of the UI as well.
  • flipper-ui-browser: thin wrapper around flipper-ui-core, providing some browser specific behavior / stubs.
  • flipper-dump: (might remove later), but want to hack a quick and dirt flipper dump in here, as alternative way to test flipper-server-core.
  • flipper-plugin: The flipper SDK used by plugins. Exposes all API's that can be used by plugins
  • pkg: CLI tool to manage building flipper plugins
  • pkg-lib
  • plugin-lib
  • babel-transformer
  • doctor
  • eslint-plugin-flipper

Packages overview

flipper-ui-electron:
   - flipper-server-core (directly embedded)
   - flipper-ui-core
       - plugins (prebundled)
   - plugins (installable)
       - flipper-plugin

flipper-server
   - flipper-server-core
   - flipper-ui-browser (served by webserver)
       - flipper-ui-core (communicates using WebSocket with server-core)
           - plugins (prebundled)
   - plugins (installable)?

flipper-dump
   - flipper-server-core