Take dependsOn-graph from corresponding property for MPP.M3
This commit is contained in:
+27
-11
@@ -55,25 +55,41 @@ val Module.implementingModules: List<Module>
|
||||
get() = cacheInvalidatingOnRootModifications {
|
||||
val moduleManager = ModuleManager.getInstance(project)
|
||||
|
||||
if (isNewMPPModule) {
|
||||
moduleManager.getModuleDependentModules(this).filter {
|
||||
when (facetSettings?.mppVersion) {
|
||||
null -> emptyList()
|
||||
|
||||
KotlinMultiplatformVersion.M3 -> moduleManager.modules.filter { it.facetSettings?.dependsOnModuleNames?.contains(name) == true }
|
||||
|
||||
KotlinMultiplatformVersion.M2 -> moduleManager.getModuleDependentModules(this).filter {
|
||||
it.isNewMPPModule && it.externalProjectId == externalProjectId
|
||||
}
|
||||
} else {
|
||||
moduleManager.modules.filter { name in it.findOldFashionedImplementedModuleNames() }
|
||||
|
||||
KotlinMultiplatformVersion.M1 -> moduleManager.modules.filter { name in it.findOldFashionedImplementedModuleNames() }
|
||||
}
|
||||
}
|
||||
|
||||
val Module.implementedModules: List<Module>
|
||||
get() = cacheInvalidatingOnRootModifications {
|
||||
if (isNewMPPModule) {
|
||||
rootManager.dependencies.filter {
|
||||
// TODO: remove additional android check
|
||||
it.isNewMPPModule && it.platform.isCommon() && it.externalProjectId == externalProjectId && (isAndroidModule() || it.isTestModule == isTestModule)
|
||||
val facetSettings = facetSettings
|
||||
when (facetSettings?.mppVersion) {
|
||||
null -> emptyList()
|
||||
|
||||
KotlinMultiplatformVersion.M3 -> {
|
||||
val modelsProvider = IdeModelsProviderImpl(project)
|
||||
facetSettings.dependsOnModuleNames.mapNotNull { modelsProvider.findIdeModule(it) }
|
||||
}
|
||||
|
||||
KotlinMultiplatformVersion.M2 -> {
|
||||
rootManager.dependencies.filter {
|
||||
// TODO: remove additional android check
|
||||
it.isNewMPPModule && it.platform.isCommon() && it.externalProjectId == externalProjectId && (isAndroidModule() || it.isTestModule == isTestModule)
|
||||
}
|
||||
}
|
||||
|
||||
KotlinMultiplatformVersion.M1 -> {
|
||||
val modelsProvider = IdeModelsProviderImpl(project)
|
||||
findOldFashionedImplementedModuleNames().mapNotNull { modelsProvider.findIdeModule(it) }
|
||||
}
|
||||
} else {
|
||||
val modelsProvider = IdeModelsProviderImpl(project)
|
||||
findOldFashionedImplementedModuleNames().mapNotNull { modelsProvider.findIdeModule(it) }
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user