diff --git a/composeApp/build.gradle.kts b/composeApp/build.gradle.kts
index d3071fd..95232ec 100644
--- a/composeApp/build.gradle.kts
+++ b/composeApp/build.gradle.kts
@@ -1,4 +1,3 @@
-import org.jetbrains.compose.desktop.application.dsl.TargetFormat
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
plugins {
@@ -66,11 +65,11 @@ kotlin {
}
android {
- namespace = "moe.uni.comfy_kmp"
+ namespace = "moe.uni.comfyKmp"
compileSdk = libs.versions.android.compileSdk.get().toInt()
defaultConfig {
- applicationId = "moe.uni.comfy_kmp"
+ applicationId = "moe.uni.comfyKmp"
minSdk = libs.versions.android.minSdk.get().toInt()
targetSdk = libs.versions.android.targetSdk.get().toInt()
versionCode = 1
diff --git a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/AndroidAppContext.kt b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/AndroidAppContext.kt
similarity index 88%
rename from composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/AndroidAppContext.kt
rename to composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/AndroidAppContext.kt
index f435fae..2c58bae 100644
--- a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/AndroidAppContext.kt
+++ b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/AndroidAppContext.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
import android.content.Context
diff --git a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/FilePicker.android.kt b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/FilePicker.android.kt
similarity index 98%
rename from composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/FilePicker.android.kt
rename to composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/FilePicker.android.kt
index 726baaf..079f5f0 100644
--- a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/FilePicker.android.kt
+++ b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/FilePicker.android.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
import android.content.Context
import android.net.Uri
diff --git a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/MainActivity.kt b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/MainActivity.kt
similarity index 95%
rename from composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/MainActivity.kt
rename to composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/MainActivity.kt
index b1068b6..ccf703d 100644
--- a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/MainActivity.kt
+++ b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/MainActivity.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
import android.os.Bundle
import androidx.activity.ComponentActivity
diff --git a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/Platform.android.kt b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/Platform.android.kt
similarity index 87%
rename from composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/Platform.android.kt
rename to composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/Platform.android.kt
index 8dc1fe7..60999ca 100644
--- a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/Platform.android.kt
+++ b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/Platform.android.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
import android.os.Build
diff --git a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/SystemBars.android.kt b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/SystemBars.android.kt
similarity index 97%
rename from composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/SystemBars.android.kt
rename to composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/SystemBars.android.kt
index af6137d..6882799 100644
--- a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/SystemBars.android.kt
+++ b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/SystemBars.android.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
import android.app.Activity
import androidx.compose.runtime.Composable
diff --git a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/data/CoverImageUtils.android.kt b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/data/CoverImageUtils.android.kt
similarity index 94%
rename from composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/data/CoverImageUtils.android.kt
rename to composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/data/CoverImageUtils.android.kt
index 0d6959d..f02a023 100644
--- a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/data/CoverImageUtils.android.kt
+++ b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/data/CoverImageUtils.android.kt
@@ -1,10 +1,10 @@
-package moe.uni.comfy_kmp.data
+package moe.uni.comfyKmp.data
import android.graphics.Bitmap
import android.graphics.BitmapFactory
import java.io.File
import kotlin.math.max
-import moe.uni.comfy_kmp.AndroidAppContext
+import moe.uni.comfyKmp.AndroidAppContext
actual fun saveCoverImage(bytes: ByteArray, filenameHint: String): String {
val safeName = filenameHint.replace(Regex("[^A-Za-z0-9._-]"), "_")
diff --git a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/data/ImageSaveUtils.android.kt b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/data/ImageSaveUtils.android.kt
similarity index 89%
rename from composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/data/ImageSaveUtils.android.kt
rename to composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/data/ImageSaveUtils.android.kt
index 4caa794..8cd80ee 100644
--- a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/data/ImageSaveUtils.android.kt
+++ b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/data/ImageSaveUtils.android.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.data
+package moe.uni.comfyKmp.data
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
diff --git a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/network/HttpClientFactory.android.kt b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/network/HttpClientFactory.android.kt
similarity index 83%
rename from composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/network/HttpClientFactory.android.kt
rename to composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/network/HttpClientFactory.android.kt
index 29b03b7..090ed31 100644
--- a/composeApp/src/androidMain/kotlin/moe/uni/comfy_kmp/network/HttpClientFactory.android.kt
+++ b/composeApp/src/androidMain/kotlin/moe/uni/comfyKmp/network/HttpClientFactory.android.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.network
+package moe.uni.comfyKmp.network
import io.ktor.client.HttpClient
import io.ktor.client.engine.okhttp.OkHttp
diff --git a/composeApp/src/androidMain/res/values/strings.xml b/composeApp/src/androidMain/res/values/strings.xml
index 3afcea8..e980248 100644
--- a/composeApp/src/androidMain/res/values/strings.xml
+++ b/composeApp/src/androidMain/res/values/strings.xml
@@ -1,3 +1,3 @@
- comfy_kmp
+ comfyKmp
\ No newline at end of file
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/App.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/App.kt
similarity index 72%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/App.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/App.kt
index 3c650c3..d6e5fb4 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/App.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/App.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.runtime.Composable
@@ -6,10 +6,10 @@ import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.runtime.remember
import androidx.compose.ui.tooling.preview.Preview
import cafe.adriel.voyager.navigator.Navigator
-import moe.uni.comfy_kmp.di.AppContainer
-import moe.uni.comfy_kmp.di.LocalAppContainer
-import moe.uni.comfy_kmp.ui.screens.ServerScreen
-import moe.uni.comfy_kmp.ui.theme.ComfyTheme
+import moe.uni.comfyKmp.di.AppContainer
+import moe.uni.comfyKmp.di.LocalAppContainer
+import moe.uni.comfyKmp.ui.screens.ServerScreen
+import moe.uni.comfyKmp.ui.theme.ComfyTheme
@Composable
@Preview
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/FilePicker.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/FilePicker.kt
similarity index 94%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/FilePicker.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/FilePicker.kt
index 49e039d..e97b788 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/FilePicker.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/FilePicker.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
import androidx.compose.runtime.Composable
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/Greeting.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/Greeting.kt
similarity index 83%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/Greeting.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/Greeting.kt
index ff978dc..bc33304 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/Greeting.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/Greeting.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
class Greeting {
private val platform = getPlatform()
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/Platform.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/Platform.kt
similarity index 75%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/Platform.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/Platform.kt
index fa4bf5c..3f67954 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/Platform.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/Platform.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
interface Platform {
val name: String
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/SystemBars.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/SystemBars.kt
similarity index 79%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/SystemBars.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/SystemBars.kt
index f25a636..2076426 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/SystemBars.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/SystemBars.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
import androidx.compose.runtime.Composable
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/ComfyJson.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/ComfyJson.kt
similarity index 93%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/ComfyJson.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/ComfyJson.kt
index 4eb4c2a..ca2e456 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/ComfyJson.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/ComfyJson.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.data
+package moe.uni.comfyKmp.data
import kotlinx.serialization.json.Json
import kotlinx.serialization.json.JsonElement
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/CoverImageUtils.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/CoverImageUtils.kt
similarity index 95%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/CoverImageUtils.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/CoverImageUtils.kt
index 9dbd2b8..ec8fdb6 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/CoverImageUtils.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/CoverImageUtils.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.data
+package moe.uni.comfyKmp.data
import okio.FileSystem
import okio.Path.Companion.toPath
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/FileUtils.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/FileUtils.kt
similarity index 91%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/FileUtils.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/FileUtils.kt
index e88be27..04a4c8b 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/FileUtils.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/FileUtils.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.data
+package moe.uni.comfyKmp.data
import okio.FileSystem
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/HistoryUtils.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/HistoryUtils.kt
similarity index 97%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/HistoryUtils.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/HistoryUtils.kt
index b718cff..aaab100 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/HistoryUtils.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/HistoryUtils.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.data
+package moe.uni.comfyKmp.data
import kotlinx.serialization.json.JsonArray
import kotlinx.serialization.json.JsonElement
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/ImageSaveUtils.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/ImageSaveUtils.kt
similarity index 73%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/ImageSaveUtils.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/ImageSaveUtils.kt
index 229d1a5..ba89dfe 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/ImageSaveUtils.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/ImageSaveUtils.kt
@@ -1,3 +1,3 @@
-package moe.uni.comfy_kmp.data
+package moe.uni.comfyKmp.data
expect suspend fun saveImageToGallery(bytes: ByteArray, filenameHint: String): String
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/Models.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/Models.kt
similarity index 98%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/Models.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/Models.kt
index a567fb9..a3fb620 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/Models.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/Models.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.data
+package moe.uni.comfyKmp.data
import kotlinx.serialization.Serializable
import kotlinx.serialization.json.JsonArray
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/WorkflowUtils.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/WorkflowUtils.kt
similarity index 99%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/WorkflowUtils.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/WorkflowUtils.kt
index 3bb0086..f5a1c1e 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/data/WorkflowUtils.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/data/WorkflowUtils.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.data
+package moe.uni.comfyKmp.data
import kotlinx.serialization.json.JsonArray
import kotlinx.serialization.json.JsonElement
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/di/AppComposition.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/di/AppComposition.kt
similarity index 84%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/di/AppComposition.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/di/AppComposition.kt
index 11d5128..1ee41c2 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/di/AppComposition.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/di/AppComposition.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.di
+package moe.uni.comfyKmp.di
import androidx.compose.runtime.compositionLocalOf
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/di/AppContainer.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/di/AppContainer.kt
similarity index 51%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/di/AppContainer.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/di/AppContainer.kt
index 67a339a..8abf243 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/di/AppContainer.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/di/AppContainer.kt
@@ -1,11 +1,11 @@
-package moe.uni.comfy_kmp.di
+package moe.uni.comfyKmp.di
-import moe.uni.comfy_kmp.network.ComfyApiClient
-import moe.uni.comfy_kmp.network.ComfyWebSocketClient
-import moe.uni.comfy_kmp.network.createHttpClient
-import moe.uni.comfy_kmp.storage.ServerRepository
-import moe.uni.comfy_kmp.storage.SettingsStorage
-import moe.uni.comfy_kmp.storage.WorkflowRepository
+import moe.uni.comfyKmp.network.ComfyApiClient
+import moe.uni.comfyKmp.network.ComfyWebSocketClient
+import moe.uni.comfyKmp.network.createHttpClient
+import moe.uni.comfyKmp.storage.ServerRepository
+import moe.uni.comfyKmp.storage.SettingsStorage
+import moe.uni.comfyKmp.storage.WorkflowRepository
class AppContainer(
private val storage: SettingsStorage = SettingsStorage()
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/network/ComfyApiClient.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/network/ComfyApiClient.kt
similarity index 95%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/network/ComfyApiClient.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/network/ComfyApiClient.kt
index 52ef305..aaeb80b 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/network/ComfyApiClient.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/network/ComfyApiClient.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.network
+package moe.uni.comfyKmp.network
import io.ktor.client.HttpClient
import io.ktor.client.call.body
@@ -10,8 +10,8 @@ import io.ktor.http.ContentType
import io.ktor.http.contentType
import kotlinx.serialization.json.JsonElement
import kotlinx.serialization.json.JsonObject
-import moe.uni.comfy_kmp.data.PromptRequest
-import moe.uni.comfy_kmp.data.PromptResponse
+import moe.uni.comfyKmp.data.PromptRequest
+import moe.uni.comfyKmp.data.PromptResponse
class ComfyApiClient(
private val httpClient: HttpClient
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/network/ComfyWebSocketClient.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/network/ComfyWebSocketClient.kt
similarity index 98%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/network/ComfyWebSocketClient.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/network/ComfyWebSocketClient.kt
index c05a23c..bdb03da 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/network/ComfyWebSocketClient.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/network/ComfyWebSocketClient.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.network
+package moe.uni.comfyKmp.network
import io.ktor.client.HttpClient
import io.ktor.client.plugins.websocket.webSocket
@@ -25,8 +25,8 @@ import kotlinx.coroutines.launch
import kotlinx.serialization.json.JsonObject
import kotlinx.serialization.json.jsonObject
import kotlinx.serialization.json.jsonPrimitive
-import moe.uni.comfy_kmp.data.ComfyJson
-import moe.uni.comfy_kmp.data.WsMessage
+import moe.uni.comfyKmp.data.ComfyJson
+import moe.uni.comfyKmp.data.WsMessage
import kotlin.math.min
import kotlin.random.Random
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/network/HttpClientFactory.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/network/HttpClientFactory.kt
similarity index 85%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/network/HttpClientFactory.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/network/HttpClientFactory.kt
index 90d2e42..5684397 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/network/HttpClientFactory.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/network/HttpClientFactory.kt
@@ -1,11 +1,11 @@
-package moe.uni.comfy_kmp.network
+package moe.uni.comfyKmp.network
import io.ktor.client.HttpClient
import io.ktor.client.HttpClientConfig
import io.ktor.client.plugins.contentnegotiation.ContentNegotiation
import io.ktor.client.plugins.websocket.WebSockets
import io.ktor.serialization.kotlinx.json.json
-import moe.uni.comfy_kmp.data.ComfyJson
+import moe.uni.comfyKmp.data.ComfyJson
internal fun HttpClientConfig<*>.installComfyPlugins() {
install(ContentNegotiation) {
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/storage/Repositories.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/storage/Repositories.kt
similarity index 94%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/storage/Repositories.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/storage/Repositories.kt
index bc431b8..397e8fc 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/storage/Repositories.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/storage/Repositories.kt
@@ -1,7 +1,7 @@
-package moe.uni.comfy_kmp.storage
+package moe.uni.comfyKmp.storage
-import moe.uni.comfy_kmp.data.ServerConfig
-import moe.uni.comfy_kmp.data.WorkflowEntity
+import moe.uni.comfyKmp.data.ServerConfig
+import moe.uni.comfyKmp.data.WorkflowEntity
import kotlin.random.Random
import kotlin.time.Clock
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/storage/SettingsStorage.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/storage/SettingsStorage.kt
similarity index 90%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/storage/SettingsStorage.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/storage/SettingsStorage.kt
index b57331d..86a1b79 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/storage/SettingsStorage.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/storage/SettingsStorage.kt
@@ -1,13 +1,12 @@
-package moe.uni.comfy_kmp.storage
+package moe.uni.comfyKmp.storage
import com.russhwolf.settings.Settings
-import moe.uni.comfy_kmp.data.ComfyJson
-import moe.uni.comfy_kmp.data.ServerConfig
-import moe.uni.comfy_kmp.data.WorkflowEntity
-import moe.uni.comfy_kmp.data.saveCoverImage
+import moe.uni.comfyKmp.data.ComfyJson
+import moe.uni.comfyKmp.data.ServerConfig
+import moe.uni.comfyKmp.data.WorkflowEntity
+import moe.uni.comfyKmp.data.saveCoverImage
import kotlinx.serialization.builtins.ListSerializer
import kotlinx.serialization.encodeToString
-import kotlinx.serialization.decodeFromString
import okio.FileSystem
import okio.Path.Companion.toPath
import kotlin.io.encoding.Base64
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/ComfyDialog.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/ComfyDialog.kt
similarity index 95%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/ComfyDialog.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/ComfyDialog.kt
index 6e3e320..508c4ad 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/ComfyDialog.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/ComfyDialog.kt
@@ -1,8 +1,6 @@
-package moe.uni.comfy_kmp.ui.components
+package moe.uni.comfyKmp.ui.components
-import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Arrangement
-import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.ColumnScope
import androidx.compose.foundation.layout.Row
@@ -14,7 +12,6 @@ import androidx.compose.foundation.layout.width
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material3.Button
import androidx.compose.material3.MaterialTheme
-import androidx.compose.material3.OutlinedButton
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
@@ -25,8 +22,8 @@ import androidx.compose.ui.draw.clip
import androidx.compose.ui.unit.dp
import androidx.compose.ui.window.Dialog
import androidx.compose.ui.window.DialogProperties
-import moe.uni.comfy_kmp.ui.theme.ComfySpacing
-import moe.uni.comfy_kmp.ui.theme.comfyColors
+import moe.uni.comfyKmp.ui.theme.ComfySpacing
+import moe.uni.comfyKmp.ui.theme.comfyColors
@Composable
fun ComfyDialog(
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/GlassCard.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/GlassCard.kt
similarity index 96%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/GlassCard.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/GlassCard.kt
index 55b448a..4f1133c 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/GlassCard.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/GlassCard.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.ui.components
+package moe.uni.comfyKmp.ui.components
import androidx.compose.animation.animateColorAsState
import androidx.compose.animation.core.animateDpAsState
@@ -23,8 +23,8 @@ import androidx.compose.ui.draw.shadow
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.dp
-import moe.uni.comfy_kmp.ui.theme.ComfySpacing
-import moe.uni.comfy_kmp.ui.theme.comfyColors
+import moe.uni.comfyKmp.ui.theme.ComfySpacing
+import moe.uni.comfyKmp.ui.theme.comfyColors
@Composable
fun GlassCard(
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/ImageGallery.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/ImageGallery.kt
similarity index 78%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/ImageGallery.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/ImageGallery.kt
index 5ae86f1..dbb0c6a 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/ImageGallery.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/ImageGallery.kt
@@ -1,17 +1,19 @@
-package moe.uni.comfy_kmp.ui.components
+package moe.uni.comfyKmp.ui.components
import androidx.compose.foundation.Image
import androidx.compose.foundation.background
import androidx.compose.foundation.clickable
-import androidx.compose.foundation.layout.aspectRatio
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
+import androidx.compose.foundation.layout.BoxWithConstraints
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
+import androidx.compose.foundation.layout.heightIn
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
+import androidx.compose.foundation.layout.widthIn
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.itemsIndexed
import androidx.compose.foundation.shape.CircleShape
@@ -33,8 +35,8 @@ import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.ImageBitmap
import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.unit.dp
-import moe.uni.comfy_kmp.ui.theme.ComfySpacing
-import moe.uni.comfy_kmp.ui.theme.comfyColors
+import moe.uni.comfyKmp.ui.theme.ComfySpacing
+import moe.uni.comfyKmp.ui.theme.comfyColors
data class GalleryImage(
val filename: String,
@@ -49,18 +51,24 @@ fun ImageGallery(
onImageClick: ((Int) -> Unit)? = null,
onSaveClick: ((Int) -> Unit)? = null
) {
- Box(modifier = modifier.fillMaxSize()) {
+ BoxWithConstraints(modifier = modifier.fillMaxSize()) {
+ val availableWidth = maxWidth
+ val availableHeight = maxHeight
+
if (images.isEmpty()) {
EmptyGalleryState(modifier = Modifier.align(Alignment.Center))
} else {
LazyColumn(
contentPadding = PaddingValues(ComfySpacing.lg),
verticalArrangement = Arrangement.spacedBy(ComfySpacing.md),
+ horizontalAlignment = Alignment.CenterHorizontally,
modifier = Modifier.fillMaxSize()
) {
itemsIndexed(images) { index, image ->
GalleryImageItem(
image = image,
+ availableWidth = availableWidth,
+ availableHeight = availableHeight,
onClick = {
onImageClick?.invoke(index)
},
@@ -75,37 +83,57 @@ fun ImageGallery(
@Composable
private fun GalleryImageItem(
image: GalleryImage,
+ availableWidth: androidx.compose.ui.unit.Dp,
+ availableHeight: androidx.compose.ui.unit.Dp,
onClick: () -> Unit,
onSave: (() -> Unit)?
) {
val shape = RoundedCornerShape(12.dp)
- val aspectRatio = image.bitmap?.let { it.width.toFloat() / it.height.toFloat() } ?: 1f
+ val bitmap = image.bitmap
+
+ // Calculate max dimensions (leave padding space)
+ val padding = ComfySpacing.lg * 2
+ val maxWidth = availableWidth - padding
+ val maxHeight = availableHeight - padding
+
+ // Calculate fitted size maintaining aspect ratio
+ val (fittedWidth, fittedHeight) = if (bitmap != null) {
+ val imageAspect = bitmap.width.toFloat() / bitmap.height.toFloat()
+ val containerAspect = maxWidth / maxHeight
+
+ if (imageAspect > containerAspect) {
+ // Image is wider - fit to width
+ maxWidth to (maxWidth / imageAspect)
+ } else {
+ // Image is taller - fit to height
+ (maxHeight * imageAspect) to maxHeight
+ }
+ } else {
+ maxWidth to (maxWidth * 0.75f) // Default 4:3 for placeholder
+ }
Column(
- modifier = Modifier.fillMaxWidth(),
- verticalArrangement = Arrangement.spacedBy(ComfySpacing.sm)
+ verticalArrangement = Arrangement.spacedBy(ComfySpacing.sm),
+ horizontalAlignment = Alignment.CenterHorizontally
) {
Box(
modifier = Modifier
- .fillMaxWidth()
+ .widthIn(max = fittedWidth)
+ .heightIn(max = fittedHeight)
.shadow(4.dp, shape)
.clip(shape)
.background(MaterialTheme.comfyColors.cardBackground)
.clickable(onClick = onClick)
) {
when {
- image.bitmap != null -> {
+ bitmap != null -> {
Image(
- bitmap = image.bitmap,
+ bitmap = bitmap,
contentDescription = image.filename,
- contentScale = ContentScale.FillWidth,
+ contentScale = ContentScale.Fit,
modifier = Modifier
- .fillMaxWidth()
- .then(
- if (aspectRatio.isFinite() && aspectRatio > 0f) {
- Modifier.aspectRatio(aspectRatio)
- } else Modifier
- )
+ .widthIn(max = fittedWidth)
+ .heightIn(max = fittedHeight)
)
// Filename badge at bottom
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/NodeCard.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/NodeCard.kt
similarity index 99%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/NodeCard.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/NodeCard.kt
index e59ab70..2e19064 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/NodeCard.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/NodeCard.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.ui.components
+package moe.uni.comfyKmp.ui.components
import androidx.compose.animation.AnimatedVisibility
import androidx.compose.animation.animateColorAsState
@@ -14,19 +14,16 @@ import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Row
-import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
-import androidx.compose.foundation.layout.width
import androidx.compose.foundation.shape.CircleShape
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Casino
import androidx.compose.material.icons.filled.ExpandLess
import androidx.compose.material.icons.filled.ExpandMore
-import androidx.compose.material.icons.filled.Refresh
import androidx.compose.material3.DropdownMenuItem
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.ExposedDropdownMenuBox
@@ -57,9 +54,9 @@ import kotlinx.serialization.json.JsonElement
import kotlinx.serialization.json.JsonPrimitive
import kotlinx.serialization.json.contentOrNull
import kotlinx.serialization.json.longOrNull
-import moe.uni.comfy_kmp.data.NodeStatus
-import moe.uni.comfy_kmp.ui.theme.ComfySpacing
-import moe.uni.comfy_kmp.ui.theme.comfyColors
+import moe.uni.comfyKmp.data.NodeStatus
+import moe.uni.comfyKmp.ui.theme.ComfySpacing
+import moe.uni.comfyKmp.ui.theme.comfyColors
import kotlin.math.roundToInt
@Composable
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/StatusBar.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/StatusBar.kt
similarity index 97%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/StatusBar.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/StatusBar.kt
index 4cce590..6959922 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/components/StatusBar.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/components/StatusBar.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.ui.components
+package moe.uni.comfyKmp.ui.components
import androidx.compose.animation.AnimatedContent
import androidx.compose.animation.animateColorAsState
@@ -21,7 +21,6 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
-import androidx.compose.foundation.layout.width
import androidx.compose.foundation.shape.CircleShape
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material3.LinearProgressIndicator
@@ -35,8 +34,8 @@ import androidx.compose.ui.draw.alpha
import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.unit.dp
-import moe.uni.comfy_kmp.ui.theme.ComfySpacing
-import moe.uni.comfy_kmp.ui.theme.comfyColors
+import moe.uni.comfyKmp.ui.theme.ComfySpacing
+import moe.uni.comfyKmp.ui.theme.comfyColors
enum class ExecutionStatus {
IDLE,
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/screens/ImagePreviewScreen.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/screens/ImagePreviewScreen.kt
similarity index 97%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/screens/ImagePreviewScreen.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/screens/ImagePreviewScreen.kt
index 9c323dc..94031bf 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/screens/ImagePreviewScreen.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/screens/ImagePreviewScreen.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.ui.screens
+package moe.uni.comfyKmp.ui.screens
import androidx.compose.foundation.Image
import androidx.compose.foundation.background
@@ -24,7 +24,6 @@ import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
-import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.graphicsLayer
import androidx.compose.ui.input.pointer.pointerInput
@@ -33,8 +32,8 @@ import androidx.compose.ui.unit.dp
import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow
-import moe.uni.comfy_kmp.SystemBarsEffect
-import moe.uni.comfy_kmp.ui.theme.ComfySpacing
+import moe.uni.comfyKmp.SystemBarsEffect
+import moe.uni.comfyKmp.ui.theme.ComfySpacing
import org.jetbrains.compose.resources.decodeToImageBitmap
data class ImagePreviewScreen(
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/screens/ServerScreen.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/screens/ServerScreen.kt
similarity index 97%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/screens/ServerScreen.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/screens/ServerScreen.kt
index 4f7540a..8241f16 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/screens/ServerScreen.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/screens/ServerScreen.kt
@@ -1,6 +1,6 @@
@file:OptIn(ExperimentalMaterial3Api::class)
-package moe.uni.comfy_kmp.ui.screens
+package moe.uni.comfyKmp.ui.screens
import androidx.compose.animation.AnimatedVisibility
import androidx.compose.animation.core.tween
@@ -30,7 +30,6 @@ import androidx.compose.material.icons.filled.Check
import androidx.compose.material.icons.filled.Delete
import androidx.compose.material.icons.filled.Dns
import androidx.compose.material.icons.filled.Edit
-import androidx.compose.material.icons.filled.RadioButtonChecked
import androidx.compose.material.icons.filled.RadioButtonUnchecked
import androidx.compose.material3.Button
import androidx.compose.material3.ButtonDefaults
@@ -40,7 +39,6 @@ import androidx.compose.material3.ExtendedFloatingActionButton
import androidx.compose.material3.FilledTonalButton
import androidx.compose.material3.FabPosition
import androidx.compose.material3.Icon
-import androidx.compose.material3.IconButton
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.OutlinedButton
import androidx.compose.material3.OutlinedTextField
@@ -65,13 +63,13 @@ import cafe.adriel.voyager.core.model.rememberScreenModel
import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow
-import moe.uni.comfy_kmp.data.ServerConfig
-import moe.uni.comfy_kmp.di.LocalAppContainer
-import moe.uni.comfy_kmp.storage.generateId
-import moe.uni.comfy_kmp.ui.components.ComfyDialog
-import moe.uni.comfy_kmp.ui.components.GlassCard
-import moe.uni.comfy_kmp.ui.theme.ComfySpacing
-import moe.uni.comfy_kmp.ui.theme.comfyColors
+import moe.uni.comfyKmp.data.ServerConfig
+import moe.uni.comfyKmp.di.LocalAppContainer
+import moe.uni.comfyKmp.storage.generateId
+import moe.uni.comfyKmp.ui.components.ComfyDialog
+import moe.uni.comfyKmp.ui.components.GlassCard
+import moe.uni.comfyKmp.ui.theme.ComfySpacing
+import moe.uni.comfyKmp.ui.theme.comfyColors
class ServerScreen : Screen {
@Composable
@@ -223,7 +221,7 @@ class ServerScreen : Screen {
}
private class ServerScreenModel(
- private val repository: moe.uni.comfy_kmp.storage.ServerRepository
+ private val repository: moe.uni.comfyKmp.storage.ServerRepository
) : ScreenModel {
var servers by mutableStateOf(repository.getServers())
private set
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/screens/WorkflowListScreen.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/screens/WorkflowListScreen.kt
similarity index 96%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/screens/WorkflowListScreen.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/screens/WorkflowListScreen.kt
index 5597930..fc57263 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/screens/WorkflowListScreen.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/screens/WorkflowListScreen.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.ui.screens
+package moe.uni.comfyKmp.ui.screens
import androidx.compose.animation.AnimatedVisibility
import androidx.compose.animation.core.tween
@@ -31,9 +31,7 @@ import androidx.compose.material.icons.automirrored.filled.Assignment
import androidx.compose.material.icons.filled.Delete
import androidx.compose.material.icons.filled.FolderOpen
import androidx.compose.material.icons.filled.Image
-import androidx.compose.material.icons.filled.PlayArrow
import androidx.compose.material3.Button
-import androidx.compose.material3.ButtonDefaults
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.FilledTonalButton
import androidx.compose.material3.FilledTonalIconButton
@@ -45,7 +43,6 @@ import androidx.compose.material3.OutlinedButton
import androidx.compose.material3.OutlinedTextField
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
-import androidx.compose.material3.TextButton
import androidx.compose.material3.TopAppBar
import androidx.compose.material3.TopAppBarDefaults
import androidx.compose.runtime.Composable
@@ -59,7 +56,6 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.draw.shadow
import androidx.compose.ui.graphics.Brush
-import androidx.compose.ui.graphics.Color
import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.unit.dp
@@ -68,15 +64,15 @@ import cafe.adriel.voyager.core.model.rememberScreenModel
import cafe.adriel.voyager.core.screen.Screen
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow
-import moe.uni.comfy_kmp.data.WorkflowEntity
-import moe.uni.comfy_kmp.data.loadCoverImageBytes
-import moe.uni.comfy_kmp.di.LocalAppContainer
-import moe.uni.comfy_kmp.isFilePickerSupported
-import moe.uni.comfy_kmp.rememberFilePickerLauncher
-import moe.uni.comfy_kmp.storage.generateId
-import moe.uni.comfy_kmp.ui.components.ComfyDialog
-import moe.uni.comfy_kmp.ui.theme.ComfySpacing
-import moe.uni.comfy_kmp.ui.theme.comfyColors
+import moe.uni.comfyKmp.data.WorkflowEntity
+import moe.uni.comfyKmp.data.loadCoverImageBytes
+import moe.uni.comfyKmp.di.LocalAppContainer
+import moe.uni.comfyKmp.isFilePickerSupported
+import moe.uni.comfyKmp.rememberFilePickerLauncher
+import moe.uni.comfyKmp.storage.generateId
+import moe.uni.comfyKmp.ui.components.ComfyDialog
+import moe.uni.comfyKmp.ui.theme.ComfySpacing
+import moe.uni.comfyKmp.ui.theme.comfyColors
import org.jetbrains.compose.resources.decodeToImageBitmap
import kotlin.time.Clock
@@ -199,7 +195,7 @@ data class WorkflowListScreen(val serverId: String) : Screen {
private class WorkflowListScreenModel(
private val serverId: String,
- private val repository: moe.uni.comfy_kmp.storage.WorkflowRepository
+ private val repository: moe.uni.comfyKmp.storage.WorkflowRepository
) : ScreenModel {
var workflows by mutableStateOf(repository.getWorkflows(serverId))
private set
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/screens/WorkflowRunScreen.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/screens/WorkflowRunScreen.kt
similarity index 95%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/screens/WorkflowRunScreen.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/screens/WorkflowRunScreen.kt
index 4330936..bc2fb5b 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/screens/WorkflowRunScreen.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/screens/WorkflowRunScreen.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.ui.screens
+package moe.uni.comfyKmp.ui.screens
import androidx.compose.animation.AnimatedContent
import androidx.compose.animation.fadeIn
@@ -68,36 +68,35 @@ import kotlinx.serialization.json.JsonElement
import kotlinx.serialization.json.JsonObject
import kotlinx.serialization.json.JsonPrimitive
import kotlinx.serialization.json.contentOrNull
-import kotlinx.serialization.json.jsonArray
import kotlinx.serialization.json.jsonPrimitive
-import moe.uni.comfy_kmp.data.ComfyJson
-import moe.uni.comfy_kmp.data.ImageRef
-import moe.uni.comfy_kmp.data.NodeExecutionState
-import moe.uni.comfy_kmp.data.NodeStatus
-import moe.uni.comfy_kmp.data.PromptRequest
-import moe.uni.comfy_kmp.data.extractImagesFromHistory
-import moe.uni.comfy_kmp.data.extractPromptObject
-import moe.uni.comfy_kmp.data.parsePromptNodes
-import moe.uni.comfy_kmp.data.saveCoverImage
-import moe.uni.comfy_kmp.data.saveImageToGallery
-import moe.uni.comfy_kmp.data.updateNodeInput
-import moe.uni.comfy_kmp.di.LocalAppContainer
-import moe.uni.comfy_kmp.network.ComfyApiClient
-import moe.uni.comfy_kmp.network.ComfyWebSocketClient
-import moe.uni.comfy_kmp.network.WsConnectionStatus
-import moe.uni.comfy_kmp.storage.ServerRepository
-import moe.uni.comfy_kmp.storage.WorkflowRepository
-import moe.uni.comfy_kmp.storage.generateId
-import moe.uni.comfy_kmp.ui.components.EditableNodeType
-import moe.uni.comfy_kmp.ui.components.EditableNodeCard
-import moe.uni.comfy_kmp.ui.components.ExecutionStatus
-import moe.uni.comfy_kmp.ui.components.ExecutionStatusBar
-import moe.uni.comfy_kmp.ui.components.GalleryImage
-import moe.uni.comfy_kmp.ui.components.ImageGallery
-import moe.uni.comfy_kmp.ui.components.detectNodeType
-import moe.uni.comfy_kmp.ui.components.getModelFolder
-import moe.uni.comfy_kmp.ui.theme.ComfySpacing
-import moe.uni.comfy_kmp.ui.theme.comfyColors
+import moe.uni.comfyKmp.data.ComfyJson
+import moe.uni.comfyKmp.data.ImageRef
+import moe.uni.comfyKmp.data.NodeExecutionState
+import moe.uni.comfyKmp.data.NodeStatus
+import moe.uni.comfyKmp.data.PromptRequest
+import moe.uni.comfyKmp.data.extractImagesFromHistory
+import moe.uni.comfyKmp.data.extractPromptObject
+import moe.uni.comfyKmp.data.parsePromptNodes
+import moe.uni.comfyKmp.data.saveCoverImage
+import moe.uni.comfyKmp.data.saveImageToGallery
+import moe.uni.comfyKmp.data.updateNodeInput
+import moe.uni.comfyKmp.di.LocalAppContainer
+import moe.uni.comfyKmp.network.ComfyApiClient
+import moe.uni.comfyKmp.network.ComfyWebSocketClient
+import moe.uni.comfyKmp.network.WsConnectionStatus
+import moe.uni.comfyKmp.storage.ServerRepository
+import moe.uni.comfyKmp.storage.WorkflowRepository
+import moe.uni.comfyKmp.storage.generateId
+import moe.uni.comfyKmp.ui.components.EditableNodeType
+import moe.uni.comfyKmp.ui.components.EditableNodeCard
+import moe.uni.comfyKmp.ui.components.ExecutionStatus
+import moe.uni.comfyKmp.ui.components.ExecutionStatusBar
+import moe.uni.comfyKmp.ui.components.GalleryImage
+import moe.uni.comfyKmp.ui.components.ImageGallery
+import moe.uni.comfyKmp.ui.components.detectNodeType
+import moe.uni.comfyKmp.ui.components.getModelFolder
+import moe.uni.comfyKmp.ui.theme.ComfySpacing
+import moe.uni.comfyKmp.ui.theme.comfyColors
import org.jetbrains.compose.resources.decodeToImageBitmap
import kotlin.random.Random
import kotlin.time.Clock
diff --git a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/theme/ComfyTheme.kt b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/theme/ComfyTheme.kt
similarity index 98%
rename from composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/theme/ComfyTheme.kt
rename to composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/theme/ComfyTheme.kt
index 05b1106..60c6aeb 100644
--- a/composeApp/src/commonMain/kotlin/moe/uni/comfy_kmp/ui/theme/ComfyTheme.kt
+++ b/composeApp/src/commonMain/kotlin/moe/uni/comfyKmp/ui/theme/ComfyTheme.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.ui.theme
+package moe.uni.comfyKmp.ui.theme
import androidx.compose.animation.core.CubicBezierEasing
import androidx.compose.foundation.shape.RoundedCornerShape
@@ -11,10 +11,8 @@ import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.runtime.Immutable
import androidx.compose.runtime.staticCompositionLocalOf
-import androidx.compose.ui.graphics.Brush
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.text.TextStyle
-import androidx.compose.ui.text.font.FontFamily
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
diff --git a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/FilePicker.ios.kt b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/FilePicker.ios.kt
similarity index 99%
rename from composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/FilePicker.ios.kt
rename to composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/FilePicker.ios.kt
index af8305a..a761cba 100644
--- a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/FilePicker.ios.kt
+++ b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/FilePicker.ios.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
import androidx.compose.runtime.Composable
import androidx.compose.runtime.remember
diff --git a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/MainViewController.kt b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/MainViewController.kt
similarity index 82%
rename from composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/MainViewController.kt
rename to composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/MainViewController.kt
index 4129978..89aeedf 100644
--- a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/MainViewController.kt
+++ b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/MainViewController.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
import androidx.compose.ui.window.ComposeUIViewController
diff --git a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/Platform.ios.kt b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/Platform.ios.kt
similarity index 89%
rename from composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/Platform.ios.kt
rename to composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/Platform.ios.kt
index 47ea3fa..8bce83e 100644
--- a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/Platform.ios.kt
+++ b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/Platform.ios.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
import platform.UIKit.UIDevice
diff --git a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/SystemBars.ios.kt b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/SystemBars.ios.kt
similarity index 97%
rename from composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/SystemBars.ios.kt
rename to composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/SystemBars.ios.kt
index 8621006..530070b 100644
--- a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/SystemBars.ios.kt
+++ b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/SystemBars.ios.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp
+package moe.uni.comfyKmp
import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
diff --git a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/data/CoverImageUtils.ios.kt b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/data/CoverImageUtils.ios.kt
similarity index 95%
rename from composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/data/CoverImageUtils.ios.kt
rename to composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/data/CoverImageUtils.ios.kt
index 89dc8e3..e87d54a 100644
--- a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/data/CoverImageUtils.ios.kt
+++ b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/data/CoverImageUtils.ios.kt
@@ -1,6 +1,6 @@
@file:OptIn(kotlinx.cinterop.ExperimentalForeignApi::class)
-package moe.uni.comfy_kmp.data
+package moe.uni.comfyKmp.data
import kotlinx.cinterop.addressOf
import kotlinx.cinterop.convert
@@ -11,7 +11,6 @@ import platform.Foundation.NSCachesDirectory
import platform.Foundation.NSData
import platform.Foundation.NSFileManager
import platform.Foundation.NSUserDomainMask
-import platform.Foundation.URLByAppendingPathComponent
import platform.Foundation.dataWithBytes
import platform.UIKit.UIImage
import platform.UIKit.UIImageJPEGRepresentation
diff --git a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/data/ImageSaveUtils.ios.kt b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/data/ImageSaveUtils.ios.kt
similarity index 98%
rename from composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/data/ImageSaveUtils.ios.kt
rename to composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/data/ImageSaveUtils.ios.kt
index 8e93cbe..044d2b5 100644
--- a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/data/ImageSaveUtils.ios.kt
+++ b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/data/ImageSaveUtils.ios.kt
@@ -1,6 +1,6 @@
@file:OptIn(kotlinx.cinterop.ExperimentalForeignApi::class)
-package moe.uni.comfy_kmp.data
+package moe.uni.comfyKmp.data
import kotlinx.cinterop.addressOf
import kotlinx.cinterop.usePinned
diff --git a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/network/HttpClientFactory.ios.kt b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/network/HttpClientFactory.ios.kt
similarity index 83%
rename from composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/network/HttpClientFactory.ios.kt
rename to composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/network/HttpClientFactory.ios.kt
index 79a29e4..1c33361 100644
--- a/composeApp/src/iosMain/kotlin/moe/uni/comfy_kmp/network/HttpClientFactory.ios.kt
+++ b/composeApp/src/iosMain/kotlin/moe/uni/comfyKmp/network/HttpClientFactory.ios.kt
@@ -1,4 +1,4 @@
-package moe.uni.comfy_kmp.network
+package moe.uni.comfyKmp.network
import io.ktor.client.HttpClient
import io.ktor.client.engine.darwin.Darwin
diff --git a/iosApp/Configuration/Config.xcconfig b/iosApp/Configuration/Config.xcconfig
index f022619..f03d1dc 100644
--- a/iosApp/Configuration/Config.xcconfig
+++ b/iosApp/Configuration/Config.xcconfig
@@ -1,7 +1,7 @@
TEAM_ID=
-PRODUCT_NAME=comfy_kmp
-PRODUCT_BUNDLE_IDENTIFIER=moe.uni.comfy_kmp.comfy_kmp$(TEAM_ID)
+PRODUCT_NAME=comfyKmp
+PRODUCT_BUNDLE_IDENTIFIER=moe.uni.comfyKmp.comfyKmp$(TEAM_ID)
CURRENT_PROJECT_VERSION=1
MARKETING_VERSION=1.0
\ No newline at end of file
diff --git a/iosApp/iosApp.xcodeproj/project.pbxproj b/iosApp/iosApp.xcodeproj/project.pbxproj
index 4771516..9a9405f 100644
--- a/iosApp/iosApp.xcodeproj/project.pbxproj
+++ b/iosApp/iosApp.xcodeproj/project.pbxproj
@@ -7,7 +7,7 @@
objects = {
/* Begin PBXFileReference section */
- 338A2ACE269EA4A9809609C8 /* comfy_kmp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = comfy_kmp.app; sourceTree = BUILT_PRODUCTS_DIR; };
+ 338A2ACE269EA4A9809609C8 /* comfyKmp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = comfyKmp.app; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */
@@ -59,7 +59,7 @@
657B04DAB4CB0FD124755A63 /* Products */ = {
isa = PBXGroup;
children = (
- 338A2ACE269EA4A9809609C8 /* comfy_kmp.app */,
+ 338A2ACE269EA4A9809609C8 /* comfyKmp.app */,
);
name = Products;
sourceTree = "";
@@ -87,7 +87,7 @@
packageProductDependencies = (
);
productName = iosApp;
- productReference = 338A2ACE269EA4A9809609C8 /* comfy_kmp.app */;
+ productReference = 338A2ACE269EA4A9809609C8 /* comfyKmp.app */;
productType = "com.apple.product-type.application";
};
/* End PBXNativeTarget section */
diff --git a/settings.gradle.kts b/settings.gradle.kts
index 9149759..95ee5c3 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -1,4 +1,4 @@
-rootProject.name = "comfy_kmp"
+rootProject.name = "comfyKmp"
enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
pluginManagement {