diff --git a/solution/app/build.gradle.kts b/solution/app/build.gradle.kts index 3504d40..10d3035 100644 --- a/solution/app/build.gradle.kts +++ b/solution/app/build.gradle.kts @@ -94,11 +94,12 @@ dependencies { implementation(kotlin("reflect")) // Google Maps Compose library - implementation("com.google.maps.android:maps-compose:4.4.0") + val mapsComposeVersion = "4.4.1" + implementation("com.google.maps.android:maps-compose:$mapsComposeVersion") // Google Maps Compose utility library - implementation("com.google.maps.android:maps-compose-utils:4.4.0") + implementation("com.google.maps.android:maps-compose-utils:$mapsComposeVersion") // Google Maps Compose widgets library - implementation("com.google.maps.android:maps-compose-widgets:4.4.0") + implementation("com.google.maps.android:maps-compose-widgets:$mapsComposeVersion") } secrets { diff --git a/starter/app/build.gradle.kts b/starter/app/build.gradle.kts index c325e09..7c2641d 100644 --- a/starter/app/build.gradle.kts +++ b/starter/app/build.gradle.kts @@ -3,6 +3,7 @@ plugins { id("org.jetbrains.kotlin.android") kotlin("kapt") id("com.google.dagger.hilt.android") + // TODO: Add the secrets plugin } android { @@ -64,10 +65,10 @@ kapt { dependencies { - implementation("androidx.core:core-ktx:1.12.0") + implementation("androidx.core:core-ktx:1.13.0") implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.7.0") - implementation("androidx.activity:activity-compose:1.8.2") - implementation(platform("androidx.compose:compose-bom:2024.03.00")) + implementation("androidx.activity:activity-compose:1.9.0") + implementation(platform("androidx.compose:compose-bom:2024.04.01")) implementation("androidx.compose.ui:ui") implementation("androidx.compose.ui:ui-graphics") implementation("androidx.compose.ui:ui-tooling-preview") @@ -80,7 +81,7 @@ dependencies { androidTestImplementation("androidx.test.ext:junit:1.1.5") androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1") - androidTestImplementation(platform("androidx.compose:compose-bom:2024.03.00")) + androidTestImplementation(platform("androidx.compose:compose-bom:2024.04.01")) androidTestImplementation("androidx.compose.ui:ui-test-junit4") debugImplementation("androidx.compose.ui:ui-tooling") @@ -99,4 +100,6 @@ dependencies { implementation("com.google.maps.android:maps-ktx:5.0.0") // KTX for the Maps SDK for Android Utility Library implementation("com.google.maps.android:maps-utils-ktx:5.0.0") -} \ No newline at end of file +} + +// TODO: configure the secrets property \ No newline at end of file diff --git a/starter/app/src/main/AndroidManifest.xml b/starter/app/src/main/AndroidManifest.xml index 14e4b23..6928ac9 100644 --- a/starter/app/src/main/AndroidManifest.xml +++ b/starter/app/src/main/AndroidManifest.xml @@ -13,6 +13,9 @@ android:supportsRtl="true" android:theme="@style/Theme.MountainMarkers" tools:targetApi="31"> + + + , onMountainClick: (Marker) -> Boolean = { false }, ) { + // TODO: Create custom [PinConfig]s for fourteeners and for other mountains + + // TODO: Create AdvancedMarkers from each of the mountains } diff --git a/starter/app/src/main/java/com/example/mountainmarkers/presentation/BasicMarkersMapContent.kt b/starter/app/src/main/java/com/example/mountainmarkers/presentation/BasicMarkersMapContent.kt index 9b03e7b..56fc02c 100644 --- a/starter/app/src/main/java/com/example/mountainmarkers/presentation/BasicMarkersMapContent.kt +++ b/starter/app/src/main/java/com/example/mountainmarkers/presentation/BasicMarkersMapContent.kt @@ -22,9 +22,13 @@ import com.google.android.gms.maps.model.Marker /** * [GoogleMapComposable] which renders a [MountainList] as a set of basic [Marker]s */ +// TODO: Add @GoogleMapComposable annotation @Composable fun BasicMarkersMapContent( mountains: List, onMountainClick: (Marker) -> Boolean = { false } ) { + // TODO: Create custom icons for fourteeners and for other mountains + + // TODO: Create Markers from each of the mountains } diff --git a/starter/app/src/main/java/com/example/mountainmarkers/presentation/ClusteringMarkersMapContent.kt b/starter/app/src/main/java/com/example/mountainmarkers/presentation/ClusteringMarkersMapContent.kt index f0506e6..90d8175 100644 --- a/starter/app/src/main/java/com/example/mountainmarkers/presentation/ClusteringMarkersMapContent.kt +++ b/starter/app/src/main/java/com/example/mountainmarkers/presentation/ClusteringMarkersMapContent.kt @@ -20,13 +20,23 @@ import com.example.mountainmarkers.presentation.MountainsScreenViewState.Mountai import com.google.maps.android.clustering.Cluster import com.google.maps.android.clustering.ClusterItem +// TODO: Create data class MountainClusterItem which implements a [ClusterItem] + +// TODO: Create data class IconColor + /** * [GoogleMapComposable] which renders a [MountainList] using the [Clustering] composable */ +// TODO: Add @GoogleMapComposable annotation @Composable fun ClusteringMarkersMapContent( mountains: List, onClusterClick: (Cluster) -> Boolean = { false }, onMountainClick: (ClusterItem) -> Boolean = { false }, ) { + // TODO: Create color schemes for fourteeners and non-fourteeners + + // TODO: Create mountainClusterItems from each of the mountains } + +// TODO: Create SingleMountain composable to render a customized icon for an individual mountain \ No newline at end of file diff --git a/starter/build.gradle.kts b/starter/build.gradle.kts index 65f9e9e..885eb9e 100644 --- a/starter/build.gradle.kts +++ b/starter/build.gradle.kts @@ -7,6 +7,6 @@ plugins { buildscript { dependencies { - + // TODO: Add the secrets plugin to the buildscript dependencies } }