Add convenience function for adding default Amethyst list.

This commit is contained in:
KotlinGeekDev
2024-06-28 22:19:21 +01:00
parent 660be862d6
commit feee845d31
@@ -57,6 +57,12 @@ class MediaServersViewModel : ViewModel() {
} }
} }
fun addServerList(serverList: List<String>) {
serverList.forEach { serverUrl ->
addServer(serverUrl)
}
}
fun addServer(serverUrl: String) { fun addServer(serverUrl: String) {
val normalizedUrl = val normalizedUrl =
try { try {
@@ -66,9 +72,9 @@ class MediaServersViewModel : ViewModel() {
} }
val serverNameReference = val serverNameReference =
try { try {
URIReference.parse(normalizedUrl).host.value.replaceFirstChar { it.uppercase() } URIReference.parse(normalizedUrl).host.value
} catch (e: Exception) { } catch (e: Exception) {
normalizedUrl.replaceFirstChar { it.uppercase() } normalizedUrl
} }
_fileServers.update { _fileServers.update {
it.plus( it.plus(
@@ -82,13 +88,15 @@ class MediaServersViewModel : ViewModel() {
name: String = "", name: String = "",
serverUrl: String, serverUrl: String,
) { ) {
val serverName = if (name.isNotBlank()) name else URIReference.parse(serverUrl).host.value viewModelScope.launch {
_fileServers.update { val serverName = if (name.isNotBlank()) name else URIReference.parse(serverUrl).host.value
it.minus( _fileServers.update {
Nip96MediaServers.ServerName(serverName, serverUrl), it.minus(
) Nip96MediaServers.ServerName(serverName, serverUrl),
)
}
isModified = true
} }
isModified = true
} }
fun removeAllServers() { fun removeAllServers() {