Add timestamp to events

Also add clearEvents/clearEvents
This commit is contained in:
Eric 2024-07-03 11:25:57 +10:00
parent e3390a0bc1
commit ea98b760fe
No known key found for this signature in database
2 changed files with 32 additions and 14 deletions

View File

@ -22,8 +22,16 @@ export const useEventsStore = defineStore(
} = marketplace.filters } = marketplace.filters
const events = ref([]) // {event: 'SlotFreed',blockNumber,requestId,slotIdx,state: 'Free'} const events = ref([]) // {event: 'SlotFreed',blockNumber,requestId,slotIdx,state: 'Free'}
function add({ event, blockNumber, requestId, slotIdx, state }) { function add({ event, blockNumber, requestId, slotIdx, state, timestamp }) {
events.value.push({ event, blockNumber, requestId, slotIdx, state }) events.value.push({ event, blockNumber, requestId, slotIdx, state, timestamp })
}
function clearEvents() {
events.value = []
}
function clearEvent(idx) {
delete events.value[idx]
} }
async function listenForNewEvents() { async function listenForNewEvents() {
@ -35,7 +43,8 @@ export const useEventsStore = defineStore(
event: StorageEvent.StorageRequested, event: StorageEvent.StorageRequested,
blockNumber, blockNumber,
requestId, requestId,
state: RequestState.New state: RequestState.New,
timestamp: request.requestedAt
}) })
} }
@ -49,8 +58,9 @@ export const useEventsStore = defineStore(
} }
} }
let { blockNumber } = event.log let { blockNumber, blockHash } = event.log
add({ event: StorageEvent.RequestFulfilled, blockNumber, requestId, state }) const { timestamp } = await requests.getBlock(blockHash)
add({ event: StorageEvent.RequestFulfilled, blockNumber, requestId, state, timestamp })
} }
async function onRequestCancelled(requestId, event) { async function onRequestCancelled(requestId, event) {
@ -64,8 +74,9 @@ export const useEventsStore = defineStore(
} }
} }
let { blockNumber } = event.log let { blockNumber, blockHash } = event.log
add({ event: StorageEvent.RequestCancelled, blockNumber, requestId, state }) const { timestamp } = await requests.getBlock(blockHash)
add({ event: StorageEvent.RequestCancelled, blockNumber, requestId, state, timestamp })
} }
async function onRequestFailed(requestId, event) { async function onRequestFailed(requestId, event) {
@ -79,8 +90,9 @@ export const useEventsStore = defineStore(
} }
} }
let { blockNumber } = event.log let { blockNumber, blockHash } = event.log
add({ event: StorageEvent.RequestFailed, blockNumber, requestId, state }) const { timestamp } = await requests.getBlock(blockHash)
add({ event: StorageEvent.RequestFailed, blockNumber, requestId, state, timestamp })
} }
async function onSlotFreed(requestId, slotIdx, event) { async function onSlotFreed(requestId, slotIdx, event) {
@ -94,8 +106,9 @@ export const useEventsStore = defineStore(
} }
} }
let { blockNumber } = event.log let { blockNumber, blockHash } = event.log
add({ event: StorageEvent.SlotFreed, blockNumber, requestId, slotIdx, state }) const { timestamp } = await requests.getBlock(blockHash)
add({ event: StorageEvent.SlotFreed, blockNumber, requestId, slotIdx, state, timestamp })
} }
async function onSlotFilled(requestId, slotIdx, event) { async function onSlotFilled(requestId, slotIdx, event) {
@ -111,8 +124,9 @@ export const useEventsStore = defineStore(
} }
} }
let { blockNumber } = event.log let { blockNumber, blockHash } = event.log
add({ event: StorageEvent.SlotFilled, blockNumber, requestId, slotIdx, state }) const { timestamp } = await requests.getBlock(blockHash)
add({ event: StorageEvent.SlotFilled, blockNumber, requestId, slotIdx, state, timestamp })
} }
await marketplace.removeAllListeners(StorageRequested) await marketplace.removeAllListeners(StorageRequested)
@ -136,6 +150,8 @@ export const useEventsStore = defineStore(
return { return {
events, events,
clearEvent,
clearEvents,
listenForNewEvents, listenForNewEvents,
add add
} }

View File

@ -289,7 +289,8 @@ export const useRequestsStore = defineStore(
event: 'RequestFinished', event: 'RequestFinished',
blockNumber, blockNumber,
requestId, requestId,
state: RequestState.Finished state: RequestState.Finished,
timestamp: Date.now() / 1000
}) })
}, msFromNow + 1000) // add additional second to ensure state has changed }, msFromNow + 1000) // add additional second to ensure state has changed
} }
@ -308,6 +309,7 @@ export const useRequestsStore = defineStore(
requests, requests,
blocks, blocks,
add, add,
getBlock,
fetchPastRequests, fetchPastRequests,
refetchRequestStates, refetchRequestStates,
fetchRequestDetails, fetchRequestDetails,