Merge v5 into master
Highlights of this release
* Easier installation
* autolink and reac-native link support
* Shared Element Transition - reimplemented from scratch and new API
* [iOS] showModal animation api parity
* [Android] Animation values are now declared in dp
* [iOS] deprecate topBar.drawBehind
* [Android] RNN is migrating to Kotlin
closes #5904
Send componentType field in componentDidAppear and componentDidDisappear events.
The new field is either:
- TopBarButton
- TopBarTitle
- TopBarBackground
- Component
Add waitForRender options for setRoot animation and TopBar components
When set, the ui will become visible only after the root screen and TopBar components have been rendered.
Usage
Add the following to the root layout’s options, or to its child
```
animations: {
setRoot: {
waitForRender: true
}
}
```
TopBar components (Title, background, buttons) can be synced as well by adding `waitForRender: true`, for example:
```
component: {
name: 'navigation.playground.CustomTopBar',
alignment: 'center',
waitForRender: true,
}
```
Add YellowBoxed back to ReactRootViews before unmount
Apparently, UiImplementation doesn't like it when views disappear from hierarchy unexpectedly.
As yellow boxes are added to all ReactRootViews, we remove them from TopBar components.
When these components got unmounted, UiImplementation tried to remove the yellow box and since it
couldn't find it - it crashed.
This commit simply adds the yellow box before views are unmounted.
The wrong componentId was used to the Title's native react view, Since RNN
uses componentId to assign props to components, the component didn't get it's props.
* pass props for topBar background component
* refactored custom components
* pass props for topBar background component
* refactored custom components
* refactored RNNOptions object
* Use margin to control component position relative to TopBar
RelativeLayout rules caused excessive CPU usage due to issues with RN's
keyboard detection mechanism (based on global layout listener)
* Skip custom transition e2e on Android
* Improved the clarity of the top-level API doc (#2984)
I clarified some of the language here so that it is easier for the beginner to understand. (It was a little bit awkward before)
* Increase gradle daemon process memory
* Disable Orientation test on Android
* Fix SideMenu e2e
* Fix popTo
* Use margin instead of RelativeLayout rules to align component to BottomTabs
Rules caused excessive CPU usage due to RN issue with global layout listener
and keyboard visibility detection.
* Update README.md
for triggering build
* Update README.md
* Consolidate pop and animatePop
* Update top-level-api.md ... more copyediting. (#3002)
Further clarification of some of the top level API stuff.
* popTo animates top screen
* Refactor component options on Android
* Stop processing passProps from options
* removed comments
* Refactor TopBar options, introduce title options
* Update background to new api
* Refactored topBar options on iOS
* Initial react component in TitleBar android
* set height to react view in TitleBar
* fix tests and lint
* ios unit tests fix