Commit Graph

3309 Commits

Author SHA1 Message Date
Michel Weststrate
b9c3d99f44 Stop connecting disabled background plugins
Summary:
Background for this diff: https://fb.quip.com/KqEfAlKYlgme

Some plugins don't respect that stuff (livefeed and graphql), but for others it seems to work fine.

This is just a PoC, there are some present bugs concerning the combination of selecting and bg plugins

Questions to investigate:

- [x] make sure that LiveFeed and GraphQL disconnect properly. There might be more plugins that need that
- [x] verifiy that we don't loose one of the original goals of background plugins, e.g. QPL collecting and sending data from device start. Does this still work as intended after this change?
- [x] how can we observe / measure improvements? Are dev builds more responsive after this? Is the layout inspector smoother for example because no QPL plugins are interweaved?
- [x] how is forward and backward compatibility?
   - If Flipper is updated, but device not: No change I think, as getBackgroundPlugins() will return an empty set, and background plugins are initiated as usual, so old behavior
  - If device is updated, but Flipper not, background plugins won't be started until they are selected. This is a degradation, but hopefully explainable.
- [x] Verify QPL buffer is not unbounded
- [x] Share architecutre changes with team

For Graphql updates: D20943455

Added runtime stats to monitor network traffic (sadly had to redo that since scuba couldn't handle the data format used at first, so probably will hold of landing this diff a week to make sure we can see some effects)

Follow up work:

[x] wait until we released the stat tracking before we release this, to be able to measure the effect?
[x] make sure graphql fix lands
[ ] use side effects abstraction
[ ] fix other background plugins (android only) or fix it in a generic way:

{F234394286}

Changelog: Background plugins will no longer receive a Flipper connection if they are disabled. This should significantly reduce the overall load of Flipper both on the device and desktop when unused plugins are disabled used, which could otherwise generate 10MB/s of network traffic certain scenarios. All plugins *should* be able to handle to this gracefully, but since this is quite a fundamental change, reach out to the Flipper team when in doubt!

Reviewed By: jknoxville

Differential Revision: D20942453

fbshipit-source-id: b699199cb95c1b3e4c36e026b6dfaee7d1652e1f
2020-04-27 09:46:13 -07:00
greenkeeper[bot]
115013c1bb Update tmp in group main to the latest version � (#1053)
Summary:
***
☝️ **Important announcement:** Greenkeeper will be saying goodbye 👋 and passing the torch to Snyk on June 3rd, 2020! [Find out how to migrate to Snyk and more at greenkeeper.io](https://greenkeeper.io)
***
## The devDependency [tmp](https://github.com/raszi/node-tmp) was updated from `0.0.33` to `0.2.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:** [raszi](https://www.npmjs.com/~raszi)
**License:** MIT

[Find out more about this release](https://github.com/raszi/node-tmp).

 ---

<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/1053

Reviewed By: mweststrate

Differential Revision: D21256161

Pulled By: passy

fbshipit-source-id: 5dd695646eb7c562884bdac7884c96cd063a7470
2020-04-27 08:42:44 -07:00
Radek Czemerys
53b9598c01 Add description in package.json for react-native-flipper (#1055)
Summary:
There's `TODO` in the description for `react-native-flipper` so this should be updated

## Changelog

Internal change.
Pull Request resolved: https://github.com/facebook/flipper/pull/1055

Test Plan: No test plan required.

Reviewed By: mweststrate

Differential Revision: D21256140

Pulled By: passy

fbshipit-source-id: 6b07e38b80ac395481270b05fca6823ec6559da5
2020-04-27 08:38:50 -07:00
John Knox
397fb7413f Fix duplicate message issue in Websocket impl
Summary: Missed an else on the if statement, causing it to duplicate websocket messages.

Reviewed By: passy

Differential Revision: D21256794

fbshipit-source-id: ea4abb88723a052a3490b930420ee6b005447c81
2020-04-27 08:27:07 -07:00
Pascal Hartig
c2c3d21e7f Create stale.yml (#1038)
Summary:
Setting up a [stale bot](https://github.com/probot/stale) to help us stay on top of all our issues.
Pull Request resolved: https://github.com/facebook/flipper/pull/1038

Test Plan: testinprod

Reviewed By: jknoxville

Differential Revision: D21228297

Pulled By: mweststrate

fbshipit-source-id: 0668eb3de9e888799a7904305dccf1862bbca759
2020-04-27 07:43:52 -07:00
Radek Czemerys
3cc0ca3130 Add missing TS type in DetailsSidebar (#1062)
Summary:
Adds missing TS for Store type in `react-redux` `connect`, same as in other components.

## Changelog

Internal change: Typescript typings improved.
Pull Request resolved: https://github.com/facebook/flipper/pull/1062

Test Plan: Try to compile/do a type check.

Reviewed By: jknoxville

Differential Revision: D21256256

Pulled By: passy

fbshipit-source-id: 55dea7d40a6874e924983806a298301aeffa772f
2020-04-27 07:29:56 -07:00
Anton Nikolaev
773b0b7f67 Fix tests failing on Windows (#1052)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/1052

Fixed tests failing on Windows because jest auto-mocks works differently there

Reviewed By: passy

Differential Revision: D21237618

fbshipit-source-id: 31c7e92b7f8ae84c1e65fd37428204452b3f1b00
2020-04-27 07:18:12 -07:00
John Knox
fcb89b94b5 Fix wss connection initialisation race
Summary:
The websocket server has a race condition where it only starts listening for messages after the client has finished setting up.
This lets it queue up messages if the client isn't ready.

Reviewed By: passy

Differential Revision: D21256218

fbshipit-source-id: fa8481e11225cc473f03f3afbf4d0c50a48cec91
2020-04-27 07:14:46 -07:00
greenkeeper[bot]
5c00cfe542 Update @types/recharts in group plugins to the latest version � (#1046)
Summary:
The versions in the plugin are fixed to a particular version, so we ignore them in greenkeeper to avoid spam.

***
{emoji:261d} **Important announcement:** Greenkeeper will be saying goodbye {emoji:1f44b} and passing the torch to Snyk on June 3rd, 2020! [Find out how to migrate to Snyk and more at greenkeeper.io](https://greenkeeper.io)
***
## The devDependency [types/recharts](https://github.com/DefinitelyTyped/DefinitelyTyped) was updated from `1.8.8` to `1.8.10`.
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:** [types](https://www.npmjs.com/~types)
**License:** MIT

[Find out more about this release](https://github.com/DefinitelyTyped/DefinitelyTyped).

 ---

<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/1046

Reviewed By: mweststrate

Differential Revision: D21226349

Pulled By: passy

fbshipit-source-id: 01dd268cb461a69d19053ca45818b6ac6277b906
2020-04-27 06:05:04 -07:00
John Knox
5f1a0548f5 Migrate website to Docusaurus 2
Summary:
Docusaurus 2 is quite a lot more powerful than docu 1 it turns out.
This should convert the website fully.

* [done] Go through migration guide https://v2.docusaurus.io/docs/migrating-from-v1-to-v2
* [done] Convert landing page html
* [done] Convert all images to img tags
* [done] Convert all .md files to .mdx
* [done] Make sure ui-doc generation and including still works
* [done] Scan every page visually for sanity check
* [done] Make sure footer still works
* [done] Make sure search still works
* [done] Change all links/ to links/index
* [done] Change all links.md to links
* [done] Add some custom css to make the navbar look like the old one and darken the footer.

Reviewed By: passy

Differential Revision: D21158717

fbshipit-source-id: 5f45b711b1b6fd5ece4c5c15c55635c7ebbfb568
2020-04-27 04:05:01 -07:00
Roi Becker
297ca61c49 Logview plugin - desktop
Summary: Still requires some work (need to persist data and find a way to open IntelliJ back from the plugin), but good enough to start with.

Differential Revision: D21203979

fbshipit-source-id: 186ff541a93942680dd35b5b76b101c00183360f
2020-04-26 09:26:47 -07:00
Pritesh Nandgaonkar
511156fec6 Solve the tooltip bug
Summary:
There was a bug where tooltip was even showed after there were no validation errors.
This bug exists everywhere where the tooltip is used.
See the video:

{F235201264}

The reason was the we were not invalidating the react hooks.

Reviewed By: jknoxville

Differential Revision: D21229754

fbshipit-source-id: 50b438bd78e8adb5b17c6d0da15b2f34d7ae2597
2020-04-24 13:32:40 -07:00
Michel Weststrate
7ba57dae33 Expose flipper as peer-, not full dependency
Summary: Flipper should never be a normal dependency of a flipper plugin. And since this an example, lets do it properly :)

Reviewed By: jknoxville, passy

Differential Revision: D21228427

fbshipit-source-id: 72166c8706a213e2cb649f1201984dd722b63d2f
2020-04-24 10:44:49 -07:00
Michel Weststrate
df88bbb7db Track 'reload' usage
Summary: Keep track of how often the 'reload' command is used

Reviewed By: passy

Differential Revision: D21227851

fbshipit-source-id: 112781024be16e411e93cf2403f95b2f3134d971
2020-04-24 10:44:48 -07:00
Michel Weststrate
d142369e9d Fix initial main menu not loading
Summary: Fixes a regression (D20679687) of the main menu not loading immediately after application start

Reviewed By: passy, priteshrnandgaonkar

Differential Revision: D21227817

fbshipit-source-id: 37e4ddfcb73de3eac04d6162a3e028864d3e9e7f
2020-04-24 10:44:48 -07:00
Pascal Hartig
4d58563168 Ignore unnecessary build artifacts
Summary:
This allows bundles to have their `.buildignore` file. I did that first to remove some things from the `static` folder, but it turned out that those aren't just unnecessary for the bundle but completely unused in general. I still think there may be a case for allowing this on a per-package basis.

Right now it excludes `.ts` files, license files and readmes. Full list of excluded files is here: P129474747

It adds up to about 6MB in the *DEFLATE compressed* bundle.

Reviewed By: nikoant

Differential Revision: D21176143

fbshipit-source-id: a13e900152617fdf1c2dbfa6330c0a06a75e5484
2020-04-24 08:35:32 -07:00
Pascal Hartig
b4a5a17d49 Add jest coverage reporters (#1051)
Summary:
I want to track that data continuously.
HTML is useful to investigate, lcov got loads of external tools that
support it and JSON is quite useful to parse and write to a DB.
Pull Request resolved: https://github.com/facebook/flipper/pull/1051

Test Plan:
```
yarn test --coverage
open coverage/index.html
```

Reviewed By: jknoxville

Differential Revision: D21228144

Pulled By: passy

fbshipit-source-id: dc6d853c84c21e941614cf7e5da0fc4fe7174564
2020-04-24 06:59:38 -07:00
John Knox
eb1981f9f2 Don't log when insecure connection fails
Summary:
Context: https://fb.workplace.com/groups/flippersupport/permalink/803808233433170/

A similar change was done earlier with the secure connection route.
This does the same for the insecure route.

Reviewed By: mweststrate

Differential Revision: D21227196

fbshipit-source-id: 844cb674b5b16033977f451bbc3d8bbc69732273
2020-04-24 05:52:14 -07:00
Pascal Hartig
08e83560e4 Add "debugging" to dmg upload (#1044)
Summary:
Really no clue why this isn't working. Manually running the exact
same curl command works just fine. Adding an `ls` and removing paths
because why not.
Pull Request resolved: https://github.com/facebook/flipper/pull/1044

Test Plan: Next release, sadly.

Reviewed By: nikoant

Differential Revision: D21202248

Pulled By: passy

fbshipit-source-id: e6298e8f8f191f7864e5e48ef1a1ad18b71bf3ab
2020-04-24 01:57:12 -07:00
Joshua Selbo
e6b7c9a346 Migrate Sonar Android tests (#1045)
Summary: Pull Request resolved: https://github.com/facebook/flipper/pull/1045

Reviewed By: passy

Differential Revision: D21181354

fbshipit-source-id: ddc329f8bafd5890b7428642d32f7f62e1d499ad
2020-04-23 15:19:32 -07:00
Pascal Hartig
b605f1140c Show message if update available
Summary: Even easier than manually using `update-notifier`: https://github.com/oclif/plugin-warn-if-update-available

Reviewed By: nikoant

Differential Revision: D21201177

fbshipit-source-id: e0169b41950f44f82c5a96c4452e5793f687ccdd
2020-04-23 10:32:21 -07:00
Anton Nikolaev
fe09dae237 Update tutorial to reflect changes in plugin packaging format
Summary: Tutorial updated to reflect changes in plugin packaging format

Reviewed By: passy

Differential Revision: D21161268

fbshipit-source-id: b7c6d272be8dd56b76a0af87acdc347df4216f6c
2020-04-23 05:58:39 -07:00
Anton Nikolaev
e165c2cd95 Desktop plugin development workflow
Summary: Updated docs describing workflow for creating Flipper desktop plugins

Reviewed By: passy

Differential Revision: D21129688

fbshipit-source-id: 68921e5d3784e3ab6b3e8397199b10101348a86a
2020-04-23 05:58:39 -07:00
Anton Nikolaev
9b99d58acc Removed unused dependencies
Summary: Removed dependencies from package.json which are not referenced anywhere in code.

Reviewed By: passy

Differential Revision: D21187840

fbshipit-source-id: e5a69be01ad3e592f2782b7921bc95bff833e267
2020-04-23 05:33:20 -07:00
Anton Nikolaev
ec07272c78 Linter checks for extraneous dependencies
Summary: Added eslint rule "no-extraneous-imports" which disallow using modules which are not listed as dependencies in the corresponding package.json. Fixed a bunch of reported errors after the rule applied.

Reviewed By: passy

Differential Revision: D21186848

fbshipit-source-id: 0af9ac4b3fffdfd0ab7c23ae4ff12a3f5989d5e9
2020-04-23 05:33:20 -07:00
Pritesh Nandgaonkar
17ccdeaf6f Change the export logic for the Inspector
Summary:
This enables the feature which showed the theme information in the layout plugin. It was disabled due to the OOM which occurred while exporting flipper trace. The OOM happened when we tried to serialise the whole layout hierarchy and the amount of info added per node by the theme info was quite heavy. Thus removing it solved the OOM problem at that point, but its not the correct solution.

The problem is that each node has too much information and sending it at one stretch is very heavy and causes OOM. So instead of sending it at one stretch, I have broken it into multiple calls at each level of the tree. This no longer causes OOM and we will be able to show theme information too.

Also for iOS we don't have AXNodes call or AXRoot feature implemented, so anyway I had to put a check to not make those calls, so instead I have kept the feature of fetching all nodes on the iOS instead, as there has been no problem on the iOS side with regards to the OOM. But I am indifferent, the same logic will work for iOS too, it might increase the time to export.

issue discussed [here](https://fb.workplace.com/groups/flippersupport/permalink/854729375007722/)

Reviewed By: jknoxville

Differential Revision: D21136057

fbshipit-source-id: becd237a6d53c50af082597f2e8ed790c25cb966
2020-04-23 04:31:17 -07:00
Pritesh Nandgaonkar
9d0d900b05 Pass supportsMethod as an argument to the exportPersistedState
Summary:
This diff adds supportsMethod as a closure which can be used to verify a method is implemented on the client side.

It will be used in the next diff

Reviewed By: jknoxville

Differential Revision: D21176415

fbshipit-source-id: fe16d966c58d36558034ce4ade8f58f8031aab18
2020-04-23 04:31:17 -07:00
generatedunixname89002005306973
3a95875f67 Flipper Snapshot Bump: v0.39.1-SNAPSHOT
Summary: Releasing snapshot version 0.39.1-SNAPSHOT

Reviewed By: mweststrate

Differential Revision: D21199719

fbshipit-source-id: 8413813d2bbda124e216c937c7dde6183fae47dc
2020-04-23 03:57:12 -07:00
generatedunixname89002005306973
99c5a427c7 Flipper Release: v0.39.0
Summary: Releasing version 0.39.0

Reviewed By: mweststrate

Differential Revision: D21199718

fbshipit-source-id: 1082098a2b4fcfaa7b7efb201e8321331fd4bdc4
2020-04-23 03:57:12 -07:00
Michel Weststrate
f07d898a35 Use fragments instead of arrays when returning elements
Summary: Returning arrays from render kills react-reconciliation and produces missing key warnings. Turned all array rendering methods to use Fragments, where I could find them.

Reviewed By: jknoxville

Differential Revision: D21178253

fbshipit-source-id: 85ddf8adfa79732ccbe68409fdcf150399455983
2020-04-23 03:47:32 -07:00
Michel Weststrate
67412bfb43 Fix scrolling of query items and JSON details view
Summary: This diff fixes the tripple scrollbars in the graphQL plugin, and makes sure scrollbars for the detail panel are properly shown

Reviewed By: jonathoma

Differential Revision: D21177849

fbshipit-source-id: d40173d7e9a45064b608c8d953c7aea47a4acd0f
2020-04-23 03:47:31 -07:00
Michel Weststrate
4665bcf218 Introduced Layout component
Summary:
This diff introduces a Layout component.

Layout is now quite randomly build up by using panels, sidebars, flex columns, flexrow and view components. They all have slight different scrolling, overflow, and grow behavior. Which causes issues with areas not being srcollable, double scrollbars or simply the wrong area scrolling. Too make things worse to design, many components by default display hidden content, and show scrollbars automatically rather than deliberately.

To work towards a consist, and especially simple layout model, over time I want to build a consistent outside-in layout model, where always parents reserve space for children, and children fill the available space and device it even further.

Note that this approaches better how 'applications' typically organize their layout, which is opposite from the classic 'document', where the contents is allowed to grow and is used to push things down / aside where they want. However, such a model fits an application with toolbars, sidebars and scroll regions badly, and currently those two philosophies are mixed throughout the application.

This component is a very small first step to organizing our layout consistently. By using a new component there is less risk to break existing layouts. The `Layout` component takes up all available space, both horizontally and vertically, and gives the first child what it needs based on its own size (typically, a toolbar or (resizable) sidebar), and all the remaining space to the second child. By default the space is distributed vertically, but it can also be distributed horizontally. It can provide scrollbars as well if needed so that the main content doesn't need to provide that by itself.

Examples:

```
<Layout scrollable>
  <Toolbar />
  <LargePicture />
</Layout>

<Layout horizontal>
  <ResizableSidebar />
  <SomeContentTable />
</Layout>
```

Reviewed By: jknoxville

Differential Revision: D21178245

fbshipit-source-id: c2d2f167d1572278e51a5b66e1cbf13c42c3b898
2020-04-23 03:47:31 -07:00
Andrey Mishanin
8936ec540c More robust regex for stack frames
Summary:
- Library name can contain whitespace and dots.
- Not using fixed number of whitespace characters.

Reviewed By: fabiomassimo

Differential Revision: D21185820

fbshipit-source-id: 429656dc03b6450ef61383ed91b5aee132802ca8
2020-04-23 03:09:59 -07:00
Pascal Hartig
f5ed06cbd7 Remove unused pattern.gif
Summary: Can't find a reference to this.

Reviewed By: jknoxville

Differential Revision: D21177180

fbshipit-source-id: 52da3987d99d2648d67aa65a20b796be94d9b856
2020-04-23 02:05:56 -07:00
Pascal Hartig
65f935efab Fix CFBundleVersion
Summary:
This defaults to the `version` and is used to update the inline plists
of the Frameworks that are bundled with the MacOS app bundle. Setting
them to a fixed value means that they remain unchanged across rebuilds
(bringing them in line with Linux and Windows equivalents). This
is required to ship them as separate bundles for the launcher.

Why 50? The reason this was introduced was to allow people to override
this to values >= 50 as this is somehow a Mac App Store requirement:
https://github.com/electron-userland/electron-builder/issues/565#issuecomment-230678643

Reviewed By: priteshrnandgaonkar

Differential Revision: D21179072

fbshipit-source-id: a6f10b7508526b4305b229bd160d6e570ddce822
2020-04-23 01:49:36 -07:00
Anton Nikolaev
1509180929 Fixed warning about using kebab-style for emotion styling
Summary: Just fixed warning that kebab-style properties are deprecated and camel-case should be used instead

Reviewed By: mweststrate

Differential Revision: D21178489

fbshipit-source-id: 9fba323b3c6ccfce7eb2acc97aa57526305e24ac
2020-04-22 14:03:08 -07:00
Chaiwat Ekkaewnumchai
f3edfb36db Fix Stream Closed IOException
Summary:
Original Issue: https://github.com/facebook/flipper/issues/993

The exception occurs when OkHttp and we try to read request body twice, while it can be only read once.

Hence, we will read request body after it is processed by OkHttp.

Tradeoff for this is requests on Flipper will not appear immediately after fired, but they will appear together with their responses.

There are ways we can get rid of the tradeoff. For example, as demonstrated in D21167308, OkHttp ^3.14.0 contains method `isOneShot`, which can be used to check if we can read request body more than once. Another example is to change server side to accept nullable variable so that we can send request body and others separately.

Reviewed By: passy

Differential Revision: D21175341

fbshipit-source-id: 053789a2c2f28cd8149ea1bb36fd0cfe1c668df7
2020-04-22 09:28:11 -07:00
Anton Nikolaev
1a692ccf08 Fix build for Reactotron plugin
Summary: Fixed build for Reactotron plugin. It was broken because one of dependencies has statement "import * as React from 'react'" which transformed wrongly.

Reviewed By: passy

Differential Revision: D21178313

fbshipit-source-id: d700981a570dc8ded2080910e872b44976b850e8
2020-04-22 09:28:11 -07:00
Anton Nikolaev
2890306ad5 Disable asar packing as it doesn't play well with Metro
Summary: Disabled asar packing until Metro removed from Flipper bundle

Reviewed By: passy

Differential Revision: D21178188

fbshipit-source-id: e8508fd65fec3e31a7bed8d391149a57c5416863
2020-04-22 09:28:11 -07:00
Michel Weststrate
a6ac9a0b6c Update fs-extra
Summary:
Major update without breaking changes, but from changelog doesn't sound like it will affect us. Does require node 10. But afaik that is what we require already anyways.

Closes #907

Reviewed By: passy

Differential Revision: D21137620

fbshipit-source-id: dd7a64ba334f95733997acbb52eee7d8f3322ec4
2020-04-22 07:38:45 -07:00
Andrey Mishanin
e4ea3ecec6 Tree generation search
Summary:
Added the ability to search tree generations for a particular component. As soon as you start typing in the search bar, only relevant timeline tracks would be displayed.

Currently, I'm looking for the search string in `component_class_name` of the payload and among all nodes in the tree.

Reviewed By: fabiomassimo

Differential Revision: D21175734

fbshipit-source-id: 642c628350192697980becd20352d303200a031e
2020-04-22 05:16:33 -07:00
Pascal Hartig
7e768f3e1f Remove unused static resources
Summary: It seems that these are not referenced anywhere in the repository.

Reviewed By: mweststrate

Differential Revision: D21176051

fbshipit-source-id: 502d4a2020d230f8c57bee31e15fbcf996484676
2020-04-22 05:07:07 -07:00
Anton Nikolaev
2595e40c59 Fixed plugin compilation in release build
Summary: Fixed plugin compilation in release build. One dependency was missing from the final package.

Reviewed By: jknoxville, passy

Differential Revision: D21174687

fbshipit-source-id: 311e04b3ab782093bdbb8f1b81191380320e94d0
2020-04-22 04:22:28 -07:00
Michel Weststrate
c611ae12f0 Flipper Snapshot Bump: v0.38.1-SNAPSHOT
Summary: Releasing snapshot version 0.38.1-SNAPSHOT

Reviewed By: nikoant

Differential Revision: D21155372

fbshipit-source-id: 97360d17c973162db2ece2078c0d4c24df5a414e
2020-04-21 13:10:57 -07:00
Michel Weststrate
18b88a7e03 Flipper Release: v0.38.0
Summary: Releasing version 0.38.0

Reviewed By: cekkaewnumchai

Differential Revision: D21155371

fbshipit-source-id: 554393fc357135cd8538c9b77eee023f8a3e1525
2020-04-21 13:10:56 -07:00
Adam Ernst
d66484822b Allow subdescriptors to return nil to signal no data
Summary: Currently subdescriptors are *always* rendered. Allow them to return `nil` to signal that they don't need to be rendered.

Reviewed By: cuva

Differential Revision: D21157249

fbshipit-source-id: 68a83424efc50723e1ec71c069feef8e10037671
2020-04-21 11:53:11 -07:00
Adam Ernst
d0803ecd56 Show mounted ComponentKit views in Flipper
Summary:
Before this diff, Flipper showed *leaf* views created by ComponentKit, but not any intermediate views. Now we show both.

A new node type `SKComponentMountedView` is used for this purpose. Its descriptor `SKComponentMountedViewDescriptor` mostly delegates to its view's descriptor, but redirects back into ComponentKit for children.

Reviewed By: Andrey-Mishanin

Differential Revision: D21130997

fbshipit-source-id: b3c12ea7cc1200962b3ba7c269c48d68b1809948
2020-04-21 11:53:10 -07:00
Pascal Hartig
756987e4bf Fix typo in architecture
Summary: Per title.

Reviewed By: jknoxville

Differential Revision: D21158664

fbshipit-source-id: 953d968da18768db91507b4148e53ff8a042c53d
2020-04-21 11:38:33 -07:00
Anton Nikolaev
9e3b57bea7 Remove "incremental" option from base tsconfig
Summary: "incremental" option in base config conflicts with "tsc --noemit" which leads to crashes like in D21155831. Removing it from base config, anyway it is explicitly set for all the packages where required (babel-transformer, pkg-lib, pkg)

Reviewed By: timur-valiev

Differential Revision: D21157205

fbshipit-source-id: bb37101521d865bbe737e99637a9bc83a308494e
2020-04-21 10:19:53 -07:00
Timur Valiev
764ba546f7 Move ToolbarIcon to main ui components folder
Summary: there are two plugins which uses copy-pasted ToolbarIcon and at least one more where it will be helpful. Let's move it to components folder

Reviewed By: nikoant

Differential Revision: D21089290

fbshipit-source-id: a14dcd56633dd24016711e34308b94023fcb40ed
2020-04-21 09:23:46 -07:00