diff --git a/frontend/src/openapi/models/addRoleAccessToProject400.ts b/frontend/src/openapi/models/addRoleAccessToProject400.ts deleted file mode 100644 index 74b0b4a36b..0000000000 --- a/frontend/src/openapi/models/addRoleAccessToProject400.ts +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Generated by Orval - * Do not edit manually. - * See `gen:api` script in package.json - */ - -export type AddRoleAccessToProject400 = { - /** The ID of the error instance */ - id?: string; - /** A description of what went wrong. */ - message?: string; - /** The name of the error kind */ - name?: string; -}; diff --git a/frontend/src/openapi/models/addRoleAccessToProject401.ts b/frontend/src/openapi/models/addRoleAccessToProject401.ts deleted file mode 100644 index 80cad35922..0000000000 --- a/frontend/src/openapi/models/addRoleAccessToProject401.ts +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Generated by Orval - * Do not edit manually. - * See `gen:api` script in package.json - */ - -export type AddRoleAccessToProject401 = { - /** The ID of the error instance */ - id?: string; - /** A description of what went wrong. */ - message?: string; - /** The name of the error kind */ - name?: string; -}; diff --git a/frontend/src/openapi/models/addRoleAccessToProject403.ts b/frontend/src/openapi/models/addRoleAccessToProject403.ts deleted file mode 100644 index 4444a6ddf9..0000000000 --- a/frontend/src/openapi/models/addRoleAccessToProject403.ts +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Generated by Orval - * Do not edit manually. - * See `gen:api` script in package.json - */ - -export type AddRoleAccessToProject403 = { - /** The ID of the error instance */ - id?: string; - /** A description of what went wrong. */ - message?: string; - /** The name of the error kind */ - name?: string; -}; diff --git a/frontend/src/openapi/models/addRoleAccessToProject404.ts b/frontend/src/openapi/models/addRoleAccessToProject404.ts deleted file mode 100644 index a1bb99f6f9..0000000000 --- a/frontend/src/openapi/models/addRoleAccessToProject404.ts +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Generated by Orval - * Do not edit manually. - * See `gen:api` script in package.json - */ - -export type AddRoleAccessToProject404 = { - /** The ID of the error instance */ - id?: string; - /** A description of what went wrong. */ - message?: string; - /** The name of the error kind */ - name?: string; -}; diff --git a/frontend/src/openapi/models/addRoleAccessToProject415.ts b/frontend/src/openapi/models/addRoleAccessToProject415.ts deleted file mode 100644 index 02d736eb12..0000000000 --- a/frontend/src/openapi/models/addRoleAccessToProject415.ts +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Generated by Orval - * Do not edit manually. - * See `gen:api` script in package.json - */ - -export type AddRoleAccessToProject415 = { - /** The ID of the error instance */ - id?: string; - /** A description of what went wrong. */ - message?: string; - /** The name of the error kind */ - name?: string; -}; diff --git a/frontend/src/openapi/models/index.ts b/frontend/src/openapi/models/index.ts index 175c175e67..145177cdfa 100644 --- a/frontend/src/openapi/models/index.ts +++ b/frontend/src/openapi/models/index.ts @@ -52,11 +52,6 @@ export * from './addMilestoneToReleasePlanTemplate403'; export * from './addMilestoneToReleasePlanTemplate404'; export * from './addPublicSignupTokenUser400'; export * from './addPublicSignupTokenUser409'; -export * from './addRoleAccessToProject400'; -export * from './addRoleAccessToProject401'; -export * from './addRoleAccessToProject403'; -export * from './addRoleAccessToProject404'; -export * from './addRoleAccessToProject415'; export * from './addRoleToUser401'; export * from './addRoleToUser403'; export * from './addRoleToUser404'; diff --git a/src/lib/db/access-store.ts b/src/lib/db/access-store.ts index 7bca87b44f..dde7dd2e2c 100644 --- a/src/lib/db/access-store.ts +++ b/src/lib/db/access-store.ts @@ -3,7 +3,6 @@ import metricsHelper from '../util/metrics-helper'; import { DB_TIME } from '../metric-events'; import type { Logger } from '../logger'; import type { - IAccessInfo, IAccessStore, IProjectRoleUsage, IRole, @@ -603,46 +602,6 @@ export class AccessStore implements IAccessStore { .update('role_id', roleId); } - async addRoleAccessToProject( - users: IAccessInfo[], - groups: IAccessInfo[], - projectId: string, - roleId: number, - createdBy: string, - ): Promise { - const userRows = users.map((user) => { - return { - user_id: user.id, - project: projectId, - role_id: roleId, - }; - }); - - const groupRows = groups.map((group) => { - return { - group_id: group.id, - project: projectId, - role_id: roleId, - created_by: createdBy, - }; - }); - - await inTransaction(this.db, async (tx) => { - if (userRows.length > 0) { - await tx(T.ROLE_USER) - .insert(userRows) - .onConflict(['project', 'role_id', 'user_id']) - .merge(); - } - if (groupRows.length > 0) { - await tx(T.GROUP_ROLE) - .insert(groupRows) - .onConflict(['project', 'role_id', 'group_id']) - .merge(); - } - }); - } - async addAccessToProject( roles: number[], groups: number[], diff --git a/src/lib/features/project/project-service.ts b/src/lib/features/project/project-service.ts index 1a51ce953f..341c3c640c 100644 --- a/src/lib/features/project/project-service.ts +++ b/src/lib/features/project/project-service.ts @@ -56,7 +56,6 @@ import { type IOnboardingReadModel, } from '../../types'; import type { - IProjectAccessModel, IRoleDescriptor, IRoleWithProject, } from '../../types/stores/access-store'; @@ -843,38 +842,6 @@ export default class ProjectService { ); } - /** - * @deprecated use `addAccess` instead - */ - async addRoleAccess( - projectId: string, - roleId: number, - usersAndGroups: IProjectAccessModel, - auditUser: IAuditUser, - ): Promise { - await this.accessService.addRoleAccessToProject( - usersAndGroups.users, - usersAndGroups.groups, - projectId, - roleId, - auditUser, - ); - - await this.eventService.storeEvent( - new ProjectAccessAddedEvent({ - project: projectId, - auditUser, - data: { - roles: { - roleId, - groupIds: usersAndGroups.groups.map(({ id }) => id), - userIds: usersAndGroups.users.map(({ id }) => id), - }, - }, - }), - ); - } - private isAdmin(userId: number, roles: IRoleWithProject[]): boolean { return ( userId === SYSTEM_USER_ID || diff --git a/src/lib/services/access-service.ts b/src/lib/services/access-service.ts index e5178dc2e6..2929517081 100644 --- a/src/lib/services/access-service.ts +++ b/src/lib/services/access-service.ts @@ -1,7 +1,6 @@ import * as permissions from '../types/permissions'; import type { IAuditUser, IUser } from '../types/user'; import type { - IAccessInfo, IAccessStore, IGroupWithProjectRoles, IProjectRoleUsage, @@ -342,22 +341,6 @@ export class AccessService { return this.store.addGroupToRole(groupId, roleId, createdBy, projectId); } - async addRoleAccessToProject( - users: IAccessInfo[], - groups: IAccessInfo[], - projectId: string, - roleId: number, - auditUser: IAuditUser, - ): Promise { - return this.store.addRoleAccessToProject( - users, - groups, - projectId, - roleId, - auditUser.username, - ); - } - async addAccessToProject( roles: number[], groups: number[], diff --git a/src/lib/types/stores/access-store.ts b/src/lib/types/stores/access-store.ts index 9d571d106a..195448b269 100644 --- a/src/lib/types/stores/access-store.ts +++ b/src/lib/types/stores/access-store.ts @@ -39,15 +39,6 @@ export interface IRoleDescriptor { type: string; } -export interface IProjectAccessModel { - users: IAccessInfo[]; - groups: IAccessInfo[]; -} - -export interface IAccessInfo { - id: number; -} - export interface IUserRole { roleId: number; userId: number; @@ -115,14 +106,6 @@ export interface IAccessStore extends Store { projectId?: string, ): Promise; - addRoleAccessToProject( - users: IAccessInfo[], - groups: IAccessInfo[], - projectId: string, - roleId: number, - createdBy: string, - ): Promise; - addAccessToProject( roles: number[], groups: number[], diff --git a/src/test/fixtures/fake-access-store.ts b/src/test/fixtures/fake-access-store.ts index c6b81dd983..b197f3768d 100644 --- a/src/test/fixtures/fake-access-store.ts +++ b/src/test/fixtures/fake-access-store.ts @@ -1,6 +1,5 @@ /* eslint-disable @typescript-eslint/no-unused-vars */ import type { - IAccessInfo, IAccessStore, IProjectRoleUsage, IRole, @@ -43,16 +42,6 @@ export class FakeAccessStore implements IAccessStore { throw new Error('Method not implemented.'); } - addRoleAccessToProject( - users: IAccessInfo[], - groups: IAccessInfo[], - projectId: string, - roleId: number, - createdBy: string, - ): Promise { - throw new Error('Method not implemented.'); - } - addAccessToProject( roles: number[], groups: number[],