Summary:
Navigation plugin is a special cause that will remain connected and process messages directly even when disabled, this is to make sure the bookmarks feature keeps working even when the plugin is not enabled.
Changelog: [Sandy][Navigation] on Android, the currently active deeplink of the application will now be shown in the sidebar
Reviewed By: jknoxville
Differential Revision: D24890375
fbshipit-source-id: eb5e4141740e0436396cea5a7aae24337f2e903e
Summary:
This diff adds support for finding appPatterns (not sure how the feature is called) in the device, and auto completing on it.
Also improved the styling of bookmark sections.
This diff also adds support of showing a dialog in which params an be filled out if needed.
The behavior around optional arguments seems buggy, as in, no dialog will show up, but since I didn't want to change the logic around this unilaterally, left it as-is for now.
Updated the dialog to Ant so that the renderReactRoot utility could be used safely
Reviewed By: cekkaewnumchai
Differential Revision: D24889855
fbshipit-source-id: 6af264abec2e9e5b921ef7da6deb1d0021615e9e
Summary:
This diff adds support for the navigation plugin bookmarks to the appinspect tab.
Support for path discovery, and path params will be added in a next diff.
Features:
* click a bookmark and navigate to it
* sync bookmark state and uri with navigation plugin
* manually enter a path and navigate to it by using <ENTER>
Reviewed By: cekkaewnumchai
Differential Revision: D24620250
fbshipit-source-id: 14b393a5456b4afeef69444d2120c8f01686e602
Summary:
Converted the Navigation plugin to Sandy, and updated Locations bookmark accordingly.
This is a prerequisite step of supporting the bookmarkswidgetin the new AppInspect tab.
Updated LocationsButton accordingly, and overal simplified implementation a bit; locationsbutton now reuses the logic of the NavigationPlugin, rather than reimplemting it. This reduces code duplication and also makes sure the state between plugin and location button stays in sync.
Made sure that search providers are derived and cached rather than stored, again simplifying logic
That being said, the navigation plugin is buggy, but all these things failed before this diff as well:
* No events happening when using iOS, despite the plugin being enabled. But these seems to be a long time know issue, looks like it was never implemented
* Not sure if the parameterized bookmarks is working correctly
* screenshots not always happening at the right time (but fixed a race condition where the wrong bookmark might get updated)
* Locations button doesn't show up if the navigation plugin is supported but not enabled (will try to fix in next diff)
Would be great if bnelo12 could do some exploratory testing to verify what ought to be working, but currently isn't.
Reviewed By: cekkaewnumchai
Differential Revision: D24860757
fbshipit-source-id: e4b56072de8c42af2ada0f5bb022cb9f8c04bb47
Summary: expose `appName`, `appId` and `device` to Sandy plugins. Will be used in next diff to migrate navigation plugin
Reviewed By: cekkaewnumchai
Differential Revision: D24857253
fbshipit-source-id: 03ac3d376d5d1950bcf3d78386a65ce167b517e3
Summary:
devices not always being readily available is causes a lot of complication in the api,
figured to resolve devices first before construction clients,
since clients not attached to a device are shown uncategorized anyway, making them practically un-interactable.
For more background info, see following chat.
{F344388883}
This diff will make it possible to only expose a synchronous api in Sandy
n.b. didn't update Navigation plugin, as that is done in a next diff
Reviewed By: jknoxville
Differential Revision: D24858332
fbshipit-source-id: 8339f831fbbc9c219add56a199364fde67adafc7
Summary: It's easier to scan the same header value of multiple requests when it's in roughly the same place for each one.
Reviewed By: mweststrate
Differential Revision: D24885172
fbshipit-source-id: 7be02903d2f9f79c8ba618e57c74169392f6244b
Summary: Scripts now accept full version instead of only patch part of it.
Reviewed By: jknoxville
Differential Revision: D24782300
fbshipit-source-id: 1c454beb9640a5b38669fe39eab642245b0f0f91
Summary: Make sure that changelog is shown when using Sandy
Reviewed By: jknoxville
Differential Revision: D24832099
fbshipit-source-id: 6999dfcb55976104db476834446c13322f4b2402
Summary:
Inverted the condition of checking if Sandy is enabled, so by default it is enabled if user is part of the GK.
This will make it more frictionless for people joining the dogfooding group and increases the chances we receive feedback :)
Reviewed By: jknoxville
Differential Revision: D24830075
fbshipit-source-id: d20dacd9e6c2dd2387a94b8a972252f29d0dab0e
Summary:
* Removed Flow compilation step
* Removed all `flow` annotations
* Removed all FlowFixMe's
* Removed flow typings for Flipper
* Left flow transpilation (stripping) in babel, in case there is any external user using Flow in his plugin
* Left `eslint-plugin-flowtype` dependencies, as `eslint-config-fbjs` requires it
Reviewed By: passy
Differential Revision: D24755545
fbshipit-source-id: 9c0a7910657fd1cba88294e041bf2bfdf7b565bf
Summary: This removes the mocked bookmarks section (which is being reimplemented in D24620250), so that early adopter don't see a non-working piece of UI
Reviewed By: passy
Differential Revision: D24827181
fbshipit-source-id: 9759f069bdbcc1efe3f1ecb56954ee539bbca1f0
Summary: For RN Debugger an ugly hack is used that roars its head now again; to make sure that the embedded debugger state isn't lost when switching to a different plugin, the chrome devtools are rendered _outside_ the domNode where they should normally appeared, and made invisible rather than removed when becoming invisible. Since at this moment this is the only place where we apply the trick, figured for now to condone it, rather than making a neater abstraction out of it (or kiling it all together)
Reviewed By: passy
Differential Revision: D24786771
fbshipit-source-id: 726617899bc620fc8b9db677d9413b31d5ad7653
Summary:
allow-large-files
This diff introces the `NUX` element that can be wrapped around any other element to give a first-time usage hint.
Hint dismissal is stored by taking a hash of the hint contents, and scoped per plugin.
Users can reset the 'read' status in the settings page
Example usage:
```
<NUX
title="Use bookmarks to directly navigate to a location in the app."
placement="right">
<Input addonAfter={<SettingOutlined />} defaultValue="mysite" />
</NUX>
```
Reviewed By: nikoant
Differential Revision: D24622276
fbshipit-source-id: 0265634f9ab50c32214b74f033f59482cd986f23
Summary:
When creating the plugin overview (https://docs.google.com/spreadsheets/d/181jKpsUHO3q8I1G-bMcu-O7Hr3f4GCDVXKMVY2beOuQ/edit?usp=sharing) found some plugins with inactive points of contact
Per title, having no PoC entry makes it more clear there is none, rather than having an ex-employee in there that can't be reached
Reviewed By: nikoant
Differential Revision: D24783043
fbshipit-source-id: a852f87f42350476558bc9fc67cb3ad427268a2f
Summary: Encountered while debugging. Seems that the id was incorrect. This diff changes the id back to `"Example"`
Reviewed By: nikoant
Differential Revision: D24782578
fbshipit-source-id: ad1c6d6fe4962179ad609728c8641adc2063e929
Summary:
This quite often fails in CI. Adobe's fetch has some very sensible defaults
and will do exponential backoff and retry for up to a minute.
That should hopefully fix issues where we have to restart the whole build
just to fix one measly icon download.
Reviewed By: jknoxville
Differential Revision: D24649807
fbshipit-source-id: efbc9eb29e4b5a0f74b0b6ad6dea4aaf86391363
Summary:
Reported in [the Workplace group](https://fb.workplace.com/groups/flippersupport/permalink/1002324710248187/), the empty array and object in network plugin wasn't shown and left blank. This happened because data component checked for expandability and decided empty object is not expandable. Thus, it uses different path to render components.
This diff fixes that by rendering empty array and object as `[]` and `{}`
Reviewed By: jknoxville
Differential Revision: D24726219
fbshipit-source-id: 9b22e1011c39c363b73f759477f44f08520734a7
Summary:
Bumps [types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.14.2 to 14.14.6.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/configuring-github-dependabot-security-updates)
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/1645
Reviewed By: passy
Differential Revision: D24702589
Pulled By: cekkaewnumchai
fbshipit-source-id: 5f4c6cb0fed8681174aa4325ada03501da5f6241
Summary:
Bumps [npm-packlist](https://github.com/npm/npm-packlist) from 2.1.2 to 2.1.4.
<details>
<summary>Commits</summary>
<ul>
<li><a href="1f77b1b955"><code>1f77b1b</code></a> 2.1.4</li>
<li><a href="240ffb94a4"><code>240ffb9</code></a> push to git before npm</li>
<li><a href="9cb1dbf04a"><code>9cb1dbf</code></a> Strip slashes from package files list results</li>
<li><a href="3d1edd544e"><code>3d1edd5</code></a> 2.1.3</li>
<li><a href="abacc4099b"><code>abacc40</code></a> Maintain order in package.json files array globs</li>
<li>See full diff in <a href="https://github.com/npm/npm-packlist/compare/v2.1.2...v2.1.4">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/configuring-github-dependabot-security-updates)
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/1647
Reviewed By: passy
Differential Revision: D24702583
Pulled By: cekkaewnumchai
fbshipit-source-id: 413fc764345d8dfab722ae77e78d71c082e3a1da
Summary:
Bumps [types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) from 16.9.8 to 16.9.9.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/configuring-github-dependabot-security-updates)
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/1646
Reviewed By: passy
Differential Revision: D24702607
Pulled By: cekkaewnumchai
fbshipit-source-id: 175798a63ec3d6658a19b0c41524b5399ee446e2
Summary:
We've been using "booted" as a shortcut to select a device in `xcrun` but that will only refer to the *first* booted simulator. If you have multiple ones, that causes screenshots, videos and logs to always be pulled from the first.
Of course, this isn't documented anywhere, because Apple, but you can instead of `booted` pass in the "UDID" and refer to a specific device in all cases.
Reviewed By: nikoant
Differential Revision: D24627077
fbshipit-source-id: 2a52a8a17776746af4b3f6ca821dcce37bb0f7c2
Summary:
This diff makes the plugin manager and support form accessible from Sandy.
Actually converting them is TODO in T78698507 / T78698498
Reviewed By: cekkaewnumchai
Differential Revision: D24620558
fbshipit-source-id: c689d95b638b77ad504915a117e909cf0d88b841
Summary:
Make sure archived are displayed as such in the UI, and normal device functions aren't available:
* taking screenshots
* bookmarks
* metro device plugins
* disabling plugins
* disabled and unavailable plugins
* mobile builds
Also moved starting an emulator to the left rail, since it isn't a function related to the current selected thing
Reviewed By: cekkaewnumchai
Differential Revision: D24620247
fbshipit-source-id: f1f469e2fc5167fd90ccb35d583988873a9bc787
Summary:
This diffs adds support for the activeSheets mechanism in Sandy. It should be removed in the future (see T78696648) since open a dialog and keeping dialog state locally results in much more straight forward code, but supporting this for now makes sure that old flows are still supported.
With this change the plugin selection during a Flipper export for example wouldn't become visible
Reviewed By: cekkaewnumchai
Differential Revision: D24620074
fbshipit-source-id: f0558f5738e86a84a5cd0b9d574a3cfd0a3bf424
Summary: See test plan, if there is little space, 'tags' tended to overflow the search box. After this change the searchbox will grow were needed.
Reviewed By: cekkaewnumchai
Differential Revision: D24563826
fbshipit-source-id: 616173db7c080561ff51a76ab0e8938c58f87820
Summary: flipper-pkg is broken because of metro package name change. This change should fix it.
Reviewed By: priteshrnandgaonkar
Differential Revision: D24591217
fbshipit-source-id: 2036c43bc0c2bb052e56740a03dc248e7daa8cfc
Summary:
Bumps [console-feed](https://github.com/samdenty99/console-feed) from 3.1.8 to 3.1.10.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/samdenty99/console-feed/commits">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/configuring-github-dependabot-security-updates)
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/1627
Reviewed By: cekkaewnumchai
Differential Revision: D24590105
Pulled By: passy
fbshipit-source-id: 490dc7bec5f231fa3c689abfb00aea33bb27fe0e
Summary: Added the Metro buttons to AppInspect
Reviewed By: cekkaewnumchai
Differential Revision: D24544760
fbshipit-source-id: 1eb6face14a7950d654c95b1a8fca31b8efed99b
Summary: Added Sandy styling to `CaptureButtons`, and converted to hooks while at it
Reviewed By: cekkaewnumchai
Differential Revision: D24538953
fbshipit-source-id: cfb9a9b856ada40eb96b77d2e5e6ea780971d0ce
Summary: This blesses the `Layout` and `theme` components and exposes them from `flipper-plugin`, so that they can be used in (public) Sandy plugins. Also marked old abstractions as going to be deprecated.
Reviewed By: cekkaewnumchai
Differential Revision: D24503560
fbshipit-source-id: a8f384667b8f66e3b9f00771a123fe5c9d755eb3
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/1612
* Use the QPL-managed QPLCore and PigeonClient.
**Facebook:**
js-shared/qpl and js-shared/pigeon-client are maintained by QPL in xplat/js-shared. I've updated the Metro config and tsconfig to allow the packages to be imported without breaking the open-source version.
Reviewed By: passy
Differential Revision: D24358369
fbshipit-source-id: 7f13d6c99d8ca6ebcd0e66bf0e5f25069370cce7
Summary:
Split container had a convenient property `scrollable`, that automatically applies a Scroll container to the main content.
But I noticed it leads to bad design choices because it is so convenient. So sometimes scrolling would be unnecessarily in two directions because of this.
Or, since the scroll container wraps around the whole content, toolbars would scroll out of view. By forcing scrolling to be put explicitly in the component tree, we encourage plugin developers to think about where they actually want to have that scroll, and in which direction.
Also added options to use the Container padding properties on ScrollContainer, which is great since we can keep the scrollbars outside the padding, and apply it to the content only, to prevent an accidental mistake where people would put a scroll container in a padded container, that would put the scrollbar inside the padding.
Reviewed By: cekkaewnumchai
Differential Revision: D24502546
fbshipit-source-id: 524004a1c5f33a185f9b959251b72875dd623cb3
Summary:
So far we distinguished `Layout.Container` from `Layout.Vertical`, but they did almost exactly the same, so figured to unify them, so smaller API ftw :) Normal containers put children vertical, and if you want to use horizontal, use Layout.Horzontal
Also simplified code in Layout file a little bit.
Fixed issue I split container where the main container didn't go "underneath" the fixed container
Reviewed By: cekkaewnumchai
Differential Revision: D24502547
fbshipit-source-id: 517db3692749e670cda8f0cd7cb1c807df818b4d
Summary:
per title
In addition, this diff adds `startUnactivated` option to allow setting up `onSend` mock implementation.
Reviewed By: mweststrate
Differential Revision: D24477989
fbshipit-source-id: f913574ebacdd436e8511baa43744249a014e90b
Summary:
This stack tries to migrate notification system to Sandy.
This diff contains on the view; other functionalities aren't working. Also, some of the views will be implemented as functionalities are added.
Reviewed By: mweststrate
Differential Revision: D24390370
fbshipit-source-id: 8e11a01d9462934ff1fadf411e7e8f57ca7ef078
Summary: Actually, things only start to break in 132.
Reviewed By: mweststrate
Differential Revision: D24480958
fbshipit-source-id: c7003459647d06cbcdf639505fa0779183923a3b