adding handling of exceptions when the request fails (not a nice solution atm, as we do not actively wait for the request failure, but follow up errors)

passing through http codes from backend to frontend
fixing path to environments repository in tiltfile
This commit is contained in:
Sheldan
2024-01-22 22:11:13 +01:00
parent b42f3cca24
commit 627e52776b
9 changed files with 84 additions and 59 deletions

View File

@@ -42,19 +42,23 @@ export function Bank() {
async function reloadBank() {
setBankLoading(true)
const bankSlots = await fetchBank();
if(!config.locked) {
const bankState = {
slots: bankSlots,
addedSlots: [],
removedSlots: []
try {
const bankSlots = await fetchBank();
if(!config.locked) {
const bankState = {
slots: bankSlots,
addedSlots: [],
removedSlots: []
}
dispatch(setBank(bankState))
} else {
const [slotsToAdd, slotsToRemove, slotsToUpdate] = calculateBankDifferences(bank, bankSlots, config.mocking);
dispatch(setRemovedBankSlots(slotsToRemove))
dispatch(setAddedBankSlots(slotsToAdd))
dispatch(updateChangedBankSlots(slotsToUpdate))
}
dispatch(setBank(bankState))
} else {
const [slotsToAdd, slotsToRemove, slotsToUpdate] = calculateBankDifferences(bank, bankSlots, config.mocking);
dispatch(setRemovedBankSlots(slotsToRemove))
dispatch(setAddedBankSlots(slotsToAdd))
dispatch(updateChangedBankSlots(slotsToUpdate))
} catch (e) {
console.log(e)
}
setBankLoading(false)
}

View File

@@ -82,8 +82,12 @@ export const CharacterInventory = ({character}) => {
async function updateCharacter() {
setCharacterLoading(true)
await reloadCharacterInventory();
await reloadWallet();
try {
await reloadCharacterInventory();
await reloadWallet();
} catch (e) {
console.log(e)
}
setCharacterLoading(false)
}

View File

@@ -123,11 +123,15 @@ export function ItemDifference() {
async function fetchInformation() {
dispatch(setLoading(true))
await updateWallet()
await updateBank()
await updateMaterials()
await updatedSharedInventory()
await updateInventoryCharacterSpecific()
try {
await updateWallet()
await updateBank()
await updateMaterials()
await updatedSharedInventory()
await updateInventoryCharacterSpecific()
} catch (e) {
console.log(e)
}
dispatch(setLoading(false))
}

View File

@@ -48,21 +48,26 @@ export function Materials() {
async function reloadMaterials() {
setMaterialsLoading(true)
const materialSlots = await fetchMaterials();
if(!config.locked) {
const materialsState = {
slots: materialSlots,
addedSlots: [],
removedSlots: []
}
dispatch(setMaterials(materialsState))
} else {
const [slotsToAdd, slotsToRemove, slotsToUpdate] = calculateMaterialsDifference(materials, materialSlots, config.mocking);
try {
const materialSlots = await fetchMaterials();
if(!config.locked) {
const materialsState = {
slots: materialSlots,
addedSlots: [],
removedSlots: []
}
dispatch(setMaterials(materialsState))
} else {
const [slotsToAdd, slotsToRemove, slotsToUpdate] = calculateMaterialsDifference(materials, materialSlots, config.mocking);
dispatch(setRemovedMaterialSlots(slotsToRemove))
dispatch(setAddedMaterialSlots(slotsToAdd))
dispatch(updateChangedMaterialSlots(slotsToUpdate))
dispatch(setRemovedMaterialSlots(slotsToRemove))
dispatch(setAddedMaterialSlots(slotsToAdd))
dispatch(updateChangedMaterialSlots(slotsToUpdate))
}
} catch (e) {
console.log(e)
}
setMaterialsLoading(false)
}

View File

@@ -107,12 +107,16 @@ export function OpeningSubmission() {
async function submitOpening() {
dispatch(setLoading(true))
const submissionBody = {}
submissionBody.items = getChanges();
submissionBody.description = openingDescription;
await fetcher("openings", {apiKey: apiKey, method: "POST", body: JSON.stringify(submissionBody), headers: {"Content-Type": "application/json"}})
setOpeningDescription("")
toast('Opening has been submitted.')
try {
const submissionBody = {}
submissionBody.items = getChanges();
submissionBody.description = openingDescription;
await fetcher("openings", {apiKey: apiKey, method: "POST", body: JSON.stringify(submissionBody), headers: {"Content-Type": "application/json"}})
setOpeningDescription("")
toast('Opening has been submitted.')
} catch (e) {
console.log(e)
}
dispatch(setLoading(false))
}

View File

@@ -72,9 +72,13 @@ export function OpeningOverview() {
}
async function loadOpenings() {
setOpeningsLoading(true)
const openings = await fetchOpenings();
dispatch(setOpenings(openings))
try {
setOpeningsLoading(true)
const openings = await fetchOpenings();
dispatch(setOpenings(openings))
} catch (e) {
console.log(e)
}
setOpeningsLoading(false)
}