From ce41e6b000b2526e0c1e9eac5199e800474127f6 Mon Sep 17 00:00:00 2001 From: Thomas Ricouard Date: Sun, 22 Jan 2023 20:14:05 +0100 Subject: [PATCH] Always display relative date in the timeline --- .../Sources/Conversations/List/ConversationsListRow.swift | 2 +- Packages/Models/Sources/Models/Alias/ServerDate.swift | 8 ++------ .../Sources/Notifications/NotificationRowView.swift | 2 +- .../Status/Sources/Status/Embed/StatusEmbededView.swift | 2 +- Packages/Status/Sources/Status/Row/StatusRowView.swift | 4 ++-- 5 files changed, 7 insertions(+), 11 deletions(-) diff --git a/Packages/Conversations/Sources/Conversations/List/ConversationsListRow.swift b/Packages/Conversations/Sources/Conversations/List/ConversationsListRow.swift index f4a87c47..e5352425 100644 --- a/Packages/Conversations/Sources/Conversations/List/ConversationsListRow.swift +++ b/Packages/Conversations/Sources/Conversations/List/ConversationsListRow.swift @@ -31,7 +31,7 @@ struct ConversationsListRow: View { .foregroundColor(theme.tintColor) .frame(width: 10, height: 10) } - Text(conversation.lastStatus.createdAt.formatted) + Text(conversation.lastStatus.createdAt.relativeFormatted) .font(.scaledFootnote) } Text(conversation.lastStatus.content.asRawText) diff --git a/Packages/Models/Sources/Models/Alias/ServerDate.swift b/Packages/Models/Sources/Models/Alias/ServerDate.swift index f77d8d5d..fe446f96 100644 --- a/Packages/Models/Sources/Models/Alias/ServerDate.swift +++ b/Packages/Models/Sources/Models/Alias/ServerDate.swift @@ -29,12 +29,8 @@ extension ServerDate { Self.createdAtDateFormatter.date(from: self)! } - public var formatted: String { - if Self.calendar.numberOfDaysBetween(asDate, and: Date()) > 1 { - return Self.createdAtShortDateFormatted.string(from: asDate) - } else { - return Self.createdAtRelativeFormatter.localizedString(for: asDate, relativeTo: Date()) - } + public var relativeFormatted: String { + return Self.createdAtRelativeFormatter.localizedString(for: asDate, relativeTo: Date()) } } diff --git a/Packages/Notifications/Sources/Notifications/NotificationRowView.swift b/Packages/Notifications/Sources/Notifications/NotificationRowView.swift index 044da9a7..7f40a0fc 100644 --- a/Packages/Notifications/Sources/Notifications/NotificationRowView.swift +++ b/Packages/Notifications/Sources/Notifications/NotificationRowView.swift @@ -62,7 +62,7 @@ struct NotificationRowView: View { .font(.scaledFootnote) .fontWeight(.regular) .foregroundColor(.gray) + - Text(notification.createdAt.formatted) + Text(notification.createdAt.relativeFormatted) .font(.scaledFootnote) .fontWeight(.regular) .foregroundColor(.gray) diff --git a/Packages/Status/Sources/Status/Embed/StatusEmbededView.swift b/Packages/Status/Sources/Status/Embed/StatusEmbededView.swift index 96c51479..5a48e4ff 100644 --- a/Packages/Status/Sources/Status/Embed/StatusEmbededView.swift +++ b/Packages/Status/Sources/Status/Embed/StatusEmbededView.swift @@ -41,7 +41,7 @@ public struct StatusEmbeddedView: View { Group { Text("@\(account.acct)") + Text(" ⸱ ") + - Text(status.reblog?.createdAt.formatted ?? status.createdAt.formatted) + Text(status.reblog?.createdAt.relativeFormatted ?? status.createdAt.relativeFormatted) } .font(.scaledCaption) .foregroundColor(.gray) diff --git a/Packages/Status/Sources/Status/Row/StatusRowView.swift b/Packages/Status/Sources/Status/Row/StatusRowView.swift index 98dc1253..2935298b 100644 --- a/Packages/Status/Sources/Status/Row/StatusRowView.swift +++ b/Packages/Status/Sources/Status/Row/StatusRowView.swift @@ -197,7 +197,7 @@ public struct StatusRowView: View { .accessibilityHidden(true) } .accessibilityElement() - .accessibilityLabel(Text("\(status.account.displayName), \(status.createdAt.formatted)")) + .accessibilityLabel(Text("\(status.account.displayName), \(status.createdAt.relativeFormatted)")) } makeStatusContentView(status: status) .contentShape(Rectangle()) @@ -266,7 +266,7 @@ public struct StatusRowView: View { Group { Text("@\(status.account.acct)") + Text(" ⸱ ") + - Text(status.createdAt.formatted) + + Text(status.createdAt.relativeFormatted) + Text(" ⸱ ") + Text(Image(systemName: viewModel.status.visibility.iconName)) }