[Gradle, JS] JsSinglePlatform -> BrowserJsSinglePlatform

^KT-40527 fixed
This commit is contained in:
Ilya Goncharov
2020-07-20 19:01:17 +03:00
parent b4334a3a3b
commit e8dfc4dcd0
6 changed files with 9 additions and 11 deletions
@@ -42,7 +42,7 @@ class CreateModuleOrTargetPopup private constructor(
if (allowMultiplatform) +MppModuleConfigurator
+JvmSinglePlatformModuleConfigurator
if (allowAndroid) +AndroidSinglePlatformModuleConfigurator
if (allowSinglepaltformJs) +JsSingleplatformModuleConfigurator
if (allowSinglepaltformJs) +BrowserJsSinglePlatformModuleConfigurator
if (allowIos) +IOSSinglePlatformModuleConfigurator
}
) {
@@ -7,7 +7,7 @@ import com.intellij.ui.ToolbarDecorator
import org.jetbrains.kotlin.tools.projectWizard.KotlinNewProjectWizardBundle
import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.AndroidSinglePlatformModuleConfigurator
import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.IOSSinglePlatformModuleConfigurator
import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.JsSingleplatformModuleConfigurator
import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.BrowserJsSinglePlatformModuleConfigurator
import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.MppModuleConfigurator
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.withAllSubModules
import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.Module
@@ -38,7 +38,7 @@ class ModulesEditorToolbarDecorator(
&& allModules.none { it.configurator == MppModuleConfigurator },
allowSinglepaltformJs = isMultiplatformProject()
&& isRootModule
&& allModules.none { it.configurator == JsSingleplatformModuleConfigurator },
&& allModules.none { it.configurator == BrowserJsSinglePlatformModuleConfigurator },
allowAndroid = isRootModule
&& isMultiplatformProject()
&& allModules.none { it.configurator == AndroidSinglePlatformModuleConfigurator },
@@ -84,7 +84,7 @@ interface JSConfigurator : ModuleConfiguratorWithModuleType, ModuleConfiguratorW
}
}
object JsSingleplatformModuleConfigurator : JSConfigurator, ModuleConfiguratorWithTests, SinglePlatformModuleConfigurator,
open class JsSinglePlatformModuleConfigurator : JSConfigurator, ModuleConfiguratorWithTests, SinglePlatformModuleConfigurator,
ModuleConfiguratorWithSettings {
override fun getConfiguratorSettings(): List<ModuleConfiguratorSetting<*, *>> =
super<ModuleConfiguratorWithTests>.getConfiguratorSettings() +
@@ -123,6 +123,8 @@ object JsSingleplatformModuleConfigurator : JSConfigurator, ModuleConfiguratorWi
}
}
object BrowserJsSinglePlatformModuleConfigurator : JsSinglePlatformModuleConfigurator()
fun GradleIRListBuilder.applicationSupport() {
+"binaries.executable()"
}
@@ -6,7 +6,6 @@ import org.jetbrains.kotlin.tools.projectWizard.SettingsOwner
import org.jetbrains.kotlin.tools.projectWizard.core.*
import org.jetbrains.kotlin.tools.projectWizard.core.entity.settings.*
import org.jetbrains.kotlin.tools.projectWizard.enumSettingImpl
import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.BuildFileIR
import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.BuildSystemIR
import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.KotlinBuildSystemPluginIR
import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.StdlibType
@@ -264,7 +263,7 @@ interface ModuleConfigurator : DisplayableSettingItem, EntitiesOwnerDescriptor {
+JvmSinglePlatformModuleConfigurator
+AndroidSinglePlatformModuleConfigurator
+IOSSinglePlatformModuleConfigurator
+JsSingleplatformModuleConfigurator
+BrowserJsSinglePlatformModuleConfigurator
}
init {
@@ -1,6 +1,5 @@
package org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem
import kotlinx.collections.immutable.PersistentList
import org.jetbrains.annotations.NonNls
import org.jetbrains.kotlin.tools.projectWizard.GeneratedIdentificator
import org.jetbrains.kotlin.tools.projectWizard.Identificator
@@ -68,7 +67,7 @@ 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 == JsSingleplatformModuleConfigurator -> KotlinNewProjectWizardBundle.message("module.kind.js.module")
configurator == BrowserJsSinglePlatformModuleConfigurator -> KotlinNewProjectWizardBundle.message("module.kind.js.module")
else -> KotlinNewProjectWizardBundle.message("module.kind.module")
}
@@ -16,7 +16,6 @@ import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.*
import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.*
import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.multiplatform.DefaultTargetConfigurationIR
import org.jetbrains.kotlin.tools.projectWizard.library.MavenArtifact
import org.jetbrains.kotlin.tools.projectWizard.library.NpmArtifact
import org.jetbrains.kotlin.tools.projectWizard.phases.GenerationPhase
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ModuleSubType
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ModuleType
@@ -29,7 +28,6 @@ import org.jetbrains.kotlin.tools.projectWizard.KotlinNewProjectWizardBundle
import org.jetbrains.kotlin.tools.projectWizard.Versions
import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.*
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.KotlinPlugin
import org.jetbrains.kotlin.tools.projectWizard.templates.withSettingsOf
class SimpleJsClientTemplate : Template() {
override val title: String = KotlinNewProjectWizardBundle.message("module.template.js.simple.title")
@@ -45,7 +43,7 @@ class SimpleJsClientTemplate : Template() {
module: Module
): Boolean = when (module.configurator) {
JsBrowserTargetConfigurator -> true
JsSingleplatformModuleConfigurator -> {
BrowserJsSinglePlatformModuleConfigurator -> {
with(reader) {
withSettingsOf(module, module.configurator) {
JSConfigurator.kind.reference.notRequiredSettingValue == JsTargetKind.APPLICATION