SSML Builder Documentation - v1.0.1
    Preparing search index...

    Function isValidDuration

    • Validates if a string represents a valid duration format.

      Checks if the provided string matches the duration format used in SSML for time-based attributes like break time, silence value, fadein/fadeout, etc.

      Valid formats:

      • Milliseconds: 500ms, 1500ms, 20000ms
      • Seconds: 1s, 2.5s, 20s
      • Can include decimal values: 1.5s, 750.5ms

      The regex pattern matches:

      • One or more digits
      • Optional decimal point followed by one or more digits
      • Required unit suffix: either 'ms' or 's'

      Parameters

      • value: string

        The string value to validate

      Returns boolean

      true if the value is a valid duration format, false otherwise

      // Valid durations
      console.log(isValidDuration('500ms')); // true
      console.log(isValidDuration('2s')); // true
      console.log(isValidDuration('1.5s')); // true
      console.log(isValidDuration('750.25ms')); // true

      // Invalid durations
      console.log(isValidDuration('500')); // false - missing unit
      console.log(isValidDuration('2sec')); // false - wrong unit
      console.log(isValidDuration('ms')); // false - missing number
      console.log(isValidDuration('-500ms')); // false - negative not allowed

      // Use in validation
      function setBreakTime(duration: string) {
      if (!isValidDuration(duration)) {
      throw new Error(`Invalid duration format: ${duration}`);
      }
      // Valid duration format
      }