Commit Graph

1635 Commits

Author SHA1 Message Date
Pascal Hartig
09c615ce6a Make using require() a warning
Summary: Per title. Let's be more consistent, especially for plugins where authors may not know which one to use.

Reviewed By: jknoxville

Differential Revision: D16340189

fbshipit-source-id: ffe49e509f744279e32fc9fc3f1d59efc1328d80
2019-07-18 12:56:08 -07:00
John Knox
f0be2c5b2e Remove unused import
Summary: This isn't necessary

Reviewed By: passy

Differential Revision: D16358413

fbshipit-source-id: b4bc0af3d671ed9be080eae24f69054cb2623ba4
2019-07-18 11:14:53 -07:00
Pascal Hartig
10559a188f Make yarn start twice as fast
Summary:
Compilation is a mixture of I/O and CPU work, so there's some good optimisation potential even on a single thread by running the promises concurrently. The downside is that the output is a bit garbled, but it's quite a bit faster for me.

To test this, I applied this diff so I could just `time yarn start` for an entire run.

```
 diff --git a/xplat/sonar/src/init.js b/xplat/sonar/src/init.js
 --- a/xplat/sonar/src/init.js
+++ b/xplat/sonar/src/init.js
@@ -80,4 +80,5 @@
   dispatcher(store, logger);
   // make init function callable from outside
   window.Flipper.init = init;
+  window.close();
 });
```

## Before

**Cold Start**
```
696.89user 93.21system 4:21.44elapsed 302%CPU (0avgtext+0avgdata 1111448maxresident)k
1416inputs+372824outputs (3major+28155897minor)pagefaults 0swaps
```

**Hot Start**
```
6.87user 1.62system 0:17.32elapsed 49%CPU (0avgtext+0avgdata 249264maxresident)k
216inputs+182912outputs (0major+251426minor)pagefaults 0swaps
```

## After

**Cold Start**

```
736.86user 95.47system 1:53.13elapsed 735%CPU (0avgtext+0avgdata 970616maxresident)k
42864inputs+356776outputs (42major+25299531minor)pagefaults 0swaps
```

**Hot Start**

```
6.85user 1.60system 0:15.93elapsed 53%CPU (0avgtext+0avgdata 269420maxresident)k
2592inputs+197904outputs (0major+260099minor)pagefaults 0swaps
```

## Summary

It's beneficial in both cases, but the wall clock time for cold start goes from *4:21.44* to *1:53.13* for me (mind that this is a single sample). This is a 2.3x speed-up!

Reviewed By: jknoxville

Differential Revision: D16359215

fbshipit-source-id: 62257ec3bdefbf98356f5ac9418c4906f7cb4b1b
2019-07-18 10:44:50 -07:00
Pascal Hartig
453b04a008 Remove duplicate import
Summary: Drive-by change. There's a renamed import already in there which is clearer.

Reviewed By: bnelo12

Differential Revision: D16332879

fbshipit-source-id: ac8e829a3533df2991a7f8e5eab073020d6df411
2019-07-18 10:38:28 -07:00
Benjamin Elo
df725de674 Added NavigationInfoBox component
Summary:
Here I added an info box to display the info of the incoming navigation events.

The component is currently missing interaction (navigating to uris and favoriting), but I will add that in my next diff.

While I was here, I modified the component file structure a tiny bit to make importing components easier.

Reviewed By: jknoxville

Differential Revision: D16357204

fbshipit-source-id: 70b137e052181559a2fda02b091a71e54cb1ade0
2019-07-18 08:15:03 -07:00
John Knox
b4585ef72c Add types to reduxDevToolsConfig
Summary: Getting rid of a flowfixme, part of T47375728

Reviewed By: passy

Differential Revision: D16336917

fbshipit-source-id: 163734796b72ba2c8971f27ce213baf7ca3f23a1
2019-07-18 06:30:02 -07:00
dependabot[bot]
0261f17785 Bump lodash from 4.17.5 to 4.17.14 in /static (#493)
Summary:
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.5 to 4.17.14.
<details>
<summary>Commits</summary>

- [`be87d30`](be87d30394) Bump to v4.17.14.
- [`a6fe6b1`](a6fe6b1e17) Rebuild lodash and docs.
- [`e371828`](e37182845f) Bump to v4.17.13.
- [`357e899`](357e899e68) Rebuild lodash and docs.
- [`fd9a062`](fd9a062d57) Bump to v4.17.12.
- [`e77d681`](e77d68121f) Rebuild lodash and docs.
- [`629d186`](629d186579) Update OpenJS references.
- [`2406eac`](2406eac542) Fix minified build.
- [`17a34bc`](17a34bc585) Fix test bootstrap for core build.
- [`53838a3`](53838a38f8) Fix tests in older browsers.
- Additional commits viewable in [compare view](https://github.com/lodash/lodash/compare/4.17.5...4.17.14)
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=lodash&package-manager=npm_and_yarn&previous-version=4.17.5&new-version=4.17.14)](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/493

Reviewed By: jknoxville

Differential Revision: D16323535

Pulled By: passy

fbshipit-source-id: 9511b4050306a872295a7053f465ae46b9c5fa8a
2019-07-18 05:28:46 -07:00
dependabot[bot]
ad4d281211 Bump lodash from 4.17.10 to 4.17.14 (#492)
Summary:
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.10 to 4.17.14.
<details>
<summary>Commits</summary>

- [`be87d30`](be87d30394) Bump to v4.17.14.
- [`a6fe6b1`](a6fe6b1e17) Rebuild lodash and docs.
- [`e371828`](e37182845f) Bump to v4.17.13.
- [`357e899`](357e899e68) Rebuild lodash and docs.
- [`fd9a062`](fd9a062d57) Bump to v4.17.12.
- [`e77d681`](e77d68121f) Rebuild lodash and docs.
- [`629d186`](629d186579) Update OpenJS references.
- [`2406eac`](2406eac542) Fix minified build.
- [`17a34bc`](17a34bc585) Fix test bootstrap for core build.
- [`53838a3`](53838a38f8) Fix tests in older browsers.
- Additional commits viewable in [compare view](https://github.com/lodash/lodash/compare/4.17.10...4.17.14)
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=lodash&package-manager=npm_and_yarn&previous-version=4.17.10&new-version=4.17.14)](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/492

Reviewed By: jknoxville

Differential Revision: D16323560

Pulled By: passy

fbshipit-source-id: 1c13e752ea9ec3c73be3d086acc6650c06773636
2019-07-18 05:28:45 -07:00
John Knox
5288c4ac93 Rename id in CLEAR_PLUGIN_STATE event
Summary:
There's been a bug here where the id was treated as a pluginId.
Renaming to make it clear.

Reviewed By: passy

Differential Revision: D16338884

fbshipit-source-id: 42c6c92653811d88cd37ebf4834346b1f0bb2c2a
2019-07-18 05:28:45 -07:00
John Knox
286f0d7acf Fix persistedState bug
Summary:
Persisted state was not being cleared across client disconnects.
This fixes that.

Reviewed By: passy

Differential Revision: D16338524

fbshipit-source-id: ec51ec3bd999a388a0e8687f08841970872087ec
2019-07-18 05:28:45 -07:00
Benjamin Elo
beb656c84e Added Nav Plugin tests
Summary:
Here I added two tests to test the persisted state reducer in the navigation pliugin.

I uncovered that my state reducer is not pure, as it calls the Date constructor, but I will fix this in a future update by passing the date recorded on the Android device when the nav event occurs and sending that via the socket connection.

For now I have modified the state reducer to take a date as part of the payload on a nav_event, or if none exists record the date as before. Also, if a page has no uri, but we want to record a nav event, I send null uri from the Android side. This doesn't send the uri as null to flipper; the uri object property simply doesn't exist. In this case I explicitly cast the undefined value for uri to null.

Reviewed By: jknoxville

Differential Revision: D16330958

fbshipit-source-id: fe338ea3a244df6ef33356bc7fdef8da9291dc68
2019-07-18 02:54:34 -07:00
Pascal Hartig
a6fb1a9d86 Add prefetcher mercurial setup code
Summary:
Logic for installing an uninstalling a custom `post-update` mercurial hook, invoking the script introduced in the previous diff.

This is to gather some early data before rolling this integration out more broadly, i.e. through the mercurial distribution.

Reviewed By: jknoxville

Differential Revision: D16283081

fbshipit-source-id: e8610509e5f105a9b717a881aa327bb04f9a2f4f
2019-07-18 02:48:28 -07:00
Sidd Srinivasan
4dbf51f28c switch for to htmlFor in <Select>
Summary: Was getting error that the label for Select should be using htmlFor not for. found that when wrapping with JSX - changing this inside select fixes this errorlog.

Reviewed By: passy

Differential Revision: D16264103

fbshipit-source-id: 6a19d723a8356403ba4a169e0b160fed7e137670
2019-07-17 07:57:32 -07:00
John Knox
934bfa97e4 Fix type in test
Summary: fail isn't a thing

Reviewed By: passy

Differential Revision: D16335797

fbshipit-source-id: c2f07b722424f540e6eb1a4cd423397ec1fe545c
2019-07-17 07:19:22 -07:00
John Knox
939513e7a6 Add dateformat flow stub
Summary: `flow-typed create-stub dateformat`

Reviewed By: passy

Differential Revision: D16334489

fbshipit-source-id: d72b89a6578913bb799f93038455e16e386a7422
2019-07-17 07:19:22 -07:00
Pascal Hartig
147f120a42 Fix fb-stubs typo
Summary: Per title.

Reviewed By: bnelo12

Differential Revision: D16332419

fbshipit-source-id: cbe3354561ab2251064f76c01ec1660aef59a7bb
2019-07-17 06:52:01 -07:00
John Knox
7d3f05dae3 Re-enable flow module checking
Summary:
Setting the module extension to .tsx overrode the defaults, meaning .js files were no longer being checked when imported.

This adds the defaults back to the extensions to be checked, including `.js`
It does seem to cause errors importing `.tsx` at the moment, but there aren't many so I've just $FlowFixMe'd them for now.

https://flow.org/en/docs/config/options/#toc-module-file-ext-string

Reviewed By: passy

Differential Revision: D16333800

fbshipit-source-id: 7bea92c038048234b4f634704f71c15d79ab3c63
2019-07-17 06:40:09 -07:00
Pascal Hartig
37f8caf714 Replace commonjs import
Summary: Feels out of place. More drive-by stuff. I'll set up a linter for this later.

Reviewed By: bnelo12

Differential Revision: D16332869

fbshipit-source-id: 0fb94eabbeeca039f8704df288e26babf34a7e34
2019-07-17 06:29:23 -07:00
Mihaela Ogrezeanu
11198e003e Display data model in side panel
Summary:
This displays the data models passed to the Sections in the side panel when a data node is clicked. This does not change the collapse behaviour when a Section node is clicked.
To make it easier to associate a section with its changesets, appended the global indexes a Section is responsible for to the node label.

Reviewed By: passy

Differential Revision: D16283820

fbshipit-source-id: f1149f47dff448de05d919f7f8d16a2aba53bbb0
2019-07-17 06:29:22 -07:00
Benjamin Elo
a9e90aa9b2 Receive navigation events and persist them
Summary: After setting up the navigation event emitter on the android side, we must now receive them on the client side and persist them in the Redux store.

Reviewed By: passy

Differential Revision: D16280944

fbshipit-source-id: 3dc4c5c6add41388469c801700974eb0ccd9a56b
2019-07-17 03:00:50 -07:00
Benjamin Elo
ce93ecfcca Speed up Redux dev tools by disabling log serialization
Summary: Serializing the logs of the devices within Redux dev tools was causing Electron to crash due to it being out of memory. We can sanitize the state serialization by rewriting the device logs to <<DEVICE_LOGS>>. This fixes the issue and causes Electron to use less memory and CPU while in devlopment mode.

Reviewed By: jknoxville

Differential Revision: D16282673

fbshipit-source-id: abee6d167b23f24647e45f039a77ab60576ab3e6
2019-07-17 02:50:13 -07:00
Mihaela Ogrezeanu
9c96545bbd Add Flipper plugin to Litho's sample apps
Summary: Add plugin to sample app.

Reviewed By: marco-cova

Differential Revision: D16181876

fbshipit-source-id: fe60fa9f593c16cb24d6901c98b6392a05c6d837
2019-07-16 10:57:24 -07:00
Sidd Srinivasan
aff991b313 Render Webview
Summary: When Trace has been uploaded, load it inside a webview in Flipper.

Reviewed By: habond

Differential Revision: D16185763

fbshipit-source-id: 3217211f1d5035fc16d733ef48db44d8f8d9d360
2019-07-16 09:05:11 -07:00
Pascal Hartig
3af9e889f4 Enable cocoapods caching (#491)
Summary:
Enable caching for cocoapods.

This was my attempt to fix the test which priteshrnandgaonkar did with https://github.com/facebook/flipper/issues/490, but might still be useful.
Pull Request resolved: https://github.com/facebook/flipper/pull/491

Reviewed By: priteshrnandgaonkar

Differential Revision: D16280689

Pulled By: passy

fbshipit-source-id: 5da72a7b75d9f49afa8f6c889074bf31e9d58dcd
2019-07-16 08:59:00 -07:00
John Knox
782c23393a Back out "[flipper] disconnect client instead of removing it"
Summary:
Original commit changeset: 650ef1344b8b

Backing this out until we can come up with a better way to do it.

The change was introduced so that when a device disconnects / crashes, we don't lose all plugin state, and you can still see what was on screen before the crash..

However, there are some problems with this solution, which get quite complicated. Putting them here for future reference:
* Closing an app results in the plugins staying there, and there's no way to tell it's not actually connected.
* If the app reconnects, the JS plugin doesn't get re-initialized. Even though the client plugin has been.

Reviewed By: bnelo12

Differential Revision: D16280931

fbshipit-source-id: 48e09b876e631aa87372054e706cdb9a2b3e2eb7
2019-07-16 08:39:05 -07:00
John Knox
a097e673d8 Back out "[flipper] fix reconnecting clients"
Summary:
Original commit changeset: 1d0e6ce17c89

Backing this out until we can come up with a better way to do it.

The change was introduced so that when a device disconnects / crashes, we don't lose all plugin state, and you can still see what was on screen before the crash..

However, there are some problems with this solution, which get quite complicated. Putting them here for future reference:
* Closing an app results in the plugins staying there, and there's no way to tell it's not actually connected.
* If the app reconnects, the JS plugin doesn't get re-initialized. Even though the client plugin has been.

Reviewed By: bnelo12

Differential Revision: D16280932

fbshipit-source-id: 92585cdd0dace2012924df4106327a1e21ab9f9b
2019-07-16 08:39:05 -07:00
Mihaela Ogrezeanu
42c887e634 Add more fields on the Tree nodes
Summary:
Add fields for colouring the changeset operation that was performed on a node in the tree.
Changesets are not ordered by type of operation, they need to be displayed in order

Reviewed By: danielbuechele

Differential Revision: D16121158

fbshipit-source-id: 411557170b16ada9d1d72fb617b1aaf583e0f0e7
2019-07-16 07:33:12 -07:00
Pritesh Nandgaonkar
1047ee6d48 Fix broken travis test (#490)
Summary:
The travis test used to terminate after 10 minutes of `pod install --silent` being unresponsive, added `travis_wait` to circumvent it.

## Changelog

Fixed the broken travis test
Pull Request resolved: https://github.com/facebook/flipper/pull/490

Test Plan: All tests are green on this PR.

Reviewed By: jknoxville

Differential Revision: D16261250

Pulled By: priteshrnandgaonkar

fbshipit-source-id: 323c5decb66232830d692b784f7cf5f9cbf67a01
2019-07-15 08:45:04 -07:00
John Knox
9a97b3b45b Add 1h tolerance to ssl certs
Summary:
This changes the start date of all generated certificates to be 1h in the past.

Why? To allow for clock skew, and allow clock manipulation in tests.

To do this, I had to switch from `openssl x509 req`, to `openssl ca` for generating them, because it has the startdate parameter.

This variant is a bit more complicated to use, so I've added an openssl.conf and some extra files.

I also changed the org from Sonar to Flipper because it now needs to match the CSRs coming from the mobile apps, and they use Flipper.

Reviewed By: passy

Differential Revision: D16223722

fbshipit-source-id: bdbd61bce1bc1b54d7b0b3cc6741675aa68d2cf6
2019-07-15 04:33:52 -07:00
Pritesh Nandgaonkar
ba95e73a8d Show status updates while exporting
Summary: Adds a feature to display status update, while exporting Flipper trace. This will make user aware of the steps which are being executed to export flipper trace. This diff also logs the status update, to better support the issue posted by the user regarding the Flipper trace.

Reviewed By: jknoxville

Differential Revision: D16203810

fbshipit-source-id: 8f0bdc3836fec6dd79f2ca9827822d13f6cfd8bd
2019-07-15 04:01:45 -07:00
Pritesh Nandgaonkar
7f2709e1a5 Add close button to the export share sheet
Summary: Adds close button to the dialog box which appears while exporting a flipper trace. To implement this I had to first see what is the bottle neck of the export process. The major bottle neck turned out to be the serialization step. So to make the export process interruptible, I have put in a call `await idler.idle()` which resolves when the main thread is idle. I have also added the tests for the idler.

Reviewed By: passy

Differential Revision: D16183582

fbshipit-source-id: 4ec0c985e216fd9d41e91cdcd8b4cca66d2cb04d
2019-07-15 04:01:44 -07:00
Pascal Hartig
c63e6cffeb Flipper Bump: v0.23.2-SNAPSHOT
Summary: Back to snapshots.

Reviewed By: jknoxville

Differential Revision: D16221049

fbshipit-source-id: f3a2d3c7f8d117269da2d37b7b9b669b33652f09
2019-07-15 03:12:24 -07:00
Pascal Hartig
e45e174dba Flipper Release: v0.23.1
Summary:
- New Litho Sections APIs.
- New version of Metro.
- Hardened eslint rules.
- Flipper Headless now offers a `--no-plugins` build mode to speed up compilation.

Reviewed By: jknoxville

Differential Revision: D16221050

fbshipit-source-id: 5eb7a0e8caaf11188ece94a149003daa36eb0a30
2019-07-15 03:12:24 -07:00
Pritesh Nandgaonkar
aebca6bb57 Update OpenSSL dependency
Summary: Updated the OpenSSL dependency and released the new versions of Folly and RSocket.

Reviewed By: jknoxville

Differential Revision: D16222388

fbshipit-source-id: e894650a8c3ac764bc489e843e9a3ccf33688659
2019-07-12 09:35:52 -07:00
Daniel Büchele
0a42558344 TitleBar
Summary: Let's migrate one file to TS, this helps us to test our tooling and make sure, everything works as expected.

Reviewed By: bnelo12

Differential Revision: D16149514

fbshipit-source-id: 05055a1830f187c6812baa661e109ea67995253b
2019-07-12 04:24:33 -07:00
Mihaela Ogrezeanu
474cc1289e Add data model to tree and colour changeset operation
Summary:
This colours data model nodes in the tree to show how they were part of the current changeset: whether the data model caused an insert, update, remove etc.
This also adds phantom Section nodes for Sections that were completely removed from the tree; this is helpful for debugging cases where a section's key changes without intention, causing items to be completely removed and inserted.

Reviewed By: topwu

Differential Revision: D16165767

fbshipit-source-id: a011666dce33e4d757fb415e71ba163aa334f6e6
2019-07-11 09:56:18 -07:00
Mihaela Ogrezeanu
0d4e2e6eb3 Add changeset info in side panel
Summary: the side panel displays information with the changesets that were applied for each section

Reviewed By: adityasharat

Differential Revision: D16131069

fbshipit-source-id: d03547148e483e196600191291e58a13acf505c3
2019-07-11 09:56:17 -07:00
John Knox
c69f3e3103 Disallow throwing non-error objects
Summary: It's annoying to have to treat things like they might not be errors, inside catch blocks. This should stop that.

Reviewed By: passy

Differential Revision: D16201509

fbshipit-source-id: b028ea3a1e0766763fcf2659d80456f4dd281c40
2019-07-11 08:57:54 -07:00
Benjamin Elo
9f1f34bd99 Added search bar to navigation plugin
Summary:
Here I've started work on a search bar for the top of my plugin. Currently it supports navigation in a device by typing in an app uri and pressing the enter key or by pressing the send icon.

More features will be added as other components for this plugin are added. I have added a function stub for the bookmark button for now and the drop down icon is purely cosmetic at the moment.

Reviewed By: jknoxville

Differential Revision: D16183223

fbshipit-source-id: 0313d8c6e3a967c9400b9e9d3f24960e6a021a8c
2019-07-11 07:48:47 -07:00
John Knox
df6c485b6b Fix test failure message when headless out isn't json
Summary: Jest expects any promise rejections to be errors, not strings.

Reviewed By: passy

Differential Revision: D16200876

fbshipit-source-id: 7ebb6c63262b3c13ec677b1e72010146aa5b55e8
2019-07-11 05:54:01 -07:00
Benjamin Elo
222676eb44 Moved navigation inside of Android Device
Summary:
It makes more sense for the navigation ability to be inside the Device's class instead of scattered throughout the rest of the app.

I have moved the Android navigation logic inside the AndroidDevice and added a function stub to BaseDevice. I also encoded the URI as an initial safeguard to injection attacks via adb, but will remove this altogether once I enable navigation through the socket connection.

Reviewed By: jknoxville

Differential Revision: D16182374

fbshipit-source-id: be3c6d1cfcbe293583edada1f77c023965dfd12c
2019-07-10 12:13:16 -07:00
Daniel Büchele
ee5091c742 and so it begins...
Summary: This is the basic setup for TypeScript support in Flipper and makes sure our build system can handle `.ts(x)` files. Support for flow is still fully working, so we can land this and continue with the TS migration.

Reviewed By: jknoxville

Differential Revision: D15920150

fbshipit-source-id: d5a7f22fe824d1c1904105bbf738767d735cc0f1
2019-07-10 12:13:16 -07:00
Roman Gorbunov
cf1347d2e3 Fixed bug with flipper live editing
Summary:
Fixed bug with live editing
Previously if the meaining of the value was changed in flipper you receive back same value as it was
Now you see correct changed value

Reviewed By: priteshrnandgaonkar

Differential Revision: D16162141

fbshipit-source-id: 1a68ea64603171e952382c5093470d2cc12f7bbe
2019-07-10 12:13:15 -07:00
Mihaela Ogrezeanu
169836fc2f Create SectionTree in plugin
Summary: Create Sections hierarchy from data received when a changeset is applied and send it to the plugin to render it

Reviewed By: adityasharat

Differential Revision: D16120480

fbshipit-source-id: 30b824d8d6e65b537c3e98b7ee3438055f6f1ec2
2019-07-10 12:13:15 -07:00
Mihaela Ogrezeanu
a952f988d6 Generate and send bogus data to changeset plugin
Summary:
This hooks up the listeners that send events from the SectionTree to the desktop plugin. gradle build will fail until I release a new Litho version with D16120818
ChangesetDebug receives events on every valid changeset, it will parse the data into Flipper objects and pass it to the desktop client to render it.
Right now this just sends an event with empty data

Reviewed By: adityasharat

Differential Revision: D16121473

fbshipit-source-id: eeef92cea7dae836861d417ed6a00fcb11901e78
2019-07-10 12:13:15 -07:00
John Knox
5371d5bdce Fix empty headless output bug
Summary:
The SIGINT handler in headless was being squashed by the one that `tmp` adds. This is a bug introduced in its latest release: https://github.com/raszi/node-tmp/issues/192

Downgrading version to fix this for now. There's a PR to fix it, we can upgrade when it's shipped.

Reviewed By: passy

Differential Revision: D16163208

fbshipit-source-id: 058ec1094dd2e5e5474f7ac36be376bae0431f0c
2019-07-10 12:13:15 -07:00
Pascal Hartig
48db46def2 Fix lint
Summary: This one snuck in while rebasing my new rules onto master.

Reviewed By: bnelo12

Differential Revision: D16180472

fbshipit-source-id: b715c218ff1886c1901c7730a6b8dac67beb3968
2019-07-10 12:13:14 -07:00
Pascal Hartig
e831743132 Harden lint rules
Summary: Taking another stab at adding some lint rules to make it harder to shoot yourself in the foot. Hopefully nothing too controversial. Preferring spread and rest should lead is more readable and there's no downside when using ES6. The "useless" rules are just things like renaming imports to the original name which should only happen during refactors.

Reviewed By: jknoxville

Differential Revision: D16180453

fbshipit-source-id: 1cf6851b7726c0aee953ec7cf7dd6fa0aca32253
2019-07-10 12:06:39 -07:00
Roman Gorbunov
8b2a886c19 Fixed a bug with accessibility button
Summary:
Fixed a bug with accessibility button
Now it's pressable

Reviewed By: kevin0571

Differential Revision: D16165294

fbshipit-source-id: 9c6ea464f2faa149aa78c0534c51a0f58bd249ad
2019-07-10 11:40:03 -07:00
Edward Pastuszenski
4f4d9fa76e Omit invisible columns from horizontallyScrollable ManagedTables' width
Summary: Currently, `horizontallyScrollable` logic includes even invisible columns in the width calculation for `horizontallyScrollable` `ManagedTable`s, resulting in large empty spaces when many columns are invisible.

Reviewed By: danielbuechele

Differential Revision: D16139713

fbshipit-source-id: f653121845fbeac8a29bdb67ad0309add28e526a
2019-07-10 03:28:26 -07:00