mirror of
				https://github.com/InsanusMokrassar/KotlinMultiplatformProjectTemplate.git
				synced 2025-10-31 04:03:14 +00:00 
			
		
		
		
	Compare commits
	
		
			95 Commits
		
	
	
		
			kotlin/1.5
			...
			ffb54f3397
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | ffb54f3397 | ||
|  | b706e53bb1 | ||
| 375e3c1d6e | |||
|  | d7b5ea6d83 | ||
| 4d8992e86f | |||
|  | 1b113fe006 | ||
| 3c8822e3e7 | |||
|  | f7d115c624 | ||
| bb798ccc67 | |||
|  | c4f147df83 | ||
| c2fed22e80 | |||
|  | ec8915aed1 | ||
| 1d602c5d26 | |||
| 2d36722c37 | |||
| 37763d2221 | |||
| 3ae29248af | |||
| 8f81904cdb | |||
| 33782f0cdb | |||
| 3bab6a95b2 | |||
| a757c4cf06 | |||
| 453ae19a49 | |||
| 631d74dc6b | |||
| bd455bebba | |||
| bd07fb382e | |||
| 297114273f | |||
| 05f029c257 | |||
| 11ac3aebda | |||
| c5c7fd26e4 | |||
| ce0aea6b77 | |||
| 9d7955b9b0 | |||
| 18b84216a5 | |||
| 1366dd55c2 | |||
| 049dc8f5d7 | |||
| dac20a8a02 | |||
| c1d6dae359 | |||
| 4ed6f8e104 | |||
| dc07633928 | |||
| be7fa9241f | |||
| df6c8b8358 | |||
| ca1ec3f208 | |||
| deba42332a | |||
| e0bce311d5 | |||
| ebc07f5c3d | |||
| 488e4b283d | |||
| c55087ce1b | |||
| 80eb5bb6ba | |||
| 8f1bd13ac5 | |||
| 12220fab46 | |||
| 263ee6475c | |||
| 33b25af9a4 | |||
| 8f716be674 | |||
| 3de2e1ceb5 | |||
| 836e768705 | |||
| c4ab6cbf74 | |||
| c881165417 | |||
| 0ba983cf94 | |||
| 04be74561d | |||
| 37fe3701fb | |||
| 9022faa898 | |||
| e053157dd4 | |||
| 7f6e9ae5e4 | |||
| 8339c290b9 | |||
| b575a2ca2f | |||
| 71effb81c2 | |||
| c2dce5f0b5 | |||
| 3974a48d93 | |||
| a964864c58 | |||
| bbfd5886d3 | |||
| 323d7c9ee3 | |||
| b7b6f4f7e2 | |||
| 5494671ee1 | |||
| 052072dd5a | |||
| ffdfd4b4c5 | |||
| a3cb678f76 | |||
| 36de2d7082 | |||
| bda4913bf2 | |||
| acdb9d573e | |||
| 3a2fda60ed | |||
| da7aefa8ce | |||
| 4ac954d05f | |||
| c0bbaf0578 | |||
| d1c63deaec | |||
| e96207516f | |||
| adae653e33 | |||
| 9d220c91e3 | |||
| 9bc410ccf8 | |||
| 018df3cd55 | |||
| 20b356a22c | |||
| 4816349d2d | |||
| 6e7ea5688f | |||
| 9aebefa6cd | |||
| 5aa6388883 | |||
| 7e059271c2 | |||
| 4decf1ff0a | |||
| 3eaeaf284e | 
							
								
								
									
										5
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
								
							| @@ -5,12 +5,11 @@ on: [push] | ||||
| jobs: | ||||
|   build: | ||||
|     runs-on: ubuntu-latest | ||||
|  | ||||
|     steps: | ||||
|       - uses: actions/checkout@v2 | ||||
|       - name: Set up JDK 1.8 | ||||
|       - name: Set up JDK 17 | ||||
|         uses: actions/setup-java@v1 | ||||
|         with: | ||||
|           java-version: 1.8 | ||||
|           java-version: 17 | ||||
|       - name: Build with Gradle | ||||
|         run: ./gradlew build | ||||
|   | ||||
							
								
								
									
										5
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -1,4 +1,5 @@ | ||||
| .idea | ||||
| .kotlin | ||||
| out/* | ||||
| *.iml | ||||
| target | ||||
| @@ -10,6 +11,8 @@ build/ | ||||
| out/ | ||||
|  | ||||
| secret.gradle | ||||
| local.properties | ||||
| local.* | ||||
| local/ | ||||
| kotlin-js-store/ | ||||
|  | ||||
| publishing.sh | ||||
|   | ||||
							
								
								
									
										4
									
								
								.templates/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								.templates/README.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| # Templates | ||||
|  | ||||
| This folder contains templates to generate your modules in Intellij Idea with plugin | ||||
| [ModuleGenerator](https://plugins.jetbrains.com/plugin/21100-segment-generator) | ||||
							
								
								
									
										5
									
								
								.templates/mpp_android_module/ModuleGenerator.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								.templates/mpp_android_module/ModuleGenerator.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | ||||
| { | ||||
|    "module_name": "sample", | ||||
|    "module_package": "feature.{{.module_name}}", | ||||
|    "full_module_package": "project_group.project_name.{{.module_package}}" | ||||
| } | ||||
| @@ -0,0 +1,8 @@ | ||||
| plugins { | ||||
|     id "org.jetbrains.kotlin.multiplatform" | ||||
|     id "org.jetbrains.kotlin.plugin.serialization" | ||||
|     id "com.android.library" | ||||
| } | ||||
|  | ||||
| apply from: "$mppAndroidProjectPresetPath" | ||||
|  | ||||
| @@ -0,0 +1 @@ | ||||
| package {{.full_module_package}} | ||||
| @@ -0,0 +1 @@ | ||||
| package {{.full_module_package}} | ||||
							
								
								
									
										5
									
								
								.templates/mpp_java_module/ModuleGenerator.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								.templates/mpp_java_module/ModuleGenerator.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | ||||
| { | ||||
|    "module_name": "sample", | ||||
|    "module_package": "feature.{{.module_name}}", | ||||
|    "full_module_package": "project_group.project_name.{{.module_package}}" | ||||
| } | ||||
| @@ -0,0 +1,7 @@ | ||||
| plugins { | ||||
|     id "org.jetbrains.kotlin.multiplatform" | ||||
|     id "org.jetbrains.kotlin.plugin.serialization" | ||||
| } | ||||
|  | ||||
| apply from: "$mppJavaProjectPresetPath" | ||||
|  | ||||
| @@ -0,0 +1 @@ | ||||
| package {{.full_module_package}} | ||||
| @@ -0,0 +1 @@ | ||||
| package {{.full_module_package}} | ||||
							
								
								
									
										5
									
								
								.templates/mpp_js_module/ModuleGenerator.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								.templates/mpp_js_module/ModuleGenerator.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | ||||
| { | ||||
|    "module_name": "sample", | ||||
|    "module_package": "feature.{{.module_name}}", | ||||
|    "full_module_package": "project_group.project_name.{{.module_package}}" | ||||
| } | ||||
| @@ -0,0 +1,7 @@ | ||||
| plugins { | ||||
|     id "org.jetbrains.kotlin.multiplatform" | ||||
|     id "org.jetbrains.kotlin.plugin.serialization" | ||||
| } | ||||
|  | ||||
| apply from: "$mppJsProjectPresetPath" | ||||
|  | ||||
| @@ -0,0 +1 @@ | ||||
| package {{.full_module_package}} | ||||
| @@ -0,0 +1 @@ | ||||
| package {{.full_module_package}} | ||||
							
								
								
									
										5
									
								
								.templates/mpp_module/ModuleGenerator.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								.templates/mpp_module/ModuleGenerator.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | ||||
| { | ||||
|    "module_name": "sample", | ||||
|    "module_package": "feature.{{.module_name}}", | ||||
|    "full_module_package": "project_group.project_name.{{.module_package}}" | ||||
| } | ||||
| @@ -0,0 +1,8 @@ | ||||
| plugins { | ||||
|     id "org.jetbrains.kotlin.multiplatform" | ||||
|     id "org.jetbrains.kotlin.plugin.serialization" | ||||
|     id "com.android.library" | ||||
| } | ||||
|  | ||||
| apply from: "$mppProjectWithSerializationPresetPath" | ||||
|  | ||||
| @@ -0,0 +1 @@ | ||||
| package {{.full_module_package}} | ||||
| @@ -0,0 +1 @@ | ||||
| package {{.full_module_package}} | ||||
							
								
								
									
										18
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										18
									
								
								README.md
									
									
									
									
									
								
							| @@ -26,17 +26,21 @@ this case you must rename it in `settings.gradle` file. | ||||
| ## JVM sources in Android target | ||||
|  | ||||
| By default JVM code is not included in Android target. In case you wish to include JVM sources in Android build, use | ||||
| next method in the end of your `build.gradle`: | ||||
| next method in the `sourceSets` section of your `build.gradle`: | ||||
|  | ||||
| ```groovy | ||||
| enableIncludingJvmCodeInAndroidPart() | ||||
| kotlin { | ||||
|     sourceSets { | ||||
|         // Some other code | ||||
|         androidMain { | ||||
|             // Some other code (like dependencies) | ||||
|             dependsOn jvmMain | ||||
|         } | ||||
|     } | ||||
| } | ||||
| ``` | ||||
|  | ||||
| In case when you need to be sure that JVM sources are not included in Android part, use this snippet: | ||||
|  | ||||
| ```groovy | ||||
| disableIncludingJvmCodeInAndroidPart() | ||||
| ``` | ||||
| In case when you need to be sure that JVM sources are not included in Android part, just remove line with `dependsOn jvmMain` | ||||
|  | ||||
| ## Types of projects | ||||
|  | ||||
|   | ||||
							
								
								
									
										13
									
								
								build.gradle
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								build.gradle
									
									
									
									
									
								
							| @@ -1,6 +1,5 @@ | ||||
| buildscript { | ||||
|     repositories { | ||||
|         jcenter() | ||||
|         google() | ||||
|         mavenCentral() | ||||
|         mavenLocal() | ||||
| @@ -8,21 +7,19 @@ buildscript { | ||||
|     } | ||||
|  | ||||
|     dependencies { | ||||
|         classpath 'com.android.tools.build:gradle:4.0.2' | ||||
|         classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" | ||||
|         classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version" | ||||
|         classpath "com.getkeepsafe.dexcount:dexcount-gradle-plugin:$dexcount_version" | ||||
|         classpath "org.jetbrains.dokka:dokka-gradle-plugin:$dokka_version" | ||||
|         classpath libs.android.tools.build | ||||
|         classpath libs.android.dexcount | ||||
|         classpath libs.kotlin.gradle.plugin | ||||
|         classpath libs.kotlin.serialization.plugin | ||||
|         classpath libs.kotlin.dokka.plugin | ||||
|     } | ||||
| } | ||||
|  | ||||
| allprojects { | ||||
|     repositories { | ||||
|         mavenLocal() | ||||
|         jcenter() | ||||
|         mavenCentral() | ||||
|         google() | ||||
|         maven { url "https://kotlin.bintray.com/kotlinx" } | ||||
|     } | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -1,37 +1,15 @@ | ||||
| apply plugin: 'com.getkeepsafe.dexcount' | ||||
|  | ||||
| android { | ||||
|     ext { | ||||
|         jvmKotlinFolderFile = { | ||||
|             String sep = File.separator | ||||
|             return new File("${project.projectDir}${sep}src${sep}jvmMain${sep}kotlin") | ||||
|         } | ||||
|     compileSdkVersion libs.versions.android.compileSdk.get().toInteger() | ||||
|     buildToolsVersion libs.versions.android.buildTools.get() | ||||
|  | ||||
|         enableIncludingJvmCodeInAndroidPart = { | ||||
|             File jvmKotlinFolder = jvmKotlinFolderFile() | ||||
|             if (jvmKotlinFolder.exists()) { | ||||
|                 android.sourceSets.main.java.srcDirs += jvmKotlinFolder.path | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         disableIncludingJvmCodeInAndroidPart = { | ||||
|             File jvmKotlinFolder = jvmKotlinFolderFile() | ||||
|             String[] oldDirs = android.sourceSets.main.java.srcDirs | ||||
|             android.sourceSets.main.java.srcDirs = [] | ||||
|             for (oldDir in oldDirs) { | ||||
|                 if (oldDir != jvmKotlinFolder.path) { | ||||
|                     android.sourceSets.main.java.srcDirs += oldDir | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     compileSdkVersion "$android_compileSdkVersion".toInteger() | ||||
|     buildToolsVersion "$android_buildToolsVersion" | ||||
|     namespace "${group}.${project.name}" | ||||
|  | ||||
|     defaultConfig { | ||||
|         minSdkVersion "$android_minSdkVersion".toInteger() | ||||
|         targetSdkVersion "$android_compileSdkVersion".toInteger() | ||||
|         minSdkVersion libs.versions.android.minSdk.get().toInteger() | ||||
|         compileSdkVersion libs.versions.android.compileSdk.get().toInteger() | ||||
|         targetSdkVersion libs.versions.android.compileSdk.get().toInteger() | ||||
|         versionCode "${android_code_version}".toInteger() | ||||
|         versionName "$version" | ||||
|     } | ||||
| @@ -51,12 +29,8 @@ android { | ||||
|     } | ||||
|  | ||||
|     compileOptions { | ||||
|         sourceCompatibility JavaVersion.VERSION_1_8 | ||||
|         targetCompatibility JavaVersion.VERSION_1_8 | ||||
|     } | ||||
|  | ||||
|     kotlinOptions { | ||||
|         jvmTarget = JavaVersion.VERSION_1_8.toString() | ||||
|         sourceCompatibility JavaVersion.VERSION_17 | ||||
|         targetCompatibility JavaVersion.VERSION_17 | ||||
|     } | ||||
|  | ||||
|     sourceSets { | ||||
|   | ||||
| @@ -6,25 +6,6 @@ kotlin.incremental.js=true | ||||
| android.useAndroidX=true | ||||
| android.enableJetifier=true | ||||
|  | ||||
| kotlin_version=1.5.0 | ||||
| kotlin_serialisation_core_version=1.2.0 | ||||
|  | ||||
| # github_release_plugin_version=2.2.12 | ||||
|  | ||||
| # ANDROID | ||||
|  | ||||
| android_minSdkVersion=21 | ||||
| android_compileSdkVersion=30 | ||||
| android_buildToolsVersion=30.0.2 | ||||
| dexcount_version=2.0.0 | ||||
| junit_version=4.12 | ||||
| test_ext_junit_version=1.1.2 | ||||
| espresso_core=3.3.0 | ||||
|  | ||||
| # Dokka | ||||
|  | ||||
| dokka_version=1.4.30 | ||||
|  | ||||
| # Project data | ||||
|  | ||||
| group=project_group | ||||
|   | ||||
							
								
								
									
										40
									
								
								gradle/libs.versions.toml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								gradle/libs.versions.toml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,40 @@ | ||||
| [versions] | ||||
|  | ||||
| kotlin = "2.0.20" | ||||
| kotlin-serialization = "1.7.2" | ||||
|  | ||||
| dokka = "1.9.20" | ||||
|  | ||||
| dexcount = "4.0.0" | ||||
| junit_version = "4.12" | ||||
| test_ext_junit_version = "1.2.1" | ||||
| espresso_core = "3.6.1" | ||||
|  | ||||
| android-gradle-plugin = "8.6.0" | ||||
| android-minSdk = "21" | ||||
| android-compileSdk = "35" | ||||
| android-buildTools = "35.0.0" | ||||
|  | ||||
| [libraries] | ||||
|  | ||||
| kotlin = { module = "org.jetbrains.kotlin:kotlin-stdlib", version.ref = "kotlin" } | ||||
| kotlin-serialization = { module = "org.jetbrains.kotlinx:kotlinx-serialization-json", version.ref = "kotlin-serialization" } | ||||
| kotlin-test-common = { module = "org.jetbrains.kotlin:kotlin-test-common", version.ref = "kotlin" } | ||||
| kotlin-test-annotations-common = { module = "org.jetbrains.kotlin:kotlin-test-annotations-common", version.ref = "kotlin" } | ||||
| kotlin-test-junit = { module = "org.jetbrains.kotlin:kotlin-test-junit", version.ref = "kotlin" } | ||||
| kotlin-test-js = { module = "org.jetbrains.kotlin:kotlin-test-js", version.ref = "kotlin" } | ||||
| android-test-junit = { module = "androidx.test.ext:junit", version.ref = "test_ext_junit_version" } | ||||
| android-test-espresso-core = { module = "androidx.test.espresso:espresso-core", version.ref = "espresso_core" } | ||||
|  | ||||
| # buildscript classpaths | ||||
|  | ||||
| android-tools-build = { module = "com.android.tools.build:gradle", version.ref = "android-gradle-plugin" } | ||||
| android-dexcount = { module = "com.getkeepsafe.dexcount:dexcount-gradle-plugin", version.ref = "dexcount" } | ||||
| kotlin-gradle-plugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" } | ||||
| kotlin-serialization-plugin = { module = "org.jetbrains.kotlin:kotlin-serialization", version.ref = "kotlin" } | ||||
| kotlin-dokka-plugin = { module = "org.jetbrains.dokka:dokka-gradle-plugin", version.ref = "dokka" } | ||||
|  | ||||
| [plugins] | ||||
|  | ||||
| kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" } | ||||
| kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } | ||||
							
								
								
									
										2
									
								
								gradle/wrapper/gradle-wrapper.properties
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								gradle/wrapper/gradle-wrapper.properties
									
									
									
									
										vendored
									
									
								
							| @@ -1,5 +1,5 @@ | ||||
| distributionBase=GRADLE_USER_HOME | ||||
| distributionPath=wrapper/dists | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.3-bin.zip | ||||
| distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip | ||||
| zipStoreBase=GRADLE_USER_HOME | ||||
| zipStorePath=wrapper/dists | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| package project_group | ||||
| package project_group.project_name.lib | ||||
| 
 | ||||
| class Library { | ||||
|     fun someLibraryMethod(): Boolean { | ||||
| @@ -1,7 +1,7 @@ | ||||
| /* | ||||
|  * This Kotlin source file was generated by the Gradle 'init' task. | ||||
|  */ | ||||
| package project_group | ||||
| package project_group.project_name.lib | ||||
| 
 | ||||
| import kotlin.test.Test | ||||
| import kotlin.test.assertTrue | ||||
| @@ -1 +0,0 @@ | ||||
| <manifest package="project_group.lib"/> | ||||
| @@ -4,20 +4,33 @@ project.group = "$group" | ||||
| // apply from: "$publishGradlePath" | ||||
|  | ||||
| kotlin { | ||||
|     android { | ||||
|     androidTarget { | ||||
|         publishAllLibraryVariants() | ||||
|         compilations.all { | ||||
|             kotlinOptions { | ||||
|                 jvmTarget = "17" | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     sourceSets { | ||||
|         commonMain { | ||||
|             dependencies { | ||||
|                 implementation kotlin('stdlib') | ||||
|                 implementation libs.kotlin | ||||
|                 api libs.kotlin.serialization | ||||
|             } | ||||
|         } | ||||
|         commonTest { | ||||
|             dependencies { | ||||
|                 implementation kotlin('test-common') | ||||
|                 implementation kotlin('test-annotations-common') | ||||
|                 implementation libs.kotlin.test.common | ||||
|                 implementation libs.kotlin.test.annotations.common | ||||
|             } | ||||
|         } | ||||
|         androidUnitTest { | ||||
|             dependencies { | ||||
|                 implementation libs.kotlin.test.junit | ||||
|                 implementation libs.android.test.junit | ||||
|                 implementation libs.android.test.espresso.core | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|   | ||||
| @@ -5,26 +5,35 @@ project.group = "$group" | ||||
|  | ||||
| kotlin { | ||||
|     jvm { | ||||
|         compilations.main.kotlinOptions.useIR = true | ||||
|         compilations.main { | ||||
|             kotlinOptions { | ||||
|                 jvmTarget = "17" | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     sourceSets { | ||||
|         commonMain { | ||||
|             dependencies { | ||||
|                 implementation kotlin('stdlib') | ||||
|                 implementation libs.kotlin | ||||
|                 api libs.kotlin.serialization | ||||
|             } | ||||
|         } | ||||
|         commonTest { | ||||
|             dependencies { | ||||
|                 implementation kotlin('test-common') | ||||
|                 implementation kotlin('test-annotations-common') | ||||
|                 implementation libs.kotlin.test.common | ||||
|                 implementation libs.kotlin.test.annotations.common | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         jvmTest { | ||||
|             dependencies { | ||||
|                 implementation kotlin('test-junit') | ||||
|                 implementation libs.kotlin.test.junit | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  | ||||
| java { | ||||
|     sourceCompatibility = JavaVersion.VERSION_17 | ||||
|     targetCompatibility = JavaVersion.VERSION_17 | ||||
| } | ||||
|   | ||||
| @@ -4,7 +4,7 @@ project.group = "$group" | ||||
| // apply from: "$publishGradlePath" | ||||
|  | ||||
| kotlin { | ||||
|     js (BOTH) { | ||||
|     js (IR) { | ||||
|         browser() | ||||
|         nodejs() | ||||
|     } | ||||
| @@ -12,19 +12,19 @@ kotlin { | ||||
|     sourceSets { | ||||
|         commonMain { | ||||
|             dependencies { | ||||
|                 implementation kotlin('stdlib') | ||||
|                 implementation libs.kotlin | ||||
|                 api libs.kotlin.serialization | ||||
|             } | ||||
|         } | ||||
|         commonTest { | ||||
|             dependencies { | ||||
|                 implementation kotlin('test-common') | ||||
|                 implementation kotlin('test-annotations-common') | ||||
|                 implementation libs.kotlin.test.common | ||||
|                 implementation libs.kotlin.test.annotations.common | ||||
|             } | ||||
|         } | ||||
|         jsTest { | ||||
|             dependencies { | ||||
|                 implementation kotlin('test-js') | ||||
|                 implementation kotlin('test-junit') | ||||
|                 implementation libs.kotlin.test.js | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|   | ||||
| @@ -5,48 +5,61 @@ project.group = "$group" | ||||
|  | ||||
| kotlin { | ||||
|     jvm { | ||||
|         compilations.main.kotlinOptions.useIR = true | ||||
|         compilations.main { | ||||
|             kotlinOptions { | ||||
|                 jvmTarget = "17" | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|     js (BOTH) { | ||||
|     js (IR) { | ||||
|         browser() | ||||
|         nodejs() | ||||
|     } | ||||
|     android { | ||||
|     androidTarget { | ||||
|         publishAllLibraryVariants() | ||||
|         compilations.all { | ||||
|             kotlinOptions { | ||||
|                 jvmTarget = "17" | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     sourceSets { | ||||
|         commonMain { | ||||
|             dependencies { | ||||
|                 implementation kotlin('stdlib') | ||||
|                 api "org.jetbrains.kotlinx:kotlinx-serialization-json:$kotlin_serialisation_core_version" | ||||
|                 implementation libs.kotlin | ||||
|                 api libs.kotlin.serialization | ||||
|             } | ||||
|         } | ||||
|         commonTest { | ||||
|             dependencies { | ||||
|                 implementation kotlin('test-common') | ||||
|                 implementation kotlin('test-annotations-common') | ||||
|                 implementation libs.kotlin.test.common | ||||
|                 implementation libs.kotlin.test.annotations.common | ||||
|             } | ||||
|         } | ||||
|         jvmTest { | ||||
|             dependencies { | ||||
|                 implementation kotlin('test-junit') | ||||
|                 implementation libs.kotlin.test.junit | ||||
|             } | ||||
|         } | ||||
|         jsTest { | ||||
|             dependencies { | ||||
|                 implementation kotlin('test-js') | ||||
|                 implementation kotlin('test-junit') | ||||
|                 implementation libs.kotlin.test.js | ||||
|             } | ||||
|         } | ||||
|         androidTest { | ||||
|         androidUnitTest { | ||||
|             dependencies { | ||||
|                 implementation kotlin('test-junit') | ||||
|                 implementation "androidx.test.ext:junit:$test_ext_junit_version" | ||||
|                 implementation "androidx.test.espresso:espresso-core:$espresso_core" | ||||
|                 implementation libs.kotlin.test.junit | ||||
|                 implementation libs.android.test.junit | ||||
|                 implementation libs.android.test.espresso.core | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  | ||||
| java { | ||||
|     sourceCompatibility = JavaVersion.VERSION_17 | ||||
|     targetCompatibility = JavaVersion.VERSION_17 | ||||
| } | ||||
|  | ||||
| apply from: "$defaultAndroidSettingsPresetPath" | ||||
|   | ||||
							
								
								
									
										6
									
								
								renovate.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								renovate.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | ||||
| { | ||||
|   "$schema": "https://docs.renovatebot.com/renovate-schema.json", | ||||
|   "extends": [ | ||||
|     "config:recommended" | ||||
|   ] | ||||
| } | ||||
| @@ -6,8 +6,8 @@ String[] includes = [ | ||||
|  | ||||
|  | ||||
| includes.each { originalName -> | ||||
|     String projectDirectory = "${rootProject.projectDir.getAbsolutePath()}${originalName.replaceAll(":", File.separator)}" | ||||
|     String projectName = "${rootProject.name}${originalName.replaceAll(":", ".")}" | ||||
|     String projectDirectory = "${rootProject.projectDir.getAbsolutePath()}${originalName.replace(":", File.separator)}" | ||||
|     String projectName = "${rootProject.name}${originalName.replace(":", ".")}" | ||||
|     String projectIdentifier = ":${projectName}" | ||||
|     include projectIdentifier | ||||
|     ProjectDescriptor project = project(projectIdentifier) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user