* implement summary timeline
* implement summary timeline
* merge dev
* conditionally attach listeners only when dragging
* set up listeners with a ref
* Use dynamic imports to reduce initial load times
Remove videojs
* Convert to using hls.js instead of videojs
* Improve mobile controls experience
* Cleanup
* Ensure playback rate stays teh same when source changes
* Use webp for latest camera image
* Switch to hls.js on error
* Don't rerun error if hls already tried
* Fix error checking
* also check for media decode error to fallback to HLS
---------
Co-authored-by: Josh Hawkins <32435876+hawkeye217@users.noreply.github.com>
* initial try
* add birdseye
* remove vite
* cleanup
* memoize
* remove console
* ensure birdseye is actually enabled in config
* birdseye first in select list and fix jsmpeg player size
* Refactor activity api to send motion and audio data
* Prepare for using motion data timeline
* Get working
* reduce to 0
* fix
* Formatting
* fix typing
* add motion data to timelines and allow motion cameas to be selectable
* Fix tests
* cleanup
* Fix not loading preview when changing hours
* scroll minimap to keep it in view
* remove console log
* change ref
* rebase to dev
* rebase to dev
* rebase to dev
* fix history flexbox and live extra scrollbar
* remove extra class
* initial implementation of review timeline
* hooks
* clean up and comments
* reorganize components
* colors and tweaks
* remove touch events for now
* remove touch events for now
* fix vite config
* use unix timestamps everywhere
* fix corner rounding
* comparison
* use ReviewSegment type
* update mock review event generator
* severity type enum
* remove testing code