Commit Graph

23 Commits

Author SHA1 Message Date
Andrey Goncharov
92ca5edaea Track number of loaded plugins
Reviewed By: lblasa

Differential Revision: D50556872

fbshipit-source-id: 2d841360f7081074afa025d0bad8c41d7b2db16e
2023-10-23 09:14:56 -07:00
Andrey Goncharov
16b3edacb1 Track final loading event
Reviewed By: lblasa

Differential Revision: D50121103

fbshipit-source-id: 1f67bf475b6b7b68db3d63dab5a05cccde4c121b
2023-10-10 06:51:13 -07:00
Andrey Goncharov
7597b2c826 Track root render
Reviewed By: lblasa

Differential Revision: D50121104

fbshipit-source-id: 7f3560fe67f3a84e21fe7819a7f3a0b889716cc9
2023-10-10 06:51:13 -07:00
Andrey Goncharov
a90ff51e2c Track store rehydrated
Reviewed By: lblasa

Differential Revision: D50121107

fbshipit-source-id: f2548a4303bd7ce5a38c32eb76f50c440201b397
2023-10-10 06:51:13 -07:00
Andrey Goncharov
6f7027bccd Add ui performance tracker
Reviewed By: lblasa

Differential Revision: D50121106

fbshipit-source-id: 54650de65e11c80ea776eafd85cdd5b7749a4fd4
2023-10-10 06:51:13 -07:00
Lorenzo Blasa
b69358f6a2 Remove the previous misplaced log tailer
Summary: The log tailer is already defined in flipper-common, use that instead.

Reviewed By: passy

Differential Revision: D48524909

fbshipit-source-id: 1c0674276f08893ea80dc2fc9f8b45679f33e93e
2023-08-22 05:16:20 -07:00
Lorenzo Blasa
ce13ee426f Open file import
Summary: This change only adds the PWA as capable of handling files with the ".flipper" extension.

Reviewed By: aigoncharov

Differential Revision: D48353437

fbshipit-source-id: fd78942ac4dffb7d26d5ca5be826290018465b93
2023-08-17 13:46:08 -07:00
Lorenzo Blasa
9ba93ad26b Connectivity Logs moved outside from TroubleshootingHub
Summary: Move it to its own space.

Reviewed By: antonk52

Differential Revision: D47914495

fbshipit-source-id: 8d655a8f0fc9ed87adbb4c31dfb04e72aa6f5770
2023-07-31 07:02:16 -07:00
Lorenzo Blasa
778eaf2038 Overdue refactor for TroubleshootingHub
Summary: It's troubleshooting in general, not only connectivity. So rename and refactor accordingly.

Reviewed By: antonk52

Differential Revision: D47914411

fbshipit-source-id: 658563bfd33427f11fe9f7660b0985fc3f013866
2023-07-31 07:02:16 -07:00
Lorenzo Blasa
fb845a5ae6 Back out "Remove usage of ReactDOM.render for root"
Summary:
Original commit changeset: 2a975690bab0

Original Phabricator Diff: D47257442

For context:
More things need updating and testing. Node, antd, etc. needs all updating.

Once this lands, a new release needs to be made triggered by:
https://www.internalfb.com/chronos/job/gp/27021599065494131

Differential Revision: D47456598

fbshipit-source-id: 1f96e88744b98c7d477c5ccc43167bde475e3036
2023-07-13 18:16:50 -07:00
Lorenzo Blasa
f8e51dc847 ConnectivityHub integration
Summary:
This change has a minimal Connectivity Hub with a log viewer of connectivity related events.

The hub is integrated so that is usable.

Reviewed By: antonk52

Differential Revision: D47296027

fbshipit-source-id: 7611ce0b1480e9bdb7cdff2bcedeb445a322c195
2023-07-10 05:52:07 -07:00
Lorenzo Blasa
9810edcdfb Remove usage of ReactDOM.render for root
Summary: As per comment, the issue is already fixed and released.

Reviewed By: LukeDefeo

Differential Revision: D47257442

fbshipit-source-id: 2a975690bab0eaed12b6b4233be41f675760a0bc
2023-07-06 05:14:00 -07:00
Luke De Feo
a9b17ac637 Add log tailing infra and downgrade resize observer error to warn
Summary: Resize oberserver limit exceeded appears to be a benign error that we can safely ignore, added ability to change log level. Given we report errors to our user logs, fb log view and console the console log patching has been centralised and now logs are pushed to whatever destinations we have.

Reviewed By: lblasa

Differential Revision: D44666836

fbshipit-source-id: e028dbc52b00947097833f9f3619189226247e1d
2023-04-04 07:58:57 -07:00
Andrey Goncharov
17ab7a86ef Use getRenderHost from flipper-frontned-core in flipper-ui-core
Summary: See D37139129

Reviewed By: lblasa

Differential Revision: D37236435

fbshipit-source-id: 927e9f741bfedb65165f5d24f0acfb775925cdc7
2022-06-20 12:18:40 -07:00
Anton Nikolaev
46340fa30a Fix UI freezes on popup opening by upgrading back React app creation from "createRoot" to "ReactDOM.render"
Summary: Fix UI freezes on popup opening by upgrading back React app creation from "createRoot" to "ReactDOM.render". These UI freezes started to happen after React upgrade because the issue in integration of Antd with React 18: https://github.com/react-component/trigger/issues/288

Reviewed By: aigoncharov

Differential Revision: D35359129

fbshipit-source-id: eb0ad979443ecf67eb2acc2e219196c9fefcff62
2022-04-04 08:00:06 -07:00
Andrey Goncharov
1f83b4b414 Migrate to React 18
Summary:
Sadly, we have to use the experimental version of React to decapitate React Devtools.
See https://fb.workplace.com/groups/react.devtools/posts/3135684459978453/?comment_id=3135711763309056&reply_comment_id=3135760513304181

On the bright side, Replay.io and Code Sandbox also use experimental React without any problem.

Reviewed By: lblasa

Differential Revision: D34926473

fbshipit-source-id: 5cd63cc065c2535f0583464c7b5e37891dadaf14
2022-03-31 04:01:33 -07:00
Andres Suarez
79023ee190 Update copyright headers from Facebook to Meta
Reviewed By: bhamodi

Differential Revision: D33331422

fbshipit-source-id: 016e8dcc0c0c7f1fc353a348b54fda0d5e2ddc01
2021-12-27 14:31:45 -08:00
Michel Weststrate
fa67c21def Fix bug where client plugins weren't always started
Summary:
Changelog: Fixed issue where occasionally a plugin wouldn't open after starting Flipper

This fixes a long standing issue where rarely Flipper wouldn't show the selected plugin. This turned out to be a raise condition, that was easy to reproduce in the Flipper browser version; if a client register before all the plugins are loaded, the plugins that are enabled for that client, but not loaded yet, will not instantiate and hence not show up. This diff fixes that

Reviewed By: timur-valiev, aigoncharov

Differential Revision: D32987162

fbshipit-source-id: f3179cd9b6f2e4e79d05be1f2236f63acdf50495
2021-12-10 17:59:33 -08:00
Michel Weststrate
943d535e86 Move sending intern requests from client to server
Summary: This diff moves send intern request from the browser to the server. The reason to make this change is that making such requests from a browser environment causes CORS restrictions to kick in.

Reviewed By: nikoant

Differential Revision: D32835449

fbshipit-source-id: e8e92e51ca963aa50b3c859bb61c2381171e85ae
2021-12-08 04:30:57 -08:00
Michel Weststrate
5d45bd741b Initialise flipper-ui-browser with socket connection
Summary:
This diff sets up the socket connection between flipper-browser and flipper-server, and verifies that the initial UI initialisation work (e.g. `get-config` command works). The initial RenderHost is initialised as well based on the config and browser APIs.

Note that flipper-ui-core itself isn't started yet, as that has still a plethora of node imports, so Metro will correctly refuse to bundle

Not in this diff
* remove Node usage from flipper-ui-core
* implement all RenderHost APIs

Reviewed By: aigoncharov

Differential Revision: D32644074

fbshipit-source-id: 2c8065caf0191771a3867b69a431ca50eeb7a5a3
2021-12-08 04:30:55 -08:00
Michel Weststrate
bca169df73 Move settings, launcherSettings, GKs to app / flipper-server-core
Summary:
This diff moves a lot of stuff from the client to the server. This diff is fairly large, as a lot of concept closely relate, although some things have split off to the earlier diffs in the stack, or are still to follow (like making intern requests).

This diff primarily moves reading and storing settings and GKs from client to server (both flipper and launcher settings). This means that settings are no longer persisted by Redux (which only exists on client). Most other changes are fallout from that. For now settings are just one big object, although we might need to separate settings that are only make sense in an Electron context. For example launcher settings.

Reviewed By: passy, aigoncharov

Differential Revision: D32498649

fbshipit-source-id: d842faf7a7f03774b621c7656e53a9127afc6192
2021-12-08 04:30:54 -08:00
Andrey Goncharov
0799edbca0 Fix excessive error reporting
Summary:
Currently, we register global error handlers inside of ErrorReporter. To make these global error visible to the user we pipe them to `console.error`. All console methods are monkey-patched in our Logger. Logger uses ErrorReporter to report errors to LogView. It leads to duplicate errors in LogView.
In this diff, we extract startGlobalErrorHandling which should help us avoid duplication.

Reviewed By: passy

Differential Revision: D32759909

fbshipit-source-id: 6376e193c0ba6f0b46aaccc139ecf5066a04da11
2021-12-02 10:08:18 -08:00
Michel Weststrate
7e50c0466a Move app/src (mostly) to flipper-ui-core/src
Summary:
This diff moves all UI code from app/src to app/flipper-ui-core. That is now slightly too much (e.g. node deps are not removed yet), but from here it should be easier to move things out again, as I don't want this diff to be open for too long to avoid too much merge conflicts.

* But at least flipper-ui-core is Electron free :)
* Killed all cross module imports as well, as they where now even more in the way
* Some unit test needed some changes, most not too big (but emotion hashes got renumbered in the snapshots, feel free to ignore that)
* Found some files that were actually meaningless (tsconfig in plugins, WatchTools files, that start generating compile errors, removed those

Follow up work:
* make flipper-ui-core configurable, and wire up flipper-server-core in Electron instead of here
* remove node deps (aigoncharov)
* figure out correct place to load GKs, plugins, make intern requests etc., and move to the correct module
* clean up deps

Reviewed By: aigoncharov

Differential Revision: D32427722

fbshipit-source-id: 14fe92e1ceb15b9dcf7bece367c8ab92df927a70
2021-11-16 05:29:21 -08:00