/**
 * @파일 버퍼.js
 * @모듈 버퍼
 */
import { createTimeRange } from './time-ranges.js';

/**
 * 버퍼링된 미디어의 백분율을 계산합니다.
 *
 * @param {TimeRange} 버퍼링됨
 * 버퍼링된 시간 범위를 나타내는 현재 `TimeRange` 객체
 *
 * @param {숫자} 기간
 * 미디어의 총 길이
 *
 * @return {숫자}
 * 십진수 형식의 전체 기간 중 버퍼링된 백분율.
 */
내보내기 기능 bufferedPercent(buffered, duration) {
  let bufferedDuration = 0;
  시작하자;
  끝내자;

  if (! 기간) {
    0을 반환합니다.
  }

  if (!버퍼 || !버퍼.길이) {
    buffered = createTimeRange(0, 0);
  }

  에 대한 (하자 i = 0; i < 버퍼링된 길이; i++) {
    시작 = buffered.start(i);
    end = buffered.end(i);

    // 버퍼링된 끝은 지속 시간보다 아주 작은 비율로 더 클 수 있습니다.
    만약 (종료 > 지속) {
      끝 = 기간;
    }

    bufferedDuration += 끝 - 시작;
  }

  bufferedDuration / 기간 반환;
}