@amazon-devices/react-navigation__react-native-tab-view 7.0.1758683737 → 8.0.9000000000
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/README.md +2 -646
- package/SystemBundles/6f915df16edbc21a601928d99e844a99397b9428146027dcf0d86b2a798f21f4.bundle +8563 -0
- package/SystemBundles/6f915df16edbc21a601928d99e844a99397b9428146027dcf0d86b2a798f21f4.map +3217 -0
- package/SystemModules/amzn__react-navigation__react-native-tab-view-8.modules.txt +12 -0
- package/SystemModules/amzn__react-navigation__react-native-tab-view-8.private.modules.txt +63 -0
- package/SystemModules/keplerscript-system-bundle-config.json +4 -4
- package/kepler-compatibility.json +2 -4
- package/lib/module/Pager.android.js +3 -1
- package/lib/module/Pager.android.js.map +1 -1
- package/lib/module/Pager.ios.js +3 -1
- package/lib/module/Pager.ios.js.map +1 -1
- package/lib/module/Pager.js +3 -1
- package/lib/module/Pager.js.map +1 -1
- package/lib/module/PagerViewAdapter.js +29 -22
- package/lib/module/PagerViewAdapter.js.map +1 -1
- package/lib/module/PanResponderAdapter.js +46 -32
- package/lib/module/PanResponderAdapter.js.map +1 -1
- package/lib/module/PlatformPressable.js +38 -12
- package/lib/module/PlatformPressable.js.map +1 -1
- package/lib/module/SceneMap.js +7 -4
- package/lib/module/SceneMap.js.map +1 -1
- package/lib/module/SceneView.js +16 -14
- package/lib/module/SceneView.js.map +1 -1
- package/lib/module/TabBar.js +232 -156
- package/lib/module/TabBar.js.map +1 -1
- package/lib/module/TabBarIndicator.js +47 -26
- package/lib/module/TabBarIndicator.js.map +1 -1
- package/lib/module/TabBarItem.js +106 -107
- package/lib/module/TabBarItem.js.map +1 -1
- package/lib/module/TabBarItemLabel.js +33 -0
- package/lib/module/TabBarItemLabel.js.map +1 -0
- package/lib/module/TabView.js +91 -63
- package/lib/module/TabView.js.map +1 -1
- package/lib/module/index.js +7 -5
- package/lib/module/index.js.map +1 -1
- package/lib/module/package.json +1 -0
- package/lib/module/types.js +2 -0
- package/lib/module/types.js.map +1 -1
- package/lib/module/useAnimatedValue.js +4 -2
- package/lib/module/useAnimatedValue.js.map +1 -1
- package/lib/typescript/package.json +1 -0
- package/lib/typescript/src/Pager.android.d.ts +1 -1
- package/lib/typescript/src/Pager.android.d.ts.map +1 -1
- package/lib/typescript/src/Pager.d.ts +1 -1
- package/lib/typescript/src/Pager.d.ts.map +1 -1
- package/lib/typescript/src/Pager.ios.d.ts +1 -1
- package/lib/typescript/src/Pager.ios.d.ts.map +1 -1
- package/lib/typescript/src/PagerViewAdapter.d.ts +4 -1
- package/lib/typescript/src/PagerViewAdapter.d.ts.map +1 -1
- package/lib/typescript/src/PanResponderAdapter.d.ts +4 -1
- package/lib/typescript/src/PanResponderAdapter.d.ts.map +1 -1
- package/lib/typescript/src/PlatformPressable.d.ts +6 -8
- package/lib/typescript/src/PlatformPressable.d.ts.map +1 -1
- package/lib/typescript/src/SceneMap.d.ts +2 -2
- package/lib/typescript/src/SceneMap.d.ts.map +1 -1
- package/lib/typescript/src/SceneView.d.ts +2 -2
- package/lib/typescript/src/SceneView.d.ts.map +1 -1
- package/lib/typescript/src/TabBar.d.ts +7 -19
- package/lib/typescript/src/TabBar.d.ts.map +1 -1
- package/lib/typescript/src/TabBarIndicator.d.ts +8 -6
- package/lib/typescript/src/TabBarIndicator.d.ts.map +1 -1
- package/lib/typescript/src/TabBarItem.d.ts +4 -22
- package/lib/typescript/src/TabBarItem.d.ts.map +1 -1
- package/lib/typescript/src/TabBarItemLabel.d.ts +11 -0
- package/lib/typescript/src/TabBarItemLabel.d.ts.map +1 -0
- package/lib/typescript/src/TabView.d.ts +14 -8
- package/lib/typescript/src/TabView.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +6 -6
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +29 -1
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/useAnimatedValue.d.ts +1 -1
- package/lib/typescript/src/useAnimatedValue.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/Pager.android.tsx +1 -1
- package/src/Pager.ios.tsx +1 -1
- package/src/Pager.tsx +1 -1
- package/src/PagerViewAdapter.tsx +26 -21
- package/src/PanResponderAdapter.tsx +32 -28
- package/src/PlatformPressable.tsx +59 -10
- package/src/SceneMap.tsx +3 -3
- package/src/SceneView.tsx +6 -7
- package/src/TabBar.tsx +282 -193
- package/src/TabBarIndicator.tsx +65 -28
- package/src/TabBarItem.tsx +119 -130
- package/src/TabBarItemLabel.tsx +42 -0
- package/src/TabView.tsx +59 -16
- package/src/index.tsx +11 -6
- package/src/types.tsx +29 -1
- package/src/useAnimatedValue.tsx +2 -2
- package/SystemBundles/0c296a88d0023a3995e190db70259767d1ef39c9da6cd47f3d76cd128687f1f6.bundle +0 -14497
- package/SystemBundles/0c296a88d0023a3995e190db70259767d1ef39c9da6cd47f3d76cd128687f1f6.map +0 -1
- package/SystemModules/amzn__react-navigation__react-native-tab-view-7.modules.txt +0 -41
- package/SystemModules/amzn__react-navigation__react-native-tab-view-7.private.modules.txt +0 -98
- package/THIRD_PARTY_NOTICES.txt +0 -24
- package/lib/commonjs/Pager.android.js +0 -14
- package/lib/commonjs/Pager.android.js.map +0 -1
- package/lib/commonjs/Pager.ios.js +0 -14
- package/lib/commonjs/Pager.ios.js.map +0 -1
- package/lib/commonjs/Pager.js +0 -14
- package/lib/commonjs/Pager.js.map +0 -1
- package/lib/commonjs/PagerViewAdapter.js +0 -132
- package/lib/commonjs/PagerViewAdapter.js.map +0 -1
- package/lib/commonjs/PanResponderAdapter.js +0 -204
- package/lib/commonjs/PanResponderAdapter.js.map +0 -1
- package/lib/commonjs/PlatformPressable.js +0 -43
- package/lib/commonjs/PlatformPressable.js.map +0 -1
- package/lib/commonjs/SceneMap.js +0 -29
- package/lib/commonjs/SceneMap.js.map +0 -1
- package/lib/commonjs/SceneView.js +0 -78
- package/lib/commonjs/SceneView.js.map +0 -1
- package/lib/commonjs/TabBar.js +0 -405
- package/lib/commonjs/TabBar.js.map +0 -1
- package/lib/commonjs/TabBarIndicator.js +0 -110
- package/lib/commonjs/TabBarIndicator.js.map +0 -1
- package/lib/commonjs/TabBarItem.js +0 -227
- package/lib/commonjs/TabBarItem.js.map +0 -1
- package/lib/commonjs/TabView.js +0 -122
- package/lib/commonjs/TabView.js.map +0 -1
- package/lib/commonjs/index.js +0 -42
- package/lib/commonjs/index.js.map +0 -1
- package/lib/commonjs/types.js +0 -6
- package/lib/commonjs/types.js.map +0 -1
- package/lib/commonjs/useAnimatedValue.js +0 -18
- package/lib/commonjs/useAnimatedValue.js.map +0 -1
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = PlatformPressable;
|
|
7
|
-
var React = _interopRequireWildcard(require("react"));
|
|
8
|
-
var _reactNative = require("react-native");
|
|
9
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
10
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
|
-
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
12
|
-
const ANDROID_VERSION_LOLLIPOP = 21;
|
|
13
|
-
const ANDROID_SUPPORTS_RIPPLE = _reactNative.Platform.OS === 'android' && _reactNative.Platform.Version >= ANDROID_VERSION_LOLLIPOP;
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* PlatformPressable provides an abstraction on top of TouchableNativeFeedback and
|
|
17
|
-
* TouchableOpacity to handle platform differences.
|
|
18
|
-
*
|
|
19
|
-
* On Android, you can pass the props of TouchableNativeFeedback.
|
|
20
|
-
* On other platforms, you can pass the props of TouchableOpacity.
|
|
21
|
-
*/
|
|
22
|
-
function PlatformPressable({
|
|
23
|
-
android_ripple,
|
|
24
|
-
pressColor = 'rgba(0, 0, 0, .32)',
|
|
25
|
-
pressOpacity,
|
|
26
|
-
style,
|
|
27
|
-
...rest
|
|
28
|
-
}) {
|
|
29
|
-
return /*#__PURE__*/React.createElement(_reactNative.Pressable, _extends({
|
|
30
|
-
android_ripple: ANDROID_SUPPORTS_RIPPLE ? {
|
|
31
|
-
color: pressColor,
|
|
32
|
-
...android_ripple
|
|
33
|
-
} : undefined,
|
|
34
|
-
style: ({
|
|
35
|
-
pressed
|
|
36
|
-
}) => [{
|
|
37
|
-
opacity: pressed && !ANDROID_SUPPORTS_RIPPLE ? pressOpacity : 1
|
|
38
|
-
}, typeof style === 'function' ? style({
|
|
39
|
-
pressed
|
|
40
|
-
}) : style]
|
|
41
|
-
}, rest));
|
|
42
|
-
}
|
|
43
|
-
//# sourceMappingURL=PlatformPressable.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","ANDROID_VERSION_LOLLIPOP","ANDROID_SUPPORTS_RIPPLE","Platform","OS","Version","PlatformPressable","android_ripple","pressColor","pressOpacity","style","rest","createElement","Pressable","color","undefined","pressed","opacity"],"sourceRoot":"../../src","sources":["PlatformPressable.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAAmE,SAAAE,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAJ,wBAAAI,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA,SAAAW,SAAA,WAAAA,QAAA,GAAAR,MAAA,CAAAS,MAAA,GAAAT,MAAA,CAAAS,MAAA,CAAAC,IAAA,eAAAb,CAAA,aAAAR,CAAA,MAAAA,CAAA,GAAAsB,SAAA,CAAAC,MAAA,EAAAvB,CAAA,UAAAG,CAAA,GAAAmB,SAAA,CAAAtB,CAAA,YAAAE,CAAA,IAAAC,CAAA,OAAAY,cAAA,CAAAC,IAAA,CAAAb,CAAA,EAAAD,CAAA,MAAAM,CAAA,CAAAN,CAAA,IAAAC,CAAA,CAAAD,CAAA,aAAAM,CAAA,KAAAW,QAAA,CAAAK,KAAA,OAAAF,SAAA;AAQnE,MAAMG,wBAAwB,GAAG,EAAE;AACnC,MAAMC,uBAAuB,GAC3BC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAID,qBAAQ,CAACE,OAAO,IAAIJ,wBAAwB;;AAE3E;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASK,iBAAiBA,CAAC;EACxCC,cAAc;EACdC,UAAU,GAAG,oBAAoB;EACjCC,YAAY;EACZC,KAAK;EACL,GAAGC;AACE,CAAC,EAAE;EACR,oBACExC,KAAA,CAAAyC,aAAA,CAACtC,YAAA,CAAAuC,SAAS,EAAAlB,QAAA;IACRY,cAAc,EACZL,uBAAuB,GACnB;MAAEY,KAAK,EAAEN,UAAU;MAAE,GAAGD;IAAe,CAAC,GACxCQ,SACL;IACDL,KAAK,EAAEA,CAAC;MAAEM;IAAQ,CAAC,KAAK,CACtB;MAAEC,OAAO,EAAED,OAAO,IAAI,CAACd,uBAAuB,GAAGO,YAAY,GAAG;IAAE,CAAC,EACnE,OAAOC,KAAK,KAAK,UAAU,GAAGA,KAAK,CAAC;MAAEM;IAAQ,CAAC,CAAC,GAAGN,KAAK;EACxD,GACEC,IAAI,CACT,CAAC;AAEN","ignoreList":[]}
|
package/lib/commonjs/SceneMap.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = SceneMap;
|
|
7
|
-
var React = _interopRequireWildcard(require("react"));
|
|
8
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
9
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
10
|
-
const SceneComponent = /*#__PURE__*/React.memo(({
|
|
11
|
-
component,
|
|
12
|
-
...rest
|
|
13
|
-
}) => {
|
|
14
|
-
return /*#__PURE__*/React.createElement(component, rest);
|
|
15
|
-
});
|
|
16
|
-
function SceneMap(scenes) {
|
|
17
|
-
return ({
|
|
18
|
-
route,
|
|
19
|
-
jumpTo,
|
|
20
|
-
position
|
|
21
|
-
}) => /*#__PURE__*/React.createElement(SceneComponent, {
|
|
22
|
-
key: route.key,
|
|
23
|
-
component: scenes[route.key],
|
|
24
|
-
route: route,
|
|
25
|
-
jumpTo: jumpTo,
|
|
26
|
-
position: position
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=SceneMap.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","SceneComponent","memo","component","rest","createElement","SceneMap","scenes","route","jumpTo","position","key"],"sourceRoot":"../../src","sources":["SceneMap.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAA+B,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAQ/B,MAAMW,cAAc,gBAAGvB,KAAK,CAACwB,IAAI,CAC/B,CAAiE;EAC/DC,SAAS;EACT,GAAGC;AACF,CAAC,KAAK;EACP,oBAAO1B,KAAK,CAAC2B,aAAa,CAACF,SAAS,EAAEC,IAAI,CAAC;AAC7C,CACF,CAAC;AAEc,SAASE,QAAQA,CAAgBC,MAE/C,EAAE;EACD,OAAO,CAAC;IAAEC,KAAK;IAAEC,MAAM;IAAEC;EAAqB,CAAC,kBAC7ChC,KAAA,CAAA2B,aAAA,CAACJ,cAAc;IACbU,GAAG,EAAEH,KAAK,CAACG,GAAI;IACfR,SAAS,EAAEI,MAAM,CAACC,KAAK,CAACG,GAAG,CAAE;IAC7BH,KAAK,EAAEA,KAAM;IACbC,MAAM,EAAEA,MAAO;IACfC,QAAQ,EAAEA;EAAS,CACpB,CACF;AACH","ignoreList":[]}
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = SceneView;
|
|
7
|
-
var React = _interopRequireWildcard(require("react"));
|
|
8
|
-
var _reactNative = require("react-native");
|
|
9
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
10
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
|
-
function SceneView({
|
|
12
|
-
children,
|
|
13
|
-
navigationState,
|
|
14
|
-
lazy,
|
|
15
|
-
layout,
|
|
16
|
-
index,
|
|
17
|
-
lazyPreloadDistance,
|
|
18
|
-
addEnterListener,
|
|
19
|
-
style
|
|
20
|
-
}) {
|
|
21
|
-
const [isLoading, setIsLoading] = React.useState(Math.abs(navigationState.index - index) > lazyPreloadDistance);
|
|
22
|
-
if (isLoading && Math.abs(navigationState.index - index) <= lazyPreloadDistance) {
|
|
23
|
-
// Always render the route when it becomes focused
|
|
24
|
-
setIsLoading(false);
|
|
25
|
-
}
|
|
26
|
-
React.useEffect(() => {
|
|
27
|
-
const handleEnter = value => {
|
|
28
|
-
// If we're entering the current route, we need to load it
|
|
29
|
-
if (value === index) {
|
|
30
|
-
setIsLoading(prevState => {
|
|
31
|
-
if (prevState) {
|
|
32
|
-
return false;
|
|
33
|
-
}
|
|
34
|
-
return prevState;
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
let unsubscribe;
|
|
39
|
-
let timer;
|
|
40
|
-
if (lazy && isLoading) {
|
|
41
|
-
// If lazy mode is enabled, listen to when we enter screens
|
|
42
|
-
unsubscribe = addEnterListener(handleEnter);
|
|
43
|
-
} else if (isLoading) {
|
|
44
|
-
// If lazy mode is not enabled, render the scene with a delay if not loaded already
|
|
45
|
-
// This improves the initial startup time as the scene is no longer blocking
|
|
46
|
-
timer = setTimeout(() => setIsLoading(false), 0);
|
|
47
|
-
}
|
|
48
|
-
return () => {
|
|
49
|
-
var _unsubscribe;
|
|
50
|
-
(_unsubscribe = unsubscribe) === null || _unsubscribe === void 0 || _unsubscribe();
|
|
51
|
-
clearTimeout(timer);
|
|
52
|
-
};
|
|
53
|
-
}, [addEnterListener, index, isLoading, lazy]);
|
|
54
|
-
const focused = navigationState.index === index;
|
|
55
|
-
return /*#__PURE__*/React.createElement(_reactNative.View, {
|
|
56
|
-
accessibilityElementsHidden: !focused,
|
|
57
|
-
importantForAccessibility: focused ? 'auto' : 'no-hide-descendants',
|
|
58
|
-
style: [styles.route,
|
|
59
|
-
// If we don't have the layout yet, make the focused screen fill the container
|
|
60
|
-
// This avoids delay before we are able to render pages side by side
|
|
61
|
-
layout.width ? {
|
|
62
|
-
width: layout.width
|
|
63
|
-
} : focused ? _reactNative.StyleSheet.absoluteFill : null, style]
|
|
64
|
-
},
|
|
65
|
-
// Only render the route only if it's either focused or layout is available
|
|
66
|
-
// When layout is not available, we must not render unfocused routes
|
|
67
|
-
// so that the focused route can fill the screen
|
|
68
|
-
focused || layout.width ? children({
|
|
69
|
-
loading: isLoading
|
|
70
|
-
}) : null);
|
|
71
|
-
}
|
|
72
|
-
const styles = _reactNative.StyleSheet.create({
|
|
73
|
-
route: {
|
|
74
|
-
flex: 1,
|
|
75
|
-
overflow: 'hidden'
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
|
-
//# sourceMappingURL=SceneView.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","SceneView","children","navigationState","lazy","layout","index","lazyPreloadDistance","addEnterListener","style","isLoading","setIsLoading","useState","Math","abs","useEffect","handleEnter","value","prevState","unsubscribe","timer","setTimeout","_unsubscribe","clearTimeout","focused","createElement","View","accessibilityElementsHidden","importantForAccessibility","styles","route","width","StyleSheet","absoluteFill","loading","create","flex","overflow"],"sourceRoot":"../../src","sources":["SceneView.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/TabBar.js
DELETED
|
@@ -1,405 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = TabBar;
|
|
7
|
-
var React = _interopRequireWildcard(require("react"));
|
|
8
|
-
var _reactNative = require("react-native");
|
|
9
|
-
var _useLatestCallback = _interopRequireDefault(require("use-latest-callback"));
|
|
10
|
-
var _TabBarIndicator = _interopRequireDefault(require("./TabBarIndicator"));
|
|
11
|
-
var _TabBarItem = _interopRequireDefault(require("./TabBarItem"));
|
|
12
|
-
var _useAnimatedValue = _interopRequireDefault(require("./useAnimatedValue"));
|
|
13
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
15
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
16
|
-
const Separator = ({
|
|
17
|
-
width
|
|
18
|
-
}) => {
|
|
19
|
-
return /*#__PURE__*/React.createElement(_reactNative.View, {
|
|
20
|
-
style: {
|
|
21
|
-
width
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
};
|
|
25
|
-
const getFlattenedTabWidth = style => {
|
|
26
|
-
const tabStyle = _reactNative.StyleSheet.flatten(style);
|
|
27
|
-
return tabStyle === null || tabStyle === void 0 ? void 0 : tabStyle.width;
|
|
28
|
-
};
|
|
29
|
-
const getComputedTabWidth = (index, layout, routes, scrollEnabled, tabWidths, flattenedWidth) => {
|
|
30
|
-
if (flattenedWidth === 'auto') {
|
|
31
|
-
return tabWidths[routes[index].key] || 0;
|
|
32
|
-
}
|
|
33
|
-
switch (typeof flattenedWidth) {
|
|
34
|
-
case 'number':
|
|
35
|
-
return flattenedWidth;
|
|
36
|
-
case 'string':
|
|
37
|
-
if (flattenedWidth.endsWith('%')) {
|
|
38
|
-
const width = parseFloat(flattenedWidth);
|
|
39
|
-
if (Number.isFinite(width)) {
|
|
40
|
-
return layout.width * (width / 100);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
if (scrollEnabled) {
|
|
45
|
-
return layout.width / 5 * 2;
|
|
46
|
-
}
|
|
47
|
-
return layout.width / routes.length;
|
|
48
|
-
};
|
|
49
|
-
const getMaxScrollDistance = (tabBarWidth, layoutWidth) => tabBarWidth - layoutWidth;
|
|
50
|
-
const getTranslateX = (scrollAmount, maxScrollDistance) => _reactNative.Animated.multiply(_reactNative.Platform.OS === 'android' && _reactNative.I18nManager.isRTL ? _reactNative.Animated.add(maxScrollDistance, _reactNative.Animated.multiply(scrollAmount, -1)) : scrollAmount, _reactNative.I18nManager.isRTL ? 1 : -1);
|
|
51
|
-
const getTabBarWidth = ({
|
|
52
|
-
navigationState,
|
|
53
|
-
layout,
|
|
54
|
-
gap,
|
|
55
|
-
scrollEnabled,
|
|
56
|
-
flattenedTabWidth,
|
|
57
|
-
tabWidths
|
|
58
|
-
}) => {
|
|
59
|
-
const {
|
|
60
|
-
routes
|
|
61
|
-
} = navigationState;
|
|
62
|
-
return routes.reduce((acc, _, i) => acc + (i > 0 ? gap ?? 0 : 0) + getComputedTabWidth(i, layout, routes, scrollEnabled, tabWidths, flattenedTabWidth), 0);
|
|
63
|
-
};
|
|
64
|
-
const normalizeScrollValue = ({
|
|
65
|
-
layout,
|
|
66
|
-
navigationState,
|
|
67
|
-
gap,
|
|
68
|
-
scrollEnabled,
|
|
69
|
-
tabWidths,
|
|
70
|
-
value,
|
|
71
|
-
flattenedTabWidth
|
|
72
|
-
}) => {
|
|
73
|
-
const tabBarWidth = getTabBarWidth({
|
|
74
|
-
layout,
|
|
75
|
-
navigationState,
|
|
76
|
-
tabWidths,
|
|
77
|
-
gap,
|
|
78
|
-
scrollEnabled,
|
|
79
|
-
flattenedTabWidth
|
|
80
|
-
});
|
|
81
|
-
const maxDistance = getMaxScrollDistance(tabBarWidth, layout.width);
|
|
82
|
-
const scrollValue = Math.max(Math.min(value, maxDistance), 0);
|
|
83
|
-
if (_reactNative.Platform.OS === 'android' && _reactNative.I18nManager.isRTL) {
|
|
84
|
-
// On Android, scroll value is not applied in reverse in RTL
|
|
85
|
-
// so we need to manually adjust it to apply correct value
|
|
86
|
-
return maxDistance - scrollValue;
|
|
87
|
-
}
|
|
88
|
-
return scrollValue;
|
|
89
|
-
};
|
|
90
|
-
const getScrollAmount = ({
|
|
91
|
-
layout,
|
|
92
|
-
navigationState,
|
|
93
|
-
gap,
|
|
94
|
-
scrollEnabled,
|
|
95
|
-
flattenedTabWidth,
|
|
96
|
-
tabWidths
|
|
97
|
-
}) => {
|
|
98
|
-
const centerDistance = Array.from({
|
|
99
|
-
length: navigationState.index + 1
|
|
100
|
-
}).reduce((total, _, i) => {
|
|
101
|
-
const tabWidth = getComputedTabWidth(i, layout, navigationState.routes, scrollEnabled, tabWidths, flattenedTabWidth);
|
|
102
|
-
|
|
103
|
-
// To get the current index centered we adjust scroll amount by width of indexes
|
|
104
|
-
// 0 through (i - 1) and add half the width of current index i
|
|
105
|
-
return total + (navigationState.index === i ? (tabWidth + (gap ?? 0)) / 2 : tabWidth + (gap ?? 0));
|
|
106
|
-
}, 0);
|
|
107
|
-
const scrollAmount = centerDistance - layout.width / 2;
|
|
108
|
-
return normalizeScrollValue({
|
|
109
|
-
layout,
|
|
110
|
-
navigationState,
|
|
111
|
-
tabWidths,
|
|
112
|
-
value: scrollAmount,
|
|
113
|
-
gap,
|
|
114
|
-
scrollEnabled,
|
|
115
|
-
flattenedTabWidth
|
|
116
|
-
});
|
|
117
|
-
};
|
|
118
|
-
const getLabelTextDefault = ({
|
|
119
|
-
route
|
|
120
|
-
}) => route.title;
|
|
121
|
-
const getAccessibleDefault = ({
|
|
122
|
-
route
|
|
123
|
-
}) => typeof route.accessible !== 'undefined' ? route.accessible : true;
|
|
124
|
-
const getAccessibilityLabelDefault = ({
|
|
125
|
-
route
|
|
126
|
-
}) => typeof route.accessibilityLabel === 'string' ? route.accessibilityLabel : typeof route.title === 'string' ? route.title : undefined;
|
|
127
|
-
const renderIndicatorDefault = props => /*#__PURE__*/React.createElement(_TabBarIndicator.default, props);
|
|
128
|
-
const getTestIdDefault = ({
|
|
129
|
-
route
|
|
130
|
-
}) => route.testID;
|
|
131
|
-
|
|
132
|
-
// How many items measurements should we update per batch.
|
|
133
|
-
// Defaults to 10, since that's whats FlatList is using in initialNumToRender.
|
|
134
|
-
const MEASURE_PER_BATCH = 10;
|
|
135
|
-
function TabBar({
|
|
136
|
-
getLabelText = getLabelTextDefault,
|
|
137
|
-
getAccessible = getAccessibleDefault,
|
|
138
|
-
getAccessibilityLabel = getAccessibilityLabelDefault,
|
|
139
|
-
getTestID = getTestIdDefault,
|
|
140
|
-
renderIndicator = renderIndicatorDefault,
|
|
141
|
-
gap = 0,
|
|
142
|
-
scrollEnabled,
|
|
143
|
-
jumpTo,
|
|
144
|
-
navigationState,
|
|
145
|
-
position,
|
|
146
|
-
activeColor,
|
|
147
|
-
bounces,
|
|
148
|
-
contentContainerStyle,
|
|
149
|
-
inactiveColor,
|
|
150
|
-
indicatorContainerStyle,
|
|
151
|
-
indicatorStyle,
|
|
152
|
-
labelStyle,
|
|
153
|
-
onTabLongPress,
|
|
154
|
-
onTabPress,
|
|
155
|
-
pressColor,
|
|
156
|
-
pressOpacity,
|
|
157
|
-
renderBadge,
|
|
158
|
-
renderIcon,
|
|
159
|
-
renderLabel,
|
|
160
|
-
renderTabBarItem,
|
|
161
|
-
style,
|
|
162
|
-
tabStyle,
|
|
163
|
-
testID,
|
|
164
|
-
android_ripple
|
|
165
|
-
}) {
|
|
166
|
-
const [layout, setLayout] = React.useState({
|
|
167
|
-
width: 0,
|
|
168
|
-
height: 0
|
|
169
|
-
});
|
|
170
|
-
const [tabWidths, setTabWidths] = React.useState({});
|
|
171
|
-
const flatListRef = React.useRef(null);
|
|
172
|
-
const isFirst = React.useRef(true);
|
|
173
|
-
const scrollAmount = (0, _useAnimatedValue.default)(0);
|
|
174
|
-
const measuredTabWidths = React.useRef({});
|
|
175
|
-
const {
|
|
176
|
-
routes
|
|
177
|
-
} = navigationState;
|
|
178
|
-
const flattenedTabWidth = getFlattenedTabWidth(tabStyle);
|
|
179
|
-
const isWidthDynamic = flattenedTabWidth === 'auto';
|
|
180
|
-
const scrollOffset = getScrollAmount({
|
|
181
|
-
layout,
|
|
182
|
-
navigationState,
|
|
183
|
-
tabWidths,
|
|
184
|
-
gap,
|
|
185
|
-
scrollEnabled,
|
|
186
|
-
flattenedTabWidth
|
|
187
|
-
});
|
|
188
|
-
const hasMeasuredTabWidths = Boolean(layout.width) && routes.slice(0, navigationState.index).every(r => typeof tabWidths[r.key] === 'number');
|
|
189
|
-
React.useEffect(() => {
|
|
190
|
-
if (isFirst.current) {
|
|
191
|
-
isFirst.current = false;
|
|
192
|
-
return;
|
|
193
|
-
}
|
|
194
|
-
if (isWidthDynamic && !hasMeasuredTabWidths) {
|
|
195
|
-
return;
|
|
196
|
-
}
|
|
197
|
-
if (scrollEnabled) {
|
|
198
|
-
var _flatListRef$current;
|
|
199
|
-
(_flatListRef$current = flatListRef.current) === null || _flatListRef$current === void 0 || _flatListRef$current.scrollToOffset({
|
|
200
|
-
offset: scrollOffset,
|
|
201
|
-
animated: true
|
|
202
|
-
});
|
|
203
|
-
}
|
|
204
|
-
}, [hasMeasuredTabWidths, isWidthDynamic, scrollEnabled, scrollOffset]);
|
|
205
|
-
const handleLayout = e => {
|
|
206
|
-
const {
|
|
207
|
-
height,
|
|
208
|
-
width
|
|
209
|
-
} = e.nativeEvent.layout;
|
|
210
|
-
setLayout(layout => layout.width === width && layout.height === height ? layout : {
|
|
211
|
-
width,
|
|
212
|
-
height
|
|
213
|
-
});
|
|
214
|
-
};
|
|
215
|
-
const tabBarWidth = getTabBarWidth({
|
|
216
|
-
layout,
|
|
217
|
-
navigationState,
|
|
218
|
-
tabWidths,
|
|
219
|
-
gap,
|
|
220
|
-
scrollEnabled,
|
|
221
|
-
flattenedTabWidth
|
|
222
|
-
});
|
|
223
|
-
const separatorsWidth = Math.max(0, routes.length - 1) * gap;
|
|
224
|
-
const separatorPercent = separatorsWidth / tabBarWidth * 100;
|
|
225
|
-
const tabBarWidthPercent = `${routes.length * 40}%`;
|
|
226
|
-
const translateX = React.useMemo(() => getTranslateX(scrollAmount, getMaxScrollDistance(tabBarWidth, layout.width)), [layout.width, scrollAmount, tabBarWidth]);
|
|
227
|
-
const renderItem = React.useCallback(({
|
|
228
|
-
item: route,
|
|
229
|
-
index
|
|
230
|
-
}) => {
|
|
231
|
-
const props = {
|
|
232
|
-
key: route.key,
|
|
233
|
-
position: position,
|
|
234
|
-
route: route,
|
|
235
|
-
navigationState: navigationState,
|
|
236
|
-
getAccessibilityLabel: getAccessibilityLabel,
|
|
237
|
-
getAccessible: getAccessible,
|
|
238
|
-
getLabelText: getLabelText,
|
|
239
|
-
getTestID: getTestID,
|
|
240
|
-
renderBadge: renderBadge,
|
|
241
|
-
renderIcon: renderIcon,
|
|
242
|
-
renderLabel: renderLabel,
|
|
243
|
-
activeColor: activeColor,
|
|
244
|
-
inactiveColor: inactiveColor,
|
|
245
|
-
pressColor: pressColor,
|
|
246
|
-
pressOpacity: pressOpacity,
|
|
247
|
-
onLayout: isWidthDynamic ? e => {
|
|
248
|
-
measuredTabWidths.current[route.key] = e.nativeEvent.layout.width;
|
|
249
|
-
|
|
250
|
-
// When we have measured widths for all of the tabs, we should updates the state
|
|
251
|
-
// We avoid doing separate setState for each layout since it triggers multiple renders and slows down app
|
|
252
|
-
// If we have more than 10 routes divide updating tabWidths into multiple batches. Here we update only first batch of 10 items.
|
|
253
|
-
if (routes.length > MEASURE_PER_BATCH && index === MEASURE_PER_BATCH && routes.slice(0, MEASURE_PER_BATCH).every(r => typeof measuredTabWidths.current[r.key] === 'number')) {
|
|
254
|
-
setTabWidths({
|
|
255
|
-
...measuredTabWidths.current
|
|
256
|
-
});
|
|
257
|
-
} else if (routes.every(r => typeof measuredTabWidths.current[r.key] === 'number')) {
|
|
258
|
-
// When we have measured widths for all of the tabs, we should updates the state
|
|
259
|
-
// We avoid doing separate setState for each layout since it triggers multiple renders and slows down app
|
|
260
|
-
setTabWidths({
|
|
261
|
-
...measuredTabWidths.current
|
|
262
|
-
});
|
|
263
|
-
}
|
|
264
|
-
} : undefined,
|
|
265
|
-
onPress: () => {
|
|
266
|
-
const event = {
|
|
267
|
-
route,
|
|
268
|
-
defaultPrevented: false,
|
|
269
|
-
preventDefault: () => {
|
|
270
|
-
event.defaultPrevented = true;
|
|
271
|
-
}
|
|
272
|
-
};
|
|
273
|
-
onTabPress === null || onTabPress === void 0 || onTabPress(event);
|
|
274
|
-
if (event.defaultPrevented) {
|
|
275
|
-
return;
|
|
276
|
-
}
|
|
277
|
-
jumpTo(route.key);
|
|
278
|
-
},
|
|
279
|
-
onLongPress: () => onTabLongPress === null || onTabLongPress === void 0 ? void 0 : onTabLongPress({
|
|
280
|
-
route
|
|
281
|
-
}),
|
|
282
|
-
labelStyle: labelStyle,
|
|
283
|
-
style: tabStyle,
|
|
284
|
-
// Calculate the deafult width for tab for FlatList to work
|
|
285
|
-
defaultTabWidth: !isWidthDynamic ? getComputedTabWidth(index, layout, routes, scrollEnabled, tabWidths, getFlattenedTabWidth(tabStyle)) : undefined,
|
|
286
|
-
android_ripple
|
|
287
|
-
};
|
|
288
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, gap > 0 && index > 0 ? /*#__PURE__*/React.createElement(Separator, {
|
|
289
|
-
width: gap
|
|
290
|
-
}) : null, renderTabBarItem ? renderTabBarItem(props) : /*#__PURE__*/React.createElement(_TabBarItem.default, props));
|
|
291
|
-
}, [activeColor, android_ripple, gap, getAccessibilityLabel, getAccessible, getLabelText, getTestID, inactiveColor, isWidthDynamic, jumpTo, labelStyle, layout, navigationState, onTabLongPress, onTabPress, position, pressColor, pressOpacity, renderBadge, renderIcon, renderLabel, renderTabBarItem, routes, scrollEnabled, tabStyle, tabWidths]);
|
|
292
|
-
const keyExtractor = React.useCallback(item => item.key, []);
|
|
293
|
-
const contentContainerStyleMemoized = React.useMemo(() => [styles.tabContent, scrollEnabled ? {
|
|
294
|
-
width: tabBarWidth > separatorsWidth ? tabBarWidth : tabBarWidthPercent
|
|
295
|
-
} : styles.container, contentContainerStyle], [contentContainerStyle, scrollEnabled, separatorsWidth, tabBarWidth, tabBarWidthPercent]);
|
|
296
|
-
const handleScroll = React.useMemo(() => _reactNative.Animated.event([{
|
|
297
|
-
nativeEvent: {
|
|
298
|
-
contentOffset: {
|
|
299
|
-
x: scrollAmount
|
|
300
|
-
}
|
|
301
|
-
}
|
|
302
|
-
}], {
|
|
303
|
-
useNativeDriver: true
|
|
304
|
-
}), [scrollAmount]);
|
|
305
|
-
const handleViewableItemsChanged = (0, _useLatestCallback.default)(({
|
|
306
|
-
changed
|
|
307
|
-
}) => {
|
|
308
|
-
if (routes.length <= MEASURE_PER_BATCH) {
|
|
309
|
-
return;
|
|
310
|
-
}
|
|
311
|
-
// Get next vievable item
|
|
312
|
-
const item = changed[changed.length - 1];
|
|
313
|
-
const index = (item === null || item === void 0 ? void 0 : item.index) || 0;
|
|
314
|
-
if (item.isViewable && (index % 10 === 0 || index === navigationState.index || index === routes.length - 1)) {
|
|
315
|
-
setTabWidths({
|
|
316
|
-
...measuredTabWidths.current
|
|
317
|
-
});
|
|
318
|
-
}
|
|
319
|
-
});
|
|
320
|
-
|
|
321
|
-
// FIXME: Not sure why i have to as-any here (x3) ..
|
|
322
|
-
return /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
|
|
323
|
-
onLayout: handleLayout,
|
|
324
|
-
style: [styles.tabBar, style]
|
|
325
|
-
}, /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
|
|
326
|
-
pointerEvents: "none",
|
|
327
|
-
style: [styles.indicatorContainer, scrollEnabled ? {
|
|
328
|
-
transform: [{
|
|
329
|
-
translateX
|
|
330
|
-
}]
|
|
331
|
-
} : null, tabBarWidth > separatorsWidth ? {
|
|
332
|
-
width: tabBarWidth - separatorsWidth
|
|
333
|
-
} : scrollEnabled ? {
|
|
334
|
-
width: tabBarWidthPercent
|
|
335
|
-
} : null, indicatorContainerStyle]
|
|
336
|
-
}, renderIndicator({
|
|
337
|
-
position,
|
|
338
|
-
layout,
|
|
339
|
-
navigationState,
|
|
340
|
-
jumpTo,
|
|
341
|
-
width: isWidthDynamic ? 'auto' : `${(100 - separatorPercent) / routes.length}%`,
|
|
342
|
-
style: indicatorStyle,
|
|
343
|
-
getTabWidth: i => getComputedTabWidth(i, layout, routes, scrollEnabled, tabWidths, flattenedTabWidth),
|
|
344
|
-
gap
|
|
345
|
-
})), /*#__PURE__*/React.createElement(_reactNative.View, {
|
|
346
|
-
style: styles.scroll
|
|
347
|
-
}, /*#__PURE__*/React.createElement(_reactNative.Animated.FlatList, {
|
|
348
|
-
data: routes,
|
|
349
|
-
keyExtractor: keyExtractor,
|
|
350
|
-
horizontal: true,
|
|
351
|
-
accessibilityRole: "tablist",
|
|
352
|
-
keyboardShouldPersistTaps: "handled",
|
|
353
|
-
scrollEnabled: scrollEnabled,
|
|
354
|
-
bounces: bounces,
|
|
355
|
-
initialNumToRender: MEASURE_PER_BATCH,
|
|
356
|
-
onViewableItemsChanged: handleViewableItemsChanged,
|
|
357
|
-
alwaysBounceHorizontal: false,
|
|
358
|
-
scrollsToTop: false,
|
|
359
|
-
showsHorizontalScrollIndicator: false,
|
|
360
|
-
showsVerticalScrollIndicator: false,
|
|
361
|
-
automaticallyAdjustContentInsets: false,
|
|
362
|
-
overScrollMode: "never",
|
|
363
|
-
contentContainerStyle: contentContainerStyleMemoized,
|
|
364
|
-
scrollEventThrottle: 16,
|
|
365
|
-
renderItem: renderItem,
|
|
366
|
-
onScroll: handleScroll,
|
|
367
|
-
ref: flatListRef,
|
|
368
|
-
testID: testID
|
|
369
|
-
})));
|
|
370
|
-
}
|
|
371
|
-
const styles = _reactNative.StyleSheet.create({
|
|
372
|
-
container: {
|
|
373
|
-
flex: 1
|
|
374
|
-
},
|
|
375
|
-
scroll: {
|
|
376
|
-
overflow: _reactNative.Platform.select({
|
|
377
|
-
default: 'scroll',
|
|
378
|
-
web: undefined
|
|
379
|
-
})
|
|
380
|
-
},
|
|
381
|
-
tabBar: {
|
|
382
|
-
backgroundColor: '#2196f3',
|
|
383
|
-
elevation: 4,
|
|
384
|
-
shadowColor: 'black',
|
|
385
|
-
shadowOpacity: 0.1,
|
|
386
|
-
shadowRadius: _reactNative.StyleSheet.hairlineWidth,
|
|
387
|
-
shadowOffset: {
|
|
388
|
-
height: _reactNative.StyleSheet.hairlineWidth,
|
|
389
|
-
width: 0
|
|
390
|
-
},
|
|
391
|
-
zIndex: 1
|
|
392
|
-
},
|
|
393
|
-
tabContent: {
|
|
394
|
-
flexDirection: 'row',
|
|
395
|
-
flexWrap: 'nowrap'
|
|
396
|
-
},
|
|
397
|
-
indicatorContainer: {
|
|
398
|
-
position: 'absolute',
|
|
399
|
-
top: 0,
|
|
400
|
-
left: 0,
|
|
401
|
-
right: 0,
|
|
402
|
-
bottom: 0
|
|
403
|
-
}
|
|
404
|
-
});
|
|
405
|
-
//# sourceMappingURL=TabBar.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_useLatestCallback","_interopRequireDefault","_TabBarIndicator","_TabBarItem","_useAnimatedValue","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Separator","width","createElement","View","style","getFlattenedTabWidth","tabStyle","StyleSheet","flatten","getComputedTabWidth","index","layout","routes","scrollEnabled","tabWidths","flattenedWidth","key","endsWith","parseFloat","Number","isFinite","length","getMaxScrollDistance","tabBarWidth","layoutWidth","getTranslateX","scrollAmount","maxScrollDistance","Animated","multiply","Platform","OS","I18nManager","isRTL","add","getTabBarWidth","navigationState","gap","flattenedTabWidth","reduce","acc","_","normalizeScrollValue","value","maxDistance","scrollValue","Math","max","min","getScrollAmount","centerDistance","Array","from","total","tabWidth","getLabelTextDefault","route","title","getAccessibleDefault","accessible","getAccessibilityLabelDefault","accessibilityLabel","undefined","renderIndicatorDefault","props","getTestIdDefault","testID","MEASURE_PER_BATCH","TabBar","getLabelText","getAccessible","getAccessibilityLabel","getTestID","renderIndicator","jumpTo","position","activeColor","bounces","contentContainerStyle","inactiveColor","indicatorContainerStyle","indicatorStyle","labelStyle","onTabLongPress","onTabPress","pressColor","pressOpacity","renderBadge","renderIcon","renderLabel","renderTabBarItem","android_ripple","setLayout","useState","height","setTabWidths","flatListRef","useRef","isFirst","useAnimatedValue","measuredTabWidths","isWidthDynamic","scrollOffset","hasMeasuredTabWidths","Boolean","slice","every","useEffect","current","_flatListRef$current","scrollToOffset","offset","animated","handleLayout","nativeEvent","separatorsWidth","separatorPercent","tabBarWidthPercent","translateX","useMemo","renderItem","useCallback","item","onLayout","onPress","event","defaultPrevented","preventDefault","onLongPress","defaultTabWidth","Fragment","keyExtractor","contentContainerStyleMemoized","styles","tabContent","container","handleScroll","contentOffset","x","useNativeDriver","handleViewableItemsChanged","useLatestCallback","changed","isViewable","tabBar","pointerEvents","indicatorContainer","transform","getTabWidth","scroll","FlatList","data","horizontal","accessibilityRole","keyboardShouldPersistTaps","initialNumToRender","onViewableItemsChanged","alwaysBounceHorizontal","scrollsToTop","showsHorizontalScrollIndicator","showsVerticalScrollIndicator","automaticallyAdjustContentInsets","overScrollMode","scrollEventThrottle","onScroll","ref","create","flex","overflow","select","web","backgroundColor","elevation","shadowColor","shadowOpacity","shadowRadius","hairlineWidth","shadowOffset","zIndex","flexDirection","flexWrap","top","left","right","bottom"],"sourceRoot":"../../src","sources":["TabBar.tsx"],"mappings":"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","ignoreList":[]}
|