Abstracts the Spinner component to control the display of the CircularProgress component. This allows us to make it static during Chromatic tests, making loading tests easier to visualize.
* feat: add resource-action pills to custom roles table
* fix: remove permission from theme and change name to colorRoles
* fix: revert name from colorRoles to roles
* fix: format
* fix: custom role with no permissions
* feat: extract permissions pull list component and add tests
* chore: undo color roles name change
* feat: add experimental pill colors
* fix: format
* chore: update experiment name
* chore: cleanup
* chore: implement filters for the organizations query
* chore: implement organization sync and create idpsync package
Organization sync can now be configured to assign users to an org based on oidc claims.
This is accomplished by using the members endpoint instead of the users
endpoint, and to that end the UserAutocomplete component has been
reworked to support either endpoint as separate components with a shared
base.
* Add Storybook for groups page
This ensures it is using the right endpoint for the add member dropdown.
* Add ability to mock react-query errors
* chore: allow CreateUser to accept multiple organizations
In a multi-org deployment, it makes more sense to allow for multiple
org memberships to be assigned at create. The legacy param will still
be honored.
* Handle sdk deprecation better by maintaining cli functions
* - allow group members to read basic Group info
- allow group members to see they are part of the group, but not see that information about other members
- add a GetGroupMembersCountByGroupID SQL query, which allows group members to see members count without revealing other information about the members
- add the group_members_expanded db view
- rewrite group member queries to use the group_members_expanded view
- add the RBAC ResourceGroupMember and add it to relevant roles
- rewrite GetGroupMembersByGroupID permission checks
- make the GroupMember type contain all user fields
- fix type issues coming from replacing User with GroupMember in group member queries
- add the MemberTotalCount field to codersdk.Group
- display `group.total_member_count` instead of `group.members.length` on the account page
This can happen if you can edit the members, for example, but not the
organization settings. In this case you will see a new summary page
instead of the edit form.
* chore: add fuzzy name search for templates
* chore: implement fuzzy name matching for templates
Templates search query defaults to a fuzzy name match
* fix: only check flag for organization settings
I added checks against the license but actually what we want is for
these views to become the default even when not licensed (once the
experimental flag is removed).
* Move deployment settings header to components
This will let us use it in the org settings pages, for a consistent
look.
* Add premium badge
* Use settings header on org pages
* Add license badges to create org page
I am not sure if there is maybe a better place for this, but maybe this
is good enough.
* Change create org form description text
It says "change", but there is nothing to change yet since this is a new
organization.
* Consistently capitalize org menu items and headings
Also, remove the "organizations" prefix since it seems redundant.
* chore: remove per-org audit links
For now at least, we will have the one audit page at /audit which lets
you filter by organization.
This also removes the need to do per-org audit permission checks.
* Filter audit org dropdown by auditable orgs
Previously all orgs you can list would appear, but you might not be
able to audit all of them.
* feat: initial commit custom roles
* feat: add page to create and edit custom roles
* feat: add assign org role permission
* feat: wip
* feat: cleanup
* fix: role name is disabled when editing the role
* fix: assign role context menu falls back to name when no display_name
* feat: add helper text to let users know that role name is immutable
* fix: format
* feat: - hide custom roles tab if experiment is not enabled
* fix: use custom TableLoader
* fix: fix custom roles text
* fix: use PatchRoleRequest
* fix: use addIcon to create roles
* feat: add cancel and save buttons to top of page
* fix: use nameValidator for name
* chore: cleanup
* feat: add show all permissions checkbox
* fix: update sidebar for roles
* fix: fix format
* fix: custom roles is not needed outside orgs
* fix: fix sidebar stories
* feat: add custom roles page stories
* fix: use organization permissions
* feat: add stories for CreateEditRolePageView
* fix: design improvements for the create edit role form
* feat: add show all resources checkbox to bottom of table
* feat: improve spacing