mirror of
				https://gitea.com/gitea/tea.git
				synced 2025-10-31 01:05:26 +01:00 
			
		
		
		
	Implement notification subcommands (#389)
- [x] enhance notification listing - add `--states` and `--type` filters - toggle per-user or per-repo listing via `--mine` flag - print more fields - [x] add subcommands to mark notifications as read, unread, pinned, unpinned. operates on - all notifications matching the `--state` and `--mine` filter flags, or - a notification specified by ID. - [ ] ~~add a `--fields` flag for notifications listing.~~ *not in this PR* - [ ] ~~interactive mode~~ *not in this PR*. this would go well together with #324 fixes #243, fixes #155 based on initial work in #283 and #386, but opening a new PR for @6543 to review as I changed quite a lot --- ### ⚠️ breaking ⚠️ - `tea notifications --all` has moved to `tea notifications --mine` - `tea notifications` now only works with the context of a remote repo. To run this outside of a local git dir, run either `tea n --mine` or `tea n --repo <my/repo>` --- Co-authored-by: Karl Heinz Marbaise <kama@soebes.de> Co-authored-by: 6543 <6543@obermui.de> Co-authored-by: Norwin Roosen <git@nroo.de> Reviewed-on: https://gitea.com/gitea/tea/pulls/389 Reviewed-by: 6543 <6543@obermui.de> Reviewed-by: Alexey 〒erentyev <axifive@noreply.gitea.io> Co-authored-by: Norwin <noerw@noreply.gitea.io> Co-committed-by: Norwin <noerw@noreply.gitea.io>
This commit is contained in:
		| @@ -5,6 +5,7 @@ | ||||
| package print | ||||
|  | ||||
| import ( | ||||
| 	"fmt" | ||||
| 	"strings" | ||||
|  | ||||
| 	"code.gitea.io/sdk/gitea" | ||||
| @@ -13,6 +14,8 @@ import ( | ||||
| // NotificationsList prints a listing of notification threads | ||||
| func NotificationsList(news []*gitea.NotificationThread, output string, showRepository bool) { | ||||
| 	headers := []string{ | ||||
| 		"ID", | ||||
| 		"Status", | ||||
| 		"Type", | ||||
| 		"State", | ||||
| 		"Index", | ||||
| @@ -39,7 +42,21 @@ func NotificationsList(news []*gitea.NotificationThread, output string, showRepo | ||||
| 			index = "#" + index | ||||
| 		} | ||||
|  | ||||
| 		item := []string{string(n.Subject.Type), string(n.Subject.State), index, n.Subject.Title} | ||||
| 		status := "read" | ||||
| 		if n.Pinned { | ||||
| 			status = "pinned" | ||||
| 		} else if n.Unread { | ||||
| 			status = "unread" | ||||
| 		} | ||||
|  | ||||
| 		item := []string{ | ||||
| 			fmt.Sprint(n.ID), | ||||
| 			status, | ||||
| 			string(n.Subject.Type), | ||||
| 			string(n.Subject.State), | ||||
| 			index, | ||||
| 			n.Subject.Title, | ||||
| 		} | ||||
| 		if showRepository { | ||||
| 			item = append(item, n.Repository.FullName) | ||||
| 		} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Norwin
					Norwin