Skip to content

backends-web-backend


Class: ProjectsController

Defined in: backends/web-backend/src/projects/projects.controller.ts:36

Constructors

Constructor

new ProjectsController(projectsService): ProjectsController

Defined in: backends/web-backend/src/projects/projects.controller.ts:37

Parameters

projectsService

ProjectsService

Returns

ProjectsController

Methods

create()

create(body, req): Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>

Defined in: backends/web-backend/src/projects/projects.controller.ts:65

Parameters

body
mode

"internal-events" | "internal-hazards" | "external-hazards" | "full-scope" = RiskModeSchema

name

string = ...

pageLayout?

"modern" | "legacy" = ...

req

AuthenticatedRequest

Returns

Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>


duplicate()

duplicate(id, req): Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>

Defined in: backends/web-backend/src/projects/projects.controller.ts:84

Parameters

id

string

req

AuthenticatedRequest

Returns

Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>


getOne()

getOne(id, req): Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>

Defined in: backends/web-backend/src/projects/projects.controller.ts:59

Parameters

id

string

req

AuthenticatedRequest

Returns

Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>


getOwned()

getOwned(req): Promise<{ projects: object[]; }>

Defined in: backends/web-backend/src/projects/projects.controller.ts:41

Parameters

req

AuthenticatedRequest

Returns

Promise<{ projects: object[]; }>


getRecent()

getRecent(req): Promise<{ project: { id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; } | null; }>

Defined in: backends/web-backend/src/projects/projects.controller.ts:47

Parameters

req

AuthenticatedRequest

Returns

Promise<{ project: { id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; } | null; }>


getShared()

getShared(req): Promise<{ projects: object[]; }>

Defined in: backends/web-backend/src/projects/projects.controller.ts:53

Parameters

req

AuthenticatedRequest

Returns

Promise<{ projects: object[]; }>


remove()

remove(id, req): Promise<void>

Defined in: backends/web-backend/src/projects/projects.controller.ts:152

Parameters

id

string

req

AuthenticatedRequest

Returns

Promise<void>


shareWithTeam()

shareWithTeam(id, body, req): Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>

Defined in: backends/web-backend/src/projects/projects.controller.ts:90

Parameters

id

string

body
role

"viewer" | "editor" = ProjectShareRoleSchema

teamId

string = ...

req

AuthenticatedRequest

Returns

Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>


shareWithUser()

shareWithUser(id, body, req): Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>

Defined in: backends/web-backend/src/projects/projects.controller.ts:121

Parameters

id

string

body
identifier

string = ...

role

"viewer" | "editor" = ProjectShareRoleSchema

req

AuthenticatedRequest

Returns

Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>


unshareFromTeam()

unshareFromTeam(id, teamId, req): Promise<void>

Defined in: backends/web-backend/src/projects/projects.controller.ts:111

Parameters

id

string

teamId

string

req

AuthenticatedRequest

Returns

Promise<void>


unshareFromUser()

unshareFromUser(id, username, req): Promise<void>

Defined in: backends/web-backend/src/projects/projects.controller.ts:142

Parameters

id

string

username

string

req

AuthenticatedRequest

Returns

Promise<void>


update()

update(id, body, req): Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>

Defined in: backends/web-backend/src/projects/projects.controller.ts:74

Parameters

id

string

body
name?

string = ...

pageLayout?

"modern" | "legacy" = ...

pinned?

boolean = ...

state?

"active" | "baseline" | "archived" = ...

req

AuthenticatedRequest

Returns

Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>


updateTeamShare()

updateTeamShare(id, teamId, body, req): Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>

Defined in: backends/web-backend/src/projects/projects.controller.ts:100

Parameters

id

string

teamId

string

body
role

"viewer" | "editor" = ProjectShareRoleSchema

req

AuthenticatedRequest

Returns

Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>


updateUserShare()

updateUserShare(id, username, body, req): Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>

Defined in: backends/web-backend/src/projects/projects.controller.ts:131

Parameters

id

string

username

string

body
role

"viewer" | "editor" = ProjectShareRoleSchema

req

AuthenticatedRequest

Returns

Promise<{ id: string; mode: "internal-events" | "internal-hazards" | "external-hazards" | "full-scope"; modeLabel: string; myRole: "viewer" | "editor" | "owner"; name: string; ownerFullName: string; ownerInitials: string; ownerUsername: string; pageLayout: "modern" | "legacy"; pinned: boolean; progress: number; sharedTeams: object[]; sharedUsers: object[]; state: "active" | "baseline" | "archived"; status: Record<string, "baseline" | "in-progress" | "not-started" | "na">; updatedAt: string; version: number; }>