Skip to content

isValidTimeRange

isValidTimeRange({ value1, value2, options, }: { value1: string; value2: string; options?: { allowEqual?: boolean; }; }): boolean
import { isValidTimeRange } from "@northguild/gmt/plain/validate";

Return true if value1 and value2 form a valid time range — both parseable as

  • ISO PlainTime strings and value1 <= value2.
  • Both inputs must be ISO 8601 time strings (e.g. "14:30:00").
  • Equal value1 === value2 is valid when options.allowEqual is true.
  • Invalid input, malformed strings, or leap-second strings return false.
Parameter Type Description
value1 `` first ISO PlainTime string
value2 `` second ISO PlainTime string
options `` optional allowEqual flag

boolean indicating whether the time range is valid

isValidTimeRange({ value1: "09:00:00", value2: "17:00:00" }) // true
isValidTimeRange({ value1: "17:00:00", value2: "09:00:00" }) // false
isValidTimeRange({ value1: "12:00:00", value2: "12:00:00", options: { allowEqual: true } }) // true

plain/validate/isValidTimeRange.ts