@amazon-devices/react-navigation__stack 2.0.1758683737

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. package/LICENSE +7 -0
  2. package/README.md +5 -0
  3. package/SystemBundles/ed2637c0b74cd42ce066fca701acc5cb0850978c5296fae5bd715d5e4c67b128.bundle +29321 -0
  4. package/SystemBundles/ed2637c0b74cd42ce066fca701acc5cb0850978c5296fae5bd715d5e4c67b128.map +1 -0
  5. package/SystemModules/amzn__react-navigation__stack-2.modules.txt +95 -0
  6. package/SystemModules/amzn__react-navigation__stack-2.private.modules.txt +258 -0
  7. package/SystemModules/keplerscript-system-bundle-config.json +7 -0
  8. package/THIRD_PARTY_NOTICES.txt +24 -0
  9. package/kepler-compatibility.json +8 -0
  10. package/kepler-transformed-package-info.json +3 -0
  11. package/lib/commonjs/TransitionConfigs/CardStyleInterpolators.js +353 -0
  12. package/lib/commonjs/TransitionConfigs/CardStyleInterpolators.js.map +1 -0
  13. package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.js +259 -0
  14. package/lib/commonjs/TransitionConfigs/HeaderStyleInterpolators.js.map +1 -0
  15. package/lib/commonjs/TransitionConfigs/TransitionPresets.js +134 -0
  16. package/lib/commonjs/TransitionConfigs/TransitionPresets.js.map +1 -0
  17. package/lib/commonjs/TransitionConfigs/TransitionSpecs.js +100 -0
  18. package/lib/commonjs/TransitionConfigs/TransitionSpecs.js.map +1 -0
  19. package/lib/commonjs/index.js +69 -0
  20. package/lib/commonjs/index.js.map +1 -0
  21. package/lib/commonjs/navigators/createStackNavigator.js +82 -0
  22. package/lib/commonjs/navigators/createStackNavigator.js.map +1 -0
  23. package/lib/commonjs/types.js +6 -0
  24. package/lib/commonjs/types.js.map +1 -0
  25. package/lib/commonjs/utils/CardAnimationContext.js +11 -0
  26. package/lib/commonjs/utils/CardAnimationContext.js.map +1 -0
  27. package/lib/commonjs/utils/GestureHandlerRefContext.js +11 -0
  28. package/lib/commonjs/utils/GestureHandlerRefContext.js.map +1 -0
  29. package/lib/commonjs/utils/ModalPresentationContext.js +12 -0
  30. package/lib/commonjs/utils/ModalPresentationContext.js.map +1 -0
  31. package/lib/commonjs/utils/conditional.js +32 -0
  32. package/lib/commonjs/utils/conditional.js.map +1 -0
  33. package/lib/commonjs/utils/debounce.js +19 -0
  34. package/lib/commonjs/utils/debounce.js.map +1 -0
  35. package/lib/commonjs/utils/findLastIndex.js +15 -0
  36. package/lib/commonjs/utils/findLastIndex.js.map +1 -0
  37. package/lib/commonjs/utils/getDistanceForDirection.js +20 -0
  38. package/lib/commonjs/utils/getDistanceForDirection.js.map +1 -0
  39. package/lib/commonjs/utils/getInvertedMultiplier.js +20 -0
  40. package/lib/commonjs/utils/getInvertedMultiplier.js.map +1 -0
  41. package/lib/commonjs/utils/memoize.js +33 -0
  42. package/lib/commonjs/utils/memoize.js.map +1 -0
  43. package/lib/commonjs/utils/useCardAnimation.js +19 -0
  44. package/lib/commonjs/utils/useCardAnimation.js.map +1 -0
  45. package/lib/commonjs/utils/useGestureHandlerRef.js +19 -0
  46. package/lib/commonjs/utils/useGestureHandlerRef.js.map +1 -0
  47. package/lib/commonjs/utils/useKeyboardManager.js +96 -0
  48. package/lib/commonjs/utils/useKeyboardManager.js.map +1 -0
  49. package/lib/commonjs/views/GestureHandler.android.js +17 -0
  50. package/lib/commonjs/views/GestureHandler.android.js.map +1 -0
  51. package/lib/commonjs/views/GestureHandler.ios.js +17 -0
  52. package/lib/commonjs/views/GestureHandler.ios.js.map +1 -0
  53. package/lib/commonjs/views/GestureHandler.js +24 -0
  54. package/lib/commonjs/views/GestureHandler.js.map +1 -0
  55. package/lib/commonjs/views/GestureHandlerNative.js +34 -0
  56. package/lib/commonjs/views/GestureHandlerNative.js.map +1 -0
  57. package/lib/commonjs/views/Header/Header.js +61 -0
  58. package/lib/commonjs/views/Header/Header.js.map +1 -0
  59. package/lib/commonjs/views/Header/HeaderContainer.js +127 -0
  60. package/lib/commonjs/views/Header/HeaderContainer.js.map +1 -0
  61. package/lib/commonjs/views/Header/HeaderSegment.js +139 -0
  62. package/lib/commonjs/views/Header/HeaderSegment.js.map +1 -0
  63. package/lib/commonjs/views/ModalStatusBarManager.js +42 -0
  64. package/lib/commonjs/views/ModalStatusBarManager.js.map +1 -0
  65. package/lib/commonjs/views/Screens.js +44 -0
  66. package/lib/commonjs/views/Screens.js.map +1 -0
  67. package/lib/commonjs/views/Stack/Card.js +469 -0
  68. package/lib/commonjs/views/Stack/Card.js.map +1 -0
  69. package/lib/commonjs/views/Stack/CardContainer.js +259 -0
  70. package/lib/commonjs/views/Stack/CardContainer.js.map +1 -0
  71. package/lib/commonjs/views/Stack/CardSheet.js +54 -0
  72. package/lib/commonjs/views/Stack/CardSheet.js.map +1 -0
  73. package/lib/commonjs/views/Stack/CardStack.js +442 -0
  74. package/lib/commonjs/views/Stack/CardStack.js.map +1 -0
  75. package/lib/commonjs/views/Stack/StackView.js +333 -0
  76. package/lib/commonjs/views/Stack/StackView.js.map +1 -0
  77. package/lib/module/TransitionConfigs/CardStyleInterpolators.js +338 -0
  78. package/lib/module/TransitionConfigs/CardStyleInterpolators.js.map +1 -0
  79. package/lib/module/TransitionConfigs/HeaderStyleInterpolators.js +248 -0
  80. package/lib/module/TransitionConfigs/HeaderStyleInterpolators.js.map +1 -0
  81. package/lib/module/TransitionConfigs/TransitionPresets.js +128 -0
  82. package/lib/module/TransitionConfigs/TransitionPresets.js.map +1 -0
  83. package/lib/module/TransitionConfigs/TransitionSpecs.js +94 -0
  84. package/lib/module/TransitionConfigs/TransitionSpecs.js.map +1 -0
  85. package/lib/module/index.js +33 -0
  86. package/lib/module/index.js.map +1 -0
  87. package/lib/module/navigators/createStackNavigator.js +73 -0
  88. package/lib/module/navigators/createStackNavigator.js.map +1 -0
  89. package/lib/module/types.js +2 -0
  90. package/lib/module/types.js.map +1 -0
  91. package/lib/module/utils/CardAnimationContext.js +3 -0
  92. package/lib/module/utils/CardAnimationContext.js.map +1 -0
  93. package/lib/module/utils/GestureHandlerRefContext.js +3 -0
  94. package/lib/module/utils/GestureHandlerRefContext.js.map +1 -0
  95. package/lib/module/utils/ModalPresentationContext.js +4 -0
  96. package/lib/module/utils/ModalPresentationContext.js.map +1 -0
  97. package/lib/module/utils/conditional.js +26 -0
  98. package/lib/module/utils/conditional.js.map +1 -0
  99. package/lib/module/utils/debounce.js +13 -0
  100. package/lib/module/utils/debounce.js.map +1 -0
  101. package/lib/module/utils/findLastIndex.js +9 -0
  102. package/lib/module/utils/findLastIndex.js.map +1 -0
  103. package/lib/module/utils/getDistanceForDirection.js +13 -0
  104. package/lib/module/utils/getDistanceForDirection.js.map +1 -0
  105. package/lib/module/utils/getInvertedMultiplier.js +14 -0
  106. package/lib/module/utils/getInvertedMultiplier.js.map +1 -0
  107. package/lib/module/utils/memoize.js +27 -0
  108. package/lib/module/utils/memoize.js.map +1 -0
  109. package/lib/module/utils/useCardAnimation.js +10 -0
  110. package/lib/module/utils/useCardAnimation.js.map +1 -0
  111. package/lib/module/utils/useGestureHandlerRef.js +10 -0
  112. package/lib/module/utils/useGestureHandlerRef.js.map +1 -0
  113. package/lib/module/utils/useKeyboardManager.js +88 -0
  114. package/lib/module/utils/useKeyboardManager.js.map +1 -0
  115. package/lib/module/views/GestureHandler.android.js +2 -0
  116. package/lib/module/views/GestureHandler.android.js.map +1 -0
  117. package/lib/module/views/GestureHandler.ios.js +2 -0
  118. package/lib/module/views/GestureHandler.ios.js.map +1 -0
  119. package/lib/module/views/GestureHandler.js +16 -0
  120. package/lib/module/views/GestureHandler.js.map +1 -0
  121. package/lib/module/views/GestureHandlerNative.js +14 -0
  122. package/lib/module/views/GestureHandlerNative.js.map +1 -0
  123. package/lib/module/views/Header/Header.js +52 -0
  124. package/lib/module/views/Header/Header.js.map +1 -0
  125. package/lib/module/views/Header/HeaderContainer.js +118 -0
  126. package/lib/module/views/Header/HeaderContainer.js.map +1 -0
  127. package/lib/module/views/Header/HeaderSegment.js +130 -0
  128. package/lib/module/views/Header/HeaderSegment.js.map +1 -0
  129. package/lib/module/views/ModalStatusBarManager.js +34 -0
  130. package/lib/module/views/ModalStatusBarManager.js.map +1 -0
  131. package/lib/module/views/Screens.js +34 -0
  132. package/lib/module/views/Screens.js.map +1 -0
  133. package/lib/module/views/Stack/Card.js +458 -0
  134. package/lib/module/views/Stack/Card.js.map +1 -0
  135. package/lib/module/views/Stack/CardContainer.js +250 -0
  136. package/lib/module/views/Stack/CardContainer.js.map +1 -0
  137. package/lib/module/views/Stack/CardSheet.js +46 -0
  138. package/lib/module/views/Stack/CardSheet.js.map +1 -0
  139. package/lib/module/views/Stack/CardStack.js +432 -0
  140. package/lib/module/views/Stack/CardStack.js.map +1 -0
  141. package/lib/module/views/Stack/StackView.js +323 -0
  142. package/lib/module/views/Stack/StackView.js.map +1 -0
  143. package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts +35 -0
  144. package/lib/typescript/src/TransitionConfigs/CardStyleInterpolators.d.ts.map +1 -0
  145. package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts +23 -0
  146. package/lib/typescript/src/TransitionConfigs/HeaderStyleInterpolators.d.ts.map +1 -0
  147. package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts +42 -0
  148. package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts.map +1 -0
  149. package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts +36 -0
  150. package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts.map +1 -0
  151. package/lib/typescript/src/index.d.ts +29 -0
  152. package/lib/typescript/src/index.d.ts.map +1 -0
  153. package/lib/typescript/src/navigators/createStackNavigator.d.ts +8 -0
  154. package/lib/typescript/src/navigators/createStackNavigator.d.ts.map +1 -0
  155. package/lib/typescript/src/types.d.ts +481 -0
  156. package/lib/typescript/src/types.d.ts.map +1 -0
  157. package/lib/typescript/src/utils/CardAnimationContext.d.ts +5 -0
  158. package/lib/typescript/src/utils/CardAnimationContext.d.ts.map +1 -0
  159. package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts +4 -0
  160. package/lib/typescript/src/utils/GestureHandlerRefContext.d.ts.map +1 -0
  161. package/lib/typescript/src/utils/ModalPresentationContext.d.ts +4 -0
  162. package/lib/typescript/src/utils/ModalPresentationContext.d.ts.map +1 -0
  163. package/lib/typescript/src/utils/conditional.d.ts +10 -0
  164. package/lib/typescript/src/utils/conditional.d.ts.map +1 -0
  165. package/lib/typescript/src/utils/debounce.d.ts +2 -0
  166. package/lib/typescript/src/utils/debounce.d.ts.map +1 -0
  167. package/lib/typescript/src/utils/findLastIndex.d.ts +2 -0
  168. package/lib/typescript/src/utils/findLastIndex.d.ts.map +1 -0
  169. package/lib/typescript/src/utils/getDistanceForDirection.d.ts +3 -0
  170. package/lib/typescript/src/utils/getDistanceForDirection.d.ts.map +1 -0
  171. package/lib/typescript/src/utils/getInvertedMultiplier.d.ts +3 -0
  172. package/lib/typescript/src/utils/getInvertedMultiplier.d.ts.map +1 -0
  173. package/lib/typescript/src/utils/memoize.d.ts +2 -0
  174. package/lib/typescript/src/utils/memoize.d.ts.map +1 -0
  175. package/lib/typescript/src/utils/useCardAnimation.d.ts +2 -0
  176. package/lib/typescript/src/utils/useCardAnimation.d.ts.map +1 -0
  177. package/lib/typescript/src/utils/useGestureHandlerRef.d.ts +3 -0
  178. package/lib/typescript/src/utils/useGestureHandlerRef.d.ts.map +1 -0
  179. package/lib/typescript/src/utils/useKeyboardManager.d.ts +6 -0
  180. package/lib/typescript/src/utils/useKeyboardManager.d.ts.map +1 -0
  181. package/lib/typescript/src/views/GestureHandler.android.d.ts +2 -0
  182. package/lib/typescript/src/views/GestureHandler.android.d.ts.map +1 -0
  183. package/lib/typescript/src/views/GestureHandler.d.ts +14 -0
  184. package/lib/typescript/src/views/GestureHandler.d.ts.map +1 -0
  185. package/lib/typescript/src/views/GestureHandler.ios.d.ts +2 -0
  186. package/lib/typescript/src/views/GestureHandler.ios.d.ts.map +1 -0
  187. package/lib/typescript/src/views/GestureHandlerNative.d.ts +6 -0
  188. package/lib/typescript/src/views/GestureHandlerNative.d.ts.map +1 -0
  189. package/lib/typescript/src/views/Header/Header.d.ts +5 -0
  190. package/lib/typescript/src/views/Header/Header.d.ts.map +1 -0
  191. package/lib/typescript/src/views/Header/HeaderContainer.d.ts +20 -0
  192. package/lib/typescript/src/views/Header/HeaderContainer.d.ts.map +1 -0
  193. package/lib/typescript/src/views/Header/HeaderSegment.d.ts +14 -0
  194. package/lib/typescript/src/views/Header/HeaderSegment.d.ts.map +1 -0
  195. package/lib/typescript/src/views/ModalStatusBarManager.d.ts +12 -0
  196. package/lib/typescript/src/views/ModalStatusBarManager.d.ts.map +1 -0
  197. package/lib/typescript/src/views/Screens.d.ts +13 -0
  198. package/lib/typescript/src/views/Screens.d.ts.map +1 -0
  199. package/lib/typescript/src/views/Stack/Card.d.ts +76 -0
  200. package/lib/typescript/src/views/Stack/Card.d.ts.map +1 -0
  201. package/lib/typescript/src/views/Stack/CardContainer.d.ts +63 -0
  202. package/lib/typescript/src/views/Stack/CardContainer.d.ts.map +1 -0
  203. package/lib/typescript/src/views/Stack/CardSheet.d.ts +15 -0
  204. package/lib/typescript/src/views/Stack/CardSheet.d.ts.map +1 -0
  205. package/lib/typescript/src/views/Stack/CardStack.d.ts +67 -0
  206. package/lib/typescript/src/views/Stack/CardStack.d.ts.map +1 -0
  207. package/lib/typescript/src/views/Stack/StackView.d.ts +122 -0
  208. package/lib/typescript/src/views/Stack/StackView.d.ts.map +1 -0
  209. package/package.json +1 -0
  210. package/src/TransitionConfigs/CardStyleInterpolators.tsx +394 -0
  211. package/src/TransitionConfigs/HeaderStyleInterpolators.tsx +268 -0
  212. package/src/TransitionConfigs/TransitionPresets.tsx +152 -0
  213. package/src/TransitionConfigs/TransitionSpecs.tsx +96 -0
  214. package/src/index.tsx +51 -0
  215. package/src/navigators/createStackNavigator.tsx +136 -0
  216. package/src/types.tsx +547 -0
  217. package/src/utils/CardAnimationContext.tsx +7 -0
  218. package/src/utils/GestureHandlerRefContext.tsx +5 -0
  219. package/src/utils/ModalPresentationContext.tsx +5 -0
  220. package/src/utils/conditional.tsx +33 -0
  221. package/src/utils/debounce.tsx +17 -0
  222. package/src/utils/findLastIndex.tsx +12 -0
  223. package/src/utils/getDistanceForDirection.tsx +18 -0
  224. package/src/utils/getInvertedMultiplier.tsx +18 -0
  225. package/src/utils/memoize.tsx +33 -0
  226. package/src/utils/useCardAnimation.tsx +15 -0
  227. package/src/utils/useGestureHandlerRef.tsx +15 -0
  228. package/src/utils/useKeyboardManager.tsx +105 -0
  229. package/src/views/GestureHandler.android.tsx +1 -0
  230. package/src/views/GestureHandler.ios.tsx +1 -0
  231. package/src/views/GestureHandler.tsx +23 -0
  232. package/src/views/GestureHandlerNative.tsx +23 -0
  233. package/src/views/Header/Header.tsx +72 -0
  234. package/src/views/Header/HeaderContainer.tsx +186 -0
  235. package/src/views/Header/HeaderSegment.tsx +205 -0
  236. package/src/views/ModalStatusBarManager.tsx +50 -0
  237. package/src/views/Screens.tsx +43 -0
  238. package/src/views/Stack/Card.tsx +628 -0
  239. package/src/views/Stack/CardContainer.tsx +320 -0
  240. package/src/views/Stack/CardSheet.tsx +61 -0
  241. package/src/views/Stack/CardStack.tsx +717 -0
  242. package/src/views/Stack/StackView.tsx +474 -0
@@ -0,0 +1,338 @@
1
+ import { Animated, Platform } from 'react-native';
2
+ import conditional from '../utils/conditional';
3
+ const {
4
+ add,
5
+ multiply
6
+ } = Animated;
7
+
8
+ /**
9
+ * Standard iOS-style slide in from the right.
10
+ */
11
+ export function forHorizontalIOS({
12
+ current,
13
+ next,
14
+ inverted,
15
+ layouts: {
16
+ screen
17
+ }
18
+ }) {
19
+ const translateFocused = multiply(current.progress.interpolate({
20
+ inputRange: [0, 1],
21
+ outputRange: [screen.width, 0],
22
+ extrapolate: 'clamp'
23
+ }), inverted);
24
+ const translateUnfocused = next ? multiply(next.progress.interpolate({
25
+ inputRange: [0, 1],
26
+ outputRange: [0, screen.width * -0.3],
27
+ extrapolate: 'clamp'
28
+ }), inverted) : 0;
29
+ const overlayOpacity = current.progress.interpolate({
30
+ inputRange: [0, 1],
31
+ outputRange: [0, 0.07],
32
+ extrapolate: 'clamp'
33
+ });
34
+ const shadowOpacity = current.progress.interpolate({
35
+ inputRange: [0, 1],
36
+ outputRange: [0, 0.3],
37
+ extrapolate: 'clamp'
38
+ });
39
+ return {
40
+ cardStyle: {
41
+ transform: [
42
+ // Translation for the animation of the current card
43
+ {
44
+ translateX: translateFocused
45
+ },
46
+ // Translation for the animation of the card on top of this
47
+ {
48
+ translateX: translateUnfocused
49
+ }]
50
+ },
51
+ overlayStyle: {
52
+ opacity: overlayOpacity
53
+ },
54
+ shadowStyle: {
55
+ shadowOpacity
56
+ }
57
+ };
58
+ }
59
+
60
+ /**
61
+ * Standard iOS-style slide in from the bottom (used for modals).
62
+ */
63
+ export function forVerticalIOS({
64
+ current,
65
+ inverted,
66
+ layouts: {
67
+ screen
68
+ }
69
+ }) {
70
+ const translateY = multiply(current.progress.interpolate({
71
+ inputRange: [0, 1],
72
+ outputRange: [screen.height, 0],
73
+ extrapolate: 'clamp'
74
+ }), inverted);
75
+ return {
76
+ cardStyle: {
77
+ transform: [{
78
+ translateY
79
+ }]
80
+ }
81
+ };
82
+ }
83
+
84
+ /**
85
+ * Standard iOS-style modal animation in iOS 13.
86
+ */
87
+ export function forModalPresentationIOS({
88
+ index,
89
+ current,
90
+ next,
91
+ inverted,
92
+ layouts: {
93
+ screen
94
+ },
95
+ insets
96
+ }) {
97
+ const hasNotchIos = Platform.OS === 'ios' && !Platform.isPad && !Platform.isTV && insets.top > 20;
98
+ const isLandscape = screen.width > screen.height;
99
+ const topOffset = isLandscape ? 0 : 10;
100
+ const statusBarHeight = insets.top;
101
+ const aspectRatio = screen.height / screen.width;
102
+ const progress = add(current.progress.interpolate({
103
+ inputRange: [0, 1],
104
+ outputRange: [0, 1],
105
+ extrapolate: 'clamp'
106
+ }), next ? next.progress.interpolate({
107
+ inputRange: [0, 1],
108
+ outputRange: [0, 1],
109
+ extrapolate: 'clamp'
110
+ }) : 0);
111
+ const isFirst = index === 0;
112
+ const translateY = multiply(progress.interpolate({
113
+ inputRange: [0, 1, 2],
114
+ outputRange: [screen.height, isFirst ? 0 : topOffset, (isFirst ? statusBarHeight : 0) - topOffset * aspectRatio]
115
+ }), inverted);
116
+ const overlayOpacity = progress.interpolate({
117
+ inputRange: [0, 1, 1.0001, 2],
118
+ outputRange: [0, 0.3, 1, 1]
119
+ });
120
+ const scale = isLandscape ? 1 : progress.interpolate({
121
+ inputRange: [0, 1, 2],
122
+ outputRange: [1, 1, screen.width ? 1 - topOffset * 2 / screen.width : 1]
123
+ });
124
+ const borderRadius = isLandscape ? 0 : isFirst ? progress.interpolate({
125
+ inputRange: [0, 1, 1.0001, 2],
126
+ outputRange: [0, 0, hasNotchIos ? 38 : 0, 10]
127
+ }) : 10;
128
+ return {
129
+ cardStyle: {
130
+ overflow: 'hidden',
131
+ borderTopLeftRadius: borderRadius,
132
+ borderTopRightRadius: borderRadius,
133
+ // We don't need these for the animation
134
+ // But different border radius for corners improves animation perf
135
+ borderBottomLeftRadius: hasNotchIos ? borderRadius : 0,
136
+ borderBottomRightRadius: hasNotchIos ? borderRadius : 0,
137
+ marginTop: isFirst ? 0 : statusBarHeight,
138
+ marginBottom: isFirst ? 0 : topOffset,
139
+ transform: [{
140
+ translateY
141
+ }, {
142
+ scale
143
+ }]
144
+ },
145
+ overlayStyle: {
146
+ opacity: overlayOpacity
147
+ }
148
+ };
149
+ }
150
+
151
+ /**
152
+ * Standard Android-style fade in from the bottom for Android Oreo.
153
+ */
154
+ export function forFadeFromBottomAndroid({
155
+ current,
156
+ inverted,
157
+ layouts: {
158
+ screen
159
+ },
160
+ closing
161
+ }) {
162
+ const translateY = multiply(current.progress.interpolate({
163
+ inputRange: [0, 1],
164
+ outputRange: [screen.height * 0.08, 0],
165
+ extrapolate: 'clamp'
166
+ }), inverted);
167
+ const opacity = conditional(closing, current.progress, current.progress.interpolate({
168
+ inputRange: [0, 0.5, 0.9, 1],
169
+ outputRange: [0, 0.25, 0.7, 1],
170
+ extrapolate: 'clamp'
171
+ }));
172
+ return {
173
+ cardStyle: {
174
+ opacity,
175
+ transform: [{
176
+ translateY
177
+ }]
178
+ }
179
+ };
180
+ }
181
+
182
+ /**
183
+ * Standard Android-style reveal from the bottom for Android Pie.
184
+ */
185
+ export function forRevealFromBottomAndroid({
186
+ current,
187
+ next,
188
+ inverted,
189
+ layouts: {
190
+ screen
191
+ }
192
+ }) {
193
+ const containerTranslateY = multiply(current.progress.interpolate({
194
+ inputRange: [0, 1],
195
+ outputRange: [screen.height, 0],
196
+ extrapolate: 'clamp'
197
+ }), inverted);
198
+ const cardTranslateYFocused = multiply(current.progress.interpolate({
199
+ inputRange: [0, 1],
200
+ outputRange: [screen.height * (95.9 / 100) * -1, 0],
201
+ extrapolate: 'clamp'
202
+ }), inverted);
203
+ const cardTranslateYUnfocused = next ? multiply(next.progress.interpolate({
204
+ inputRange: [0, 1],
205
+ outputRange: [0, screen.height * (2 / 100) * -1],
206
+ extrapolate: 'clamp'
207
+ }), inverted) : 0;
208
+ const overlayOpacity = current.progress.interpolate({
209
+ inputRange: [0, 0.36, 1],
210
+ outputRange: [0, 0.1, 0.1],
211
+ extrapolate: 'clamp'
212
+ });
213
+ return {
214
+ containerStyle: {
215
+ overflow: 'hidden',
216
+ transform: [{
217
+ translateY: containerTranslateY
218
+ }]
219
+ },
220
+ cardStyle: {
221
+ transform: [{
222
+ translateY: cardTranslateYFocused
223
+ }, {
224
+ translateY: cardTranslateYUnfocused
225
+ }]
226
+ },
227
+ overlayStyle: {
228
+ opacity: overlayOpacity
229
+ }
230
+ };
231
+ }
232
+
233
+ /**
234
+ * Standard Android-style zoom for Android 10.
235
+ */
236
+ export function forScaleFromCenterAndroid({
237
+ current,
238
+ next,
239
+ closing
240
+ }) {
241
+ const progress = add(current.progress.interpolate({
242
+ inputRange: [0, 1],
243
+ outputRange: [0, 1],
244
+ extrapolate: 'clamp'
245
+ }), next ? next.progress.interpolate({
246
+ inputRange: [0, 1],
247
+ outputRange: [0, 1],
248
+ extrapolate: 'clamp'
249
+ }) : 0);
250
+ const opacity = progress.interpolate({
251
+ inputRange: [0, 0.75, 0.875, 1, 1.0825, 1.2075, 2],
252
+ outputRange: [0, 0, 1, 1, 1, 1, 0]
253
+ });
254
+ const scale = conditional(closing, current.progress.interpolate({
255
+ inputRange: [0, 1],
256
+ outputRange: [0.925, 1],
257
+ extrapolate: 'clamp'
258
+ }), progress.interpolate({
259
+ inputRange: [0, 1, 2],
260
+ outputRange: [0.85, 1, 1.075]
261
+ }));
262
+ return {
263
+ cardStyle: {
264
+ opacity,
265
+ transform: [{
266
+ scale
267
+ }]
268
+ }
269
+ };
270
+ }
271
+
272
+ /**
273
+ * Standard bottom sheet slide in from the bottom for Android.
274
+ */
275
+ export function forBottomSheetAndroid({
276
+ current,
277
+ inverted,
278
+ layouts: {
279
+ screen
280
+ },
281
+ closing
282
+ }) {
283
+ const translateY = multiply(current.progress.interpolate({
284
+ inputRange: [0, 1],
285
+ outputRange: [screen.height * 0.8, 0],
286
+ extrapolate: 'clamp'
287
+ }), inverted);
288
+ const opacity = conditional(closing, current.progress, current.progress.interpolate({
289
+ inputRange: [0, 1],
290
+ outputRange: [0, 1],
291
+ extrapolate: 'clamp'
292
+ }));
293
+ const overlayOpacity = current.progress.interpolate({
294
+ inputRange: [0, 1],
295
+ outputRange: [0, 0.3],
296
+ extrapolate: 'clamp'
297
+ });
298
+ return {
299
+ cardStyle: {
300
+ opacity,
301
+ transform: [{
302
+ translateY
303
+ }]
304
+ },
305
+ overlayStyle: {
306
+ opacity: overlayOpacity
307
+ }
308
+ };
309
+ }
310
+
311
+ /**
312
+ * Simple fade animation for dialogs
313
+ */
314
+ export function forFadeFromCenter({
315
+ current: {
316
+ progress
317
+ }
318
+ }) {
319
+ return {
320
+ cardStyle: {
321
+ opacity: progress.interpolate({
322
+ inputRange: [0, 0.5, 0.9, 1],
323
+ outputRange: [0, 0.25, 0.7, 1]
324
+ })
325
+ },
326
+ overlayStyle: {
327
+ opacity: progress.interpolate({
328
+ inputRange: [0, 1],
329
+ outputRange: [0, 0.5],
330
+ extrapolate: 'clamp'
331
+ })
332
+ }
333
+ };
334
+ }
335
+ export function forNoAnimation() {
336
+ return {};
337
+ }
338
+ //# sourceMappingURL=CardStyleInterpolators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Animated","Platform","conditional","add","multiply","forHorizontalIOS","current","next","inverted","layouts","screen","translateFocused","progress","interpolate","inputRange","outputRange","width","extrapolate","translateUnfocused","overlayOpacity","shadowOpacity","cardStyle","transform","translateX","overlayStyle","opacity","shadowStyle","forVerticalIOS","translateY","height","forModalPresentationIOS","index","insets","hasNotchIos","OS","isPad","isTV","top","isLandscape","topOffset","statusBarHeight","aspectRatio","isFirst","scale","borderRadius","overflow","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","marginTop","marginBottom","forFadeFromBottomAndroid","closing","forRevealFromBottomAndroid","containerTranslateY","cardTranslateYFocused","cardTranslateYUnfocused","containerStyle","forScaleFromCenterAndroid","forBottomSheetAndroid","forFadeFromCenter","forNoAnimation"],"sourceRoot":"../../../src","sources":["TransitionConfigs/CardStyleInterpolators.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,248 @@
1
+ import { Animated, I18nManager } from 'react-native';
2
+ const {
3
+ add
4
+ } = Animated;
5
+
6
+ /**
7
+ * Standard UIKit style animation for the header where the title fades into the back button label.
8
+ */
9
+ export function forUIKit({
10
+ current,
11
+ next,
12
+ layouts
13
+ }) {
14
+ const defaultOffset = 100;
15
+ const leftSpacing = 27;
16
+
17
+ // The title and back button title should cross-fade to each other
18
+ // When screen is fully open, the title should be in center, and back title should be on left
19
+ // When screen is closing, the previous title will animate to back title's position
20
+ // And back title will animate to title's position
21
+ // We achieve this by calculating the offsets needed to translate title to back title's position and vice-versa
22
+ const leftLabelOffset = layouts.leftLabel ? (layouts.screen.width - layouts.leftLabel.width) / 2 - leftSpacing : defaultOffset;
23
+ const titleLeftOffset = layouts.title ? (layouts.screen.width - layouts.title.width) / 2 - leftSpacing : defaultOffset;
24
+
25
+ // When the current title is animating to right, it is centered in the right half of screen in middle of transition
26
+ // The back title also animates in from this position
27
+ const rightOffset = layouts.screen.width / 4;
28
+ const progress = add(current.progress.interpolate({
29
+ inputRange: [0, 1],
30
+ outputRange: [0, 1],
31
+ extrapolate: 'clamp'
32
+ }), next ? next.progress.interpolate({
33
+ inputRange: [0, 1],
34
+ outputRange: [0, 1],
35
+ extrapolate: 'clamp'
36
+ }) : 0);
37
+ return {
38
+ leftButtonStyle: {
39
+ opacity: progress.interpolate({
40
+ inputRange: [0.3, 1, 1.5],
41
+ outputRange: [0, 1, 0]
42
+ })
43
+ },
44
+ leftLabelStyle: {
45
+ transform: [{
46
+ translateX: progress.interpolate({
47
+ inputRange: [0, 1, 2],
48
+ outputRange: I18nManager.getConstants().isRTL ? [-rightOffset, 0, leftLabelOffset] : [leftLabelOffset, 0, -rightOffset]
49
+ })
50
+ }]
51
+ },
52
+ rightButtonStyle: {
53
+ opacity: progress.interpolate({
54
+ inputRange: [0.3, 1, 1.5],
55
+ outputRange: [0, 1, 0]
56
+ })
57
+ },
58
+ titleStyle: {
59
+ opacity: progress.interpolate({
60
+ inputRange: [0, 0.4, 1, 1.5],
61
+ outputRange: [0, 0.1, 1, 0]
62
+ }),
63
+ transform: [{
64
+ translateX: progress.interpolate({
65
+ inputRange: [0.5, 1, 2],
66
+ outputRange: I18nManager.getConstants().isRTL ? [-titleLeftOffset, 0, rightOffset] : [rightOffset, 0, -titleLeftOffset]
67
+ })
68
+ }]
69
+ },
70
+ backgroundStyle: {
71
+ transform: [{
72
+ translateX: progress.interpolate({
73
+ inputRange: [0, 1, 2],
74
+ outputRange: I18nManager.getConstants().isRTL ? [-layouts.screen.width, 0, layouts.screen.width] : [layouts.screen.width, 0, -layouts.screen.width]
75
+ })
76
+ }]
77
+ }
78
+ };
79
+ }
80
+
81
+ /**
82
+ * Simple fade animation for the header elements.
83
+ */
84
+ export function forFade({
85
+ current,
86
+ next
87
+ }) {
88
+ const progress = add(current.progress.interpolate({
89
+ inputRange: [0, 1],
90
+ outputRange: [0, 1],
91
+ extrapolate: 'clamp'
92
+ }), next ? next.progress.interpolate({
93
+ inputRange: [0, 1],
94
+ outputRange: [0, 1],
95
+ extrapolate: 'clamp'
96
+ }) : 0);
97
+ const opacity = progress.interpolate({
98
+ inputRange: [0, 1, 2],
99
+ outputRange: [0, 1, 0]
100
+ });
101
+ return {
102
+ leftButtonStyle: {
103
+ opacity
104
+ },
105
+ rightButtonStyle: {
106
+ opacity
107
+ },
108
+ titleStyle: {
109
+ opacity
110
+ },
111
+ backgroundStyle: {
112
+ opacity: progress.interpolate({
113
+ inputRange: [0, 1, 1.9, 2],
114
+ outputRange: [0, 1, 1, 0]
115
+ })
116
+ }
117
+ };
118
+ }
119
+
120
+ /**
121
+ * Simple translate animation to translate the header to left.
122
+ */
123
+ export function forSlideLeft({
124
+ current,
125
+ next,
126
+ layouts: {
127
+ screen
128
+ }
129
+ }) {
130
+ const progress = add(current.progress.interpolate({
131
+ inputRange: [0, 1],
132
+ outputRange: [0, 1],
133
+ extrapolate: 'clamp'
134
+ }), next ? next.progress.interpolate({
135
+ inputRange: [0, 1],
136
+ outputRange: [0, 1],
137
+ extrapolate: 'clamp'
138
+ }) : 0);
139
+ const translateX = progress.interpolate({
140
+ inputRange: [0, 1, 2],
141
+ outputRange: I18nManager.getConstants().isRTL ? [-screen.width, 0, screen.width] : [screen.width, 0, -screen.width]
142
+ });
143
+ const transform = [{
144
+ translateX
145
+ }];
146
+ return {
147
+ leftButtonStyle: {
148
+ transform
149
+ },
150
+ rightButtonStyle: {
151
+ transform
152
+ },
153
+ titleStyle: {
154
+ transform
155
+ },
156
+ backgroundStyle: {
157
+ transform
158
+ }
159
+ };
160
+ }
161
+
162
+ /**
163
+ * Simple translate animation to translate the header to right.
164
+ */
165
+ export function forSlideRight({
166
+ current,
167
+ next,
168
+ layouts: {
169
+ screen
170
+ }
171
+ }) {
172
+ const progress = add(current.progress.interpolate({
173
+ inputRange: [0, 1],
174
+ outputRange: [0, 1],
175
+ extrapolate: 'clamp'
176
+ }), next ? next.progress.interpolate({
177
+ inputRange: [0, 1],
178
+ outputRange: [0, 1],
179
+ extrapolate: 'clamp'
180
+ }) : 0);
181
+ const translateX = progress.interpolate({
182
+ inputRange: [0, 1, 2],
183
+ outputRange: I18nManager.getConstants().isRTL ? [screen.width, 0, -screen.width] : [-screen.width, 0, screen.width]
184
+ });
185
+ const transform = [{
186
+ translateX
187
+ }];
188
+ return {
189
+ leftButtonStyle: {
190
+ transform
191
+ },
192
+ rightButtonStyle: {
193
+ transform
194
+ },
195
+ titleStyle: {
196
+ transform
197
+ },
198
+ backgroundStyle: {
199
+ transform
200
+ }
201
+ };
202
+ }
203
+
204
+ /**
205
+ * Simple translate animation to translate the header to slide up.
206
+ */
207
+ export function forSlideUp({
208
+ current,
209
+ next,
210
+ layouts: {
211
+ header
212
+ }
213
+ }) {
214
+ const progress = add(current.progress.interpolate({
215
+ inputRange: [0, 1],
216
+ outputRange: [0, 1],
217
+ extrapolate: 'clamp'
218
+ }), next ? next.progress.interpolate({
219
+ inputRange: [0, 1],
220
+ outputRange: [0, 1],
221
+ extrapolate: 'clamp'
222
+ }) : 0);
223
+ const translateY = progress.interpolate({
224
+ inputRange: [0, 1, 2],
225
+ outputRange: [-header.height, 0, -header.height]
226
+ });
227
+ const transform = [{
228
+ translateY
229
+ }];
230
+ return {
231
+ leftButtonStyle: {
232
+ transform
233
+ },
234
+ rightButtonStyle: {
235
+ transform
236
+ },
237
+ titleStyle: {
238
+ transform
239
+ },
240
+ backgroundStyle: {
241
+ transform
242
+ }
243
+ };
244
+ }
245
+ export function forNoAnimation() {
246
+ return {};
247
+ }
248
+ //# sourceMappingURL=HeaderStyleInterpolators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Animated","I18nManager","add","forUIKit","current","next","layouts","defaultOffset","leftSpacing","leftLabelOffset","leftLabel","screen","width","titleLeftOffset","title","rightOffset","progress","interpolate","inputRange","outputRange","extrapolate","leftButtonStyle","opacity","leftLabelStyle","transform","translateX","getConstants","isRTL","rightButtonStyle","titleStyle","backgroundStyle","forFade","forSlideLeft","forSlideRight","forSlideUp","header","translateY","height","forNoAnimation"],"sourceRoot":"../../../src","sources":["TransitionConfigs/HeaderStyleInterpolators.tsx"],"mappings":"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","ignoreList":[]}