* Fix case where objects are returned as null
* Fix enabled status not being persisted
* Use config as source of truth when refreshed
* Ensure camera always have config object updated
* Cleanup typing
* Fix live cameras not showing on refresh
* Fix live dashboard when birdseye is added
* Handle cameras that are offline / disabled
* Use black instead of green frame
* Fix missing mqtt topics
* config options
* metrics
* stop and restart ffmpeg processes
* dispatcher
* frontend websocket
* buttons for testing
* don't recreate log pipe
* add/remove cam from birdseye when enabling/disabling
* end all objects and send empty camera activity
* enable/disable switch in ui
* disable buttons when camera is disabled
* use enabled_in_config for some frontend checks
* tweaks
* handle settings pane with disabled cameras
* frontend tweaks
* change to debug log
* mqtt docs
* tweak
* ensure all ffmpeg processes are initially started
* clean up
* use zmq
* remove camera metrics
* remove camera metrics
* tweaks
* frontend tweaks
* config file changes
* config migrator
* stream selection on single camera live view
* camera streaming settings dialog
* manage persistent group streaming settings
* apply streaming settings in camera groups
* add ability to clear all streaming settings from settings
* docs
* update reference config
* fixes
* clarify docs
* use first stream as default in dialog
* ensure still image is visible after switching stream type to none
* docs
* clarify docs
* add ability to continue playing stream in background
* fix props
* put stream selection inside dropdown on desktop
* add capabilities to live mode hook
* live context menu component
* resize observer: only return new dimensions if they've actually changed
* pass volume prop to players
* fix slider bug, https://github.com/shadcn-ui/ui/issues/1448
* update react-grid-layout
* prevent animated transitions on draggable grid layout
* add context menu to dashboards
* use provider
* streaming dialog from context menu
* docs
* add jsmpeg warning to context menu
* audio and two way talk indicators in single camera view
* add link to debug view
* don't use hook
* create manual events from live camera view
* maintain grow classes on grid items
* fix initial volume state on default dashboard
* fix pointer events causing context menu to end up underneath image on iOS
* mobile drawer tweaks
* stream stats
* show settings menu for non-restreamed cameras
* consistent settings icon
* tweaks
* optional stats to fix birdseye player
* add toaster to live camera view
* fix crash on initial save in streaming dialog
* don't require restreaming for context menu streaming settings
* add debug view to context menu
* stats fixes
* update docs
* always show stream info when restreamed
* update camera streaming dialog
* make note of no h265 support for webrtc
* docs clarity
* ensure docs show streams as a dict
* docs clarity
* fix css file
* tweaks
* Ensure review and search item mobile pages reopen correctly
* disable pan/pinch/zoom when native browser video controls are displayed
* report 0 for storage usage when api returns null
* custom hook and generic video player component
* add export preview dialog
* export preview dialog when using timeline export
* refactor search detail dialog to use new generic video player component
* clean up
* Improve image loading by not loading when off screen
* Add share menu to export
* Add share button and tidy up review detail lists
* Fix missing key
* Use query args for review filter
* Add object lifecycle to explore dialog
* Adjust sizing
* Simplify share button
* Always show snapshot but hide buttons for frigate+ if not applicable
* Handle case when user switches to element missing the previously selected tab
* Handle cases where share is not available
* Fix logic
* Always enable search page
* Always show eents when searching
* No default search background
* Center and show all filters when semantic search is not enabled
* Limit number of default items shown
* Adjust search options
* Add support for sub label filtering
* Separate out filters and clean up detail pane
* Tablet cleanup
* Fix current hour search preview
* Handle single lists
* Cleanup api search
* Object lifecycle pane
* fix thumbnails and annotation offset math
* snapshot endpoint height and format, yaml types, bugfixes
* clean up for new type
* use get_image_from_recording in recordings snapshot api
* make height optional
* Add basic search page
* Abstract filters to separate components
* Make searching functional
* Add loading and no results indicators
* Implement searching
* Combine account and settings menus on mobile
* Support using thumbnail for in progress detections
* Fetch previews
* Move recordings view and open recordings when search is selected
* Implement detail pane
* Implement saving of description
* Implement similarity search
* Fix clicking
* Add date range picker
* Fix
* Fix iOS zoom bug
* Mobile fixes
* Use text area
* Fix spacing for drawer
* Fix fetching previews incorrectly
* Jump to live when exceeding buffer time threshold in MSE player
* clean up
* Try adjusting playback rate instead of jumping to live
* clean up
* fallback to webrtc if enabled before jsmpeg
* baseline
* clean up
* remove comments
* adaptive playback rate and intelligent switching improvements
* increase logging and reset live mode after camera is no longer active on dashboard only
* jump to live on safari/iOS
* clean up
* clean up
* refactor camera live mode hook
* remove key listener
* resolve conflicts
* If recordings don't exist mark as no recordings
* Fix reloading recordings failing
* Fix mark items not clearing selected
* Cleanup
* Default to last full hour when error occurs
* Remove check
* Cleanup
* Handle empty recordings list case
* Ensure that the start time is within the time range
* Catch other reset cases
* Improve export handling when errors occur
* Fix mobile zooming
* Handle recordings buffering
* Cleanup
* Url encode export name
* Start with actual name in input
* Fix buffering