By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.
Description
Was looking for a way to manage/revoke/etc. invitations and didn't see anything, so I hope that functionality isn't just somewhere I didn't notice! Tested with multiple orgs/invites. Confirmed revoked invitations give user error message when using invite link. Considered moving "Create User" button to invitations page, but probably too much of a change to base functionality. Could duplicate "Create User" on both pages if desired.
How to test?
Build from source and update Docker image.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/fosrl/pangolin/pull/496
**Author:** [@grokdesigns](https://github.com/grokdesigns)
**Created:** 4/9/2025
**Status:** ✅ Merged
**Merged:** 4/12/2025
**Merged by:** [@miloschwartz](https://github.com/miloschwartz)
**Base:** `dev` ← **Head:** `add-invitation-management`
---
### 📝 Commits (5)
- [`d7f50ba`](https://github.com/fosrl/pangolin/commit/d7f50bac6a802be863bbc3eca568966efb75ca43) Add invitation management
- [`c7f3c9d`](https://github.com/fosrl/pangolin/commit/c7f3c9da92b2451b2c2616bedd14b0df1eb95c54) Removed leftover section from earlier testing
- [`7a55c9a`](https://github.com/fosrl/pangolin/commit/7a55c9ad03382a0977e6467e4c8fe87dfc1a7fe5) Add support for menu children and moved invitations under users
- [`d9e6d0c`](https://github.com/fosrl/pangolin/commit/d9e6d0c71aeb2e63e103581455475795eeb12535) Add regenerate to invitation functionality, see pull request details
- [`d89ca10`](https://github.com/fosrl/pangolin/commit/d89ca10a82b24921e053cb85a9600ba05a418a3c) Had to update child menu item logic
### 📊 Changes
**16 files changed** (+1156 additions, -119 deletions)
<details>
<summary>View changed files</summary>
📝 `server/auth/actions.ts` (+3 -1)
📝 `server/openApi.ts` (+1 -0)
📝 `server/routers/external.ts` (+15 -4)
📝 `server/routers/user/index.ts` (+2 -0)
📝 `server/routers/user/inviteUser.ts` (+101 -42)
➕ `server/routers/user/listInvitations.ts` (+124 -0)
➕ `server/routers/user/removeInvitation.ts` (+69 -0)
📝 `src/app/[orgId]/settings/access/AccessPageHeaderAndNav.tsx` (+13 -4)
➕ `src/app/[orgId]/settings/access/invitations/InvitationsDataTable.tsx` (+96 -0)
➕ `src/app/[orgId]/settings/access/invitations/InvitationsTable.tsx` (+185 -0)
➕ `src/app/[orgId]/settings/access/invitations/RegenerateInvitationForm.tsx` (+254 -0)
➕ `src/app/[orgId]/settings/access/invitations/page.tsx` (+84 -0)
📝 `src/app/[orgId]/settings/access/roles/page.tsx` (+18 -1)
📝 `src/app/[orgId]/settings/access/users/InviteUserForm.tsx` (+32 -20)
📝 `src/app/[orgId]/settings/access/users/page.tsx` (+18 -1)
📝 `src/components/SidebarNav.tsx` (+141 -46)
</details>
### 📄 Description
## Community Contribution License Agreement
By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.
## Description

Was looking for a way to manage/revoke/etc. invitations and didn't see anything, so I hope that functionality isn't just somewhere I didn't notice! Tested with multiple orgs/invites. Confirmed revoked invitations give user error message when using invite link. Considered moving "Create User" button to invitations page, but probably too much of a change to base functionality. Could duplicate "Create User" on both pages if desired.
## How to test?
Build from source and update Docker image.
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/fosrl/pangolin/pull/496
Author: @grokdesigns
Created: 4/9/2025
Status: ✅ Merged
Merged: 4/12/2025
Merged by: @miloschwartz
Base:
dev← Head:add-invitation-management📝 Commits (5)
d7f50baAdd invitation managementc7f3c9dRemoved leftover section from earlier testing7a55c9aAdd support for menu children and moved invitations under usersd9e6d0cAdd regenerate to invitation functionality, see pull request detailsd89ca10Had to update child menu item logic📊 Changes
16 files changed (+1156 additions, -119 deletions)
View changed files
📝
server/auth/actions.ts(+3 -1)📝
server/openApi.ts(+1 -0)📝
server/routers/external.ts(+15 -4)📝
server/routers/user/index.ts(+2 -0)📝
server/routers/user/inviteUser.ts(+101 -42)➕
server/routers/user/listInvitations.ts(+124 -0)➕
server/routers/user/removeInvitation.ts(+69 -0)📝
src/app/[orgId]/settings/access/AccessPageHeaderAndNav.tsx(+13 -4)➕
src/app/[orgId]/settings/access/invitations/InvitationsDataTable.tsx(+96 -0)➕
src/app/[orgId]/settings/access/invitations/InvitationsTable.tsx(+185 -0)➕
src/app/[orgId]/settings/access/invitations/RegenerateInvitationForm.tsx(+254 -0)➕
src/app/[orgId]/settings/access/invitations/page.tsx(+84 -0)📝
src/app/[orgId]/settings/access/roles/page.tsx(+18 -1)📝
src/app/[orgId]/settings/access/users/InviteUserForm.tsx(+32 -20)📝
src/app/[orgId]/settings/access/users/page.tsx(+18 -1)📝
src/components/SidebarNav.tsx(+141 -46)📄 Description
Community Contribution License Agreement
By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.
Description
Was looking for a way to manage/revoke/etc. invitations and didn't see anything, so I hope that functionality isn't just somewhere I didn't notice! Tested with multiple orgs/invites. Confirmed revoked invitations give user error message when using invite link. Considered moving "Create User" button to invitations page, but probably too much of a change to base functionality. Could duplicate "Create User" on both pages if desired.
How to test?
Build from source and update Docker image.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.