Skip to content

isValidUtcRange

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

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

  • ISO UTC datetime strings and the instant at value1 is <= the instant at value2.
  • Both inputs must be ISO 8601 UTC datetime strings (e.g. "2024-01-01T10:00:00Z").
  • Equal value1 === value2 is valid when options.allowEqual is true.
  • Leap-second strings return false.
  • Invalid input or malformed strings return false.
Parameter Type Description
value1 `` first ISO UTC datetime string
value2 `` second ISO UTC datetime string
options `` optional allowEqual flag

boolean indicating whether the UTC range is valid

isValidUtcRange({ value1: "2024-01-01T10:00:00Z", value2: "2024-12-31T23:59:59Z" }) // true
isValidUtcRange({ value1: "2024-12-31T23:59:59Z", value2: "2024-01-01T10:00:00Z" }) // false
isValidUtcRange({ value1: "2024-01-01T10:00:00Z", value2: "2024-01-01T10:00:00Z", options: { allowEqual: true } }) // true

utc/validate/isValidUtcRange.ts