code.gitea.io/gitea@v1.19.3/modules/structs/org_team.go (about)

     1  // Copyright 2016 The Gogs Authors. All rights reserved.
     2  // Copyright 2018 The Gitea Authors. All rights reserved.
     3  // SPDX-License-Identifier: MIT
     4  
     5  package structs
     6  
     7  // Team represents a team in an organization
     8  type Team struct {
     9  	ID                      int64         `json:"id"`
    10  	Name                    string        `json:"name"`
    11  	Description             string        `json:"description"`
    12  	Organization            *Organization `json:"organization"`
    13  	IncludesAllRepositories bool          `json:"includes_all_repositories"`
    14  	// enum: none,read,write,admin,owner
    15  	Permission string `json:"permission"`
    16  	// example: ["repo.code","repo.issues","repo.ext_issues","repo.wiki","repo.pulls","repo.releases","repo.projects","repo.ext_wiki"]
    17  	// Deprecated: This variable should be replaced by UnitsMap and will be dropped in later versions.
    18  	Units []string `json:"units"`
    19  	// example: {"repo.code":"read","repo.issues":"write","repo.ext_issues":"none","repo.wiki":"admin","repo.pulls":"owner","repo.releases":"none","repo.projects":"none","repo.ext_wiki":"none"}
    20  	UnitsMap         map[string]string `json:"units_map"`
    21  	CanCreateOrgRepo bool              `json:"can_create_org_repo"`
    22  }
    23  
    24  // CreateTeamOption options for creating a team
    25  type CreateTeamOption struct {
    26  	// required: true
    27  	Name                    string `json:"name" binding:"Required;AlphaDashDot;MaxSize(30)"`
    28  	Description             string `json:"description" binding:"MaxSize(255)"`
    29  	IncludesAllRepositories bool   `json:"includes_all_repositories"`
    30  	// enum: read,write,admin
    31  	Permission string `json:"permission"`
    32  	// example: ["repo.code","repo.issues","repo.ext_issues","repo.wiki","repo.pulls","repo.releases","repo.projects","repo.ext_wiki"]
    33  	// Deprecated: This variable should be replaced by UnitsMap and will be dropped in later versions.
    34  	Units []string `json:"units"`
    35  	// example: {"repo.code":"read","repo.issues":"write","repo.ext_issues":"none","repo.wiki":"admin","repo.pulls":"owner","repo.releases":"none","repo.projects":"none","repo.ext_wiki":"none"}
    36  	UnitsMap         map[string]string `json:"units_map"`
    37  	CanCreateOrgRepo bool              `json:"can_create_org_repo"`
    38  }
    39  
    40  // EditTeamOption options for editing a team
    41  type EditTeamOption struct {
    42  	// required: true
    43  	Name                    string  `json:"name" binding:"AlphaDashDot;MaxSize(30)"`
    44  	Description             *string `json:"description" binding:"MaxSize(255)"`
    45  	IncludesAllRepositories *bool   `json:"includes_all_repositories"`
    46  	// enum: read,write,admin
    47  	Permission string `json:"permission"`
    48  	// example: ["repo.code","repo.issues","repo.ext_issues","repo.wiki","repo.pulls","repo.releases","repo.projects","repo.ext_wiki"]
    49  	// Deprecated: This variable should be replaced by UnitsMap and will be dropped in later versions.
    50  	Units []string `json:"units"`
    51  	// example: {"repo.code":"read","repo.issues":"write","repo.ext_issues":"none","repo.wiki":"admin","repo.pulls":"owner","repo.releases":"none","repo.projects":"none","repo.ext_wiki":"none"}
    52  	UnitsMap         map[string]string `json:"units_map"`
    53  	CanCreateOrgRepo *bool             `json:"can_create_org_repo"`
    54  }