Thème
Superviseur — Frontend / features/inis-network/useInisNetwork / useInisNetwork
Fonction: useInisNetwork()
ts
function useInisNetwork(): object;Défini dans: features/inis-network/useInisNetwork.ts:27
Logique de la vue Réseau INIS : chargement des réseaux et de la matrice, création/renommage, affectation de centrales aux emplacements, import de configuration et navigation par lien profond. Extrait de InisNetworkView.vue pour séparer le comportement du gabarit.
Retourne
| Nom | Type | Description | Défini dans |
|---|---|---|---|
canEdit | ComputedRef<boolean> | - | features/inis-network/useInisNetwork.ts:296 |
mainTab | Ref<"fleet" | "matrix", "fleet" | "matrix"> | - | features/inis-network/useInisNetwork.ts:297 |
loading | Ref<boolean, boolean> | - | features/inis-network/useInisNetwork.ts:298 |
activeTab | Ref<InisNetworkType, InisNetworkType> | - | features/inis-network/useInisNetwork.ts:299 |
showCreateModal | Ref<boolean, boolean> | - | features/inis-network/useInisNetwork.ts:300 |
showAssignModal | Ref<boolean, boolean> | - | features/inis-network/useInisNetwork.ts:301 |
isRenaming | Ref<boolean, boolean> | - | features/inis-network/useInisNetwork.ts:302 |
networkName | Ref<string, string> | - | features/inis-network/useInisNetwork.ts:303 |
pendingSlot | Ref<"CM" | "C1" | "C2" | "C3" | "C4" | "C5" | "C6" | "C7", "CM" | "C1" | "C2" | "C3" | "C4" | "C5" | "C6" | "C7"> | - | features/inis-network/useInisNetwork.ts:304 |
fileInputRefs | Ref<Record<string, HTMLInputElement | null>, Record<string, HTMLInputElement | null>> | - | features/inis-network/useInisNetwork.ts:305 |
globalData | ComputedRef< | { panels: object[]; mergedExtinctionLinks: object[]; mergedLedPanelLinks: object[]; mergedSirenLinks: object[]; inconsistencies: object[]; } | null> | - | features/inis-network/useInisNetwork.ts:306 |
availableInisPanels | ComputedRef<object[]> | - | features/inis-network/useInisNetwork.ts:307 |
isAssignedInThisNetwork() | (panelId) => boolean | - | features/inis-network/useInisNetwork.ts:308 |
panelHasXml() | (panelId) => boolean | - | features/inis-network/useInisNetwork.ts:309 |
assignedCount | ComputedRef<number> | Nombre d'emplacements du réseau occupés par une centrale. | features/inis-network/useInisNetwork.ts:310 |
matricesLoaded | ComputedRef<number> | Nombre de centrales dont la matrice XML est chargée. | features/inis-network/useInisNetwork.ts:311 |
linkCount | ComputedRef<number> | Total des liens réseau configurés (extinction + panneau LED + sirène). On s'appuie sur les listes FUSIONNÉES et dédupliquées exposées par le backend (merged*Links) — et non sur la somme par centrale — pour éviter de sur-compter les liens inter-centrales (présents dans la matrice de plusieurs centrales), et rester cohérent avec l'onglet « Matrice ». | features/inis-network/useInisNetwork.ts:312 |
inconsistencyCount | ComputedRef<number> | Nombre d'incohérences détectées sur le réseau sélectionné. | features/inis-network/useInisNetwork.ts:313 |
isBusy | ComputedRef<boolean> | Chargement en cours (premier chargement du store ou action locale). | features/inis-network/useInisNetwork.ts:314 |
mainTabs | ComputedRef<( | { key: "fleet"; label: string; icon: FunctionalComponent<LucideProps, { }, any, { }>; } | { key: "matrix"; label: string; icon: FunctionalComponent<LucideProps, { }, any, { }>; })[]> | - | features/inis-network/useInisNetwork.ts:315 |
selectNetwork() | (id) => Promise<void> | - | features/inis-network/useInisNetwork.ts:316 |
openCreateModal() | () => void | - | features/inis-network/useInisNetwork.ts:317 |
openRenameModal() | (net) => void | - | features/inis-network/useInisNetwork.ts:318 |
confirmCreateOrRename() | () => Promise<void> | - | features/inis-network/useInisNetwork.ts:319 |
deleteNetwork() | (id) => Promise<void> | - | features/inis-network/useInisNetwork.ts:320 |
openAssignModal() | (slot) => void | - | features/inis-network/useInisNetwork.ts:321 |
confirmAssign() | (panel) => Promise<void> | - | features/inis-network/useInisNetwork.ts:322 |
unlinkSlot() | (slotLabel) => Promise<void> | - | features/inis-network/useInisNetwork.ts:323 |
getPanelFileName() | (panelId) => string | - | features/inis-network/useInisNetwork.ts:324 |
deleteMatrix() | (slot) => Promise<void> | - | features/inis-network/useInisNetwork.ts:325 |
showMatrixModal | Ref<boolean, boolean> | - | features/inis-network/useInisNetwork.ts:326 |
selectedSlot | Ref< | { slotLabel: "CM" | "C1" | "C2" | "C3" | "C4" | "C5" | "C6" | "C7"; panelId: string | null; panelSerial: string | null; panelName: string | null; } | null, | InisNetworkSlot | { slotLabel: "CM" | "C1" | "C2" | "C3" | "C4" | "C5" | "C6" | "C7"; panelId: string | null; panelSerial: string | null; panelName: string | null; } | null> | - | features/inis-network/useInisNetwork.ts:327 |
openMatrixModal() | (slot, tab?) => void | - | features/inis-network/useInisNetwork.ts:328 |
getMatrixLinks() | (panelId, type) => object[] | - | features/inis-network/useInisNetwork.ts:329 |
getMatrixLinkCount() | (panelId, type) => number | - | features/inis-network/useInisNetwork.ts:330 |
getLinkTypeLabel() | (type) => string | - | features/inis-network/useInisNetwork.ts:331 |
modalTab | Ref<InisNetworkType, InisNetworkType> | - | features/inis-network/useInisNetwork.ts:332 |
getZoneLabel() | (panelIdx, zoneIdx) => string | - | features/inis-network/useInisNetwork.ts:333 |
getCellClass() | (type) => | "bg-emerald-50 text-emerald-700 border-emerald-200" | "bg-red-50 text-red-700 border-red-200" | "bg-amber-50 text-amber-700 border-amber-200" | "bg-blue-50 text-blue-700 border-blue-200" | "bg-slate-100 text-slate-400 border-slate-200" | - | features/inis-network/useInisNetwork.ts:334 |
triggerFileInput() | (panelId) => void | undefined | - | features/inis-network/useInisNetwork.ts:335 |
handleFileImport() | (slot, event) => Promise<void> | - | features/inis-network/useInisNetwork.ts:336 |
refreshAll() | () => Promise<void> | - | features/inis-network/useInisNetwork.ts:337 |
store | Store<"inisNetworks", Pick<{ networks: Ref<object[], | InisNetwork[] | object[]>; selectedNetworkId: Ref<string, string>; selectedNetwork: ComputedRef<{ id: string; name: string; slots: object[]; }>; globalData: Ref< | { panels: object[]; mergedExtinctionLinks: object[]; mergedLedPanelLinks: object[]; mergedSirenLinks: object[]; inconsistencies: object[]; } | null, | InisNetworkGlobalData | { panels: object[]; mergedExtinctionLinks: object[]; mergedLedPanelLinks: object[]; mergedSirenLinks: object[]; inconsistencies: object[]; } | null>; loading: Ref<boolean, boolean>; initialized: Ref<boolean, boolean>; fetchNetworks: () => Promise<void>; selectNetwork: (id) => void; addNetwork: (name) => Promise<void>; removeNetwork: (id) => Promise<void>; renameNetwork: (id, name) => Promise<void>; assignSlot: (networkId, slotLabel, panelId) => Promise<void>; clearSlot: (networkId, slotLabel) => Promise<void>; }, | "loading" | "networks" | "initialized" | "selectedNetworkId" | "globalData">, Pick<{ networks: Ref<object[], | InisNetwork[] | object[]>; selectedNetworkId: Ref<string, string>; selectedNetwork: ComputedRef<{ id: string; name: string; slots: object[]; }>; globalData: Ref< | { panels: object[]; mergedExtinctionLinks: object[]; mergedLedPanelLinks: object[]; mergedSirenLinks: object[]; inconsistencies: object[]; } | null, | InisNetworkGlobalData | { panels: object[]; mergedExtinctionLinks: object[]; mergedLedPanelLinks: object[]; mergedSirenLinks: object[]; inconsistencies: object[]; } | null>; loading: Ref<boolean, boolean>; initialized: Ref<boolean, boolean>; fetchNetworks: () => Promise<void>; selectNetwork: (id) => void; addNetwork: (name) => Promise<void>; removeNetwork: (id) => Promise<void>; renameNetwork: (id, name) => Promise<void>; assignSlot: (networkId, slotLabel, panelId) => Promise<void>; clearSlot: (networkId, slotLabel) => Promise<void>; }, "selectedNetwork">, Pick<{ networks: Ref<object[], | InisNetwork[] | object[]>; selectedNetworkId: Ref<string, string>; selectedNetwork: ComputedRef<{ id: string; name: string; slots: object[]; }>; globalData: Ref< | { panels: object[]; mergedExtinctionLinks: object[]; mergedLedPanelLinks: object[]; mergedSirenLinks: object[]; inconsistencies: object[]; } | null, | InisNetworkGlobalData | { panels: object[]; mergedExtinctionLinks: object[]; mergedLedPanelLinks: object[]; mergedSirenLinks: object[]; inconsistencies: object[]; } | null>; loading: Ref<boolean, boolean>; initialized: Ref<boolean, boolean>; fetchNetworks: () => Promise<void>; selectNetwork: (id) => void; addNetwork: (name) => Promise<void>; removeNetwork: (id) => Promise<void>; renameNetwork: (id, name) => Promise<void>; assignSlot: (networkId, slotLabel, panelId) => Promise<void>; clearSlot: (networkId, slotLabel) => Promise<void>; }, | "renameNetwork" | "fetchNetworks" | "selectNetwork" | "addNetwork" | "removeNetwork" | "assignSlot" | "clearSlot">> | - | features/inis-network/useInisNetwork.ts:338 |