Summary:
I think there's a need for an "implementation details" section of the site. Especially as we're moving the rest of our wiki content there.
I see it as a good thing, because now we have a place for implementation details relevant to OSS contributors too, it's not all fb-specific.
Reviewed By: nikoant
Differential Revision: D25614909
fbshipit-source-id: 5ec081e6450a9ad1c30785ae4cca74b6fa0d2630
Summary: This diff unifies setup and workflow information that was scattered a bit around into one cohesive 'Development workflow' subsection in the 'creating plugins' section of Flipper.
Reviewed By: nikoant
Differential Revision: D25612288
fbshipit-source-id: 5fa7f2d000fb7ab3e1b5c5a4fc8cc1f209252f41
Summary: There were 3 pages describing how to obtain a plugin instance, public, ios and android. iOS didn't differ from the public one, and android only in the fact that internally DI is available. So combined the pages with just an optional section for DI inside FB on Android.
Reviewed By: jknoxville
Differential Revision: D25588057
fbshipit-source-id: 3a54ae699130a4c5ba018220708f844a35a8d6a9
Summary: There was one public page for testing client plugins, and two internal ones. Combined it into a one pager, that has tabs per target, with separate content for internal versus external (didn't combine those as the testing frameworks recommended differ)
Reviewed By: nikoant
Differential Revision: D25588058
fbshipit-source-id: afa151ec0c3a5de26142938d3d389627716f1ff7
Summary: send data was documented twice, in the general client API, and in the internal docs where it was specifically combined with obtaining a plugin instance. However, that is a proper public API as well, so combined those two.
Reviewed By: nikoant
Differential Revision: D25588059
fbshipit-source-id: 7135a74b64a87d0c8c3f8f20f7f260469f52d41c
Summary:
Previously we used <Link/> everywhere with useBaseUrl to avoid link destinations depending on the current url of the page.
This isn't necessary if you instead link to the **file name**, rather than the **url path**.
Then the links are resolved at build time, and work across imported markdown files etc.
This diff just does the pages under Features, because other ones will get conflicts. I'll do those later.
Reviewed By: nikoant
Differential Revision: D25589707
fbshipit-source-id: 35ca986e19fc2af1054b81d7253eeb3827947ab8
Summary: Seems that all tabs were broken after migration to Docusaurus 2.
Reviewed By: jknoxville
Differential Revision: D25586214
fbshipit-source-id: 31a8da4e13fbac01911a03f1f4bab0d2837c9c9a
Summary:
This diff restructures the 'extending' section of the docs, and rebrands it to 'creating plugins'. It then restructures this section into 4 top-level items
* Tutorial
* Desktop plugin APIs
* Client plugin APIs
* Workflow
Pages are put under the relevant sections, including pages which were before under internal. Some pages that didn't relate directly to plugin development have been moved to other top level sections (e.g. testing RN).
I didn't do de-duplication between pages yet, that will be done in the next diff.
Overview of changes:
* Extending -> Creating Plugins
* Moved Extending > Other platforms to Setup > Other platforms (as this is about clients, not plugins)
* Moved Internal FB plugin development stuff into Creating Plugins
* Separated Creating Plugins into ‘Tutorial’, Desktop API Reference, Cient API Reference, Workflow
* Remove TypeScript strict page, we are already strict
* Moved QPL linters to api docs and named id QPL lints
* Grouped the different pages on extending Layout plugin (needs deduping still)
* Warning about avoiding custom styling in general
* Moved internal index page to the top of the navigation of FB Internal, rather than at the bottom
Reviewed By: passy
Differential Revision: D25585172
fbshipit-source-id: ba2aa891395097d6aa101809084b915f115ee69d
Summary:
Now in public, the setup page remains unchanged, well, the headings are one level smaller.
In internal, the page is divided into two sections: for buck based apps, and non-buck based ones.
Reviewed By: mweststrate
Differential Revision: D25565953
fbshipit-source-id: abf4316a28970cd93d0cc9b56dd707f00a674a48
Summary:
Putting both iOS setup guides next to each other.
I'm not sure what to call the oss one. It applies to cocoapods, swift, and pure objc.
Reviewed By: passy
Differential Revision: D25563988
fbshipit-source-id: a7ee2a0ae04e5753a74939b1c170d9a2f2ace1a9
Summary: Puts both the "Adding flipper to android apps" page next to each other, one for buck and one for gradle. The buck one is only internal.
Reviewed By: passy
Differential Revision: D25563688
fbshipit-source-id: 1937cfdd0d5129b54a8635efe6294ba39a26be8e
Summary: The 'extending flipper' introduction page didn't contain anything meaty, so collapsed it into the tutorial introduction, cleaning up the top level navigation.
Reviewed By: passy
Differential Revision: D25531718
fbshipit-source-id: ca0f98186e889e13cb97be8818db3588738e5039
Summary:
Introduced API to replace the deprecated `selectPlugin` in Sandy.
The API can be used to navigate from `device plugin -> device plugin`, or` client plugin -> device / client plugin`
Introduced `isPluginAvailable` as well, so that the user interaction an be fine tuned in case the plugin is not disabled.
Reviewed By: jknoxville
Differential Revision: D25422370
fbshipit-source-id: c6c603f1c68e6291280b3d0883e474448754ded1
Summary: When exposing new top-level APIs from `flipper-plugin`, they should be documented. Added a unit test to enforce this and added documentation for all missing APIs.
Reviewed By: passy
Differential Revision: D25421401
fbshipit-source-id: f5cafc1881de846c8a5dd86e5d094ebd27a66f2a
Summary: In the Flipper chrome there is a lot of `logger={logger}` prop drilling. Let's not do that anymore in the future by using a proper hook, which is exposed from `flipper-plugin`.
Reviewed By: passy
Differential Revision: D25421304
fbshipit-source-id: 01ec8563c67f7e2fac359c2f8216eba722bff8d9
Summary:
This replaces the existing "FB Internals" troubleshooting" page with a redirect to the now single troubleshooting page, to make sure no links break.
It copies the content of that internal page into an internal-troubleshooting.mdx file, that isn't in any sidebars.
And it gets the main troubleshooting page to include that page, when doing an internal build. So now we only have one troubleshooting page.
Reviewed By: passy
Differential Revision: D25372552
fbshipit-source-id: 1a310ca1a4a21683d6074d480e819e5af40c8af2
Summary: Make sure that GKs can be used in pure sandy plugins.
Reviewed By: jknoxville
Differential Revision: D25368358
fbshipit-source-id: c7c6aa4ecf0443cb3b5d90e22e8aca9a73a69389
Summary:
Set up basic primitives for user interaction tracking. I hope the docs and unit tests in this diff are self explanatory :)
In upcoming diffs:
* Wire up to scuba events
* Annotate all important parts of Flipper Chrome
* Investigate if we can wrap important interactions of ANT by default
Reviewed By: jknoxville
Differential Revision: D25120234
fbshipit-source-id: 9849d565d7be27e498cc2b4db33e7d6e6938ee06
Summary: This updates the docs of Flipper to use Sandy, rather than `FlipperPlugin` class. Restructured the docs a bit as a result.
Reviewed By: passy
Differential Revision: D24991285
fbshipit-source-id: 66d5760c25cf9cf3983515433dfd64348d51db3d
Summary: Updated the scarf template to fix some urls, at `antd` by default, and avoid depending on `flipper-plugin`.
Reviewed By: cekkaewnumchai
Differential Revision: D24949452
fbshipit-source-id: 56b6628309d3cdf6c30acddf83dab6e493cd7c0e
Summary: expose `appName`, `appId` and `device` to Sandy plugins. Will be used in next diff to migrate navigation plugin
Reviewed By: cekkaewnumchai
Differential Revision: D24857253
fbshipit-source-id: 03ac3d376d5d1950bcf3d78386a65ce167b517e3
Summary: Moved docs outside of FBInternal docs. Will make Sandy APIs the default in the docs soon, and move the links to the proper location, but this at least makes sure we can already link to the correct place in WP announcements
Reviewed By: jknoxville
Differential Revision: D24829287
fbshipit-source-id: 913f2db65a7cdd04bd1be47aebc48ece7a6cef04
Summary: Tried to sum up all solutions mentioned in https://github.com/facebook/react-native/issues/28503 for this recurring problem. The most common problem being simply opening the wrong file in XCode. From experience I can tell this is not obvious for iOS noobs like me :-P.
Reviewed By: passy
Differential Revision: D24359426
fbshipit-source-id: bb4d4951ac287ed2b09203e5414f62628a3feeb0
Summary:
Fixes the typo `Abritrary` in the docs which should be `Arbitrary` instead
## Changelog
Docs: Fixed the typo `AbritraryView` (now `ArbitraryView`)
Pull Request resolved: https://github.com/facebook/flipper/pull/1566
Test Plan: --
Reviewed By: cekkaewnumchai
Differential Revision: D24078448
Pulled By: passy
fbshipit-source-id: b2a1b58c9bff8684ed6cd6c7958a826480371fd2