Tracking WIP

This commit is contained in:
Linus Flood
2024-09-27 08:46:12 +02:00
parent 27159d739f
commit 54f094af86
19 changed files with 199 additions and 74 deletions

View File

@@ -5,11 +5,20 @@ import { create } from "zustand"
interface TrackingStoreState {
hasRun: boolean
setHasRun: () => void
initialStartTime: number
setInitialPageLoadTime: (time: number) => void
getPageLoadTime: () => number
}
const useTrackingStore = create<TrackingStoreState>((set) => ({
const useTrackingStore = create<TrackingStoreState>((set, get) => ({
hasRun: false,
initialStartTime: Date.now(),
setInitialPageLoadTime: (time) => set({ initialStartTime: time }),
setHasRun: () => set(() => ({ hasRun: true })),
getPageLoadTime: () => {
const { initialStartTime } = get()
return (Date.now() - initialStartTime) / 1000
},
}))
export default useTrackingStore