From f90e00cc9382c14fd51535341f08a1f7a43c285e Mon Sep 17 00:00:00 2001 From: "satyajit.happy" Date: Thu, 17 Oct 2019 22:52:48 +0200 Subject: [PATCH] chore: update paper so types work --- packages/example/package.json | 2 +- packages/material-bottom-tabs/package.json | 4 +-- packages/material-bottom-tabs/src/types.tsx | 12 ++++++++- .../src/views/MaterialBottomTabView.tsx | 15 +++++------ yarn.lock | 27 +++++++------------ 5 files changed, 30 insertions(+), 30 deletions(-) diff --git a/packages/example/package.json b/packages/example/package.json index 3554c128..f7ce7e28 100644 --- a/packages/example/package.json +++ b/packages/example/package.json @@ -27,7 +27,7 @@ "react-dom": "~16.8.3", "react-native": "~0.59.10", "react-native-gesture-handler": "~1.3.0", - "react-native-paper": "^3.0.0-alpha.3", + "react-native-paper": "^3.0.0-alpha.7", "react-native-reanimated": "~1.2.0", "react-native-safe-area-context": "~0.3.6", "react-native-screens": "2.0.0-alpha.4", diff --git a/packages/material-bottom-tabs/package.json b/packages/material-bottom-tabs/package.json index 37283cd4..8cf17efa 100644 --- a/packages/material-bottom-tabs/package.json +++ b/packages/material-bottom-tabs/package.json @@ -44,7 +44,7 @@ "del-cli": "^3.0.0", "react": "~16.8.3", "react-native": "~0.59.10", - "react-native-paper": "^3.0.0-alpha.3", + "react-native-paper": "^3.0.0-alpha.7", "react-native-vector-icons": "^6.6.0", "typescript": "^3.6.3" }, @@ -52,7 +52,7 @@ "@react-navigation/core": "^5.0.0-alpha.0", "react": "*", "react-native": "*", - "react-native-paper": "^3.0.0-alpha.3", + "react-native-paper": "^3.0.0-alpha.0", "react-native-vector-icons": "^6.0.0" }, "@react-native-community/bob": { diff --git a/packages/material-bottom-tabs/src/types.tsx b/packages/material-bottom-tabs/src/types.tsx index cbcf4ea2..59449c45 100644 --- a/packages/material-bottom-tabs/src/types.tsx +++ b/packages/material-bottom-tabs/src/types.tsx @@ -96,6 +96,16 @@ export type MaterialBottomTabDescriptorMap = { export type MaterialBottomTabNavigationConfig = Partial< Omit< React.ComponentProps, - 'navigationState' | 'onIndexChange' | 'renderScene' + | 'navigationState' + | 'onIndexChange' + | 'onTabPress' + | 'renderScene' + | 'renderLabel' + | 'renderIcon' + | 'getAccessibilityLabel' + | 'getBadge' + | 'getColor' + | 'getLabelText' + | 'getTestID' > >; diff --git a/packages/material-bottom-tabs/src/views/MaterialBottomTabView.tsx b/packages/material-bottom-tabs/src/views/MaterialBottomTabView.tsx index 1f536909..a5da2e71 100644 --- a/packages/material-bottom-tabs/src/views/MaterialBottomTabView.tsx +++ b/packages/material-bottom-tabs/src/views/MaterialBottomTabView.tsx @@ -2,7 +2,6 @@ import * as React from 'react'; import { StyleSheet } from 'react-native'; import { BottomNavigation } from 'react-native-paper'; import MaterialCommunityIcons from 'react-native-vector-icons/MaterialCommunityIcons'; -import { Route } from '@react-navigation/core'; import { TabNavigationState, TabActions } from '@react-navigation/routers'; import { @@ -17,7 +16,7 @@ type Props = MaterialBottomTabNavigationConfig & { descriptors: MaterialBottomTabDescriptorMap; }; -type Scene = { route: Route }; +type Scene = { route: { key: string } }; export default class MaterialBottomTabView extends React.PureComponent { private getColor = ({ route }: Scene) => { @@ -35,7 +34,7 @@ export default class MaterialBottomTabView extends React.PureComponent { ? options.tabBarLabel : typeof options.title === 'string' ? options.title - : route.name; + : ((route as any) as { name: string }).name; }; private getAccessibilityLabel = ({ route }: Scene) => { @@ -49,9 +48,9 @@ export default class MaterialBottomTabView extends React.PureComponent { const label = this.getLabelText({ route }); if (typeof label === 'string') { - return `${label}, tab, ${state.routes.indexOf(route) + 1} of ${ - state.routes.length - }`; + return `${label}, tab, ${state.routes.findIndex( + r => r.key === route.key + ) + 1} of ${state.routes.length}`; } return undefined; @@ -75,7 +74,7 @@ export default class MaterialBottomTabView extends React.PureComponent { focused, color, }: { - route: Route; + route: { key: string }; focused: boolean; color: string; }) => { @@ -114,7 +113,7 @@ export default class MaterialBottomTabView extends React.PureComponent { target: state.key, }) } - renderScene={({ route }: Scene) => descriptors[route.key].render()} + renderScene={({ route }) => descriptors[route.key].render()} renderIcon={this.renderIcon} getLabelText={this.getLabelText} getColor={this.getColor} diff --git a/yarn.lock b/yarn.lock index 8b774c4e..20b891f0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -864,12 +864,11 @@ lodash "^4.17.13" to-fast-properties "^2.0.0" -"@callstack/react-theme-provider@^3.0.2": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@callstack/react-theme-provider/-/react-theme-provider-3.0.3.tgz#f964dda28cd6e731c3fbcf916b0579c6f9fb2db7" - integrity sha512-B+9JBK7zsND/AdVkjwHvbb4cR05fJofLFG30hOeoXke8WkKAWN36yFljauAhI8qwlXlGFGZMYE1wQvsqBSccrA== +"@callstack/react-theme-provider@^3.0.5": + version "3.0.5" + resolved "https://registry.yarnpkg.com/@callstack/react-theme-provider/-/react-theme-provider-3.0.5.tgz#a173e455e9603c9c45357a3b6ace1273086527ca" + integrity sha512-Iec+ybWN0FvNj87sD3oWo/49edGUP0UOSdMnzCJEFJIDYr992ECIuOV89burAAh2/ibPCxgLiK6dmgv2mO/8Tg== dependencies: - "@types/hoist-non-react-statics" "^3.3.1" deepmerge "^3.2.0" hoist-non-react-statics "^3.3.0" @@ -2530,14 +2529,6 @@ "@types/minimatch" "*" "@types/node" "*" -"@types/hoist-non-react-statics@^3.3.1": - version "3.3.1" - resolved "https://registry.yarnpkg.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#1124aafe5118cb591977aeb1ceaaed1070eb039f" - integrity sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA== - dependencies: - "@types/react" "*" - hoist-non-react-statics "^3.3.0" - "@types/http-proxy-middleware@*": version "0.19.3" resolved "https://registry.yarnpkg.com/@types/http-proxy-middleware/-/http-proxy-middleware-0.19.3.tgz#b2eb96fbc0f9ac7250b5d9c4c53aade049497d03" @@ -13111,12 +13102,12 @@ react-native-gesture-handler@~1.3.0: invariant "^2.2.2" prop-types "^15.5.10" -react-native-paper@^3.0.0-alpha.3: - version "3.0.0-alpha.5" - resolved "https://registry.yarnpkg.com/react-native-paper/-/react-native-paper-3.0.0-alpha.5.tgz#2a3e23c52ec717d7c6a1df1e7adc1005611b08a2" - integrity sha512-LSsmhCIo2EgT9azd1usjBmfGBgNkKOMdHWkFJnwmGrXo/JMxhlD/KMt+GRTz4ZjFWmJu3GO635ihYleSJhW6Mg== +react-native-paper@^3.0.0-alpha.7: + version "3.0.0-alpha.7" + resolved "https://registry.yarnpkg.com/react-native-paper/-/react-native-paper-3.0.0-alpha.7.tgz#fbbfe5dc9ef8dbd18932786aa3d7f0479501538b" + integrity sha512-tjqewrUMnucLM4yqMiVtCOnrqilnvDDNr2guIImwsUpJ6HWaJKBEFKqB25SEdMvuo88MWSdA0gyRNtS3WRpS3w== dependencies: - "@callstack/react-theme-provider" "^3.0.2" + "@callstack/react-theme-provider" "^3.0.5" color "^3.1.2" react-native-safe-area-view "^0.12.0"