@react-navigation/material-top-tabs 7.0.0-alpha.2 → 7.0.0-alpha.4
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.
- package/lib/commonjs/index.js +7 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/utils/TabAnimationContext.js +12 -0
- package/lib/commonjs/utils/TabAnimationContext.js.map +1 -0
- package/lib/commonjs/utils/useTabAnimation.js +18 -0
- package/lib/commonjs/utils/useTabAnimation.js.map +1 -0
- package/lib/commonjs/views/MaterialTopTabBar.js +4 -0
- package/lib/commonjs/views/MaterialTopTabBar.js.map +1 -1
- package/lib/commonjs/views/MaterialTopTabView.js +13 -3
- package/lib/commonjs/views/MaterialTopTabView.js.map +1 -1
- package/lib/module/index.js +5 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/utils/TabAnimationContext.js +3 -0
- package/lib/module/utils/TabAnimationContext.js.map +1 -0
- package/lib/module/utils/useTabAnimation.js +10 -0
- package/lib/module/utils/useTabAnimation.js.map +1 -0
- package/lib/module/views/MaterialTopTabBar.js +5 -1
- package/lib/module/views/MaterialTopTabBar.js.map +1 -1
- package/lib/module/views/MaterialTopTabView.js +14 -4
- package/lib/module/views/MaterialTopTabView.js.map +1 -1
- package/lib/typescript/src/index.d.ts +4 -0
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +4 -1
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/utils/TabAnimationContext.d.ts +4 -0
- package/lib/typescript/src/utils/TabAnimationContext.d.ts.map +1 -0
- package/lib/typescript/src/utils/useTabAnimation.d.ts +2 -0
- package/lib/typescript/src/utils/useTabAnimation.d.ts.map +1 -0
- package/lib/typescript/src/views/MaterialTopTabBar.d.ts.map +1 -1
- package/lib/typescript/src/views/MaterialTopTabView.d.ts.map +1 -1
- package/package.json +5 -5
- package/src/index.tsx +5 -0
- package/src/types.tsx +5 -0
- package/src/utils/TabAnimationContext.tsx +7 -0
- package/src/utils/useTabAnimation.tsx +15 -0
- package/src/views/MaterialTopTabBar.tsx +3 -0
- package/src/views/MaterialTopTabView.tsx +9 -1
package/lib/commonjs/index.js
CHANGED
|
@@ -21,7 +21,14 @@ Object.defineProperty(exports, "createMaterialTopTabNavigator", {
|
|
|
21
21
|
return _createMaterialTopTabNavigator.createMaterialTopTabNavigator;
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
|
+
Object.defineProperty(exports, "useTabAnimation", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _useTabAnimation.useTabAnimation;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
24
30
|
var _createMaterialTopTabNavigator = require("./navigators/createMaterialTopTabNavigator");
|
|
25
31
|
var _MaterialTopTabBar = require("./views/MaterialTopTabBar");
|
|
26
32
|
var _MaterialTopTabView = require("./views/MaterialTopTabView");
|
|
33
|
+
var _useTabAnimation = require("./utils/useTabAnimation");
|
|
27
34
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AAKA;AACA;AAKA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.TabAnimationContext = void 0;
|
|
7
|
+
var React = _interopRequireWildcard(require("react"));
|
|
8
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
9
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
10
|
+
const TabAnimationContext = /*#__PURE__*/React.createContext(undefined);
|
|
11
|
+
exports.TabAnimationContext = TabAnimationContext;
|
|
12
|
+
//# sourceMappingURL=TabAnimationContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TabAnimationContext","React","createContext","undefined"],"sourceRoot":"../../../src","sources":["utils/TabAnimationContext.tsx"],"mappings":";;;;;;AAAA;AAA+B;AAAA;AAIxB,MAAMA,mBAAmB,gBAAGC,KAAK,CAACC,aAAa,CAEpDC,SAAS,CAAC;AAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useTabAnimation = useTabAnimation;
|
|
7
|
+
var React = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _TabAnimationContext = require("./TabAnimationContext");
|
|
9
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
10
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
11
|
+
function useTabAnimation() {
|
|
12
|
+
const animation = React.useContext(_TabAnimationContext.TabAnimationContext);
|
|
13
|
+
if (animation === undefined) {
|
|
14
|
+
throw new Error("Couldn't find values for tab animation. Are you inside a screen in Material Top Tab navigator?");
|
|
15
|
+
}
|
|
16
|
+
return animation;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=useTabAnimation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useTabAnimation","animation","React","useContext","TabAnimationContext","undefined","Error"],"sourceRoot":"../../../src","sources":["utils/useTabAnimation.tsx"],"mappings":";;;;;;AAAA;AAEA;AAA4D;AAAA;AAErD,SAASA,eAAe,GAAG;EAChC,MAAMC,SAAS,GAAGC,KAAK,CAACC,UAAU,CAACC,wCAAmB,CAAC;EAEvD,IAAIH,SAAS,KAAKI,SAAS,EAAE;IAC3B,MAAM,IAAIC,KAAK,CACb,gGAAgG,CACjG;EACH;EAEA,OAAOL,SAAS;AAClB"}
|
|
@@ -24,11 +24,15 @@ function MaterialTopTabBar(_ref) {
|
|
|
24
24
|
colors,
|
|
25
25
|
fonts
|
|
26
26
|
} = (0, _native.useTheme)();
|
|
27
|
+
const {
|
|
28
|
+
direction
|
|
29
|
+
} = (0, _native.useLocale)();
|
|
27
30
|
const focusedOptions = descriptors[state.routes[state.index].key].options;
|
|
28
31
|
const activeColor = focusedOptions.tabBarActiveTintColor ?? colors.text;
|
|
29
32
|
const inactiveColor = focusedOptions.tabBarInactiveTintColor ?? (0, _color.default)(activeColor).alpha(0.5).rgb().string();
|
|
30
33
|
return /*#__PURE__*/React.createElement(_reactNativeTabView.TabBar, _extends({}, rest, {
|
|
31
34
|
navigationState: state,
|
|
35
|
+
direction: direction,
|
|
32
36
|
scrollEnabled: focusedOptions.tabBarScrollEnabled,
|
|
33
37
|
bounces: focusedOptions.tabBarBounces,
|
|
34
38
|
activeColor: activeColor,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["MaterialTopTabBar","state","navigation","descriptors","rest","colors","fonts","useTheme","focusedOptions","routes","index","key","options","activeColor","tabBarActiveTintColor","text","inactiveColor","tabBarInactiveTintColor","Color","alpha","rgb","string","tabBarScrollEnabled","tabBarBounces","tabBarPressColor","tabBarPressOpacity","tabBarItemStyle","backgroundColor","primary","tabBarIndicatorStyle","tabBarGap","tabBarAndroidRipple","tabBarIndicatorContainerStyle","tabBarContentContainerStyle","card","tabBarStyle","route","tabBarAccessibilityLabel","tabBarButtonTestID","preventDefault","event","emit","type","target","canPreventDefault","defaultPrevented","focused","color","tabBarShowIcon","tabBarIcon","undefined","icon","styles","tabBarIconStyle","tabBarShowLabel","label","tabBarLabel","title","name","regular","tabBarLabelStyle","tabBarAllowFontScaling","children","tabBarBadge","navigationState","tabBarIndicator","StyleSheet","create","height","width","textAlign","textTransform","fontSize","margin"],"sourceRoot":"../../../src","sources":["views/MaterialTopTabBar.tsx"],"mappings":";;;;;;AAAA;
|
|
1
|
+
{"version":3,"names":["MaterialTopTabBar","state","navigation","descriptors","rest","colors","fonts","useTheme","direction","useLocale","focusedOptions","routes","index","key","options","activeColor","tabBarActiveTintColor","text","inactiveColor","tabBarInactiveTintColor","Color","alpha","rgb","string","tabBarScrollEnabled","tabBarBounces","tabBarPressColor","tabBarPressOpacity","tabBarItemStyle","backgroundColor","primary","tabBarIndicatorStyle","tabBarGap","tabBarAndroidRipple","tabBarIndicatorContainerStyle","tabBarContentContainerStyle","card","tabBarStyle","route","tabBarAccessibilityLabel","tabBarButtonTestID","preventDefault","event","emit","type","target","canPreventDefault","defaultPrevented","focused","color","tabBarShowIcon","tabBarIcon","undefined","icon","styles","tabBarIconStyle","tabBarShowLabel","label","tabBarLabel","title","name","regular","tabBarLabelStyle","tabBarAllowFontScaling","children","tabBarBadge","navigationState","tabBarIndicator","StyleSheet","create","height","width","textAlign","textTransform","fontSize","margin"],"sourceRoot":"../../../src","sources":["views/MaterialTopTabBar.tsx"],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ exports.MaterialTopTabView = MaterialTopTabView;
|
|
|
7
7
|
var _native = require("@react-navigation/native");
|
|
8
8
|
var React = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _reactNativeTabView = require("react-native-tab-view");
|
|
10
|
+
var _TabAnimationContext = require("../utils/TabAnimationContext");
|
|
10
11
|
var _MaterialTopTabBar = require("./MaterialTopTabBar");
|
|
11
12
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
12
13
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -23,6 +24,9 @@ function MaterialTopTabView(_ref) {
|
|
|
23
24
|
const {
|
|
24
25
|
colors
|
|
25
26
|
} = (0, _native.useTheme)();
|
|
27
|
+
const {
|
|
28
|
+
direction
|
|
29
|
+
} = (0, _native.useLocale)();
|
|
26
30
|
const renderTabBar = props => {
|
|
27
31
|
return tabBar({
|
|
28
32
|
...props,
|
|
@@ -42,9 +46,14 @@ function MaterialTopTabView(_ref) {
|
|
|
42
46
|
},
|
|
43
47
|
renderScene: _ref2 => {
|
|
44
48
|
let {
|
|
45
|
-
route
|
|
49
|
+
route,
|
|
50
|
+
position
|
|
46
51
|
} = _ref2;
|
|
47
|
-
return
|
|
52
|
+
return /*#__PURE__*/React.createElement(_TabAnimationContext.TabAnimationContext.Provider, {
|
|
53
|
+
value: {
|
|
54
|
+
position
|
|
55
|
+
}
|
|
56
|
+
}, descriptors[route.key].render());
|
|
48
57
|
},
|
|
49
58
|
navigationState: state,
|
|
50
59
|
renderTabBar: renderTabBar,
|
|
@@ -72,7 +81,8 @@ function MaterialTopTabView(_ref) {
|
|
|
72
81
|
}),
|
|
73
82
|
sceneContainerStyle: [{
|
|
74
83
|
backgroundColor: colors.background
|
|
75
|
-
}, sceneContainerStyle]
|
|
84
|
+
}, sceneContainerStyle],
|
|
85
|
+
direction: direction
|
|
76
86
|
}));
|
|
77
87
|
}
|
|
78
88
|
//# sourceMappingURL=MaterialTopTabView.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["MaterialTopTabView","tabBar","props","state","navigation","descriptors","sceneContainerStyle","rest","colors","useTheme","renderTabBar","focusedOptions","routes","index","key","options","route","dispatch","CommonActions","navigate","target","render","lazyPlaceholder","lazy","lazyPreloadDistance","swipeEnabled","animationEnabled","emit","type","backgroundColor","background"],"sourceRoot":"../../../src","sources":["views/MaterialTopTabView.tsx"],"mappings":";;;;;;AAAA;
|
|
1
|
+
{"version":3,"names":["MaterialTopTabView","tabBar","props","state","navigation","descriptors","sceneContainerStyle","rest","colors","useTheme","direction","useLocale","renderTabBar","focusedOptions","routes","index","key","options","route","dispatch","CommonActions","navigate","target","position","render","lazyPlaceholder","lazy","lazyPreloadDistance","swipeEnabled","animationEnabled","emit","type","backgroundColor","background"],"sourceRoot":"../../../src","sources":["views/MaterialTopTabView.tsx"],"mappings":";;;;;;AAAA;AAQA;AACA;AAQA;AACA;AAAwD;AAAA;AAAA;AAQjD,SAASA,kBAAkB,OAOxB;EAAA,IAPyB;IACjCC,MAAM,GAAIC,KAA6B,iBAAK,oBAAC,oCAAiB,EAAKA,KAAK,CAAI;IAC5EC,KAAK;IACLC,UAAU;IACVC,WAAW;IACXC,mBAAmB;IACnB,GAAGC;EACE,CAAC;EACN,MAAM;IAAEC;EAAO,CAAC,GAAG,IAAAC,gBAAQ,GAAE;EAC7B,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,iBAAS,GAAE;EAEjC,MAAMC,YAAY,GAAIV,KAAyB,IAAK;IAClD,OAAOD,MAAM,CAAC;MACZ,GAAGC,KAAK;MACRC,KAAK,EAAEA,KAAK;MACZC,UAAU,EAAEA,UAAU;MACtBC,WAAW,EAAEA;IACf,CAAC,CAAC;EACJ,CAAC;EAED,MAAMQ,cAAc,GAAGR,WAAW,CAACF,KAAK,CAACW,MAAM,CAACX,KAAK,CAACY,KAAK,CAAC,CAACC,GAAG,CAAC,CAACC,OAAO;EAEzE,oBACE,oBAAC,2BAAO,eACFV,IAAI;IACR,aAAa,EAAGQ,KAAK,IAAK;MACxB,MAAMG,KAAK,GAAGf,KAAK,CAACW,MAAM,CAACC,KAAK,CAAC;MAEjCX,UAAU,CAACe,QAAQ,CAAC;QAClB,GAAGC,qBAAa,CAACC,QAAQ,CAACH,KAAK,CAAC;QAChCI,MAAM,EAAEnB,KAAK,CAACa;MAChB,CAAC,CAAC;IACJ,CAAE;IACF,WAAW,EAAE;MAAA,IAAC;QAAEE,KAAK;QAAEK;MAAS,CAAC;MAAA,oBAC/B,oBAAC,wCAAmB,CAAC,QAAQ;QAAC,KAAK,EAAE;UAAEA;QAAS;MAAE,GAC/ClB,WAAW,CAACa,KAAK,CAACF,GAAG,CAAC,CAACQ,MAAM,EAAE,CACH;IAAA,CAC/B;IACF,eAAe,EAAErB,KAAM;IACvB,YAAY,EAAES,YAAa;IAC3B,qBAAqB,EAAE;MAAA;MAAA,IAAC;QAAEM;MAAM,CAAC;MAAA,OAC/B,oDAAAb,WAAW,CAACa,KAAK,CAACF,GAAG,CAAC,CAACC,OAAO,EAACQ,eAAe,0DAA9C,kDAAkD,KAAI,IAAI;IAAA,CAC3D;IACD,IAAI,EAAE;MAAA,IAAC;QAAEP;MAAM,CAAC;MAAA,OAAKb,WAAW,CAACa,KAAK,CAACF,GAAG,CAAC,CAACC,OAAO,CAACS,IAAI,KAAK,IAAI;IAAA,CAAC;IAClE,mBAAmB,EAAEb,cAAc,CAACc,mBAAoB;IACxD,YAAY,EAAEd,cAAc,CAACe,YAAa;IAC1C,gBAAgB,EAAEf,cAAc,CAACgB,gBAAiB;IAClD,YAAY,EAAE,MAAMzB,UAAU,CAAC0B,IAAI,CAAC;MAAEC,IAAI,EAAE;IAAa,CAAC,CAAE;IAC5D,UAAU,EAAE,MAAM3B,UAAU,CAAC0B,IAAI,CAAC;MAAEC,IAAI,EAAE;IAAW,CAAC,CAAE;IACxD,mBAAmB,EAAE,CACnB;MAAEC,eAAe,EAAExB,MAAM,CAACyB;IAAW,CAAC,EACtC3B,mBAAmB,CACnB;IACF,SAAS,EAAEI;EAAU,GACrB;AAEN"}
|
package/lib/module/index.js
CHANGED
|
@@ -9,6 +9,11 @@ export { createMaterialTopTabNavigator } from './navigators/createMaterialTopTab
|
|
|
9
9
|
export { MaterialTopTabBar } from './views/MaterialTopTabBar';
|
|
10
10
|
export { MaterialTopTabView } from './views/MaterialTopTabView';
|
|
11
11
|
|
|
12
|
+
/**
|
|
13
|
+
* Utilities
|
|
14
|
+
*/
|
|
15
|
+
export { useTabAnimation } from './utils/useTabAnimation';
|
|
16
|
+
|
|
12
17
|
/**
|
|
13
18
|
* Types
|
|
14
19
|
*/
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createMaterialTopTabNavigator","MaterialTopTabBar","MaterialTopTabView"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,6BAA6B,QAAQ,4CAA4C;;AAE1F;AACA;AACA;AACA,SAASC,iBAAiB,QAAQ,2BAA2B;AAC7D,SAASC,kBAAkB,QAAQ,4BAA4B;;AAE/D;AACA;AACA"}
|
|
1
|
+
{"version":3,"names":["createMaterialTopTabNavigator","MaterialTopTabBar","MaterialTopTabView","useTabAnimation"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,6BAA6B,QAAQ,4CAA4C;;AAE1F;AACA;AACA;AACA,SAASC,iBAAiB,QAAQ,2BAA2B;AAC7D,SAASC,kBAAkB,QAAQ,4BAA4B;;AAE/D;AACA;AACA;AACA,SAASC,eAAe,QAAQ,yBAAyB;;AAEzD;AACA;AACA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","TabAnimationContext","createContext","undefined"],"sourceRoot":"../../../src","sources":["utils/TabAnimationContext.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAI9B,OAAO,MAAMC,mBAAmB,gBAAGD,KAAK,CAACE,aAAa,CAEpDC,SAAS,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { TabAnimationContext } from './TabAnimationContext';
|
|
3
|
+
export function useTabAnimation() {
|
|
4
|
+
const animation = React.useContext(TabAnimationContext);
|
|
5
|
+
if (animation === undefined) {
|
|
6
|
+
throw new Error("Couldn't find values for tab animation. Are you inside a screen in Material Top Tab navigator?");
|
|
7
|
+
}
|
|
8
|
+
return animation;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=useTabAnimation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","TabAnimationContext","useTabAnimation","animation","useContext","undefined","Error"],"sourceRoot":"../../../src","sources":["utils/useTabAnimation.tsx"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,SAASC,mBAAmB,QAAQ,uBAAuB;AAE3D,OAAO,SAASC,eAAe,GAAG;EAChC,MAAMC,SAAS,GAAGH,KAAK,CAACI,UAAU,CAACH,mBAAmB,CAAC;EAEvD,IAAIE,SAAS,KAAKE,SAAS,EAAE;IAC3B,MAAM,IAAIC,KAAK,CACb,gGAAgG,CACjG;EACH;EAEA,OAAOH,SAAS;AAClB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
-
import { useTheme } from '@react-navigation/native';
|
|
2
|
+
import { useLocale, useTheme } from '@react-navigation/native';
|
|
3
3
|
import Color from 'color';
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import { StyleSheet, Text, View } from 'react-native';
|
|
@@ -15,11 +15,15 @@ export function MaterialTopTabBar(_ref) {
|
|
|
15
15
|
colors,
|
|
16
16
|
fonts
|
|
17
17
|
} = useTheme();
|
|
18
|
+
const {
|
|
19
|
+
direction
|
|
20
|
+
} = useLocale();
|
|
18
21
|
const focusedOptions = descriptors[state.routes[state.index].key].options;
|
|
19
22
|
const activeColor = focusedOptions.tabBarActiveTintColor ?? colors.text;
|
|
20
23
|
const inactiveColor = focusedOptions.tabBarInactiveTintColor ?? Color(activeColor).alpha(0.5).rgb().string();
|
|
21
24
|
return /*#__PURE__*/React.createElement(TabBar, _extends({}, rest, {
|
|
22
25
|
navigationState: state,
|
|
26
|
+
direction: direction,
|
|
23
27
|
scrollEnabled: focusedOptions.tabBarScrollEnabled,
|
|
24
28
|
bounces: focusedOptions.tabBarBounces,
|
|
25
29
|
activeColor: activeColor,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useTheme","Color","React","StyleSheet","Text","View","TabBar","TabBarIndicator","MaterialTopTabBar","state","navigation","descriptors","rest","colors","fonts","focusedOptions","routes","index","key","options","activeColor","tabBarActiveTintColor","text","inactiveColor","tabBarInactiveTintColor","alpha","rgb","string","tabBarScrollEnabled","tabBarBounces","tabBarPressColor","tabBarPressOpacity","tabBarItemStyle","backgroundColor","primary","tabBarIndicatorStyle","tabBarGap","tabBarAndroidRipple","tabBarIndicatorContainerStyle","tabBarContentContainerStyle","card","tabBarStyle","route","tabBarAccessibilityLabel","tabBarButtonTestID","preventDefault","event","emit","type","target","canPreventDefault","defaultPrevented","focused","color","tabBarShowIcon","tabBarIcon","undefined","icon","styles","tabBarIconStyle","tabBarShowLabel","label","tabBarLabel","title","name","regular","tabBarLabelStyle","tabBarAllowFontScaling","children","tabBarBadge","navigationState","tabBarIndicator","create","height","width","textAlign","textTransform","fontSize","margin"],"sourceRoot":"../../../src","sources":["views/MaterialTopTabBar.tsx"],"mappings":";AAAA,SAIEA,QAAQ,QACH,0BAA0B;AACjC,OAAOC,KAAK,MAAM,OAAO;AACzB,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,EAAEC,IAAI,EAAEC,IAAI,QAAQ,cAAc;AACrD,SAASC,MAAM,EAAEC,eAAe,QAAQ,uBAAuB;AAI/D,OAAO,SAASC,iBAAiB,OAKN;EAAA,IALO;IAChCC,KAAK;IACLC,UAAU;IACVC,WAAW;IACX,GAAGC;EACmB,CAAC;EACvB,MAAM;IAAEC,MAAM;IAAEC;EAAM,CAAC,GAAGd,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"names":["useLocale","useTheme","Color","React","StyleSheet","Text","View","TabBar","TabBarIndicator","MaterialTopTabBar","state","navigation","descriptors","rest","colors","fonts","direction","focusedOptions","routes","index","key","options","activeColor","tabBarActiveTintColor","text","inactiveColor","tabBarInactiveTintColor","alpha","rgb","string","tabBarScrollEnabled","tabBarBounces","tabBarPressColor","tabBarPressOpacity","tabBarItemStyle","backgroundColor","primary","tabBarIndicatorStyle","tabBarGap","tabBarAndroidRipple","tabBarIndicatorContainerStyle","tabBarContentContainerStyle","card","tabBarStyle","route","tabBarAccessibilityLabel","tabBarButtonTestID","preventDefault","event","emit","type","target","canPreventDefault","defaultPrevented","focused","color","tabBarShowIcon","tabBarIcon","undefined","icon","styles","tabBarIconStyle","tabBarShowLabel","label","tabBarLabel","title","name","regular","tabBarLabelStyle","tabBarAllowFontScaling","children","tabBarBadge","navigationState","tabBarIndicator","create","height","width","textAlign","textTransform","fontSize","margin"],"sourceRoot":"../../../src","sources":["views/MaterialTopTabBar.tsx"],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
-
import { CommonActions, useTheme } from '@react-navigation/native';
|
|
2
|
+
import { CommonActions, useLocale, useTheme } from '@react-navigation/native';
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import { TabView } from 'react-native-tab-view';
|
|
5
|
+
import { TabAnimationContext } from '../utils/TabAnimationContext';
|
|
5
6
|
import { MaterialTopTabBar } from './MaterialTopTabBar';
|
|
6
7
|
export function MaterialTopTabView(_ref) {
|
|
7
8
|
let {
|
|
@@ -15,6 +16,9 @@ export function MaterialTopTabView(_ref) {
|
|
|
15
16
|
const {
|
|
16
17
|
colors
|
|
17
18
|
} = useTheme();
|
|
19
|
+
const {
|
|
20
|
+
direction
|
|
21
|
+
} = useLocale();
|
|
18
22
|
const renderTabBar = props => {
|
|
19
23
|
return tabBar({
|
|
20
24
|
...props,
|
|
@@ -34,9 +38,14 @@ export function MaterialTopTabView(_ref) {
|
|
|
34
38
|
},
|
|
35
39
|
renderScene: _ref2 => {
|
|
36
40
|
let {
|
|
37
|
-
route
|
|
41
|
+
route,
|
|
42
|
+
position
|
|
38
43
|
} = _ref2;
|
|
39
|
-
return
|
|
44
|
+
return /*#__PURE__*/React.createElement(TabAnimationContext.Provider, {
|
|
45
|
+
value: {
|
|
46
|
+
position
|
|
47
|
+
}
|
|
48
|
+
}, descriptors[route.key].render());
|
|
40
49
|
},
|
|
41
50
|
navigationState: state,
|
|
42
51
|
renderTabBar: renderTabBar,
|
|
@@ -64,7 +73,8 @@ export function MaterialTopTabView(_ref) {
|
|
|
64
73
|
}),
|
|
65
74
|
sceneContainerStyle: [{
|
|
66
75
|
backgroundColor: colors.background
|
|
67
|
-
}, sceneContainerStyle]
|
|
76
|
+
}, sceneContainerStyle],
|
|
77
|
+
direction: direction
|
|
68
78
|
}));
|
|
69
79
|
}
|
|
70
80
|
//# sourceMappingURL=MaterialTopTabView.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CommonActions","useTheme","React","TabView","MaterialTopTabBar","MaterialTopTabView","tabBar","props","state","navigation","descriptors","sceneContainerStyle","rest","colors","renderTabBar","focusedOptions","routes","index","key","options","route","dispatch","navigate","target","render","lazyPlaceholder","lazy","lazyPreloadDistance","swipeEnabled","animationEnabled","emit","type","backgroundColor","background"],"sourceRoot":"../../../src","sources":["views/MaterialTopTabView.tsx"],"mappings":";AAAA,SACEA,aAAa,EAIbC,QAAQ,QACH,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,SAA6BC,OAAO,QAAQ,uBAAuB;AAQnE,SAASC,iBAAiB,QAAQ,qBAAqB;AAQvD,OAAO,SAASC,kBAAkB,OAOxB;EAAA,IAPyB;IACjCC,MAAM,GAAIC,KAA6B,iBAAK,oBAAC,iBAAiB,EAAKA,KAAK,CAAI;IAC5EC,KAAK;IACLC,UAAU;IACVC,WAAW;IACXC,mBAAmB;IACnB,GAAGC;EACE,CAAC;EACN,MAAM;IAAEC;EAAO,CAAC,
|
|
1
|
+
{"version":3,"names":["CommonActions","useLocale","useTheme","React","TabView","TabAnimationContext","MaterialTopTabBar","MaterialTopTabView","tabBar","props","state","navigation","descriptors","sceneContainerStyle","rest","colors","direction","renderTabBar","focusedOptions","routes","index","key","options","route","dispatch","navigate","target","position","render","lazyPlaceholder","lazy","lazyPreloadDistance","swipeEnabled","animationEnabled","emit","type","backgroundColor","background"],"sourceRoot":"../../../src","sources":["views/MaterialTopTabView.tsx"],"mappings":";AAAA,SACEA,aAAa,EAIbC,SAAS,EACTC,QAAQ,QACH,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,SAA6BC,OAAO,QAAQ,uBAAuB;AAQnE,SAASC,mBAAmB,QAAQ,8BAA8B;AAClE,SAASC,iBAAiB,QAAQ,qBAAqB;AAQvD,OAAO,SAASC,kBAAkB,OAOxB;EAAA,IAPyB;IACjCC,MAAM,GAAIC,KAA6B,iBAAK,oBAAC,iBAAiB,EAAKA,KAAK,CAAI;IAC5EC,KAAK;IACLC,UAAU;IACVC,WAAW;IACXC,mBAAmB;IACnB,GAAGC;EACE,CAAC;EACN,MAAM;IAAEC;EAAO,CAAC,GAAGb,QAAQ,EAAE;EAC7B,MAAM;IAAEc;EAAU,CAAC,GAAGf,SAAS,EAAE;EAEjC,MAAMgB,YAAY,GAAIR,KAAyB,IAAK;IAClD,OAAOD,MAAM,CAAC;MACZ,GAAGC,KAAK;MACRC,KAAK,EAAEA,KAAK;MACZC,UAAU,EAAEA,UAAU;MACtBC,WAAW,EAAEA;IACf,CAAC,CAAC;EACJ,CAAC;EAED,MAAMM,cAAc,GAAGN,WAAW,CAACF,KAAK,CAACS,MAAM,CAACT,KAAK,CAACU,KAAK,CAAC,CAACC,GAAG,CAAC,CAACC,OAAO;EAEzE,oBACE,oBAAC,OAAO,eACFR,IAAI;IACR,aAAa,EAAGM,KAAK,IAAK;MACxB,MAAMG,KAAK,GAAGb,KAAK,CAACS,MAAM,CAACC,KAAK,CAAC;MAEjCT,UAAU,CAACa,QAAQ,CAAC;QAClB,GAAGxB,aAAa,CAACyB,QAAQ,CAACF,KAAK,CAAC;QAChCG,MAAM,EAAEhB,KAAK,CAACW;MAChB,CAAC,CAAC;IACJ,CAAE;IACF,WAAW,EAAE;MAAA,IAAC;QAAEE,KAAK;QAAEI;MAAS,CAAC;MAAA,oBAC/B,oBAAC,mBAAmB,CAAC,QAAQ;QAAC,KAAK,EAAE;UAAEA;QAAS;MAAE,GAC/Cf,WAAW,CAACW,KAAK,CAACF,GAAG,CAAC,CAACO,MAAM,EAAE,CACH;IAAA,CAC/B;IACF,eAAe,EAAElB,KAAM;IACvB,YAAY,EAAEO,YAAa;IAC3B,qBAAqB,EAAE;MAAA;MAAA,IAAC;QAAEM;MAAM,CAAC;MAAA,OAC/B,oDAAAX,WAAW,CAACW,KAAK,CAACF,GAAG,CAAC,CAACC,OAAO,EAACO,eAAe,0DAA9C,kDAAkD,KAAI,IAAI;IAAA,CAC3D;IACD,IAAI,EAAE;MAAA,IAAC;QAAEN;MAAM,CAAC;MAAA,OAAKX,WAAW,CAACW,KAAK,CAACF,GAAG,CAAC,CAACC,OAAO,CAACQ,IAAI,KAAK,IAAI;IAAA,CAAC;IAClE,mBAAmB,EAAEZ,cAAc,CAACa,mBAAoB;IACxD,YAAY,EAAEb,cAAc,CAACc,YAAa;IAC1C,gBAAgB,EAAEd,cAAc,CAACe,gBAAiB;IAClD,YAAY,EAAE,MAAMtB,UAAU,CAACuB,IAAI,CAAC;MAAEC,IAAI,EAAE;IAAa,CAAC,CAAE;IAC5D,UAAU,EAAE,MAAMxB,UAAU,CAACuB,IAAI,CAAC;MAAEC,IAAI,EAAE;IAAW,CAAC,CAAE;IACxD,mBAAmB,EAAE,CACnB;MAAEC,eAAe,EAAErB,MAAM,CAACsB;IAAW,CAAC,EACtCxB,mBAAmB,CACnB;IACF,SAAS,EAAEG;EAAU,GACrB;AAEN"}
|
|
@@ -7,6 +7,10 @@ export { createMaterialTopTabNavigator } from './navigators/createMaterialTopTab
|
|
|
7
7
|
*/
|
|
8
8
|
export { MaterialTopTabBar } from './views/MaterialTopTabBar';
|
|
9
9
|
export { MaterialTopTabView } from './views/MaterialTopTabView';
|
|
10
|
+
/**
|
|
11
|
+
* Utilities
|
|
12
|
+
*/
|
|
13
|
+
export { useTabAnimation } from './utils/useTabAnimation';
|
|
10
14
|
/**
|
|
11
15
|
* Types
|
|
12
16
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC;AAE3F;;GAEG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE;;GAEG;AACH,YAAY,EACV,sBAAsB,EACtB,gCAAgC,EAChC,+BAA+B,EAC/B,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC;AAE3F;;GAEG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE;;GAEG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1D;;GAEG;AACH,YAAY,EACV,sBAAsB,EACtB,gCAAgC,EAChC,+BAA+B,EAC/B,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,SAAS,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Descriptor, NavigationHelpers, NavigationProp, ParamListBase, Route, RouteProp, TabActionHelpers, TabNavigationState } from '@react-navigation/native';
|
|
2
2
|
import type React from 'react';
|
|
3
|
-
import type { PressableAndroidRippleConfig, StyleProp, TextStyle, ViewStyle } from 'react-native';
|
|
3
|
+
import type { Animated, PressableAndroidRippleConfig, StyleProp, TextStyle, ViewStyle } from 'react-native';
|
|
4
4
|
import type { SceneRendererProps, TabBar, TabViewProps } from 'react-native-tab-view';
|
|
5
5
|
export type MaterialTopTabNavigationEventMap = {
|
|
6
6
|
/**
|
|
@@ -204,4 +204,7 @@ export type MaterialTopTabBarProps = SceneRendererProps & {
|
|
|
204
204
|
navigation: NavigationHelpers<ParamListBase, MaterialTopTabNavigationEventMap>;
|
|
205
205
|
descriptors: MaterialTopTabDescriptorMap;
|
|
206
206
|
};
|
|
207
|
+
export type MaterialTopTabAnimationContext = {
|
|
208
|
+
position: Animated.AnimatedInterpolation<number>;
|
|
209
|
+
};
|
|
207
210
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TabAnimationContext.d.ts","sourceRoot":"","sources":["../../../../src/utils/TabAnimationContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,UAAU,CAAC;AAE/D,eAAO,MAAM,mBAAmB,2DAEpB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTabAnimation.d.ts","sourceRoot":"","sources":["../../../../src/utils/useTabAnimation.tsx"],"names":[],"mappings":"AAIA,wBAAgB,eAAe,sDAU9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaterialTopTabBar.d.ts","sourceRoot":"","sources":["../../../../src/views/MaterialTopTabBar.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MaterialTopTabBar.d.ts","sourceRoot":"","sources":["../../../../src/views/MaterialTopTabBar.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAEvD,wBAAgB,iBAAiB,CAAC,EAChC,KAAK,EACL,UAAU,EACV,WAAW,EACX,GAAG,IAAI,EACR,EAAE,sBAAsB,eAgIxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaterialTopTabView.d.ts","sourceRoot":"","sources":["../../../../src/views/MaterialTopTabView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EAEb,kBAAkB,
|
|
1
|
+
{"version":3,"file":"MaterialTopTabView.d.ts","sourceRoot":"","sources":["../../../../src/views/MaterialTopTabView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EAEb,kBAAkB,EAGnB,MAAM,0BAA0B,CAAC;AAIlC,OAAO,KAAK,EAEV,2BAA2B,EAC3B,8BAA8B,EAC9B,+BAA+B,EAChC,MAAM,UAAU,CAAC;AAIlB,KAAK,KAAK,GAAG,8BAA8B,GAAG;IAC5C,KAAK,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IACzC,UAAU,EAAE,+BAA+B,CAAC;IAC5C,WAAW,EAAE,2BAA2B,CAAC;CAC1C,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,EACjC,MAA4E,EAC5E,KAAK,EACL,UAAU,EACV,WAAW,EACX,mBAAmB,EACnB,GAAG,IAAI,EACR,EAAE,KAAK,eAiDP"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@react-navigation/material-top-tabs",
|
|
3
3
|
"description": "Integration for the animated tab view component from react-native-tab-view",
|
|
4
|
-
"version": "7.0.0-alpha.
|
|
4
|
+
"version": "7.0.0-alpha.4",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react-native-component",
|
|
7
7
|
"react-component",
|
|
@@ -42,17 +42,17 @@
|
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
44
|
"color": "^4.2.3",
|
|
45
|
-
"react-native-tab-view": "^
|
|
45
|
+
"react-native-tab-view": "^4.0.0-alpha.0"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
|
-
"@react-navigation/native": "^7.0.0-alpha.
|
|
48
|
+
"@react-navigation/native": "^7.0.0-alpha.4",
|
|
49
49
|
"@testing-library/react-native": "^11.5.0",
|
|
50
50
|
"@types/react": "~18.0.27",
|
|
51
51
|
"@types/react-native": "~0.70.8",
|
|
52
52
|
"del-cli": "^5.0.0",
|
|
53
53
|
"react": "18.2.0",
|
|
54
54
|
"react-native": "0.71.8",
|
|
55
|
-
"react-native-builder-bob": "^0.
|
|
55
|
+
"react-native-builder-bob": "^0.21.0",
|
|
56
56
|
"react-native-pager-view": "6.1.2",
|
|
57
57
|
"typescript": "^4.9.4"
|
|
58
58
|
},
|
|
@@ -76,5 +76,5 @@
|
|
|
76
76
|
]
|
|
77
77
|
]
|
|
78
78
|
},
|
|
79
|
-
"gitHead": "
|
|
79
|
+
"gitHead": "ae0a70c2d94f77cd8ca8b8d3028f684a63f81b92"
|
|
80
80
|
}
|
package/src/index.tsx
CHANGED
|
@@ -9,6 +9,11 @@ export { createMaterialTopTabNavigator } from './navigators/createMaterialTopTab
|
|
|
9
9
|
export { MaterialTopTabBar } from './views/MaterialTopTabBar';
|
|
10
10
|
export { MaterialTopTabView } from './views/MaterialTopTabView';
|
|
11
11
|
|
|
12
|
+
/**
|
|
13
|
+
* Utilities
|
|
14
|
+
*/
|
|
15
|
+
export { useTabAnimation } from './utils/useTabAnimation';
|
|
16
|
+
|
|
12
17
|
/**
|
|
13
18
|
* Types
|
|
14
19
|
*/
|
package/src/types.tsx
CHANGED
|
@@ -10,6 +10,7 @@ import type {
|
|
|
10
10
|
} from '@react-navigation/native';
|
|
11
11
|
import type React from 'react';
|
|
12
12
|
import type {
|
|
13
|
+
Animated,
|
|
13
14
|
PressableAndroidRippleConfig,
|
|
14
15
|
StyleProp,
|
|
15
16
|
TextStyle,
|
|
@@ -299,3 +300,7 @@ export type MaterialTopTabBarProps = SceneRendererProps & {
|
|
|
299
300
|
>;
|
|
300
301
|
descriptors: MaterialTopTabDescriptorMap;
|
|
301
302
|
};
|
|
303
|
+
|
|
304
|
+
export type MaterialTopTabAnimationContext = {
|
|
305
|
+
position: Animated.AnimatedInterpolation<number>;
|
|
306
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
import { TabAnimationContext } from './TabAnimationContext';
|
|
4
|
+
|
|
5
|
+
export function useTabAnimation() {
|
|
6
|
+
const animation = React.useContext(TabAnimationContext);
|
|
7
|
+
|
|
8
|
+
if (animation === undefined) {
|
|
9
|
+
throw new Error(
|
|
10
|
+
"Couldn't find values for tab animation. Are you inside a screen in Material Top Tab navigator?"
|
|
11
|
+
);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
return animation;
|
|
15
|
+
}
|
|
@@ -2,6 +2,7 @@ import {
|
|
|
2
2
|
ParamListBase,
|
|
3
3
|
Route,
|
|
4
4
|
TabNavigationState,
|
|
5
|
+
useLocale,
|
|
5
6
|
useTheme,
|
|
6
7
|
} from '@react-navigation/native';
|
|
7
8
|
import Color from 'color';
|
|
@@ -18,6 +19,7 @@ export function MaterialTopTabBar({
|
|
|
18
19
|
...rest
|
|
19
20
|
}: MaterialTopTabBarProps) {
|
|
20
21
|
const { colors, fonts } = useTheme();
|
|
22
|
+
const { direction } = useLocale();
|
|
21
23
|
|
|
22
24
|
const focusedOptions = descriptors[state.routes[state.index].key].options;
|
|
23
25
|
|
|
@@ -30,6 +32,7 @@ export function MaterialTopTabBar({
|
|
|
30
32
|
<TabBar
|
|
31
33
|
{...rest}
|
|
32
34
|
navigationState={state}
|
|
35
|
+
direction={direction}
|
|
33
36
|
scrollEnabled={focusedOptions.tabBarScrollEnabled}
|
|
34
37
|
bounces={focusedOptions.tabBarBounces}
|
|
35
38
|
activeColor={activeColor}
|
|
@@ -3,6 +3,7 @@ import {
|
|
|
3
3
|
ParamListBase,
|
|
4
4
|
Route,
|
|
5
5
|
TabNavigationState,
|
|
6
|
+
useLocale,
|
|
6
7
|
useTheme,
|
|
7
8
|
} from '@react-navigation/native';
|
|
8
9
|
import * as React from 'react';
|
|
@@ -14,6 +15,7 @@ import type {
|
|
|
14
15
|
MaterialTopTabNavigationConfig,
|
|
15
16
|
MaterialTopTabNavigationHelpers,
|
|
16
17
|
} from '../types';
|
|
18
|
+
import { TabAnimationContext } from '../utils/TabAnimationContext';
|
|
17
19
|
import { MaterialTopTabBar } from './MaterialTopTabBar';
|
|
18
20
|
|
|
19
21
|
type Props = MaterialTopTabNavigationConfig & {
|
|
@@ -31,6 +33,7 @@ export function MaterialTopTabView({
|
|
|
31
33
|
...rest
|
|
32
34
|
}: Props) {
|
|
33
35
|
const { colors } = useTheme();
|
|
36
|
+
const { direction } = useLocale();
|
|
34
37
|
|
|
35
38
|
const renderTabBar = (props: SceneRendererProps) => {
|
|
36
39
|
return tabBar({
|
|
@@ -54,7 +57,11 @@ export function MaterialTopTabView({
|
|
|
54
57
|
target: state.key,
|
|
55
58
|
});
|
|
56
59
|
}}
|
|
57
|
-
renderScene={({ route }) =>
|
|
60
|
+
renderScene={({ route, position }) => (
|
|
61
|
+
<TabAnimationContext.Provider value={{ position }}>
|
|
62
|
+
{descriptors[route.key].render()}
|
|
63
|
+
</TabAnimationContext.Provider>
|
|
64
|
+
)}
|
|
58
65
|
navigationState={state}
|
|
59
66
|
renderTabBar={renderTabBar}
|
|
60
67
|
renderLazyPlaceholder={({ route }) =>
|
|
@@ -70,6 +77,7 @@ export function MaterialTopTabView({
|
|
|
70
77
|
{ backgroundColor: colors.background },
|
|
71
78
|
sceneContainerStyle,
|
|
72
79
|
]}
|
|
80
|
+
direction={direction}
|
|
73
81
|
/>
|
|
74
82
|
);
|
|
75
83
|
}
|