88package com.facebook.react
99
1010import com.android.build.api.variant.ApplicationAndroidComponentsExtension
11- import com.android.build.api.variant.LibraryAndroidComponentsExtension
1211import com.android.build.gradle.internal.tasks.factory.dependsOn
1312import com.facebook.react.internal.PrivateReactExtension
1413import com.facebook.react.tasks.GenerateCodegenArtifactsTask
@@ -23,22 +22,17 @@ import org.gradle.api.provider.Provider
2322import org.gradle.api.tasks.TaskProvider
2423
2524@Suppress(" UnstableApiUsage" )
26- object ReactCodegenConfigurator {
25+ object ReactAppCodegenConfigurator {
2726 fun configureCodegen (
2827 project : Project ,
2928 localExtension : ReactExtension ,
3029 rootExtension : PrivateReactExtension ,
31- isLibrary : Boolean ,
3230 needsCodegenFromPackageJson : (Project , PrivateReactExtension ) -> Boolean ,
3331 ) {
3432 val generatedSrcDir: Provider <Directory > =
3533 project.layout.buildDirectory.dir(" generated/source/codegen" )
3634
37- if (isLibrary) {
38- localExtension.jsRootDir.convention(project.layout.projectDirectory.dir(" ../" ))
39- } else {
40- localExtension.jsRootDir.convention(localExtension.root)
41- }
35+ localExtension.jsRootDir.convention(localExtension.root)
4236
4337 val generateCodegenArtifactsTask =
4438 registerCodegenTasks(
@@ -63,33 +57,22 @@ object ReactCodegenConfigurator {
6357 task.libraryName.set(localExtension.libraryName)
6458 },
6559 onlyIf = { packageJson ->
66- val needsCodegenFromPackageJson =
60+ val needsCodegen =
6761 needsCodegenFromPackageJson(project, rootExtension)
6862 val parsedPackageJson = packageJson?.let { JsonUtils .fromPackageJson(it) }
6963 val includesGeneratedCode =
7064 parsedPackageJson?.codegenConfig?.includesGeneratedCode ? : false
71- (isLibrary || needsCodegenFromPackageJson) && ! includesGeneratedCode
65+ needsCodegen && ! includesGeneratedCode
7266 },
7367 )
7468
75- if (isLibrary) {
76- project.extensions.getByType(LibraryAndroidComponentsExtension ::class .java).finalizeDsl { ext
77- ->
78- ext.sourceSets
79- .getByName(" main" )
80- .java
81- .directories
82- .add(generatedSrcDir.get().dir(" java" ).asFile.path)
83- }
84- } else {
85- project.extensions.getByType(ApplicationAndroidComponentsExtension ::class .java).finalizeDsl {
86- ext ->
87- ext.sourceSets
88- .getByName(" main" )
89- .java
90- .directories
91- .add(generatedSrcDir.get().dir(" java" ).asFile.path)
92- }
69+ project.extensions.getByType(ApplicationAndroidComponentsExtension ::class .java).finalizeDsl { ext
70+ ->
71+ ext.sourceSets
72+ .getByName(" main" )
73+ .java
74+ .directories
75+ .add(generatedSrcDir.get().dir(" java" ).asFile.path)
9376 }
9477
9578 project.tasks.named(" preBuild" , Task ::class .java).dependsOn(generateCodegenArtifactsTask)
0 commit comments