[Gradle, JS] Different module kind for browser and nodejs

^KT-40527 fixed
This commit is contained in:
Ilya Goncharov
2020-07-21 17:10:48 +03:00
parent 38ec3ffb4a
commit ae0bedd2ac
6 changed files with 18 additions and 11 deletions
@@ -65,7 +65,8 @@ class ModulesEditorToolbarDecorator(
val moduleKindTextToAdd = when (tree.selectedSettingItem?.safeAs<Module>()?.kind) {
ModuleKind.multiplatform -> KotlinNewProjectWizardBundle.message("module.kind.target")
ModuleKind.singleplatformJvm -> KotlinNewProjectWizardBundle.message("module.kind.module")
ModuleKind.singleplatformJs -> KotlinNewProjectWizardBundle.message("module.kind.js.module")
ModuleKind.singleplatformJsBrowser -> KotlinNewProjectWizardBundle.message("module.kind.js.browser.module")
ModuleKind.singleplatformJsNode -> KotlinNewProjectWizardBundle.message("module.kind.js.node.module")
ModuleKind.singleplatformAndroid -> KotlinNewProjectWizardBundle.message("module.kind.android.module")
ModuleKind.target -> ""
null -> ""
@@ -138,7 +139,8 @@ private val Module.kindText
get() = when (kind) {
ModuleKind.multiplatform -> KotlinNewProjectWizardBundle.message("module.kind.module")
ModuleKind.singleplatformJvm -> KotlinNewProjectWizardBundle.message("module.kind.module")
ModuleKind.singleplatformJs -> KotlinNewProjectWizardBundle.message("module.kind.module")
ModuleKind.singleplatformJsBrowser -> KotlinNewProjectWizardBundle.message("module.kind.module")
ModuleKind.singleplatformJsNode -> KotlinNewProjectWizardBundle.message("module.kind.module")
ModuleKind.singleplatformAndroid -> KotlinNewProjectWizardBundle.message("module.kind.android.module")
ModuleKind.target -> KotlinNewProjectWizardBundle.message("module.kind.target")
}
@@ -20,7 +20,6 @@ import org.jetbrains.kotlin.tools.projectWizard.core.entity.ValidationResult
import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.*
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ModuleSubType
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ModuleType
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ProjectKind
import org.jetbrains.kotlin.tools.projectWizard.settings.DisplayableSettingItem
import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.Module
import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.ModuleKind
@@ -95,7 +94,8 @@ val ModuleSubType.icon: Icon
val ModuleKind.icon: Icon
get() = when (this) {
ModuleKind.multiplatform -> KotlinIcons.MPP
ModuleKind.singleplatformJs -> KotlinIcons.Wizard.JS
ModuleKind.singleplatformJsBrowser -> KotlinIcons.Wizard.JS
ModuleKind.singleplatformJsNode -> KotlinIcons.Wizard.NODE_JS
ModuleKind.singleplatformJvm -> KotlinIcons.Wizard.JVM
ModuleKind.target -> AllIcons.Nodes.Module
ModuleKind.singleplatformAndroid -> KotlinIcons.Wizard.ANDROID
@@ -19,7 +19,8 @@ module.type=Module Type
module.kind.android.module=Android Module
module.kind.ios.module=iOS Module
module.kind.js.module=JS Module
module.kind.js.browser.module=JS Browser Module
module.kind.js.node.module=JS Node Module
module.kind.module=Module
module.kind.mpp.module=MPP Module
module.kind.target=Target
@@ -93,8 +93,6 @@ abstract class JsSinglePlatformModuleConfigurator :
super<ModuleConfiguratorWithTests>.getConfiguratorSettings() +
super<JSConfigurator>.getConfiguratorSettings()
override val moduleKind = ModuleKind.singleplatformJs
@NonNls
override val suggestedModuleName = "js"
@@ -127,6 +125,8 @@ object BrowserJsSinglePlatformModuleConfigurator : JsSinglePlatformModuleConfigu
@NonNls
override val id = "jsBrowserSinglePlatform"
override val moduleKind = ModuleKind.singleplatformJsBrowser
override fun getConfiguratorSettings(): List<ModuleConfiguratorSetting<*, *>> {
return super.getConfiguratorSettings() +
JSConfigurator.cssSupport
@@ -143,6 +143,8 @@ object NodeJsSinglePlatformModuleConfigurator : JsSinglePlatformModuleConfigurat
@NonNls
override val id = "jsNodeSinglePlatform"
override val moduleKind = ModuleKind.singleplatformJsNode
override fun GradleIRListBuilder.subTarget(module: Module, reader: Reader) {
nodejsSubTarget(module, reader)
}
@@ -22,7 +22,9 @@ enum class ModuleKind : DisplayableSettingItem {
target,
singleplatformJvm,
singleplatformAndroid,
singleplatformJs, ;
singleplatformJsBrowser,
singleplatformJsNode,
;
override val text: String
get() = name
@@ -67,8 +69,8 @@ class Module(
configurator == MppModuleConfigurator -> KotlinNewProjectWizardBundle.message("module.kind.mpp.module")
configurator == AndroidSinglePlatformModuleConfigurator -> KotlinNewProjectWizardBundle.message("module.kind.android.module")
configurator == IOSSinglePlatformModuleConfigurator -> KotlinNewProjectWizardBundle.message("module.kind.ios.module")
configurator == BrowserJsSinglePlatformModuleConfigurator ||
configurator == NodeJsSinglePlatformModuleConfigurator -> KotlinNewProjectWizardBundle.message("module.kind.js.module")
configurator == BrowserJsSinglePlatformModuleConfigurator -> KotlinNewProjectWizardBundle.message("module.kind.js.browser.module")
configurator == NodeJsSinglePlatformModuleConfigurator -> KotlinNewProjectWizardBundle.message("module.kind.js.node.module")
else -> KotlinNewProjectWizardBundle.message("module.kind.module")
}
@@ -63,7 +63,7 @@ class SimpleJsClientTemplate : Template() {
override val settings: List<TemplateSetting<*, *>> = listOf(renderEngine)
override fun Reader.createRunConfigurations(module: ModuleIR): List<WizardRunConfiguration> = buildList {
if (module.originalModule.kind == ModuleKind.singleplatformJs) {
if (module.originalModule.kind == ModuleKind.singleplatformJsBrowser) {
+WizardGradleRunConfiguration(
KotlinNewProjectWizardBundle.message("module.template.js.simple.run.configuration.dev"),
"browserDevelopmentRun",