mirror of
https://github.com/InsanusMokrassar/MicroUtils.git
synced 2024-06-01 23:45:28 +00:00
18 lines
655 B
Kotlin
18 lines
655 B
Kotlin
package dev.inmo.micro_utils.ktor.common
|
|
|
|
import kotlinx.datetime.Instant
|
|
|
|
typealias FromToDateTime = Pair<Instant?, Instant?>
|
|
|
|
val FromToDateTime.asFromToUrlPart: QueryParams
|
|
get() = mapOf(
|
|
"from" to first ?.toEpochMilliseconds() ?.toString(),
|
|
"to" to second ?.toEpochMilliseconds() ?.toString()
|
|
)
|
|
|
|
val QueryParams.extractFromToDateTime: FromToDateTime
|
|
get() = FromToDateTime(
|
|
get("from") ?.run { toLongOrNull() ?: (toDoubleOrNull() ?.toLong()) } ?.let { Instant.fromEpochMilliseconds(it) },
|
|
get("to") ?.run { toLongOrNull() ?: (toDoubleOrNull() ?.toLong()) } ?.let { Instant.fromEpochMilliseconds(it) }
|
|
)
|