function parseHttpDate (date, now) {
  // Sun, 06 Nov 1994 08:49:37 GMT    ; IMF-fixdate
  // Sun Nov  6 08:49:37 1994         ; ANSI C's asctime() format
  // Sunday, 06-Nov-94 08:49:37 GMT   ; obsolete RFC 850 format

  date = date.toLowerCase()

  switch (date[3]) {
    case ',': return parseImfDate(date)
    case ' ': return parseAscTimeDate(date)
    default: return parseRfc850Date(date, now)
  }
}
@see https://www.rfc-editor.org/rfc/rfc9110.html#name-date-time-formats

@param {string} date
@param {Date} [now]
@returns {Date | undefined}