mirror of
https://github.com/anyproto/anytype-kotlin.git
synced 2025-06-08 05:47:05 +09:00
DROID-3131 Date fields | Open date object on locked values (#1877)
This commit is contained in:
parent
979d67b59c
commit
9b1e9bb23c
55 changed files with 465 additions and 427 deletions
|
@ -188,6 +188,7 @@ class DateProviderImpl @Inject constructor(
|
|||
override fun calculateRelativeDates(dateInSeconds: TimeInSeconds?): RelativeDate? {
|
||||
|
||||
if (dateInSeconds == null || dateInSeconds == 0L) return null
|
||||
val initialTimeInMillis = dateInSeconds * 1000
|
||||
val zoneId = defaultZoneId
|
||||
val dateInstant = Instant.ofEpochSecond(dateInSeconds)
|
||||
val givenDate = dateInstant.atZone(zoneId).toLocalDate()
|
||||
|
@ -196,14 +197,15 @@ class DateProviderImpl @Inject constructor(
|
|||
val daysDifference = ChronoUnit.DAYS.between(today, givenDate)
|
||||
|
||||
return when (daysDifference) {
|
||||
0L -> RelativeDate.Today
|
||||
1L -> RelativeDate.Tomorrow
|
||||
-1L -> RelativeDate.Yesterday
|
||||
0L -> RelativeDate.Today(initialTimeInMillis = initialTimeInMillis)
|
||||
1L -> RelativeDate.Tomorrow(initialTimeInMillis = initialTimeInMillis)
|
||||
-1L -> RelativeDate.Yesterday(initialTimeInMillis = initialTimeInMillis)
|
||||
else -> {
|
||||
val timestampMillis = TimeUnit.SECONDS.toMillis(dateInSeconds)
|
||||
|
||||
val (dateString, timeString) = formatTimestampToDateAndTime(timestampMillis)
|
||||
RelativeDate.Other(
|
||||
initialTimeInMillis = initialTimeInMillis,
|
||||
formattedDate = dateString,
|
||||
formattedTime = timeString
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue