summaryrefslogtreecommitdiffstats
path: root/modules/structs/org_team.go
diff options
context:
space:
mode:
authorDaniel Baumann <daniel@debian.org>2024-10-18 20:33:49 +0200
committerDaniel Baumann <daniel@debian.org>2024-10-18 20:33:49 +0200
commitdd136858f1ea40ad3c94191d647487fa4f31926c (patch)
tree58fec94a7b2a12510c9664b21793f1ed560c6518 /modules/structs/org_team.go
parentInitial commit. (diff)
downloadforgejo-debian.tar.xz
forgejo-debian.zip
Adding upstream version 9.0.0.upstream/9.0.0upstreamdebian
Signed-off-by: Daniel Baumann <daniel@debian.org>
Diffstat (limited to 'modules/structs/org_team.go')
-rw-r--r--modules/structs/org_team.go54
1 files changed, 54 insertions, 0 deletions
diff --git a/modules/structs/org_team.go b/modules/structs/org_team.go
new file mode 100644
index 0000000..4417758
--- /dev/null
+++ b/modules/structs/org_team.go
@@ -0,0 +1,54 @@
+// Copyright 2016 The Gogs Authors. All rights reserved.
+// Copyright 2018 The Gitea Authors. All rights reserved.
+// SPDX-License-Identifier: MIT
+
+package structs
+
+// Team represents a team in an organization
+type Team struct {
+ ID int64 `json:"id"`
+ Name string `json:"name"`
+ Description string `json:"description"`
+ Organization *Organization `json:"organization"`
+ IncludesAllRepositories bool `json:"includes_all_repositories"`
+ // enum: ["none", "read", "write", "admin", "owner"]
+ Permission string `json:"permission"`
+ // example: ["repo.code","repo.issues","repo.ext_issues","repo.wiki","repo.pulls","repo.releases","repo.projects","repo.ext_wiki"]
+ // Deprecated: This variable should be replaced by UnitsMap and will be dropped in later versions.
+ Units []string `json:"units"`
+ // 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"}
+ UnitsMap map[string]string `json:"units_map"`
+ CanCreateOrgRepo bool `json:"can_create_org_repo"`
+}
+
+// CreateTeamOption options for creating a team
+type CreateTeamOption struct {
+ // required: true
+ Name string `json:"name" binding:"Required;AlphaDashDot;MaxSize(255)"`
+ Description string `json:"description" binding:"MaxSize(255)"`
+ IncludesAllRepositories bool `json:"includes_all_repositories"`
+ // enum: ["read", "write", "admin"]
+ Permission string `json:"permission"`
+ // example: ["repo.actions","repo.code","repo.issues","repo.ext_issues","repo.wiki","repo.ext_wiki","repo.pulls","repo.releases","repo.projects","repo.ext_wiki"]
+ // Deprecated: This variable should be replaced by UnitsMap and will be dropped in later versions.
+ Units []string `json:"units"`
+ // 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"}
+ UnitsMap map[string]string `json:"units_map"`
+ CanCreateOrgRepo bool `json:"can_create_org_repo"`
+}
+
+// EditTeamOption options for editing a team
+type EditTeamOption struct {
+ // required: true
+ Name string `json:"name" binding:"AlphaDashDot;MaxSize(255)"`
+ Description *string `json:"description" binding:"MaxSize(255)"`
+ IncludesAllRepositories *bool `json:"includes_all_repositories"`
+ // enum: ["read", "write", "admin"]
+ Permission string `json:"permission"`
+ // example: ["repo.code","repo.issues","repo.ext_issues","repo.wiki","repo.pulls","repo.releases","repo.projects","repo.ext_wiki"]
+ // Deprecated: This variable should be replaced by UnitsMap and will be dropped in later versions.
+ Units []string `json:"units"`
+ // 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"}
+ UnitsMap map[string]string `json:"units_map"`
+ CanCreateOrgRepo *bool `json:"can_create_org_repo"`
+}