grafana/public/app/features/users
Alexander Zobnin 757463bd27
Add new role picker to admin/users page (#40631)
* Very simple role picker

* Style radio button

* Separate component for the built-in roles selector

* Custom component instead of Select

* refactor

* Custom input for role picker

* Refactor

* Able to select built-in role

* Add checkboxes for role selector

* Filter out fixed and internal roles

* Add action buttons

* Implement role search

* Fix selecting roles

* Pass custom roles to update

* User role picker

* Some UX work on role picker

* Clear search query on close

* Blur input when closed

* Add roles counter

* Refactor

* Add disabled state for picker

* Adjust disabled styles

* Replace ChangeOrgButton with role picker on admin/users page

* Remove unused code

* Apply suggestions from code review

Suggestions from the @Clarity-89

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Refactor: fix some errors after applying review suggestions

* Show fixed roles in the picker

* Show applied fixed roles

* Fix role counter

* Fix checkbox selection

* Use specific Role type for menu options

* Fix menu when roles list is empty

* Fix radio button name

* Make fixed roles from built-in role disabled

* Make whole menu scrollable

* Add BuiltInRole type

* Simplify appliedRoles

* Simplify options and props

* Do not select and disable inherited fixed roles

* Enable selecting fixed role

* Add description tooltip

* Fix role param name

* Export common input styles from grafana/ui

* Add ValueContainer

* Use value container

* Refactor appliedRoles logic

* Optimise role rendering

* Display selected roles

* Fix tooltip position

* Use OrgRole type

* Optimise role rendering

* Use radio button from grafana UI

* Submenu WIP

* Role picker submenu WIP

* Hide role description

* Tweak styles

* Implement submenu selection

* Disable role selection if it's inherited

* Show new role picker only in Enterprise

* Fix types

* Use orgid when fetching/updating roles

* Use orgId in all access control requests

* Styles for partially checked checkbox

* Tweak group option styles

* Role picker menu: refactor

* Reorganize roles in menu

* Fix input behaviour

* Hide groups on search

* Remove unused components

* Refactor

* Fix group selection

* Remove icons from role tags

* Add spacing for menu sections

* Rename clear all to clear in submenu

* Tweak menu width

* Show changes in the input when selecting roles

* Exclude inherited roles from selection

* Increase menu height

* Change built-in role in input on select

* Include inherited roles to the built-in role selection

* refcator import

* Refactor role picker to be able to pass roles and builtin roles getters

* Add role picker to the org users page

* Show inherited builtin roles in the popup

* Filter out managed roles

* Fix displaying initial builtin roles

* Show tooltip only for non-builtin roles

* Set min width for focused input

* Do not disable inherited roles (by design)

* Only show picker if access control enabled

* Fix tests

* Only close menu on click outside or on indicator click

* Open submenu on hover

* Don't search on empty query

* Do not open/close menu on click

* Refactor

* Apply suggestions from code review

Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>

* Fix formatting

* Apply suggestions

* Add more space for close menu sign

* Tune tooltip styles

* Move tooltip to the right side of option

* Use info sign instead of question

Co-authored-by: Clarity-89 <homes89@ukr.net>
Co-authored-by: Alex Khomenko <Clarity-89@users.noreply.github.com>
2021-11-17 18:22:40 +03:00
..
__mocks__ Forms migration: Org users page (#23372) 2020-04-15 16:49:20 +02:00
__snapshots__ A11y: Fix fastpass issues for /admin/* pages (#39435) 2021-09-22 21:23:54 +01:00
state Access control: Make Admin/Users UI working with the permissions (#33176) 2021-04-22 13:19:41 +03:00
InviteeRow.tsx Chore: Update slate types to fix more strict TypeScript errors (#37159) 2021-07-23 15:33:53 +01:00
InviteesTable.test.tsx fixing issue with copy invite link 2018-12-14 13:49:14 +01:00
InviteesTable.tsx fixing issue with copy invite link 2018-12-14 13:49:14 +01:00
SignupInvited.test.tsx Update dependency @testing-library/user-event to v13 (#40394) 2021-10-14 13:29:41 +01:00
SignupInvited.tsx v8: Update login page design (#33923) 2021-05-11 16:34:44 +02:00
TokenRevokedModal.tsx Theme: Renames new theme model from GrafanaThemeV2 to just GrafanaTheme (#33619) 2021-05-03 09:45:54 +02:00
UsersActionBar.test.tsx Access control: Make Admin/Users UI working with the permissions (#33176) 2021-04-22 13:19:41 +03:00
UsersActionBar.tsx Table panel: Make filter case insensitive (#39746) 2021-09-29 09:35:41 +02:00
UsersListPage.test.tsx Configuration: Prevent browser hanging / crashing with large number of org users (#32546) 2021-04-01 14:46:55 +02:00
UsersListPage.tsx Build: Upgrade Webpack 5 (#36444) 2021-08-31 12:55:05 +02:00
UsersTable.test.tsx Add new role picker to admin/users page (#40631) 2021-11-17 18:22:40 +03:00
UsersTable.tsx Add new role picker to admin/users page (#40631) 2021-11-17 18:22:40 +03:00