import { FunctionalComponent, h } from "preact";
import { Project } from "../../models/project";
import { useProjectEstimations } from "../../hooks/use-project-estimations";
import { getCurrency, getRoundUpEstimations } from "../../models/params";
import ProjectTimeUnit from "../../components/project-time-unit";
import { getTaskCategoryWeightedMean, getProjectWeightedMean, getTaskCategoriesMeanRepartition } from "../../util/stat";

export interface RepartitionPreviewProps {
    project: Project
}

const RepartitionPreview: FunctionalComponent<RepartitionPreviewProps> = ({ project }) => {
    const repartition = getTaskCategoriesMeanRepartition(project);   
    return (
      <div class="table-container">
        <table class="table is-bordered is-striped is-fullwidth">
          <thead>
            <tr>
              <th colSpan={2}>Répartition moyenne</th>
            </tr>
            <tr>
              <th>Catégorie</th>
              <th>Temps (en %)</th>
            </tr>
          </thead>
          <tbody>
            {
              Object.values(project.params.taskCategories).map(tc => {
                let percent = (repartition[tc.id] * 100).toFixed(0);
                return (
                  <tr key={`task-category-${tc.id}`}>
                    <td>{tc.label}</td>
                    <td>{percent} %</td>
                  </tr>
                );
              })
            }
          </tbody>
        </table>
      </div>
    );
};

export default RepartitionPreview;
