Summary:
We only want to persist certain reducers that are whitelisted.
Currently some parts of the `connections` reducer and everything from the other reducers was persisted. This changes the behavior to only persist what is explicitly whitelisted and not the other reducers.
These pars of the store are whitelisted:
- `connections.userPreferredDevice`
- `connections.userPreferredPlugin`
- `connections.userPreferredApp`
Reviewed By: jknoxville
Differential Revision: D10401403
fbshipit-source-id: e4aa4f2b2f8f6229b02dcf46798965fa1ae74df6
Summary:
Adds a test runner for jest test and adds three simple test cases:
- render the app
- start a server
- client connecting to the app
Test can be run using `yarn test`.
To make the test runner work, some changes needed to be made:
- remove the export of `init()` from `'flipper'`, because it was a cyclic dependency
- updating Button.js to the new ref-API
Reviewed By: jknoxville
Differential Revision: D10027078
fbshipit-source-id: 49107b0dd4dec666b92ecd841422fe7e6b3a7756
Summary:
Back out "Back out "[flipper] Export init function""
Original commit changeset: 93b916d472b7
The import side effect seems to cause some issues with shadowing,
so let's pull this all the way to the top and call this from HTML
as Sonar.init().
Reviewed By: danielbuechele
Differential Revision: D9849869
fbshipit-source-id: b62772ecddc59eab00251ebf19816f470d76ba82
Summary:
This seems to break initialization. I'm not quite sure why, but
inside the exported function, nothing else from the file appears
to be visible.
Original commit changeset: 55b2a61186e6
Reviewed By: danielbuechele
Differential Revision: D9849812
fbshipit-source-id: d88973721da82040e1f29669acade6c883619ce8
Summary: This way we can mock it during tests.
Reviewed By: jknoxville
Differential Revision: D9788349
fbshipit-source-id: 55b2a61186e6294a8098db7add50fd8bbac7a680
Summary:
Basic tooltips available. Use is:
<Tooltip
title="This is what will show up inside the tooltip"
options={{ // can include any or none of these (if not included default will be used)
position, // 'above', 'below', 'toRight', or 'toLeft'
showTail, // whether or not tooltip should have tail
delay, // how long to wait on hover before showing tooltip
// supported css properties
backgroundColor,
color,
maxWidth,
width,
borderRadius,
padding,
lineHeight,
}}>
<ElementTooltipWillShowUpFor/>
</Tooltip>
Reviewed By: danielbuechele
Differential Revision: D9596287
fbshipit-source-id: 233b1ad01b96264bbc1f62f3798e3d69d1ab4bae
Summary: The selected device, app and plugin are not persisted over a reload using `redux-persist`.
Reviewed By: jknoxville
Differential Revision: D8836481
fbshipit-source-id: 3ace1a950a200255d5daf77791d706ede0ff2138
Summary:
Refactors the plugin architecture of Sonar:
- Before plugin rendering had it's own implementation of the react lifecycle. This means the `render`-function was not called by react, but rather by the application it self. In this diff, the render method is now called from react, which enables better debugging and allows react to do optimizations.
- Business logic for querying emulators is moved away from the view components into its own dispatcher
- All plugin handling is moved from `App.js` to `PluginContainer`.
- The sidebar only shows one selected device. This allows us to add the screenshot feature as part of the Sonar main app and not a plugin.
- This also fixes the inconsistency between the devices button and the sidebar
Reviewed By: jknoxville
Differential Revision: D8186933
fbshipit-source-id: 46404443025bcf18d6eeba0679e098d5440822d5