diff --git a/app/src/main/java/com/fluxa/app/ui/catalog/HomeLayoutHelpers.kt b/app/src/main/java/com/fluxa/app/ui/catalog/HomeLayoutHelpers.kt index dc26182..d499d03 100644 --- a/app/src/main/java/com/fluxa/app/ui/catalog/HomeLayoutHelpers.kt +++ b/app/src/main/java/com/fluxa/app/ui/catalog/HomeLayoutHelpers.kt @@ -123,34 +123,6 @@ fun posterCornerRadius(value: String): Dp = with(FluxaDimensions.CornerPresets) } } -fun posterCardWidth(value: String): Dp = with(FluxaDimensions.PosterPresets) { - when (value) { - "xsmall" -> xsmall - "small" -> small - "large" -> large - "xlarge" -> xlarge - else -> medium - } -} - -fun posterCardHeight(value: String): Dp = posterCardWidth(value) * FluxaDimensions.PosterPresets.heightRatio - -fun horizontalCardWidth(value: String, deviceType: DeviceType): Dp { - val base = if (deviceType == DeviceType.TV) FluxaDimensions.HorizontalCard.tvBase else FluxaDimensions.HorizontalCard.mobileBase - val delta = with(FluxaDimensions.HorizontalCard) { - when (value) { - "xsmall" -> deltaXsmall - "small" -> deltaSmall - "large" -> deltaLarge - "xlarge" -> deltaXlarge - else -> 0.dp - } - } - return base + delta -} - -fun horizontalCardHeight(value: String, deviceType: DeviceType): Dp = horizontalCardWidth(value, deviceType) * FluxaDimensions.HorizontalCard.heightRatio - fun horizontalArtworkCandidates(meta: Meta, preferContinueWatchingArtwork: Boolean = false): List { val existingBackdrop = meta.background ?.takeIf { it.isNotBlank() } diff --git a/shared/src/commonMain/kotlin/com/fluxa/app/ui/catalog/CardSizePresets.kt b/shared/src/commonMain/kotlin/com/fluxa/app/ui/catalog/CardSizePresets.kt new file mode 100644 index 0000000..bf75b19 --- /dev/null +++ b/shared/src/commonMain/kotlin/com/fluxa/app/ui/catalog/CardSizePresets.kt @@ -0,0 +1,32 @@ +package com.fluxa.app.ui.catalog + +import androidx.compose.ui.unit.Dp +import androidx.compose.ui.unit.dp + +fun posterCardWidth(value: String): Dp = with(FluxaDimensions.PosterPresets) { + when (value) { + "xsmall" -> xsmall + "small" -> small + "large" -> large + "xlarge" -> xlarge + else -> medium + } +} + +fun posterCardHeight(value: String): Dp = posterCardWidth(value) * FluxaDimensions.PosterPresets.heightRatio + +fun horizontalCardWidth(value: String, deviceType: DeviceType): Dp { + val base = if (deviceType == DeviceType.TV) FluxaDimensions.HorizontalCard.tvBase else FluxaDimensions.HorizontalCard.mobileBase + val delta = with(FluxaDimensions.HorizontalCard) { + when (value) { + "xsmall" -> deltaXsmall + "small" -> deltaSmall + "large" -> deltaLarge + "xlarge" -> deltaXlarge + else -> 0.dp + } + } + return base + delta +} + +fun horizontalCardHeight(value: String, deviceType: DeviceType): Dp = horizontalCardWidth(value, deviceType) * FluxaDimensions.HorizontalCard.heightRatio diff --git a/app/src/main/java/com/fluxa/app/ui/device/DeviceType.kt b/shared/src/commonMain/kotlin/com/fluxa/app/ui/catalog/DeviceType.kt similarity index 78% rename from app/src/main/java/com/fluxa/app/ui/device/DeviceType.kt rename to shared/src/commonMain/kotlin/com/fluxa/app/ui/catalog/DeviceType.kt index 4a2fdd8..e7d117b 100644 --- a/app/src/main/java/com/fluxa/app/ui/device/DeviceType.kt +++ b/shared/src/commonMain/kotlin/com/fluxa/app/ui/catalog/DeviceType.kt @@ -1,10 +1,5 @@ package com.fluxa.app.ui.catalog -import com.fluxa.app.data.local.* -import com.fluxa.app.data.remote.* -import com.fluxa.app.data.repository.* -import com.fluxa.app.domain.discovery.* - import androidx.compose.foundation.clickable import androidx.compose.runtime.Composable import androidx.compose.runtime.compositionLocalOf