parseDurationInput
Parses a human-readable duration such as "1h 30m" or "500ms", or "none"/"0" for no limit. Returns null for malformed input, repeated units, or a total exceeding one week.
Parses a human-readable duration such as "1h 30m" or "500ms", or "none"/"0" for no limit. Returns null for malformed input, repeated units, or a total exceeding one week.