diff --git a/plugins/kotlin/base/statistics/src/org/jetbrains/kotlin/idea/statistics/WizardStatsService.kt b/plugins/kotlin/base/statistics/src/org/jetbrains/kotlin/idea/statistics/WizardStatsService.kt
index f23f1afd0b70..9e0927ad4861 100644
--- a/plugins/kotlin/base/statistics/src/org/jetbrains/kotlin/idea/statistics/WizardStatsService.kt
+++ b/plugins/kotlin/base/statistics/src/org/jetbrains/kotlin/idea/statistics/WizardStatsService.kt
@@ -48,17 +48,12 @@ class WizardStatsService : CounterUsagesCollector() {
"fullStackWebApplication",
"nodejsApplication",
"reactApplication",
- "composeDesktopApplication",
- "composeMultiplatformApplication",
"none",
// AppCode KMM
"multiplatformMobileApplicationUsingAppleGradlePlugin",
"multiplatformMobileApplicationUsingHybridProject",
)
private val allowedModuleTemplates = listOf(
- "composeAndroid",
- "composeDesktopTemplate",
- "composeMppModule",
"consoleJvmApp",
"ktorServer",
"mobileMppModule",
diff --git a/plugins/kotlin/project-wizard/core/resources/messages/KotlinNewProjectWizardBundle.properties b/plugins/kotlin/project-wizard/core/resources/messages/KotlinNewProjectWizardBundle.properties
index 572c0d055d2d..67ea830600c0 100644
--- a/plugins/kotlin/project-wizard/core/resources/messages/KotlinNewProjectWizardBundle.properties
+++ b/plugins/kotlin/project-wizard/core/resources/messages/KotlinNewProjectWizardBundle.properties
@@ -39,8 +39,6 @@ project.kind.android=Android
project.kind.kotlin.js=Kotlin/JS
project.kind.multiplatform=Multiplatform
project.kind.singleplatform=JVM
-project.kind.compose= Compose Multiplatform (Old version)
-project.kind.compose.short.name=Compose Multiplatform (Old version)
project=Project
@@ -77,7 +75,6 @@ module.type.native=Kotlin/Native
module.name=Module name
module.configurator.simple.js.browser=JS for Browser
-module.configurator.simple.js.compose.browser=Compose JS for Browser
module.configurator.simple.js.node=JS for Node.JS
module.configurator.android=Android
@@ -149,31 +146,12 @@ project.template.nodejs.description=Application for the Node.js runtime with Kot
project.template.mpp.mobile.title=Mobile Application
project.template.mpp.mobile.description=Mobile applications for iOS and Android with common code shared between platforms
-project.template.compose.desktop.title=Compose Desktop Application
-project.template.compose.desktop.description=A Compose application targeting the desktop JVM platform (Windows, Linux, macOS)
-
-project.template.compose.multiplatform.title=Compose Multiplatform Application
-project.template.compose.multiplatform.description=Multiplatform (JVM/Windows, JVM/Linux, JVM/MacOS, Android) Compose project with shared code in common modules
-
-project.template.compose.web.title=Compose Web Application
-project.template.compose.web.description=Web (JS) Compose project
-
module.template.console.jvm.title=Console Application
module.template.console.jvm.description=Simple "Hello World!" Kotlin/JVM application that works in the console
module.template.mpp.mobile.title=Mobile Application
module.template.mpp.mobile.description=Mobile applications for iOS and Android with Kotlin Multiplatform Mobile, which supports sharing common code between platforms.
-
-module.template.compose.desktop.title=Compose Desktop Module
-module.template.compose.desktop.description=A Compose application targeting the desktop JVM platform
-
-module.template.compose.web.title=Compose Web Module
-module.template.compose.web.description=A Compose Web application targeting browser (JS)
-
-module.template.compose.mpp.title=Compose MPP Module
-module.template.compose.mpp.description=Compose MPP Module
-
module.template.ktor.server.title=Web server
module.template.ktor.server.description=Backend web server
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeAndroid/AndroidManifest.xml.vm b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeAndroid/AndroidManifest.xml.vm
deleted file mode 100644
index 5c0ebfe59e54..000000000000
--- a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeAndroid/AndroidManifest.xml.vm
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeAndroid/MainActivity.kt.vm b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeAndroid/MainActivity.kt.vm
deleted file mode 100644
index 58e1a299b9ab..000000000000
--- a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeAndroid/MainActivity.kt.vm
+++ /dev/null
@@ -1,23 +0,0 @@
-#if ($package)
-package ${package}
-#end
-#if ($sharedPackage)
-import ${sharedPackage}.App
-#end
-import android.os.Bundle
-import androidx.activity.compose.setContent
-import androidx.appcompat.app.AppCompatActivity
-import androidx.compose.material.MaterialTheme
-
-class MainActivity : AppCompatActivity() {
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
-#if ($sharedPackage)
- setContent {
- MaterialTheme {
- App()
- }
- }
-#end
- }
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeDesktopTemplate/main.kt b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeDesktopTemplate/main.kt
deleted file mode 100644
index fed3f24ab9a4..000000000000
--- a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeDesktopTemplate/main.kt
+++ /dev/null
@@ -1,31 +0,0 @@
-import androidx.compose.desktop.ui.tooling.preview.Preview
-import androidx.compose.material.Button
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Text
-import androidx.compose.runtime.Composable
-import androidx.compose.runtime.getValue
-import androidx.compose.runtime.mutableStateOf
-import androidx.compose.runtime.remember
-import androidx.compose.runtime.setValue
-import androidx.compose.ui.window.Window
-import androidx.compose.ui.window.application
-
-@Composable
-@Preview
-fun App() {
- var text by remember { mutableStateOf("Hello, World!") }
-
- MaterialTheme {
- Button(onClick = {
- text = "Hello, Desktop!"
- }) {
- Text(text)
- }
- }
-}
-
-fun main() = application {
- Window(onCloseRequest = ::exitApplication) {
- App()
- }
-}
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeMpp/App.kt.vm b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeMpp/App.kt.vm
deleted file mode 100644
index c648558ae9f1..000000000000
--- a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeMpp/App.kt.vm
+++ /dev/null
@@ -1,23 +0,0 @@
-#if ($package)
-package ${package}
-
-#end
-#set( $dollar = "${" )
-import androidx.compose.material.Text
-import androidx.compose.material.Button
-import androidx.compose.runtime.Composable
-import androidx.compose.runtime.getValue
-import androidx.compose.runtime.mutableStateOf
-import androidx.compose.runtime.remember
-import androidx.compose.runtime.setValue
-
-@Composable
-fun App() {
- var text by remember { mutableStateOf("Hello, World!") }
-
- Button(onClick = {
- text = "Hello, ${dollar}getPlatformName()}"
- }) {
- Text(text)
- }
-}
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeMpp/DesktopApp.kt.vm b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeMpp/DesktopApp.kt.vm
deleted file mode 100644
index 04c00e3f4847..000000000000
--- a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeMpp/DesktopApp.kt.vm
+++ /dev/null
@@ -1,13 +0,0 @@
-#if ($package)
-package ${package}
-
-#end
-#set( $dollar = "${" )
-import androidx.compose.desktop.ui.tooling.preview.Preview
-import androidx.compose.runtime.Composable
-
-@Preview
-@Composable
-fun AppPreview() {
- App()
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeMpp/main.kt.vm b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeMpp/main.kt.vm
deleted file mode 100644
index 8e6a48ca9c7c..000000000000
--- a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeMpp/main.kt.vm
+++ /dev/null
@@ -1,14 +0,0 @@
-#if ($sharedPackage)
-import ${sharedPackage}.App
-#end
-import androidx.compose.material.MaterialTheme
-import androidx.compose.ui.window.Window
-import androidx.compose.ui.window.application
-
-fun main() = application {
- Window(onCloseRequest = ::exitApplication) {
- MaterialTheme {
- App()
- }
- }
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeWebTemplate/index.html.vm b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeWebTemplate/index.html.vm
deleted file mode 100644
index 8ea7461cf006..000000000000
--- a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeWebTemplate/index.html.vm
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
-
- Sample
-
-
-
-
-
-
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeWebTemplate/main.kt b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeWebTemplate/main.kt
deleted file mode 100644
index 80f2e22c211a..000000000000
--- a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/composeWebTemplate/main.kt
+++ /dev/null
@@ -1,31 +0,0 @@
-import androidx.compose.runtime.mutableStateOf
-import androidx.compose.runtime.getValue
-import androidx.compose.runtime.setValue
-import org.jetbrains.compose.web.css.*
-import org.jetbrains.compose.web.dom.*
-import org.jetbrains.compose.web.renderComposable
-
-fun main() {
- var count: Int by mutableStateOf(0)
-
- renderComposable(rootElementId = "root") {
- Div({ style { padding(25.px) } }) {
- Button(attrs = {
- onClick { count -= 1 }
- }) {
- Text("-")
- }
-
- Span({ style { padding(15.px) } }) {
- Text("$count")
- }
-
- Button(attrs = {
- onClick { count += 1 }
- }) {
- Text("+")
- }
- }
- }
-}
-
diff --git a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/desktopMain.kt/App.kt.vm b/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/desktopMain.kt/App.kt.vm
deleted file mode 100644
index 67f89282bfa6..000000000000
--- a/plugins/kotlin/project-wizard/core/resources/org/jetbrains/kotlin/tools/projectWizard/templates/desktopMain.kt/App.kt.vm
+++ /dev/null
@@ -1,18 +0,0 @@
-#set( $dollar = "${" )
-import androidx.compose.material.Text
-import androidx.compose.material.Button
-import androidx.compose.material.MaterialTheme
-import androidx.compose.runtime.*
-
-@Composable
-fun App() {
- var text by remember { mutableStateOf("Hello, World!") }
-
- MaterialTheme {
- Button(onClick = {
- text = "Hello, ${dollar}getPlatformName()}"
- }) {
- Text(text)
- }
- }
-}
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/Versions.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/Versions.kt
index d963e8e6e005..21e481030b23 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/Versions.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/Versions.kt
@@ -14,20 +14,11 @@ object Versions {
val KTOR = version("2.0.2")
val JUNIT = version("4.13.2")
val JUNIT5 = version("5.8.2")
- val JETBRAINS_COMPOSE = version("1.1.1")
-
- val KOTLIN_VERSION_FOR_COMPOSE = version("1.6.10")
- val GRADLE_VERSION_FOR_COMPOSE = version("7.4.2")
-
- object COMPOSE {
- val ANDROID_ACTIVITY_COMPOSE = version("1.4.0")
- }
object ANDROID {
val ANDROID_MATERIAL = version("1.5.0")
val ANDROIDX_APPCOMPAT = version("1.4.1")
val ANDROIDX_CONSTRAINTLAYOUT = version("2.1.3")
- val ANDROIDX_KTX = version("1.7.0")
}
object KOTLINX {
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/core/service/CoreJvmTargetVersionsProviderService.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/core/service/CoreJvmTargetVersionsProviderService.kt
index e334e3c998fa..e743037ad437 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/core/service/CoreJvmTargetVersionsProviderService.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/core/service/CoreJvmTargetVersionsProviderService.kt
@@ -13,7 +13,6 @@ class CoreJvmTargetVersionsProviderService : JvmTargetVersionsProviderService(),
private val kotlinToJvmTargetVersions: Map> = mapOf(
Versions.KOTLIN to KOTLIN_14_JVM_TARGETS,
- Versions.KOTLIN_VERSION_FOR_COMPOSE to KOTLIN_14_JVM_TARGETS
)
private fun listSupportedJvmTargetVersions(kotlinVersion: Version) =
@@ -21,7 +20,6 @@ class CoreJvmTargetVersionsProviderService : JvmTargetVersionsProviderService(),
}
override fun listSupportedJvmTargetVersions(projectKind: ProjectKind): Set {
- val version = CoreKotlinVersionProviderService.getKotlinVersion(projectKind)
- return listSupportedJvmTargetVersions(version)
+ return listSupportedJvmTargetVersions(Versions.KOTLIN)
}
}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/core/service/CoreKotlinVersionProviderService.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/core/service/CoreKotlinVersionProviderService.kt
index f9084eb50150..9224884997d3 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/core/service/CoreKotlinVersionProviderService.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/core/service/CoreKotlinVersionProviderService.kt
@@ -3,18 +3,9 @@ package org.jetbrains.kotlin.tools.projectWizard.core.service
import org.jetbrains.kotlin.tools.projectWizard.Versions
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ProjectKind
-import org.jetbrains.kotlin.tools.projectWizard.settings.version.Version
class CoreKotlinVersionProviderService : KotlinVersionProviderService(), IdeaIndependentWizardService {
- companion object {
- internal fun getKotlinVersion(projectKind: ProjectKind): Version = when (projectKind) {
- ProjectKind.COMPOSE -> Versions.KOTLIN_VERSION_FOR_COMPOSE
- else -> Versions.KOTLIN
- }
- }
-
override fun getKotlinVersion(projectKind: ProjectKind): WizardKotlinVersion {
- val version = CoreKotlinVersionProviderService.getKotlinVersion(projectKind)
- return kotlinVersionWithDefaultValues(version)
+ return kotlinVersionWithDefaultValues(Versions.KOTLIN)
}
}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/JsModuleConfigurator.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/JsModuleConfigurator.kt
index 80dbfec3f712..80bf1d036342 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/JsModuleConfigurator.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/JsModuleConfigurator.kt
@@ -3,21 +3,17 @@
package org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators
-import kotlinx.collections.immutable.toPersistentList
import org.jetbrains.annotations.NonNls
import org.jetbrains.kotlin.tools.projectWizard.KotlinNewProjectWizardBundle
import org.jetbrains.kotlin.tools.projectWizard.core.Reader
import org.jetbrains.kotlin.tools.projectWizard.core.TaskResult
import org.jetbrains.kotlin.tools.projectWizard.core.Writer
-import org.jetbrains.kotlin.tools.projectWizard.core.compute
import org.jetbrains.kotlin.tools.projectWizard.core.entity.settings.ModuleConfiguratorSetting
import org.jetbrains.kotlin.tools.projectWizard.core.entity.settings.ModuleConfiguratorSettingReference
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.gradle.GradleIRListBuilder
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.GradlePropertyAccessIR
import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.irsList
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.multiplatform.DefaultTargetConfigurationIR
import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.BrowserJsSinglePlatformModuleConfigurator.settingsValue
import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.JSConfigurator.Companion.isApplication
import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.JsBrowserBasedConfigurator.Companion.browserSubTarget
@@ -26,7 +22,6 @@ import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.JvmModuleCon
import org.jetbrains.kotlin.tools.projectWizard.phases.GenerationPhase
import org.jetbrains.kotlin.tools.projectWizard.plugins.buildSystem.gradle.GradlePlugin
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.KotlinPlugin
-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.ModulesToIrConversionData
import org.jetbrains.kotlin.tools.projectWizard.plugins.printer.GradlePrinter
@@ -231,54 +226,3 @@ fun GradleIRListBuilder.commonCssSupport(reader: Reader) {
}
}
}
-
-object JsComposeMppConfigurator : JsBrowserBasedConfigurator, SimpleTargetConfigurator {
- @NonNls
- override val id = "jsBrowserComposeMpp"
-
- @NonNls
- override val suggestedModuleName = "js"
-
- override val moduleKind = ModuleKind.target
-
- override val text = KotlinNewProjectWizardBundle.message("module.configurator.simple.js.compose.browser")
-
- override val moduleSubType = ModuleSubType.js
-
- override fun createInnerTargetIrs(
- reader: Reader,
- module: Module
- ): List = irsList {
- +super.createInnerTargetIrs(reader, module)
- "browser" {
- "testTask" {
- +"testLogging.showStandardStreams = true"
- "useKarma" {
- +"useChromeHeadless()"
- +"useFirefox()"
- }
- }
- }
- applicationSupport()
- }
-
- override fun Reader.createTargetIrs(
- module: Module
- ): List = org.jetbrains.kotlin.tools.projectWizard.core.buildList {
- +DefaultTargetConfigurationIR(
- module.createTargetAccessIr(moduleSubType),
- createInnerTargetIrs(this@createTargetIrs, module).toPersistentList(),
- listOf(GradlePropertyAccessIR("IR"))
- )
- }
-
- override fun Writer.runArbitraryTask(
- configurationData: ModulesToIrConversionData,
- module: Module,
- modulePath: Path,
- ): TaskResult = compute {
- GradlePlugin.gradleProperties.addValues("kotlin.js.webpack.major.version" to 4) //workaround for KT-48273 TODO:remove once the issue is fixed
- }
-
-}
-
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/Plugins.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/Plugins.kt
index 4c275e399542..a1cebdce33b9 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/Plugins.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/Plugins.kt
@@ -1,7 +1,6 @@
// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package org.jetbrains.kotlin.tools.projectWizard.plugins
-import kotlinx.collections.immutable.persistentListOf
import org.jetbrains.kotlin.tools.projectWizard.core.Context
import org.jetbrains.kotlin.tools.projectWizard.core.Plugin
import org.jetbrains.kotlin.tools.projectWizard.core.buildPersistenceList
@@ -48,7 +47,6 @@ object Plugins {
+ReactJsTemplatesPlugin(context)
+SimpleNodeJsTemplatesPlugin(context)
+NativeConsoleApplicationTemplatePlugin(context)
- +ComposeTemplatesPlugin(context)
+MobileMppTemplatePlugin(context)
}
}
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/kotlin/KotlinPlugin.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/kotlin/KotlinPlugin.kt
index ef880a84a4b7..89cc3f258d96 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/kotlin/KotlinPlugin.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/kotlin/KotlinPlugin.kt
@@ -133,7 +133,7 @@ class KotlinPlugin(context: Context) : Plugin(context) {
withAction {
val version = version.propertyValue
if (version.kind.isStable) return@withAction UNIT_SUCCESS
- val pluginRepository = version.buildSystemPluginRepository(buildSystemType) ?: return@withAction UNIT_SUCCESS
+ val pluginRepository = version.buildSystemPluginRepository(buildSystemType)
BuildSystemPlugin.pluginRepositoreis.addValues(pluginRepository) andThen
updateBuildFiles { buildFile ->
buildFile.withIrs(
@@ -218,12 +218,6 @@ enum class ProjectKind(
Multiplatform(KotlinNewProjectWizardBundle.message("project.kind.multiplatform"), supportedBuildSystems = BuildSystemType.ALL_GRADLE),
Android(KotlinNewProjectWizardBundle.message("project.kind.android"), supportedBuildSystems = BuildSystemType.ALL_GRADLE),
Js(KotlinNewProjectWizardBundle.message("project.kind.kotlin.js"), supportedBuildSystems = BuildSystemType.ALL_GRADLE),
- COMPOSE(
- KotlinNewProjectWizardBundle.message("project.kind.compose"),
- supportedBuildSystems = setOf(BuildSystemType.GradleKotlinDsl),
- shortName = KotlinNewProjectWizardBundle.message("project.kind.compose.short.name"),
- message = "uses Kotlin ${Versions.KOTLIN_VERSION_FOR_COMPOSE}"
- )
}
fun List.withAllSubModules(includeSourcesets: Boolean = false): List = buildList {
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/templates/ComposeTemplatesPlugin.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/templates/ComposeTemplatesPlugin.kt
deleted file mode 100644
index 4017fb24f3ac..000000000000
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/plugins/templates/ComposeTemplatesPlugin.kt
+++ /dev/null
@@ -1,33 +0,0 @@
-// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
-package org.jetbrains.kotlin.tools.projectWizard.plugins.templates
-
-import org.jetbrains.kotlin.tools.projectWizard.core.Context
-import org.jetbrains.kotlin.tools.projectWizard.core.PluginSettingsOwner
-import org.jetbrains.kotlin.tools.projectWizard.core.andThen
-import org.jetbrains.kotlin.tools.projectWizard.core.entity.PipelineTask
-import org.jetbrains.kotlin.tools.projectWizard.phases.GenerationPhase
-import org.jetbrains.kotlin.tools.projectWizard.templates.compose.ComposeJvmDesktopTemplate
-import org.jetbrains.kotlin.tools.projectWizard.templates.compose.ComposeMppModuleTemplate
-import org.jetbrains.kotlin.tools.projectWizard.templates.compose.ComposeWebModuleTemplate
-
-class ComposeTemplatesPlugin(context: Context) : TemplatePlugin(context) {
- override val path = pluginPath
-
- override val pipelineTasks: List = super.pipelineTasks +
- listOf(
- addTemplate,
- )
-
- companion object : PluginSettingsOwner() {
- override val pluginPath = "template.compose"
-
- val addTemplate by pipelineTask(GenerationPhase.PREPARE) {
- withAction {
- TemplatesPlugin.addTemplate.execute(ComposeJvmDesktopTemplate()) andThen
- TemplatesPlugin.addTemplate.execute(ComposeJvmDesktopTemplate()) andThen
- TemplatesPlugin.addTemplate.execute(ComposeMppModuleTemplate()) andThen
- TemplatesPlugin.addTemplate.execute(ComposeWebModuleTemplate)
- }
- }
- }
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/projectTemplates/ProjectTemplates.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/projectTemplates/ProjectTemplates.kt
index 0213a9228011..569c34e8ba19 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/projectTemplates/ProjectTemplates.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/projectTemplates/ProjectTemplates.kt
@@ -4,12 +4,9 @@ package org.jetbrains.kotlin.tools.projectWizard.projectTemplates
import org.jetbrains.annotations.NonNls
import org.jetbrains.kotlin.tools.projectWizard.KotlinNewProjectWizardBundle
-import org.jetbrains.kotlin.tools.projectWizard.Versions
import org.jetbrains.kotlin.tools.projectWizard.core.buildList
import org.jetbrains.kotlin.tools.projectWizard.core.entity.settings.*
import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.*
-import org.jetbrains.kotlin.tools.projectWizard.plugins.StructurePlugin
-import org.jetbrains.kotlin.tools.projectWizard.plugins.buildSystem.gradle.GradlePlugin
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.KotlinPlugin
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ModuleSubType
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ModuleType
@@ -17,7 +14,6 @@ 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.*
import org.jetbrains.kotlin.tools.projectWizard.templates.*
-import org.jetbrains.kotlin.tools.projectWizard.templates.compose.*
import org.jetbrains.kotlin.tools.projectWizard.templates.mpp.MobileMppTemplate
abstract class ProjectTemplate : DisplayableSettingItem {
@@ -75,9 +71,6 @@ abstract class ProjectTemplate : DisplayableSettingItem {
FrontendApplicationProjectTemplate,
ReactApplicationProjectTemplate,
NodeJsApplicationProjectTemplate,
- ComposeDesktopApplicationProjectTemplate,
- ComposeMultiplatformApplicationProjectTemplate,
- ComposeWebApplicationProjectTemplate,
ConsoleApplicationProjectTemplateWithSample
)
@@ -90,6 +83,7 @@ abstract class ProjectTemplate : DisplayableSettingItem {
private infix fun > PluginSettingReference.withValue(value: V): SettingWithValue =
SettingWithValue(this, value)
+@Suppress("unused")
private inline infix fun > PluginSetting.withValue(value: V): SettingWithValue =
SettingWithValue(reference, value)
@@ -341,150 +335,3 @@ object NodeJsApplicationProjectTemplate : ProjectTemplate() {
)
)
}
-
-object ComposeDesktopApplicationProjectTemplate : ProjectTemplate() {
- override val title = KotlinNewProjectWizardBundle.message("project.template.compose.desktop.title")
- override val description = KotlinNewProjectWizardBundle.message("project.template.compose.desktop.description")
- override val id = "composeDesktopApplication"
-
- @NonNls
- override val suggestedProjectName = "myComposeDesktopApplication"
- override val projectKind = ProjectKind.COMPOSE
-
- override val setsPluginSettings: List>
- get() = listOf(
- GradlePlugin.gradleVersion withValue Versions.GRADLE_VERSION_FOR_COMPOSE,
- StructurePlugin.version withValue "1.0",
- )
-
- override val setsModules: List
- get() = listOf(
- Module(
- "compose",
- JvmSinglePlatformModuleConfigurator,
- template = ComposeJvmDesktopTemplate(),
- sourceSets = SourcesetType.ALL.map { type ->
- Sourceset(type, dependencies = emptyList())
- },
- subModules = emptyList()
- ).withConfiguratorSettings {
- JvmModuleConfigurator.testFramework withValue KotlinTestFramework.NONE
- JvmModuleConfigurator.targetJvmVersion withValue TargetJvmVersion.JVM_11
- }
- )
-}
-
-object ComposeMultiplatformApplicationProjectTemplate : ProjectTemplate() {
- override val title = KotlinNewProjectWizardBundle.message("project.template.compose.multiplatform.title")
- override val description = KotlinNewProjectWizardBundle.message("project.template.compose.multiplatform.description")
- override val id = "composeMultiplatformApplication"
-
- @NonNls
- override val suggestedProjectName = "myComposeMultiplatformApplication"
- override val projectKind = ProjectKind.COMPOSE
-
- override val setsPluginSettings: List>
- get() = listOf(
- GradlePlugin.gradleVersion withValue Versions.GRADLE_VERSION_FOR_COMPOSE,
- StructurePlugin.version withValue "1.0",
- )
-
- override val setsModules: List
- get() = buildList {
- val common = MultiplatformModule(
- "common",
- template = ComposeMppModuleTemplate(),
- listOf(
- ModuleType.common.createDefaultTarget().withConfiguratorSettings {
- JvmModuleConfigurator.testFramework withValue KotlinTestFramework.NONE
- },
- Module(
- "android",
- AndroidTargetConfigurator,
- template = ComposeCommonAndroidTemplate(),
- sourceSets = createDefaultSourceSets(),
- subModules = emptyList()
- ).withConfiguratorSettings {
- configurator.androidPlugin withValue AndroidGradlePlugin.LIBRARY
- JvmModuleConfigurator.testFramework withValue KotlinTestFramework.NONE
- },
- Module(
- "desktop",
- JvmTargetConfigurator,
- template = ComposeCommonDesktopTemplate(),
- sourceSets = createDefaultSourceSets(),
- subModules = emptyList()
- ).withConfiguratorSettings {
- JvmModuleConfigurator.testFramework withValue KotlinTestFramework.NONE
- JvmModuleConfigurator.targetJvmVersion withValue TargetJvmVersion.JVM_11
- }
- )
- )
- +Module(
- "android",
- AndroidSinglePlatformModuleConfigurator,
- template = ComposeAndroidTemplate(),
- sourceSets = createDefaultSourceSets(),
- subModules = emptyList(),
- dependencies = mutableListOf(ModuleReference.ByModule(common))
- ).withConfiguratorSettings {
- JvmModuleConfigurator.testFramework withValue KotlinTestFramework.NONE
- }
- +Module(
- "desktop",
- MppModuleConfigurator,
- template = ComposeCommonDesktopTemplate(),
- sourceSets = createDefaultSourceSets(),
- subModules = listOf(
- Module(
- "jvm",
- JvmTargetConfigurator,
- template = ComposeJvmDesktopTemplate(),
- sourceSets = createDefaultSourceSets(),
- subModules = emptyList(),
- dependencies = mutableListOf(ModuleReference.ByModule(common))
- ).withConfiguratorSettings {
- JvmModuleConfigurator.testFramework withValue KotlinTestFramework.NONE
- JvmModuleConfigurator.targetJvmVersion withValue TargetJvmVersion.JVM_11
- }
- ),
- )
- +common
- }
-}
-
-object ComposeWebApplicationProjectTemplate : ProjectTemplate() {
- override val title = KotlinNewProjectWizardBundle.message("project.template.compose.web.title")
- override val description = KotlinNewProjectWizardBundle.message("project.template.compose.web.description")
- override val id = "composeWebApplication"
-
- @NonNls
- override val suggestedProjectName = "myComposeWebApplication"
- override val projectKind = ProjectKind.COMPOSE
-
- override val setsPluginSettings: List>
- get() = listOf(
- GradlePlugin.gradleVersion withValue Versions.GRADLE_VERSION_FOR_COMPOSE,
- StructurePlugin.version withValue "1.0",
- )
-
- override val setsModules: List
- get() = listOf(
- Module(
- "web",
- MppModuleConfigurator,
- template = null,
- sourceSets = createDefaultSourceSets(),
- subModules = listOf(
- Module(
- "js",
- JsComposeMppConfigurator,
- template = ComposeWebModuleTemplate,
- permittedTemplateIds = setOf(ComposeWebModuleTemplate.id),
- sourceSets = createDefaultSourceSets(),
- subModules = emptyList()
- )
- )
- )
- )
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/settings/buildsystem/Repository.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/settings/buildsystem/Repository.kt
index 0d1fa31984c4..634d88211915 100644
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/settings/buildsystem/Repository.kt
+++ b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/settings/buildsystem/Repository.kt
@@ -33,6 +33,7 @@ data class DefaultRepository(val type: Type) : Repository {
interface CustomMavenRepository : Repository
+@Suppress("unused")
data class CustomMavenRepositoryImpl(val repository: String, val base: String) : CustomMavenRepository {
override val url: String = "$base/$repository"
@@ -61,7 +62,6 @@ object Repositories {
val KOTLINX_HTML = JetBrainsSpace("public/p/kotlinx-html/maven")
val KOTLIN_JS_WRAPPERS = DefaultRepository.MAVEN_CENTRAL
val KOTLIN_EAP_MAVEN_CENTRAL = DefaultRepository.MAVEN_CENTRAL
- val JETBRAINS_COMPOSE_DEV = JetBrainsSpace("public/p/compose/dev")
val JETBRAINS_KOTLIN_DEV = JetBrainsSpace("kotlin/p/kotlin/dev")
val JETBRAINS_KOTLIN_BOOTSTRAP = CacheRedirector(
"maven.pkg.jetbrains.space",
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/compose/ComposeAndroidTemplate.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/compose/ComposeAndroidTemplate.kt
deleted file mode 100644
index 6f327eebbb51..000000000000
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/compose/ComposeAndroidTemplate.kt
+++ /dev/null
@@ -1,140 +0,0 @@
-// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
-
-package org.jetbrains.kotlin.tools.projectWizard.templates.compose
-
-import kotlinx.collections.immutable.toPersistentList
-import org.jetbrains.annotations.NonNls
-import org.jetbrains.kotlin.tools.projectWizard.KotlinNewProjectWizardBundle
-import org.jetbrains.kotlin.tools.projectWizard.Versions
-import org.jetbrains.kotlin.tools.projectWizard.core.*
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.*
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.AndroidConfigIR
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.irsList
-import org.jetbrains.kotlin.tools.projectWizard.library.MavenArtifact
-import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.AndroidModuleConfigurator
-import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.AndroidSinglePlatformModuleConfigurator
-import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.moduleType
-import org.jetbrains.kotlin.tools.projectWizard.plugins.buildSystem.BuildSystemPlugin
-import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ModuleType
-import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ProjectKind
-import org.jetbrains.kotlin.tools.projectWizard.plugins.pomIR
-import org.jetbrains.kotlin.tools.projectWizard.plugins.templates.TemplatesPlugin
-import org.jetbrains.kotlin.tools.projectWizard.settings.JavaPackage
-import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.DefaultRepository
-import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.Module
-import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.ModuleKind
-import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.Repositories
-import org.jetbrains.kotlin.tools.projectWizard.settings.javaPackage
-import org.jetbrains.kotlin.tools.projectWizard.templates.FileTemplateDescriptor
-import org.jetbrains.kotlin.tools.projectWizard.templates.Template
-
-class ComposeAndroidTemplate : Template() {
- @NonNls
- override val id: String = "composeAndroid"
-
- override val title: String = KotlinNewProjectWizardBundle.message("module.template.compose.desktop.title")
- override val description: String = KotlinNewProjectWizardBundle.message("module.template.compose.desktop.description")
-
-
- override fun isApplicableTo(module: Module, projectKind: ProjectKind, reader: Reader): Boolean =
- module.configurator.moduleType == ModuleType.android
- && projectKind == ProjectKind.COMPOSE
- && module.kind == ModuleKind.singlePlatformAndroid
-
-
- override fun Writer.getIrsToAddToBuildFile(
- module: ModuleIR
- ) = irsList {
- +GradleOnlyPluginByNameIR("org.jetbrains.compose", version = Versions.JETBRAINS_COMPOSE)
- +RepositoryIR(Repositories.JETBRAINS_COMPOSE_DEV)
- +RepositoryIR(DefaultRepository.GOOGLE)
- +Dependencies.ACTIVITY_COMPOSE
- }
-
- override fun Reader.updateBuildFileIRs(irs: List): List {
- val androidIR = irs.firstNotNullOfOrNull { ir-> ir.takeIf { ir is AndroidConfigIR } }
- if (androidIR != null && androidIR is AndroidConfigIR) {
- androidIR.androidSdkVersion = "31"
- }
- return irs
- }
-
-
- override fun Writer.getRequiredLibraries(module: ModuleIR): List = buildList {
- +Dependencies.ACTIVITY_COMPOSE
- }
-
- override fun Reader.updateModuleIR(module: ModuleIR): ModuleIR {
- val irs = module.irs.filterNot { ir ->
- ir == AndroidSinglePlatformModuleConfigurator.DEPENDENCIES.APP_COMPAT
- || ir == AndroidSinglePlatformModuleConfigurator.DEPENDENCIES.CONSTRAINT_LAYOUT
- || ir == AndroidModuleConfigurator.DEPENDENCIES.MATERIAL
- }
- return module.withReplacedIrs(irs.toPersistentList())
- }
-
- override fun Writer.runArbitratyTask(module: ModuleIR): TaskResult = compute {
- BuildSystemPlugin.pluginRepositoreis.addValues(Repositories.JETBRAINS_COMPOSE_DEV, DefaultRepository.GOOGLE).ensure()
-
- //TODO hacky!
- TemplatesPlugin.fileTemplatesToRender.update { templates ->
- templates.mapNotNull { template ->
- val descriptor = template.descriptor as? FileTemplateDescriptor
- when {
- descriptor == AndroidModuleConfigurator.FileTemplateDescriptors.activityMainXml
- || descriptor == AndroidModuleConfigurator.FileTemplateDescriptors.colorsXml
- || descriptor == AndroidModuleConfigurator.FileTemplateDescriptors.stylesXml -> null
- descriptor?.templateId == "android/MainActivity.kt.vm" -> {
- template.copy(descriptor = mainActivityKt(module.originalModule.javaPackage(pomIR())))
- }
- descriptor?.templateId == "android/AndroidManifest.xml.vm" -> {
- template.copy(descriptor = Descriptors.manifestXml)
- }
- else -> template
- }
- }.asSuccess()
- }
- }
-
- private fun mainActivityKt(javaPackage: JavaPackage) = FileTemplateDescriptor(
- "composeAndroid/MainActivity.kt.vm",
- "src" / "main" / "java" / javaPackage.asPath() / "MainActivity.kt"
- )
-
- object Descriptors {
- val manifestXml = FileTemplateDescriptor(
- templateId = "composeAndroid/AndroidManifest.xml.vm",
- relativePath = "src" / "main" / "AndroidManifest.xml",
- )
- }
-
- object Dependencies {
- val ACTIVITY_COMPOSE = ArtifactBasedLibraryDependencyIR(
- MavenArtifact(Repositories.JETBRAINS_COMPOSE_DEV, "androidx.activity", "activity-compose"),
- version = Versions.COMPOSE.ANDROID_ACTIVITY_COMPOSE,
- dependencyType = DependencyType.MAIN,
- )
- }
-}
-
-class ComposeCommonAndroidTemplate : Template() {
- @NonNls
- override val id: String = "composeCommonAndroid"
-
- override val title: String = KotlinNewProjectWizardBundle.message("module.template.compose.desktop.title")
- override val description: String = KotlinNewProjectWizardBundle.message("module.template.compose.desktop.description")
-
-
- override fun isApplicableTo(module: Module, projectKind: ProjectKind, reader: Reader): Boolean =
- module.configurator.moduleType == ModuleType.common
- && projectKind == ProjectKind.COMPOSE
- && module.kind == ModuleKind.singlePlatformAndroid
-
- override fun Reader.updateBuildFileIRs(irs: List): List {
- val androidIR = irs.firstNotNullOfOrNull { it as? AndroidConfigIR }
- if (androidIR != null) {
- androidIR.androidSdkVersion = "31"
- }
- return irs
- }
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/compose/ComposeJvmDesktopTemplate.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/compose/ComposeJvmDesktopTemplate.kt
deleted file mode 100644
index 041697a25899..000000000000
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/compose/ComposeJvmDesktopTemplate.kt
+++ /dev/null
@@ -1,87 +0,0 @@
-// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
-
-package org.jetbrains.kotlin.tools.projectWizard.templates.compose
-
-import org.jetbrains.annotations.NonNls
-import org.jetbrains.kotlin.tools.projectWizard.KotlinNewProjectWizardBundle
-import org.jetbrains.kotlin.tools.projectWizard.Versions
-import org.jetbrains.kotlin.tools.projectWizard.core.*
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.*
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.GradleImportIR
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.irsList
-import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.moduleType
-import org.jetbrains.kotlin.tools.projectWizard.plugins.buildSystem.BuildSystemPlugin
-import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ModuleType
-import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ProjectKind
-import org.jetbrains.kotlin.tools.projectWizard.plugins.pomIR
-import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.*
-import org.jetbrains.kotlin.tools.projectWizard.settings.javaPackage
-import org.jetbrains.kotlin.tools.projectWizard.templates.*
-
-class ComposeJvmDesktopTemplate : Template() {
- @NonNls
- override val id: String = "composeDesktopTemplate"
-
- override val title: String = KotlinNewProjectWizardBundle.message("module.template.compose.desktop.title")
- override val description: String = KotlinNewProjectWizardBundle.message("module.template.compose.desktop.description")
-
- override fun isApplicableTo(module: Module, projectKind: ProjectKind, reader: Reader): Boolean =
- module.configurator.moduleType == ModuleType.jvm && projectKind == ProjectKind.COMPOSE
- && (module.kind == ModuleKind.singlePlatformJvm || module.kind == ModuleKind.target)
-
-
- override fun Writer.getIrsToAddToBuildFile(
- module: ModuleIR
- ) = irsList {
- +RepositoryIR(Repositories.JETBRAINS_COMPOSE_DEV)
- +RepositoryIR(DefaultRepository.GOOGLE)
- +GradleOnlyPluginByNameIR("org.jetbrains.compose", version = Versions.JETBRAINS_COMPOSE)
-
- +GradleImportIR("org.jetbrains.compose.desktop.application.dsl.TargetFormat")
- "compose.desktop" {
- "application" {
- "mainClass" assign const("MainKt")
-
- "nativeDistributions" {
- "targetFormats"(raw("TargetFormat.Dmg"), raw("TargetFormat.Msi"), raw("TargetFormat.Deb"))
- "packageName" assign const(module.name)
- "packageVersion" assign const("1.0.0")
- }
- }
- }
-
- +GradleImportIR("org.jetbrains.compose.compose")
- }
-
- override fun Writer.getRequiredLibraries(module: ModuleIR): List = listOf(
- CustomGradleDependencyDependencyIR("compose.desktop.currentOs", dependencyType = DependencyType.MAIN, DependencyKind.implementation)
- )
-
- override fun Writer.runArbitratyTask(module: ModuleIR): TaskResult =
- BuildSystemPlugin.pluginRepositoreis.addValues(Repositories.JETBRAINS_COMPOSE_DEV, DefaultRepository.GOOGLE)
-
- override fun Reader.getFileTemplates(module: ModuleIR) = buildList {
- val dependsOnMppModule: Module? =
- module.originalModule.dependencies.map { moduleByReference(it) }.firstOrNull { it.template is ComposeMppModuleTemplate }
- if (dependsOnMppModule == null) {
- +(FileTemplateDescriptor("$id/main.kt", "Main.kt".asPath()) asSrcOf SourcesetType.main)
- } else {
- val javaPackage = dependsOnMppModule.javaPackage(pomIR()).asCodePackage()
- +(FileTemplateDescriptor("composeMpp/main.kt.vm", "Main.kt".asPath())
- asSrcOf SourcesetType.main
- withSettings ("sharedPackage" to javaPackage)
- )
- }
- }
-}
-
-class ComposeCommonDesktopTemplate : Template() {
- @NonNls
- override val id: String = "composeCommonDesktopTemplate"
-
- override val title: String = KotlinNewProjectWizardBundle.message("module.template.compose.desktop.title")
- override val description: String = KotlinNewProjectWizardBundle.message("module.template.compose.desktop.description")
-
- override fun isApplicableTo(module: Module, projectKind: ProjectKind, reader: Reader): Boolean =
- module.configurator.moduleType == ModuleType.jvm && projectKind == ProjectKind.COMPOSE
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/compose/ComposeMppModuleTemplate.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/compose/ComposeMppModuleTemplate.kt
deleted file mode 100644
index 183d38ed4fac..000000000000
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/compose/ComposeMppModuleTemplate.kt
+++ /dev/null
@@ -1,93 +0,0 @@
-// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
-
-package org.jetbrains.kotlin.tools.projectWizard.templates.compose
-
-import org.jetbrains.annotations.NonNls
-import org.jetbrains.kotlin.tools.projectWizard.KotlinNewProjectWizardBundle
-import org.jetbrains.kotlin.tools.projectWizard.Versions
-import org.jetbrains.kotlin.tools.projectWizard.core.*
-import org.jetbrains.kotlin.tools.projectWizard.core.safeAs
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.*
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.GradleImportIR
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.irsList
-import org.jetbrains.kotlin.tools.projectWizard.library.MavenArtifact
-import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.*
-import org.jetbrains.kotlin.tools.projectWizard.mpp.applyMppStructure
-import org.jetbrains.kotlin.tools.projectWizard.mpp.mppSources
-import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ModuleSubType
-import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ProjectKind
-import org.jetbrains.kotlin.tools.projectWizard.plugins.pomIR
-import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.DefaultRepository
-import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.Module
-import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.Repositories
-import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.SourcesetType
-import org.jetbrains.kotlin.tools.projectWizard.settings.javaPackage
-import org.jetbrains.kotlin.tools.projectWizard.templates.FileTemplateDescriptor
-import org.jetbrains.kotlin.tools.projectWizard.templates.Template
-
-class ComposeMppModuleTemplate : Template() {
- @NonNls
- override val id: String = "composeMppModule"
-
- override val title: String = KotlinNewProjectWizardBundle.message("module.template.compose.mpp.title")
- override val description: String = KotlinNewProjectWizardBundle.message("module.template.compose.mpp.description")
-
- override fun isApplicableTo(module: Module, projectKind: ProjectKind, reader: Reader): Boolean =
- module.configurator == MppModuleConfigurator && projectKind == ProjectKind.COMPOSE
-
- override fun Writer.getIrsToAddToBuildFile(module: ModuleIR): List = irsList {
- +GradleImportIR("org.jetbrains.compose.compose")
- +GradleOnlyPluginByNameIR("org.jetbrains.compose", version = Versions.JETBRAINS_COMPOSE)
- +RepositoryIR(Repositories.JETBRAINS_COMPOSE_DEV)
- +RepositoryIR(DefaultRepository.GOOGLE)
- }
-
- override fun Reader.updateModuleIR(module: ModuleIR): ModuleIR = when (module.originalModule.configurator) {
- CommonTargetConfigurator -> module.withIrs(
- CustomGradleDependencyDependencyIR("compose.runtime", DependencyType.MAIN, DependencyKind.api),
- CustomGradleDependencyDependencyIR("compose.foundation", DependencyType.MAIN, DependencyKind.api),
- CustomGradleDependencyDependencyIR("compose.material", DependencyType.MAIN, DependencyKind.api),
- )
- AndroidTargetConfigurator -> module.withIrs(
- AndroidSinglePlatformModuleConfigurator.DEPENDENCIES.APP_COMPAT.withDependencyKind(DependencyKind.api),
- DEPENDENCIES.ANDROID_KTX.withDependencyKind(DependencyKind.api)
- ).withoutIrs { it == AndroidModuleConfigurator.DEPENDENCIES.MATERIAL }
- JvmTargetConfigurator -> module.withIrs(
- CustomGradleDependencyDependencyIR("compose.preview", DependencyType.MAIN, DependencyKind.api),
- )
- else -> module
- }
-
- override fun Writer.runArbitratyTask(module: ModuleIR): TaskResult {
- val webSubmodule = module.originalModule.subModules.filter({ it.template is ComposeWebModuleTemplate }).firstOrNull()
- if (webSubmodule != null) return UNIT_SUCCESS //disabling platform.kt creation for web module
-
- return inContextOfModuleConfigurator(module.originalModule) {
- val javaPackage = module.originalModule.javaPackage(pomIR())
- val mpp = mppSources(javaPackage) {
- mppFile("platform.kt") {
- function("getPlatformName(): String") {
- actualFor(ModuleSubType.jvm, actualBody = """return "Desktop" """)
- actualFor(ModuleSubType.android, actualBody = """return "Android" """)
- default("""return "Platform" """)
- }
- }
- filesFor(ModuleSubType.common) {
- file(FileTemplateDescriptor("composeMpp/App.kt.vm", relativePath = null), "App.kt", SourcesetType.main)
- }
- filesFor(ModuleSubType.jvm) {
- file(FileTemplateDescriptor("composeMpp/DesktopApp.kt.vm", relativePath = null), "DesktopApp.kt", SourcesetType.main)
- }
- }
- applyMppStructure(mpp, module.originalModule, module.path)
- }
- }
-
- object DEPENDENCIES {
- val ANDROID_KTX = ArtifactBasedLibraryDependencyIR(
- MavenArtifact(DefaultRepository.GOOGLE, "androidx.core", "core-ktx"),
- version = Versions.ANDROID.ANDROIDX_KTX,
- dependencyType = DependencyType.MAIN
- )
- }
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/compose/ComposeWebModuleTemplate.kt b/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/compose/ComposeWebModuleTemplate.kt
deleted file mode 100644
index 60b1250f2e49..000000000000
--- a/plugins/kotlin/project-wizard/core/src/org/jetbrains/kotlin/tools/projectWizard/templates/compose/ComposeWebModuleTemplate.kt
+++ /dev/null
@@ -1,56 +0,0 @@
-// Copyright 2000-2022 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
-
-package org.jetbrains.kotlin.tools.projectWizard.templates.compose
-
-import org.jetbrains.annotations.NonNls
-import org.jetbrains.kotlin.tools.projectWizard.KotlinNewProjectWizardBundle
-import org.jetbrains.kotlin.tools.projectWizard.Versions
-import org.jetbrains.kotlin.tools.projectWizard.core.*
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.*
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.GradleImportIR
-import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.gradle.irsList
-import org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators.*
-import org.jetbrains.kotlin.tools.projectWizard.plugins.buildSystem.BuildSystemPlugin
-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.buildsystem.*
-import org.jetbrains.kotlin.tools.projectWizard.templates.*
-
-object ComposeWebModuleTemplate : Template() {
- @NonNls
- override val id: String = "composeWebTemplate"
-
- override val title: String = KotlinNewProjectWizardBundle.message("module.template.compose.web.title")
- override val description: String = KotlinNewProjectWizardBundle.message("module.template.compose.web.description")
-
- override fun isApplicableTo(module: Module, projectKind: ProjectKind, reader: Reader): Boolean =
- module.configurator.moduleType == ModuleType.js
- && projectKind == ProjectKind.COMPOSE
- && when (module.configurator) {
- JsComposeMppConfigurator -> true
- else -> false
- }
-
- override fun Writer.getIrsToAddToBuildFile(
- module: ModuleIR
- ) = irsList {
- +RepositoryIR(Repositories.JETBRAINS_COMPOSE_DEV)
- +RepositoryIR(DefaultRepository.GOOGLE)
- //+GradleOnlyPluginByNameIR("org.jetbrains.compose", version = Versions.JETBRAINS_COMPOSE) //this module is intended to be used inside Compose MPP module!
- +GradleImportIR("org.jetbrains.compose.compose")
- }
-
- override fun Writer.getRequiredLibraries(module: ModuleIR): List = listOf(
- CustomGradleDependencyDependencyIR("compose.web.core", dependencyType = DependencyType.MAIN, DependencyKind.implementation),
- CustomGradleDependencyDependencyIR("compose.runtime", dependencyType = DependencyType.MAIN, DependencyKind.implementation),
- CustomGradleDependencyDependencyIR("kotlin(\"test-js\")", dependencyType = DependencyType.TEST, DependencyKind.implementation)
- )
-
- override fun Writer.runArbitratyTask(module: ModuleIR): TaskResult =
- BuildSystemPlugin.pluginRepositoreis.addValues(Repositories.JETBRAINS_COMPOSE_DEV)
-
- override fun Reader.getFileTemplates(module: ModuleIR) = buildList {
- +(FileTemplateDescriptor("$id/main.kt", "Main.kt".asPath()) asSrcOf SourcesetType.main)
- +(FileTemplateDescriptor("$id/index.html.vm") asResourceOf SourcesetType.main)
- }
-}
diff --git a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/service/IdeaKotlinVersionProviderService.kt b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/service/IdeaKotlinVersionProviderService.kt
index 699031d6adaf..b72783338ac4 100644
--- a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/service/IdeaKotlinVersionProviderService.kt
+++ b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/service/IdeaKotlinVersionProviderService.kt
@@ -23,10 +23,6 @@ private const val SNAPSHOT_TAG = "snapshot"
class IdeaKotlinVersionProviderService : KotlinVersionProviderService(), IdeaWizardService {
override fun getKotlinVersion(projectKind: ProjectKind): WizardKotlinVersion {
- if (projectKind == ProjectKind.COMPOSE) {
- val version = Versions.KOTLIN_VERSION_FOR_COMPOSE
- return kotlinVersionWithDefaultValues(version)
- }
val version = getPatchedKotlinVersion()
?: getKotlinVersionFromCompiler()
?: VersionsDownloader.downloadLatestEapOrStableKotlinVersion()
diff --git a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/ProjectTemplateSettingComponent.kt b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/ProjectTemplateSettingComponent.kt
index 0c805abee81a..25821a537ea8 100644
--- a/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/ProjectTemplateSettingComponent.kt
+++ b/plugins/kotlin/project-wizard/idea/src/org/jetbrains/kotlin/tools/projectWizard/wizard/ui/firstStep/ProjectTemplateSettingComponent.kt
@@ -106,9 +106,6 @@ private val ProjectTemplate.icon: Icon?
FrontendApplicationProjectTemplate -> KotlinIcons.Wizard.JS
ReactApplicationProjectTemplate -> KotlinIcons.Wizard.REACT_JS
NodeJsApplicationProjectTemplate -> KotlinIcons.Wizard.NODE_JS
- ComposeDesktopApplicationProjectTemplate -> KotlinIcons.Wizard.COMPOSE
- ComposeMultiplatformApplicationProjectTemplate -> KotlinIcons.Wizard.COMPOSE
- ComposeWebApplicationProjectTemplate -> KotlinIcons.Wizard.COMPOSE
else -> null
}
diff --git a/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/cli/AbstractBuildFileGenerationTest.kt b/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/cli/AbstractBuildFileGenerationTest.kt
index a196c332284e..1019dbf1724b 100644
--- a/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/cli/AbstractBuildFileGenerationTest.kt
+++ b/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/cli/AbstractBuildFileGenerationTest.kt
@@ -77,7 +77,6 @@ abstract class AbstractBuildFileGenerationTest : UsefulTestCase() {
KOTLIN_REPO_BOOTSTRAP_PLACEHOLDER
)
.replace("gradle-${Versions.GRADLE.text}-bin.zip", "gradle-GRADLE_VERSION-bin.zip")
- .replace("gradle-${Versions.GRADLE_VERSION_FOR_COMPOSE.text}-bin.zip", "gradle-GRADLE_VERSION_FOR_COMPOSE-bin.zip")
}
additionalChecks(expectedDirectory, tempDirectory)
}
diff --git a/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/cli/KotlinVersionProviderTestWizardService.kt b/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/cli/KotlinVersionProviderTestWizardService.kt
index 4ef1ead0134f..8a90ff17f0ba 100644
--- a/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/cli/KotlinVersionProviderTestWizardService.kt
+++ b/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/cli/KotlinVersionProviderTestWizardService.kt
@@ -3,8 +3,6 @@
package org.jetbrains.kotlin.tools.projectWizard.cli
import org.jetbrains.kotlin.idea.codeInsight.gradle.KotlinGradlePluginVersions
-import org.jetbrains.kotlin.tools.projectWizard.Versions
-import org.jetbrains.kotlin.tools.projectWizard.core.service.EapVersionDownloader
import org.jetbrains.kotlin.tools.projectWizard.core.service.WizardKotlinVersion
import org.jetbrains.kotlin.tools.projectWizard.core.service.KotlinVersionProviderService
import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ProjectKind
@@ -12,25 +10,22 @@ import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.*
import org.jetbrains.kotlin.tools.projectWizard.settings.version.Version
class KotlinVersionProviderTestWizardService : KotlinVersionProviderService(), TestWizardService {
- override fun getKotlinVersion(projectKind: ProjectKind): WizardKotlinVersion =
- if (projectKind == ProjectKind.COMPOSE) {
- kotlinVersionWithDefaultValues(Versions.KOTLIN_VERSION_FOR_COMPOSE)
- } else {
- val repositories = listOf(
- Repositories.JETBRAINS_KOTLIN_BOOTSTRAP,
- getKotlinVersionRepository(TEST_KOTLIN_VERSION),
- DefaultRepository.MAVEN_LOCAL
- )
- WizardKotlinVersion(
- TEST_KOTLIN_VERSION,
+ override fun getKotlinVersion(projectKind: ProjectKind): WizardKotlinVersion {
+ val repositories = listOf(
+ Repositories.JETBRAINS_KOTLIN_BOOTSTRAP,
+ getKotlinVersionRepository(TEST_KOTLIN_VERSION),
+ DefaultRepository.MAVEN_LOCAL
+ )
+ return WizardKotlinVersion(
+ TEST_KOTLIN_VERSION,
+ getKotlinVersionKind(TEST_KOTLIN_VERSION),
+ repositories,
+ getBuildSystemPluginRepository(
getKotlinVersionKind(TEST_KOTLIN_VERSION),
- repositories,
- getBuildSystemPluginRepository(
- getKotlinVersionKind(TEST_KOTLIN_VERSION),
- repositories
- ),
- )
- }
+ repositories
+ ),
+ )
+ }
companion object {
val TEST_KOTLIN_VERSION by lazy {
diff --git a/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/cli/ProjectTemplateBuildFileGenerationTestGenerated.java b/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/cli/ProjectTemplateBuildFileGenerationTestGenerated.java
index 89be3d73c492..3df2f4e3e08b 100644
--- a/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/cli/ProjectTemplateBuildFileGenerationTestGenerated.java
+++ b/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/cli/ProjectTemplateBuildFileGenerationTestGenerated.java
@@ -23,16 +23,6 @@ public class ProjectTemplateBuildFileGenerationTestGenerated extends AbstractPro
KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
}
- @TestMetadata("composeDesktopApplication")
- public void testComposeDesktopApplication() throws Exception {
- runTest("testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/");
- }
-
- @TestMetadata("composeMultiplatformApplication")
- public void testComposeMultiplatformApplication() throws Exception {
- runTest("testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/");
- }
-
@TestMetadata("consoleApplication")
public void testConsoleApplication() throws Exception {
runTest("testData/projectTemplatesBuildFileGeneration/consoleApplication/");
diff --git a/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/wizard/ProjectTemplateNewWizardProjectImportTestGenerated.java b/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/wizard/ProjectTemplateNewWizardProjectImportTestGenerated.java
index 1ac1ca44403f..3aca15941430 100644
--- a/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/wizard/ProjectTemplateNewWizardProjectImportTestGenerated.java
+++ b/plugins/kotlin/project-wizard/tests/test/org/jetbrains/kotlin/tools/projectWizard/wizard/ProjectTemplateNewWizardProjectImportTestGenerated.java
@@ -25,16 +25,6 @@ public abstract class ProjectTemplateNewWizardProjectImportTestGenerated extends
KotlinTestUtils.runTest(this::doTestGradleKts, this, testDataFilePath);
}
- @TestMetadata("composeDesktopApplication")
- public void testComposeDesktopApplication() throws Exception {
- runTest("testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/");
- }
-
- @TestMetadata("composeMultiplatformApplication")
- public void testComposeMultiplatformApplication() throws Exception {
- runTest("testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/");
- }
-
@TestMetadata("consoleApplication")
public void testConsoleApplication() throws Exception {
runTest("testData/projectTemplatesBuildFileGeneration/consoleApplication/");
@@ -68,16 +58,6 @@ public abstract class ProjectTemplateNewWizardProjectImportTestGenerated extends
KotlinTestUtils.runTest(this::doTestGradleGroovy, this, testDataFilePath);
}
- @TestMetadata("composeDesktopApplication")
- public void testComposeDesktopApplication() throws Exception {
- runTest("testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/");
- }
-
- @TestMetadata("composeMultiplatformApplication")
- public void testComposeMultiplatformApplication() throws Exception {
- runTest("testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/");
- }
-
@TestMetadata("consoleApplication")
public void testConsoleApplication() throws Exception {
runTest("testData/projectTemplatesBuildFileGeneration/consoleApplication/");
@@ -111,16 +91,6 @@ public abstract class ProjectTemplateNewWizardProjectImportTestGenerated extends
KotlinTestUtils.runTest(this::doTestMaven, this, testDataFilePath);
}
- @TestMetadata("composeDesktopApplication")
- public void testComposeDesktopApplication() throws Exception {
- runTest("testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/");
- }
-
- @TestMetadata("composeMultiplatformApplication")
- public void testComposeMultiplatformApplication() throws Exception {
- runTest("testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/");
- }
-
@TestMetadata("consoleApplication")
public void testConsoleApplication() throws Exception {
runTest("testData/projectTemplatesBuildFileGeneration/consoleApplication/");
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/build.gradle b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/build.gradle
deleted file mode 100644
index 1a6936ed9117..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/build.gradle
+++ /dev/null
@@ -1,32 +0,0 @@
-import org.jetbrains.compose.compose
-
-plugins {
- id 'org.jetbrains.kotlin.jvm' version '1.4.0'
- id 'org.jetbrains.compose' version '0.1.0-build63'
- id 'application'
-}
-
-group = 'me.user'
-version = '1.0-SNAPSHOT'
-
-repositories {
- jcenter()
- mavenCentral()
- maven { url 'https://maven.pkg.jetbrains.space/public/p/compose/dev' }
-}
-
-dependencies {
- implementation compose.desktop.all
-}
-
-compileKotlin {
- kotlinOptions.jvmTarget = '1.8'
-}
-
-compileTestKotlin {
- kotlinOptions.jvmTarget = '1.8'
-}
-
-application {
- mainClassName = 'MainKt'
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/build.gradle.kts b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/build.gradle.kts
deleted file mode 100644
index 4ab3810f9266..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/build.gradle.kts
+++ /dev/null
@@ -1,36 +0,0 @@
-import org.jetbrains.compose.compose
-import org.jetbrains.compose.desktop.application.dsl.TargetFormat
-import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
-
-plugins {
- kotlin("jvm") version "1.6.10"
- id("org.jetbrains.compose") version "1.1.1"
-}
-
-group = "me.user"
-version = "1.0"
-
-repositories {
- google()
- mavenCentral()
- maven("https://maven.pkg.jetbrains.space/public/p/compose/dev")
-}
-
-dependencies {
- implementation(compose.desktop.currentOs)
-}
-
-tasks.withType {
- kotlinOptions.jvmTarget = "11"
-}
-
-compose.desktop {
- application {
- mainClass = "MainKt"
- nativeDistributions {
- targetFormats(TargetFormat.Dmg, TargetFormat.Msi, TargetFormat.Deb)
- packageName = "composeDesktopApplication"
- packageVersion = "1.0.0"
- }
- }
-}
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/gradle.properties b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/gradle.properties
deleted file mode 100644
index 7fc6f1ff272e..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/gradle.properties
+++ /dev/null
@@ -1 +0,0 @@
-kotlin.code.style=official
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/gradle/wrapper/gradle-wrapper.properties b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/gradle/wrapper/gradle-wrapper.properties
deleted file mode 100644
index 4de1375a6107..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/gradle/wrapper/gradle-wrapper.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-distributionBase=GRADLE_USER_HOME
-distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-GRADLE_VERSION-bin.zip
-zipStoreBase=GRADLE_USER_HOME
-zipStorePath=wrapper/dists
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/importParameters.txt b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/importParameters.txt
deleted file mode 100644
index 29c7591c308f..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/importParameters.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-// runForGradleGroovy false
-// keepKotlinVersion true
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/settings.gradle b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/settings.gradle
deleted file mode 100644
index 36552a57a9c9..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/settings.gradle
+++ /dev/null
@@ -1,9 +0,0 @@
-pluginManagement {
- repositories {
- gradlePluginPortal()
- mavenCentral()
- maven { url 'https://maven.pkg.jetbrains.space/public/p/compose/dev' }
- }
-
-}
-rootProject.name = 'composeDesktopApplication'
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/settings.gradle.kts b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/settings.gradle.kts
deleted file mode 100644
index abab4ba5d513..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeDesktopApplication/settings.gradle.kts
+++ /dev/null
@@ -1,9 +0,0 @@
-pluginManagement {
- repositories {
- google()
- gradlePluginPortal()
- maven("https://maven.pkg.jetbrains.space/public/p/compose/dev")
- }
-
-}
-rootProject.name = "composeDesktopApplication"
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/android/build.gradle b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/android/build.gradle
deleted file mode 100644
index 025cb39f952c..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/android/build.gradle
+++ /dev/null
@@ -1,32 +0,0 @@
-plugins {
- id 'org.jetbrains.compose' version '0.1.0-build63'
- id 'com.android.application'
- id 'org.jetbrains.kotlin.android'
-}
-
-group = 'me.user'
-version = '1.0-SNAPSHOT'
-
-repositories {
- google()
-}
-
-dependencies {
- implementation project(':common')
-}
-
-android {
- compileSdkVersion 30
- defaultConfig {
- applicationId 'me.user.android'
- minSdkVersion 24
- targetSdkVersion 30
- versionCode 1
- versionName '1.0'
- }
- buildTypes {
- 'release' {
- minifyEnabled false
- }
- }
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/android/build.gradle.kts b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/android/build.gradle.kts
deleted file mode 100644
index 1765adc890ce..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/android/build.gradle.kts
+++ /dev/null
@@ -1,37 +0,0 @@
-plugins {
- id("org.jetbrains.compose") version "1.1.1"
- id("com.android.application")
- kotlin("android")
-}
-
-group = "me.user"
-version = "1.0"
-
-repositories {
- jcenter()
-}
-
-dependencies {
- implementation(project(":common"))
- implementation("androidx.activity:activity-compose:1.4.0")
-}
-
-android {
- compileSdkVersion(31)
- defaultConfig {
- applicationId = "me.user.android"
- minSdkVersion(24)
- targetSdkVersion(31)
- versionCode = 1
- versionName = "1.0"
- }
- compileOptions {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
- }
- buildTypes {
- getByName("release") {
- isMinifyEnabled = false
- }
- }
-}
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/build.gradle b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/build.gradle
deleted file mode 100644
index c048691ccd4f..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/build.gradle
+++ /dev/null
@@ -1,23 +0,0 @@
-buildscript {
- repositories {
- gradlePluginPortal()
- jcenter()
- google()
- mavenCentral()
- }
- dependencies {
- classpath('org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.0')
- classpath('com.android.tools.build:gradle:4.0.1')
- }
-}
-
-group = 'me.user'
-version = '1.0-SNAPSHOT'
-
-allprojects {
- repositories {
- jcenter()
- mavenCentral()
- maven { url 'https://maven.pkg.jetbrains.space/public/p/compose/dev' }
- }
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/build.gradle.kts b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/build.gradle.kts
deleted file mode 100644
index 024c3c652e25..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/build.gradle.kts
+++ /dev/null
@@ -1,23 +0,0 @@
-buildscript {
- repositories {
- gradlePluginPortal()
- jcenter()
- google()
- mavenCentral()
- }
- dependencies {
- classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.10")
- classpath("com.android.tools.build:gradle:7.0.4")
- }
-}
-
-group = "me.user"
-version = "1.0"
-
-allprojects {
- repositories {
- google()
- mavenCentral()
- maven("https://maven.pkg.jetbrains.space/public/p/compose/dev")
- }
-}
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/common/build.gradle b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/common/build.gradle
deleted file mode 100644
index a4a6edd5da8e..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/common/build.gradle
+++ /dev/null
@@ -1,61 +0,0 @@
-import org.jetbrains.compose.compose
-
-plugins {
- id 'org.jetbrains.kotlin.multiplatform'
- id 'org.jetbrains.compose' version '0.1.0-build63'
- id 'com.android.library'
-}
-
-group = 'me.user'
-version = '1.0-SNAPSHOT'
-
-repositories {
- google()
-}
-
-kotlin {
- android()
- jvm('desktop') {
- compilations.all {
- kotlinOptions.jvmTarget = '1.8'
- }
- }
- sourceSets {
- commonMain {
- dependencies {
- api compose.runtime
- api compose.foundation
- api compose.material
- }
- }
- commonTest {
-
- }
- androidMain {
- dependencies {
- api 'androidx.appcompat:appcompat:1.2.0'
- api 'androidx.core:core-ktx:1.3.1'
- }
- }
- androidTest {
- dependencies {
- implementation 'junit:junit:4.13'
- }
- }
- desktopMain {
-
- }
- desktopTest {
-
- }
- }
-}
-
-android {
- compileSdkVersion 30
- sourceSets.main.manifest.srcFile('src/androidMain/AndroidManifest.xml')
- defaultConfig {
- minSdkVersion 24
- targetSdkVersion 30
- }
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/common/build.gradle.kts b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/common/build.gradle.kts
deleted file mode 100644
index 15a08fbd52c0..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/common/build.gradle.kts
+++ /dev/null
@@ -1,63 +0,0 @@
-import org.jetbrains.compose.compose
-
-plugins {
- kotlin("multiplatform")
- id("org.jetbrains.compose") version "1.1.1"
- id("com.android.library")
-}
-
-group = "me.user"
-version = "1.0"
-
-kotlin {
- android()
- jvm("desktop") {
- compilations.all {
- kotlinOptions.jvmTarget = "11"
- }
- }
- sourceSets {
- val commonMain by getting {
- dependencies {
- api(compose.runtime)
- api(compose.foundation)
- api(compose.material)
- }
- }
- val commonTest by getting {
- dependencies {
- implementation(kotlin("test"))
- }
- }
- val androidMain by getting {
- dependencies {
- api("androidx.appcompat:appcompat:1.4.1")
- api("androidx.core:core-ktx:1.7.0")
- }
- }
- val androidTest by getting {
- dependencies {
- implementation("junit:junit:4.13.2")
- }
- }
- val desktopMain by getting {
- dependencies {
- api(compose.preview)
- }
- }
- val desktopTest by getting
- }
-}
-
-android {
- compileSdkVersion(31)
- sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml")
- defaultConfig {
- minSdkVersion(24)
- targetSdkVersion(31)
- }
- compileOptions {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
- }
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/desktop/build.gradle b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/desktop/build.gradle
deleted file mode 100644
index 1e8b9ba295f7..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/desktop/build.gradle
+++ /dev/null
@@ -1,27 +0,0 @@
-import org.jetbrains.compose.compose
-
-plugins {
- id 'org.jetbrains.kotlin.jvm'
- id 'org.jetbrains.compose' version '0.1.0-build63'
- id 'application'
-}
-
-group = 'me.user'
-version = '1.0-SNAPSHOT'
-
-dependencies {
- implementation project(':common')
- implementation compose.desktop.all
-}
-
-compileKotlin {
- kotlinOptions.jvmTarget = '1.8'
-}
-
-compileTestKotlin {
- kotlinOptions.jvmTarget = '1.8'
-}
-
-application {
- mainClassName = 'MainKt'
-}
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/desktop/build.gradle.kts b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/desktop/build.gradle.kts
deleted file mode 100644
index 13c2eb6c0b36..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/desktop/build.gradle.kts
+++ /dev/null
@@ -1,39 +0,0 @@
-import org.jetbrains.compose.compose
-import org.jetbrains.compose.desktop.application.dsl.TargetFormat
-
-plugins {
- kotlin("multiplatform")
- id("org.jetbrains.compose") version "1.1.1"
-}
-
-group = "me.user"
-version = "1.0"
-
-kotlin {
- jvm {
- compilations.all {
- kotlinOptions.jvmTarget = "11"
- }
- withJava()
- }
- sourceSets {
- val jvmMain by getting {
- dependencies {
- implementation(project(":common"))
- implementation(compose.desktop.currentOs)
- }
- }
- val jvmTest by getting
- }
-}
-
-compose.desktop {
- application {
- mainClass = "MainKt"
- nativeDistributions {
- targetFormats(TargetFormat.Dmg, TargetFormat.Msi, TargetFormat.Deb)
- packageName = "jvm"
- packageVersion = "1.0.0"
- }
- }
-}
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/gradle.properties b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/gradle.properties
deleted file mode 100644
index 984d7ab2277d..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/gradle.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-kotlin.code.style=official
-android.useAndroidX=true
-kotlin.mpp.enableGranularSourceSetsMetadata=true
-kotlin.native.enableDependencyPropagation=false
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/gradle/wrapper/gradle-wrapper.properties b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/gradle/wrapper/gradle-wrapper.properties
deleted file mode 100644
index 4de1375a6107..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/gradle/wrapper/gradle-wrapper.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-distributionBase=GRADLE_USER_HOME
-distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-GRADLE_VERSION-bin.zip
-zipStoreBase=GRADLE_USER_HOME
-zipStorePath=wrapper/dists
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/settings.gradle b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/settings.gradle
deleted file mode 100644
index 300d572445d1..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/settings.gradle
+++ /dev/null
@@ -1,16 +0,0 @@
-pluginManagement {
- repositories {
- google()
- jcenter()
- gradlePluginPortal()
- mavenCentral()
- maven { url 'https://maven.pkg.jetbrains.space/public/p/compose/dev' }
- }
-
-}
-rootProject.name = 'composeMultiplatformApplication'
-
-
-include(':android')
-include(':desktop')
-include(':common')
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/settings.gradle.kts b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/settings.gradle.kts
deleted file mode 100644
index 3910d6df3377..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/expected/settings.gradle.kts
+++ /dev/null
@@ -1,16 +0,0 @@
-pluginManagement {
- repositories {
- google()
- jcenter()
- gradlePluginPortal()
- mavenCentral()
- maven("https://maven.pkg.jetbrains.space/public/p/compose/dev")
- }
-
-}
-rootProject.name = "composeMultiplatformApplication"
-
-
-include(":android")
-include(":desktop")
-include(":common")
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/importParameters.txt b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/importParameters.txt
deleted file mode 100644
index 29c7591c308f..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/importParameters.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-// runForGradleGroovy false
-// keepKotlinVersion true
\ No newline at end of file
diff --git a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/settings.yaml b/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/settings.yaml
deleted file mode 100644
index e21db7a9cb71..000000000000
--- a/plugins/kotlin/project-wizard/tests/testData/projectTemplatesBuildFileGeneration/composeMultiplatformApplication/settings.yaml
+++ /dev/null
@@ -1,2 +0,0 @@
-android:
- androidSdkPath: android.sdk
\ No newline at end of file