Skip to content

Superviseur — Frontend v1.0.0


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 ​

NomTypeDescriptionDéfini dans
panelStoreStore<"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
authStoreStore<"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
panelsComputedRef<object[]>-features/settings/views/admin/useInstallationContent.ts:287
formTargetRef< | { 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
editingPanelComputedRef< | { 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
showDeleteModalRef<boolean, boolean>-features/settings/views/admin/useInstallationContent.ts:290
showStatusModalRef<boolean, boolean>-features/settings/views/admin/useInstallationContent.ts:291
panelToDeleteRef< | { 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
selectedIdsRef<(string | number)[], (string | number)[]>-features/settings/views/admin/useInstallationContent.ts:293
showBulkDeleteModalRef<boolean, boolean>-features/settings/views/admin/useInstallationContent.ts:294
getPanelTypeLabel()(type, profileId?) => stringNom 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
columnsDataTableColumn<StationConfiguration>[]-features/settings/views/admin/useInstallationContent.ts:296
isRowSupervised()(row) => booleanSupervision 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
statusFilterRef<string, string>-features/settings/views/admin/useInstallationContent.ts:299
statusFilterOptionsobject[]-features/settings/views/admin/useInstallationContent.ts:300
statusPredicateComputedRef<((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

Documentation Technique