[Gradle, JS] generateKotlinExternals option in dsl functions
KT-38331
This commit is contained in:
+96
-11
@@ -12,23 +12,108 @@ interface KotlinNpmDependencyHandler {
|
|||||||
@Deprecated("Declaring NPM dependency without version is forbidden")
|
@Deprecated("Declaring NPM dependency without version is forbidden")
|
||||||
fun npm(name: String): Dependency
|
fun npm(name: String): Dependency
|
||||||
|
|
||||||
fun npm(name: String, version: String): Dependency
|
fun npm(
|
||||||
|
name: String,
|
||||||
|
version: String,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
|
): Dependency
|
||||||
|
|
||||||
fun npm(name: String, directory: File): Dependency
|
fun npm(
|
||||||
|
name: String,
|
||||||
|
version: String
|
||||||
|
): Dependency = npm(
|
||||||
|
name = name,
|
||||||
|
version = version,
|
||||||
|
generateKotlinExternals = DEFAULT_GENERATE_KOTLIN_EXTERNALS
|
||||||
|
)
|
||||||
|
|
||||||
fun npm(directory: File): Dependency
|
fun npm(
|
||||||
|
name: String,
|
||||||
|
directory: File,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
|
): Dependency
|
||||||
|
|
||||||
fun devNpm(name: String, version: String): Dependency
|
fun npm(
|
||||||
|
name: String,
|
||||||
|
directory: File
|
||||||
|
): Dependency = npm(
|
||||||
|
name = name,
|
||||||
|
directory = directory,
|
||||||
|
generateKotlinExternals = DEFAULT_GENERATE_KOTLIN_EXTERNALS
|
||||||
|
)
|
||||||
|
|
||||||
fun devNpm(name: String, directory: File): Dependency
|
fun npm(
|
||||||
|
directory: File,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
|
): Dependency
|
||||||
|
|
||||||
fun devNpm(directory: File): Dependency
|
fun npm(
|
||||||
|
directory: File
|
||||||
|
): Dependency = npm(
|
||||||
|
directory = directory,
|
||||||
|
generateKotlinExternals = DEFAULT_GENERATE_KOTLIN_EXTERNALS
|
||||||
|
)
|
||||||
|
|
||||||
fun optionalNpm(name: String, version: String): Dependency
|
fun devNpm(
|
||||||
|
name: String,
|
||||||
|
version: String
|
||||||
|
): Dependency
|
||||||
|
|
||||||
fun optionalNpm(name: String, directory: File): Dependency
|
fun devNpm(
|
||||||
|
name: String,
|
||||||
|
directory: File
|
||||||
|
): Dependency
|
||||||
|
|
||||||
fun optionalNpm(directory: File): Dependency
|
fun devNpm(
|
||||||
|
directory: File
|
||||||
|
): Dependency
|
||||||
|
|
||||||
fun peerNpm(name: String, version: String): Dependency
|
fun optionalNpm(
|
||||||
}
|
name: String,
|
||||||
|
version: String,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
|
): Dependency
|
||||||
|
|
||||||
|
fun optionalNpm(
|
||||||
|
name: String,
|
||||||
|
version: String
|
||||||
|
): Dependency = optionalNpm(
|
||||||
|
name = name,
|
||||||
|
version = version,
|
||||||
|
generateKotlinExternals = DEFAULT_GENERATE_KOTLIN_EXTERNALS
|
||||||
|
)
|
||||||
|
|
||||||
|
fun optionalNpm(
|
||||||
|
name: String,
|
||||||
|
directory: File,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
|
): Dependency
|
||||||
|
|
||||||
|
fun optionalNpm(
|
||||||
|
name: String,
|
||||||
|
directory: File
|
||||||
|
): Dependency = optionalNpm(
|
||||||
|
name = name,
|
||||||
|
directory = directory,
|
||||||
|
generateKotlinExternals = DEFAULT_GENERATE_KOTLIN_EXTERNALS
|
||||||
|
)
|
||||||
|
|
||||||
|
fun optionalNpm(
|
||||||
|
directory: File,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
|
): Dependency
|
||||||
|
|
||||||
|
fun optionalNpm(
|
||||||
|
directory: File
|
||||||
|
): Dependency = optionalNpm(
|
||||||
|
directory = directory,
|
||||||
|
generateKotlinExternals = DEFAULT_GENERATE_KOTLIN_EXTERNALS
|
||||||
|
)
|
||||||
|
|
||||||
|
fun peerNpm(
|
||||||
|
name: String,
|
||||||
|
version: String
|
||||||
|
): Dependency
|
||||||
|
}
|
||||||
|
|
||||||
|
const val DEFAULT_GENERATE_KOTLIN_EXTERNALS = true
|
||||||
+61
-24
@@ -91,27 +91,44 @@ class DefaultKotlinDependencyHandler(
|
|||||||
override fun npm(name: String): Dependency =
|
override fun npm(name: String): Dependency =
|
||||||
onlyNameNpmDependency(name)
|
onlyNameNpmDependency(name)
|
||||||
|
|
||||||
override fun npm(name: String, version: String): NpmDependency =
|
override fun npm(
|
||||||
|
name: String,
|
||||||
|
version: String,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
|
): NpmDependency =
|
||||||
NpmDependency(
|
NpmDependency(
|
||||||
project = project,
|
project = project,
|
||||||
name = name,
|
name = name,
|
||||||
version = version
|
version = version,
|
||||||
|
generateKotlinExternals = generateKotlinExternals
|
||||||
)
|
)
|
||||||
|
|
||||||
override fun npm(name: String, directory: File): NpmDependency =
|
override fun npm(
|
||||||
|
name: String,
|
||||||
|
directory: File,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
|
): NpmDependency =
|
||||||
directoryNpmDependency(
|
directoryNpmDependency(
|
||||||
name,
|
name = name,
|
||||||
directory,
|
directory = directory,
|
||||||
NpmDependency.Scope.NORMAL
|
scope = NpmDependency.Scope.NORMAL,
|
||||||
|
generateKotlinExternals = generateKotlinExternals
|
||||||
)
|
)
|
||||||
|
|
||||||
override fun npm(directory: File): NpmDependency =
|
override fun npm(
|
||||||
|
directory: File,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
|
): NpmDependency =
|
||||||
npm(
|
npm(
|
||||||
name = moduleName(directory),
|
name = moduleName(directory),
|
||||||
directory = directory
|
directory = directory,
|
||||||
|
generateKotlinExternals = generateKotlinExternals
|
||||||
)
|
)
|
||||||
|
|
||||||
override fun devNpm(name: String, version: String): NpmDependency =
|
override fun devNpm(
|
||||||
|
name: String,
|
||||||
|
version: String
|
||||||
|
): NpmDependency =
|
||||||
NpmDependency(
|
NpmDependency(
|
||||||
project = project,
|
project = project,
|
||||||
name = name,
|
name = name,
|
||||||
@@ -121,9 +138,10 @@ class DefaultKotlinDependencyHandler(
|
|||||||
|
|
||||||
override fun devNpm(name: String, directory: File): NpmDependency =
|
override fun devNpm(name: String, directory: File): NpmDependency =
|
||||||
directoryNpmDependency(
|
directoryNpmDependency(
|
||||||
name,
|
name = name,
|
||||||
directory,
|
directory = directory,
|
||||||
NpmDependency.Scope.DEV
|
scope = NpmDependency.Scope.DEV,
|
||||||
|
generateKotlinExternals = false
|
||||||
)
|
)
|
||||||
|
|
||||||
override fun devNpm(directory: File): NpmDependency =
|
override fun devNpm(directory: File): NpmDependency =
|
||||||
@@ -132,28 +150,45 @@ class DefaultKotlinDependencyHandler(
|
|||||||
directory = directory
|
directory = directory
|
||||||
)
|
)
|
||||||
|
|
||||||
override fun optionalNpm(name: String, version: String): NpmDependency =
|
override fun optionalNpm(
|
||||||
|
name: String,
|
||||||
|
version: String,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
|
): NpmDependency =
|
||||||
NpmDependency(
|
NpmDependency(
|
||||||
project = project,
|
project = project,
|
||||||
name = name,
|
name = name,
|
||||||
version = version,
|
version = version,
|
||||||
scope = NpmDependency.Scope.OPTIONAL
|
scope = NpmDependency.Scope.OPTIONAL,
|
||||||
|
generateKotlinExternals = generateKotlinExternals
|
||||||
)
|
)
|
||||||
|
|
||||||
override fun optionalNpm(name: String, directory: File): NpmDependency =
|
override fun optionalNpm(
|
||||||
|
name: String,
|
||||||
|
directory: File,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
|
): NpmDependency =
|
||||||
directoryNpmDependency(
|
directoryNpmDependency(
|
||||||
name,
|
name,
|
||||||
directory,
|
directory,
|
||||||
NpmDependency.Scope.OPTIONAL
|
NpmDependency.Scope.OPTIONAL,
|
||||||
|
generateKotlinExternals = generateKotlinExternals
|
||||||
)
|
)
|
||||||
|
|
||||||
override fun optionalNpm(directory: File): NpmDependency =
|
override fun optionalNpm(
|
||||||
|
directory: File,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
|
): NpmDependency =
|
||||||
optionalNpm(
|
optionalNpm(
|
||||||
name = moduleName(directory),
|
name = moduleName(directory),
|
||||||
directory = directory
|
directory = directory,
|
||||||
|
generateKotlinExternals = generateKotlinExternals
|
||||||
)
|
)
|
||||||
|
|
||||||
override fun peerNpm(name: String, version: String): NpmDependency =
|
override fun peerNpm(
|
||||||
|
name: String,
|
||||||
|
version: String
|
||||||
|
): NpmDependency =
|
||||||
NpmDependency(
|
NpmDependency(
|
||||||
project = project,
|
project = project,
|
||||||
name = name,
|
name = name,
|
||||||
@@ -164,12 +199,14 @@ class DefaultKotlinDependencyHandler(
|
|||||||
private fun directoryNpmDependency(
|
private fun directoryNpmDependency(
|
||||||
name: String,
|
name: String,
|
||||||
directory: File,
|
directory: File,
|
||||||
scope: NpmDependency.Scope
|
scope: NpmDependency.Scope,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
): NpmDependency =
|
): NpmDependency =
|
||||||
directoryNpmDependency(
|
directoryNpmDependency(
|
||||||
project,
|
project = project,
|
||||||
name,
|
name = name,
|
||||||
directory,
|
directory = directory,
|
||||||
scope
|
scope = scope,
|
||||||
|
generateKotlinExternals = generateKotlinExternals
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
+5
-3
@@ -25,7 +25,7 @@ data class NpmDependency(
|
|||||||
private val name: String,
|
private val name: String,
|
||||||
private val version: String,
|
private val version: String,
|
||||||
val scope: Scope = Scope.NORMAL,
|
val scope: Scope = Scope.NORMAL,
|
||||||
val generateKotlinExternals: Boolean = true
|
val generateKotlinExternals: Boolean = false
|
||||||
) : SelfResolvingDependency,
|
) : SelfResolvingDependency,
|
||||||
SelfResolvingDependencyInternal,
|
SelfResolvingDependencyInternal,
|
||||||
ResolvableDependency,
|
ResolvableDependency,
|
||||||
@@ -132,7 +132,8 @@ internal fun directoryNpmDependency(
|
|||||||
project: Project,
|
project: Project,
|
||||||
name: String,
|
name: String,
|
||||||
directory: File,
|
directory: File,
|
||||||
scope: NpmDependency.Scope
|
scope: NpmDependency.Scope,
|
||||||
|
generateKotlinExternals: Boolean
|
||||||
): NpmDependency {
|
): NpmDependency {
|
||||||
check(directory.isDirectory) {
|
check(directory.isDirectory) {
|
||||||
"Dependency on local path should point on directory but $directory found"
|
"Dependency on local path should point on directory but $directory found"
|
||||||
@@ -142,7 +143,8 @@ internal fun directoryNpmDependency(
|
|||||||
project = project,
|
project = project,
|
||||||
name = name,
|
name = name,
|
||||||
version = fileVersion(directory),
|
version = fileVersion(directory),
|
||||||
scope = scope
|
scope = scope,
|
||||||
|
generateKotlinExternals = generateKotlinExternals
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user