Thème
Superviseur — Frontend / features/settings/views/admin/useInstallationContent / useInstallationContent
Fonction: useInstallationContent()
ts
function useInstallationContent(): object;Défini dans: features/settings/views/admin/useInstallationContent.ts:16
Logique de la vue de configuration des centrales (installation) : liste et filtres, création / édition via le formulaire, suppression unitaire et en lot, et supervision. Extrait de InstallationContent.vue.
Retourne
| Nom | Type | Description | Défini dans |
|---|---|---|---|
panelStore | Store<"panel", Pick<{ configurations: Ref<object[], | StationConfiguration[] | object[]>; profiles: Ref<object[], | ModbusProfile[] | object[]>; liveStates: Ref<Record<string, FireStationSystem>, Record<string, FireStationSystem>>; panelStates: Ref<Record<string, PanelSnapshot>, Record<string, PanelSnapshot>>; selectedStationId: Ref<string | null, string | null>; selectedPanelId: ComputedRef<string | number | null>; currentConfig: ComputedRef< | { id?: string | number; name: string; systemSerialNumber?: string; label: string; description?: string; connectionType?: "Tcp" | "Rtu"; ipAddress?: string; port?: number; serialPortName?: string; baudRate?: number; dataBits?: number; parity?: number; stopBits?: number; pollingIntervalMilliseconds: number; slaveId: number; panelType: string; color: string; modbusMapping: string; modbusProfileId: string; zones: object[]; points?: object[]; rawConfiguration?: string; } | undefined>; panelState: ComputedRef< | FireStationSystem | null>; apiConnected: Ref<boolean, boolean>; hasEverConnected: Ref<boolean, boolean>; modbusConnected: Ref<boolean, boolean>; systemStatus: ComputedRef<{ text: string; color: string; }>; activeAlerts: ComputedRef<object[]>; allActiveAlerts: ComputedRef<Alert[]>; groupedIncidents: ComputedRef<StationGroup[]>; activeIncidentCount: ComputedRef<number>; activeAlertsCount: ComputedRef<number>; allActiveAlertsCount: ComputedRef<number>; isGlobalEvacuationActive: ComputedRef<boolean>; connectionStatus: ComputedRef<{ api: { connected: boolean; text: string; color: string; }; modbus: { connected: boolean | undefined; text: string; color: string; }; }>; systemIssues: ComputedRef<SystemIssue[]>; lastDataChange: Ref<number, number>; isFleetHealthy: ComputedRef<boolean>; pendingCommands: Ref<Record<string, boolean>, Record<string, boolean>>; isCommandPending: (serial) => boolean; markCommandPending: (serial, delayMs) => void; statusSince: (serial, kind, index) => number | null; setPanelState: (newState) => void; switchPanel: (id) => void; addPanel: (config) => Promise<void>; removePanel: (dbId) => Promise<void>; setPanelSupervision: (panelId, serial, enabled) => Promise<PanelDto>; setAllPanelsSupervision: (enabled) => Promise<void>; loadConfigurations: () => Promise<void>; loadInitialData: () => Promise<void>; updatePanel: (config) => Promise<void>; updatePanelState: (snapshot) => void; forgetPanel: (panelId, systemSerialNumber?) => void; isPanelConnected: (id) => boolean; isPanelInAlarm: (id) => boolean; setConnectionStatus: (isConnected) => void; setModbusConnected: (s) => boolean; initialize: () => Promise<void>; initialized: Ref<boolean, boolean>; isInitializing: Ref<boolean, boolean>; toggleMute: () => void; isAudioMuted: ComputedRef<boolean>; hasActiveAlert: ComputedRef<boolean>; acknowledgeAlert: (stationId, type, index, flag?) => Promise<void>; rearmStation: (stationId) => Promise<void>; }, | "profiles" | "modbusConnected" | "configurations" | "liveStates" | "panelStates" | "selectedStationId" | "apiConnected" | "hasEverConnected" | "lastDataChange" | "pendingCommands" | "initialized" | "isInitializing">, Pick<{ configurations: Ref<object[], | StationConfiguration[] | object[]>; profiles: Ref<object[], | ModbusProfile[] | object[]>; liveStates: Ref<Record<string, FireStationSystem>, Record<string, FireStationSystem>>; panelStates: Ref<Record<string, PanelSnapshot>, Record<string, PanelSnapshot>>; selectedStationId: Ref<string | null, string | null>; selectedPanelId: ComputedRef<string | number | null>; currentConfig: ComputedRef< | { id?: string | number; name: string; systemSerialNumber?: string; label: string; description?: string; connectionType?: "Tcp" | "Rtu"; ipAddress?: string; port?: number; serialPortName?: string; baudRate?: number; dataBits?: number; parity?: number; stopBits?: number; pollingIntervalMilliseconds: number; slaveId: number; panelType: string; color: string; modbusMapping: string; modbusProfileId: string; zones: object[]; points?: object[]; rawConfiguration?: string; } | undefined>; panelState: ComputedRef< | FireStationSystem | null>; apiConnected: Ref<boolean, boolean>; hasEverConnected: Ref<boolean, boolean>; modbusConnected: Ref<boolean, boolean>; systemStatus: ComputedRef<{ text: string; color: string; }>; activeAlerts: ComputedRef<object[]>; allActiveAlerts: ComputedRef<Alert[]>; groupedIncidents: ComputedRef<StationGroup[]>; activeIncidentCount: ComputedRef<number>; activeAlertsCount: ComputedRef<number>; allActiveAlertsCount: ComputedRef<number>; isGlobalEvacuationActive: ComputedRef<boolean>; connectionStatus: ComputedRef<{ api: { connected: boolean; text: string; color: string; }; modbus: { connected: boolean | undefined; text: string; color: string; }; }>; systemIssues: ComputedRef<SystemIssue[]>; lastDataChange: Ref<number, number>; isFleetHealthy: ComputedRef<boolean>; pendingCommands: Ref<Record<string, boolean>, Record<string, boolean>>; isCommandPending: (serial) => boolean; markCommandPending: (serial, delayMs) => void; statusSince: (serial, kind, index) => number | null; setPanelState: (newState) => void; switchPanel: (id) => void; addPanel: (config) => Promise<void>; removePanel: (dbId) => Promise<void>; setPanelSupervision: (panelId, serial, enabled) => Promise<PanelDto>; setAllPanelsSupervision: (enabled) => Promise<void>; loadConfigurations: () => Promise<void>; loadInitialData: () => Promise<void>; updatePanel: (config) => Promise<void>; updatePanelState: (snapshot) => void; forgetPanel: (panelId, systemSerialNumber?) => void; isPanelConnected: (id) => boolean; isPanelInAlarm: (id) => boolean; setConnectionStatus: (isConnected) => void; setModbusConnected: (s) => boolean; initialize: () => Promise<void>; initialized: Ref<boolean, boolean>; isInitializing: Ref<boolean, boolean>; toggleMute: () => void; isAudioMuted: ComputedRef<boolean>; hasActiveAlert: ComputedRef<boolean>; acknowledgeAlert: (stationId, type, index, flag?) => Promise<void>; rearmStation: (stationId) => Promise<void>; }, | "systemStatus" | "hasActiveAlert" | "selectedPanelId" | "currentConfig" | "panelState" | "activeAlerts" | "allActiveAlerts" | "groupedIncidents" | "activeIncidentCount" | "activeAlertsCount" | "allActiveAlertsCount" | "isGlobalEvacuationActive" | "connectionStatus" | "systemIssues" | "isFleetHealthy" | "isAudioMuted">, Pick<{ configurations: Ref<object[], | StationConfiguration[] | object[]>; profiles: Ref<object[], | ModbusProfile[] | object[]>; liveStates: Ref<Record<string, FireStationSystem>, Record<string, FireStationSystem>>; panelStates: Ref<Record<string, PanelSnapshot>, Record<string, PanelSnapshot>>; selectedStationId: Ref<string | null, string | null>; selectedPanelId: ComputedRef<string | number | null>; currentConfig: ComputedRef< | { id?: string | number; name: string; systemSerialNumber?: string; label: string; description?: string; connectionType?: "Tcp" | "Rtu"; ipAddress?: string; port?: number; serialPortName?: string; baudRate?: number; dataBits?: number; parity?: number; stopBits?: number; pollingIntervalMilliseconds: number; slaveId: number; panelType: string; color: string; modbusMapping: string; modbusProfileId: string; zones: object[]; points?: object[]; rawConfiguration?: string; } | undefined>; panelState: ComputedRef< | FireStationSystem | null>; apiConnected: Ref<boolean, boolean>; hasEverConnected: Ref<boolean, boolean>; modbusConnected: Ref<boolean, boolean>; systemStatus: ComputedRef<{ text: string; color: string; }>; activeAlerts: ComputedRef<object[]>; allActiveAlerts: ComputedRef<Alert[]>; groupedIncidents: ComputedRef<StationGroup[]>; activeIncidentCount: ComputedRef<number>; activeAlertsCount: ComputedRef<number>; allActiveAlertsCount: ComputedRef<number>; isGlobalEvacuationActive: ComputedRef<boolean>; connectionStatus: ComputedRef<{ api: { connected: boolean; text: string; color: string; }; modbus: { connected: boolean | undefined; text: string; color: string; }; }>; systemIssues: ComputedRef<SystemIssue[]>; lastDataChange: Ref<number, number>; isFleetHealthy: ComputedRef<boolean>; pendingCommands: Ref<Record<string, boolean>, Record<string, boolean>>; isCommandPending: (serial) => boolean; markCommandPending: (serial, delayMs) => void; statusSince: (serial, kind, index) => number | null; setPanelState: (newState) => void; switchPanel: (id) => void; addPanel: (config) => Promise<void>; removePanel: (dbId) => Promise<void>; setPanelSupervision: (panelId, serial, enabled) => Promise<PanelDto>; setAllPanelsSupervision: (enabled) => Promise<void>; loadConfigurations: () => Promise<void>; loadInitialData: () => Promise<void>; updatePanel: (config) => Promise<void>; updatePanelState: (snapshot) => void; forgetPanel: (panelId, systemSerialNumber?) => void; isPanelConnected: (id) => boolean; isPanelInAlarm: (id) => boolean; setConnectionStatus: (isConnected) => void; setModbusConnected: (s) => boolean; initialize: () => Promise<void>; initialized: Ref<boolean, boolean>; isInitializing: Ref<boolean, boolean>; toggleMute: () => void; isAudioMuted: ComputedRef<boolean>; hasActiveAlert: ComputedRef<boolean>; acknowledgeAlert: (stationId, type, index, flag?) => Promise<void>; rearmStation: (stationId) => Promise<void>; }, | "removePanel" | "addPanel" | "isCommandPending" | "markCommandPending" | "statusSince" | "setPanelState" | "switchPanel" | "setPanelSupervision" | "setAllPanelsSupervision" | "loadConfigurations" | "loadInitialData" | "updatePanel" | "updatePanelState" | "forgetPanel" | "isPanelConnected" | "isPanelInAlarm" | "setConnectionStatus" | "setModbusConnected" | "initialize" | "toggleMute" | "acknowledgeAlert" | "rearmStation">> | - | features/settings/views/admin/useInstallationContent.ts:285 |
authStore | Store<"auth", Pick<{ user: Ref< | { id: string; username: string; role: string; avatar?: string; language: string; } | null, | User | { id: string; username: string; role: string; avatar?: string; language: string; } | null>; isAuthenticated: ComputedRef<boolean>; isAdmin: ComputedRef<boolean>; isSuperAdmin: ComputedRef<boolean>; isTokenExpired: ComputedRef<boolean>; setUser: (userData) => void; login: (credentials) => Promise<LoginResult>; logout: () => void; refreshAccessToken: () => Promise<boolean>; initialize: () => void; updateAvatar: (avatar) => void; resetAvatar: () => void; effectiveAvatar: ComputedRef<string | undefined>; hydrateUser: () => Promise<void>; }, "user">, Pick<{ user: Ref< | { id: string; username: string; role: string; avatar?: string; language: string; } | null, | User | { id: string; username: string; role: string; avatar?: string; language: string; } | null>; isAuthenticated: ComputedRef<boolean>; isAdmin: ComputedRef<boolean>; isSuperAdmin: ComputedRef<boolean>; isTokenExpired: ComputedRef<boolean>; setUser: (userData) => void; login: (credentials) => Promise<LoginResult>; logout: () => void; refreshAccessToken: () => Promise<boolean>; initialize: () => void; updateAvatar: (avatar) => void; resetAvatar: () => void; effectiveAvatar: ComputedRef<string | undefined>; hydrateUser: () => Promise<void>; }, | "isAuthenticated" | "isAdmin" | "isSuperAdmin" | "isTokenExpired" | "effectiveAvatar">, Pick<{ user: Ref< | { id: string; username: string; role: string; avatar?: string; language: string; } | null, | User | { id: string; username: string; role: string; avatar?: string; language: string; } | null>; isAuthenticated: ComputedRef<boolean>; isAdmin: ComputedRef<boolean>; isSuperAdmin: ComputedRef<boolean>; isTokenExpired: ComputedRef<boolean>; setUser: (userData) => void; login: (credentials) => Promise<LoginResult>; logout: () => void; refreshAccessToken: () => Promise<boolean>; initialize: () => void; updateAvatar: (avatar) => void; resetAvatar: () => void; effectiveAvatar: ComputedRef<string | undefined>; hydrateUser: () => Promise<void>; }, | "login" | "logout" | "initialize" | "setUser" | "refreshAccessToken" | "updateAvatar" | "resetAvatar" | "hydrateUser">> | - | features/settings/views/admin/useInstallationContent.ts:286 |
panels | ComputedRef<object[]> | - | features/settings/views/admin/useInstallationContent.ts:287 |
formTarget | Ref< | { id?: string | number; name: string; systemSerialNumber?: string; label: string; description?: string; connectionType?: "Tcp" | "Rtu"; ipAddress?: string; port?: number; serialPortName?: string; baudRate?: number; dataBits?: number; parity?: number; stopBits?: number; pollingIntervalMilliseconds: number; slaveId: number; panelType: string; color: string; modbusMapping: string; modbusProfileId: string; zones: object[]; points?: object[]; rawConfiguration?: string; } | "new" | null, | StationConfiguration | { id?: string | number; name: string; systemSerialNumber?: string; label: string; description?: string; connectionType?: "Tcp" | "Rtu"; ipAddress?: string; port?: number; serialPortName?: string; baudRate?: number; dataBits?: number; parity?: number; stopBits?: number; pollingIntervalMilliseconds: number; slaveId: number; panelType: string; color: string; modbusMapping: string; modbusProfileId: string; zones: object[]; points?: object[]; rawConfiguration?: string; } | "new" | null> | - | features/settings/views/admin/useInstallationContent.ts:288 |
editingPanel | ComputedRef< | { id?: string | number; name: string; systemSerialNumber?: string; label: string; description?: string; connectionType?: "Tcp" | "Rtu"; ipAddress?: string; port?: number; serialPortName?: string; baudRate?: number; dataBits?: number; parity?: number; stopBits?: number; pollingIntervalMilliseconds: number; slaveId: number; panelType: string; color: string; modbusMapping: string; modbusProfileId: string; zones: object[]; points?: object[]; rawConfiguration?: string; } | undefined> | - | features/settings/views/admin/useInstallationContent.ts:289 |
showDeleteModal | Ref<boolean, boolean> | - | features/settings/views/admin/useInstallationContent.ts:290 |
showStatusModal | Ref<boolean, boolean> | - | features/settings/views/admin/useInstallationContent.ts:291 |
panelToDelete | Ref< | { id?: string | number; name: string; systemSerialNumber?: string; label: string; description?: string; connectionType?: "Tcp" | "Rtu"; ipAddress?: string; port?: number; serialPortName?: string; baudRate?: number; dataBits?: number; parity?: number; stopBits?: number; pollingIntervalMilliseconds: number; slaveId: number; panelType: string; color: string; modbusMapping: string; modbusProfileId: string; zones: object[]; points?: object[]; rawConfiguration?: string; } | null, | StationConfiguration | { id?: string | number; name: string; systemSerialNumber?: string; label: string; description?: string; connectionType?: "Tcp" | "Rtu"; ipAddress?: string; port?: number; serialPortName?: string; baudRate?: number; dataBits?: number; parity?: number; stopBits?: number; pollingIntervalMilliseconds: number; slaveId: number; panelType: string; color: string; modbusMapping: string; modbusProfileId: string; zones: object[]; points?: object[]; rawConfiguration?: string; } | null> | - | features/settings/views/admin/useInstallationContent.ts:292 |
selectedIds | Ref<(string | number)[], (string | number)[]> | - | features/settings/views/admin/useInstallationContent.ts:293 |
showBulkDeleteModal | Ref<boolean, boolean> | - | features/settings/views/admin/useInstallationContent.ts:294 |
getPanelTypeLabel() | (type, profileId?) => string | Nom du modèle d'une centrale : celui de son profil d'abord. Le type de centrale est un vocabulaire fermé à deux valeurs ; il ne distingue plus les modèles depuis qu'un profil se déclare, et toute centrale d'un profil nouveau s'annoncerait « INIS E-16 ». | features/settings/views/admin/useInstallationContent.ts:295 |
columns | DataTableColumn<StationConfiguration>[] | - | features/settings/views/admin/useInstallationContent.ts:296 |
isRowSupervised() | (row) => boolean | Supervision active d'une ligne (défaut vrai tant que l'API ne renseigne pas le champ). | features/settings/views/admin/useInstallationContent.ts:297 |
handleToggleSupervision() | (row) => Promise<void> | Bascule la supervision de la centrale de la ligne (aucun Modbus ni commande quand désactivée). | features/settings/views/admin/useInstallationContent.ts:298 |
statusFilter | Ref<string, string> | - | features/settings/views/admin/useInstallationContent.ts:299 |
statusFilterOptions | object[] | - | features/settings/views/admin/useInstallationContent.ts:300 |
statusPredicate | ComputedRef<((p) => boolean) | null> | - | features/settings/views/admin/useInstallationContent.ts:301 |
handleAddPanel() | () => void | - | features/settings/views/admin/useInstallationContent.ts:302 |
handleEditPanel() | (panel) => void | - | features/settings/views/admin/useInstallationContent.ts:303 |
closeForm() | () => void | - | features/settings/views/admin/useInstallationContent.ts:304 |
handleSavePanel() | (panelData) => Promise<void> | - | features/settings/views/admin/useInstallationContent.ts:305 |
handleDeletePanel() | (panel) => void | - | features/settings/views/admin/useInstallationContent.ts:306 |
confirmDelete() | () => Promise<void> | - | features/settings/views/admin/useInstallationContent.ts:307 |
bulkSupervise() | (enabled) => Promise<void> | Applique la supervision (ou son retrait) à toutes les centrales sélectionnées, puis vide la sélection. | features/settings/views/admin/useInstallationContent.ts:308 |
confirmBulkDelete() | () => Promise<void> | Supprime toutes les centrales sélectionnées après confirmation. | features/settings/views/admin/useInstallationContent.ts:309 |
handleValidatePanel() | (panel) => Promise<void> | Teste la liaison d'une centrale via une notification unique : barre de chargement qui progresse pendant l'attente, puis bascule (couleur + icône) en succès ou en erreur. Si aucune réponse n'est reçue sous CONNECTION_TEST_TIMEOUT_MS, la notification passe en erreur « délai dépassé ». | features/settings/views/admin/useInstallationContent.ts:310 |
closeStatusModal() | () => void | - | features/settings/views/admin/useInstallationContent.ts:311 |