This PR adds the ability to maintain a log of all of the user route visits.
For anyone reading this: This is not tracking, nor is it related to any kind of analytics. None of this data is persisted to the database. None of this data leaves the user's machine.
All route changes are persisted in a new page_visits cookie that's updated via middleware
All session visits are updated and stored in sessionStorage so that it gets garbage collected based on standard browser rules. This eliminates the need to manage this object manually.
Basically it's just a { [route: string]: number } object so that we can eventually display this data to the user: routes visited this session and top routes historically.
This PR adds the ability to maintain a log of all of the user route visits.
For anyone reading this: This is not tracking, nor is it related to any kind of analytics. None of this data is persisted to the database. None of this data leaves the user's machine.
page_visits
cookie that's updated via middlewaresessionStorage
so that it gets garbage collected based on standard browser rules. This eliminates the need to manage this object manually.Basically it's just a
{ [route: string]: number }
object so that we can eventually display this data to the user: routes visited this session and top routes historically.