* build(deps): bump dependencies
* build(deps): bump next to 12.0.8
* build(deps): bump swr to 1.1.2
* build(deps): bump more dependencies
* build(deps): bump husky to 7.0.4
* fix: remove user list button outlines
* build(deps): bump dependencies again
* build(deps): bump dependencies once more
* feat(api): allow importing of only selected Plex users
* feat(frontend): modal for importing Plex users
* feat: add alert if 'Enable New Plex Sign-In' setting is enabled
* refactor: fetch all existing Plex users in a single DB query
Co-authored-by: Ryan Cohen <ryan@sct.dev>
* fix(frontend): more issues-related fixes
* fix: permission VIEW_ISSUES is also sufficient for viewing issues in slideover
* fix(frontend): only display issue notif types user is eligible to receive
* fix: don't display issues block in slideover if no open issues
* fix: move year out of link in issue details header
* fix: use 'view' global string for issue block button
* fix: issue/request/user list sort options
* refactor(ui): add prev/next button icons
* refactor(ui): use mail icon instead of at symbol icon for email
* refactor(ui): use ↻ symbol instead of ⤾ for reload button
* refactor(ui): add missing icons to password reset pages
* refactor(ui): add icons for save & test buttons
Co-authored-by: sct <ryan@sct.dev>
* fix: check that application URL and email agent are configured for password reset/generation
* refactor: reverse flex direction instead of conditionally changing justify
* fix(plex): do not fail to import Plex users when Plex Home has managed users
* fix: default display name to email when user has no username
also, do not set username or plexUsername when it is the same as the user's email address
* fix(ui): user display name placeholder should reflect fallback logic if username is not set
* fix(ui): hide email addresses of other users if logged-in user does not have Manage Users permission
* fix: always set Plex username even if same as user's email
* fix: remove unnecessary permission check
* fix: transform email addresses to lowercase
* refactor(css): add global classes for common icon types
* refactor(css): target child SVGs instead of creating new icon classes
* fix: fix ButtonWithDropdown style class spacing
* fix: set editRequest attribute for RequestModal
* fix: remove now-unneeded conditional
* fix(ui): only show 'View Request' for user's own requests if they don't have MANAGE_REQUESTS perm
* fix(ui): show edit button on request list for own requests & 'View Request' button on series pages
* fix(ui): do not show 'Request More' if user already has a pending request
* fix: address PR comments
* fix(lang): edit usercreatedfaileexisting string & generate translation key
* fix: users should always be able to view/edit their own requests even if their perms have changed
also fixed capitalization of 'Signing In...' string
* fix(ui): hide alert when email notifs are already configured
* fix(ui): disable instead of hide checkbox
* fix: determine if email notifications are enabled via user settings endpoint
* refactor(ui): improved alerts for services settings & removed alert titles
* fix(ui): set styling of alert links to be consistent w/ others
* fix(ui): clarify appropriate 4K setting when user has not configured a default non-4K server
* fix: remove unused var/eslint-disable & correct string
* feat(ui): add user requests page
* fix: return error if user attempts to fetch another user's requests without adequate perms
* fix(ui): make user name on request page link back to user profile
* feat(ui): link user request count to their filtered request list view
* fix(frontend): only display user requests on profiles if current user has adequate perms
* fix: use 'all' filter for user-filtered request list
* fix(frontend): pass userId to router.push()
* fix: do not pass userId in query for non-user-filtered requests page
* fix(frontend): also allow REQUEST_VIEW perm through route guard
* fix(frontend): only link request count to user request list if current user has required perms
* fix(lang): 'scan plex libraries' should actually be 'sync'
* fix(lang): also fix user import string in case of no imported users
* fix(lang): remove unused 'User Rating' strings
* fix: do not allow editing of user settings under certain conditions
* feat(lang): generate translation keys for new strings
* refactor: modify owner check for clarity
* fix(ui): hide buttons where appropriate and add missing translation string
* feat(ui): display "Owner" role instead of "Admin" for user ID 1
Also add role to user settings page, and fix the missing "Account Type" string and use the same
verbiage on the user list page
* feat(lang): generate translation keys
* fix: utilize hasPermission returned by useUser instead of importing from server/lib/permissions