expandEnter/collapseExit (revealable sections), itemEnter (resolved content), animateItemMotion (lazy-list relayout) and fadeThrough — all driven by the M3 Expressive motion scheme and honouring rememberReduceMotion. Drawn from Calendula's motion helpers. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
43 lines
1.2 KiB
Kotlin
43 lines
1.2 KiB
Kotlin
// identity — the family's Material 3 Expressive theme factory + shared motion.
|
|
// Holds the theme MECHANICS (dynamic-colour resolution, light/dark, the STANDARD
|
|
// motion scheme) and the nav slide spec; each app supplies its own seed-derived
|
|
// colour schemes, so the look stays per-app while the machinery is shared.
|
|
plugins {
|
|
alias(libs.plugins.android.library)
|
|
alias(libs.plugins.kotlin.compose)
|
|
}
|
|
|
|
android {
|
|
namespace = "de.jeanlucmakiola.floret.identity"
|
|
compileSdk = 37
|
|
|
|
defaultConfig {
|
|
minSdk = 29
|
|
}
|
|
|
|
compileOptions {
|
|
sourceCompatibility = JavaVersion.VERSION_17
|
|
targetCompatibility = JavaVersion.VERSION_17
|
|
}
|
|
|
|
buildFeatures {
|
|
compose = true
|
|
}
|
|
}
|
|
|
|
kotlin {
|
|
compilerOptions {
|
|
jvmTarget = org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation(platform(libs.androidx.compose.bom))
|
|
implementation(libs.androidx.ui)
|
|
implementation(libs.androidx.foundation)
|
|
implementation(libs.androidx.material3)
|
|
implementation(libs.androidx.animation)
|
|
// activity-compose for PredictiveBackHandler + BackEventCompat (the back-gesture peek).
|
|
implementation(libs.androidx.activity.compose)
|
|
}
|