Summary:
At the moment Flipper spawns a WebSocket server which can be used to debug Web applications in the Browser i.e. Kite.
This diff renames websocketClientFlipperConnection to BrowserClientFlipperConnection.
Renamed to make it clearer what type of connection it really is. WebSocket connections will no longer have the same meaning once RSocket is removed and WebSockets are used instead.
Reviewed By: jknoxville
Differential Revision: D29937656
fbshipit-source-id: 99d55fcfe256865add1ba3aada2c23f935f5cabe
Summary: TSC is raising this for a missing property.
Reviewed By: timur-valiev
Differential Revision: D29933795
fbshipit-source-id: 2acb3ea3b504f1bce1fb4bd0f7e4b52fd49e00b0
Summary:
FlipperClientConnection used to define an interface which closely matched the Socket interface defined in RSocket.
Presumably it tried to 'decouple' RSocket from consumers of the client socket connection. It also limited the amount of actions that could be triggered on said socket connection.
This diff does two things:
- Renames FlipperClientConnection to ClientConnection.
- Changes the interface so that it no longer matches the RSocket Socket interface. The new interface doesn't use RSocket reactive types either.
As a result, current implementations of the interface will act as a proxy to the RSocket Socket type. The change allows the usage of other implementations such as WebSocket.
Reviewed By: fabiomassimo
Differential Revision: D29934090
fbshipit-source-id: 02742e50cd6e801310698969c81b3bf1ef0fa2a2
Summary:
In the file server.tsx was defined the Server type.
Server is being renamed to ServerController and the new file is ServerController.tsx
This is the last diff where things are being moved or renamed in a way that will make harder to review future changes.
Reviewed By: fabiomassimo
Differential Revision: D29912626
fbshipit-source-id: ae583671d98823a10f7efceeefd8215621f59dcf
Summary:
A new comms/ directory is introduced which will contain all the communication code between client and server.
This change just moves server.tsx to its new location, it will make the next changes easier to follow.
Reviewed By: fabiomassimo
Differential Revision: D29911904
fbshipit-source-id: ae319dc8f9fd7af9d8b5b5c0ee87b56102cc0a18
Summary: When loading a Flipper trace, the loading dialog was no longer show. This diff fixes that.
Reviewed By: nikoant
Differential Revision: D29844892
fbshipit-source-id: 23d1f53962a3f64f93cc42127cd008c03486c14c
Summary: Introduce convenience abstractions to make it easier to manage dialogs imperatively, by promisyfying common dialog abstractions.
Reviewed By: jknoxville, nikoant
Differential Revision: D29790462
fbshipit-source-id: c092c15cf569ec353b9c1042f25cd67e6c76db01
Summary: This diff makes sure we can manually & unit tests deeplinks more easily, by introducing a dialog in which a deeplink can be entered manually and extracting deeplink handling logic from the application dispatcher.
Reviewed By: jknoxville
Differential Revision: D29760933
fbshipit-source-id: 0fc8f577204ecdd278716853b87786557a6e2194
Summary: Refactored Navigation plugin to make it fast-refreshable: moved the main component into a separate file and exported all components as named functions. Without these changes every change of UI triggered full reload.
Reviewed By: timur-valiev
Differential Revision: D29814077
fbshipit-source-id: 5285bdc5f14a5163f9501c0d45a3affefb08fc8e
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/2609
Make it possible to mark some tests to run on non-CI, or unix only
Reviewed By: nikoant
Differential Revision: D29813506
fbshipit-source-id: 140f8a4eaed5af3282ab9d139b46a52818be0934
Summary:
Fix changelog display in dark mode, as reported in https://github.com/facebook/flipper/issues/2379#issuecomment-851059786
Changelog: Fix dark mode support in changelog dialog.
Reviewed By: timur-valiev
Differential Revision: D29801181
fbshipit-source-id: ffbbd012c99dee897c4fd67653b4f6375294d668
Summary:
Bumps [types/fb-watchman](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/fb-watchman) from 2.0.0 to 2.0.1.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/fb-watchman">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `dependabot rebase` will rebase this PR
- `dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `dependabot merge` will merge this PR after your CI passes on it
- `dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `dependabot cancel merge` will cancel a previously requested merge and block automerging
- `dependabot reopen` will reopen this PR if it is closed
- `dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Pull Request resolved: https://github.com/facebook/flipper/pull/2593
Reviewed By: mweststrate
Differential Revision: D29752886
Pulled By: passy
fbshipit-source-id: a97533bd6f110abf691facda350cf3892b6c0ac3
Summary:
Bumps [types/rsocket-core](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/rsocket-core) from 0.0.6 to 0.0.7.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/rsocket-core">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `dependabot rebase` will rebase this PR
- `dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `dependabot merge` will merge this PR after your CI passes on it
- `dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `dependabot cancel merge` will cancel a previously requested merge and block automerging
- `dependabot reopen` will reopen this PR if it is closed
- `dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Pull Request resolved: https://github.com/facebook/flipper/pull/2592
Reviewed By: mweststrate
Differential Revision: D29752888
Pulled By: passy
fbshipit-source-id: 9cf7f0b7c696567b2c31cd771aa40dfea5abec4d
Summary:
This seems to be time-sensititve and breaks
occassionally on GitHub Actions.
Reviewed By: fabiomassimo
Differential Revision: D29760768
fbshipit-source-id: 12b496257d01d169c52f3a430175846f9a7eb227
Summary:
Restored sidebar in Flipper messages plugin, by using a Container, as DetailsSidebar is only valid in a PluginContainer context.
Also made tab rendering a bit more condensed while at it.
Reviewed By: timur-valiev
Differential Revision: D29734639
fbshipit-source-id: d3ec6f354e14194035e93daa014985721844416d
Summary:
Some folks were missing the copy as text ManagedTable used to have, so introduced both the options to either copy as text (visible columns or custom copy handler) or as JSON
Changelog: It is now possible to both copy as text or as JSON from data tables
Reviewed By: jknoxville
Differential Revision: D29712096
fbshipit-source-id: 27bd2e869a247bd0896ce2774c08651123fd531d
Summary:
This stack adds a SNAPL Video Logs Flipper Plugin.
In this commit I created the skeleton for the desktop and the client sides of the plugin.
Differential Revision: D29065783
fbshipit-source-id: e204a465e64ede9479665fcbbb6be34643de5218
Summary: As reported in https://fb.workplace.com/groups/flippersupport/permalink/1171595499987773/, the SupportForm doesn't support dark mode. Fixed this by fixing theming in some of the underlying deprecated components.
Reviewed By: timur-valiev
Differential Revision: D29694034
fbshipit-source-id: f8b90ecc87f7f16f6e1f9751d22309d37a052d5a
Summary: A bunch of dropdowns in Flipper are using native context menu to show their items. Rewrote to use Antd instead and reduce coupling with Electron
Reviewed By: timur-valiev
Differential Revision: D29694035
fbshipit-source-id: 5fd80c255c308567daf3e46e03bc27494c8ba142
Summary: Similarly to previous stack, remove the need to import Electron to write things to clipboard. Introduced linter to prevent future use.
Reviewed By: timur-valiev
Differential Revision: D29661777
fbshipit-source-id: 7bc67ede40b65c5f232b69128f3a423e232ddc1b
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
Summary: If no device/client was selected, no plugins would show up in the plugin status list either, which is very confusing. Changed this to always show all loaded plugins, regardless of selected device / app.
Reviewed By: nikoant
Differential Revision: D29661006
fbshipit-source-id: 720a1697df7ed17b00d5db5a72a8e2b6bb344b1e
Summary:
Change iOS to Objective C, reference which file is being updated
- Clarifies how to update iOS if using objective C for flipper network plugin
## Changelog
- renamed iOS to ObjC for flipper network plugin setup
- specified which iOS file to modify for flipper network plugin setup
Pull Request resolved: https://github.com/facebook/flipper/pull/2595
Test Plan:
Imported from GitHub, without a `Test Plan:` line.
|[Site Preview: flipper](https://our.intern.facebook.com/intern/staticdocs/eph/D29662605/V2/flipper/)
Reviewed By: passy
Differential Revision: D29662605
Pulled By: nikoant
fbshipit-source-id: acdc8bba73900c19500fc91f8a275930c51d73ad
Summary:
During component cleanup broke the error handling :'). Causing plugin errors to bubble up and be handled as chrome errors instead. This caused our soft crash metric to spike in the last week.
Changelog: Fixed error handling of UI errors caused by plugins
Reviewed By: passy
Differential Revision: D29585448
fbshipit-source-id: 4c5d40b300a7b71eeb532f7be4765f742d239890
Summary:
It was requested a few times to inline simple values in the preview, to be able to quickly inspect vectors etc while inspecting elements
Implements https://github.com/facebook/flipper/issues/2551
Reviewed By: passy
Differential Revision: D29555541
fbshipit-source-id: c2c171cd7d2bf213f0cd05b5b5723918c9536025
Summary:
Fix selection problem on ManageMockResponsePanel. Currently, when the user adds new routes, the detail section continues to show the detail for the first route. Select different routes in the list does not change the detail panel. The screen is currently not doing anything on selection.
Also fixed a problem with updating on mock header names and values. Updates were not persisting if user did not exist input fields before leaving header input panel.
## Changelog
Network Plugin - Fix selection problem on ManageMockResponsePanel
Pull Request resolved: https://github.com/facebook/flipper/pull/2574
Test Plan:
Add multiple mock routes
Select various routes
Verify that detail panel shows the selected route

Reviewed By: passy
Differential Revision: D29582286
Pulled By: mweststrate
fbshipit-source-id: 6690e2262a033cdfa5afa6e6fdfacc9694244590
Summary: Found some errors in a CI failure originating from a JavaScript file. The horror!
Reviewed By: jknoxville
Differential Revision: D29549998
fbshipit-source-id: 633100ec9a446050bb0c703dcc37e9b132b17198
Summary: Apply local storage setting at a few relevant places, see parent diff
Reviewed By: cekkaewnumchai
Differential Revision: D29516498
fbshipit-source-id: 4797986e3540217e42dfb867f7d627921b97618e
Summary:
Going through all the patch updates and other small updates to pre-empt dependabot.
allow-large-files
Reviewed By: jknoxville
Differential Revision: D29547777
fbshipit-source-id: 86ef2408da0564049916cd96d66665074cdc23f2
Summary: Remove the duplicate function and centralise it as nikoant suggested.
Reviewed By: fabiomassimo
Differential Revision: D29548480
fbshipit-source-id: 3e931cc88198415017c557c6b7c81cb35c3f22c9
Summary: This makes it possible to save source maps to a separate folder so we can upload them from CI.
Reviewed By: nikoant
Differential Revision: D29521599
fbshipit-source-id: a137659092b7648858b97ecf5b5c60c88889517a
Summary:
Per title.
Feature will be used in several plugins in next diffs.
Differential Revision: D29514456
fbshipit-source-id: c12427c2a7c53fa01cd1c7f429be8611be55496d
Summary:
Fixed bug with "Hermes Debugger" and "React Dev Tools" plugin loading reported on GitHub: https://github.com/facebook/flipper/issues/2545.
Changelog: Fixed bug with React Native plugins not loaded: Hermes Debugger, React Dev Tools etc.
Reviewed By: mweststrate
Differential Revision: D29516394
fbshipit-source-id: 4620e3d2b49ca2a1d3a5b2dd76d40d4667a0980b
Summary: We don't need to re-publish plugin package when only docs are changed, so excluding "docs" from checksum computation
Differential Revision: D29508239
fbshipit-source-id: dfae89432f68b784caf07ae24ba7711f76c649b4
Summary:
Changelog: Flipper message debugging moved from a separate device to the console tab
This makes message debugging easier accessible, and in production (recently requested at GH). Also it clears up a lot of infra that was created just to make flipper a self recursive inspection device + a separate plugin. While fun, a hardcoded setup is just a bit more simpler (no exception rules and better static verification)
Reviewed By: nikoant
Differential Revision: D29487811
fbshipit-source-id: b412adc3ef5bd831001333443b432b6c0f934a5e