Summary:
This PR fixes https://github.com/facebook/flipper/issues/798 by adding customizable hotkeys to reload and/or open developer menu in React Native apps.

#### TODO:
- [x] Add correct icon for removing content of the hotkey input (currently using `undo`) - cc passy 😄
## Changelog
Add customizable hotkeys to reload and/or open developer menu in React Native apps.
Pull Request resolved: https://github.com/facebook/flipper/pull/822
Test Plan:
- Run React Native on version `0.62.0-rc.2` (you can use this app: https://github.com/lucasbento/RNWithFlipper);
- Open the Preferences window (`⌘,`);
- Customise the React Native hotkeys to whatever you want;
- Test them out with Flipper's window active and inactive.
> **Note**: this has been tested only in macOS.
Reviewed By: jknoxville
Differential Revision: D20061833
Pulled By: passy
fbshipit-source-id: 601d29e07d7de2683d2c70c7c87f0d841aa3559e
Summary: Updated keytar to match electron 8.0.1
Reviewed By: passy
Differential Revision: D20160252
fbshipit-source-id: fee8aaf152c7a95a62f5b9985c3615c99b5ed0d9
Summary: When running tests locally, some are quite flaky, and there is a lot of error logging noise. This diff doesn't remove all of it, but does reduce it significantly.
Reviewed By: nikoant
Differential Revision: D20034619
fbshipit-source-id: 183f74475b644f803b2f92b1b1301f4d0f6e193a
Summary:
## The dependency [uuid](https://github.com/uuidjs/uuid) was updated from `3.4.0` to `7.0.0`.
This version is **not covered** by your **current version range**.
If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.
---
**Publisher:** [ctavan](https://www.npmjs.com/~ctavan)
**License:** MIT
[Find out more about this release](https://github.com/uuidjs/uuid).
---
<details>
<summary>FAQ and help</summary>
There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).
</details>
---
Your [Greenkeeper](https://greenkeeper.io) bot 🌴
Pull Request resolved: https://github.com/facebook/flipper/pull/828
Reviewed By: cekkaewnumchai
Differential Revision: D20067757
Pulled By: passy
fbshipit-source-id: ac9e7f6aaff86e30c320c427323627ac732ddb73
Summary:
As a first step I've configured bundling for the main process code using Metro. For now I haven't converted anything to ts, just made that possible.
The bundle is just produced into the "static" directory. To avoid too many changes I kept the "static" folder as it is, but probably non-static code should be moved from there.
Also installed modules from "node_modules" for the main process are not bundled to avoid potential issues with node native modules.
Reviewed By: mweststrate
Differential Revision: D19960982
fbshipit-source-id: efbd426254e2b37c913c5f5f75f042c50ccee2f3
Summary:
Tried to upgrade both electron and electron-builder but failed due to Windows binary build stuck.
Upgraded only electron for now. electron-builder will be upgraded separately
Reviewed By: nikoant
Differential Revision: D19877865
fbshipit-source-id: a2282c2f4062e6b470cdcba2e9e693419bfeaec4
Summary:
Adds a visual indicator of layout nodes when using an archived device.
The "device" window isn't movable for some reason. I've tried the movable and draggable attributes but with no luck. It would obviously be good to fix that but I think its probably shippable as is, and I don't have any more ideas about how to do it.
Reviewed By: passy
Differential Revision: D19885719
fbshipit-source-id: 186ba38c85afee18ce111e30187bdccd9b919025
Summary:
## The dependency [fix-path](https://github.com/sindresorhus/fix-path) was updated from `2.1.0` to `3.0.0`.
This version is **not covered** by your **current version range**.
If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.
---
**Publisher:** [sindresorhus](https://www.npmjs.com/~sindresorhus)
**License:** MIT
<details>
<summary>Release Notes for v3.0.0</summary>
<h3>Breaking</h3>
<ul>
<li>Require Node.js 10 <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="41133a9fa6/hovercard" href="41133a9fa6"><tt>41133a9</tt></a></li>
</ul>
<h3>Enhancements</h3>
<ul>
<li>Add TypeScript definition (<a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="522596993" data-permission-text="Issue title is private" data-url="https://github.com/sindresorhus/fix-path/issues/12" data-hovercard-type="pull_request" data-hovercard-url="/sindresorhus/fix-path/pull/12/hovercard" href="https://urls.greenkeeper.io/sindresorhus/fix-path/pull/12">https://github.com/facebook/flipper/issues/12</a>) <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="096036c297/hovercard" href="096036c297"><tt>096036c</tt></a></li>
</ul>
<p><a class="commit-link" href="https://urls.greenkeeper.io/sindresorhus/fix-path/compare/v2.1.0...v3.0.0"><tt>v2.1.0...v3.0.0</tt></a></p>
</details>
<details>
<summary>Commits</summary>
<p>The new version differs by 5 commits.</p>
<ul>
<li><a href="8f12bec72e"><code>8f12bec</code></a> <code>3.0.0</code></li>
<li><a href="41133a9fa6"><code>41133a9</code></a> <code>Require Node.js 10</code></li>
<li><a href="096036c297"><code>096036c</code></a> <code>Add TypeScript definition (https://github.com/facebook/flipper/issues/12)</code></li>
<li><a href="df806209a2"><code>df80620</code></a> <code>Require Node.js 8</code></li>
<li><a href="e208dd064d"><code>e208dd0</code></a> <code>Create funding.yml</code></li>
</ul>
<p>See the <a href="b9fa7c4ce9...8f12bec72e">full diff</a></p>
</details>
---
<details>
<summary>FAQ and help</summary>
There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).
</details>
---
Your [Greenkeeper](https://greenkeeper.io) bot 🌴
Pull Request resolved: https://github.com/facebook/flipper/pull/804
Reviewed By: mweststrate
Differential Revision: D19938234
Pulled By: passy
fbshipit-source-id: b012360396d476d610e79136904052ec7395076d
Summary: A first simple version of pre-bundled plugin installation. Currently both pre-bundled and source-only plugins are supported. Pre-bundled plugins should have folder "dist" inside and package.json's "main" field should point to the entry point script there.
Reviewed By: passy
Differential Revision: D19834020
fbshipit-source-id: 7e0b495fb9666acbb22fc32ca2382339cd9dc72f
Summary:
The Metro control buttons are now in the titlebar. This has a few benefits:
- the buttons are accessible if you are inspecting other metro plugins
- the buttons are even usuable if you selected an app on the actual device. This should help with reducing the cognitive dissonance of having apps both as 'android' app and metro device
- killed the Metro plugin again :)
Reviewed By: nikoant
Differential Revision: D19789455
fbshipit-source-id: 476fd0af1d3fc7b51a33f1af6d3fc3578aeeefae
Summary: Newer versions of mkdirp return promise by default, no need to promisify it.
Reviewed By: passy
Differential Revision: D19815799
fbshipit-source-id: 9e339021f2be8a82cd23c87d2b3248fea591779c
Summary: This is experimental feature to prove that vsix format can be used to publish plugins. Turns out there are almost no differences of vsix in comparison with npm packages.
Reviewed By: jknoxville
Differential Revision: D19770476
fbshipit-source-id: b3c62e7f2a4e8000113b9f1651e8657eb3e0d6fa
Summary:
## The dependency [mkdirp](https://github.com/isaacs/node-mkdirp) was updated from `0.5.1` to `1.0.0`.
This version is **not covered** by your **current version range**.
If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.
---
**Publisher:** [isaacs](https://www.npmjs.com/~isaacs)
**License:** MIT
[Find out more about this release](https://github.com/isaacs/node-mkdirp).
---
<details>
<summary>FAQ and help</summary>
There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).
</details>
---
Your [Greenkeeper](https://greenkeeper.io) bot 🌴
Pull Request resolved: https://github.com/facebook/flipper/pull/758
Reviewed By: mweststrate
Differential Revision: D19578530
Pulled By: passy
fbshipit-source-id: 3f7970875458904dc9bd74828328e5f436abacde
Summary: Just commiting another icon added by the script
Reviewed By: jknoxville
Differential Revision: D19578661
fbshipit-source-id: 9da953cec30d6ac1ea68312c060a8ce4c298fac0
Summary: The navigation plugin threw exceptions, as the defaultPersisted state was not mixed into the already stored state, making some fields unreadable
Reviewed By: jknoxville
Differential Revision: D19554291
fbshipit-source-id: 57f045aa1eae10682e44d479b9aecb51f0391b9e
Summary:
The 'starring' concept of plugins no longer covers the meaning of 'starring', as unstarred plugins will no longer receive data from background plugins, not be available in support request forms due to a lack of data etc. So this diff renames the feature to 'enabled'.
Also fixed an issue where selecting a non-enabled plugin wouldn't show it in the sidebar if the additional plugins are collapsed.
To make disabled plugins more clear, they are . now always rendered in gray.
The toggle button now delays its effect for better visual feedback
- [x] update side bar styling
- [x] remove bottom bar warning
- [x] details screen
- [ ] only open connection for active plugins (will be done in a next diff)
- [x] check archived / imported devices
- [x] make sure device plugins work correctly
- [x] check without GK's
Reviewed By: jknoxville
Differential Revision: D19470326
fbshipit-source-id: 9160a3434287561f56b1b741d5ba282ab6063ea8
Summary: Added button to reset Android SDK path to default + fixed default SDK path on Windows which I introduced in a previous diff and which before might be wrongly resolved to roaming data instead of local data folder
Reviewed By: jknoxville
Differential Revision: D19498899
fbshipit-source-id: e10865b528f55ea6b56873bdf9369c4b60dca89f
Summary:
## The dependency [metro](https://github.com/facebook/metro) was updated from `0.57.0` to `0.58.0`.
This version is **not covered** by your **current version range**.
If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.
---
**Publisher:** [metro-bot](https://www.npmjs.com/~metro-bot)
**License:** MIT
[Find out more about this release](https://github.com/facebook/metro).
---
<details>
<summary>FAQ and help</summary>
There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).
</details>
---
Your [Greenkeeper](https://greenkeeper.io) bot 🌴
Pull Request resolved: https://github.com/facebook/flipper/pull/752
Reviewed By: nikoant
Differential Revision: D19469348
Pulled By: passy
fbshipit-source-id: 89c805bef852ca8ee7d181ae8cc1c8f6e0ff351b
Summary: When Flipper upgraded Electron it broke the iframe sandboxing for devtools, the fix is to use a webview (which requires some CSS fixes to render full screen).
Reviewed By: ArchDev
Differential Revision: D19446243
fbshipit-source-id: 7fd0b0fc922aa6c05c24efc20adce1cb61f24c99
Summary: Fixed the issue with empty plugin list on Windows because of env var length limit
Reviewed By: passy
Differential Revision: D19411466
fbshipit-source-id: 7fa390f7dd342e23e965b2135fbeb8e88e5857ef
Summary:
As reported in https://github.com/facebook/flipper/issues/647 urls are not editable in our generic data inspector, as clicking an url will immediately open it, rather than going to edit mode.
This diff fixes that by appending an edit icon to URL previews.
Reviewed By: jknoxville
Differential Revision: D19428925
fbshipit-source-id: 428e8e4c10fb472792b61986d915658f7581c38d
Summary:
Previously, at 1-minute intervals, if the flipper window was focused on, it would report the currently active plugin.
We'd sum all those "ping" events and that would approximate the number of full minutes spent in total across all users.
It's quite coarse grained, if you're focused on the window for 30 seconds, there's a 50% change your ping will get used.
While being reasonable across many users, it doesn't allow analysis like how many plugins do people typically use in a session, because we probably won't see all the plugins they use.
New approach, for every minute flipper is open, report the focused and unfocused time spent in each plugin, as well as the total across all plugins.
This should give us the previous data but with much more precision.
Should be especially helpful for plugins with low numbers of users, you typically interact with emulators while using a plugin, so it's not continually in focus, so you miss a lot of usage events.
enhance_bladerunner
Reviewed By: nikoant
Differential Revision: D19392796
fbshipit-source-id: af9244e993edff9b381144ca587c3a77fdf8c98a
Summary:
Passing in unknown options along with `flutter-static` now shows the default warning message as part of the API.
## Changelog
show default warning message on firing in unknown flags
Pull Request resolved: https://github.com/facebook/flipper/pull/715
Test Plan: Tested `yarn start` with unknown arguments. Now raises an error.
Reviewed By: mweststrate
Differential Revision: D19389776
Pulled By: passy
fbshipit-source-id: 2f844e38c8be0e4e53b171b98035338226a0a08a
Summary: The first four were added when I ran `yarn start` from `master`. The last one was added when I logged out.
Reviewed By: mweststrate
Differential Revision: D19346191
fbshipit-source-id: 6025bf9b0b2667f93858450cb73e81a6b50126f0
Summary: Michel's feature added this while I was working on the inspector.
Reviewed By: jknoxville
Differential Revision: D19331683
fbshipit-source-id: 57d80ae6648dec891c1cd4a9733f46cf64aae573
Summary: Added unique keys for each healthcheck and used them to save already seen failures. Later I will also use them for gathering doctor analytics.
Reviewed By: jknoxville
Differential Revision: D19301583
fbshipit-source-id: 0c0aa977ea73ce555e0d9fb8e8ead844624fb9cd
Summary: Launch without plugin hot reload in case plugin change detection failed to start
Reviewed By: mweststrate
Differential Revision: D19264418
fbshipit-source-id: 089f818b9101d924c504c7d96f71ebca11c9422f
Summary:
Original commit changeset: 05d13aca7145
Attempt to upgrade `electron` as it instacrashed; `electron-builder` version 22.1.0 didn't sign package correctly and caused the instacrash,
Reduced the version to 21.2.0 (latest).
Reviewed By: passy, nikoant
Differential Revision: D18954671
fbshipit-source-id: bc2dbd4fec9afb51d9a535974651b13d195407b4