Files
Detox/detox/android/rninfo.gradle
T
mark.devandGitHub f8f0b0cc02 Detox with RN0.85.2 support (#4936)
* initial commit for 0.85.0-rc.7

* RN 0.85.2 update

* CI pipeline for RN085.2

* config update

* updated config

* update for ios 0.84

* iOS on RN0.84

* RN084 update

* pinned to RN085.2

* update for rn084

* cleanup
2026-05-05 09:35:29 +03:00

54 lines
1.8 KiB
Groovy

import groovy.json.JsonSlurper
def getRNPackageJsonDir() {
def currentDir = rootDir
while (currentDir != null) {
def nodeModulesDir = new File(currentDir, "node_modules/react-native")
def file = new File(nodeModulesDir, 'package.json')
if (file.exists()) {
return file.path
}
currentDir = currentDir.parentFile
}
throw new GradleException("Unable to find module: $moduleName")
}
def getRNVersion = { rnPackageJsonPath ->
println("RNInfo: package.json=$rnPackageJsonPath")
def jsonSlurper = new JsonSlurper()
def packageFile =
println("RNInfo: reading $rnPackageJsonPath")
Map<String, Object> packageJSON = jsonSlurper.parse(new File(rnPackageJsonPath))
String rnVersion = packageJSON.get('version')
return rnVersion
}
def getMajorVersionInternal = { semanticVersion ->
Integer rnVersionMajor = semanticVersion.split('\\.')[1].toInteger()
return rnVersionMajor
}
def rnVersion = getRNVersion(getRNPackageJsonDir())
def rnMajorVer = getMajorVersionInternal(rnVersion)
println "RNInfo: detected React Native version: $rnVersion (major=$rnMajorVer)"
ext.rnInfo = [
version : rnVersion,
majorVersion : rnMajorVer,
isRN69OrHigher: rnMajorVer >= 69,
isRN70OrHigher: rnMajorVer >= 70,
isRN71OrHigher: rnMajorVer >= 71,
isRN72OrHigher: rnMajorVer >= 72,
isRN73OrHigher: rnMajorVer >= 73,
isRN74OrHigher: rnMajorVer >= 74,
isRN75OrHigher: rnMajorVer >= 75,
isRN76OrHigher: rnMajorVer >= 76,
isRN77OrHigher: rnMajorVer >= 77,
isRN78OrHigher: rnMajorVer >= 78,
isRN79OrHigher: rnMajorVer >= 79,
isRN80OrHigher: rnMajorVer >= 80,
isRN81OrHigher: rnMajorVer >= 81,
isRN84OrHigher: rnMajorVer >= 84,
isRN85OrHigher: rnMajorVer >= 85,
]