Trabajando con componentes NSDate en Swift

Tengo una fecha que necesito dividir en algunos componentes. por ejemplo

let components = NSCalendarUnit.CalendarUnitDay | NSCalendarUnit.CalendarUnitHour
let date = calendar.components(components, fromDate: aDate, toDate: NSDate(), options: nil)
var dateToPrint = "\(date.day) days  \(date.hour) hours"

dateToPrint será el número de días y horas desde aDate hasta ahora. Pero si quiero la cantidad de semanas en lugar de días

let components = NSCalendarUnit.CalendarUnitWeek | NSCalendarUnit.CalendarUnitHour
let date = calendar.components(components, fromDate: aDate, toDate: NSDate(), options: nil)
var dateToPrint = "\(date.week) weeks \(date.hour) hours"

date.week no existe. Entonces, ¿cómo podría resolver esto?

Respuestas a la pregunta(4)

Su respuesta a la pregunta