Updated optimistic UI reverting

This commit is contained in:
Justin Edmund 2023-01-22 20:35:32 -08:00
parent 9d50c7ae39
commit dd76827995

View file

@ -57,7 +57,7 @@ const CharacterGrid = (props: Props) => {
}) })
const [errorMessage, setErrorMessage] = useState('') const [errorMessage, setErrorMessage] = useState('')
// Create a temporary state to store previous character uncap values // Create a temporary state to store previous weapon uncap values and transcendence stages
const [previousUncapValues, setPreviousUncapValues] = useState<{ const [previousUncapValues, setPreviousUncapValues] = useState<{
[key: number]: number | undefined [key: number]: number | undefined
}>({}) }>({})
@ -357,6 +357,7 @@ const CharacterGrid = (props: Props) => {
position: number, position: number,
stage: number stage: number
) { ) {
storePreviousUncapValue(position)
storePreviousTranscendenceStage(position) storePreviousTranscendenceStage(position)
const payload = { const payload = {
@ -377,12 +378,18 @@ const CharacterGrid = (props: Props) => {
console.error(error) console.error(error)
// Revert optimistic UI // Revert optimistic UI
updateUncapLevel(position, previousUncapValues[position])
updateTranscendenceStage(position, previousTranscendenceStages[position]) updateTranscendenceStage(position, previousTranscendenceStages[position])
// Remove optimistic key // Remove optimistic key
let newPreviousValues = { ...previousTranscendenceStages } let newPreviousTranscendenceStages = { ...previousTranscendenceStages }
delete newPreviousValues[position] let newPreviousUncapValues = { ...previousUncapValues }
setPreviousTranscendenceStages(newPreviousValues)
delete newPreviousTranscendenceStages[position]
delete newPreviousUncapValues[position]
setPreviousTranscendenceStages(newPreviousTranscendenceStages)
setPreviousUncapValues(newPreviousUncapValues)
} }
} }