Skip to content

Commit 8df2396

Browse files
author
himaniraghav3
committed
PM-1064 Request Copilot button on opportunity feed
1 parent d9d34af commit 8df2396

File tree

1 file changed

+12
-1
lines changed
  • src/apps/copilots/src/pages/copilot-opportunity-list

1 file changed

+12
-1
lines changed

src/apps/copilots/src/pages/copilot-opportunity-list/index.tsx

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
1-
import { FC, useMemo } from 'react'
1+
import { FC, useContext, useMemo } from 'react'
22
import { useNavigate } from 'react-router-dom'
33
import classNames from 'classnames'
44

55
import {
6+
ButtonProps,
67
ContentLayout,
78
LoadingSpinner,
89
PageTitle,
910
Table,
1011
TableColumn,
1112
} from '~/libs/ui'
13+
import { profileContext, ProfileContextData, UserRole } from '~/libs/core'
1214

1315
import { CopilotOpportunity } from '../../models/CopilotOpportunity'
1416
import { copilotRoutesMap } from '../../copilots.routes'
@@ -88,6 +90,9 @@ const tableColumns: TableColumn<CopilotOpportunity>[] = [
8890
const CopilotOpportunityList: FC<{}> = () => {
8991
const navigate = useNavigate()
9092

93+
const { profile }: ProfileContextData = useContext(profileContext)
94+
const canViewRequestCopilotButton: boolean = useMemo(() => !!profile?.roles?.includes(UserRole.tcaAdmin), [profile])
95+
9196
const {
9297
data: opportunities, isValidating, size, setSize,
9398
}: CopilotOpportunitiesResponse = useCopilotOpportunities()
@@ -107,9 +112,15 @@ const CopilotOpportunityList: FC<{}> = () => {
107112

108113
const opportunitiesLoading = isValidating
109114

115+
const addNewRequestButton: ButtonProps = {
116+
label: 'New Copilot Request',
117+
onClick: () => navigate(copilotRoutesMap.CopilotRequestForm),
118+
}
119+
110120
return (
111121
<ContentLayout
112122
title='Copilot Opportunities'
123+
buttonConfig={canViewRequestCopilotButton ? addNewRequestButton : undefined}
113124
>
114125
<PageTitle>Copilot Opportunities</PageTitle>
115126
<Table

0 commit comments

Comments
 (0)