From bfc231b5ec3567f1c886681b9058883e19aed762 Mon Sep 17 00:00:00 2001 From: Javier Cicchelli Date: Wed, 19 Apr 2023 16:07:52 +0200 Subject: [PATCH] Implemented the "dateOnly" and "dateAndTime" static formatter in the DateFormatter+Formatter extension. --- .../Extensions/DateFormatter+Formatter.swift | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 Sources/Extensions/DateFormatter+Formatter.swift diff --git a/Sources/Extensions/DateFormatter+Formatter.swift b/Sources/Extensions/DateFormatter+Formatter.swift new file mode 100644 index 0000000..fe71682 --- /dev/null +++ b/Sources/Extensions/DateFormatter+Formatter.swift @@ -0,0 +1,34 @@ +import Foundation + +extension DateFormatter { + + // MARK: Formatters + + static let dateOnly = { + let formatter = DateFormatter() + + formatter.timeZone = .init(secondsFromGMT: 0) + formatter.dateFormat = .Format.yearMonthDay + + return formatter + }() + + static let dateAndTime = { + let formatter = DateFormatter() + + formatter.timeZone = .init(secondsFromGMT: 0) + formatter.dateFormat = .Format.dateAndTimeWithMicroseconds + + return formatter + }() + +} + +// MARK: - String+Format + +private extension String { + enum Format { + static let yearMonthDay = "yyyy-MM-dd" + static let dateAndTimeWithMicroseconds = "yyyy-MM-dd'T'HH:mm:ss.SSS" + } +}