mirror of
https://github.com/Dimillian/IceCubesApp.git
synced 2024-06-07 07:49:30 +00:00
36 lines
993 B
Swift
36 lines
993 B
Swift
import HTML2Markdown
|
|
import Foundation
|
|
|
|
extension Status {
|
|
private static var createdAtDateFormatter: DateFormatter {
|
|
let dateFormatter = DateFormatter()
|
|
dateFormatter.calendar = .init(identifier: .iso8601)
|
|
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSXXXXX"
|
|
dateFormatter.timeZone = .init(abbreviation: "UTC")
|
|
return dateFormatter
|
|
}
|
|
|
|
private static var createdAtRelativeFormatter: RelativeDateTimeFormatter {
|
|
let dateFormatter = RelativeDateTimeFormatter()
|
|
dateFormatter.unitsStyle = .abbreviated
|
|
return dateFormatter
|
|
}
|
|
|
|
public var contentAsMarkdown: String {
|
|
do {
|
|
let dom = try HTMLParser().parse(html: content)
|
|
return dom.toMarkdown()
|
|
} catch {
|
|
return content
|
|
}
|
|
}
|
|
|
|
public var createdAtDate: Date {
|
|
Self.createdAtDateFormatter.date(from: createdAt)!
|
|
}
|
|
|
|
public var createdAtFormatted: String {
|
|
Self.createdAtRelativeFormatter.localizedString(for: createdAtDate, relativeTo: Date())
|
|
}
|
|
}
|