From 224c3039c125d07ad53bae671d0b88452dcd27c7 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Sun, 19 Feb 2017 10:42:21 -0800 Subject: [PATCH 001/100] Add transition view classes --- src/views/Transition/TransitionItems.js | 141 ++++++++++++++++++++++++ src/views/Transition/TransitionView.js | 52 +++++++++ src/views/Transition/index.js | 7 ++ 3 files changed, 200 insertions(+) create mode 100644 src/views/Transition/TransitionItems.js create mode 100644 src/views/Transition/TransitionView.js create mode 100644 src/views/Transition/index.js diff --git a/src/views/Transition/TransitionItems.js b/src/views/Transition/TransitionItems.js new file mode 100644 index 0000000000..2b1b5d1a31 --- /dev/null +++ b/src/views/Transition/TransitionItems.js @@ -0,0 +1,141 @@ +// @flow +import React from 'react'; + +export type Metrics = { + x: number, + y: number, + width: number, + height: number, +} + +export class TransitionItem { + name: string; + containerRouteName: string; + reactElement: React.Element<*>; + nativeHandle: any; + metrics: ?Metrics; + constructor(name: string, containerRouteName: string, reactElement: React.Element<*>, nativeHandle: any, metrics:?Metrics) { + this.name = name; + this.containerRouteName = containerRouteName; + this.reactElement = reactElement; + this.nativeHandle = nativeHandle; + this.metrics = metrics; + } + clone() { + return new TransitionItem(this.name, this.containerRouteName, this.reactElement, this.nativeHandle, this.metrics); + } + toString() { + return `${this.name} ${this.containerRouteName} ${JSON.stringify(this.metrics)}`; + } +} + +type ItemPair = { + fromItem: TransitionItem, + toItem: TransitionItem, +}; + +export type UpdateRequest = { + name: string, + containerRouteName: string, + metrics: ?Metrics, +} + +class TransitionItems { + _items: Array; + constructor(items: Array = []) { + this._items = [...items]; + } + _findIndex(name: string, containerRouteName: string): number { + return this._items.findIndex(i => { + return i.name === name && i.containerRouteName === containerRouteName; + }); + } + count() { + return this._items.length; + } + add(item: TransitionItem): TransitionItems { + if (this._findIndex(item.name, item.containerRouteName) >= 0) + return this; + else { + return new TransitionItems([...this._items, item]); + } + } + remove(name: string, containerRouteName: string): TransitionItems { + const index = this._findIndex(name, containerRouteName); + if (index >= 0) { + const newItems = [...this._items.slice(0, index), ...this._items.slice(index + 1)]; + return new TransitionItems(newItems); + } else { + return this; + } + } + updateMetrics(requests: Array): TransitionItems { + const indexedRequests = requests.map(r => ({ + ...r, + index: this._findIndex(r.name, r.containerRouteName), + })); + + if (indexedRequests.every(r => r.index < 0)) return this; + else { + let newItems = Array.from(this._items); + indexedRequests.forEach(r => { + if (r.index >= 0) { + const newItem = newItems[r.index].clone(); + newItem.metrics = r.metrics; + newItems[r.index] = newItem; + } + }); + return new TransitionItems(newItems); + } + } + + removeAllMetrics(): TransitionItems { + if (this._items.some(i => !!i.metrics)) { + const newItems = this._items.map(item => { + const newItem = item.clone(); + newItem.metrics = null; + return newItem; + }); + return new TransitionItems(newItems); + } else return this; + } + _getNamePairMap(fromRoute: string, toRoute: string) { + //TODO cache the map. Since the object is immutable, no need to worry about updates to _items + const nameMap = this._items.reduce((map, item) => { + let pairByName = map.get(item.name); + if (!pairByName) { + pairByName = {}; + map.set(item.name, pairByName); + } + if (item.containerRouteName === fromRoute) pairByName.fromItem = item; + if (item.containerRouteName === toRoute) pairByName.toItem = item; + // delete empty pairs + if (!pairByName.fromItem && !pairByName.toItem) map.delete(item.name); + return map; + }, new Map()); + return nameMap; + } + isMeatured(p: ItemPair) { + const isNumber = n => typeof n === 'number'; + const metricsValid = (m: Metrics) => m && [m.x, m.y, m.width, m.height].every(isNumber); + const { fromItem, toItem } = p; + return fromItem && toItem + && metricsValid(fromItem.metrics) && metricsValid(toItem.metrics); + } + getMeasuredItemPairs(fromRoute: string, toRoute: string): Array { + const nameMap = this._getNamePairMap(fromRoute, toRoute); + // console.log('getMeasuredItemPairs.nameMap', Array.from(nameMap.values()).map(p => `fromItem:${p.fromItem ? p.fromItem.toString() : 'null'} toItem:${p.toItem ? p.toItem.toString() : 'null'}`)); + return Array.from(nameMap.values()) + .filter(this.isMeatured); + } + findMatchByName(name: string, routeToExclude: string): ?TransitionItem { + return this._items.find(i => i.name === name && i.containerRouteName !== routeToExclude); + } + areMetricsReadyForAllPairs(fromRoute: string, toRoute: string): boolean { + const nameMap = this._getNamePairMap(fromRoute, toRoute); + return Array.from(nameMap.values()) + .every(this.isMeatured); + } +} + +export default TransitionItems; \ No newline at end of file diff --git a/src/views/Transition/TransitionView.js b/src/views/Transition/TransitionView.js new file mode 100644 index 0000000000..2389ed3575 --- /dev/null +++ b/src/views/Transition/TransitionView.js @@ -0,0 +1,52 @@ +// @flow + +import React, { Component } from 'react'; +import { + View, + UIManager, + findNodeHandle, +} from 'react-native'; + +import { TransitionItem } from './TransitionItems'; + +class TransitionView extends Component { + _view: any; + static contextTypes = { + registerTransitionView: React.PropTypes.func, + unregisterTransitionView: React.PropTypes.func, + }; + render() { + // collapsable={false} is required for UIManager.measureInWindow to get the actual measurements + // instead of undefined, see https://github.com/facebook/react-native/issues/9382 + return ( + this._view = c}> + {this.props.children} + + ) + } + componentDidMount() { + const { registerTransitionView } = this.context; + if (!registerTransitionView) return; + + const { name, containerRouteName } = this.props; + const nativeHandle = findNodeHandle(this._view); + registerTransitionView(new TransitionItem + ( + name, + containerRouteName, + React.Children.only(this.props.children), + nativeHandle, + )); + } + + componentWillUnmount() { + const { unregisterTransitionView } = this.context; + if (!unregisterTransitionView) return; + + const { name, containerRouteName } = this.props; + unregisterTransitionView(name, containerRouteName); + } +} + +export default TransitionView; \ No newline at end of file diff --git a/src/views/Transition/index.js b/src/views/Transition/index.js new file mode 100644 index 0000000000..5141f9df0b --- /dev/null +++ b/src/views/Transition/index.js @@ -0,0 +1,7 @@ +import TransitionView from './TransitionView'; +import TransitionItems from './TransitionItems'; + +export default { + View: TransitionView, + Items: TransitionItems, +} \ No newline at end of file From cef903a81da4c43f49e80a0a47637b7e81490182 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Mon, 20 Feb 2017 13:44:24 -0800 Subject: [PATCH 002/100] Wrap SceneView in Transition.View --- src/views/SceneView.js | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/views/SceneView.js b/src/views/SceneView.js index 111a9b0c67..6c3eabab03 100644 --- a/src/views/SceneView.js +++ b/src/views/SceneView.js @@ -4,11 +4,13 @@ import React, { PureComponent } from 'react'; import type { NavigationScreenProp, - NavigationState, - NavigationRoute, - NavigationAction, + NavigationState, + NavigationRoute, + NavigationAction, } from '../TypeDefinition'; +import Transition from './Transition'; + type Props = { screenProps?: {}; navigation: NavigationScreenProp; @@ -48,11 +50,14 @@ export default class SceneView extends PureComponent { component: Component, } = this.props; + const routeName = navigation.state.routeName; return ( - + + + ); } } From 7768e996c0913b00dfc5f4292a04ed44cfcb586a Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Mon, 20 Feb 2017 13:44:57 -0800 Subject: [PATCH 003/100] TransitionView: clone as animated component --- src/views/Transition/TransitionView.js | 39 +++++++++++++++++++++----- 1 file changed, 32 insertions(+), 7 deletions(-) diff --git a/src/views/Transition/TransitionView.js b/src/views/Transition/TransitionView.js index 2389ed3575..e61191ad5c 100644 --- a/src/views/Transition/TransitionView.js +++ b/src/views/Transition/TransitionView.js @@ -5,10 +5,29 @@ import { View, UIManager, findNodeHandle, + Animated, } from 'react-native'; import { TransitionItem } from './TransitionItems'; +function cloneAsAnimatedComponent(element: React.Element<*>) { + const isStatefulComponent = type => type.prototype && typeof type.prototype.render === 'function'; + if (typeof element.type === 'function' && element.type.name !== 'AnimatedComponent') { + if (isStatefulComponent(element.type)) { + const type = Animated.createAnimatedComponent(element.type); + return React.createElement(type, element.props, element.props.children); + } else { + return ( + + {element} + + ); + } + } else { + return element; + } +} + class TransitionView extends Component { _view: any; static contextTypes = { @@ -18,24 +37,30 @@ class TransitionView extends Component { render() { // collapsable={false} is required for UIManager.measureInWindow to get the actual measurements // instead of undefined, see https://github.com/facebook/react-native/issues/9382 - return ( + /*return ( this._view = c}> - {this.props.children} + ref={c => this._view = c} style={{ flex: 1 }}> + {this._getAnimatedChild()} - ) + )*/ + return this._getAnimatedChild(); } + + _getAnimatedChild() { + return cloneAsAnimatedComponent(React.Children.only(this.props.children)); + } + componentDidMount() { const { registerTransitionView } = this.context; if (!registerTransitionView) return; - const { name, containerRouteName } = this.props; + const { id, containerRouteName } = this.props; const nativeHandle = findNodeHandle(this._view); registerTransitionView(new TransitionItem ( - name, + id, containerRouteName, - React.Children.only(this.props.children), + this._getAnimatedChild(), nativeHandle, )); } From 51c2e8f715f9b9ef48a6bafd8dec7cbd073b5404 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 07:17:07 -0800 Subject: [PATCH 004/100] SceneView: Revert to master --- src/views/SceneView.js | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/src/views/SceneView.js b/src/views/SceneView.js index 6c3eabab03..111a9b0c67 100644 --- a/src/views/SceneView.js +++ b/src/views/SceneView.js @@ -4,13 +4,11 @@ import React, { PureComponent } from 'react'; import type { NavigationScreenProp, - NavigationState, - NavigationRoute, - NavigationAction, + NavigationState, + NavigationRoute, + NavigationAction, } from '../TypeDefinition'; -import Transition from './Transition'; - type Props = { screenProps?: {}; navigation: NavigationScreenProp; @@ -50,14 +48,11 @@ export default class SceneView extends PureComponent { component: Component, } = this.props; - const routeName = navigation.state.routeName; return ( - - - + ); } } From e5163f8d91b1dda41d56794d0b746ec51f607413 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 07:44:33 -0800 Subject: [PATCH 005/100] Add a crossfade transition to playground --- examples/NavigationPlayground/js/App.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/examples/NavigationPlayground/js/App.js b/examples/NavigationPlayground/js/App.js index 6f8129d13c..6a3d4ca5a5 100644 --- a/examples/NavigationPlayground/js/App.js +++ b/examples/NavigationPlayground/js/App.js @@ -87,6 +87,21 @@ const MainScreen = ({ navigation }) => ( ); +const CrossFade = () => ({ + createAnimatedStyles(transitionProps) { + const {position, scene:{index}} = transitionProps; + const opacity = position.interpolate({ + inputRange: [index-1, index, index+1], + outputRange: [0, 1, 0], + }); + return { opacity }; + } +}); + +const transitions = [ + {from: 'Index', to: 'SimpleStack', transition: CrossFade()}, +] + const AppNavigator = StackNavigator({ ...ExampleRoutes, Index: { @@ -101,6 +116,7 @@ const AppNavigator = StackNavigator({ * which conflicts with the drawer example gesture */ mode: Platform.OS === 'ios' ? 'modal' : 'card', + transitions, }); export default () => ; From 4b9babd94ebc5647ced6cd18424657e2206ed433 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 07:45:54 -0800 Subject: [PATCH 006/100] Convert Card to Transition.View --- src/navigators/StackNavigator.js | 2 ++ src/views/Card.js | 22 ++++++++++++++++++++-- src/views/CardStack.js | 7 +++++-- 3 files changed, 27 insertions(+), 4 deletions(-) diff --git a/src/navigators/StackNavigator.js b/src/navigators/StackNavigator.js index 0b9b702788..b0bbab46a5 100644 --- a/src/navigators/StackNavigator.js +++ b/src/navigators/StackNavigator.js @@ -31,6 +31,7 @@ export default (routeConfigMap: NavigationRouteConfigMap, stackConfig: StackNavi onTransitionStart, onTransitionEnd, navigationOptions, + transitions, } = stackConfig; const stackRouterConfig = { initialRouteName, @@ -48,6 +49,7 @@ export default (routeConfigMap: NavigationRouteConfigMap, stackConfig: StackNavi cardStyle={cardStyle} onTransitionStart={onTransitionStart} onTransitionEnd={onTransitionEnd} + transitionConfigs={transitions || []} /> )), containerOptions); }; diff --git a/src/views/Card.js b/src/views/Card.js index b695958a87..cb73e9bc99 100644 --- a/src/views/Card.js +++ b/src/views/Card.js @@ -11,6 +11,7 @@ import CardStackPanResponder from './CardStackPanResponder'; import CardStackStyleInterpolator from './CardStackStyleInterpolator'; import createPointerEventsContainer from './PointerEventsContainer'; import NavigationPropTypes from '../PropTypes'; +import Transition from './Transition'; import type { NavigationPanHandlers, @@ -43,6 +44,22 @@ class Card extends React.Component { style: PropTypes.any, }; + static childContextTypes = { + transitionProps: React.PropTypes.object.isRequired, + transitionConfigs: React.PropTypes.array.isRequired, + routeName: React.PropTypes.string.isRequired, + }; + + props: Props; + + getChildContext() { + return { + transitionProps: this.props.transitionProps, + transitionConfigs: this.props.transitionConfigs, + routeName: this.props.scene.route.routeName, + }; + } + render() { const { panHandlers, @@ -64,14 +81,15 @@ class Card extends React.Component { panHandlers; return ( - {renderScene(props)} - + ); } } diff --git a/src/views/CardStack.js b/src/views/CardStack.js index 127253e33a..b670283ffc 100644 --- a/src/views/CardStack.js +++ b/src/views/CardStack.js @@ -338,8 +338,9 @@ class CardStack extends Component { const isModal = this.props.mode === 'modal'; /* $FlowFixMe */ - const { screenInterpolator } = this._getTransitionConfig(); - const style = screenInterpolator && screenInterpolator(props); + // const { screenInterpolator } = this._getTransitionConfig(); + // const style = screenInterpolator && screenInterpolator(props); + const style = null; let panHandlers = null; @@ -369,6 +370,8 @@ class CardStack extends Component { panHandlers={panHandlers} renderScene={(sceneProps: *) => this._renderInnerCard(SceneComponent, sceneProps)} style={[style, this.props.cardStyle]} + transitionProps={props} + transitionConfigs={this.props.transitionConfigs} /> ); } From 7f786e0b6495eb89f9d9580822b30ad6e2c783b4 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 07:46:16 -0800 Subject: [PATCH 007/100] Add builtin transition components --- .../Transition/createTransitionComponent.js | 101 ++++++++++++++++++ src/views/Transition/index.js | 9 +- 2 files changed, 109 insertions(+), 1 deletion(-) create mode 100644 src/views/Transition/createTransitionComponent.js diff --git a/src/views/Transition/createTransitionComponent.js b/src/views/Transition/createTransitionComponent.js new file mode 100644 index 0000000000..c73aa47674 --- /dev/null +++ b/src/views/Transition/createTransitionComponent.js @@ -0,0 +1,101 @@ +// @flow + +import React from 'react'; +import { + View, + UIManager, + findNodeHandle, + Animated, +} from 'react-native'; + +import { TransitionItem } from './TransitionItems'; +import TransitionConfigs from '../TransitionConfigs'; + +const statefulize = Component => { + class Statefulized extends React.Component { + render() { return ; } + } + return Statefulized; +}; + +const createAnimatedComponent = Component => { + const isStatelessComponent = type => type.prototype && !!!type.prototype.render; + let C = Component; + if (isStatelessComponent(Component)) { + C = statefulize(Component); + } + return Animated.createAnimatedComponent(C); +}; + +function findTransitionConfig(transitionProps, transitionConfigs) { + // TODO return transitionConfig by from/to route + return transitionConfigs && transitionConfigs[0]; +} + +function createAnimatedStyle(transitionProps, transitionConfigs) { + const config = findTransitionConfig(transitionProps, transitionConfigs); + return (config + ? config.transition.createAnimatedStyles(transitionProps) + : TransitionConfigs.defaultTransitionConfig(transitionProps).screenInterpolator(transitionProps)); +} + +function createTransitionComponent(Component) { + class TransitionComponent extends React.Component { + _component: any; + static contextTypes = { + registerTransitionView: React.PropTypes.func, + unregisterTransitionView: React.PropTypes.func, + transitionProps: React.PropTypes.object, + transitionConfigs: React.PropTypes.array, + routeName: React.PropTypes.string, + }; + + // This is needed to pass the invariant in PointerEventsContainer + setNativeProps(props) { + this._component.setNativeProps(props); + } + + render() { + // collapsable={false} is required for UIManager.measureInWindow to get the actual measurements + // instead of undefined, see https://github.com/facebook/react-native/issues/9382 + /*return ( + this._component = c} style={{ flex: 1 }}> + {this._getAnimatedChild()} + + )*/ + const {id, ...rest} = this.props; + const {routeName, transitionProps, transitionConfigs} = this.context; + const AnimatedComponent = createAnimatedComponent(Component); + return ( + this._component = c} + style={[this.props.style, createAnimatedStyle(transitionProps, transitionConfigs)]} + /> + ); + } + + componentDidMount() { + const { registerTransitionView } = this.context; + if (!registerTransitionView) return; + + const nativeHandle = findNodeHandle(this._component); + registerTransitionView(new TransitionItem + ( + this.props.id, + this.context.routeName, + this.render(), + nativeHandle, + )); + } + + componentWillUnmount() { + const { unregisterTransitionView } = this.context; + if (!unregisterTransitionView) return; + + unregisterTransitionView(this.props.id, this.context.routeName); + } + } + return TransitionComponent; +} + +export default createTransitionComponent; \ No newline at end of file diff --git a/src/views/Transition/index.js b/src/views/Transition/index.js index 5141f9df0b..bd73a5c350 100644 --- a/src/views/Transition/index.js +++ b/src/views/Transition/index.js @@ -1,7 +1,14 @@ +import { + View, + Image, +} from 'react-native'; import TransitionView from './TransitionView'; import TransitionItems from './TransitionItems'; +import createTransitionComponent from './createTransitionComponent'; export default { - View: TransitionView, + View: createTransitionComponent(View), + Image: createTransitionComponent(Image), Items: TransitionItems, + createTransitionComponent, } \ No newline at end of file From 750a3f004568c8f2479d576b66a7e70559b21462 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 07:49:18 -0800 Subject: [PATCH 008/100] Remove TransitionView --- src/views/Transition/TransitionView.js | 77 -------------------------- src/views/Transition/index.js | 1 - 2 files changed, 78 deletions(-) delete mode 100644 src/views/Transition/TransitionView.js diff --git a/src/views/Transition/TransitionView.js b/src/views/Transition/TransitionView.js deleted file mode 100644 index e61191ad5c..0000000000 --- a/src/views/Transition/TransitionView.js +++ /dev/null @@ -1,77 +0,0 @@ -// @flow - -import React, { Component } from 'react'; -import { - View, - UIManager, - findNodeHandle, - Animated, -} from 'react-native'; - -import { TransitionItem } from './TransitionItems'; - -function cloneAsAnimatedComponent(element: React.Element<*>) { - const isStatefulComponent = type => type.prototype && typeof type.prototype.render === 'function'; - if (typeof element.type === 'function' && element.type.name !== 'AnimatedComponent') { - if (isStatefulComponent(element.type)) { - const type = Animated.createAnimatedComponent(element.type); - return React.createElement(type, element.props, element.props.children); - } else { - return ( - - {element} - - ); - } - } else { - return element; - } -} - -class TransitionView extends Component { - _view: any; - static contextTypes = { - registerTransitionView: React.PropTypes.func, - unregisterTransitionView: React.PropTypes.func, - }; - render() { - // collapsable={false} is required for UIManager.measureInWindow to get the actual measurements - // instead of undefined, see https://github.com/facebook/react-native/issues/9382 - /*return ( - this._view = c} style={{ flex: 1 }}> - {this._getAnimatedChild()} - - )*/ - return this._getAnimatedChild(); - } - - _getAnimatedChild() { - return cloneAsAnimatedComponent(React.Children.only(this.props.children)); - } - - componentDidMount() { - const { registerTransitionView } = this.context; - if (!registerTransitionView) return; - - const { id, containerRouteName } = this.props; - const nativeHandle = findNodeHandle(this._view); - registerTransitionView(new TransitionItem - ( - id, - containerRouteName, - this._getAnimatedChild(), - nativeHandle, - )); - } - - componentWillUnmount() { - const { unregisterTransitionView } = this.context; - if (!unregisterTransitionView) return; - - const { name, containerRouteName } = this.props; - unregisterTransitionView(name, containerRouteName); - } -} - -export default TransitionView; \ No newline at end of file diff --git a/src/views/Transition/index.js b/src/views/Transition/index.js index bd73a5c350..6fd8663d36 100644 --- a/src/views/Transition/index.js +++ b/src/views/Transition/index.js @@ -2,7 +2,6 @@ import { View, Image, } from 'react-native'; -import TransitionView from './TransitionView'; import TransitionItems from './TransitionItems'; import createTransitionComponent from './createTransitionComponent'; From 91d0fe48a5fd59b2c48e6af123093d18105a5b2a Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 07:52:37 -0800 Subject: [PATCH 009/100] Remove original animated style assigned to Card --- src/views/CardStack.js | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/views/CardStack.js b/src/views/CardStack.js index b670283ffc..89159deda1 100644 --- a/src/views/CardStack.js +++ b/src/views/CardStack.js @@ -337,11 +337,6 @@ class CardStack extends Component { _renderScene(props: NavigationSceneRendererProps): React.Element<*> { const isModal = this.props.mode === 'modal'; - /* $FlowFixMe */ - // const { screenInterpolator } = this._getTransitionConfig(); - // const style = screenInterpolator && screenInterpolator(props); - const style = null; - let panHandlers = null; if (this.props.gesturesEnabled) { @@ -369,7 +364,7 @@ class CardStack extends Component { key={`card_${props.scene.key}`} panHandlers={panHandlers} renderScene={(sceneProps: *) => this._renderInnerCard(SceneComponent, sceneProps)} - style={[style, this.props.cardStyle]} + style={this.props.cardStyle} transitionProps={props} transitionConfigs={this.props.transitionConfigs} /> From 098f161901c7cb166a297c51cf176666b5456c67 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 08:39:49 -0800 Subject: [PATCH 010/100] Use prevRouteName and routeName to find transition --- src/views/Card.js | 8 +++----- src/views/CardStack.js | 10 +++++++--- .../Transition/createTransitionComponent.js | 20 +++++++++---------- 3 files changed, 20 insertions(+), 18 deletions(-) diff --git a/src/views/Card.js b/src/views/Card.js index cb73e9bc99..917506544f 100644 --- a/src/views/Card.js +++ b/src/views/Card.js @@ -48,6 +48,7 @@ class Card extends React.Component { transitionProps: React.PropTypes.object.isRequired, transitionConfigs: React.PropTypes.array.isRequired, routeName: React.PropTypes.string.isRequired, + prevRouteName: React.PropTypes.string, }; props: Props; @@ -57,6 +58,7 @@ class Card extends React.Component { transitionProps: this.props.transitionProps, transitionConfigs: this.props.transitionConfigs, routeName: this.props.scene.route.routeName, + prevRouteName: this.props.prevRouteName, }; } @@ -69,10 +71,6 @@ class Card extends React.Component { ...props /* NavigationSceneRendererProps */ } = this.props; - const viewStyle = style === undefined ? - CardStackStyleInterpolator.forHorizontal(props) : - style; - const viewPanHandlers = panHandlers === undefined ? CardStackPanResponder.forHorizontal({ ...props, @@ -86,7 +84,7 @@ class Card extends React.Component { {...viewPanHandlers} pointerEvents={pointerEvents} ref={this.props.onComponentRef} - style={[styles.main, viewStyle]} + style={styles.main} > {renderScene(props)} diff --git a/src/views/CardStack.js b/src/views/CardStack.js index 89159deda1..67834d5675 100644 --- a/src/views/CardStack.js +++ b/src/views/CardStack.js @@ -236,12 +236,15 @@ class CardStack extends Component { ); } - _render(props: NavigationTransitionProps): React.Element<*> { + _render( + props: NavigationTransitionProps, + prevTransitionProps:NavigationTransitionProps): React.Element<*> { let floatingHeader = null; const headerMode = this._getHeaderMode(); if (headerMode === 'float') { floatingHeader = this._renderHeader(props, headerMode); } + const prevRouteName = prevTransitionProps && prevTransitionProps.scene.route.routeName; return ( { ...props, scene, navigation: this._getChildNavigation(scene), - }) + }, prevRouteName) )} {floatingHeader} @@ -334,7 +337,7 @@ class CardStack extends Component { return navigation; } - _renderScene(props: NavigationSceneRendererProps): React.Element<*> { + _renderScene(props: NavigationSceneRendererProps, prevRouteName: string): React.Element<*> { const isModal = this.props.mode === 'modal'; let panHandlers = null; @@ -367,6 +370,7 @@ class CardStack extends Component { style={this.props.cardStyle} transitionProps={props} transitionConfigs={this.props.transitionConfigs} + prevRouteName={prevRouteName} /> ); } diff --git a/src/views/Transition/createTransitionComponent.js b/src/views/Transition/createTransitionComponent.js index c73aa47674..bd815698b8 100644 --- a/src/views/Transition/createTransitionComponent.js +++ b/src/views/Transition/createTransitionComponent.js @@ -27,16 +27,14 @@ const createAnimatedComponent = Component => { return Animated.createAnimatedComponent(C); }; -function findTransitionConfig(transitionProps, transitionConfigs) { - // TODO return transitionConfig by from/to route - return transitionConfigs && transitionConfigs[0]; +function findTransitionConfig(transitionConfigs: Array<*>, routeName: string, prevRouteName: string) { + return transitionConfigs.find(c => c.from === prevRouteName && c.to === routeName); } -function createAnimatedStyle(transitionProps, transitionConfigs) { - const config = findTransitionConfig(transitionProps, transitionConfigs); - return (config - ? config.transition.createAnimatedStyles(transitionProps) - : TransitionConfigs.defaultTransitionConfig(transitionProps).screenInterpolator(transitionProps)); +function createAnimatedStyle(transitionProps, transitionConfig) { + return (transitionConfig + ? transitionConfig.transition.createAnimatedStyles(transitionProps) + : TransitionConfigs.defaultTransitionConfig(transitionProps).screenInterpolator(transitionProps)); } function createTransitionComponent(Component) { @@ -48,6 +46,7 @@ function createTransitionComponent(Component) { transitionProps: React.PropTypes.object, transitionConfigs: React.PropTypes.array, routeName: React.PropTypes.string, + prevRouteName: React.PropTypes.string, }; // This is needed to pass the invariant in PointerEventsContainer @@ -65,11 +64,12 @@ function createTransitionComponent(Component) { )*/ const {id, ...rest} = this.props; - const {routeName, transitionProps, transitionConfigs} = this.context; + const {routeName, prevRouteName, transitionProps, transitionConfigs} = this.context; + const transitionConfig = findTransitionConfig(transitionConfigs, routeName, prevRouteName); const AnimatedComponent = createAnimatedComponent(Component); return ( this._component = c} - style={[this.props.style, createAnimatedStyle(transitionProps, transitionConfigs)]} + style={[this.props.style, createAnimatedStyle(transitionProps, transitionConfig)]} /> ); } From d35ee95789a3da47c5fa71d26fe6bf672fae8fc7 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 08:48:55 -0800 Subject: [PATCH 011/100] Revert "Add a crossfade transition to playground" This reverts commit e5163f8d91b1dda41d56794d0b746ec51f607413. --- examples/NavigationPlayground/js/App.js | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/examples/NavigationPlayground/js/App.js b/examples/NavigationPlayground/js/App.js index 6a3d4ca5a5..6f8129d13c 100644 --- a/examples/NavigationPlayground/js/App.js +++ b/examples/NavigationPlayground/js/App.js @@ -87,21 +87,6 @@ const MainScreen = ({ navigation }) => ( ); -const CrossFade = () => ({ - createAnimatedStyles(transitionProps) { - const {position, scene:{index}} = transitionProps; - const opacity = position.interpolate({ - inputRange: [index-1, index, index+1], - outputRange: [0, 1, 0], - }); - return { opacity }; - } -}); - -const transitions = [ - {from: 'Index', to: 'SimpleStack', transition: CrossFade()}, -] - const AppNavigator = StackNavigator({ ...ExampleRoutes, Index: { @@ -116,7 +101,6 @@ const AppNavigator = StackNavigator({ * which conflicts with the drawer example gesture */ mode: Platform.OS === 'ios' ? 'modal' : 'card', - transitions, }); export default () => ; From 99212c5186efe92572903bb60e160976aec027d1 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 10:01:50 -0800 Subject: [PATCH 012/100] Add initial shared element transition example to playground --- .../Transitions/SharedElements/PhotoDetail.js | 60 +++++++++++ .../Transitions/SharedElements/PhotoGrid.js | 96 ++++++++++++++++++ .../Transitions/SharedElements/Touchable.js | 15 +++ .../SharedElements/images/img1.jpg | Bin 0 -> 16666 bytes .../SharedElements/images/img10.jpg | Bin 0 -> 28416 bytes .../SharedElements/images/img11.jpg | Bin 0 -> 51243 bytes .../SharedElements/images/img12.jpg | Bin 0 -> 13391 bytes .../SharedElements/images/img2.jpg | Bin 0 -> 14931 bytes .../SharedElements/images/img3.jpg | Bin 0 -> 20067 bytes .../SharedElements/images/img4.jpg | Bin 0 -> 22594 bytes .../SharedElements/images/img5.jpg | Bin 0 -> 34177 bytes .../SharedElements/images/img6.jpg | Bin 0 -> 18650 bytes .../SharedElements/images/img7.jpg | Bin 0 -> 18415 bytes .../SharedElements/images/img8.jpg | Bin 0 -> 39321 bytes .../SharedElements/images/img9.jpg | Bin 0 -> 13433 bytes .../js/Transitions/SharedElements/index.js | 39 +++++++ .../js/Transitions/index.js | 4 + 17 files changed, 214 insertions(+) create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/PhotoDetail.js create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/PhotoGrid.js create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/Touchable.js create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/images/img1.jpg create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/images/img10.jpg create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/images/img11.jpg create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/images/img12.jpg create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/images/img2.jpg create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/images/img3.jpg create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/images/img4.jpg create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/images/img5.jpg create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/images/img6.jpg create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/images/img7.jpg create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/images/img8.jpg create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/images/img9.jpg create mode 100644 examples/NavigationPlayground/js/Transitions/SharedElements/index.js create mode 100644 examples/NavigationPlayground/js/Transitions/index.js diff --git a/examples/NavigationPlayground/js/Transitions/SharedElements/PhotoDetail.js b/examples/NavigationPlayground/js/Transitions/SharedElements/PhotoDetail.js new file mode 100644 index 0000000000..fc50b05529 --- /dev/null +++ b/examples/NavigationPlayground/js/Transitions/SharedElements/PhotoDetail.js @@ -0,0 +1,60 @@ +// @flow +import React, { Component } from 'react'; +import { + View, + ScrollView, + Image, + StyleSheet, + Animated, + Dimensions, + Text, + Easing, +} from 'react-native'; + +import { Transition } from 'react-navigation'; + +import Touchable from './Touchable'; + +const { width: windowWidth } = Dimensions.get("window"); + +const PhotoDetail = (props) => { + const { photo } = props.navigation.state.params; + const { url, title, description, image } = photo; + const openMoreDetails = photo => props.navigation.navigate('PhotoMoreDetail', { photo }); + return ( + + + + openMoreDetails(photo)}> + + + + + {title} + {description} + + + + ) +}; + +PhotoDetail.navigationOptions = { + title: 'Photo Detail' +} + +const styles = StyleSheet.create({ + image: { + width: windowWidth, + height: windowWidth / 2, + }, + title: { + fontSize: 35, + fontWeight: 'bold', + }, + text: { + margin: 15, + } +}) + +export default PhotoDetail; \ No newline at end of file diff --git a/examples/NavigationPlayground/js/Transitions/SharedElements/PhotoGrid.js b/examples/NavigationPlayground/js/Transitions/SharedElements/PhotoGrid.js new file mode 100644 index 0000000000..2b9c601640 --- /dev/null +++ b/examples/NavigationPlayground/js/Transitions/SharedElements/PhotoGrid.js @@ -0,0 +1,96 @@ +// @flow +import React, { Component } from 'react'; +import { + ListView, + Image, + View, + Text, + Dimensions, + StyleSheet, +} from 'react-native'; +import faker from 'faker'; +import _ from 'lodash'; + +import { Transition } from 'react-navigation'; +import Touchable from './Touchable'; + +const ds = new ListView.DataSource({ + rowHasChanged: (r1, r2) => r1 !== r2, +}); + +const images = [ + require('./images/img1.jpg'), + require('./images/img2.jpg'), + require('./images/img3.jpg'), + require('./images/img4.jpg'), + require('./images/img5.jpg'), + require('./images/img6.jpg'), + require('./images/img7.jpg'), + require('./images/img8.jpg'), + require('./images/img9.jpg'), + require('./images/img10.jpg'), + require('./images/img11.jpg'), + require('./images/img12.jpg'), +] + +const photos = Array(50).fill(0).map(_ => ({ + url: faker.image.animals(500, 500, true), + image: images[faker.random.number(images.length - 1)], + title: faker.name.findName(), + description: faker.lorem.paragraphs(4), +})); + +const colCount = 3; + +const { width: windowWidth } = Dimensions.get("window"); +const margin = 2; +const photoWidth = (windowWidth - margin * colCount * 2) / colCount; + +const photoRows = _.chunk(photos, colCount); +console.log('=========> Transition', Transition); + +class PhotoGrid extends Component { + static navigationOptions = { + title: 'Photo Grid' + } + render() { + return ( + ); + } + renderRow(photos) { + return ( + + {photos.map(this.renderCell.bind(this))} + + ) + } + renderCell(photo) { + const onPhotoPressed = photo => this.props.navigation.navigate('PhotoDetail', { photo }); + return ( + onPhotoPressed(photo)} key={photo.url}> + + + + + ) + } +} + +const styles = StyleSheet.create({ + row: { + flexDirection: 'row', + }, + cell: { + margin: 2, + }, + image: { + width: photoWidth, + height: photoWidth, + } +}) + +export default PhotoGrid; \ No newline at end of file diff --git a/examples/NavigationPlayground/js/Transitions/SharedElements/Touchable.js b/examples/NavigationPlayground/js/Transitions/SharedElements/Touchable.js new file mode 100644 index 0000000000..89e3edc0c9 --- /dev/null +++ b/examples/NavigationPlayground/js/Transitions/SharedElements/Touchable.js @@ -0,0 +1,15 @@ +import React from 'react'; +import { + TouchableNativeFeedback, + TouchableOpacity, + Platform, +} from 'react-native'; + +const Touchable = props => { + const Comp = (Platform.OS === 'android' + ? TouchableNativeFeedback + : TouchableOpacity); + return +} + +export default Touchable; diff --git a/examples/NavigationPlayground/js/Transitions/SharedElements/images/img1.jpg b/examples/NavigationPlayground/js/Transitions/SharedElements/images/img1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c8d747db2d0ca672be2e87ed1a42f140531aff44 GIT binary patch literal 16666 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 TrDL`UrL1-1W*tZ_AFKZtO6|Dp literal 0 HcmV?d00001 diff --git a/examples/NavigationPlayground/js/Transitions/SharedElements/images/img10.jpg b/examples/NavigationPlayground/js/Transitions/SharedElements/images/img10.jpg new file mode 100644 index 0000000000000000000000000000000000000000..cc1f224a6efb25ae57ad597699277cdae54ef9f2 GIT binary patch literal 28416 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 dwkkAi>=&xCFNl+${tM8VDYOemv)#wa)vk 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 literal 0 HcmV?d00001 diff --git a/examples/NavigationPlayground/js/Transitions/SharedElements/images/img3.jpg b/examples/NavigationPlayground/js/Transitions/SharedElements/images/img3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..919ba718cd8c804996db17daf2adb6253c45ee69 GIT binary patch literal 20067 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
*OtDSDGUSsR?>BccCo~aSyyn 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¨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 =4`4BzwzLts>;B9M4Ny+#}mD9)9 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 I!~V1X*;vMnD*ylh literal 0 HcmV?d00001 diff --git a/examples/NavigationPlayground/js/Transitions/SharedElements/images/img7.jpg b/examples/NavigationPlayground/js/Transitions/SharedElements/images/img7.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e24973c29d41848d54800c8a0331e07275c5b113 GIT binary patch literal 18415 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 ({ + cloneOnOverlay(transitionItem) { return true; }, + createAnimatedStyles(items) {} +}); + +const CrossFade = () => ({ + createAnimatedStyles(transitionProps) { + const {position, scene:{index}} = transitionProps; + const opacity = position.interpolate({ + inputRange: [index-1, index, index+1], + outputRange: [0, 1, 0], + }); + return { opacity }; + } +}) + +const transitions = [ + {from: 'PhotoGrid', to: 'PhotoDetail', transition: CrossFade() } +]; + +const App = StackNavigator({ + PhotoGrid: { + screen: PhotoGrid, + }, + PhotoDetail: { + screen: PhotoDetail, + } +}, { + transitions, +}); + +export default App; \ No newline at end of file diff --git a/examples/NavigationPlayground/js/Transitions/index.js b/examples/NavigationPlayground/js/Transitions/index.js new file mode 100644 index 0000000000..5540757c5b --- /dev/null +++ b/examples/NavigationPlayground/js/Transitions/index.js @@ -0,0 +1,4 @@ +import SharedElements from './SharedElements'; + +// TODO export a navigator +export default SharedElements; \ No newline at end of file From 255e2a7a149e00475a912e07e108c6d528630891 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 10:02:12 -0800 Subject: [PATCH 013/100] Add Transition.Text --- src/views/Transition/index.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/views/Transition/index.js b/src/views/Transition/index.js index 6fd8663d36..1fa78c8910 100644 --- a/src/views/Transition/index.js +++ b/src/views/Transition/index.js @@ -1,6 +1,7 @@ import { View, Image, + Text, } from 'react-native'; import TransitionItems from './TransitionItems'; import createTransitionComponent from './createTransitionComponent'; @@ -8,6 +9,6 @@ import createTransitionComponent from './createTransitionComponent'; export default { View: createTransitionComponent(View), Image: createTransitionComponent(Image), - Items: TransitionItems, + Text: createTransitionComponent(Text), createTransitionComponent, } \ No newline at end of file From f2ea7f999ef85ba689d441e0a3bead347b98bc08 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 10:02:26 -0800 Subject: [PATCH 014/100] Export Transition --- src/react-navigation.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/react-navigation.js b/src/react-navigation.js index 014561205d..0cd1c5ba23 100644 --- a/src/react-navigation.js +++ b/src/react-navigation.js @@ -29,4 +29,6 @@ module.exports = { // HOCs get withNavigation() { return require('./views/withNavigation').default; }, + + get Transition() { return require('./views/Transition').default; }, }; From 7378a541b9d03f955c5ee343c4f58510544eb717 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 10:04:13 -0800 Subject: [PATCH 015/100] Add faker dependency --- examples/NavigationPlayground/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/NavigationPlayground/package.json b/examples/NavigationPlayground/package.json index e76d22934e..10856e470d 100644 --- a/examples/NavigationPlayground/package.json +++ b/examples/NavigationPlayground/package.json @@ -5,6 +5,7 @@ "dependencies": { "@exponent/vector-icons": "~4.0.0", "exponent": "~13.1.0", + "faker": "^4.0.0", "react": "~15.4.2", "react-native": "github:exponent/react-native#sdk-13.0.0", "react-native-vector-icons": "^4.0.0" From 312ef2d778f2b74ed40859bee0c103e1e6534152 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 10:05:00 -0800 Subject: [PATCH 016/100] Temporary: Use Transition examples as Playground entry --- examples/NavigationPlayground/js/App.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/examples/NavigationPlayground/js/App.js b/examples/NavigationPlayground/js/App.js index 6f8129d13c..645f99862a 100644 --- a/examples/NavigationPlayground/js/App.js +++ b/examples/NavigationPlayground/js/App.js @@ -19,6 +19,7 @@ import ModalStack from './ModalStack'; import StacksInTabs from './StacksInTabs'; import SimpleStack from './SimpleStack'; import SimpleTabs from './SimpleTabs'; +import Transitions from './Transitions'; const ExampleRoutes = { SimpleStack: { @@ -103,7 +104,8 @@ const AppNavigator = StackNavigator({ mode: Platform.OS === 'ios' ? 'modal' : 'card', }); -export default () => ; +// export default () => ; +export default Transitions; // TODO change it back const styles = StyleSheet.create({ item: { From 2955f0ad8d332951e387c27d8f2011f6ff5ab5a3 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 10:05:40 -0800 Subject: [PATCH 017/100] Update yarn.lock as the result of "yarn add faker" --- examples/NavigationPlayground/yarn.lock | 163 ++++++++++++------------ 1 file changed, 83 insertions(+), 80 deletions(-) diff --git a/examples/NavigationPlayground/yarn.lock b/examples/NavigationPlayground/yarn.lock index 98f78e88f4..6fcf2258fb 100644 --- a/examples/NavigationPlayground/yarn.lock +++ b/examples/NavigationPlayground/yarn.lock @@ -1,7 +1,5 @@ # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. # yarn lockfile v1 - - "@exponent/vector-icons@~4.0.0": version "4.0.0" resolved "https://registry.yarnpkg.com/@exponent/vector-icons/-/vector-icons-4.0.0.tgz#772edabd5ad36472d29364729d62b928f4ca2d91" @@ -428,7 +426,7 @@ babel-plugin-transform-es2015-computed-properties@^6.5.0, babel-plugin-transform babel-runtime "^6.22.0" babel-template "^6.22.0" -babel-plugin-transform-es2015-destructuring@6.x, babel-plugin-transform-es2015-destructuring@^6.5.0, babel-plugin-transform-es2015-destructuring@^6.6.5, babel-plugin-transform-es2015-destructuring@^6.8.0: +babel-plugin-transform-es2015-destructuring@^6.5.0, babel-plugin-transform-es2015-destructuring@^6.6.5, babel-plugin-transform-es2015-destructuring@^6.8.0, babel-plugin-transform-es2015-destructuring@6.x: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.22.0.tgz#8e0af2f885a0b2cf999d47c4c1dd23ce88cfa4c6" dependencies: @@ -440,7 +438,7 @@ babel-plugin-transform-es2015-for-of@^6.5.0, babel-plugin-transform-es2015-for-o dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-function-name@6.x, babel-plugin-transform-es2015-function-name@^6.5.0, babel-plugin-transform-es2015-function-name@^6.8.0: +babel-plugin-transform-es2015-function-name@^6.5.0, babel-plugin-transform-es2015-function-name@^6.8.0, babel-plugin-transform-es2015-function-name@6.x: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.22.0.tgz#f5fcc8b09093f9a23c76ac3d9e392c3ec4b77104" dependencies: @@ -454,7 +452,7 @@ babel-plugin-transform-es2015-literals@^6.5.0, babel-plugin-transform-es2015-lit dependencies: babel-runtime "^6.22.0" -babel-plugin-transform-es2015-modules-commonjs@6.x, babel-plugin-transform-es2015-modules-commonjs@^6.5.0, babel-plugin-transform-es2015-modules-commonjs@^6.7.0, babel-plugin-transform-es2015-modules-commonjs@^6.8.0: +babel-plugin-transform-es2015-modules-commonjs@^6.5.0, babel-plugin-transform-es2015-modules-commonjs@^6.7.0, babel-plugin-transform-es2015-modules-commonjs@^6.8.0, babel-plugin-transform-es2015-modules-commonjs@6.x: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.22.0.tgz#6ca04e22b8e214fb50169730657e7a07dc941145" dependencies: @@ -470,7 +468,7 @@ babel-plugin-transform-es2015-object-super@^6.6.5, babel-plugin-transform-es2015 babel-helper-replace-supers "^6.22.0" babel-runtime "^6.22.0" -babel-plugin-transform-es2015-parameters@6.x, babel-plugin-transform-es2015-parameters@^6.5.0, babel-plugin-transform-es2015-parameters@^6.7.0, babel-plugin-transform-es2015-parameters@^6.8.0: +babel-plugin-transform-es2015-parameters@^6.5.0, babel-plugin-transform-es2015-parameters@^6.7.0, babel-plugin-transform-es2015-parameters@^6.8.0, babel-plugin-transform-es2015-parameters@6.x: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.22.0.tgz#57076069232019094f27da8c68bb7162fe208dbb" dependencies: @@ -481,14 +479,14 @@ babel-plugin-transform-es2015-parameters@6.x, babel-plugin-transform-es2015-para babel-traverse "^6.22.0" babel-types "^6.22.0" -babel-plugin-transform-es2015-shorthand-properties@6.x, babel-plugin-transform-es2015-shorthand-properties@^6.5.0, babel-plugin-transform-es2015-shorthand-properties@^6.8.0: +babel-plugin-transform-es2015-shorthand-properties@^6.5.0, babel-plugin-transform-es2015-shorthand-properties@^6.8.0, babel-plugin-transform-es2015-shorthand-properties@6.x: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.22.0.tgz#8ba776e0affaa60bff21e921403b8a652a2ff723" dependencies: babel-runtime "^6.22.0" babel-types "^6.22.0" -babel-plugin-transform-es2015-spread@6.x, babel-plugin-transform-es2015-spread@^6.5.0, babel-plugin-transform-es2015-spread@^6.6.5, babel-plugin-transform-es2015-spread@^6.8.0: +babel-plugin-transform-es2015-spread@^6.5.0, babel-plugin-transform-es2015-spread@^6.6.5, babel-plugin-transform-es2015-spread@^6.8.0, babel-plugin-transform-es2015-spread@6.x: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" dependencies: @@ -626,7 +624,7 @@ babel-preset-es2015-node@^6.1.1: babel-plugin-transform-es2015-unicode-regex "6.x" semver "5.x" -babel-preset-exponent@1.0.0: +babel-preset-exponent@^1.0.0, babel-preset-exponent@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/babel-preset-exponent/-/babel-preset-exponent-1.0.0.tgz#07045ee1a6483952367c267f2acac74749257d7f" dependencies: @@ -803,14 +801,14 @@ balanced-match@^0.4.1: version "0.4.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" -base64-js@0.0.8: - version "0.0.8" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-0.0.8.tgz#1101e9544f4a76b1bc3b26d452ca96d7a35e7978" - base64-js@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1" +base64-js@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-0.0.8.tgz#1101e9544f4a76b1bc3b26d452ca96d7a35e7978" + base64-url@1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/base64-url/-/base64-url-1.2.1.tgz#199fd661702a0e7b7dcae6e0698bb089c52f6d78" @@ -1150,12 +1148,6 @@ dateformat@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.0.0.tgz#2743e3abb5c3fc2462e527dca445e04e9f4dee17" -debug@2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/debug/-/debug-2.3.3.tgz#40c453e67e6e13c901ddec317af8986cda9eff8c" - dependencies: - ms "0.7.2" - debug@^2.1.1, debug@^2.2.0: version "2.6.0" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.0.tgz#bc596bcabe7617f11d9fa15361eded5608b8499b" @@ -1168,6 +1160,12 @@ debug@~2.2.0: dependencies: ms "0.7.1" +debug@2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.3.3.tgz#40c453e67e6e13c901ddec317af8986cda9eff8c" + dependencies: + ms "0.7.2" + decamelize@^1.0.0, decamelize@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" @@ -1247,14 +1245,14 @@ errorhandler@~1.4.2: accepts "~1.3.0" escape-html "~1.0.3" -escape-html@1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.2.tgz#d77d32fa98e38c2f41ae85e9278e0e0e6ba1022c" - escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" +escape-html@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.2.tgz#d77d32fa98e38c2f41ae85e9278e0e0e6ba1022c" + escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" @@ -1314,6 +1312,10 @@ extsprintf@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550" +faker: + version "4.0.0" + resolved "https://registry.yarnpkg.com/faker/-/faker-4.0.0.tgz#fecb0a7a5fc950bc93377688498c67145dc135c8" + fancy-log@^1.1.0: version "1.3.0" resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.0.tgz#45be17d02bb9917d60ccffd4995c999e6c8c9948" @@ -1587,6 +1589,10 @@ http-signature@~1.1.0: jsprim "^1.2.2" sshpk "^1.7.0" +iconv-lite@~0.4.13: + version "0.4.15" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.15.tgz#fe265a218ac6a57cfe854927e9d04c19825eddeb" + iconv-lite@0.4.11: version "0.4.11" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.11.tgz#2ecb42fd294744922209a2e7c404dac8793d8ade" @@ -1595,10 +1601,6 @@ iconv-lite@0.4.13: version "0.4.13" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.13.tgz#1f88aba4ab0b1508e8312acc39345f36e992e2f2" -iconv-lite@~0.4.13: - version "0.4.15" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.15.tgz#fe265a218ac6a57cfe854927e9d04c19825eddeb" - image-size@^0.3.5: version "0.3.5" resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.3.5.tgz#83240eab2fb5b00b04aab8c74b0471e9cba7ad8c" @@ -1618,7 +1620,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@~2.0.1: +inherits@~2.0.1, inherits@2: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" @@ -1701,14 +1703,14 @@ is-utf8@^0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" -isarray@0.0.1: - version "0.0.1" - resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" - isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" +isarray@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + isemail@1.x.x: version "1.2.0" resolved "https://registry.yarnpkg.com/isemail/-/isemail-1.2.0.tgz#be03df8cc3e29de4d2c5df6501263f1fa4595e9a" @@ -2008,19 +2010,19 @@ mime-db@~1.23.0: version "1.23.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.23.0.tgz#a31b4070adaea27d732ea333740a64d0ec9a6659" -mime-types@2.1.11, mime-types@~2.1.7, mime-types@~2.1.9: - version "2.1.11" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.11.tgz#c259c471bda808a85d6cd193b430a5fae4473b3c" - dependencies: - mime-db "~1.23.0" - mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.13, mime-types@~2.1.6: version "2.1.14" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.14.tgz#f7ef7d97583fcaf3b7d282b6f8b5679dab1e94ee" dependencies: mime-db "~1.26.0" -mime@1.3.4, mime@^1.3.4: +mime-types@~2.1.7, mime-types@~2.1.9, mime-types@2.1.11: + version "2.1.11" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.11.tgz#c259c471bda808a85d6cd193b430a5fae4473b3c" + dependencies: + mime-db "~1.23.0" + +mime@^1.3.4, mime@1.3.4: version "1.3.4" resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" @@ -2030,20 +2032,20 @@ min-document@^2.19.0: dependencies: dom-walk "^0.1.0" -"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2: +minimatch@^3.0.0, minimatch@^3.0.2, "minimatch@2 || 3": version "3.0.3" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" dependencies: brace-expansion "^1.0.0" -minimist@0.0.8, minimist@~0.0.1: - version "0.0.8" - resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" - minimist@^1.1.0, minimist@^1.1.1, minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" +minimist@~0.0.1, minimist@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + mkdirp@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" @@ -2259,7 +2261,7 @@ pinkie@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" -plist@1.2.0, plist@^1.2.0: +plist@^1.2.0, plist@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/plist/-/plist-1.2.0.tgz#084b5093ddc92506e259f874b8d9b1afb8c79593" dependencies: @@ -2302,14 +2304,14 @@ punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" -qs@4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-4.0.0.tgz#c31d9b74ec27df75e543a86c78728ed8d4623607" - qs@~6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.0.tgz#f403b264f23bc01228c74131b407f18d5ea5d442" +qs@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-4.0.0.tgz#c31d9b74ec27df75e543a86c78728ed8d4623607" + random-bytes@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/random-bytes/-/random-bytes-1.0.0.tgz#4f68a1dc0ae58bd3fb95848c30324db75d64360b" @@ -2345,7 +2347,7 @@ react-deep-force-update@^1.0.0: color "^0.11.1" lodash "^4.0.0" -react-native-vector-icons@4.0.0, react-native-vector-icons@^4.0.0: +react-native-vector-icons@^4.0.0, react-native-vector-icons@4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/react-native-vector-icons/-/react-native-vector-icons-4.0.0.tgz#6a2f8f4c6ace613aed7748cd530809283e5b1538" dependencies: @@ -2655,7 +2657,7 @@ sax@~1.1.1: version "1.1.6" resolved "https://registry.yarnpkg.com/sax/-/sax-1.1.6.tgz#5d616be8a5e607d54e114afae55b7eaf2fcc3240" -"semver@2 || 3 || 4 || 5", semver@5.x, semver@^5.0.3, semver@^5.1.0: +semver@^5.0.3, semver@^5.1.0, "semver@2 || 3 || 4 || 5", semver@5.x: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" @@ -2791,14 +2793,14 @@ stacktrace-parser@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/stacktrace-parser/-/stacktrace-parser-0.1.4.tgz#01397922e5f62ecf30845522c95c4fe1d25e7d4e" -statuses@1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" - statuses@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.2.1.tgz#dded45cc18256d51ed40aec142489d5c61026d28" +statuses@1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" + stream-buffers@~0.2.3: version "0.2.6" resolved "https://registry.yarnpkg.com/stream-buffers/-/stream-buffers-0.2.6.tgz#181c08d5bb3690045f69401b9ae6a7a0cf3313fc" @@ -2809,6 +2811,10 @@ stream-counter@~0.2.0: dependencies: readable-stream "~1.1.8" +string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + string-width@^1.0.1, string-width@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" @@ -2817,10 +2823,6 @@ string-width@^1.0.1, string-width@^1.0.2: is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" -string_decoder@~0.10.x: - version "0.10.31" - resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" - stringstream@~0.0.4: version "0.0.5" resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" @@ -2852,6 +2854,10 @@ throat@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/throat/-/throat-3.0.0.tgz#e7c64c867cbb3845f10877642f7b60055b8ec0d6" +through@^2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + through2@^2.0.0: version "2.0.3" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" @@ -2859,10 +2865,6 @@ through2@^2.0.0: readable-stream "^2.1.5" xtend "~4.0.1" -through@^2.3.6: - version "2.3.8" - resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" - time-stamp@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.0.1.tgz#9f4bd23559c9365966f3302dbba2b07c6b99b151" @@ -2923,6 +2925,12 @@ uglify-to-browserify@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" +uid-safe@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/uid-safe/-/uid-safe-2.0.0.tgz#a7f3c6ca64a1f6a5d04ec0ef3e4c3d5367317137" + dependencies: + base64-url "1.2.1" + uid-safe@2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/uid-safe/-/uid-safe-2.1.3.tgz#077e264a00b3187936b270bb7376a26473631071" @@ -2930,21 +2938,15 @@ uid-safe@2.1.3: base64-url "1.3.3" random-bytes "~1.0.0" -uid-safe@~2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/uid-safe/-/uid-safe-2.0.0.tgz#a7f3c6ca64a1f6a5d04ec0ef3e4c3d5367317137" - dependencies: - base64-url "1.2.1" - ultron@1.0.x: version "1.0.2" resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" -unpipe@1.0.0, unpipe@~1.0.0: +unpipe@~1.0.0, unpipe@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" -util-deprecate@1.0.2, util-deprecate@~1.0.1: +util-deprecate@~1.0.1, util-deprecate@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -3003,14 +3005,14 @@ watch@~0.10.0: version "0.10.0" resolved "https://registry.yarnpkg.com/watch/-/watch-0.10.0.tgz#77798b2da0f9910d595f1ace5b0c2258521f21dc" -whatwg-fetch@>=0.10.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.2.tgz#fe294d1d89e36c5be8b3195057f2e4bc74fc980e" - whatwg-fetch@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-1.1.1.tgz#ac3c9d39f320c6dce5339969d054ef43dd333319" +whatwg-fetch@>=0.10.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.2.tgz#fe294d1d89e36c5be8b3195057f2e4bc74fc980e" + which-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" @@ -3025,14 +3027,14 @@ window-size@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" -wordwrap@0.0.2, wordwrap@~0.0.2: - version "0.0.2" - resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" - wordwrap@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" +wordwrap@~0.0.2, wordwrap@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" + worker-farm@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.3.1.tgz#4333112bb49b17aa050b87895ca6b2cacf40e5ff" @@ -3090,7 +3092,7 @@ xmldom@0.1.x: version "0.1.27" resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.27.tgz#d501f97b3bdb403af8ef9ecc20573187aadac0e9" -"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@~4.0.1: +xtend@^4.0.0, "xtend@>=4.0.0 <4.1.0-0", xtend@~4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" @@ -3134,3 +3136,4 @@ yargs@~3.10.0: cliui "^2.1.0" decamelize "^1.0.0" window-size "0.1.0" + From 05d11f102e7fedac93a9781e667093d68411dea2 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 11:23:58 -0800 Subject: [PATCH 018/100] Apply filter before creating transition style --- .../js/Transitions/SharedElements/index.js | 45 ++++++++++++++----- .../Transition/createTransitionComponent.js | 32 ++++++++----- 2 files changed, 56 insertions(+), 21 deletions(-) diff --git a/examples/NavigationPlayground/js/Transitions/SharedElements/index.js b/examples/NavigationPlayground/js/Transitions/SharedElements/index.js index 5697916d45..45a0248da1 100644 --- a/examples/NavigationPlayground/js/Transitions/SharedElements/index.js +++ b/examples/NavigationPlayground/js/Transitions/SharedElements/index.js @@ -5,24 +5,47 @@ import { import PhotoGrid from './PhotoGrid'; import PhotoDetail from './PhotoDetail'; -const SharedElements = () => ({ - cloneOnOverlay(transitionItem) { return true; }, - createAnimatedStyles(items) {} +const SharedElements = (filter) => ({ + filter, + shouldClone(id, routeName) { return true; }, + createAnimatedStyles(items) { } }); -const CrossFade = () => ({ - createAnimatedStyles(transitionProps) { - const {position, scene:{index}} = transitionProps; +const CrossFade = (filter) => ({ + filter, + createAnimatedStyle(id: string, routeName: string, transitionProps) { + const {position, scene: {index}} = transitionProps; const opacity = position.interpolate({ - inputRange: [index-1, index, index+1], + inputRange: [index - 1, index, index + 1], outputRange: [0, 1, 0], }); - return { opacity }; + const rotate = position.interpolate({ + inputRange: [0, 1], + outputRange: ['0deg', '360deg'], + }); + return { + opacity, + transform: [{ rotate }] + }; } }) +function createIdRegexFilter(idRegexes) { + return (id: string) => idRegexes.every(idRegex => id.match(idRegex)); +} + +function createTransition(Transition, ...idRegexes) { + return Transition(createIdRegexFilter(idRegexes)); +} + +const SharedImage = createTransition(SharedElements, /image-.+/); +const CrossFadeScene = createTransition(CrossFade, /\$scene.+/); + const transitions = [ - {from: 'PhotoGrid', to: 'PhotoDetail', transition: CrossFade() } + // { from: 'PhotoGrid', to: 'PhotoDetail', transition: CrossFadeScene }, + // { from: 'PhotoDetail', to: 'PhotoGrid', transition: CrossFadeScene }, + { from: 'PhotoGrid', to: 'PhotoDetail', transition: SharedImage }, + { from: 'PhotoDetail', to: 'PhotoGrid', transition: SharedImage }, ]; const App = StackNavigator({ @@ -33,7 +56,7 @@ const App = StackNavigator({ screen: PhotoDetail, } }, { - transitions, -}); + transitions, + }); export default App; \ No newline at end of file diff --git a/src/views/Transition/createTransitionComponent.js b/src/views/Transition/createTransitionComponent.js index bd815698b8..adddb0d259 100644 --- a/src/views/Transition/createTransitionComponent.js +++ b/src/views/Transition/createTransitionComponent.js @@ -31,12 +31,6 @@ function findTransitionConfig(transitionConfigs: Array<*>, routeName: string, pr return transitionConfigs.find(c => c.from === prevRouteName && c.to === routeName); } -function createAnimatedStyle(transitionProps, transitionConfig) { - return (transitionConfig - ? transitionConfig.transition.createAnimatedStyles(transitionProps) - : TransitionConfigs.defaultTransitionConfig(transitionProps).screenInterpolator(transitionProps)); -} - function createTransitionComponent(Component) { class TransitionComponent extends React.Component { _component: any; @@ -54,6 +48,23 @@ function createTransitionComponent(Component) { this._component.setNativeProps(props); } + _createAnimatedStyle() { + const {id} = this.props; + const {routeName, prevRouteName, transitionProps, transitionConfigs} = this.context; + const transitionConfig = findTransitionConfig(transitionConfigs, routeName, prevRouteName); + const transition = transitionConfig && transitionConfig.transition; + const appliesToMe = transition && (!!!transition.filter || transition.filter(id)); + if (transition && appliesToMe) { + return (transition.shouldClone && transition.shouldClone(id, routeName) + ? this._hideTransitionViewUntilDone(transitionProps) + : transition.createAnimatedStyle(id, routeName, transitionProps) + ); + } else { + // TODO this default should be set somewhere else + return {};//TransitionConfigs.defaultTransitionConfig(transitionProps).screenInterpolator(transitionProps)); + } + } + render() { // collapsable={false} is required for UIManager.measureInWindow to get the actual measurements // instead of undefined, see https://github.com/facebook/react-native/issues/9382 @@ -64,12 +75,13 @@ function createTransitionComponent(Component) { )*/ const {id, ...rest} = this.props; - const {routeName, prevRouteName, transitionProps, transitionConfigs} = this.context; - const transitionConfig = findTransitionConfig(transitionConfigs, routeName, prevRouteName); const AnimatedComponent = createAnimatedComponent(Component); + const animatedStyle = this._createAnimatedStyle(); return ( - this._component = c} - style={[this.props.style, createAnimatedStyle(transitionProps, transitionConfig)]} + this._component = c} + collapsable={false} + style={[this.props.style, animatedStyle]} /> ); } From 165956a6134568ba782b4f8e06c5c4cd573c679b Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 11:24:05 -0800 Subject: [PATCH 019/100] Remove logging --- .../js/Transitions/SharedElements/PhotoGrid.js | 1 - 1 file changed, 1 deletion(-) diff --git a/examples/NavigationPlayground/js/Transitions/SharedElements/PhotoGrid.js b/examples/NavigationPlayground/js/Transitions/SharedElements/PhotoGrid.js index 2b9c601640..6f92789be5 100644 --- a/examples/NavigationPlayground/js/Transitions/SharedElements/PhotoGrid.js +++ b/examples/NavigationPlayground/js/Transitions/SharedElements/PhotoGrid.js @@ -47,7 +47,6 @@ const margin = 2; const photoWidth = (windowWidth - margin * colCount * 2) / colCount; const photoRows = _.chunk(photos, colCount); -console.log('=========> Transition', Transition); class PhotoGrid extends Component { static navigationOptions = { From d3502bd5bdcb33234db76660068395266be1744e Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 11:39:48 -0800 Subject: [PATCH 020/100] name => id, containerRouteName => routeName --- src/views/Transition/TransitionItems.js | 61 ++++++++++++------------- 1 file changed, 28 insertions(+), 33 deletions(-) diff --git a/src/views/Transition/TransitionItems.js b/src/views/Transition/TransitionItems.js index 2b1b5d1a31..42eeef90ee 100644 --- a/src/views/Transition/TransitionItems.js +++ b/src/views/Transition/TransitionItems.js @@ -9,23 +9,23 @@ export type Metrics = { } export class TransitionItem { - name: string; - containerRouteName: string; + id: string; + routeName: string; reactElement: React.Element<*>; nativeHandle: any; metrics: ?Metrics; - constructor(name: string, containerRouteName: string, reactElement: React.Element<*>, nativeHandle: any, metrics:?Metrics) { - this.name = name; - this.containerRouteName = containerRouteName; + constructor(id: string, routeName: string, reactElement: React.Element<*>, nativeHandle: any, metrics:?Metrics) { + this.id = id; + this.routeName = routeName; this.reactElement = reactElement; this.nativeHandle = nativeHandle; this.metrics = metrics; } clone() { - return new TransitionItem(this.name, this.containerRouteName, this.reactElement, this.nativeHandle, this.metrics); + return new TransitionItem(this.id, this.routeName, this.reactElement, this.nativeHandle, this.metrics); } toString() { - return `${this.name} ${this.containerRouteName} ${JSON.stringify(this.metrics)}`; + return `${this.id} ${this.routeName} ${JSON.stringify(this.metrics)}`; } } @@ -35,8 +35,8 @@ type ItemPair = { }; export type UpdateRequest = { - name: string, - containerRouteName: string, + id: string, + routeName: string, metrics: ?Metrics, } @@ -45,23 +45,23 @@ class TransitionItems { constructor(items: Array = []) { this._items = [...items]; } - _findIndex(name: string, containerRouteName: string): number { + _findIndex(id: string, routeName: string): number { return this._items.findIndex(i => { - return i.name === name && i.containerRouteName === containerRouteName; + return i.id === id && i.routeName === routeName; }); } count() { return this._items.length; } add(item: TransitionItem): TransitionItems { - if (this._findIndex(item.name, item.containerRouteName) >= 0) + if (this._findIndex(item.id, item.routeName) >= 0) return this; else { return new TransitionItems([...this._items, item]); } } - remove(name: string, containerRouteName: string): TransitionItems { - const index = this._findIndex(name, containerRouteName); + remove(id: string, routeName: string): TransitionItems { + const index = this._findIndex(id, routeName); if (index >= 0) { const newItems = [...this._items.slice(0, index), ...this._items.slice(index + 1)]; return new TransitionItems(newItems); @@ -72,7 +72,7 @@ class TransitionItems { updateMetrics(requests: Array): TransitionItems { const indexedRequests = requests.map(r => ({ ...r, - index: this._findIndex(r.name, r.containerRouteName), + index: this._findIndex(r.id, r.routeName), })); if (indexedRequests.every(r => r.index < 0)) return this; @@ -99,21 +99,21 @@ class TransitionItems { return new TransitionItems(newItems); } else return this; } - _getNamePairMap(fromRoute: string, toRoute: string) { + _getIdPairMap(fromRoute: string, toRoute: string) { //TODO cache the map. Since the object is immutable, no need to worry about updates to _items - const nameMap = this._items.reduce((map, item) => { - let pairByName = map.get(item.name); + const idMap = this._items.reduce((map, item) => { + let pairByName = map.get(item.id); if (!pairByName) { pairByName = {}; - map.set(item.name, pairByName); + map.set(item.id, pairByName); } - if (item.containerRouteName === fromRoute) pairByName.fromItem = item; - if (item.containerRouteName === toRoute) pairByName.toItem = item; + if (item.routeName === fromRoute) pairByName.fromItem = item; + if (item.routeName === toRoute) pairByName.toItem = item; // delete empty pairs - if (!pairByName.fromItem && !pairByName.toItem) map.delete(item.name); + if (!pairByName.fromItem && !pairByName.toItem) map.delete(item.id); return map; }, new Map()); - return nameMap; + return idMap; } isMeatured(p: ItemPair) { const isNumber = n => typeof n === 'number'; @@ -123,18 +123,13 @@ class TransitionItems { && metricsValid(fromItem.metrics) && metricsValid(toItem.metrics); } getMeasuredItemPairs(fromRoute: string, toRoute: string): Array { - const nameMap = this._getNamePairMap(fromRoute, toRoute); - // console.log('getMeasuredItemPairs.nameMap', Array.from(nameMap.values()).map(p => `fromItem:${p.fromItem ? p.fromItem.toString() : 'null'} toItem:${p.toItem ? p.toItem.toString() : 'null'}`)); - return Array.from(nameMap.values()) + const idMap = this._getIdPairMap(fromRoute, toRoute); + // console.log('getMeasuredItemPairs.idMap', Array.from(idMap.values()).map(p => `fromItem:${p.fromItem ? p.fromItem.toString() : 'null'} toItem:${p.toItem ? p.toItem.toString() : 'null'}`)); + return Array.from(idMap.values()) .filter(this.isMeatured); } - findMatchByName(name: string, routeToExclude: string): ?TransitionItem { - return this._items.find(i => i.name === name && i.containerRouteName !== routeToExclude); - } - areMetricsReadyForAllPairs(fromRoute: string, toRoute: string): boolean { - const nameMap = this._getNamePairMap(fromRoute, toRoute); - return Array.from(nameMap.values()) - .every(this.isMeatured); + findMatchByName(id: string, routeToExclude: string): ?TransitionItem { + return this._items.find(i => i.id === id && i.routeName !== routeToExclude); } } From 53a1af73a1e4ab816dc97fd293cc6fe49d652948 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 12:05:06 -0800 Subject: [PATCH 021/100] Use CrossFade for now --- .../js/Transitions/SharedElements/index.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/examples/NavigationPlayground/js/Transitions/SharedElements/index.js b/examples/NavigationPlayground/js/Transitions/SharedElements/index.js index 45a0248da1..c15673a410 100644 --- a/examples/NavigationPlayground/js/Transitions/SharedElements/index.js +++ b/examples/NavigationPlayground/js/Transitions/SharedElements/index.js @@ -42,10 +42,10 @@ const SharedImage = createTransition(SharedElements, /image-.+/); const CrossFadeScene = createTransition(CrossFade, /\$scene.+/); const transitions = [ - // { from: 'PhotoGrid', to: 'PhotoDetail', transition: CrossFadeScene }, - // { from: 'PhotoDetail', to: 'PhotoGrid', transition: CrossFadeScene }, - { from: 'PhotoGrid', to: 'PhotoDetail', transition: SharedImage }, - { from: 'PhotoDetail', to: 'PhotoGrid', transition: SharedImage }, + { from: 'PhotoGrid', to: 'PhotoDetail', transition: CrossFadeScene }, + { from: 'PhotoDetail', to: 'PhotoGrid', transition: CrossFadeScene }, + // { from: 'PhotoGrid', to: 'PhotoDetail', transition: SharedImage }, + // { from: 'PhotoDetail', to: 'PhotoGrid', transition: SharedImage }, ]; const App = StackNavigator({ From 918333edd00267f49784776d3b57ef0f485383fc Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 12:19:44 -0800 Subject: [PATCH 022/100] Register/unregister transition items --- src/views/CardStack.js | 53 +++++++++++++++++++ .../Transition/createTransitionComponent.js | 16 +++--- 2 files changed, 61 insertions(+), 8 deletions(-) diff --git a/src/views/CardStack.js b/src/views/CardStack.js index 67834d5675..a301682c79 100644 --- a/src/views/CardStack.js +++ b/src/views/CardStack.js @@ -37,6 +37,8 @@ import type { TransitionConfig } from './TransitionConfigs'; import TransitionConfigs from './TransitionConfigs'; +import TransitionItems from './Transition/TransitionItems'; + const NativeAnimatedModule = NativeModules && NativeModules.NativeAnimatedModule; type Props = { @@ -68,12 +70,17 @@ type DefaultProps = { headerComponent: ReactClass<*>, }; +type State = { + transitionItems: TransitionItems, +}; + class CardStack extends Component { _render: NavigationSceneRenderer; _renderScene: NavigationSceneRenderer; _childNavigationProps: { [key: string]: NavigationScreenProp<*, NavigationAction> } = {}; + state: State; static Card = Card; static Header = Header; @@ -147,12 +154,58 @@ class CardStack extends Component { style: View.propTypes.style, }; + static childContextTypes = { + registerTransitionItem: React.PropTypes.func, + unregisterTransitionItem: React.PropTypes.func, + } + static defaultProps: DefaultProps = { mode: 'card', gesturesEnabled: Platform.OS === 'ios', headerComponent: Header, }; + constructor(props: Props, context) { + super(props, context); + this.state = { + transitionItems: new TransitionItems(), + } + } + + shouldComponentUpdate(nextProps, nextState) { + if (this.props !== nextProps) { + return true; + } else { + // TODO change this when/if state has other things. + return false; + } + } + + getChildContext() { + const self = this; + return { + registerTransitionItem(item: TransitionItem) { + self.setState((prevState: State) => ({ + transitionItems: prevState.transitionItems.add(item), + })); + // const {name, containerRouteName} = TransitionItem; + // const matchingItem = self.state.TransitionItems.findMatchByName(name, containerRouteName); + // // schedule to measure (on layout) if another Item with the same name is mounted + // if (matchingItem) { + // self.setState((prevState: State) => ({ + // TransitionItems: prevState.TransitionItems, + // itemsToMeasure: [...prevState.itemsToMeasure, TransitionItem, matchingItem] + // })); + // } + }, + unregisterTransitionItem(id: string, routeName: string) { + self.setState((prevState: State) => ({ + transitionItems: prevState.transitionItems.remove(id, routeName), + })); + }, + }; + } + componentWillMount() { this._render = this._render.bind(this); this._renderScene = this._renderScene.bind(this); diff --git a/src/views/Transition/createTransitionComponent.js b/src/views/Transition/createTransitionComponent.js index adddb0d259..f02f65d7b3 100644 --- a/src/views/Transition/createTransitionComponent.js +++ b/src/views/Transition/createTransitionComponent.js @@ -35,8 +35,8 @@ function createTransitionComponent(Component) { class TransitionComponent extends React.Component { _component: any; static contextTypes = { - registerTransitionView: React.PropTypes.func, - unregisterTransitionView: React.PropTypes.func, + registerTransitionItem: React.PropTypes.func, + unregisterTransitionItem: React.PropTypes.func, transitionProps: React.PropTypes.object, transitionConfigs: React.PropTypes.array, routeName: React.PropTypes.string, @@ -87,11 +87,11 @@ function createTransitionComponent(Component) { } componentDidMount() { - const { registerTransitionView } = this.context; - if (!registerTransitionView) return; + const { registerTransitionItem } = this.context; + if (!registerTransitionItem) return; const nativeHandle = findNodeHandle(this._component); - registerTransitionView(new TransitionItem + registerTransitionItem(new TransitionItem ( this.props.id, this.context.routeName, @@ -101,10 +101,10 @@ function createTransitionComponent(Component) { } componentWillUnmount() { - const { unregisterTransitionView } = this.context; - if (!unregisterTransitionView) return; + const { unregisterTransitionItem } = this.context; + if (!unregisterTransitionItem) return; - unregisterTransitionView(this.props.id, this.context.routeName); + unregisterTransitionItem(this.props.id, this.context.routeName); } } return TransitionComponent; From 37a20163fe34d99ddbf93c0b3f8fb94e4954a714 Mon Sep 17 00:00:00 2001 From: Linton Ye Date: Tue, 21 Feb 2017 13:14:20 -0800 Subject: [PATCH 023/100] _hideTransitionViewUntilDone --- .../js/Transitions/MultiTransitions.js | 198 ++++++++++++++++++ .../js/Transitions/SharedElements/index.js | 8 +- .../js/Transitions/materialSharedElement.js | 88 ++++++++ .../js/Transitions/storehouse.js | 59 ++++++ .../Transition/createTransitionComponent.js | 9 + 5 files changed, 358 insertions(+), 4 deletions(-) create mode 100644 examples/NavigationPlayground/js/Transitions/MultiTransitions.js create mode 100644 examples/NavigationPlayground/js/Transitions/materialSharedElement.js create mode 100644 examples/NavigationPlayground/js/Transitions/storehouse.js diff --git a/examples/NavigationPlayground/js/Transitions/MultiTransitions.js b/examples/NavigationPlayground/js/Transitions/MultiTransitions.js new file mode 100644 index 0000000000..39606d26a7 --- /dev/null +++ b/examples/NavigationPlayground/js/Transitions/MultiTransitions.js @@ -0,0 +1,198 @@ +class PhotoGrid extends Component { + .... + renderCell(photo) { + return ( + + + + + {photo.title} + + ); + } +} + +const PhotoDetail = ({photo}) => ( + + + + + + {photo.title} + + + {photo.description} + + +); + +const TitleAppear = OpacityAppear(/title/); + +const DescAppear = OpacityAppear(/description/); + +const SharedImage = SharedElements(/image-.+/); + +const SharedElements = (animateIdRegex) => (duration:number) => ( + { + shouldAnimate(view: TransitionView):boolean { + // + } + createAnimations( + viewsOnFromRoute: Array, + viewsOnToRoute: Array + ) { + ... + // return a map of animated styles for all views with an "animateId" prop. + } + createSceneAnimation() { + const inputRange = [0, 1]; + return { + fromScene: { + opacity: { + inputRange, + outputRange: [1, 0], + } + }, + toScene: { + opacity: { + inputRange, + outputRange: [0, 1], + } + } + } + } + } +); + + +const together = (..transitions:Array):Transition => { + return { + createAnimations( + transitionProps: NavigationTransitionProps, + prevTranstionProps: NavigationTransitionProps, + viewsOnFromRoute: Array, + viewsOnToRoute: Array + ) { + return transitions.reduce((result, transition) => ({ + ...result, + ...transition.createAnimations(transitionProps, prevTranstionProps, viewsOnFromRoute, viewsOnToRoute), + }), {}); + } + } +} + +const seq = (..transitions:Array):Transition => { +} + +const MyApp = StackNavigator({ + PhotoGrid: { + screen: PhotoGrid, + }, + PhotoDetail: { + screen: PhotoDetail, + }, + Settings: { + screen: Settings, + }, +}, { + transitions: [ + { + from: 'PhotoGrid', + to: 'PhotoDetail', + // [SharedImage(), 0.9 -> [TitleAppear(), DescAppear()]] + transition: together(SharedImage(), seq(Idle(0.9), together(TitleAppear(), DescAppear()))) + }, + { + from: 'PhotoDetail', + to: 'PhotoGrid', + // TitleDisappear(0.1) -> DescDisappear(0.1) -> SharedImage() + transition: seq(TitleDisappear(0.1), DescDisappear(0.1), SharedImage()), + }, + ], + configureTransition(transitionProps, prevTranstionProps) { + // + }, + } +}); + +// by default, transition views have the same animated style as its original +// owner scene, i.e. if not configured, they will move, fade etc together +// with the original owner scene, EVEN though they are separate from them. + +progress.interpolate({ + inputRange, + outputRange, +}); + +// [SharedImage(), 0.9 -> [TitleAppear(), DescAppear()]] +{ + // SharedElements + image1234: { + left: { + inputRange: [0, 1], + outputRange: [fromLeft, toLeft], + } + ... + }, + title: { + opacity: { + inputRange: [0, 0.9, 1], + outputRange: [0, 0, 1], + } + } +} + +// TitleDisappear(0.1) -> DescDisappear(0.1) -> SharedImage() +{ + title: { + opacity: { + inputRange: [0, 0.1, 1], + outputRange: [1, 0, 0], + } + }, + description: { + opacity: { + inputRange: [0, 0.1, 0.2, 1], + outputRange: [1, 1, 0, 0], + } + }, + image1234: { + left: { + inputRange: [0, 0.2, 1], + outputRange: [fromLeft, fromLeft, toLeft], + } + ... + }, +} + +// conflicts? + +// TODOs: +// - scene animations +// - create additional elements (darkening layer etc.) +// - perhaps we could just animate the transition views in place instead of cloning it? + +class CardStack { + _render(props) { + .... + return ( + + + {props.scenes.map(scene => ( + + { this._renderScene(...) } + + ))} + + { + floatingHeader && ( + + { floatingHeader } + + ) + } + { transitionOverlay } + + ) + } +} \ No newline at end of file diff --git a/examples/NavigationPlayground/js/Transitions/SharedElements/index.js b/examples/NavigationPlayground/js/Transitions/SharedElements/index.js index c15673a410..45a0248da1 100644 --- a/examples/NavigationPlayground/js/Transitions/SharedElements/index.js +++ b/examples/NavigationPlayground/js/Transitions/SharedElements/index.js @@ -42,10 +42,10 @@ const SharedImage = createTransition(SharedElements, /image-.+/); const CrossFadeScene = createTransition(CrossFade, /\$scene.+/); const transitions = [ - { from: 'PhotoGrid', to: 'PhotoDetail', transition: CrossFadeScene }, - { from: 'PhotoDetail', to: 'PhotoGrid', transition: CrossFadeScene }, - // { from: 'PhotoGrid', to: 'PhotoDetail', transition: SharedImage }, - // { from: 'PhotoDetail', to: 'PhotoGrid', transition: SharedImage }, + // { from: 'PhotoGrid', to: 'PhotoDetail', transition: CrossFadeScene }, + // { from: 'PhotoDetail', to: 'PhotoGrid', transition: CrossFadeScene }, + { from: 'PhotoGrid', to: 'PhotoDetail', transition: SharedImage }, + { from: 'PhotoDetail', to: 'PhotoGrid', transition: SharedImage }, ]; const App = StackNavigator({ diff --git a/examples/NavigationPlayground/js/Transitions/materialSharedElement.js b/examples/NavigationPlayground/js/Transitions/materialSharedElement.js new file mode 100644 index 0000000000..b059afa50d --- /dev/null +++ b/examples/NavigationPlayground/js/Transitions/materialSharedElement.js @@ -0,0 +1,88 @@ +const GalleryScreen = (props) => ( + +
+ ( + + + + )} /> +