Fix CMP 1.10.0 deprecation warnings: migrate compose.* accessors and Preview imports

- Replace deprecated compose.* plugin accessors with explicit Maven coordinates in version catalog
- Upgrade Kotlin 2.3.0→2.3.10, KSP 2.3.0→2.3.5 to suppress androidTarget() warnings
- Migrate @Preview from deprecated components-uiToolingPreview to ui-tooling-preview artifact
- Fix LocalLifecycleOwner import to androidx.lifecycle.compose
- Fix webpack DevServer static property deprecation
- Update dependency guard baseline
pull/2064/head
Mercury Li 3 weeks ago
parent c5ac2f0539
commit 78a9b94b0c

@ -37,10 +37,8 @@ kotlin {
commonWebpackConfig {
outputFileName = "composeApp.js"
devServer = (devServer ?: KotlinWebpackConfig.DevServer()).apply {
static = (static ?: mutableListOf()).apply {
// Serve sources to debug inside browser
add(project.projectDir.path)
}
// Serve sources to debug inside browser
static(project.projectDir.path)
}
}
}
@ -78,12 +76,12 @@ kotlin {
implementation(libs.androidx.activity.compose)
}
commonMain.dependencies {
implementation(compose.runtime)
implementation(compose.foundation)
implementation(compose.material3)
implementation(compose.ui)
implementation(compose.components.resources)
implementation(compose.components.uiToolingPreview)
implementation(libs.jetbrains.compose.runtime)
implementation(libs.jetbrains.compose.foundation)
implementation(libs.jetbrains.compose.material3)
implementation(libs.jetbrains.compose.ui)
implementation(libs.jetbrains.compose.components.resources)
implementation(libs.jetbrains.compose.uiToolingPreview)
implementation(projects.core.designsystem)
}
desktopMain.dependencies {

@ -1,7 +1,7 @@
androidx.activity:activity-compose:1.10.0
androidx.activity:activity-ktx:1.10.0
androidx.activity:activity:1.10.0
androidx.annotation:annotation-experimental:1.4.1
androidx.annotation:annotation-experimental:1.5.1
androidx.annotation:annotation-jvm:1.9.1
androidx.annotation:annotation:1.9.1
androidx.appcompat:appcompat-resources:1.7.0
@ -19,14 +19,14 @@ androidx.compose.foundation:foundation-android:1.10.0
androidx.compose.foundation:foundation-layout-android:1.10.0
androidx.compose.foundation:foundation-layout:1.10.0
androidx.compose.foundation:foundation:1.10.0
androidx.compose.material3.adaptive:adaptive-android:1.1.0
androidx.compose.material3.adaptive:adaptive-layout-android:1.1.0
androidx.compose.material3.adaptive:adaptive-layout:1.1.0
androidx.compose.material3.adaptive:adaptive:1.1.0
androidx.compose.material3:material3-adaptive-navigation-suite-android:1.4.0
androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0
androidx.compose.material3:material3-android:1.4.0
androidx.compose.material3:material3:1.4.0
androidx.compose.material3.adaptive:adaptive-android:1.2.0
androidx.compose.material3.adaptive:adaptive-layout-android:1.2.0
androidx.compose.material3.adaptive:adaptive-layout:1.2.0
androidx.compose.material3.adaptive:adaptive:1.2.0
androidx.compose.material3:material3-adaptive-navigation-suite-android:1.5.0-alpha08
androidx.compose.material3:material3-adaptive-navigation-suite:1.5.0-alpha08
androidx.compose.material3:material3-android:1.5.0-alpha08
androidx.compose.material3:material3:1.5.0-alpha08
androidx.compose.material:material-android:1.10.0
androidx.compose.material:material-icons-core-android:1.7.6
androidx.compose.material:material-icons-core:1.7.6
@ -67,6 +67,8 @@ androidx.dynamicanimation:dynamicanimation:1.0.0
androidx.emoji2:emoji2:1.4.0
androidx.exifinterface:exifinterface:1.4.1
androidx.graphics:graphics-path:1.0.1
androidx.graphics:graphics-shapes-android:1.1.0
androidx.graphics:graphics-shapes:1.1.0
androidx.interpolator:interpolator:1.0.0
androidx.legacy:legacy-support-core-utils:1.0.0
androidx.lifecycle:lifecycle-common-java8:2.9.4
@ -127,29 +129,28 @@ org.jetbrains.compose.annotation-internal:annotation:1.10.0
org.jetbrains.compose.collection-internal:collection:1.10.0
org.jetbrains.compose.components:components-resources-android:1.10.0
org.jetbrains.compose.components:components-resources:1.10.0
org.jetbrains.compose.components:components-ui-tooling-preview-android:1.10.0
org.jetbrains.compose.components:components-ui-tooling-preview:1.10.0
org.jetbrains.compose.foundation:foundation-layout:1.10.0
org.jetbrains.compose.foundation:foundation:1.10.0
org.jetbrains.compose.material3.adaptive:adaptive-layout:1.1.0
org.jetbrains.compose.material3.adaptive:adaptive:1.1.2
org.jetbrains.compose.material3:material3-adaptive-navigation-suite:1.9.0
org.jetbrains.compose.material3:material3:1.9.0
org.jetbrains.compose.material3.adaptive:adaptive:1.2.0
org.jetbrains.compose.material3:material3-adaptive-navigation-suite:1.10.0-alpha05
org.jetbrains.compose.material3:material3:1.10.0-alpha05
org.jetbrains.compose.material:material-icons-core:1.7.3
org.jetbrains.compose.material:material-icons-extended:1.7.3
org.jetbrains.compose.material:material-ripple:1.10.0
org.jetbrains.compose.material:material:1.10.0
org.jetbrains.compose.runtime:runtime-saveable:1.10.0
org.jetbrains.compose.runtime:runtime:1.10.0
org.jetbrains.compose.ui:ui-backhandler-android:1.9.1
org.jetbrains.compose.ui:ui-backhandler:1.9.1
org.jetbrains.compose.ui:ui-backhandler-android:1.9.3
org.jetbrains.compose.ui:ui-backhandler:1.9.3
org.jetbrains.compose.ui:ui-geometry:1.10.0
org.jetbrains.compose.ui:ui-graphics:1.10.0
org.jetbrains.compose.ui:ui-text:1.10.0
org.jetbrains.compose.ui:ui-tooling-preview:1.10.0
org.jetbrains.compose.ui:ui-unit:1.10.0
org.jetbrains.compose.ui:ui-util:1.10.0
org.jetbrains.compose.ui:ui:1.10.0
org.jetbrains.kotlin:kotlin-stdlib:2.3.0
org.jetbrains.kotlin:kotlin-stdlib:2.3.10
org.jetbrains.kotlinx:kotlinx-coroutines-android:1.10.2
org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.10.2
org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.10.2

@ -75,14 +75,14 @@ kotlin {
sourceSets {
commonMain.dependencies {
implementation(projects.shared)
implementation(compose.runtime)
implementation(compose.foundation)
implementation(compose.material)
implementation(compose.material3)
implementation(compose.material3AdaptiveNavigationSuite)
implementation(compose.ui)
implementation(compose.components.resources)
implementation(compose.components.uiToolingPreview)
implementation(libs.jetbrains.compose.runtime)
implementation(libs.jetbrains.compose.foundation)
implementation(libs.jetbrains.compose.material)
implementation(libs.jetbrains.compose.material3)
implementation(libs.jetbrains.compose.material3.adaptiveNavigationSuite)
implementation(libs.jetbrains.compose.ui)
implementation(libs.jetbrains.compose.components.resources)
implementation(libs.jetbrains.compose.uiToolingPreview)
implementation(libs.coil.core)
implementation(libs.coil.compose)
implementation(libs.kotlinx.serialization.json)
@ -90,7 +90,7 @@ kotlin {
}
androidMain.dependencies {
implementation(compose.preview)
implementation(libs.jetbrains.compose.uiToolingPreview)
implementation(project.dependencies.platform(libs.androidx.compose.bom))
implementation(libs.androidx.activity.compose)
implementation(libs.androidx.compose.material3.adaptive)
@ -139,13 +139,13 @@ kotlin {
}
jvmTest.dependencies {
implementation(compose.desktop.uiTestJUnit4)
implementation(libs.jetbrains.compose.ui.test.junit4)
}
}
}
dependencies {
debugImplementation(compose.uiTooling)
debugImplementation(libs.jetbrains.compose.uiTooling)
androidTestImplementation(libs.androidx.compose.ui.test.android)
androidTestImplementation(libs.androidx.compose.ui.testManifest)
}

@ -28,7 +28,7 @@ kotlin {
sourceSets {
commonMain.dependencies {
implementation(libs.logging)
implementation(compose.runtime)
implementation(libs.jetbrains.compose.runtime)
}
}
}

@ -41,10 +41,8 @@ kotlin {
commonWebpackConfig {
outputFileName = "composeApp.js"
devServer = (devServer ?: KotlinWebpackConfig.DevServer()).apply {
static = (static ?: mutableListOf()).apply {
// Serve sources to debug inside browser
add(project.projectDir.path)
}
// Serve sources to debug inside browser
static(project.projectDir.path)
}
}
}
@ -68,16 +66,16 @@ kotlin {
implementation(projects.core.testing)
}
commonMain.dependencies {
implementation(compose.runtime)
implementation(compose.foundation)
implementation(compose.material)
implementation(compose.material3)
implementation(compose.material3AdaptiveNavigationSuite)
implementation(compose.materialIconsExtended)
implementation(compose.ui)
implementation(compose.uiUtil)
implementation(compose.components.resources)
implementation(compose.components.uiToolingPreview)
implementation(libs.jetbrains.compose.runtime)
implementation(libs.jetbrains.compose.foundation)
implementation(libs.jetbrains.compose.material)
implementation(libs.jetbrains.compose.material3)
implementation(libs.jetbrains.compose.material3.adaptiveNavigationSuite)
implementation(libs.jetbrains.compose.material.iconsExtended)
implementation(libs.jetbrains.compose.ui)
implementation(libs.jetbrains.compose.ui.util)
implementation(libs.jetbrains.compose.components.resources)
implementation(libs.jetbrains.compose.uiToolingPreview)
implementation(libs.coil.compose)
implementation(libs.jetbrains.compose.material3.adaptive)
implementation(libs.jetbrains.compose.material3.adaptive.layout)

@ -30,13 +30,13 @@ import androidx.compose.ui.draw.drawWithCache
import androidx.compose.ui.geometry.Offset
import androidx.compose.ui.graphics.Brush
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.dp
import com.google.samples.apps.nowinandroid.core.designsystem.theme.GradientColors
import com.google.samples.apps.nowinandroid.core.designsystem.theme.LocalBackgroundTheme
import com.google.samples.apps.nowinandroid.core.designsystem.theme.LocalGradientColors
import com.google.samples.apps.nowinandroid.core.designsystem.theme.NiaTheme
import org.jetbrains.compose.ui.tooling.preview.Preview
import kotlin.math.PI
import kotlin.math.tan

@ -30,9 +30,9 @@ import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.platform.testTag
import androidx.compose.ui.tooling.preview.Preview
import com.google.samples.apps.nowinandroid.core.designsystem.icon.NiaIcons
import com.google.samples.apps.nowinandroid.core.designsystem.theme.NiaTheme
import org.jetbrains.compose.ui.tooling.preview.Preview
@OptIn(ExperimentalMaterial3Api::class)
@Composable

@ -29,10 +29,10 @@ import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import com.google.samples.apps.nowinandroid.core.designsystem.icon.NiaIcons
import com.google.samples.apps.nowinandroid.core.designsystem.theme.NiaTheme
import org.jetbrains.compose.ui.tooling.preview.Preview
/**
* Now in Android view toggle button with included trailing icon as well as compact and expanded

@ -36,9 +36,9 @@ kotlin {
api(projects.core.model)
implementation(libs.coil)
implementation(libs.coil.compose)
implementation(compose.material3)
implementation(compose.components.resources)
implementation(compose.components.uiToolingPreview)
implementation(libs.jetbrains.compose.material3)
implementation(libs.jetbrains.compose.components.resources)
implementation(libs.jetbrains.compose.components.uiToolingPreview)
}
androidInstrumentedTest.dependencies {
implementation(projects.core.testing)

@ -16,7 +16,7 @@
package com.google.samples.apps.nowinandroid.core.ui
import org.jetbrains.compose.ui.tooling.preview.Preview
import androidx.compose.ui.tooling.preview.Preview
/**
* Multipreview annotation that represents various device sizes. Add this annotation to a composable

@ -18,9 +18,9 @@
package com.google.samples.apps.nowinandroid.core.ui
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
import com.google.samples.apps.nowinandroid.core.model.data.FollowableTopic
import com.google.samples.apps.nowinandroid.core.model.data.Topic
import org.jetbrains.compose.ui.tooling.preview.PreviewParameterProvider
/**
* This [PreviewParameterProvider](https://developer.android.com/reference/kotlin/androidx/compose/ui/tooling/preview/PreviewParameterProvider)

@ -31,6 +31,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.semantics.selected
import androidx.compose.ui.semantics.semantics
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import coil3.ImageLoader
import coil3.compose.LocalPlatformContext
@ -42,7 +43,6 @@ import nowinandroid.core.ui.generated.resources.Res
import nowinandroid.core.ui.generated.resources.core_ui_interests_card_follow_button_content_desc
import nowinandroid.core.ui.generated.resources.core_ui_interests_card_unfollow_button_content_desc
import org.jetbrains.compose.resources.stringResource
import org.jetbrains.compose.ui.tooling.preview.Preview
@Composable
fun InterestsItem(

@ -24,12 +24,12 @@ import androidx.compose.foundation.lazy.staggeredgrid.StaggeredGridCells
import androidx.compose.foundation.lazy.staggeredgrid.items
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.unit.dp
import com.google.samples.apps.nowinandroid.core.analytics.LocalAnalyticsHelper
import com.google.samples.apps.nowinandroid.core.designsystem.theme.NiaTheme
import com.google.samples.apps.nowinandroid.core.model.data.UserNewsResource
import org.jetbrains.compose.ui.tooling.preview.Preview
import org.jetbrains.compose.ui.tooling.preview.PreviewParameter
/**
* An extension on [LazyListScope] defining a feed with news resources.

@ -53,6 +53,8 @@ import androidx.compose.ui.platform.testTag
import androidx.compose.ui.semantics.contentDescription
import androidx.compose.ui.semantics.onClick
import androidx.compose.ui.semantics.semantics
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.unit.dp
import coil3.ImageLoader
import coil3.compose.AsyncImagePainter
@ -77,8 +79,6 @@ import nowinandroid.core.ui.generated.resources.core_ui_topic_chip_content_descr
import nowinandroid.core.ui.generated.resources.core_ui_unbookmark
import nowinandroid.core.ui.generated.resources.core_ui_unread_resource_dot_content_description
import org.jetbrains.compose.resources.stringResource
import org.jetbrains.compose.ui.tooling.preview.Preview
import org.jetbrains.compose.ui.tooling.preview.PreviewParameter
/**
* [NewsResource] card used on the following screens: For You, Saved

@ -18,6 +18,7 @@
package com.google.samples.apps.nowinandroid.core.ui
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
import com.google.samples.apps.nowinandroid.core.model.data.DarkThemeConfig
import com.google.samples.apps.nowinandroid.core.model.data.NewsResource
import com.google.samples.apps.nowinandroid.core.model.data.ThemeBrand
@ -29,7 +30,6 @@ import kotlinx.datetime.Instant
import kotlinx.datetime.LocalDateTime
import kotlinx.datetime.TimeZone
import kotlinx.datetime.toInstant
import org.jetbrains.compose.ui.tooling.preview.PreviewParameterProvider
/**
* This [PreviewParameterProvider](https://developer.android.com/reference/kotlin/androidx/compose/ui/tooling/preview/PreviewParameterProvider)

@ -29,11 +29,11 @@ kotlin {
sourceSets {
commonMain.dependencies {
implementation(projects.core.data)
implementation(compose.material3)
implementation(compose.foundation)
implementation(compose.ui)
implementation(compose.components.resources)
implementation(compose.components.uiToolingPreview)
implementation(libs.jetbrains.compose.material3)
implementation(libs.jetbrains.compose.foundation)
implementation(libs.jetbrains.compose.ui)
implementation(libs.jetbrains.compose.components.resources)
implementation(libs.jetbrains.compose.uiToolingPreview)
implementation(libs.kotlinx.serialization.core)
}

@ -18,7 +18,6 @@ package com.google.samples.apps.nowinandroid.feature.bookmarks
import androidx.activity.ComponentActivity
import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.ui.platform.LocalLifecycleOwner
import androidx.compose.ui.test.assertCountEquals
import androidx.compose.ui.test.assertHasClickAction
import androidx.compose.ui.test.filter
@ -33,6 +32,7 @@ import androidx.compose.ui.test.onNodeWithText
import androidx.compose.ui.test.performClick
import androidx.compose.ui.test.performScrollToNode
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.compose.LocalLifecycleOwner
import androidx.lifecycle.testing.TestLifecycleOwner
import com.google.samples.apps.nowinandroid.core.testing.data.userNewsResourcesTestData
import com.google.samples.apps.nowinandroid.core.ui.NewsFeedUiState

@ -49,13 +49,15 @@ import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.ColorFilter
import androidx.compose.ui.platform.LocalLifecycleOwner
import androidx.compose.ui.platform.testTag
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.unit.dp
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.LifecycleEventObserver
import androidx.lifecycle.compose.LocalLifecycleOwner
import androidx.lifecycle.viewmodel.compose.viewModel
import com.google.samples.apps.nowinandroid.core.designsystem.component.NiaLoadingWheel
import com.google.samples.apps.nowinandroid.core.designsystem.component.scrollbar.DraggableScrollbar
@ -80,8 +82,6 @@ import nowinandroid.feature.bookmarks.generated.resources.feature_bookmarks_remo
import nowinandroid.feature.bookmarks.generated.resources.feature_bookmarks_undo
import org.jetbrains.compose.resources.painterResource
import org.jetbrains.compose.resources.stringResource
import org.jetbrains.compose.ui.tooling.preview.Preview
import org.jetbrains.compose.ui.tooling.preview.PreviewParameter
import org.koin.compose.viewmodel.koinViewModel
@Composable

@ -32,11 +32,11 @@ kotlin {
implementation(projects.core.data)
implementation(projects.core.domain)
implementation(projects.core.notifications)
implementation(compose.material3)
implementation(compose.foundation)
implementation(compose.ui)
implementation(compose.components.resources)
implementation(compose.components.uiToolingPreview)
implementation(libs.jetbrains.compose.material3)
implementation(libs.jetbrains.compose.foundation)
implementation(libs.jetbrains.compose.ui)
implementation(libs.jetbrains.compose.components.resources)
implementation(libs.jetbrains.compose.uiToolingPreview)
implementation(libs.coil)
implementation(libs.coil.compose)
implementation(libs.kotlinx.serialization.core)

@ -66,6 +66,7 @@ import androidx.compose.ui.layout.layout
import androidx.compose.ui.platform.LocalDensity
import androidx.compose.ui.platform.testTag
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.max
import androidx.compose.ui.unit.sp
@ -94,7 +95,6 @@ import nowinandroid.feature.foryou.generated.resources.feature_foryou_loading
import nowinandroid.feature.foryou.generated.resources.feature_foryou_onboarding_guidance_subtitle
import nowinandroid.feature.foryou.generated.resources.feature_foryou_onboarding_guidance_title
import org.jetbrains.compose.resources.stringResource
import org.jetbrains.compose.ui.tooling.preview.PreviewParameter
import org.koin.compose.viewmodel.koinViewModel
@Composable

@ -30,11 +30,11 @@ kotlin {
implementation(projects.core.data)
implementation(projects.core.domain)
implementation(projects.core.ui)
implementation(compose.material3)
implementation(compose.foundation)
implementation(compose.ui)
implementation(compose.components.resources)
implementation(compose.components.uiToolingPreview)
implementation(libs.jetbrains.compose.material3)
implementation(libs.jetbrains.compose.foundation)
implementation(libs.jetbrains.compose.ui)
implementation(libs.jetbrains.compose.components.resources)
implementation(libs.jetbrains.compose.uiToolingPreview)
implementation(libs.kotlinx.serialization.core)
}
commonTest.dependencies {

@ -22,6 +22,7 @@ import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.PreviewParameter
import com.google.samples.apps.nowinandroid.core.designsystem.component.NiaBackground
import com.google.samples.apps.nowinandroid.core.designsystem.component.NiaLoadingWheel
import com.google.samples.apps.nowinandroid.core.designsystem.theme.NiaTheme
@ -34,7 +35,6 @@ import nowinandroid.feature.interests.generated.resources.Res
import nowinandroid.feature.interests.generated.resources.feature_interests_empty_header
import nowinandroid.feature.interests.generated.resources.feature_interests_loading
import org.jetbrains.compose.resources.stringResource
import org.jetbrains.compose.ui.tooling.preview.PreviewParameter
import org.koin.compose.viewmodel.koinViewModel
@Composable

@ -31,11 +31,11 @@ kotlin {
implementation(projects.core.data)
implementation(projects.core.domain)
implementation(projects.core.ui)
implementation(compose.material3)
implementation(compose.foundation)
implementation(compose.ui)
implementation(compose.components.resources)
implementation(compose.components.uiToolingPreview)
implementation(libs.jetbrains.compose.material3)
implementation(libs.jetbrains.compose.foundation)
implementation(libs.jetbrains.compose.ui)
implementation(libs.jetbrains.compose.components.resources)
implementation(libs.jetbrains.compose.uiToolingPreview)
}
commonTest.dependencies {
implementation(projects.core.testing)

@ -74,6 +74,8 @@ import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.text.style.TextDecoration
import androidx.compose.ui.text.withLink
import androidx.compose.ui.text.withStyle
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.unit.dp
import com.google.samples.apps.nowinandroid.core.designsystem.component.scrollbar.DraggableScrollbar
import com.google.samples.apps.nowinandroid.core.designsystem.component.scrollbar.rememberDraggableScroller
@ -101,8 +103,6 @@ import nowinandroid.feature.search.generated.resources.feature_search_topics
import nowinandroid.feature.search.generated.resources.feature_search_try_another_search
import nowinandroid.feature.search.generated.resources.feature_search_updates
import org.jetbrains.compose.resources.stringResource
import org.jetbrains.compose.ui.tooling.preview.Preview
import org.jetbrains.compose.ui.tooling.preview.PreviewParameter
import org.koin.compose.viewmodel.koinViewModel
import nowinandroid.core.ui.generated.resources.Res as uiR
import nowinandroid.feature.search.generated.resources.Res as searchR

@ -18,10 +18,10 @@
package com.google.samples.apps.nowinandroid.feature.search
import androidx.compose.ui.tooling.preview.PreviewParameterProvider
import com.google.samples.apps.nowinandroid.core.model.data.FollowableTopic
import com.google.samples.apps.nowinandroid.core.ui.PreviewParameterData.newsResources
import com.google.samples.apps.nowinandroid.core.ui.PreviewParameterData.topics
import org.jetbrains.compose.ui.tooling.preview.PreviewParameterProvider
/**
* This [PreviewParameterProvider](https://developer.android.com/reference/kotlin/androidx/compose/ui/tooling/preview/PreviewParameterProvider)

@ -28,11 +28,11 @@ kotlin {
commonMain.dependencies {
implementation(projects.core.data)
implementation(projects.core.ui)
implementation(compose.material3)
implementation(compose.foundation)
implementation(compose.ui)
implementation(compose.components.resources)
implementation(compose.components.uiToolingPreview)
implementation(libs.jetbrains.compose.material3)
implementation(libs.jetbrains.compose.foundation)
implementation(libs.jetbrains.compose.ui)
implementation(libs.jetbrains.compose.components.resources)
implementation(libs.jetbrains.compose.uiToolingPreview)
}
commonTest.dependencies {
implementation(projects.core.testing)

@ -45,6 +45,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalUriHandler
import androidx.compose.ui.platform.LocalViewConfiguration
import androidx.compose.ui.semantics.Role
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.compose.ui.window.DialogProperties
import com.google.samples.apps.nowinandroid.core.designsystem.component.NiaTextButton
@ -80,7 +81,6 @@ import nowinandroid.feature.settings.generated.resources.feature_settings_privac
import nowinandroid.feature.settings.generated.resources.feature_settings_theme
import nowinandroid.feature.settings.generated.resources.feature_settings_title
import org.jetbrains.compose.resources.stringResource
import org.jetbrains.compose.ui.tooling.preview.Preview
import org.koin.compose.viewmodel.koinViewModel
@Composable

@ -32,11 +32,11 @@ kotlin {
implementation(libs.coil)
implementation(libs.coil.compose)
implementation(libs.kotlinx.serialization.core)
implementation(compose.material3)
implementation(compose.foundation)
implementation(compose.ui)
implementation(compose.components.resources)
implementation(compose.components.uiToolingPreview)
implementation(libs.jetbrains.compose.material3)
implementation(libs.jetbrains.compose.foundation)
implementation(libs.jetbrains.compose.ui)
implementation(libs.jetbrains.compose.components.resources)
implementation(libs.jetbrains.compose.uiToolingPreview)
}
commonTest.dependencies {
implementation(projects.core.testing)

@ -28,6 +28,7 @@ import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import com.google.samples.apps.nowinandroid.core.designsystem.theme.NiaTheme
import nowinandroid.feature.topic.generated.resources.Res
@ -35,7 +36,6 @@ import nowinandroid.feature.topic.generated.resources.feature_topic_ic_topic_pla
import nowinandroid.feature.topic.generated.resources.feature_topic_select_an_interest
import org.jetbrains.compose.resources.painterResource
import org.jetbrains.compose.resources.stringResource
import org.jetbrains.compose.ui.tooling.preview.Preview
@Composable
fun TopicDetailPlaceholder(modifier: Modifier = Modifier) {

@ -46,6 +46,8 @@ import androidx.compose.runtime.getValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.testTag
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.tooling.preview.PreviewParameter
import androidx.compose.ui.unit.dp
import coil3.ImageLoader
import coil3.compose.LocalPlatformContext
@ -69,8 +71,6 @@ import nowinandroid.core.ui.generated.resources.core_ui_back
import nowinandroid.feature.topic.generated.resources.Res
import nowinandroid.feature.topic.generated.resources.feature_topic_loading
import org.jetbrains.compose.resources.stringResource
import org.jetbrains.compose.ui.tooling.preview.Preview
import org.jetbrains.compose.ui.tooling.preview.PreviewParameter
import org.koin.compose.viewmodel.koinViewModel
@Composable

@ -29,11 +29,11 @@ androidxWork = "2.10.0"
coil = "3.2.0"
dependencyGuard = "0.5.0"
jacoco = "0.8.12"
kotlin = "2.3.0"
kotlin = "2.3.10"
kotlinxCoroutines = "1.10.2"
kotlinxDatetime = "0.6.1"
kotlinxSerializationJson = "1.8.0"
ksp = "2.3.0"
ksp = "2.3.5"
logback = "1.5.15"
material3adaptive = "1.1.0"
moduleGraph = "2.7.1"
@ -50,6 +50,8 @@ androidx-material = "1.12.0"
androidx-test-junit = "1.2.1"
compose-ui-tooling = "1.8.1"
compose-plugin = "1.10.0"
compose-jb = "1.10.0"
compose-jb-material3 = "1.10.0-alpha05"
sqldelight = "2.0.2"
kotlinInject = "0.8.0"
multiplatform-settings = "1.3.0"
@ -180,6 +182,19 @@ jetbrains-compose-navigation = { group = "org.jetbrains.androidx.navigation", na
jetbrains-compose-material3-adaptive = { group = "org.jetbrains.compose.material3.adaptive", name = "adaptive", version.ref = "material3adaptive" }
jetbrains-compose-material3-adaptive-layout = { group = "org.jetbrains.compose.material3.adaptive", name = "adaptive-layout", version.ref = "material3adaptive" }
jetbrains-compose-material3-adaptive-navigation = { group = "org.jetbrains.compose.material3.adaptive", name = "adaptive-navigation", version.ref = "material3adaptive" }
jetbrains-compose-runtime = { module = "org.jetbrains.compose.runtime:runtime", version.ref = "compose-jb" }
jetbrains-compose-foundation = { module = "org.jetbrains.compose.foundation:foundation", version.ref = "compose-jb" }
jetbrains-compose-material = { module = "org.jetbrains.compose.material:material", version.ref = "compose-jb" }
jetbrains-compose-material3 = { module = "org.jetbrains.compose.material3:material3", version.ref = "compose-jb-material3" }
jetbrains-compose-material3-adaptiveNavigationSuite = { module = "org.jetbrains.compose.material3:material3-adaptive-navigation-suite", version.ref = "compose-jb-material3" }
jetbrains-compose-material-iconsExtended = { module = "org.jetbrains.compose.material:material-icons-extended", version = "1.7.3" }
jetbrains-compose-ui = { module = "org.jetbrains.compose.ui:ui", version.ref = "compose-jb" }
jetbrains-compose-ui-util = { module = "org.jetbrains.compose.ui:ui-util", version.ref = "compose-jb" }
jetbrains-compose-uiTooling = { module = "org.jetbrains.compose.ui:ui-tooling", version.ref = "compose-jb" }
jetbrains-compose-uiToolingPreview = { module = "org.jetbrains.compose.ui:ui-tooling-preview", version.ref = "compose-jb" }
jetbrains-compose-ui-test-junit4 = { module = "org.jetbrains.compose.ui:ui-test-junit4", version.ref = "compose-jb" }
jetbrains-compose-components-resources = { module = "org.jetbrains.compose.components:components-resources", version.ref = "compose-jb" }
jetbrains-compose-components-uiToolingPreview = { module = "org.jetbrains.compose.components:components-ui-tooling-preview", version.ref = "compose-jb" }
# Dependencies of the included build-logic
android-gradlePlugin = { group = "com.android.tools.build", name = "gradle", version.ref = "androidGradlePlugin" }

@ -40,7 +40,7 @@ kotlin {
api(projects.core.analytics)
api(projects.core.notifications)
api(projects.sync.work)
api(compose.components.resources)
api(libs.jetbrains.compose.components.resources)
}
commonTest.dependencies {
implementation(projects.core.testing)

Loading…
Cancel
Save