Commit Graph

49 Commits

Author SHA1 Message Date
Daniel Büchele
28a295bcf1 Interactive
Summary: _typescript_

Reviewed By: passy

Differential Revision: D16830548

fbshipit-source-id: d0530ef3491af95bece7fba610a4b1cf19c80bd1
2019-08-20 04:09:40 -07:00
Daniel Büchele
e00db4f6d3 Label
Summary: _typescript_

Reviewed By: passy

Differential Revision: D16830549

fbshipit-source-id: aee447e0716b00e7ad5ca80379625693843d23eb
2019-08-20 04:09:40 -07:00
Daniel Büchele
4c6aec42d8 Link
Summary: _typescript_

Reviewed By: bnelo12

Differential Revision: D16830544

fbshipit-source-id: 868518b9601d1772af8363b940b72cb3ab2f6cc8
2019-08-20 04:09:40 -07:00
Daniel Büchele
e80385169a LoadingIndicator
Summary: _typescript_

Reviewed By: passy, bnelo12

Differential Revision: D16830547

fbshipit-source-id: faaf843dfc667242aa9bf34443b89856751dd2b8
2019-08-20 04:09:39 -07:00
Daniel Büchele
726b9cb141 VirtualList
Summary: _typescript_

Reviewed By: bnelo12

Differential Revision: D16830546

fbshipit-source-id: cd3caa4a37bb9abaf7c23c58d90d61c5e32cea08
2019-08-20 04:09:39 -07:00
Daniel Büchele
115e2b3576 ViewWithSize
Summary: _typescript_

Reviewed By: bnelo12

Differential Revision: D16830537

fbshipit-source-id: 2ca4854a0dd4c092b6e4b09aefeb676f5921fe9e
2019-08-20 04:09:39 -07:00
Daniel Büchele
68271e2017 View
Summary: _typescript_

Reviewed By: passy, bnelo12

Differential Revision: D16830062

fbshipit-source-id: 19742e156c138ab867bb0e9f40dc140f1e98dec9
2019-08-20 04:09:39 -07:00
Daniel Büchele
8f05ea5018 VerticalRule
Summary: _typescript_

Reviewed By: passy, bnelo12

Differential Revision: D16830055

fbshipit-source-id: c3478d75c74e4677b9e38ab8aa068702550d147b
2019-08-20 04:09:38 -07:00
Daniel Büchele
2a76461fb8 Tooltip components
Summary: _typescript_

Reviewed By: passy, bnelo12

Differential Revision: D16830063

fbshipit-source-id: bd0cf3c109caba74ee5a8f9915d46630007702fe
2019-08-20 04:09:38 -07:00
Daniel Büchele
5770a206be Toolbar
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16830060

fbshipit-source-id: d9570a96fee61d2d6794c41a15aa8cbba23ae7c1
2019-08-20 04:09:38 -07:00
Daniel Büchele
ea82d7d673 ToggleSwitch
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16830056

fbshipit-source-id: 8bc1e93d781691a6f20f842422b06ec281cf688f
2019-08-20 04:09:37 -07:00
Daniel Büchele
13ed952c09 Textarea
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16830057

fbshipit-source-id: 1a9e185ff108431f3c5900259375ff635eee3057
2019-08-20 04:09:37 -07:00
Daniel Büchele
ff77d4928e TextParagraph
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16830061

fbshipit-source-id: da34f572f48b744e392c917b8b402630949e6736
2019-08-20 04:09:37 -07:00
Daniel Büchele
b48e2bcf71 Text
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16830059

fbshipit-source-id: 6dab58d19d679d748f82543a3a4b2424adff6052
2019-08-20 04:09:36 -07:00
Daniel Büchele
56d4a83184 Tab components
Summary: _typescript_

Reviewed By: passy

Differential Revision: D16830058

fbshipit-source-id: 22825fdad0924f1f8cdebcbb7a56e0c55ad3b5f3
2019-08-20 04:09:36 -07:00
Daniel Büchele
00c2a4dd29 StatusIndicator
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16830064

fbshipit-source-id: 947a7af91e4bdffedc321db369d79da4584d64f7
2019-08-20 04:09:36 -07:00
Daniel Büchele
fae45bc5ac Stacktrace
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828873

fbshipit-source-id: 518ac076960bc0bbc3dd0766eb0e81c4576e5db5
2019-08-20 04:09:36 -07:00
Daniel Büchele
4c521858c7 Sidebar components
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828870

fbshipit-source-id: b343b28b3dd1700919df3fcfde659f7fe99cadff
2019-08-20 04:09:35 -07:00
Daniel Büchele
dedf09c2ae Sheet
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828874

fbshipit-source-id: 1111d5e5ceae38c7af0a5e211efbbad57a110a45
2019-08-20 04:09:35 -07:00
Daniel Büchele
4ad072aa2c Select
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828872

fbshipit-source-id: 31c7a6604ab5c9749bce41bb81f6b8acb56e846b
2019-08-20 04:09:35 -07:00
Daniel Büchele
e199ee95d3 ResizeSensor
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828871

fbshipit-source-id: d88c65178f0728b40414c9eab66d0402d7d51edd
2019-08-20 04:09:34 -07:00
Daniel Büchele
aee3ab86cf Popover
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828816

fbshipit-source-id: e90852fcebd02416c3d5cfd8011bb96d2ea0d672
2019-08-20 04:09:34 -07:00
Daniel Büchele
f8e357d2c1 PathBreadcrumbs
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828812

fbshipit-source-id: 89ab25bcb83e79a0ee41998f0708dd7affd18766
2019-08-20 04:09:34 -07:00
Daniel Büchele
d5a5ce21c9 Panel
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828813

fbshipit-source-id: 9307391dc914ea10b458092b2ec72cd30e2eb0e9
2019-08-20 04:09:33 -07:00
Daniel Büchele
027a7f8336 Orderable
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828817

fbshipit-source-id: 24e35d29730d2b336a478fee41baa84af2892d12
2019-08-20 04:09:33 -07:00
Daniel Büchele
751b50c28f ModalOverlay
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828815

fbshipit-source-id: 9341286f7c3c32da3f7abeda53b78b2b7fa7bd1b
2019-08-20 04:09:33 -07:00
Daniel Büchele
3691305b4d MarkerTimeline
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828814

fbshipit-source-id: 13b86338a73a4838857a31e16ea184e35ebfa7d0
2019-08-20 04:09:32 -07:00
Daniel Büchele
cd10856c3e Colors
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828226

fbshipit-source-id: e6dd9946ae642a27ebc8a3f6dfce6773051f5a7a
2019-08-20 04:09:32 -07:00
Daniel Büchele
c1b718db8f Console
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828108

fbshipit-source-id: ca04853242b2f6511ecf28250add78bbbf79ba05
2019-08-20 04:09:32 -07:00
Daniel Büchele
6e19315e48 Desktop Toolbar
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16828106

fbshipit-source-id: 449b238ac709bbbd26086a054cd9b996385bd29b
2019-08-20 04:09:32 -07:00
Timur Valiev
d3658f7d31 immutable data structures in tables 3/n: searchable table
Summary:
Migrating tables' row collection to Immutable.js List:
1. Сopy SearchableTable code to SearchableTable_immutable
2. Use ManagedTable_immutable for SearchableTable_immutable

-----
Current implementation of tables forces to copy arrays on new data arrival which causes O(N^2) complexity ->
tables can't handle a lot of new rows in short period of time -> tables freeze and become unresponsive for a few seconds.
Immutable data structures will bring us to O(N) complexity

Reviewed By: jknoxville

Differential Revision: D16416732

fbshipit-source-id: 856ba0407bfdd12bb1b90110e130562a07cc5060
2019-07-23 08:00:54 -07:00
Timur Valiev
6deaf2106f immutable data structures in tables 2/n: managed table
Summary:
Migrating tables' row collection to Immutable.js List:
1. Change native array to Immutable list in ManagedTable_immutable

-----
Current implementation of tables forces to copy arrays on new data arrival which causes O(N^2) complexity ->
tables can't handle a lot of new rows in short period of time -> tables freeze and become unresponsive for a few seconds.
Immutable data structures will bring us to O(N) complexity

Reviewed By: jknoxville

Differential Revision: D16416869

fbshipit-source-id: 6d5690d8f5f70286f31a423e319b2cb22deab8ff
2019-07-23 08:00:54 -07:00
Benjamin Elo
28d4e6409d Created chained button group component
Summary:
This is a new component that allows for chaining of buttons in a button group by placing an icon in between them.

This is how we plan to navigate between views within an Android app.

Reviewed By: danielbuechele

Differential Revision: D16071234

fbshipit-source-id: 404a3a341081b6111667bd5acf27876bec627435
2019-07-01 08:31:22 -07:00
David Aurelio
8b7f17d932 Pull out colored disc indicator
Summary:
Pulls out the local `Lamp` component from `PluginDebugge` into `StatusIndicator`.

This will allow to reuse the component in different context, to guarantee a consistent appearance of Flipper throughout.

For good measure, we make diameter and title configurable. Vertical alignment is changed from `margin-top` to `align-self`.

Reviewed By: danielbuechele

Differential Revision: D15692275

fbshipit-source-id: 438b2f5300175565dbf07d07a5d757936b4f7cfe
2019-06-06 04:09:56 -07:00
John Knox
a630b50a8f Add databases plugin v0 (android) (#441)
Summary:
Adds a plugin for listing the databases, tables and contents of those tables in an android app.
Right now, works with sqlite, but it should be generic enough to work with other db types.

## Changelog

Add initial version of android databases plugin

Creating a PR, I may need to do some cleaning up, but this is to kick off that process.
Pull Request resolved: https://github.com/facebook/flipper/pull/441

Reviewed By: danielbuechele

Differential Revision: D15288831

Pulled By: jknoxville

fbshipit-source-id: 6379ad60d640ea6b0a9473acc03dd6ea81a3a8d4
2019-05-28 10:17:56 -07:00
John Knox
57a24769e8 JS side of Native Plugins
Summary:
Native plugins are plugins that can be written in mobile code alone (java/objc), provided they conform to a template, currently table is the only implemented template.

This adds support to flipper for handling them.

Reviewed By: danielbuechele

Differential Revision: D14502188

fbshipit-source-id: a96be9b06de1cecf7977c4ef2fd05b168f7f1330
2019-03-22 07:07:31 -07:00
Daniel Büchele
384529e97f Sheet component for plugins
Summary:
Exposing a `<Sheet>` component to plugins. This allows plugins to create sheets, by returning something like this from their render function:

```js
return <div>
  contents of my plugin
  <Sheet>{() => <div>content of my sheet</div>}
</div>
```

Reviewed By: passy

Differential Revision: D13597251

fbshipit-source-id: 9da6ba6d2036243ddd2d05b73d392bf24be8d375
2019-01-09 10:48:18 -08:00
Daniel Büchele
0143052f98 StackTrace
Summary: Adding a UI component for displaying StrackTraces

Reviewed By: priteshrnandgaonkar

Differential Revision: D13377068

fbshipit-source-id: 7119bad3d413ad7c5eafd09aa04e741a1b200b7b
2018-12-14 10:35:12 -08:00
Daniel Büchele
3b45976217 MarkerTimeline
Summary: Moving the `MarkerTimeline` from the QPL plugin to the Flipper UI library, so it can be used by other plugin.

Reviewed By: priteshrnandgaonkar

Differential Revision: D13377065

fbshipit-source-id: 9ef1f0e044fa85b68a01e23071042600aa5c3c63
2018-12-14 10:35:12 -08:00
Daniel Büchele
95a7298d21 updating UI documentation
Summary:
adding documentation for more of our UI components.

Deleted some unused components, which were not working anyways.

Reviewed By: jknoxville

Differential Revision: D12896109

fbshipit-source-id: 959c7864240883869ad67283f80a3c189b94bf00
2018-11-05 03:12:23 -08:00
Pascal Hartig
c3e4f16188 Restructure modules to reduce import-time side effects
Summary:
`flipper` does a lot of stuff at import time. I copied the `styled` reexport
to the UI module, so it's possible to just depend on that.

`remote` is another one of those pot holes that can easily ruin your journey
if you aren't careful navigating around it. Added some defensive fallbacks here
which ultimately allows the lint test to run (and pass) without Electron.

Reviewed By: danielbuechele

Differential Revision: D10507655

fbshipit-source-id: 6dad5665ba15b5cb73caa4ea46262cf337173eb8
2018-10-25 12:56:42 -07:00
Itai Rosenberger
de85f9d455 Make dylib plugin error message more user friendly
Summary: Make dylib plugin error message more user friendly by making the URL linkable.

Reviewed By: dshahidehpour

Differential Revision: D10304489

fbshipit-source-id: 3d5c0d8da426e1b5580d431f07b5291dad068ffc
2018-10-10 18:56:05 -07:00
Daniel Büchele
726966fdc0 convert to emotion
Summary:
My benchmarks have shown react-emotion to be faster than the current implementation of `styled`. For this reason, I am converting all styling to [emotion](https://emotion.sh).

Benchmark results:
{F136839093}

The syntax is very similar between the two libraries. The main difference is that emotion only allows a single function for the whole style attribute, whereas the old implementation had functions for every style-attirbute.

Before:
```
{
  color: props => props.color,
  fontSize: props => props.size,
}
```

After:
```
props => ({
  color: props.color,
  fontSize: props.size,
})
```

Reviewed By: jknoxville

Differential Revision: D9479893

fbshipit-source-id: 2c39e4618f7e52ceacb67bbec8ae26114025723f
2018-08-23 09:42:18 -07:00
Daniel Büchele
1891e2c869 moving tables to react-window
Summary:
Tables were using a custom virtualization, which wasn't as performant as other solutions out there. In this diff, the table component is reworked for performance.
- removes `Table` component, because it was never used standalone, `ManagedTable` is what all plugins used
- uses `react-window` for `ManagedTable`
- reworks table highlighting and arrow-navigation to work with the new virtualization
- moves actual filtering out of `ManagedTable` into `Searchable` component for a better separation of concerns.

Reviewed By: jknoxville

Differential Revision: D9447721

fbshipit-source-id: 15eb2eb55eed9f49a0cb1ccfb2d748b3672fa898
2018-08-23 04:57:28 -07:00
Hilal Alsibai
82c2f0c68c Minor typo
Summary: Minor typo

Reviewed By: passy

Differential Revision: D9393881

fbshipit-source-id: 252ed38f1532947a7a15b2149bd5da42d6e0e31d
2018-08-20 02:56:44 -07:00
Sara Valderrama
1fb2c4ee76 Add focus option to context menu in the accessibility tree
Summary: Allow user to open the context menu on an element in the ax tree and request accessibility focus to that element. If the element is focusable (and talkback or another accessibility service is running), accessibility focus will change to that element, if not, it will not change anything.

Differential Revision: D9162382

fbshipit-source-id: 5dda9b87a2cc6eba4130e3feee978b5fa38ac9f1
2018-08-07 09:42:27 -07:00
Aurelien Fredouelle
5714ce08c9 Added export for the DataDescription component
Reviewed By: jknoxville

Differential Revision: D8896383

fbshipit-source-id: f4873c251046be5983ef1e7377a9a269a087261a
2018-07-26 04:34:46 -07:00
Sara Valderrama
d8cf48d750 Two-tree view up and running, separately interactive/editable
Summary: Added duplicate view tree (will be replaced with accessibility node tree eventually). Can toggle ax mode on and off and interact with each tree individually to view/change properties.

Reviewed By: danielbuechele

Differential Revision: D8717557

fbshipit-source-id: 1109ccafd49b6958ee7a70c2e8851ed8351516ae
2018-07-05 16:19:29 -07:00
Daniel Büchele
fbbf8cf16b Initial commit 🎉
fbshipit-source-id: b6fc29740c6875d2e78953b8a7123890a67930f2
Co-authored-by: Sebastian McKenzie <sebmck@fb.com>
Co-authored-by: John Knox <jknox@fb.com>
Co-authored-by: Emil Sjölander <emilsj@fb.com>
Co-authored-by: Pritesh Nandgaonkar <prit91@fb.com>
2018-06-01 11:03:58 +01:00