refactor: fix pagination with stable resolveKey, use reactive default… (#4951)

* refactor: fix pagination with stable resolveKey, use reactive defaultRoles, and remove email permission check

* Changes from call

* More changes from call

* WIP fixing team composite cursor

* paginated items fix

* minor rename

* composite cursor tools improved

* fe undoing debugging stuff

* extra fixes

* invitable collabs fix

---------

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
This commit is contained in:
andrewwallacespeckle
2025-06-19 09:28:31 +02:00
committed by GitHub
parent 794bd7c7e9
commit c89fe339ec
20 changed files with 228 additions and 151 deletions
@@ -197,8 +197,6 @@ import { getProjectFactory } from '@/modules/core/repositories/projects'
import { getProjectRegionKey } from '@/modules/multiregion/utils/regionSelector'
import { scheduleJob } from '@/modules/multiregion/services/queue'
import { updateWorkspacePlanFactory } from '@/modules/gatekeeper/services/workspacePlans'
import { GetWorkspaceCollaboratorsArgs } from '@/modules/workspaces/domain/operations'
import { WorkspaceTeamMember } from '@/modules/workspaces/domain/types'
import { UsersMeta } from '@/modules/core/dbSchema'
import { setUserActiveWorkspaceFactory } from '@/modules/workspaces/repositories/users'
import { getGenericRedis } from '@/modules/shared/redis/redis'
@@ -2086,10 +2084,7 @@ export = FF_WORKSPACES_MODULE_ENABLED
},
LimitedWorkspace: {
team: async (parent, args) => {
const team = await getPaginatedItemsFactory<
Pick<GetWorkspaceCollaboratorsArgs, 'workspaceId' | 'limit' | 'cursor'>,
WorkspaceTeamMember
>({
const team = await getPaginatedItemsFactory({
getItems: getWorkspaceCollaboratorsFactory({ db }),
getTotalCount: getWorkspaceCollaboratorsTotalCountFactory({ db })
})({
@@ -2107,7 +2102,7 @@ export = FF_WORKSPACES_MODULE_ENABLED
roles: [Roles.Workspace.Admin]
}
})
return team
return team.items
}
},
ActiveUserMutations: {