mirror of
https://github.com/thomasnordquist/MQTT-Explorer.git
synced 2026-09-12 09:35:01 +00:00
15 lines
515 B
TypeScript
15 lines
515 B
TypeScript
import { useCallback, useState } from 'react'
|
|
|
|
interface SelectedState {
|
|
selected: boolean
|
|
lastUpdate: number
|
|
}
|
|
|
|
export function useSelectionState(initialSelectionState: boolean): [boolean, number, (selected: boolean) => void] {
|
|
const [state, setState] = useState<SelectedState>({ selected: initialSelectionState, lastUpdate: 0 })
|
|
const setSelected = useCallback((selected: boolean) => {
|
|
setState({ selected, lastUpdate: Date.now() })
|
|
}, [])
|
|
return [state.selected, state.lastUpdate, setSelected]
|
|
}
|