Commit Graph

1610 Commits

Author SHA1 Message Date
Pascal Hartig
8124663c5c Disable filter data test
Summary:
This seems to be time-sensititve and breaks
occassionally on GitHub Actions.

Reviewed By: fabiomassimo

Differential Revision: D29760768

fbshipit-source-id: 12b496257d01d169c52f3a430175846f9a7eb227
2021-07-19 03:54:06 -07:00
Michel Weststrate
32d61886b8 Restore messages sidebar in FlipperMessages
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
2021-07-16 08:01:56 -07:00
Michel Weststrate
57d00e0bab One sleep to rule them all. Zzz
Summary: Boyscouted some code duplication away.

Reviewed By: jknoxville

Differential Revision: D29731016

fbshipit-source-id: d5f1677a667f032f6e7e031da296be26e1976932
2021-07-16 03:43:36 -07:00
Michel Weststrate
d23ccfcd44 Restore copy on text
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
2021-07-16 03:43:36 -07:00
Matt Davison
1e93055eb5 Add SNAPL Flipper Plugin
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
2021-07-15 14:09:04 -07:00
Michel Weststrate
7b2afda844 Support dark mode
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
2021-07-15 01:54:20 -07:00
Michel Weststrate
ac24bbed3e Don't use Electron menus for dropdowns
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
2021-07-15 01:54:20 -07:00
Michel Weststrate
9b9f5d15a1 Avoid using electron directly for writing to clipboard
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
2021-07-15 01:54:20 -07:00
Michel Weststrate
5dbd3bd414 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
2021-07-15 01:54:20 -07:00
Flipper Bot
5da8fca2e4 Flipper Release: v0.98.0
Summary: Releasing version 0.98.0

Reviewed By: priteshrnandgaonkar

Differential Revision: D29693626

fbshipit-source-id: 31e5bc8d48c2c3e208022e57e6ce564e79d7329e
2021-07-14 08:23:53 -07:00
Michel Weststrate
25fa0b7c61 Make plugin status screen more useful
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
2021-07-13 03:34:15 -07:00
Michael MacPherson
1fdc261111 Update setup.mdx (#2595)
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
2021-07-12 13:51:23 -07:00
Alex Min
9498a529d5 Filter out empty strings after splitting top-level JSON
Summary: https://fb.workplace.com/groups/flippersupport/permalink/1169477680199555/

Reviewed By: jknoxville

Differential Revision: D29637437

fbshipit-source-id: cd8c55141f2d95afeea0f8680dd3a0d29943c200
2021-07-09 10:22:45 -07:00
Flipper Bot
1b36e33a25 Flipper Release: v0.97.0 (#2579)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/2579

Releasing version 0.97.0

Reviewed By: jknoxville

Differential Revision: D29592758

fbshipit-source-id: 28ae9682c041afc29ee7b524eaa67167b9711baa
2021-07-09 05:23:01 -07:00
Michel Weststrate
88d6d000c8 Fixed error in error handling
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
2021-07-07 05:10:18 -07:00
Michel Weststrate
17e064294c Improve data inspector by showing previews of simple values
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
2021-07-07 05:07:10 -07:00
bizzguy
6c534f5749 Fix selection on mock list (#2574)
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

![2021-07-06_21-43-56](https://user-images.githubusercontent.com/337874/124692775-cc169680-dea3-11eb-8a70-14457c5f6304.jpg)

Reviewed By: passy

Differential Revision: D29582286

Pulled By: mweststrate

fbshipit-source-id: 6690e2262a033cdfa5afa6e6fdfacc9694244590
2021-07-07 05:04:26 -07:00
Michel Weststrate
04ec026034 Converted some left-over JavaScript file to TypeScript
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
2021-07-06 01:46:44 -07:00
Michel Weststrate
9ca8bee208 Improve metro device error connection reporting
Summary: Slightly better error handling, as websockets errors propagated without context

Differential Revision: D29515852

fbshipit-source-id: 1df85977965e061a5e4d76bb22a4a3dfb74b6c04
2021-07-05 08:42:27 -07:00
Michel Weststrate
a8062499df Use local storage for state persisting
Summary: Apply local storage setting at a few relevant places, see parent diff

Reviewed By: cekkaewnumchai

Differential Revision: D29516498

fbshipit-source-id: 4797986e3540217e42dfb867f7d627921b97618e
2021-07-05 08:39:54 -07:00
Pascal Hartig
3981ac9b1e Monday dep bump
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
2021-07-05 08:30:31 -07:00
Pascal Hartig
0e1f8e45ec Refactor out strip source map fn
Summary: Remove the duplicate function and centralise it as nikoant suggested.

Reviewed By: fabiomassimo

Differential Revision: D29548480

fbshipit-source-id: 3e931cc88198415017c557c6b7c81cb35c3f22c9
2021-07-05 06:37:09 -07:00
Pascal Hartig
04616ad647 Allow saving source maps during build
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
2021-07-05 06:05:43 -07:00
Pascal Hartig
38037db7d4 Upgrade testing-library
Summary:
One breaking change addressed.

Full changelog:
https://github.com/testing-library/dom-testing-library/releases/tag/v8.0.0

Reviewed By: priteshrnandgaonkar

Differential Revision: D29484251

fbshipit-source-id: 979208e25186cc58912e901df95be64f07202c3a
2021-07-01 10:22:02 -07:00
Flipper Bot
1e8db937c1 Flipper Release: v0.96.1
Summary: Releasing version 0.96.1

Reviewed By: nikoant

Differential Revision: D29517059

fbshipit-source-id: a484862db5280897a17be415b36a9e7900de6737
2021-07-01 07:45:44 -07:00
Michel Weststrate
25373a3089 Introduce localStorage support to createState
Summary:
Per title.

Feature will be used in several plugins in next diffs.

Differential Revision: D29514456

fbshipit-source-id: c12427c2a7c53fa01cd1c7f429be8611be55496d
2021-07-01 07:20:32 -07:00
Anton Nikolaev
2a3b9c9e43 Fixed a bug with React Native plugins loading
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
2021-07-01 06:24:08 -07:00
Michel Weststrate
ac6dc4694e Disabled timezone sensiteve test on windows (#2546)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/2546

TZ overrides don't work in NodeJS on windows, so skipped tests affected

Reviewed By: jknoxville

Differential Revision: D29513800

fbshipit-source-id: 027b8283e23ee9a9a51e7c8d84c42f21a2f42536
2021-07-01 04:21:39 -07:00
Anton Nikolaev
56f502af07 Exclude docs from package checksum computation
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
2021-07-01 02:59:09 -07:00
Michel Weststrate
328ba9513c Make flipper messages generally available, remove self inspection infra structure
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
2021-07-01 02:00:08 -07:00
Thuy Hai Nguyen
8da7495a1a Mutations GraphQL calls
Summary: Added Create, Update, and Delete GraphQL calls (local devdb)

Reviewed By: timur-valiev

Differential Revision: D29472343

fbshipit-source-id: 8fc93da87b90bf8b6cfe24b13bee5c5fe97ab7e3
2021-06-30 13:53:13 -07:00
Michel Weststrate
6c7b69803f Add support for negative filters
Summary:
Changelog: Add support for negative filters in data tables

As requested per somewhere on workplace but couldn't find it back :)

Reviewed By: nikoant

Differential Revision: D29486096

fbshipit-source-id: 467c8598f6d09afc9a5ed85affb6c51840afe00c
2021-06-30 10:42:32 -07:00
Michel Weststrate
8e0d3cf779 Removed some old ui/ components
Summary: Removing old components that are no longer used, and cleaning up index.tsx to prevent future for some of those

Reviewed By: nikoant

Differential Revision: D29428621

fbshipit-source-id: 78ae51c09510738cf2d75982fdae35b9ef6d2d7e
2021-06-30 10:42:32 -07:00
Michel Weststrate
1dafe351f7 Remove SearchableDataInspector
Summary: Fury was the last user of this component

Reviewed By: nikoant

Differential Revision: D29426804

fbshipit-source-id: 793135119e70b41eda0391d3fedee1c9b6834cbd
2021-06-30 10:42:32 -07:00
Michel Weststrate
16154e1343 Remove classic plugin infra
Summary:
This removes all code duplication / old plugin infra that isn't needed anymore when all plugin run on the Sandy plugin infra structure.

The diff is quite large, but the minimal one that passes tests and compiles. Existing tests are preserved by wrapping all remaining tests in `wrapSandy` for classic plugins where needed

Reviewed By: passy

Differential Revision: D29394738

fbshipit-source-id: 1315fabd9f048576aed15ed5f1cb6414d5fdbd40
2021-06-30 10:42:32 -07:00
Michel Weststrate
9d6abd62c6 Always use Sandy wrapper
Summary:
Since the Sandy wrapper is now rolled out to 100%, removing the GK. Further code cleanup in next diffs.

Changelog: Flipper that don't use the new Sandy plugin format yet (see https://fbflipper.com/docs/extending/sandy-migration) will now always be loaded inside a legacy container

Reviewed By: timur-valiev

Differential Revision: D29394736

fbshipit-source-id: f7a7c321c6b6a82470d47e4352d86135c3849b82
2021-06-30 10:42:32 -07:00
Michel Weststrate
4b3772ced4 serialization
Summary: Remove serialisation utilities which are now unused

Reviewed By: priteshrnandgaonkar

Differential Revision: D29394737

fbshipit-source-id: 19ead40dfdb493cbbaee09745b3fc313272da34d
2021-06-30 10:42:32 -07:00
Pascal Hartig
099e792aaf Clean up deps
Summary: These seem unused.

Reviewed By: fabiomassimo

Differential Revision: D29328071

fbshipit-source-id: b4f6d163d03caa9390696fbc33a3b8afcfc6ad2a
2021-06-30 10:00:13 -07:00
Anton Nikolaev
ef5a7d5bba Temporary remove fb-only include form "navigation" plugin setup docs to fix github build
Summary:
Github build is currently broken, so I'm removing this for now while I'm looking for the proper fix.

Failed job: https://github.com/facebook/flipper/runs/2947749418

Reviewed By: priteshrnandgaonkar

Differential Revision: D29491530

fbshipit-source-id: a2430033e18d3883adf2617beb0c60a67db5e183
2021-06-30 09:49:51 -07:00
Flipper Bot
f8996a35cd Flipper Release: v0.96.0
Summary: Releasing version 0.96.0

Reviewed By: nikoant

Differential Revision: D29487010

fbshipit-source-id: 37445bf8d448f2a71a16fbf0dbf37a5c6737a602
2021-06-30 09:08:28 -07:00
Anton Nikolaev
7a1b2ecc73 Basic plugin info view for open-source builds
Summary: Show a new view when a disabled/uninstalled plugin is selected in open-source Flipper build. I'm going to improve it later with additional info from npm packages metadata. For now it just shows status of the plugin and button to install/enable it.

Reviewed By: mweststrate

Differential Revision: D29482937

fbshipit-source-id: 45d207d3f6e846c354184f2b5fd911751d3164b0
2021-06-30 04:16:30 -07:00
Anton Nikolaev
039d3a4a08 Move plugin docs to plugin folders
Summary: Moved plugin documentation and related assets to plugin folders, fixed links and configured redirects where required. Now these docs are used for both showing docs in Flipper and generating Flipper docs website.

Reviewed By: passy

Differential Revision: D29465567

fbshipit-source-id: 3ec4240b215b0d5baea5154f64266a9ba7ead3a5
2021-06-29 17:40:38 -07:00
Anton Nikolaev
4ad7a70ee3 Differentiate enabled and disabled selected plugins in analytics
Summary: As we now allow selection of disabled plugins we need to track plugin usage a bit smarter. We'll add a new field "pluginEnabled" to the logged messages to indicate whether selected plugin is enabled or not.

Reviewed By: cekkaewnumchai

Differential Revision: D29455248

fbshipit-source-id: 32c79e0961653edc8f4cc89adecc2662b37cbd7b
2021-06-29 13:02:05 -07:00
Anton Nikolaev
142859f0ed Intercept click to links in the embedded documentation and redirect them to the default browser
Summary: Intercept click to links in the embedded documentation and redirect them to the default browser.

Reviewed By: passy

Differential Revision: D29426270

fbshipit-source-id: 1d3d9613ff827f80287883768452b93701e95d96
2021-06-29 13:02:05 -07:00
Anton Nikolaev
9fc85730ba Show plugin documentation in Flipper
Reviewed By: passy

Differential Revision: D29392524

fbshipit-source-id: 675de1fc070b1b8b22d0b27721c16dbd6f7076ef
2021-06-29 13:02:05 -07:00
Anton Nikolaev
e4fb2907fd Auto-generate plugin docs
Summary:
This diff changes the way on how plugin documentation is produced. Instead of keeping plugin documentation together with other docs, we will now keep it together with plugin code. There are multiple advantages of such solution:
1. We are generating docs for every plugin in a standartised way so all of them looks similar. We can also use plugin metadata for generation as well (e.g. take title, icon, oncall name etc from package.json).
2. Standartised plugin docs make it possible to build docs both for websites (public and internal) and for embedding into Flipper.
3. It will hopefully incentivise authors to write docs as they will be a part of plugin "package".
4. We can scaffold documentation template using scarf to further incentivise filling it.

Reviewed By: jknoxville

Differential Revision: D29378053

fbshipit-source-id: 66ea48dc9ba225fabfb256ae6a10f8c81eef6f5f
2021-06-29 13:02:05 -07:00
Anton Nikolaev
116f6eb5ba Show PluginInfo for unavailable and not installed plugins
Summary: Updated PluginInfo component to show info about uninstalled and unavailable plugins in addition to enabled/disabled. Now any selected plugin will be shown there. For uninstalled plugins we will show "Install" action button. For unavailable plugins we wiil show an alert describing why plugin is unavailable.

Reviewed By: mweststrate

Differential Revision: D29254970

fbshipit-source-id: 0de32da5b5550ff6b7d452abf6ff7259677aebc5
2021-06-29 13:02:05 -07:00
Anton Nikolaev
e36eec82b2 Change PluginContainer to allow selecting unavailable plugins
Summary: Changed PluginContainer implementation to allow selecting unavailable/uninstalled plugins which was impossible before that. Please note that for now something is shown only for enabled and disabled plugins. In next diff I'm also adding content for unavailable and uninstalled plugins.

Reviewed By: mweststrate

Differential Revision: D29254788

fbshipit-source-id: da639e5efddc821061abb69df534ffdce8ccd4e0
2021-06-29 13:02:05 -07:00
Anton Nikolaev
ff5d8ba29f Use selectors to compute plugin lists according to the selected device and app
Summary: Use selectors to re-compute and cache plugin lists according to the selected device and app.

Reviewed By: mweststrate

Differential Revision: D29247845

fbshipit-source-id: 4bc669d5d441d605c4090086c4ce59b6d9684a4c
2021-06-29 13:02:05 -07:00
Anton Nikolaev
1d26faeacb Plugin Info UI layout
Summary: Initial layout for Plugin Info view built based on Plugin Manager Flow mockups.

Reviewed By: mweststrate

Differential Revision: D29186006

fbshipit-source-id: 01fafbdba049baf2e573228ff5b939ebc4871db2
2021-06-29 13:02:05 -07:00