您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

org_team.go 3.1KB

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