blakeblackshear.frigate/web/src/hooks
Josh Hawkins ed1e3a7c9a
Enhance user roles to limit camera access (#20024)
* update config for roles and add validator

* ensure admin and viewer are never overridden

* add class method to user to retrieve all allowed cameras

* enforce config roles in auth api endpoints

* add camera access api dependency functions

* protect review endpoints

* protect preview endpoints

* rename param name for better fastapi injection matching

* remove unneeded

* protect export endpoints

* protect event endpoints

* protect media endpoints

* update auth hook for allowed cameras

* update default app view

* ensure anonymous user always returns all cameras

* limit cameras in explore

* cameras is already a list

* limit cameras in review/history

* limit cameras in live view

* limit cameras in camera groups

* only show face library and classification in sidebar for admin

* remove check in delete reviews

since admin role is required, no need to check camera access. fixes failing test

* pass request with camera access for tests

* more async

* camera access tests

* fix proxy auth tests

* allowed cameras for review tests

* combine event tests and refactor for camera access

* fix post validation for roles

* don't limit roles in create user dialog

* fix triggers endpoints

no need to run require camera access dep since the required role is admin

* fix type

* create and edit role dialogs

* delete role dialog

* fix role change dialog

* update settings view for roles

* i18n changes

* minor spacing tweaks

* docs

* use badges and camera name label component

* clarify docs

* display all cameras badge for admin and viewer

* i18n fix

* use validator to prevent reserved and empty roles from being assigned

* split users and roles into separate tabs in settings

* tweak docs

* clarify docs

* change icon

* don't memoize roles

always recalculate on component render
2025-09-12 05:19:29 -06:00
..
resize-observer.ts Improve live streaming (#16447) 2025-02-10 09:42:35 -07:00
use-allowed-cameras.ts Enhance user roles to limit camera access (#20024) 2025-09-12 05:19:29 -06:00
use-api-filter.ts Fixes (#19406) 2025-08-06 22:09:43 -05:00
use-camera-activity.ts Improve audio detection debugging (#19753) 2025-08-25 13:40:21 -05:00
use-camera-friendly-name.ts Rename nickname to friendly_name (#19782) 2025-08-26 15:29:52 -05:00
use-camera-live-mode.ts Fixes (#19708) 2025-08-22 07:04:30 -05:00
use-camera-previews.ts Fix fetching of generated preview video (#13498) 2024-09-02 09:18:58 -05:00
use-contextmenu.ts Face UI cleanup (#17472) 2025-03-31 16:49:56 -05:00
use-date-locale.ts Add languages (#19447) 2025-08-10 06:27:47 -06:00
use-date-utils.ts Improve timezone handling (#18257) 2025-05-15 17:13:32 -05:00
use-deep-memo.ts Add status bar provider (#11066) 2024-04-22 08:20:23 -06:00
use-doc-domain.ts feat: document locale url (#18409) 2025-05-28 06:10:45 -06:00
use-draggable-element.ts Proper i18n date/time handling (#17858) 2025-04-22 15:50:21 -06:00
use-event-segment-utils.ts UI changes (#10651) 2024-03-24 11:39:28 -06:00
use-fullscreen.ts Dynamically detect if full screen is supported (#13197) 2024-08-19 16:01:21 -05:00
use-global-mutate.ts Regenerate genai tracked object descriptions (#13930) 2024-09-24 08:14:51 -06:00
use-image-loaded.ts Faster skeleton with refs (#10063) 2024-02-26 11:34:52 -07:00
use-is-admin.ts UI viewer role (#16978) 2025-03-08 10:01:08 -06:00
use-is-custom-role.ts Enhance user roles to limit camera access (#20024) 2025-09-12 05:19:29 -06:00
use-keyboard-listener.tsx Misc Improvements (#14076) 2024-09-30 16:55:44 -05:00
use-motion-segment-utils.ts Motion review playback optimizations (#10659) 2024-03-24 20:37:44 -06:00
use-mouse-listener.ts Implement scroll lock for previews (#10180) 2024-03-01 17:34:41 -07:00
use-navigation.ts Enhance user roles to limit camera access (#20024) 2025-09-12 05:19:29 -06:00
use-optimistic-state.ts Fix optimistic state (#11556) 2024-05-27 07:59:26 -05:00
use-overlay-state.tsx Various fixes (#17342) 2025-03-24 12:25:36 -05:00
use-persistence.ts Ensure that persisted state is kept in sync (#12596) 2024-07-24 11:17:32 -06:00
use-press.ts Explore bulk actions (#15307) 2024-12-02 11:12:55 -07:00
use-session-persistence.ts Persist live view muted/unmuted for session only (#12727) 2024-08-09 06:46:39 -06:00
use-stats.ts Add low shm warning to bottom bar (#19824) 2025-08-28 14:32:05 -05:00
use-suggestions.ts Add ability to filter search by time range (#13946) 2024-09-25 10:05:40 -06:00
use-tap-utils.ts Scrolling fixes and motion timeline changes (#10295) 2024-03-06 14:35:10 -07:00
use-timeline-utils.ts Timeline tweaks for mobile (#10726) 2024-03-28 10:03:06 -05:00
use-timeline-zoom.ts Listen on timeline ref instead of window (#18006) 2025-05-02 17:35:55 -06:00
use-video-dimensions.ts Fix HLS video initial aspect on Chrome (#19805) 2025-08-27 12:27:18 -06:00