// // TimeInterval+humanReadableTime.swift // IceGlass // // Copyright 2026 Rouslan Zenetl. All Rights Reserved. // import Foundation extension TimeInterval { static func humanReadableTime(from timeInterval: TimeInterval) -> String { let seconds = Int(timeInterval) let hours = seconds / 3600 let minutes = (seconds % 3600) / 60 let remainingSeconds = seconds % 60 var components: [String] = [] if hours > 0 { components.append("\(hours) \(hours == 1 ? "hour" : "hours")") } if minutes > 0 { components.append("\(minutes) \(minutes == 1 ? "minute" : "minutes")") } if remainingSeconds > 0 || components.isEmpty { components.append("\(remainingSeconds) \(remainingSeconds == 1 ? "second" : "seconds")") } return components.joined(separator: " ") } func humanReadableTime() -> String { return TimeInterval.humanReadableTime(from: self) } }