Summary:
In order to foster healthy open source communities, we're adopting the
[Contributor Covenant](https://www.contributor-covenant.org/). It has been
built by open source community members and represents a shared understanding of
what is expected from a healthy community.
Reviewed By: josephsavona, danobi, rdzhabarov
Differential Revision: D17104640
fbshipit-source-id: d210000de686c5f0d97d602b50472d5869bc6a49
Summary:
Adds a binary we can run on Sandcastle.
allow-large-files
Reviewed By: danielbuechele
Differential Revision: D17093672
fbshipit-source-id: 3695739a65aea72bc8c8268404c9d3e025349e16
Summary:
This is a simple script that runs `tsc --strict` twice: on the current revision and the previous one, compares the number of errors and if there are more, prints them out and raises a failure exit code.
This should help us ensure that while we clean up the 500-odd errors we don't land more in the process.
Reviewed By: danielbuechele
Differential Revision: D17093671
fbshipit-source-id: 6c5d1424c729d15d66a32ae17f15b17c3b76fc68
Summary: Keyboard events were not handled correctly. This was because the tabIndex was not set correctly. Maybe a regression from the TypeScript conversion.
Reviewed By: passy
Differential Revision: D17079157
fbshipit-source-id: 752853c0d761da67c7b09f50b531abf58bc7feec
Summary:
Bumps [eslint-utils](https://github.com/mysticatea/eslint-utils) from 1.4.0 to 1.4.2.
<details>
<summary>Commits</summary>
- [`4e1bc07`](4e1bc077c2) 1.4.2
- [`e4cb014`](e4cb01498d) 🐛 add null test
- [`230a4e2`](230a4e2275) 1.4.1
- [`08158db`](08158db1c9) 🐛 fix getStaticValue security issue
- [`587cca2`](587cca2f82) 🐛 fix getStringIfConstant to handle literals correctly
- [`c119e83`](c119e83295) 🐛 fix getStaticValue to handle bigint correctly
- See full diff in [compare view](https://github.com/mysticatea/eslint-utils/compare/v1.4.0...v1.4.2)
</details>
<br />
[](https://help.github.com/articles/configuring-automated-security-fixes)
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 ignore this [patch|minor|major] version` will close this PR and stop Dependabot creating any more for this minor/major 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)
- `dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/facebook/flipper/network/alerts).
</details>
Pull Request resolved: https://github.com/facebook/flipper/pull/526
Reviewed By: danielbuechele
Differential Revision: D17074295
Pulled By: passy
fbshipit-source-id: f416d2c5b5f300c60694a3e411f16c585fb52afb
Summary: This commit provides the navigation plugin with more value, showing the ViewController of the rendered view.This allows the user to quickly start working on that view controller once they have the name. This works on nearly all views in the iOS app.
Reviewed By: passy
Differential Revision: D17071558
fbshipit-source-id: 22a22d4a0991e9f20bc85eb106a98a42214d4d0c
Summary: Added ability to navigate to deeplinks from Flipper for iOS. This is done through the "xcrun simctl" command, much like how we handle screenshots on iOS.
Reviewed By: passy
Differential Revision: D17071428
fbshipit-source-id: 86cb375e750e89ddf598a42ce33d3099bb08803a
Summary: There were some leftover Litho references.
Reviewed By: danielbuechele
Differential Revision: D17071513
fbshipit-source-id: feec9a5748c359a830746c2f9944e0256b16bc09
Summary:
This Diff is being posted for discussion purposes. It will not be ready to land until React DevTools v4 has been published to NPM.
Update React Native to be compatible with the [new version 4 React DevTools extension](https://github.com/bvaughn/react-devtools-experimental).
**Note that this is a breaking change**, as the version 3 and version 4 backends are **not compatible**. Once this update ships (in React Native) users will be required to update their version of the [`react-devtools` NPM package](https://www.npmjs.com/package/react-devtools). The same will be true for IDEs like Nuclide as well as other developer tools like Flipper and [React Native Debugger](https://github.com/jhen0409/react-native-debugger).
Related changes also included in this diff are:
* Pass an explicit whitelist of style props for the React Native style editor (to improve developer experience when adding new styles).
* Update `YellowBox` console patching to coordinate with DevTools own console patching.
* Also improved formatting slightly by not calling `stringifySafe` for strings (since this adds visible quotation marks).
Regarding the console patching- component stacks will be appended by default when there's no DevTools frontend open. The frontend will provide an option to turn this behavior off though:
{F168852162}
React DevTools will detect if the new version is used with an older version of React Native, and offer inline upgrade instructions:
{F169306863}
**Note that the change to the `RCTEnableTurboModule` will not be included in this Diff**. I've just turned those off temporarily so I can use v8+Chrome for debugging.
Reviewed By: rickhanlonii
Differential Revision: D15973709
fbshipit-source-id: bb9d83fc829af4693e7a10a622acc95a411a48e4
Summary:
In tests, the instance is never initialized and it's hard to guard against null when the
instance isn't initialized to nullptr (instead being random data).
Reviewed By: ximyu
Differential Revision: D16984717
fbshipit-source-id: 414539e1117abaad16df9f9b7d3b8dbb328e38d0
Summary:
Added some missing imports in the Android getting started documentation.
By adding these imports, the compilation will not fail.
## Changelog
Updated the getting-started documentation for android
Pull Request resolved: https://github.com/facebook/flipper/pull/514
Test Plan: Add the imports and the build should run successfully
Reviewed By: passy
Differential Revision: D16919073
Pulled By: priteshrnandgaonkar
fbshipit-source-id: 30144f440d312effec289b60af6ca537df344cd2
Summary:
* Change the way to determine recently used plugins
* Show all plugins if there are just a few hidden plugins
* Not all of plugins in client list can be showed, so checking happens when rendering
* Add action to clear the history internally (for testing) (not sure if needed)
Reviewed By: danielbuechele
Differential Revision: D16965302
fbshipit-source-id: 6efeedac8c0fad7e89a96e7fc5ba9101d3516fe7
Summary:
This converts the index file to TypeScript which is used as an export for all plugins. Alongside, I had to fix a couple of errors in various files to make sure everything works correctly.
For plugins using flow, we define an interface which uses the type definition for FlipperPlugin and types all UI components as `any`.
Reviewed By: passy
Differential Revision: D16936890
fbshipit-source-id: dacd9a63a82b9f0bbb530b06072186874cba7b6f
Summary:
Here I've attempted to add screenshots to the nav plugin. This isn't the most elegant solution, but it might have to do due to limitations on the event handler for navigation being fired when the navigation occurs, and not when all remote content on the view has loaded. With this in mind, I added a 1 second delay for the screenshot. This has its own issues such as navigating within a second away from the page will display the wrong view.
If anyone has some suggestions I am open.
Another issue faced here was that incoming nav events are now impure as I need to go take a screenshot on each nav event. Therefore, I have removed the the tests which no longer work for the NavPlugin.
Reviewed By: danielbuechele
Differential Revision: D16915859
fbshipit-source-id: 95db0d1ded2084441d49e1f2e4712c55acf9f1b8
Summary:
I have moved the screenshot functions from ScreenCaptureButtons to the Device classes. I have slightly rewritten them so that they return a Promise which resolves to a Buffer. The Buffer can then be saved to a file or converted to a data Blob.
I have removed streaming and simply loaded the image into memory. Once the image is in memory it can be manipulated for various tasks i.e. written to a file, or displayed in the app.
iOS screenshots had to be rewritten. I now save the image to a temp folder, load it into the apps memory, and then remove the temp image.
Reviewed By: jknoxville
Differential Revision: D16939901
fbshipit-source-id: 3e39a5aeda8d48829ac5a8ff912a98f110341c07
Summary: Use the new multi-platform update endpoint to indicate when new updates are available for Linux or Windows.
Reviewed By: danielbuechele
Differential Revision: D16939899
fbshipit-source-id: 11c1dc0d4fd19362a1163c613a7b7116c5edf996
Summary:
- Show all or show 5 LRU plugins
- Update when close/reopen app, collapse sidebar, or expand sidebar
Reviewed By: danielbuechele
Differential Revision: D16917950
fbshipit-source-id: 1e7edc86945162ea14e1cdaa89aa47d3defa4c7d
Summary:
- Add `show more` and `show less` button to expand and collapse
- The element to show depends on its usage rank from Flipper dashboard (manually copied)
Reviewed By: danielbuechele
Differential Revision: D16917952
fbshipit-source-id: fc37d5c640be33794694e302341fa08849b8f97f
Summary: The electron menu popup requires that the position be an integer. Somehow the y-position of the button in the title bar has been moved by half a pixel. Calling Math.floor on the returned values fixes this.
Reviewed By: passy
Differential Revision: D16936833
fbshipit-source-id: 6abb9add4288f1d64c051ba3e45519340ccbb56e
Summary: utils used by redblock and layout plugins were incorrectly checking node instead of childNode for listviews that have non-visible children
Reviewed By: nscoding
Differential Revision: D16897804
fbshipit-source-id: 8f62956c57568694db76030377552e43ce3a9216
Summary:
The test didn't run when the sample app was updated with an extra button, so that change snuck in and caused subsequent runs to fail.
The stacked diff makes sure it will run all the time.
Reviewed By: passy
Differential Revision: D16898015
fbshipit-source-id: 0fd9ce7eaef293465d87b283b3c9bfe1fba928e5
Summary: Updates the bump_version script to update the flipperkit version in Tutorial's Podfile.
Reviewed By: passy
Differential Revision: D16916433
fbshipit-source-id: dd5cf24fbbe4e9ca322178632613caebe178cc17
Summary:
This PR updates the installation instruction for Cocoapods 1.7+ as the previous installation instruction was broken for the latest Cocoapods version
Solves https://github.com/facebook/flipper/issues/478 and https://github.com/facebook/flipper/issues/495
## Changelog
- Updated the Documentation
- Updated the sample app
Pull Request resolved: https://github.com/facebook/flipper/pull/522
Test Plan:
- Travis CI
- Also tested locally by building sample app.
Reviewed By: jknoxville
Differential Revision: D16902023
Pulled By: priteshrnandgaonkar
fbshipit-source-id: 19cc01c842f93ab3565c302f8258ca88dbdecfb2