---
name: project_capital_mensuel_table
description: "Composant CapitalMensuelTable.jsx — onglet Vision mensuelle dans Investissements, capital encours par plateforme par mois"
metadata: 
  node_type: memory
  type: project
  originSessionId: b72654be-0979-4e85-a9d7-0fd12a61d170
---

Nouvel onglet **"Vision mensuelle"** ajouté dans `Investissements.jsx` entre les onglets "Plateformes" et "Investissements".

**Composant** : `frontend/src/components/CapitalMensuelTable.jsx`

**Calcul 100% frontend** — utilise les données déjà chargées dans la page (`allRows`, `allRembs`, `allReinvests`, `plats`). Pas de nouvel endpoint backend.

**Logique capital encours par mois** : pour chaque mois M de l'année :
- L'investissement est actif si `date_souscription ≤ fin_M` ET (statut actif aujourd'hui OU `date_fin ≥ début_M`)
- `capital = montant_investi + reinvests_≤_finM − capital_remboursé_≤_finM`
- Groupé par `plateforme_id`

**Structure du tableau** : classes `tip-table` / `tip-th-*` / `tip-td-*` réutilisées depuis TableauInteretsPlateforme. Colonnes : Plateforme | 12 mois | Moyenne | Poids (barre + %).

**Sélecteur d'années** : boutons ‹ › + années + bouton TOUT. Le bouton TOUT ramène sur l'année courante (pas de mode global distinct).

**Multi-détenteur** : détenteur_nom affiché si `new Set(grid.map(p => p.investisseur_id)).size > 1` — cohérent avec [[feedback_multi_detenteur]].

**Why:** Demande d'Olivier pour visualiser la répartition mensuelle du capital déployé par plateforme.
**How to apply:** Props à passer depuis Investissements.jsx : `allRows`, `allRembs`, `allReinvests`, `plats`.
