export function resolveMaxCount(values: number[]): number {
  if (!Array.isArray(values) || values.length === 0) {
    return 1;
  }

  return Math.max(...values, 1);
}

export function resolveTimelineHours(timestamps: string[], fallbackHours = 12): number {
  if (!Array.isArray(timestamps) || timestamps.length < 2) {
    return fallbackHours;
  }

  const times = timestamps
    .map((value) => new Date(value).getTime())
    .filter((value) => Number.isFinite(value));

  if (times.length < 2) {
    return fallbackHours;
  }

  const min = Math.min(...times);
  const max = Math.max(...times);
  const diff = Math.max(0, max - min);
  const hours = diff / (1000 * 60 * 60);

  return Math.max(1, Math.round(hours));
}
