Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 21 additions & 26 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,20 +1,19 @@
[versions]
## SDK Versions
minSdk = "21"
compileSdk = "35"
minSdk = "23"
compileSdk = "36"

# Dependencies
kotlin = "2.2.0"
binaryCompatability = "0.18.0"
binaryCompatability = "0.18.1"

androidx-core = "1.16.0"
androidx-appcompat = "1.7.0"
androidx-constraintLayout = "2.2.1"
androidx-navigationFragment = "2.9.0"
androidx-navigationUI = "2.9.0"
androidx-coordinatorLayout = "1.3.0"
androidx-core = "1.17.0"
androidx-appcompat = "1.7.1"

android-gradle-plugin = "8.10.0"
androidx-activity-compose = "1.12.4"
androidx-compose-bom = "2026.02.00"

android-gradle-plugin = "8.12.3"
android-test-runner = "1.6.2"

stately = "2.1.0"
Expand All @@ -34,8 +33,6 @@ roboelectric = "4.10.3"
buildConfig = "5.6.7"
mavenPublish = "0.34.0"

android-junitTest = "1.1.5"
junit = "4.13.2"
dokka = "2.0.0"
touchlab-docusaurus-template = "0.1.11"
ktor = "3.2.3"
Expand All @@ -45,10 +42,11 @@ ktlint-gradle = "12.3.0"
[libraries]
androidx-core = { module = "androidx.core:core-ktx", version.ref = "androidx-core" }
androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "androidx-appcompat" }
androidx-constraintLayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "androidx-constraintLayout" }
androidx-navigationFragment = { module = "androidx.navigation:navigation-fragment-ktx", version.ref = "androidx-navigationFragment" }
androidx-navigationUI = { module = "androidx.navigation:navigation-ui-ktx", version.ref = "androidx-navigationUI" }
androidx-coordinatorLayout = { module = "androidx.coordinatorlayout:coordinatorlayout", version.ref = "androidx-coordinatorLayout" }

androidx-activity-compose = { module = "androidx.activity:activity-compose", version.ref = "androidx-activity-compose" }
androidx-compose-bom = { module = "androidx.compose:compose-bom", version.ref = "androidx-compose-bom" }
androidx-compose-ui = { module = "androidx.compose.ui:ui" }
androidx-compose-material3 = { module = "androidx.compose.material3:material3" }

androidx-runner = { module = "androidx.test:runner", version.ref = "android-test-runner" }

Expand All @@ -69,17 +67,11 @@ kotlinx-js = { module = "org.jetbrains.kotlinx:kotlinx-html-js", version.ref = "
kotlinx-wasm = { module = "org.jetbrains.kotlinx:kotlinx-browser-wasm-js", version.ref = "kotlinx-wasm"}
roboelectric = { module = "org.robolectric:robolectric", version.ref = "roboelectric" }

coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "coroutines" }

android-junitTest = { module = "androidx.test.ext:junit", version.ref = "android-junitTest" }
junitTest = { module = "junit:junit", version.ref = "junit" }

# For convention-plugins
kotlin-gradlePlugin = { group = "org.jetbrains.kotlin", name = "kotlin-gradle-plugin", version.ref = "kotlin" }
maven-publish-gradlePlugin = { module = "com.vanniktech.maven.publish:com.vanniktech.maven.publish.gradle.plugin", version.ref = "mavenPublish" }

[plugins]
maven-publish = { id = "com.vanniktech.maven.publish", version.ref = "mavenPublish" }
kotlin-multiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
android-library = { id = "com.android.library", version.ref = "android-gradle-plugin" }
buildConfig = { id = "com.github.gmazzo.buildconfig", version.ref = "buildConfig" }
Expand All @@ -88,13 +80,16 @@ dokka = { id = "org.jetbrains.dokka", version.ref = "dokka" }
touchlab-docusaurus-template = { id = "co.touchlab.touchlabtools.docusaurusosstemplate", version.ref = "touchlab-docusaurus-template" }
bugsnag-gradle-plugin = { id = "com.bugsnag.android.gradle", version.ref = "bugsnag-gradle-plugin" }
ktlint-gradle = { id = "org.jlleitschuh.gradle.ktlint", version.ref = "ktlint-gradle" }
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }

[bundles]
android = [
"androidx-core",
"androidx-appcompat",
"androidx-constraintLayout",
"androidx-navigationFragment",
"androidx-navigationUI",
"androidx-coordinatorLayout",
]

compose = [
"androidx-activity-compose",
"androidx-compose-ui",
"androidx-compose-material3"
]
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.2-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.4-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
9 changes: 4 additions & 5 deletions gradlew

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gradlew.bat

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -22,64 +22,53 @@ struct ContentView: View {
}

var body: some View {
VStack(spacing: 10){
Button(action: {
VStack(spacing: 12) {
SampleButton(text: "Click Count V", onClick: {
self.common.onClickV()
}){
Text("Click Count V").padding()
.background(Color.blue)
.foregroundColor(.white)
.font(.title)
}
Button(action: {
})

SampleButton(text: "Click Count D", onClick: {
self.common.onClickD()
}){
Text("Click Count D").padding()
.background(Color.blue)
.foregroundColor(.white)
.font(.title)
}
Button(action: {
})

SampleButton(text: "Click Count I", onClick: {
self.common.onClickI()
}){
Text("Click Count I").padding()
.background(Color.blue)
.foregroundColor(.white)
.font(.title)
}
Button(action: {
})

SampleButton(text: "Click Count W", onClick: {
self.common.onClickW()
}){
Text("Click Count W").padding()
.background(Color.blue)
.foregroundColor(.white)
.font(.title)
}
Button(action: {
})

SampleButton(text: "Click Count E", onClick: {
self.common.onClickE()
}){
Text("Click Count E").padding()
.background(Color.blue)
.foregroundColor(.white)
.font(.title)
}
Button(action: {
})

SampleButton(text: "Click Count A", onClick: {
self.common.onClickA()
}){
Text("Click Count A").padding()
.background(Color.blue)
.foregroundColor(.white)
.font(.title)
}
Button(action: {
})

SampleButton(text: "Log Exception", onClick: {
self.common.logException()
})

SampleButton(text: "Log from iOS", onClick: {
self.common.logException()
}){
Text("Log Exception").padding()
.background(Color.blue)
})
}
.padding(.horizontal, 64)
.frame(maxHeight: .infinity)
}

private func SampleButton(text: String, onClick: @escaping () -> Void) -> some View {
Button(action: onClick) {
Text(text)
.font(.headline)
.foregroundColor(.white)
.font(.title)
}
.frame(maxWidth: .infinity)
.padding(.vertical, 12)
}
.background(Color.blue)
.cornerRadius(32)
}
}

Expand Down
19 changes: 14 additions & 5 deletions samples/sample-production/app/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
import org.jetbrains.kotlin.gradle.dsl.JvmTarget

/*
* Copyright (c) 2020 Touchlab
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
Expand All @@ -12,10 +14,11 @@ plugins {
id("com.android.application")
kotlin("android")
id("com.bugsnag.android.gradle")
alias(libs.plugins.compose.compiler)
}

android {
namespace = "co.touchlab.kermitSample"
namespace = "co.touchlab.kermitsample"
compileSdk = libs.versions.compileSdk.get().toInt()
defaultConfig {
minSdk = libs.versions.minSdk.get().toInt()
Expand All @@ -29,24 +32,30 @@ android {
getByName("release") {
isMinifyEnabled = false
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
signingConfig = signingConfigs.getByName("debug")
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = "1.8"
}
buildFeatures {
viewBinding = true
compose = true
buildConfig = true
}
}

kotlin {
compilerOptions {
jvmTarget.set(JvmTarget.JVM_1_8)
}
}

dependencies {
implementation(project(":shared"))
implementation(libs.bundles.android)
implementation(platform(libs.androidx.compose.bom))
implementation(libs.bundles.compose)
implementation(libs.bugsnag.android)
}

Expand Down

This file was deleted.

This file was deleted.

Loading