gigafibre-fsm/apps/ops/src
louispaulb 925ffc9c3f refactor(ops): extract LocationCard from ClientDetailPage
T7 découpage géants — sort le « lieu de service » (en-tête adresse +
DeviceStrip + abonnements mensuels/annuels drag-drop + tickets) dans
components/customer/LocationCard.vue. Les sélecteurs/actions stateful
(locSubs*/toggle*/onSub*/section*) restent liés aux instances de
composables du parent et sont passés en props-fonctions homonymes → le
template les résout inchangé, comportement identique (mêmes closures,
même invalidation de cache useSubscriptionGroups/useSubscriptionActions).
Helpers purs (formatMoney/isRebate/…) et usePermissions importés dans
l'enfant. Styles loc-*/sub-* copiés (scoped). ClientDetailPage -242 l. ;
imports morts retirés (DeviceStrip/locStatusClass/isRebate/subMainLabel/
sectionTotal/annualPrice/locInlineFields).

Vérifié en local sur hub LIVE (C-LPB4) : rendu pixel-identique (carte
691 rue des hirondelles, DeviceStrip live acs-online, ABONNEMENTS 4 =
INTERNET 3 / RABAIS 1, total 0,00 $/m), toggle de section fonctionne via
la prop (INTERNET 0→3 rangées, chevron expand_more), 0 erreur console.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-04 21:31:33 -04:00
..
api feat(ui): T5 audit — composant DynamicFilter réutilisable + intégré sur Clients 2026-07-04 19:13:37 -04:00
boot feat(ops): dispatch auto complet + perf Boîte/rapports + fix session 2026-07-02 08:49:35 -04:00
components refactor(ops): extract LocationCard from ClientDetailPage 2026-07-04 21:31:33 -04:00
composables refactor(ui): T1 audit — dédup formatters → useFormatters (0 changement d'affichage) 2026-07-04 18:31:18 -04:00
config refactor(ops): retirer la page Dispatch dépréciée — tout sur Planification (−2179 lignes, −240 KB) 2026-07-03 21:03:57 -04:00
css fix(ops/mobile): Network GPON tient sur mobile (onglets défilants + arbre enroulé + boutons tactiles) 2026-07-04 20:56:11 -04:00
data feat(ops): dispatch auto complet + perf Boîte/rapports + fix session 2026-07-02 08:49:35 -04:00
features/workforce feat(fsm): platform build — comms UI, F→ERPNext sync/billing, roster, campaigns, network, reports 2026-06-15 06:12:12 -04:00
layouts perf(ops): lazy-load heavy libs & shell components — chunks route/shell bien plus légers 2026-07-03 20:35:30 -04:00
modules refactor(ui): T1 (suite) — unifier les formatters variants vers les canoniques (formats cohérents) 2026-07-04 18:42:17 -04:00
pages refactor(ops): extract LocationCard from ClientDetailPage 2026-07-04 21:31:33 -04:00
router refactor(ops): retirer la page Dispatch dépréciée — tout sur Planification (−2179 lignes, −240 KB) 2026-07-03 21:03:57 -04:00
stores fix(ops): fail-loud when OPS perms don't load + username fallback (supersede 96da97b session overlay) 2026-07-03 16:49:26 -04:00
utils fix(ops): sécurité + robustesse dispatch/comms 2026-07-02 08:56:35 -04:00
App.vue fix(ops): overlay accès — message exact « n'a pas pu charger » + détail erreur + piste extension 2026-07-03 17:31:41 -04:00