[Gradle, JS] Statically calculated module configurator id

^KT-40527 fixed
This commit is contained in:
Ilya Goncharov
2020-07-21 16:26:14 +03:00
parent bf1b85343f
commit 38ec3ffb4a
@@ -84,14 +84,10 @@ interface JSConfigurator : ModuleConfiguratorWithModuleType, ModuleConfiguratorW
} }
} }
enum class JsTarget { abstract class JsSinglePlatformModuleConfigurator :
BROWSER, JSConfigurator,
NODE; ModuleConfiguratorWithTests,
} SinglePlatformModuleConfigurator,
abstract class JsSinglePlatformModuleConfigurator(
jsTarget: JsTarget
) : JSConfigurator, ModuleConfiguratorWithTests, SinglePlatformModuleConfigurator,
ModuleConfiguratorWithSettings { ModuleConfiguratorWithSettings {
override fun getConfiguratorSettings(): List<ModuleConfiguratorSetting<*, *>> = override fun getConfiguratorSettings(): List<ModuleConfiguratorSetting<*, *>> =
super<ModuleConfiguratorWithTests>.getConfiguratorSettings() + super<ModuleConfiguratorWithTests>.getConfiguratorSettings() +
@@ -102,9 +98,6 @@ abstract class JsSinglePlatformModuleConfigurator(
@NonNls @NonNls
override val suggestedModuleName = "js" override val suggestedModuleName = "js"
@NonNls
override val id = "js${jsTarget.name.toLowerCase().capitalize()}SinglePlatform"
override fun defaultTestFramework(): KotlinTestFramework = KotlinTestFramework.JS override fun defaultTestFramework(): KotlinTestFramework = KotlinTestFramework.JS
override val canContainSubModules = false override val canContainSubModules = false
@@ -130,9 +123,10 @@ abstract class JsSinglePlatformModuleConfigurator(
protected abstract fun GradleIRListBuilder.subTarget(module: Module, reader: Reader) protected abstract fun GradleIRListBuilder.subTarget(module: Module, reader: Reader)
} }
object BrowserJsSinglePlatformModuleConfigurator : JsSinglePlatformModuleConfigurator( object BrowserJsSinglePlatformModuleConfigurator : JsSinglePlatformModuleConfigurator() {
JsTarget.BROWSER @NonNls
) { override val id = "jsBrowserSinglePlatform"
override fun getConfiguratorSettings(): List<ModuleConfiguratorSetting<*, *>> { override fun getConfiguratorSettings(): List<ModuleConfiguratorSetting<*, *>> {
return super.getConfiguratorSettings() + return super.getConfiguratorSettings() +
JSConfigurator.cssSupport JSConfigurator.cssSupport
@@ -145,9 +139,10 @@ object BrowserJsSinglePlatformModuleConfigurator : JsSinglePlatformModuleConfigu
override val text = KotlinNewProjectWizardBundle.message("module.configurator.simple.js.browser") override val text = KotlinNewProjectWizardBundle.message("module.configurator.simple.js.browser")
} }
object NodeJsSinglePlatformModuleConfigurator : JsSinglePlatformModuleConfigurator( object NodeJsSinglePlatformModuleConfigurator : JsSinglePlatformModuleConfigurator() {
JsTarget.NODE @NonNls
) { override val id = "jsNodeSinglePlatform"
override fun GradleIRListBuilder.subTarget(module: Module, reader: Reader) { override fun GradleIRListBuilder.subTarget(module: Module, reader: Reader) {
nodejsSubTarget(module, reader) nodejsSubTarget(module, reader)
} }