feat: edit org display names and descriptions (#13474)

This commit is contained in:
Kayla Washburn-Love
2024-06-06 10:59:59 -06:00
committed by GitHub
parent 1131772e79
commit 44a70a5bc2
22 changed files with 359 additions and 90 deletions
+14 -7
View File
@@ -40,11 +40,13 @@ func ProvisionerTypeValid[T ProvisionerType | string](pt T) error {
// Organization is the JSON representation of a Coder organization.
type Organization struct {
ID uuid.UUID `table:"id" json:"id" validate:"required" format:"uuid"`
Name string `table:"name,default_sort" json:"name" validate:"required"`
CreatedAt time.Time `table:"created_at" json:"created_at" validate:"required" format:"date-time"`
UpdatedAt time.Time `table:"updated_at" json:"updated_at" validate:"required" format:"date-time"`
IsDefault bool `table:"default" json:"is_default" validate:"required"`
ID uuid.UUID `table:"id" json:"id" validate:"required" format:"uuid"`
Name string `table:"name,default_sort" json:"name" validate:"required,username"`
DisplayName string `table:"display_name" json:"display_name" validate:"required"`
Description string `table:"description" json:"description"`
CreatedAt time.Time `table:"created_at" json:"created_at" validate:"required" format:"date-time"`
UpdatedAt time.Time `table:"updated_at" json:"updated_at" validate:"required" format:"date-time"`
IsDefault bool `table:"default" json:"is_default" validate:"required"`
}
type OrganizationMember struct {
@@ -56,11 +58,16 @@ type OrganizationMember struct {
}
type CreateOrganizationRequest struct {
Name string `json:"name" validate:"required,username"`
Name string `json:"name" validate:"required,organization_name"`
// DisplayName will default to the same value as `Name` if not provided.
DisplayName string `json:"display_name" validate:"omitempty,organization_display_name"`
Description string `json:"description,omitempty"`
}
type UpdateOrganizationRequest struct {
Name string `json:"name" validate:"required,username"`
Name string `json:"name,omitempty" validate:"omitempty,organization_name"`
DisplayName string `json:"display_name,omitempty" validate:"omitempty,organization_display_name"`
Description string `json:"description,omitempty"`
}
// CreateTemplateVersionRequest enables callers to create a new Template Version.