react-native-tab-view 5.0.0-alpha.1 → 5.0.0-alpha.2
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/module/SceneView.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import * as React from 'react';
|
|
4
|
-
import { StyleSheet, View } from 'react-native';
|
|
4
|
+
import { Platform, StyleSheet, View } from 'react-native';
|
|
5
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
6
|
export function SceneView({
|
|
7
7
|
children,
|
|
@@ -46,7 +46,19 @@ export function SceneView({
|
|
|
46
46
|
clearTimeout(timer);
|
|
47
47
|
};
|
|
48
48
|
}, [subscribe, index, isLoading, lazy]);
|
|
49
|
+
const ref = React.useRef(null);
|
|
50
|
+
React.useLayoutEffect(() => {
|
|
51
|
+
const element = ref.current;
|
|
52
|
+
if (Platform.OS === 'web' && typeof HTMLElement !== 'undefined' && element && element instanceof HTMLElement) {
|
|
53
|
+
if (isFocused) {
|
|
54
|
+
element.removeAttribute('inert');
|
|
55
|
+
} else {
|
|
56
|
+
element.setAttribute('inert', '');
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}, [isFocused]);
|
|
49
60
|
return /*#__PURE__*/_jsx(View, {
|
|
61
|
+
ref: ref,
|
|
50
62
|
"aria-hidden": !isFocused,
|
|
51
63
|
style: [styles.route, style],
|
|
52
64
|
children: children({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","StyleSheet","View","jsx","_jsx","SceneView","children","navigationState","lazy","index","lazyPreloadDistance","subscribe","style","isFocused","isLoaded","Math","abs","isLoading","setIsLoading","useState","useEffect","unsubscribe","timer","event","type","prevState","setTimeout","clearTimeout","styles","route","loading","create","flex","overflow"],"sourceRoot":"../../src","sources":["SceneView.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,
|
|
1
|
+
{"version":3,"names":["React","Platform","StyleSheet","View","jsx","_jsx","SceneView","children","navigationState","lazy","index","lazyPreloadDistance","subscribe","style","isFocused","isLoaded","Math","abs","isLoading","setIsLoading","useState","useEffect","unsubscribe","timer","event","type","prevState","setTimeout","clearTimeout","ref","useRef","useLayoutEffect","element","current","OS","HTMLElement","removeAttribute","setAttribute","styles","route","loading","create","flex","overflow"],"sourceRoot":"../../src","sources":["SceneView.tsx"],"mappings":";;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SACEC,QAAQ,EAERC,UAAU,EACVC,IAAI,QAEC,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAmBtB,OAAO,SAASC,SAASA,CAAkB;EACzCC,QAAQ;EACRC,eAAe;EACfC,IAAI;EACJC,KAAK;EACLC,mBAAmB;EACnBC,SAAS;EACTC;AACQ,CAAC,EAAE;EACX,MAAMC,SAAS,GAAGN,eAAe,CAACE,KAAK,KAAKA,KAAK;EACjD,MAAMK,QAAQ,GACZD,SAAS,IAAIE,IAAI,CAACC,GAAG,CAACT,eAAe,CAACE,KAAK,GAAGA,KAAK,CAAC,IAAIC,mBAAmB;EAE7E,MAAM,CAACO,SAAS,EAAEC,YAAY,CAAC,GAAGnB,KAAK,CAACoB,QAAQ,CAAC,CAACL,QAAQ,CAAC;EAE3D,IAAIG,SAAS,IAAIH,QAAQ,EAAE;IACzB;IACA;IACAI,YAAY,CAAC,KAAK,CAAC;EACrB;EAEAnB,KAAK,CAACqB,SAAS,CAAC,MAAM;IACpB,IAAIC,WAAqC;IACzC,IAAIC,KAAgD;IAEpD,IAAId,IAAI,IAAIS,SAAS,EAAE;MACrB;MACAI,WAAW,GAAGV,SAAS,CAAEY,KAAK,IAAK;QACjC;QACA,IAAIA,KAAK,CAACC,IAAI,KAAK,OAAO,IAAID,KAAK,CAACd,KAAK,KAAKA,KAAK,EAAE;UACnDS,YAAY,CAAEO,SAAS,IAAK;YAC1B,IAAIA,SAAS,EAAE;cACb,OAAO,KAAK;YACd;YAEA,OAAOA,SAAS;UAClB,CAAC,CAAC;QACJ;MACF,CAAC,CAAC;IACJ,CAAC,MAAM,IAAIR,SAAS,EAAE;MACpB;MACA;MACAK,KAAK,GAAGI,UAAU,CAAC,MAAMR,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClD;IAEA,OAAO,MAAM;MACXG,WAAW,GAAG,CAAC;MACfM,YAAY,CAACL,KAAK,CAAC;IACrB,CAAC;EACH,CAAC,EAAE,CAACX,SAAS,EAAEF,KAAK,EAAEQ,SAAS,EAAET,IAAI,CAAC,CAAC;EAEvC,MAAMoB,GAAG,GAAG7B,KAAK,CAAC8B,MAAM,CAAO,IAAI,CAAC;EAEpC9B,KAAK,CAAC+B,eAAe,CAAC,MAAM;IAC1B,MAAMC,OAAO,GAAGH,GAAG,CAACI,OAAO;IAE3B,IACEhC,QAAQ,CAACiC,EAAE,KAAK,KAAK,IACrB,OAAOC,WAAW,KAAK,WAAW,IAClCH,OAAO,IACPA,OAAO,YAAYG,WAAW,EAC9B;MACA,IAAIrB,SAAS,EAAE;QACbkB,OAAO,CAACI,eAAe,CAAC,OAAO,CAAC;MAClC,CAAC,MAAM;QACLJ,OAAO,CAACK,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;MACnC;IACF;EACF,CAAC,EAAE,CAACvB,SAAS,CAAC,CAAC;EAEf,oBACET,IAAA,CAACF,IAAI;IAAC0B,GAAG,EAAEA,GAAI;IAAC,eAAa,CAACf,SAAU;IAACD,KAAK,EAAE,CAACyB,MAAM,CAACC,KAAK,EAAE1B,KAAK,CAAE;IAAAN,QAAA,EACnEA,QAAQ,CAAC;MAAEiC,OAAO,EAAEtB;IAAU,CAAC;EAAC,CAC7B,CAAC;AAEX;AAEA,MAAMoB,MAAM,GAAGpC,UAAU,CAACuC,MAAM,CAAC;EAC/BF,KAAK,EAAE;IACLG,IAAI,EAAE,CAAC;IACPC,QAAQ,EAAE;EACZ;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SceneView.d.ts","sourceRoot":"","sources":["../../../src/SceneView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,
|
|
1
|
+
{"version":3,"file":"SceneView.d.ts","sourceRoot":"","sources":["../../../src/SceneView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAEL,KAAK,SAAS,EAGd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EACf,KAAK,EACL,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAEjB,KAAK,KAAK,CAAC,CAAC,SAAS,KAAK,IAAI,kBAAkB,GAC9C,iBAAiB,GAAG;IAClB,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IACpC,IAAI,EAAE,OAAO,CAAC;IACd,mBAAmB,EAAE,MAAM,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,KAAK,KAAK,CAAC,SAAS,CAAC;IAC3D,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;CAC9B,CAAC;AAEJ,wBAAgB,SAAS,CAAC,CAAC,SAAS,KAAK,EAAE,EACzC,QAAQ,EACR,eAAe,EACf,IAAI,EACJ,KAAK,EACL,mBAAmB,EACnB,SAAS,EACT,KAAK,GACN,EAAE,KAAK,CAAC,CAAC,CAAC,2CAmEV"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-tab-view",
|
|
3
3
|
"description": "Tab view component for React Native",
|
|
4
|
-
"version": "5.0.0-alpha.
|
|
4
|
+
"version": "5.0.0-alpha.2",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"react-native-component",
|
|
7
7
|
"react-component",
|
|
@@ -80,5 +80,5 @@
|
|
|
80
80
|
]
|
|
81
81
|
]
|
|
82
82
|
},
|
|
83
|
-
"gitHead": "
|
|
83
|
+
"gitHead": "faad2ee23945a5a27090cfb837a35d1db25147ab"
|
|
84
84
|
}
|
package/src/SceneView.tsx
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import {
|
|
2
|
+
import {
|
|
3
|
+
Platform,
|
|
4
|
+
type StyleProp,
|
|
5
|
+
StyleSheet,
|
|
6
|
+
View,
|
|
7
|
+
type ViewStyle,
|
|
8
|
+
} from 'react-native';
|
|
3
9
|
|
|
4
10
|
import type {
|
|
5
11
|
EventEmitterProps,
|
|
@@ -69,8 +75,27 @@ export function SceneView<T extends Route>({
|
|
|
69
75
|
};
|
|
70
76
|
}, [subscribe, index, isLoading, lazy]);
|
|
71
77
|
|
|
78
|
+
const ref = React.useRef<View>(null);
|
|
79
|
+
|
|
80
|
+
React.useLayoutEffect(() => {
|
|
81
|
+
const element = ref.current;
|
|
82
|
+
|
|
83
|
+
if (
|
|
84
|
+
Platform.OS === 'web' &&
|
|
85
|
+
typeof HTMLElement !== 'undefined' &&
|
|
86
|
+
element &&
|
|
87
|
+
element instanceof HTMLElement
|
|
88
|
+
) {
|
|
89
|
+
if (isFocused) {
|
|
90
|
+
element.removeAttribute('inert');
|
|
91
|
+
} else {
|
|
92
|
+
element.setAttribute('inert', '');
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}, [isFocused]);
|
|
96
|
+
|
|
72
97
|
return (
|
|
73
|
-
<View aria-hidden={!isFocused} style={[styles.route, style]}>
|
|
98
|
+
<View ref={ref} aria-hidden={!isFocused} style={[styles.route, style]}>
|
|
74
99
|
{children({ loading: isLoading })}
|
|
75
100
|
</View>
|
|
76
101
|
);
|