"use client";
import React from "react";
import { TopQuestion } from "../lib/types";
interface TopQuestionsChartProps {
data: TopQuestion[];
title?: string;
}
export default function TopQuestionsChart({
data,
title = "Top 5 Asked Questions",
}: TopQuestionsChartProps) {
if (!data || data.length === 0) {
return (
{title}
No questions data available
);
}
// Find the maximum count to calculate relative bar widths
const maxCount = Math.max(...data.map((q) => q.count));
return (
{title}
{data.map((question, index) => {
const percentage =
maxCount > 0 ? (question.count / maxCount) * 100 : 0;
return (
{/* Question text */}
{question.question}
{question.count}
{/* Progress bar */}
{/* Rank indicator */}
{index + 1}
);
})}
{/* Summary */}
Total questions analyzed
{data.reduce((sum, q) => sum + q.count, 0)}
);
}