@@ -12,15 +12,15 @@ export type ReactNativeVersion = {
12
12
export const ReactNativeVersion : ReactNativeVersion = ( ( ) => {
13
13
// https://github.com/facebook/react-native/commit/ec5638abd0e872be62b6ea5d8df9bed6335c2191
14
14
const { ReactNativeVersion } = require ( "react-native" ) ;
15
- if ( ReactNativeVersion ) {
16
- return ReactNativeVersion ;
17
- }
18
-
19
- const { version } = require ( "react-native/Libraries/Core/ReactNativeVersion" ) ;
15
+ const { major, minor, patch, prerelease } =
16
+ ReactNativeVersion ??
17
+ require ( "react-native/Libraries/Core/ReactNativeVersion" ) . version ;
20
18
return {
21
- ...version ,
19
+ major,
20
+ minor,
21
+ patch,
22
+ prerelease,
22
23
getVersionString : ( ) => {
23
- const { major, minor, patch, prerelease } = version ;
24
24
const v = `${ major } .${ minor } .${ patch } ` ;
25
25
return prerelease ? `${ v } -${ prerelease . replace ( "-" , "\n" ) } ` : v ;
26
26
} ,
@@ -38,11 +38,19 @@ export function getHermesVersion(): string | undefined {
38
38
return undefined ;
39
39
}
40
40
41
- return `Hermes ${ version } ` ;
41
+ const [ core , prerelease , ...build ] = version . split ( "-" ) ;
42
+ const parts = [ core ] ;
43
+ if ( prerelease ) {
44
+ parts . push ( "-" , prerelease ) ;
45
+ if ( build . length > 0 ) {
46
+ parts . push ( "\n" , build . join ( "-" ) ) ;
47
+ }
48
+ }
49
+ return `Hermes ${ parts . join ( "" ) } ` ;
42
50
}
43
51
44
52
export function isBridgeless ( ) {
45
- return "RN$Bridgeless" in global && RN$Bridgeless === true ;
53
+ return "RN$Bridgeless" in global && global . RN$Bridgeless === true ;
46
54
}
47
55
48
56
export function isConcurrentReactEnabled (
0 commit comments