1def isNewArchitectureEnabled() { 2 return project.hasProperty("newArchEnabled") && project.newArchEnabled == "true" 3} 4 5if (isNewArchitectureEnabled()) { 6 buildscript { 7 repositories { 8 mavenCentral() 9 google() 10 } 11 12 dependencies { 13 classpath("com.android.tools.build:gradle:7.1.1") 14 classpath("com.facebook.react:react-native-gradle-plugin") 15 classpath("de.undercouch:gradle-download-task:5.0.1") 16 } 17 } 18} 19 20apply plugin: 'com.android.library' 21if (isNewArchitectureEnabled()) { 22 apply plugin: 'com.facebook.react' 23} 24 25def getExtOrDefault(name) { 26 return rootProject.ext.has(name) ? rootProject.ext.get(name) : project.properties['ReactNativeSlider_' + name] 27} 28 29def getExtOrIntegerDefault(name) { 30 return rootProject.ext.has(name) ? rootProject.ext.get(name) : (project.properties['ReactNativeSlider_' + name]).toInteger() 31} 32 33android { 34 compileSdkVersion getExtOrIntegerDefault('compileSdkVersion') 35 buildToolsVersion getExtOrDefault('buildToolsVersion') 36 37 defaultConfig { 38 minSdkVersion getExtOrIntegerDefault('minSdkVersion') 39 targetSdkVersion getExtOrIntegerDefault('targetSdkVersion') 40 buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString() 41 } 42 43 sourceSets { 44 main { 45 if (isNewArchitectureEnabled()) { 46 java.srcDirs += ['src/newarch'] 47 } else { 48 java.srcDirs += ['src/oldarch'] 49 } 50 } 51 } 52} 53 54repositories { 55 google() 56 mavenCentral() 57} 58 59dependencies { 60 //noinspection GradleDynamicVersion 61 api 'com.facebook.react:react-native:+' 62} 63 64if (isNewArchitectureEnabled()) { 65 react { 66 jsRootDir = file("../src") 67 libraryName = "ReactSlider" 68 codegenJavaPackageName = "com.reactnativecommunity.slider" 69 } 70} 71