refactor: split up state for info panel

This commit is contained in:
LavaDesu 2025-07-28 22:24:33 +10:00
parent 1fa2a9bc10
commit b376e7da5b
Signed by: cilly
GPG key ID: 6500251E087653C9
8 changed files with 205 additions and 168 deletions

View file

@ -32,6 +32,7 @@ kotlin {
implementation(libs.ktor.client.contentnegotiation)
implementation(libs.ktor.serialization.kotlinx.json)
implementation(libs.kotlinx.coroutines.core)
implementation(libs.kotlinx.datetime)
implementation(libs.kotlinx.serialization.json)
}
iosMain.dependencies {

View file

@ -0,0 +1,28 @@
package moe.lava.banksia.api.ptv.structures
import kotlinx.datetime.Instant
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable
data class PtvVehiclePosition(
val latitude: Double,
val longitude: Double,
val easting: Double?,
val northing: Double?,
val direction: String?,
val bearing: Double?,
val supplier: String?,
@SerialName("datetime_utc") val datetimeUtc: Instant?,
@SerialName("expiry_time") val expiryTime: Instant?,
)
@Serializable
data class PtvRun(
@SerialName("run_ref") val runRef: String,
@SerialName("route_id") val routeId: Int,
@SerialName("route_type") val routeType: PtvRouteType,
@SerialName("final_stop_id") val finalStopId: Int,
@SerialName("destination_name") val destinationName: String,
@SerialName("direction_id") val directionId: Int,
@SerialName("status") val status: String,
)