2025-04-13 00:51:32 +10:00
|
|
|
package moe.lava.banksia
|
|
|
|
|
|
2025-04-14 02:02:06 +10:00
|
|
|
import androidx.compose.foundation.layout.Box
|
2025-04-13 01:27:49 +10:00
|
|
|
import androidx.compose.foundation.layout.fillMaxSize
|
2025-04-14 02:02:06 +10:00
|
|
|
import androidx.compose.material3.BottomSheetScaffold
|
|
|
|
|
import androidx.compose.material3.ExperimentalMaterial3Api
|
2025-04-14 13:35:26 +10:00
|
|
|
import androidx.compose.material3.MaterialTheme
|
2025-04-14 02:02:06 +10:00
|
|
|
import androidx.compose.material3.SheetValue
|
|
|
|
|
import androidx.compose.material3.rememberBottomSheetScaffoldState
|
|
|
|
|
import androidx.compose.material3.rememberStandardBottomSheetState
|
2025-04-14 13:35:26 +10:00
|
|
|
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
|
2025-04-13 00:51:32 +10:00
|
|
|
import androidx.compose.ui.Modifier
|
2025-04-14 21:07:05 +10:00
|
|
|
import moe.lava.banksia.api.ptv.PtvService
|
2025-04-13 01:27:49 +10:00
|
|
|
import moe.lava.banksia.native.maps.Maps
|
2025-04-14 13:35:26 +10:00
|
|
|
import moe.lava.banksia.ui.Searcher
|
|
|
|
|
import org.jetbrains.compose.ui.tooling.preview.Preview
|
2025-04-13 00:51:32 +10:00
|
|
|
|
2025-04-14 02:02:06 +10:00
|
|
|
@OptIn(ExperimentalMaterial3Api::class)
|
2025-04-13 00:51:32 +10:00
|
|
|
@Composable
|
|
|
|
|
@Preview
|
|
|
|
|
fun App() {
|
2025-04-14 02:02:06 +10:00
|
|
|
val scaffoldState = rememberBottomSheetScaffoldState(
|
|
|
|
|
bottomSheetState = rememberStandardBottomSheetState(
|
|
|
|
|
initialValue = SheetValue.Hidden,
|
|
|
|
|
skipHiddenState = false
|
|
|
|
|
)
|
|
|
|
|
)
|
2025-04-14 13:35:26 +10:00
|
|
|
|
|
|
|
|
var searchTextState by remember { mutableStateOf("") }
|
|
|
|
|
var searchExpandedState by remember { mutableStateOf(false) }
|
|
|
|
|
|
2025-04-13 00:51:32 +10:00
|
|
|
MaterialTheme {
|
2025-04-14 02:02:06 +10:00
|
|
|
BottomSheetScaffold(
|
|
|
|
|
scaffoldState = scaffoldState,
|
|
|
|
|
sheetContent = { Box(modifier = Modifier) },
|
|
|
|
|
) {
|
|
|
|
|
Maps(
|
|
|
|
|
modifier = Modifier.fillMaxSize(),
|
|
|
|
|
sheetState = scaffoldState.bottomSheetState,
|
|
|
|
|
)
|
2025-04-14 13:35:26 +10:00
|
|
|
Searcher(
|
2025-04-14 21:07:05 +10:00
|
|
|
ptvService = PtvService(),
|
2025-04-14 13:35:26 +10:00
|
|
|
expanded = searchExpandedState,
|
|
|
|
|
onExpandedChange = { searchExpandedState = it },
|
|
|
|
|
text = searchTextState,
|
|
|
|
|
onTextChange = { searchTextState = it },
|
2025-04-14 21:07:05 +10:00
|
|
|
onRouteChange = {}
|
2025-04-14 13:35:26 +10:00
|
|
|
)
|
2025-04-13 00:51:32 +10:00
|
|
|
}
|
|
|
|
|
}
|
2025-04-14 21:53:07 +10:00
|
|
|
}
|