code: function isValidHour(hour) {
      const min = self.min() ? self.min().hour : 0;
      const max = self.max() ? self.max().hour : 23;
      if (self.reversed()) {
        return hour <= max || min <= hour;
      }
      return min <= hour && hour <= max;
    }
docs: For standard range:
  Hour is valid if any of the hour:minute combination is in bounds
  it is invalid, if its 59th minute is before or if the 0th minute is after