HTTPS
https://git.nageyqma.icu/nageyqma/odin_next.git
SSH
git@git.nageyqma.icu:nageyqma/odin_next.git
HTTPS 链接可直接 git clone;推送代码请使用 SSH。
1234567891011121314151617181920212223242526
package com.odtheking.odin.config
data class WaypointPackState(
val selectedPackIds: MutableList<String> = mutableListOf(),
var editPackId: String = "",
)
fun WaypointPackState.normalized(availablePackIds: List<String>): WaypointPackState {
if (availablePackIds.isEmpty()) return WaypointPackState()
val selectedPackIds = selectedPackIds
.map(String::trim)
.filter { it.isNotBlank() && it in availablePackIds }
.distinct()
.toMutableList()
val editPackId = editPackId
.takeIf { it in availablePackIds }
?: selectedPackIds.firstOrNull()
?: availablePackIds.first()
if (selectedPackIds.isEmpty()) selectedPackIds.add(editPackId)
if (editPackId !in selectedPackIds) selectedPackIds.add(editPackId)
return WaypointPackState(selectedPackIds, editPackId)
}