diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 8247bdc..153e5da 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -74,43 +74,62 @@ dependencies { debugImplementation(libs.ui.tooling) debugImplementation(libs.ui.test.manifest) - - //-- Navigation val nav_version = "2.5.3" + // Java language implementation + implementation("androidx.navigation:navigation-fragment:$nav_version") + implementation("androidx.navigation:navigation-ui:$nav_version") + + // Kotlin implementation("androidx.navigation:navigation-fragment-ktx:$nav_version") implementation("androidx.navigation:navigation-ui-ktx:$nav_version") + + // Feature module Support implementation("androidx.navigation:navigation-dynamic-features-fragment:$nav_version") + + // Testing Navigation androidTestImplementation("androidx.navigation:navigation-testing:$nav_version") + + // Jetpack Compose Integration implementation("androidx.navigation:navigation-compose:$nav_version") + val room_version = "2.5.1" + + implementation("androidx.room:room-runtime:$room_version") + annotationProcessor("androidx.room:room-compiler:$room_version") - //-- Room // To use Kotlin annotation processing tool (kapt) //kapt("androidx.room:room-compiler:$room_version") // To use Kotlin Symbol Processing (KSP) - val room_version = "2.5.1" - ksp("androidx.room:room-compiler:$room_version") - annotationProcessor("androidx.room:room-compiler:$room_version") - implementation("androidx.room:room-runtime:$room_version") + + // optional - Kotlin Extensions and Coroutines support for Room implementation("androidx.room:room-ktx:$room_version") + + // optional - Guava support for Room, including Optional and ListenableFuture implementation("androidx.room:room-guava:$room_version") + + // optional - Test helpers testImplementation("androidx.room:room-testing:$room_version") + + // optional - Paging 3 Integration implementation("androidx.room:room-paging:$room_version") + implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.0") - //-- Ktor + + // Ktor val ktor_version = "2.3.1" implementation("io.ktor:ktor-client-core:$ktor_version") implementation("io.ktor:ktor-client-cio:$ktor_version") - implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.5.0") + implementation(platform("dev.forkhandles:forkhandles-bom:2.6.0.0")) implementation("dev.forkhandles:result4k") + implementation("io.ktor:ktor-client-core:2.3.1") implementation("io.ktor:ktor-client-okhttp:2.3.1") - implementation("androidx.security:security-crypto-ktx:1.1.0-alpha06") + implementation("androidx.security:security-crypto-ktx:1.1.0-alpha06") // For Identity Credential APIs implementation("androidx.security:security-identity-credential:1.0.0-alpha03") @@ -124,14 +143,10 @@ dependencies { implementation("org.jetbrains.kotlinx:kotlinx-datetime:0.4.0") - - //-- Map Compose library + // Map Compose library implementation("ovh.plrapps:mapcompose:2.7.1") - - //-- Glide - implementation("com.github.bumptech.glide:glide:4.14.2") + // Glide + implementation ("com.github.bumptech.glide:glide:4.14.2") implementation("com.github.bumptech.glide:compose:1.0.0-alpha.1") - - -} \ No newline at end of file + } \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/MainActivity.kt b/app/src/main/java/ru/nm17/narodmon/MainActivity.kt index fb62ffc..a40a85b 100644 --- a/app/src/main/java/ru/nm17/narodmon/MainActivity.kt +++ b/app/src/main/java/ru/nm17/narodmon/MainActivity.kt @@ -1,16 +1,28 @@ - +@file:OptIn( + ExperimentalMaterial3Api::class, ExperimentalMaterial3Api::class, + ExperimentalMaterial3Api::class +) package ru.nm17.narodmon +import android.content.pm.ApplicationInfo import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent +import androidx.compose.foundation.Image import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.padding +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.Person +import androidx.compose.material.icons.rounded.Add +import androidx.compose.material.icons.rounded.Menu +import androidx.compose.material3.BottomAppBar import androidx.compose.material3.CircularProgressIndicator import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.FloatingActionButton import androidx.compose.material3.Scaffold import androidx.compose.material3.Text import androidx.compose.runtime.Composable @@ -22,17 +34,65 @@ import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import androidx.navigation.compose.NavHost +import androidx.navigation.compose.composable +import androidx.navigation.compose.rememberNavController import androidx.room.Room +import androidx.security.crypto.EncryptedSharedPreferences +import androidx.security.crypto.MasterKeys import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch import ru.nm17.narodmon.db.AppDatabase import ru.nm17.narodmon.db.entities.KVSetting import ru.nm17.narodmon.ui.dialogs.AgreementDialog -import ru.nm17.narodmon.ui.navHost.AppNavHost +import ru.nm17.narodmon.ui.dialogs.UuidDialog +import ru.nm17.narodmon.ui.sensorsScreen.SensorsScreen import ru.nm17.narodmon.ui.theme.NarodMonTheme +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun AppNavHost() { + val navController = rememberNavController() + val coScope = rememberCoroutineScope() + NavHost(navController = navController, startDestination = "sensors") { + composable("agreement") { + + } + + composable("sensors") { + Scaffold(bottomBar = { + BottomAppBar(actions = { + Image( + Icons.Rounded.Menu, + contentDescription = null + ) + }, floatingActionButton = { + FloatingActionButton(onClick = { /*TODO*/ }) { + Image( + Icons.Rounded.Add, + contentDescription = "" + ) + } + }, + contentPadding = PaddingValues(start = 16.dp) + ) + }) { + Column(modifier = Modifier.padding(it)) { + SensorsScreen(navController) + } + } + + } + } + + /*...*/ + +} + class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -65,6 +125,10 @@ class MainActivity : ComponentActivity() { NarodMonTheme { var agreed by remember { mutableStateOf(true) } + var uuid: String? by remember { mutableStateOf(null) } + val debug = remember { + 0 != applicationInfo.flags and ApplicationInfo.FLAG_DEBUGGABLE + } LaunchedEffect(key1 = Unit, block = { coScope.launch(Dispatchers.IO) { @@ -74,7 +138,7 @@ class MainActivity : ComponentActivity() { } }) - if (!agreed) { + if (!agreed && !debug) { Scaffold { AgreementDialog { coScope.launch(Dispatchers.IO) { @@ -93,9 +157,30 @@ class MainActivity : ComponentActivity() { Text(text = stringResource(R.string.waiting_for_user_agreement)) } } - } else { + } + else if (debug && uuid == null) { + Scaffold { + UuidDialog { uuidNew -> + uuid = uuidNew + } + Column( + horizontalAlignment = Alignment.CenterHorizontally, + verticalArrangement = Arrangement.Center, + modifier = Modifier + .fillMaxSize() + .padding(it) + ) { + CircularProgressIndicator() + Text(text = "") + } + } + } + else { AppNavHost() } + + // A surface container using the 'background' color from the theme + } } } diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/SensorEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/SensorEntity.kt deleted file mode 100644 index 438c953..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/SensorEntity.kt +++ /dev/null @@ -1,16 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities - - -data class SensorEntity( - val changed: Int, - val fav: Int, - val id: Int, - val mac: String, - val name: String, - val pub: Int, - val time: Int, - val trend: Int, - val type: Int, - val unit: String, - val value: Double -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/addLike/AddLikeRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/addLike/AddLikeRequestEntity.kt deleted file mode 100644 index a755a22..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/addLike/AddLikeRequestEntity.kt +++ /dev/null @@ -1,8 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.addLike - -data class AddLikeRequestEntity( - val api_key: String, - val cmd: String, - val id: Int, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/addLike/AddLikeResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/addLike/AddLikeResponseEntity.kt deleted file mode 100644 index a70ff7e..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/addLike/AddLikeResponseEntity.kt +++ /dev/null @@ -1,7 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.addLike - -data class AddLikeResponseEntity( - val id: Int, - val liked: Int, - val time: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/appInit/AppInitRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/appInit/AppInitRequestEntity.kt deleted file mode 100644 index 85c311f..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/appInit/AppInitRequestEntity.kt +++ /dev/null @@ -1,11 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.appInit - -data class AppInitRequestEntity( - val api_key: String, - val cmd: String, - val lang: String, - val platform: String, - val utc: Int, - val uuid: String, - val version: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/appInit/AppInitResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/appInit/AppInitResponseEntity.kt deleted file mode 100644 index 563bc0b..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/appInit/AppInitResponseEntity.kt +++ /dev/null @@ -1,14 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.appInit - -data class AppInitResponseEntity( - val addr: String, - val favorites: List, - val lat: Double, - val latest: String, - val login: String, - val lon: Double, - val timestamp: Int, - val types: List, - val url: String, - val vip: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/appInit/AppInitTypeEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/appInit/AppInitTypeEntity.kt deleted file mode 100644 index d04303b..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/appInit/AppInitTypeEntity.kt +++ /dev/null @@ -1,7 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.appInit - -data class AppInitTypeEntity( - val name: String, - val type: Int, - val unit: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/bugReport/BugReportRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/bugReport/BugReportRequestEntity.kt deleted file mode 100644 index bb3fabb..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/bugReport/BugReportRequestEntity.kt +++ /dev/null @@ -1,12 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.bugReport - -data class BugReportRequestEntity( - val api_key: String, - val cmd: String, - val email: String, - val logs: String, - val mess: String, - val name: String, - val time: Int, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/disLike/DisLikeRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/disLike/DisLikeRequestEntity.kt deleted file mode 100644 index 0066457..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/disLike/DisLikeRequestEntity.kt +++ /dev/null @@ -1,8 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.disLike - -data class DisLikeRequestEntity( - val api_key: String, - val cmd: String, - val id: Int, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/disLike/DisLikeResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/disLike/DisLikeResponseEntity.kt deleted file mode 100644 index 4d863e2..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/disLike/DisLikeResponseEntity.kt +++ /dev/null @@ -1,7 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.disLike - -data class DisLikeResponseEntity( - val id: Int, - val liked: Int, - val time: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/mapBounds/MapBoundsDeviceEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/mapBounds/MapBoundsDeviceEntity.kt deleted file mode 100644 index cab15fa..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/mapBounds/MapBoundsDeviceEntity.kt +++ /dev/null @@ -1,12 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.mapBounds - -data class MapBoundsDeviceEntity( - val id: Int, - val lat: Double, - val lon: Double, - val name: String, - val time: Int, - val type: Int, - val unit: String, - val value: Double -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/mapBounds/MapBoundsRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/mapBounds/MapBoundsRequestEntity.kt deleted file mode 100644 index 14b1dad..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/mapBounds/MapBoundsRequestEntity.kt +++ /dev/null @@ -1,10 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.mapBounds - -data class MapBoundsRequestEntity( - val api_key: String, - val bounds: List, - val cmd: String, - val lang: String, - val limit: Int, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/mapBounds/MapBoundsResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/mapBounds/MapBoundsResponseEntity.kt deleted file mode 100644 index b14d742..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/mapBounds/MapBoundsResponseEntity.kt +++ /dev/null @@ -1,6 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.mapBounds - -data class MapBoundsResponseEntity( - val devices: List, - val webcams: List -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/mapBounds/MapBoundsWebcamEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/mapBounds/MapBoundsWebcamEntity.kt deleted file mode 100644 index 3a3f613..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/mapBounds/MapBoundsWebcamEntity.kt +++ /dev/null @@ -1,10 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.mapBounds - -data class MapBoundsWebcamEntity( - val id: Int, - val image: String, - val lat: Double, - val lon: Double, - val name: String, - val time: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/nameSensor/NameSensorRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/nameSensor/NameSensorRequestEntity.kt deleted file mode 100644 index 3dc5ebe..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/nameSensor/NameSensorRequestEntity.kt +++ /dev/null @@ -1,9 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.nameSensor - -data class NameSensorRequestEntity( - val api_key: String, - val cmd: String, - val id: Int, - val name: String, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/pubSensor/PubSensorRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/pubSensor/PubSensorRequestEntity.kt deleted file mode 100644 index 024c610..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/pubSensor/PubSensorRequestEntity.kt +++ /dev/null @@ -1,8 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.pubSensor - -data class PubSensorRequestEntity( - val api_key: String, - val cmd: String, - val id: Int, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/pubSensor/PubSensorResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/pubSensor/PubSensorResponseEntity.kt deleted file mode 100644 index ea4a731..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/pubSensor/PubSensorResponseEntity.kt +++ /dev/null @@ -1,6 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.pubSensor - -data class PubSensorResponseEntity( - val code: Int, - val id: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sendCommand/SendCommandRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sendCommand/SendCommandRequestEntity.kt deleted file mode 100644 index a57b0ca..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sendCommand/SendCommandRequestEntity.kt +++ /dev/null @@ -1,9 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sendCommand - -data class SendCommandRequestEntity( - val api_key: String, - val cmd: String, - val command: String, - val id: Int, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sendComplaint/SendComplaintRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sendComplaint/SendComplaintRequestEntity.kt deleted file mode 100644 index ea19abe..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sendComplaint/SendComplaintRequestEntity.kt +++ /dev/null @@ -1,13 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sendComplaint - -data class SendComplaintRequestEntity( - val api_key: String, - val cmd: String, - val email: String, - val id: Int, - val name: String, - val problem: String, - val time: Int, - val uuid: String, - val value: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sendMessage/SendMessageRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sendMessage/SendMessageRequestEntity.kt deleted file mode 100644 index 376e59e..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sendMessage/SendMessageRequestEntity.kt +++ /dev/null @@ -1,12 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sendMessage - -data class SendMessageRequestEntity( - val api_key: String, - val cmd: String, - val email: String, - val mess: String, - val name: String, - val subj: String, - val uid: Int, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsHistory/HistoryDataEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsHistory/HistoryDataEntity.kt deleted file mode 100644 index 5b8d10b..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsHistory/HistoryDataEntity.kt +++ /dev/null @@ -1,7 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sensorsHistory - -data class HistoryDataEntity( - val id: Int, - val time: Int, - val value: Double -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsHistory/HistorySensorEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsHistory/HistorySensorEntity.kt deleted file mode 100644 index 9552e72..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsHistory/HistorySensorEntity.kt +++ /dev/null @@ -1,8 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sensorsHistory - -data class HistorySensorEntity( - val id: Int, - val name: String, - val type: Int, - val unit: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsHistory/SensorsHistoryRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsHistory/SensorsHistoryRequestEntity.kt deleted file mode 100644 index ae1cd97..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsHistory/SensorsHistoryRequestEntity.kt +++ /dev/null @@ -1,10 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sensorsHistory - -data class SensorsHistoryRequestEntity( - val api_key: String, - val cmd: String, - val id: Int, - val offset: Int, - val period: String, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsHistory/SensorsHistoryResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsHistory/SensorsHistoryResponseEntity.kt deleted file mode 100644 index d3290de..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsHistory/SensorsHistoryResponseEntity.kt +++ /dev/null @@ -1,6 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sensorsHistory - -data class SensorsHistoryResponseEntity( - val `data`: List, - val sensors: List -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsNearby/NearbyDeviceEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsNearby/NearbyDeviceEntity.kt deleted file mode 100644 index 3966c5b..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsNearby/NearbyDeviceEntity.kt +++ /dev/null @@ -1,19 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sensorsNearby - -import ru.nm17.narodmon.appNarodMonApiClient.entities.SensorEntity - - -data class NearbyDeviceEntity( - val cmd: Int, - val distance: Double, - val id: Int, - val lat: Double, - val location: String, - val lon: Double, - val mac: String, - val my: Int, - val name: String, - val owner: String, - val sensors: List, - val time: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsNearby/SensorsNearbyRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsNearby/SensorsNearbyRequestEntity.kt deleted file mode 100644 index 3f7b7a8..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsNearby/SensorsNearbyRequestEntity.kt +++ /dev/null @@ -1,12 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sensorsNearby - -data class SensorsNearbyRequestEntity( - val api_key: String, - val cmd: String, - val lang: String, - val lat: Double, - val lon: Double, - val radius: Int, - val types: List, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsNearby/SensorsNearbyResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsNearby/SensorsNearbyResponseEntity.kt deleted file mode 100644 index 1417fa2..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsNearby/SensorsNearbyResponseEntity.kt +++ /dev/null @@ -1,5 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sensorsNearby - -data class SensorsNearbyResponseEntity( - val devices: List -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsOnDevice/SensorOnDeviceEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsOnDevice/SensorOnDeviceEntity.kt deleted file mode 100644 index 3c223f2..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsOnDevice/SensorOnDeviceEntity.kt +++ /dev/null @@ -1,19 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sensorsOnDevice - -import ru.nm17.narodmon.ui.entities.SensorEntity - -data class SensorOnDeviceEntity( - val cmd: Int, - val distance: Double, - val id: Int, - val info: String, - val location: String, - val mac: String, - val my: Int, - val name: String, - val owner: String, - val photo: String, - val sensors: List, - val site: String, - val time: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsOnDevice/SensorsOnDeviceRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsOnDevice/SensorsOnDeviceRequestEntity.kt deleted file mode 100644 index 1c9a0ca..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsOnDevice/SensorsOnDeviceRequestEntity.kt +++ /dev/null @@ -1,9 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sensorsOnDevice - -data class SensorsOnDeviceRequestEntity( - val api_key: String, - val cmd: String, - val devices: List, - val lang: String, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsOnDevice/SensorsOnDeviceResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsOnDevice/SensorsOnDeviceResponseEntity.kt deleted file mode 100644 index 7ca1537..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsOnDevice/SensorsOnDeviceResponseEntity.kt +++ /dev/null @@ -1,5 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sensorsOnDevice - -data class SensorsOnDeviceResponseEntity( - val devices: List -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsValues/SensorValueEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsValues/SensorValueEntity.kt deleted file mode 100644 index 2a26c28..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsValues/SensorValueEntity.kt +++ /dev/null @@ -1,10 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sensorsValues - -data class SensorValueEntity( - val changed: Int, - val id: Int, - val time: Int, - val trend: Int, - val type: Int, - val value: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsValues/SensorsValuesRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsValues/SensorsValuesRequestEntity.kt deleted file mode 100644 index 1d0315f..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsValues/SensorsValuesRequestEntity.kt +++ /dev/null @@ -1,8 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sensorsValues - -data class SensorsValuesRequestEntity( - val api_key: String, - val cmd: String, - val sensors: List, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsValues/SensorsValuesResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsValues/SensorsValuesResponseEntity.kt deleted file mode 100644 index 36242aa..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/sensorsValues/SensorsValuesResponseEntity.kt +++ /dev/null @@ -1,5 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.sensorsValues - -data class SensorsValuesResponseEntity( - val sensors: List -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userFavorites/FavoriteSensorEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userFavorites/FavoriteSensorEntity.kt deleted file mode 100644 index 6bb7817..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userFavorites/FavoriteSensorEntity.kt +++ /dev/null @@ -1,9 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userFavorites - -data class FavoriteSensorEntity( - val id: Int, - val name: String, - val time: Int, - val type: Int, - val value: Double -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userFavorites/FavoriteWebcamEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userFavorites/FavoriteWebcamEntity.kt deleted file mode 100644 index 68157b6..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userFavorites/FavoriteWebcamEntity.kt +++ /dev/null @@ -1,8 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userFavorites - -data class FavoriteWebcamEntity( - val id: Int, - val image: String, - val name: String, - val time: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userFavorites/UserFavoritesRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userFavorites/UserFavoritesRequestEntity.kt deleted file mode 100644 index a5a536f..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userFavorites/UserFavoritesRequestEntity.kt +++ /dev/null @@ -1,10 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userFavorites - -data class UserFavoritesRequestEntity( - val api_key: String, - val cmd: String, - val lang: String, - val sensors: List, - val uuid: String, - val webcams: List -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userFavorites/UserFavoritesResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userFavorites/UserFavoritesResponseEntity.kt deleted file mode 100644 index 8371cfc..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userFavorites/UserFavoritesResponseEntity.kt +++ /dev/null @@ -1,6 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userFavorites - -data class UserFavoritesResponseEntity( - val sensors: List, - val webcams: List -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/CellEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/CellEntity.kt deleted file mode 100644 index a5e1a74..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/CellEntity.kt +++ /dev/null @@ -1,6 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userLocation - -data class CellEntity( - val bssid: String, - val rssi: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationByAddrRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationByAddrRequestEntity.kt deleted file mode 100644 index aacfd3a..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationByAddrRequestEntity.kt +++ /dev/null @@ -1,9 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userLocation - -data class UserLocationByAddrRequestEntity( - val addr: String, - val api_key: String, - val cmd: String, - val lang: String, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationByCellRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationByCellRequestEntity.kt deleted file mode 100644 index 8c61a53..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationByCellRequestEntity.kt +++ /dev/null @@ -1,9 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userLocation - -data class UserLocationByCellRequestEntity( - val api_key: String, - val cells: List, - val cmd: String, - val lang: String, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationByCoordRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationByCoordRequestEntity.kt deleted file mode 100644 index 48e8b4c..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationByCoordRequestEntity.kt +++ /dev/null @@ -1,10 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userLocation - -data class UserLocationByCoordRequestEntity( - val api_key: String, - val cmd: String, - val lang: String, - val lat: Double, - val lon: Double, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationByWifiRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationByWifiRequestEntity.kt deleted file mode 100644 index 5c76ca2..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationByWifiRequestEntity.kt +++ /dev/null @@ -1,9 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userLocation - -data class UserLocationByWifiRequestEntity( - val api_key: String, - val cmd: String, - val lang: String, - val uuid: String, - val wifi: List -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationResponseEntity.kt deleted file mode 100644 index aeddce1..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/UserLocationResponseEntity.kt +++ /dev/null @@ -1,7 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userLocation - -data class UserLocationResponseEntity( - val addr: String, - val lat: Double, - val lon: Double -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/WifiEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/WifiEntity.kt deleted file mode 100644 index 6ea7e0b..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLocation/WifiEntity.kt +++ /dev/null @@ -1,6 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userLocation - -data class WifiEntity( - val bssid: String, - val rssi: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLogon/UserLogonRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLogon/UserLogonRequestEntity.kt deleted file mode 100644 index b3a08c6..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLogon/UserLogonRequestEntity.kt +++ /dev/null @@ -1,10 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userLogon - -data class UserLogonRequestEntity( - val api_key: String, - val cmd: String, - val hash: String, - val lang: String, - val login: String, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLogon/UserLogonResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLogon/UserLogonResponseEntity.kt deleted file mode 100644 index c93ba41..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLogon/UserLogonResponseEntity.kt +++ /dev/null @@ -1,8 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userLogon - -data class UserLogonResponseEntity( - val login: String, - val tz: Int, - val uid: Int, - val vip: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLogout/UserLogoutRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLogout/UserLogoutRequestEntity.kt deleted file mode 100644 index 995411d..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLogout/UserLogoutRequestEntity.kt +++ /dev/null @@ -1,7 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userLogout - -data class UserLogoutRequestEntity( - val api_key: String, - val cmd: String, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLogout/UserLogoutResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLogout/UserLogoutResponseEntity.kt deleted file mode 100644 index 6a9974e..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/userLogout/UserLogoutResponseEntity.kt +++ /dev/null @@ -1,6 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.userLogout - -data class UserLogoutResponseEntity( - val login: String, - val uid: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/weatherReport/WeatherReportRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/weatherReport/WeatherReportRequestEntity.kt deleted file mode 100644 index 2536fa5..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/weatherReport/WeatherReportRequestEntity.kt +++ /dev/null @@ -1,14 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.weatherReport - -data class WeatherReportRequestEntity( - val api_key: String, - val cmd: String, - val humid: String, - val lang: String, - val lat: Double, - val lon: Double, - val press: String, - val temp: String, - val uuid: String, - val wind: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/weatherReport/WeatherReportResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/weatherReport/WeatherReportResponseEntity.kt deleted file mode 100644 index 2d2ea8a..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/weatherReport/WeatherReportResponseEntity.kt +++ /dev/null @@ -1,5 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.weatherReport - -data class WeatherReportResponseEntity( - val result: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamImages/WebcamImageEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamImages/WebcamImageEntity.kt deleted file mode 100644 index 17b1dd9..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamImages/WebcamImageEntity.kt +++ /dev/null @@ -1,6 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.webcamImages - -data class WebcamImageEntity( - val image: String, - val time: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamImages/WebcamImagesRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamImages/WebcamImagesRequestEntity.kt deleted file mode 100644 index df1565e..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamImages/WebcamImagesRequestEntity.kt +++ /dev/null @@ -1,9 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.webcamImages - -data class WebcamImagesRequestEntity( - val api_key: String, - val cmd: String, - val id: Int, - val limit: Int, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamImages/WebcamImagesResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamImages/WebcamImagesResponseEntity.kt deleted file mode 100644 index a94d70f..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamImages/WebcamImagesResponseEntity.kt +++ /dev/null @@ -1,9 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.webcamImages - -data class WebcamImagesResponseEntity( - val distance: Double, - val id: Int, - val images: List, - val location: String, - val name: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamsNearby/WebcamNearbyEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamsNearby/WebcamNearbyEntity.kt deleted file mode 100644 index 146a9b4..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamsNearby/WebcamNearbyEntity.kt +++ /dev/null @@ -1,15 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.webcamsNearby - -data class WebcamNearbyEntity( - val distance: Double, - val fav: Int, - val id: Int, - val image: String, - val lat: Double, - val location: String, - val lon: Double, - val my: Int, - val name: String, - val owner: String, - val time: Int -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamsNearby/WebcamsNearbyRequestEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamsNearby/WebcamsNearbyRequestEntity.kt deleted file mode 100644 index cab52b4..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamsNearby/WebcamsNearbyRequestEntity.kt +++ /dev/null @@ -1,11 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.webcamsNearby - -data class WebcamsNearbyRequestEntity( - val api_key: String, - val cmd: String, - val lang: String, - val lat: Double, - val lon: Double, - val radius: Int, - val uuid: String -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamsNearby/WebcamsResponseEntity.kt b/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamsNearby/WebcamsResponseEntity.kt deleted file mode 100644 index f766e9c..0000000 --- a/app/src/main/java/ru/nm17/narodmon/appNarodMonApiClient/entities/webcamsNearby/WebcamsResponseEntity.kt +++ /dev/null @@ -1,5 +0,0 @@ -package ru.nm17.narodmon.appNarodMonApiClient.entities.webcamsNearby - -data class WebcamsResponseEntity( - val webcams: List -) \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/ui/dialogs/UuidDialog.kt b/app/src/main/java/ru/nm17/narodmon/ui/dialogs/UuidDialog.kt new file mode 100644 index 0000000..05b83ae --- /dev/null +++ b/app/src/main/java/ru/nm17/narodmon/ui/dialogs/UuidDialog.kt @@ -0,0 +1,59 @@ +package ru.nm17.narodmon.ui.dialogs + +import androidx.compose.foundation.clickable +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.padding +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.KeyboardArrowRight +import androidx.compose.material3.AlertDialog +import androidx.compose.material3.Divider +import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.Icon +import androidx.compose.material3.ListItem +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.material3.TextButton +import androidx.compose.material3.TextField +import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue +import androidx.compose.ui.Modifier +import androidx.compose.ui.res.stringResource +import androidx.compose.ui.unit.dp +import ru.nm17.narodmon.R +import kotlin.system.exitProcess + +@ExperimentalMaterial3Api +@Composable +fun UuidDialog(modifier: Modifier = Modifier, onUuidInput: (uuid: String) -> Unit) { + var uuid by remember { mutableStateOf("") } + + AlertDialog( + onDismissRequest = { }, + title = { Text(text = stringResource(id = R.string.uuid_dialog_title)) }, + text = { + TextField( + value = uuid, + onValueChange = { uuid = it }, + placeholder = { Text(text = "UUID") } + ) + }, + confirmButton = { + TextButton( + onClick = { onUuidInput(uuid) } + ) { + Text(text = stringResource(id = R.string.uuid_confirm)) + } + }, + dismissButton = { + TextButton( + onClick = { onUuidInput("") }) { + Text(text = stringResource(id = R.string.uuid_generate)) + } + }, + modifier = modifier + + ) +} \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/ui/elements/SettingsItem.kt b/app/src/main/java/ru/nm17/narodmon/ui/elements/SettingsItem.kt deleted file mode 100644 index daf382f..0000000 --- a/app/src/main/java/ru/nm17/narodmon/ui/elements/SettingsItem.kt +++ /dev/null @@ -1,50 +0,0 @@ -package ru.nm17.narodmon.ui.elements - -import androidx.annotation.StringRes -import androidx.compose.foundation.clickable -import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.Row -import androidx.compose.foundation.layout.Spacer -import androidx.compose.foundation.layout.fillMaxWidth -import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.layout.size -import androidx.compose.material3.Icon -import androidx.compose.material3.Switch -import androidx.compose.material3.Text -import androidx.compose.runtime.Composable -import androidx.compose.ui.Modifier -import androidx.compose.ui.res.stringResource -import androidx.compose.ui.tooling.preview.Preview -import androidx.compose.ui.unit.dp -import ru.nm17.narodmon.R - -/** - * Кнопка, которая нужна для настроек. - * @param titleId Id заголовка кнопки - * @param leadingItem Заполнить, когда нужно вставить Composable перед заголовком(например [Icon], [FilterCheckbox] или [Switch] - */ -@Composable -fun SettingsItem( - @StringRes titleId: Int, - leadingItem: @Composable (() -> Unit)? = null, - onClick: () -> Unit = {} -) { - Row(modifier = Modifier.padding(16.dp)) { - if (leadingItem != null) { - leadingItem.invoke() - Spacer(modifier = Modifier.size(16.dp)) - } - Column(modifier = Modifier - .fillMaxWidth() - .clickable { onClick.invoke() }) { - Text(text = stringResource(id = titleId)) - } - } - -} - -@Preview(showBackground = true) -@Composable -fun PreviewSettingsItem() { - SettingsItem(R.string.about_app) {} -} \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/ui/messagesScreen/MessagesScreen.kt b/app/src/main/java/ru/nm17/narodmon/ui/messagesScreen/MessagesScreen.kt deleted file mode 100644 index f2c8b8f..0000000 --- a/app/src/main/java/ru/nm17/narodmon/ui/messagesScreen/MessagesScreen.kt +++ /dev/null @@ -1,16 +0,0 @@ -package ru.nm17.narodmon.ui.messagesScreen - -import androidx.compose.material3.Text -import androidx.compose.runtime.Composable -import androidx.compose.ui.tooling.preview.Preview - -@Composable -fun MessagesScreen() { - Text(text = "todo") -} - -@Preview -@Composable -fun PreviewMessagesScreen() { - MessagesScreen() -} \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/ui/navHost/AppNavHost.kt b/app/src/main/java/ru/nm17/narodmon/ui/navHost/AppNavHost.kt deleted file mode 100644 index 9697fa4..0000000 --- a/app/src/main/java/ru/nm17/narodmon/ui/navHost/AppNavHost.kt +++ /dev/null @@ -1,30 +0,0 @@ -package ru.nm17.narodmon.ui.navHost - -import androidx.compose.material3.ExperimentalMaterial3Api -import androidx.compose.runtime.Composable -import androidx.compose.ui.tooling.preview.Preview -import androidx.navigation.compose.NavHost -import androidx.navigation.compose.composable -import androidx.navigation.compose.rememberNavController -import ru.nm17.narodmon.ui.settings.SettingsNavigation - - -@OptIn(ExperimentalMaterial3Api::class) -@Composable -fun AppNavHost() { - val navController = rememberNavController() - NavHost(navController = navController, startDestination = "main") { - composable("main") { - MainScreen(navController) - } - composable("settings") { - SettingsNavigation() - } - } -} - -@Preview -@Composable -fun PreviewAppNavHost() { - AppNavHost() -} diff --git a/app/src/main/java/ru/nm17/narodmon/ui/navHost/MainScreen.kt b/app/src/main/java/ru/nm17/narodmon/ui/navHost/MainScreen.kt deleted file mode 100644 index d2569b2..0000000 --- a/app/src/main/java/ru/nm17/narodmon/ui/navHost/MainScreen.kt +++ /dev/null @@ -1,83 +0,0 @@ -package ru.nm17.narodmon.ui.navHost - -import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.foundation.layout.padding -import androidx.compose.material3.Icon -import androidx.compose.material3.NavigationBar -import androidx.compose.material3.NavigationBarItem -import androidx.compose.material3.Scaffold -import androidx.compose.material3.Text -import androidx.compose.runtime.Composable -import androidx.compose.ui.Modifier -import androidx.compose.ui.res.painterResource -import androidx.compose.ui.res.stringResource -import androidx.compose.ui.tooling.preview.Preview -import androidx.navigation.NavController -import androidx.navigation.NavGraph.Companion.findStartDestination -import androidx.navigation.compose.NavHost -import androidx.navigation.compose.composable -import androidx.navigation.compose.rememberNavController -import ru.nm17.narodmon.ui.sensorsScreen.SensorsScreen -import ru.nm17.narodmon.ui.theme.NarodMonTheme -import ru.nm17.narodmon.ui.webCamsScreen.WebCamsScreen - - -val items = listOf( - MainScreenSealed.Sensors, - MainScreenSealed.Webcams, - MainScreenSealed.Messages -) - -@Composable -fun MainScreen(outerNavController: NavController) { - val navController = rememberNavController() - - Scaffold( - bottomBar = { - NavigationBar { - - items.forEach { screen -> - NavigationBarItem( - selected = navController.currentDestination?.route == screen.route, - onClick = { - navController.navigate(screen.route) { - popUpTo(navController.graph.findStartDestination().id) { - saveState = true - } - launchSingleTop = true - restoreState = true - } - }, - label = { Text(text = stringResource(id = screen.resourceId)) }, - icon = { - Icon( - painter = painterResource(id = screen.iconId), - contentDescription = "" - ) - }) - } - } - }, - modifier = Modifier.fillMaxSize() - ) { - NavHost( - navController, - startDestination = MainScreenSealed.Sensors.route, - Modifier.padding(it) - ) { - composable(MainScreenSealed.Sensors.route) { - SensorsScreen(outerNavController) - } - composable(MainScreenSealed.Webcams.route) { WebCamsScreen(navController) } - composable(MainScreenSealed.Messages.route) { } - } - } -} - -@Preview -@Composable -fun PreviewMainScreen() { - NarodMonTheme { - MainScreen(rememberNavController()) - } -} \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/ui/navHost/MainScreenSealed.kt b/app/src/main/java/ru/nm17/narodmon/ui/navHost/MainScreenSealed.kt deleted file mode 100644 index 89fcdde..0000000 --- a/app/src/main/java/ru/nm17/narodmon/ui/navHost/MainScreenSealed.kt +++ /dev/null @@ -1,18 +0,0 @@ -package ru.nm17.narodmon.ui.navHost - -import androidx.annotation.DrawableRes -import androidx.annotation.StringRes -import ru.nm17.narodmon.R - -sealed class MainScreenSealed( - val route: String, - @StringRes val resourceId: Int, - @DrawableRes val iconId: Int -) { - object Sensors : MainScreenSealed("sensors", R.string.sensors_page_title, R.drawable.ic_home) - object Webcams : MainScreenSealed("webcams", R.string.webcams, R.drawable.ic_webcam) - - object Messages : MainScreenSealed("messages", R.string.messages, R.drawable.ic_message) - - object Settings : MainScreenSealed("settings", R.string.settings, R.drawable.ic_settings) -} \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/ui/sensorsScreen/SensorsScreen.kt b/app/src/main/java/ru/nm17/narodmon/ui/sensorsScreen/SensorsScreen.kt index 8ded59d..d40161b 100644 --- a/app/src/main/java/ru/nm17/narodmon/ui/sensorsScreen/SensorsScreen.kt +++ b/app/src/main/java/ru/nm17/narodmon/ui/sensorsScreen/SensorsScreen.kt @@ -1,6 +1,8 @@ package ru.nm17.narodmon.ui.sensorsScreen +import androidx.compose.animation.AnimatedContent import androidx.compose.animation.AnimatedVisibility +import androidx.compose.animation.ExperimentalAnimationApi import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.fillMaxHeight @@ -11,23 +13,29 @@ import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.LazyRow import androidx.compose.foundation.lazy.items import androidx.compose.material.icons.Icons -import androidx.compose.material.icons.outlined.Settings +import androidx.compose.material.icons.filled.ArrowDropDown +import androidx.compose.material.icons.rounded.ArrowDropDown import androidx.compose.material.icons.rounded.Check +import androidx.compose.material.icons.rounded.Person import androidx.compose.material3.BottomSheetScaffold import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.FilterChip import androidx.compose.material3.Icon -import androidx.compose.material3.IconButton +import androidx.compose.material3.MaterialTheme import androidx.compose.material3.OutlinedTextField import androidx.compose.material3.SearchBar import androidx.compose.material3.SearchBarDefaults import androidx.compose.material3.SheetValue import androidx.compose.material3.Text +import androidx.compose.material3.TextField +import androidx.compose.material3.TextFieldColors +import androidx.compose.material3.TextFieldDefaults import androidx.compose.material3.rememberBottomSheetScaffoldState import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember +import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier @@ -37,23 +45,28 @@ import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import androidx.navigation.NavController import androidx.navigation.compose.rememberNavController +import kotlinx.coroutines.CoroutineScope +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.delay +import kotlinx.coroutines.launch +import ovh.plrapps.mapcompose.core.debounce import ru.nm17.narodmon.R import ru.nm17.narodmon.db.entities.SensorType import ru.nm17.narodmon.ui.dialogs.FilterSensorsDialog -import ru.nm17.narodmon.ui.dialogs.SortSensorsDialog import ru.nm17.narodmon.ui.elements.SensorItem +import ru.nm17.narodmon.ui.dialogs.SortSensorsDialog import ru.nm17.narodmon.ui.elements.TileMap import ru.nm17.narodmon.ui.entities.SensorEntity import ru.nm17.narodmon.ui.entities.SensorSortingUiEntity import ru.nm17.narodmon.ui.entities.SortingTypes -import ru.nm17.narodmon.ui.navHost.MainScreenSealed import ru.nm17.narodmon.ui.theme.NarodMonTheme import ru.nm17.narodmon.ui.toChipTitle -@OptIn(ExperimentalMaterial3Api::class) +@OptIn(ExperimentalMaterial3Api::class, ExperimentalAnimationApi::class) @Composable -fun SensorsScreen(outerNavController: NavController) { +fun SensorsScreen(navController: NavController) { + val coroutineScope = rememberCoroutineScope() var searchQuery by remember { mutableStateOf("") } var searchActive by remember { mutableStateOf(false) } @@ -106,100 +119,108 @@ fun SensorsScreen(outerNavController: NavController) { mutableStateOf(SheetHeight.ExtraExpanded) } - BottomSheetScaffold(modifier = Modifier.fillMaxSize(), sheetPeekHeight = when (sheetHeight) { - SheetHeight.ExtraExpanded -> 256.dp - SheetHeight.Expanded -> 128.dp - SheetHeight.Hidden -> 0.dp - }, scaffoldState = scaffoldState, sheetContent = { - AnimatedVisibility(visible = scaffoldState.bottomSheetState.currentValue == SheetValue.Expanded) { - OutlinedTextField( - value = searchQuery, - onValueChange = { searchQuery = it }, - placeholder = { Text(stringResource(R.string.search)) }, - shape = SearchBarDefaults.inputFieldShape, + BottomSheetScaffold( + modifier = Modifier.fillMaxSize(), + sheetPeekHeight = when (sheetHeight) { + SheetHeight.ExtraExpanded -> 256.dp + SheetHeight.Expanded -> 128.dp + SheetHeight.Hidden -> 0.dp + }, + scaffoldState = scaffoldState, + sheetContent = { + AnimatedVisibility(visible = scaffoldState.bottomSheetState.currentValue == SheetValue.Expanded) { + OutlinedTextField( + value = searchQuery, + onValueChange = { searchQuery = it }, + placeholder = { Text(stringResource(R.string.search)) }, + shape = SearchBarDefaults.inputFieldShape, + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 8.dp, vertical = 8.dp) + ) + } + + LazyRow( + horizontalArrangement = Arrangement.spacedBy(12.dp, Alignment.CenterHorizontally), modifier = Modifier .fillMaxWidth() - .padding(horizontal = 8.dp, vertical = 8.dp) - ) - } - - LazyRow( - horizontalArrangement = Arrangement.spacedBy(12.dp, Alignment.CenterHorizontally), - modifier = Modifier - .fillMaxWidth() - .padding(horizontal = 16.dp), - ) { - item { - FilterChip( - selected = false, - onClick = { filterShow = true }, - leadingIcon = { - Icon( - painter = painterResource(id = R.drawable.ic_filter), - contentDescription = stringResource(id = R.string.sensors_filter) - ) - }, - trailingIcon = { -// Icon( -// Icons.Filled.ArrowDropDown, -// "", -// tint = MaterialTheme.colorScheme.onBackground -// ) - }, - - label = { Text(text = stringResource(R.string.sensors_filter)) }, - ) - } - item { - FilterChip(selected = sortingType.sortingType != SortingTypes.DISTANCE, - onClick = { sortingShow = true }, - leadingIcon = { - Icon( - painter = painterResource(id = R.drawable.ic_sort), - contentDescription = stringResource(id = R.string.sensors_sorting) - ) - }, - trailingIcon = { -// Icon( -// Icons.Filled.ArrowDropDown, -// "", -// tint = MaterialTheme.colorScheme.onBackground -// ) - }, - label = { - Text( - text = stringResource( - if (sortingType.sortingType == SortingTypes.DISTANCE) R.string.sensors_sorting - else sortingType.stringRes - ).toChipTitle(), - ) - }) - } - - item { - FilterChip( - selected = filterMine, - onClick = { filterMine = !filterMine }, - leadingIcon = { - if (filterMine) { + .padding(horizontal = 16.dp), + ) { + item { + FilterChip( + selected = false, + onClick = { filterShow = true }, + leadingIcon = { Icon( - Icons.Rounded.Check, contentDescription = "" + painter = painterResource(id = R.drawable.ic_filter), + contentDescription = stringResource(id = R.string.sensors_filter) + ) + }, + trailingIcon = { +// Icon( +// Icons.Filled.ArrowDropDown, +// "", +// tint = MaterialTheme.colorScheme.onBackground +// ) + }, + + label = { Text(text = stringResource(R.string.sensors_filter)) }, + ) + } + item { + FilterChip( + selected = sortingType.sortingType != SortingTypes.DISTANCE, + onClick = { sortingShow = true }, + leadingIcon = { + Icon( + painter = painterResource(id = R.drawable.ic_sort), + contentDescription = stringResource(id = R.string.sensors_sorting) + ) + }, + trailingIcon = { +// Icon( +// Icons.Filled.ArrowDropDown, +// "", +// tint = MaterialTheme.colorScheme.onBackground +// ) + }, + label = { + Text( + text = stringResource( + if (sortingType.sortingType == SortingTypes.DISTANCE) R.string.sensors_sorting + else sortingType.stringRes + ).toChipTitle(), ) } - }, - label = { Text(text = stringResource(R.string.sensors_mine)) }, - ) - } - } + ) + } - LazyColumn( - modifier = Modifier.fillMaxHeight(), - ) { - items(sensorEntities) { sensor -> - SensorItem(sensor) + item { + FilterChip( + selected = filterMine, + onClick = { filterMine = !filterMine }, + leadingIcon = { + if (filterMine) { + Icon( + Icons.Rounded.Check, + contentDescription = "" + ) + } + }, + label = { Text(text = stringResource(R.string.sensors_mine)) }, + ) + } + } + + LazyColumn( + modifier = Modifier.fillMaxHeight(), + ) { + items(sensorEntities) { sensor -> + SensorItem(sensor) + } } } - }) { + ) { Box(modifier = Modifier.fillMaxSize()) { SearchBar( query = searchQuery, @@ -210,24 +231,18 @@ fun SensorsScreen(outerNavController: NavController) { }, onQueryChange = { query -> searchQuery = query }, onSearch = { searchActive = false }, - placeholder = { Text(stringResource(R.string.search_sensors)) }, - trailingIcon = { - IconButton(onClick = { outerNavController.navigate(MainScreenSealed.Settings.route) }) { - Icon( - Icons.Outlined.Settings, - contentDescription = stringResource(R.string.settings) - ) - } - }, + placeholder = { Text(stringResource(R.string.search)) }, modifier = Modifier .fillMaxWidth() .padding( horizontal = if (!searchActive) 8.dp else 0.dp, + vertical = if (!searchActive) 16.dp else 0.dp ) ) {} TileMap( - modifier = Modifier.fillMaxSize() + modifier = Modifier + .fillMaxSize() ) { sheetHeight = SheetHeight.Expanded // TODO придумать, чтобы менялось на SheetHeight.ExtraExpanded после взаимодействия с картой @@ -236,18 +251,25 @@ fun SensorsScreen(outerNavController: NavController) { } } if (sortingShow) { - SortSensorsDialog(sortingType, onApply = { - sortingType = it - sortingShow = false - }, onDismissRequest = { - sortingShow = false - }) + SortSensorsDialog( + sortingType, + onApply = { + sortingType = it + sortingShow = false + }, + onDismissRequest = { + sortingShow = false + } + ) } if (filterShow) { - FilterSensorsDialog(onApply = { - // TODO применение фильтров - filterShow = false - }, onDismissRequest = { filterShow = false }) + FilterSensorsDialog( + onApply = { + // TODO применение фильтров + filterShow = false + }, + onDismissRequest = { filterShow = false } + ) } } diff --git a/app/src/main/java/ru/nm17/narodmon/ui/settings/Settings.kt b/app/src/main/java/ru/nm17/narodmon/ui/settings/Settings.kt deleted file mode 100644 index 6ff326e..0000000 --- a/app/src/main/java/ru/nm17/narodmon/ui/settings/Settings.kt +++ /dev/null @@ -1,12 +0,0 @@ -package ru.nm17.narodmon.ui.settings - -import androidx.annotation.StringRes -import ru.nm17.narodmon.R - -sealed class Settings(val route: String, @StringRes val resourceId: Int) { - - object Main : Settings("settings_main", R.string.settings) - object AboutApp : Settings("settings_about_app", R.string.about_app) - - object Debug : Settings("settings_debug_menu", R.string.debug_menu) -} \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/ui/settings/SettingsNavigation.kt b/app/src/main/java/ru/nm17/narodmon/ui/settings/SettingsNavigation.kt deleted file mode 100644 index f8cc7a2..0000000 --- a/app/src/main/java/ru/nm17/narodmon/ui/settings/SettingsNavigation.kt +++ /dev/null @@ -1,39 +0,0 @@ -package ru.nm17.narodmon.ui.settings - -import androidx.compose.foundation.layout.padding -import androidx.compose.material3.ExperimentalMaterial3Api -import androidx.compose.material3.Scaffold -import androidx.compose.material3.Text -import androidx.compose.material3.TopAppBar -import androidx.compose.runtime.Composable -import androidx.compose.ui.Modifier -import androidx.compose.ui.tooling.preview.Preview -import androidx.navigation.compose.NavHost -import androidx.navigation.compose.composable -import androidx.navigation.compose.rememberNavController - -@OptIn(ExperimentalMaterial3Api::class) -@Composable -fun SettingsNavigation() { - val navController = rememberNavController() - Scaffold(topBar = { - TopAppBar(title = { Text(text = navController.currentDestination?.route ?: "") }) - }) { - NavHost( - navController = navController, - startDestination = Settings.Main.route, - modifier = Modifier.padding(it) - ) { - composable(Settings.Main.route) { SettingsScreen(navController) } - composable(Settings.AboutApp.route) { } - composable(Settings.Debug.route) { } - } - - } -} - -@Preview -@Composable -fun PreviewSettingsNavigation() { - SettingsNavigation() -} \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/ui/settings/SettingsScreen.kt b/app/src/main/java/ru/nm17/narodmon/ui/settings/SettingsScreen.kt deleted file mode 100644 index fb75ba0..0000000 --- a/app/src/main/java/ru/nm17/narodmon/ui/settings/SettingsScreen.kt +++ /dev/null @@ -1,37 +0,0 @@ -package ru.nm17.narodmon.ui.settings - -import androidx.compose.foundation.layout.fillMaxSize -import androidx.compose.foundation.lazy.LazyColumn -import androidx.compose.runtime.Composable -import androidx.compose.ui.Modifier -import androidx.compose.ui.tooling.preview.Preview -import androidx.navigation.NavController -import androidx.navigation.compose.rememberNavController -import ru.nm17.narodmon.R -import ru.nm17.narodmon.ui.elements.SettingsItem -import ru.nm17.narodmon.ui.theme.NarodMonTheme - -@Composable -fun SettingsScreen(navController: NavController) { - LazyColumn(modifier = Modifier.fillMaxSize()) { - item { - SettingsItem(titleId = R.string.debug_menu) { - navController.navigate(Settings.Debug.route) - } - } - item { - SettingsItem(R.string.about_app) { - navController.navigate(Settings.AboutApp.route) - } - } - - } -} - -@Preview(showBackground = true, showSystemUi = false) -@Composable -fun PreviewSettingsScreen() { - NarodMonTheme { - SettingsScreen(rememberNavController()) - } -} \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/ui/theme/Theme.kt b/app/src/main/java/ru/nm17/narodmon/ui/theme/Theme.kt index 4b5a002..666d520 100644 --- a/app/src/main/java/ru/nm17/narodmon/ui/theme/Theme.kt +++ b/app/src/main/java/ru/nm17/narodmon/ui/theme/Theme.kt @@ -10,16 +10,15 @@ import androidx.compose.material3.dynamicLightColorScheme import androidx.compose.material3.lightColorScheme import androidx.compose.runtime.Composable import androidx.compose.runtime.SideEffect -import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.toArgb import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.platform.LocalView import androidx.core.view.WindowCompat private val DarkColorScheme = darkColorScheme( - primary = Purple80, - secondary = PurpleGrey80, - tertiary = Pink80 + primary = Purple80, + secondary = PurpleGrey80, + tertiary = Pink80 ) private val LightColorScheme = lightColorScheme( @@ -27,23 +26,23 @@ private val LightColorScheme = lightColorScheme( secondary = PurpleGrey80, tertiary = Pink80 - /* Other default colors to override -background = Color(0xFFFFFBFE), -surface = Color(0xFFFFFBFE), -onPrimary = Color.White, -onSecondary = Color.White, -onTertiary = Color.White, -onBackground = Color(0xFF1C1B1F), -onSurface = Color(0xFF1C1B1F), -*/ + /* Other default colors to override + background = Color(0xFFFFFBFE), + surface = Color(0xFFFFFBFE), + onPrimary = Color.White, + onSecondary = Color.White, + onTertiary = Color.White, + onBackground = Color(0xFF1C1B1F), + onSurface = Color(0xFF1C1B1F), + */ ) @Composable fun NarodMonTheme( - darkTheme: Boolean = isSystemInDarkTheme(), - // Dynamic color is available on Android 12+ - dynamicColor: Boolean = true, - content: @Composable () -> Unit + darkTheme: Boolean = isSystemInDarkTheme(), + // Dynamic color is available on Android 12+ + dynamicColor: Boolean = true, + content: @Composable () -> Unit ) { val colorScheme = when { dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> { @@ -58,16 +57,14 @@ fun NarodMonTheme( if (!view.isInEditMode) { SideEffect { val window = (view.context as Activity).window - WindowCompat.setDecorFitsSystemWindows(window, false) - window.statusBarColor = Color.Transparent.toArgb() - - WindowCompat.getInsetsController(window, view).isAppearanceLightStatusBars = !darkTheme + window.statusBarColor = colorScheme.primary.toArgb() + WindowCompat.getInsetsController(window, view).isAppearanceLightStatusBars = darkTheme } } MaterialTheme( - colorScheme = colorScheme, - typography = Typography, - content = content + colorScheme = colorScheme, + typography = Typography, + content = content ) } \ No newline at end of file diff --git a/app/src/main/java/ru/nm17/narodmon/ui/webCamsScreen/WebCamsScreen.kt b/app/src/main/java/ru/nm17/narodmon/ui/webCamsScreen/WebCamsScreen.kt index 38a4a3a..98298b9 100644 --- a/app/src/main/java/ru/nm17/narodmon/ui/webCamsScreen/WebCamsScreen.kt +++ b/app/src/main/java/ru/nm17/narodmon/ui/webCamsScreen/WebCamsScreen.kt @@ -1,5 +1,6 @@ package ru.nm17.narodmon.ui.webCamsScreen +import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.items import androidx.compose.runtime.Composable @@ -7,13 +8,13 @@ import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue +import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview -import androidx.navigation.NavController -import androidx.navigation.compose.rememberNavController +import androidx.compose.ui.viewinterop.AndroidView import ru.nm17.narodmon.ui.theme.NarodMonTheme @Composable -fun WebCamsScreen(navController: NavController) { +fun WebCamsScreen() { var webCams by remember { mutableStateOf( @@ -57,6 +58,6 @@ fun WebCamsScreen(navController: NavController) { @Composable fun PreviewWebCams() { NarodMonTheme { - WebCamsScreen(rememberNavController()) + WebCamsScreen() } } \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_home.xml b/app/src/main/res/drawable/ic_home.xml deleted file mode 100644 index 3cdad40..0000000 --- a/app/src/main/res/drawable/ic_home.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_message.xml b/app/src/main/res/drawable/ic_message.xml deleted file mode 100644 index dfb81a6..0000000 --- a/app/src/main/res/drawable/ic_message.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_settings.xml b/app/src/main/res/drawable/ic_settings.xml deleted file mode 100644 index c624d19..0000000 --- a/app/src/main/res/drawable/ic_settings.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - diff --git a/app/src/main/res/drawable/ic_webcam.xml b/app/src/main/res/drawable/ic_webcam.xml deleted file mode 100644 index a6fd65e..0000000 --- a/app/src/main/res/drawable/ic_webcam.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 9e74ffa..6711c5a 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -52,10 +52,7 @@ Применить От дальних к ближним Отменить - Веб-камеры - Сообщения - Настройки - Поиск датчиков - О приложении - Debug-меню + Введите UUID приложения + Сохранить + Сгенерировать \ No newline at end of file diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index a1a48e8..4a66751 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,5 +1,5 @@ [versions] -agp = "8.2.0-alpha07" +agp = "8.2.0-alpha08" kotlin = "1.8.10" core-ktx = "1.9.0" junit = "4.13.2"