import { useMemo } from "react"; import { EndemicCard } from "./cards/EndemicCard.jsx"; import { MonsterCard } from "./cards/MonsterCard.jsx"; import { MhwildsFilters } from "./MhwildsFilters.jsx"; import { getFilteredMhwildsItems, getMhwildsFilterKey, getUniqueConditionValues } from "./utils.js"; export function MhwildsListing({ category, mhwilds, filters, setFilters, t }) { const isMonsters = category === "monsters"; const filterKey = getMhwildsFilterKey(category, mhwilds); const items = isMonsters ? mhwilds.monsters : mhwilds.endemic; const options = (mhwilds.filterOptions?.[category]?.length ? mhwilds.filterOptions[category] : getUniqueConditionValues(items, filterKey, t)) .filter((value) => value !== "none") .sort((a, b) => t(a).localeCompare(t(b), "fr")); const visible = useMemo(() => getFilteredMhwildsItems({ category, filterKey, mhwilds, filters, t }), [category, filterKey, mhwilds, filters, t]); const label = isMonsters ? t("monsters", { capitalize: true }) : t("endemic_life", { capitalize: true }); return ( <>

Monster Hunter Wilds

{label}

{visible.length} / {items.length}

{isMonsters ? "Filtrez les monstres par nom et faiblesses, puis consultez leurs dégâts détaillés." : "Filtrez la faune par nom et zones d'apparition."}

Monstres Faune
{visible.length ? visible.map((item) => ( isMonsters ? : )) : (

Aucun résultat

Ajustez la recherche ou réinitialisez les filtres actifs.

)}
); }