Commit Graph

1291 Commits

Author SHA1 Message Date
Pritesh Nandgaonkar
994546b24a Setup of the bug creation screen
Summary: This diff sets up the create form for the new support request project. The current screen is very basic. I will be iterating through it in the upcoming diffs.

Reviewed By: passy

Differential Revision: D18327464

fbshipit-source-id: af01fc10f68a135f32f0ae98551986852019e8aa
2019-11-06 10:46:12 -08:00
Pascal Hartig
9670d6bde5 Prefetch star{,-outline} at size 12
Summary: Used by rating, I think.

Reviewed By: mweststrate

Differential Revision: D18347585

fbshipit-source-id: bbc84a42c34aae9805515c82f8d24cfd0817d8ed
2019-11-06 08:33:36 -08:00
Pascal Hartig
05c007be16 Move plugin manager logic out of UI component
Summary: Moving some things around for the upcoming update support.

Reviewed By: jknoxville

Differential Revision: D18347572

fbshipit-source-id: b614fe3a87f8e7fdc0c11c0d3bfe4787c0914d17
2019-11-06 08:33:36 -08:00
Michel Weststrate
81d7be2479 Fix overflow of long client names
Summary: Look client names were unreadable due to line wrapping

Reviewed By: jknoxville

Differential Revision: D18348602

fbshipit-source-id: 682c3b17ef73ca0bf0f8193f71a608ada5cdfbf2
2019-11-06 07:29:05 -08:00
Michel Weststrate
c3402da467 Fix showing plugins that are incompatible with client
Summary: Fix an issue where we accidentally show all plugins for all clients, causing client crashes if an unsupported plugin is selected

Reviewed By: jknoxville

Differential Revision: D18347907

fbshipit-source-id: 5416f29b8eae2daed64869380f9e9382e90261d7
2019-11-06 07:29:05 -08:00
Michel Weststrate
7040d487d8 don't keep querying iOS simulators if XCode was not installed properly
Summary: Currently the app keeps to find iOS devices if when the tooling isn't properly set up, causing an error to appear every three secs. This change makes sure that happens only once. It also takes care of some run-away promises

Reviewed By: jknoxville

Differential Revision: D18346619

fbshipit-source-id: 12b581bee0d522b37b9e0c5d5b8dad0e4d2058d9
2019-11-06 06:17:22 -08:00
Adam Ernst
6e8de457e7 Remove last traces of ComponentScript from Flipper
Summary: Bye bye ComponentScript.

Reviewed By: d16r

Differential Revision: D18330173

fbshipit-source-id: 8181e9cf082d299790ae3ceaffcc7417dc8190aa
2019-11-05 13:21:02 -08:00
Michel Weststrate
3963535610 Fix buffer warning when starting CPU / kaois plugin
Summary:
When the CPU or kaois plugins are started, they show a buffer deprecated warning, caused by the fact that they ship their own adbkit version, which is unpatched.

This diff makes sure that the adbkit as shipped with Flipper is used instead.

Reviewed By: jknoxville

Differential Revision: D18327441

fbshipit-source-id: 9cab23b9701adc070210cc4133fc8760031bd1d7
2019-11-05 11:10:16 -08:00
Michel Weststrate
3cee927674 Introduce favorite plugins
Summary: This diff lands improved sidebar navigation. The old functionality to order plugins based on last-recently-used, and cropping at 5 items has been removed. Instead, items can be starred and their position will be fixed. Together with the app switcher introduced this should lead to a cleaner, stabler, and more customizable UI.

Reviewed By: jknoxville

Differential Revision: D18299401

fbshipit-source-id: 29b7eb3a4130933c637f7c81834558bf738d5bf0
2019-11-05 09:14:46 -08:00
Michel Weststrate
969a857fae Introduce app selector
Summary: Sidebar now shows a drop down to select the app you are currently working on, rather than showing all plugins for all apps connected

Reviewed By: passy

Differential Revision: D18201094

fbshipit-source-id: a64ca380606c232d0a85bfa80f16ed0db980dfb4
2019-11-05 09:14:46 -08:00
Pascal Hartig
9bb0dad5d6 Refactor installed plugin props passing
Summary:
Left this out from diff at the bottom of the stack to
keep it a bit smaller.

Reviewed By: jknoxville

Differential Revision: D18272165

fbshipit-source-id: a2b0826e268b737341e2ef1c0f96dde32491237f
2019-11-05 05:44:13 -08:00
Pascal Hartig
d2dfb924fd Update plugin store after installation
Summary: Address the small regression introduced by D18173166. When closing the plugin manager after installing/removing, the store wasn't updated in between.

Reviewed By: jknoxville

Differential Revision: D18270821

fbshipit-source-id: 4ff54bc7607d06fa423cf8e673f216ae0a5d19da
2019-11-05 05:44:13 -08:00
Pascal Hartig
432bb1b00a Move local plugin discovery to dispatcher/redux store
Summary: In order to have update notifications, this must live outside the UI component, but it also gives some additional benefits like better testability of previously effectful UI.

Reviewed By: jknoxville

Differential Revision: D18173166

fbshipit-source-id: 1cacb6c7893423a7920a6620dfb76e631caba101
2019-11-05 05:44:12 -08:00
John Knox
42a77094f4 Clean up old flipper rating system
Summary:
Found some unused code from the rating prototype before switching to itsr.
Deleting it.

Reviewed By: cekkaewnumchai

Differential Revision: D18298155

fbshipit-source-id: 3529db17494f4f5bf7d7841460203d1c3856299a
2019-11-04 09:23:50 -08:00
John Knox
ed2343b3c6 Add sessionId to itsr query string
Summary: This will allow rating data to be joined with version number so we can get the rating of each release.

Reviewed By: mweststrate

Differential Revision: D18297808

fbshipit-source-id: 00f151c64aad40632389f728ad25a565f44a2a90
2019-11-04 09:23:50 -08:00
Chaiwat Ekkaewnumchai
c1130a167b Upgrade React-Redux (2nd attempt)
Summary:
- Update and include `react-redux` to Greenkeeper
- Remove legacy context which is used to access `store`
- Export `store` directly to use instead of legacy context

Note:
1st attempt: D18169584 -> got backouted in D18203354

Reviewed By: jknoxville

Differential Revision: D18297298

fbshipit-source-id: fd968f1b211eabb094113a0b35e84305f70117fc
2019-11-04 07:44:08 -08:00
John Knox
61d4e0c6a5 Pretty print settings file json
Summary: Making it a bit more human readable.

Reviewed By: passy

Differential Revision: D18271880

fbshipit-source-id: 10e8ba50957e9407b1436972f8a06915edf73dfb
2019-11-04 07:07:35 -08:00
Michel Weststrate
6e69d20917 Don't bundle react-native dependencies
Summary: Make sure that `.native.js` modules resolutions are _NOT_ prefered over `.js` modules when building flipper or flipper plugins

Reviewed By: jknoxville

Differential Revision: D18297580

fbshipit-source-id: 73f9114d19eb0934cdf69d9668b582966aedc756
2019-11-04 05:07:00 -08:00
Pritesh Nandgaonkar
7c69aba8fa Move supportform related redux property in a different reducer
Summary: This diff moves support form related redux prop to a separate reducer under separate supportForm property.

Reviewed By: passy

Differential Revision: D18272436

fbshipit-source-id: b64c4e041d8dacd305a71db255752a310a46b0d1
2019-11-04 03:58:53 -08:00
Pritesh Nandgaonkar
9ec4ef67ad Cache the text entered by the user
Summary:
This diff introduces the following improvements which I got as a feedback from the user

1) Before this diff the text entered used to vanish away when one switched tabs and came back to the support form. This diff takes care of that.
2) With this diff user can rexport the flipper trace to override the previous cached state too.
    - For this I had to update the UI to show flipper trace a separate input box, rather than appending it in the question field.
    - This avoided the the appending of the text in flipper trace and facilitated the easy override of the trace

3) With this diff one can also override commit_hash without appending multiple text.

WWW changes: D18250494, Do not land until this diff is landed.

Reviewed By: passy

Differential Revision: D18257524

fbshipit-source-id: 119edadf90ac95cb296c10520239513f1fef905d
2019-11-04 03:58:53 -08:00
Anton Nikolaev
faaf8c4f32 Search full request details
Summary: Simple implementation of searching through request/response body on "network" tab

Reviewed By: passy

Differential Revision: D18268026

fbshipit-source-id: 39386d2d6ec50b47c3ca3dec976821282b51636f
2019-11-01 06:55:21 -07:00
Pritesh Nandgaonkar
f6e00136ba Add telemetry for export time and selected plugins
Summary: Adds telemetry for the export time and also logs the selected plugins.

Reviewed By: jknoxville

Differential Revision: D18244843

fbshipit-source-id: 36a3e8b9b456b59187918d19075a2c1ea0caef25
2019-10-31 09:40:51 -07:00
Gijs Weterings
96162f40cb Layout plugin: Add option to Expand/collapse recursively
Summary:
Uses a slightly modified version of the deep expansion. In testing, there were a few issues due to the function in Inspector::onElementExpanded is essentially a toggle. I added an optional parameter to override this toggle behavior for child elements, and also flipped the order of root and child actions during collapsing, as the child state otherwise didn't persist properly (due to the component being unmounted, would be my guess?) This change should be non-breaking to other uses of the method that don't use the `deep: true` parameter
close https://github.com/facebook/flipper/issues/223

Reviewed By: passy

Differential Revision: D18225057

fbshipit-source-id: 53e840f07bf648249b5a4b36d115918dba215ff8
2019-10-31 08:41:27 -07:00
greenkeeper[bot]
e90cff1b82 chore(package): update uglify-js to version 3.6.5 (#613)
Summary:
## Changelog
Pull Request resolved: https://github.com/facebook/flipper/pull/613

Reviewed By: jknoxville

Differential Revision: D18222463

Pulled By: passy

fbshipit-source-id: b94c8eeb4f4750cd306db19230f9780f66893d0e
2019-10-30 11:30:52 -07:00
Gijs Weterings
7e374ebdf1 Don't send notifications for crashes we can't explain
Summary: If the `crash.reason` assumes the default value of "Cannot figure out the cause", we don't show a notification in the hub. The crash is still visible in the Crash plugin, but the superfluous Reason row is hidden there, as we can't say anything useful there anyways

Reviewed By: passy

Differential Revision: D18223910

fbshipit-source-id: c033085badbf633b58f95c495c6d3a22bc7fb163
2019-10-30 08:38:17 -07:00
Gijs Weterings
d0ab63297f Convert Flipper plugin "Fresco" to TypeScript
Summary:
Moves the Fresco plugin to TypeScript, including fixing any typing/nullable warnings following this.

Note that parameters of event handlers previously using the SyntheticInputEvent flow type now accept a parameter of type `any`. This is done since the InputEvent api is not covered by ts bindings, as the interface is deemed experimental and not fully covered by browsers (see https://fettblog.eu/typescript-react/events/#wheres-inputevent for more info)

Reviewed By: passy

Differential Revision: D18201893

fbshipit-source-id: 41d1e5fc1ceaa8f8453c0f5929e754b7c32c0eb8
2019-10-30 08:33:52 -07:00
Gijs Weterings
7ca230a9c6 MVP of filtering errors based on crash reason field
Summary: Minimal change to be able to filter crashes in the notifications tab, to filter out recurring/irrelevant crashes such as the one in https://github.com/facebook/flipper/issues/609

Reviewed By: passy

Differential Revision: D18223356

fbshipit-source-id: 8cf2187d53c9fec98c9a35edefb0da5783fe7c8e
2019-10-30 08:28:46 -07:00
Pritesh Nandgaonkar
e73381a85c JSON.stringify over custom serializer
Summary: This diff calls JSON.stringify on the final export object instead of the custom serializer. As the custom serializer is slower, because it has to check for different types on its children before serializing it. Which adds to the complexity. The time gain which we get is 3x, that is with this change the export is 3 times faster. We required custom serializer, because the logs had `Date` which is not serializable. So that is being taken care while importing it.

Reviewed By: jknoxville

Differential Revision: D18171202

fbshipit-source-id: cd1b59b74dabb4c35a032dc7b54f183a68e37823
2019-10-29 13:47:01 -07:00
Pritesh Nandgaonkar
f49745448c Pass the status Msg as an argument
Summary: Before this diff whenever one called serialize method it showed `Serializing Flipper  ` msg without showing the explicit details of which data we are serializing. Thus with this diff one can pass the status msg as an argument which will be displayed while serializing.

Reviewed By: jknoxville

Differential Revision: D18173024

fbshipit-source-id: a4e7e073498993626204061d4e774099f00b8c5a
2019-10-29 13:47:00 -07:00
Pritesh Nandgaonkar
63ac7e7e93 Add selection option for plugin selection component
Summary: This diff refactors the Select plugin sheet to have multi select and single select options. Also renamed the class names and variables, as its business logic is quite generic.

Reviewed By: jknoxville

Differential Revision: D18118359

fbshipit-source-id: 2f1a6840032b81c5fdd9af9f6e69ea2ff611bf13
2019-10-29 13:47:00 -07:00
Pascal Hartig
4c47c766fd Fix installed plugin check
Summary:
D17877108 inadvertently introduced a bug because `fs` and `fs-extra` behave differently and apparently wrapping `exists` which is already async in another `promisify` ends up raising the result as an exception (in this case throwing "true" or "false" as an error instead of yielding it back). Annoyingly, TypeScript's type system doesn't catch this. :/

This fixes the invocation and restores the install/remove functionality.

Reviewed By: jknoxville

Differential Revision: D18199958

fbshipit-source-id: f5835d8912bfe1191a12a318103bfc1fb7d776a3
2019-10-29 06:03:29 -07:00
Michel Weststrate
93fad01ea5 Summary:
Fixed React 'missing key' warning for sidebar

Issue was introduced in D18169459

Reviewed By: jknoxville

Differential Revision: D18171025

fbshipit-source-id: e62c5cab24f198b79febd1e864aefd90dfc2f93e
2019-10-28 08:45:05 -07:00
greenkeeper[bot]
f85e366c04 Greenkeeper/@types/react 16.9.11 (#611)
Summary:
Update.
Pull Request resolved: https://github.com/facebook/flipper/pull/611

Reviewed By: jknoxville

Differential Revision: D18169458

Pulled By: passy

fbshipit-source-id: 2aac11ff7fb6064904e817dbaf6b7f58d31da9ca
2019-10-28 08:35:16 -07:00
greenkeeper[bot]
bdfe00a0de chore(package): update uglify-js to version 3.6.4 (#610)
Summary:
## Changelog
Pull Request resolved: https://github.com/facebook/flipper/pull/610

Reviewed By: jknoxville

Differential Revision: D18169272

Pulled By: passy

fbshipit-source-id: ed7c53e5d27053c2d6a881e513d9749cc1d39728
2019-10-28 07:42:22 -07:00
Uma Sankar
61bb537a66 Corrected schedule spelling (#608)
Summary:
Fixed a type in Logs Plugin
Pull Request resolved: https://github.com/facebook/flipper/pull/608

Reviewed By: jknoxville

Differential Revision: D18165001

Pulled By: passy

fbshipit-source-id: 4635ce101abbb0146628235010587d1a9d07db8c
2019-10-28 07:36:09 -07:00
Michel Weststrate
494ffd26b3 Introduce support for categorizing plugins
Summary:
This PR introduces the possibility to group plugins in categories.
The category can be determined by setting the `category` field in `package.json`.
Categories are sorted alphabetically.
Categories are shown below all uncategorized items.
Within categories, items are sorted as before: by last recently usage.

Design wise, the category name might now look more prominent than the app name, this is to be addressed in a follow up PR.

Reviewed By: jknoxville

Differential Revision: D18169459

fbshipit-source-id: 77deb0f27a0462a0d449944ddc262396160687a2
2019-10-28 06:21:37 -07:00
Udoka Nkwocha
b073c90e24 Allow multiple surface filter selection
Summary: Added the ability to select multiple surface filters.

Reviewed By: jknoxville

Differential Revision: D18139865

fbshipit-source-id: d1b98d1f13febbbf20e8fed6df3a34909a27be89
2019-10-28 06:05:09 -07:00
Pritesh Nandgaonkar
f00f0ad4b9 Fix the AD bar when the window width is too small
Summary:
This diff fixes the broken UI of advertising bar when window size is too small

Bug:

{F219320329}

Reviewed By: jknoxville

Differential Revision: D18114230

fbshipit-source-id: fda321af761f9707077ded5d53a51e79f4cd26d6
2019-10-24 08:28:01 -07:00
Pritesh Nandgaonkar
652ffd43d6 Parse deeplink uri and update the check
Summary: Parse the deeplink url and update the checks by comparing particular components.

Reviewed By: jknoxville

Differential Revision: D18093494

fbshipit-source-id: c79c1974a7e50b61724dedd7fd3303093fac944b
2019-10-24 03:52:08 -07:00
Alexander Putilin
0077f4c9f2 KaiOS RAM graph plugin
Summary:
This plugin simply plots a graph of RAM usage per app (with some built-in apps are excluded).
Can be useful for debugging memory spikes.

{F218362880}

Reviewed By: jknoxville

Differential Revision: D18013073

fbshipit-source-id: 93e2f87280a734d1d05f4f5b600f7b81024bd348
2019-10-23 12:43:21 -07:00
John Knox
ac4e1ce71b Add some padding between sections in settings
Reviewed By: priteshrnandgaonkar

Differential Revision: D18085724

fbshipit-source-id: d874a21399e86f0079bf1cc86d4b83be6ce5a5d7
2019-10-23 10:40:04 -07:00
Pritesh Nandgaonkar
ef43878286 Add Marketing Bar for Flipper Support Form
Summary: This diff shows marketing bar for support feature when someone inspects the litho view. Once it is inspected it will shown for the rest of the time till the plugin is unmounted.

Reviewed By: jknoxville

Differential Revision: D18086347

fbshipit-source-id: cb906614f571e8ece2293b028f809d1aa5c211e5
2019-10-23 10:40:03 -07:00
John Knox
2cd6be2d0f Move tests to internal repo
Summary:
Some of the tests need to mock behavior of fb-internal dependencies.
These fb deps get swapped out with a babel transform and it's become hard to maintain now that we're mocking them as well.

For simplicity of mocking, moving them out of the public repo, they'll get run on PRs.

Reviewed By: priteshrnandgaonkar

Differential Revision: D18086247

fbshipit-source-id: 001e258e00da67a112cb754e851253e5480e578a
2019-10-23 10:33:45 -07:00
Pascal Hartig
d54b341192 Upgrade which / simplify use
Summary:
It's already a promise. With the next upgrade this otherwise causes
some nasty type errors due to overloading.

Reviewed By: jknoxville

Differential Revision: D18059641

fbshipit-source-id: 93cee95d7bbf767ff6276a0946262bf83587c728
2019-10-23 05:51:55 -07:00
Michel Weststrate
561d560e18 Fix long error titles pushing buttons out of view
Summary: This diff fixes an issue where error messages that are to long pushed the buttons out of view, or the other rows too much down.

Reviewed By: passy

Differential Revision: D18083659

fbshipit-source-id: 54bdae682e6e756c9dad1a8cd247dd694ae0eef2
2019-10-23 05:35:08 -07:00
Pascal Hartig
0ba190e3ac Fix metrics.node.tsx test (#599)
Summary:
It shouldn't make a difference which one we import because they're
both mocked but only one works in the GitHub export.
Pull Request resolved: https://github.com/facebook/flipper/pull/599

Test Plan: yarn test; CI

Reviewed By: jknoxville

Differential Revision: D18083321

Pulled By: passy

fbshipit-source-id: 6d04390b4403bf291c201d3c17902304ea9b1c6e
2019-10-23 05:17:18 -07:00
Michel Weststrate
40bc957b21 Show uncatched errors to developers
Summary: To make (accidental) errors more visible to developers of Flipper, all uncaught and FBLogger logged errors will be shown in the UI and prefixed with `[DEV]`. This is only done in non-production builds

Reviewed By: jknoxville

Differential Revision: D18061174

fbshipit-source-id: 9dab0e8d34396b0cb421a4d4e6fc14c81447d190
2019-10-23 04:16:15 -07:00
John Knox
beb797e70d Remove double greyed-out-overlay
Summary:
When a toggled section is frozen, it already has a greyed out overlay over the whole thing.
So there's no need for another one covering the indented section.

Reviewed By: passy

Differential Revision: D18063767

fbshipit-source-id: a4d5992ecf61f036a23f619e9cf64d59150a41d6
2019-10-23 03:51:59 -07:00
Pascal Hartig
f53b252aff Change groups URL
Summary: Added a slug a while ago and it looks a bit better when shown in the bugnub.

Reviewed By: cekkaewnumchai

Differential Revision: D18083274

fbshipit-source-id: 5a9c8c126b5dcee92a697096ac3393a93a1690c3
2019-10-23 03:01:56 -07:00
John Knox
96d2669bbb Improve FB employee version warning
Summary: Wording was a bit strange.

Reviewed By: passy

Differential Revision: D18063264

fbshipit-source-id: 29fb6f16ba6246f307d956a0309dbd153878a251
2019-10-23 02:33:39 -07:00