Summary:
Kinda what is in the title. But shouldn't be merged yet as RN 0.62 didn't ship yet.
Also, the iOS tutorial hasn't been verified yet, as the relevant diff hasn't been merged yet (see D19391739)
Reviewed By: passy
Differential Revision: D19468497
fbshipit-source-id: 9e7d90123d3637a1a552c4a9def6420137cf8246
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/872
Move all the JS code related to desktop app to "desktop" subfolder.
The structure of "desktop" folder:
- `src` - JS code of Flipper desktop app executing in Electron Renderer (Chrome) process. This folder also contains all the Flipper plugins in subfolder "src/plugins".
- `static` - JS code of Flipper desktop app bootstrapping executing in Electron Main (Node.js) process
- `pkg` - Flipper packaging lib and CLI tool
- `doctor` - Flipper diagnostics lib and CLI tool
- `scripts` - Build scripts for Flipper desktop app
- `headless` - Headless version of Flipper app
- `headless-tests` - Integration tests running agains Flipper headless version
Reviewed By: passy
Differential Revision: D20249304
fbshipit-source-id: 9a51c63b51b92b758a02fc8ebf7d3d116770efe9
Summary: Added docs on how to write React-Native JavaScript based plugins
Reviewed By: passy
Differential Revision: D19344803
fbshipit-source-id: ad1ea66f1031760729fdaea8a7e6c1ef5dcd5439
Summary: React 16 is not compatible with react-emotion 9 (it prints warnings, see also https://github.com/emotion-js/emotion/issues/644). So we should upgrade to 10.
Reviewed By: mweststrate
Differential Revision: D18905889
fbshipit-source-id: c00d2dbbadb1c08544632cb9bfcd63f2b1818a25
Summary:
Random observations
1. RN already generates the Flipper initialization code out of the box
2. This code assumes a prefixed namespace: `facebook.flipper`. Maybe it would be better if that were `appname`, but that seems an unnecessary burden at this point, preventing direct copy / paste possibilities
3. Out of the box, the generated code by RN doesn't align with the code provided here, because no `ReactInstanceManager` argument is passed in (nor does it seem to be available in a straight-forward way)
4. patch MainApplication.java with `getReactNativeHost().getReactInstanceManager()`
5. turn this into an explicit section: https://fbflipper.com/docs/tutorial/js-table.html#dynamic-plugin-loading. Also explain that when using `node_modules`, config doesn't need to be changed?
6. xcode 10! sudo xcode-select -s /Applications/Xcode_10.XXX/Contents/Developer/
7. Also tried to install Reactotron plugins by Infinite Red, got that compilable in the end, but the andoid / ios implementations still seems to be stub, so I'll try to follow up with them later, to be notified when they actually have something
Reviewed By: passy
Differential Revision: D18349098
fbshipit-source-id: 233bbe20a37c57c7dfe08c8fccdd4508bdefe96f
Summary:
This PR introduces the possibility to group plugins in categories.
The category can be determined by setting the `category` field in `package.json`.
Categories are sorted alphabetically.
Categories are shown below all uncategorized items.
Within categories, items are sorted as before: by last recently usage.
Design wise, the category name might now look more prominent than the app name, this is to be addressed in a follow up PR.
Reviewed By: jknoxville
Differential Revision: D18169459
fbshipit-source-id: 77deb0f27a0462a0d449944ddc262396160687a2
Summary: For plugins to be discoverable through NPM, they need to have `flipper-plugin` as a keyword. This adds this keyword to all existing plugins (although they are currently not distributed via NPM) and the webside/docs.
Reviewed By: passy
Differential Revision: D17395079
fbshipit-source-id: e42dd31ca39c3754cf729052ee783687748bafe8
Summary:
I copied the wordings from Pascal's android setup and changed the API's to match the iOS one. 🙈
This doc explains how to build custom plugin in iOS
Reviewed By: passy
Differential Revision: D15200426
fbshipit-source-id: 0a3c966f7c74aae410c6b3ee643e5a38d33880de
Summary: Update according to changes in D15200794
Reviewed By: jknoxville
Differential Revision: D15200901
fbshipit-source-id: ef0e0895f30d6eb98536c9a7df7a0d46bb4af8d2
Summary:
JS is next. Screenshot on the intro page is really bad.
I hope danielbuechele can replace this. :)
Reviewed By: jknoxville
Differential Revision: D15184371
fbshipit-source-id: 2faaf46450d192ae400675c13b8d71fa1b7dab14