Skip to content

[PROD RELEASE] - Q2 #1027

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 159 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
159 commits
Select commit Hold shift + click to select a range
7d3d922
PM-462 - update urls
vas3a Jan 13, 2025
2dc5180
Fix default values on onboarding form
Jan 15, 2025
3d527f1
Merge pull request #990 from topcoder-platform/PM-462_platform-ui-dep…
vas3a Jan 16, 2025
9fac945
Merge pull request #992 from topcoder-platform/PM-505
himaniraghav3 Jan 16, 2025
da59c87
fix: breadcrumb url
hentrymartin Jan 20, 2025
26b7ffc
PM-505 Fix QA feedback
Jan 20, 2025
48a3b1a
lint fix
Jan 20, 2025
58ac4ae
Merge pull request #994 from topcoder-platform/PM-505
himaniraghav3 Jan 21, 2025
b495218
Merge pull request #993 from topcoder-platform/pm-553
hentrymartin Jan 21, 2025
91359f5
PM-579 Add copilot request UI
Jan 27, 2025
c4999cf
PR feedback
Jan 27, 2025
e3f4bf9
Integrate save request API
Jan 28, 2025
6c5bd34
linting fix
Jan 29, 2025
45b867e
project types and basic fixes
Feb 5, 2025
dd570a9
Merge pull request #995 from topcoder-platform/PM-579-copilot-form
himaniraghav3 Feb 6, 2025
2f574c6
Change Restricted route logic
Feb 6, 2025
3d05b30
Merge pull request #996 from topcoder-platform/PM-579-copilot-form
himaniraghav3 Feb 7, 2025
823e866
Make buttons in form responsive
Feb 7, 2025
0945384
Merge pull request #997 from topcoder-platform/PM-579-copilot-form
himaniraghav3 Feb 7, 2025
2d96d41
v5 challenge management
nqviet Feb 10, 2025
ff564dc
Final-fix
nqviet Feb 10, 2025
9f15201
Lint-fix
nqviet Feb 10, 2025
0cde051
Src folder
nqviet Feb 10, 2025
e7d3d3e
Resolve merge conflict
nqviet Feb 11, 2025
238f238
QR feedback on copilot request form
Feb 11, 2025
b3c5042
Add the pagination LAST button
nqviet Feb 12, 2025
c20c266
Omit Readme.md
nqviet Feb 12, 2025
c14d0ac
Change useEffect to useMemo
Feb 12, 2025
ac7a909
Merge pull request #999 from topcoder-platform/PM-579-copilot-form
himaniraghav3 Feb 12, 2025
42fc504
Merge pull request #998 from nqviet/dev
jmgasper Feb 12, 2025
cb5f0e9
Update routes for dev
jmgasper Feb 12, 2025
8517e8f
fix system-admin/challenge management routes
vas3a Feb 13, 2025
b410eb8
Merge pull request #1000 from topcoder-platform/fix-system-admin-route
vas3a Feb 13, 2025
daa59d5
update navigation style in the admin app
ZRUIK Feb 16, 2025
afea187
Merge pull request #1001 from ZRUIK/update-navigation-style_zhang
jmgasper Feb 16, 2025
0f115a2
PM-588 - copilot requests page
vas3a Feb 17, 2025
c671d83
Reset project when form resets
Feb 17, 2025
cb9d0a5
allow null eslint
Feb 18, 2025
bca5942
Self service app cleanup
Feb 18, 2025
5ffc5e8
disable eslint
Feb 18, 2025
6fe7823
Merge pull request #1003 from topcoder-platform/PM-579-copilot-form
himaniraghav3 Feb 18, 2025
e6ac071
Merge pull request #1002 from topcoder-platform/PM-588_copilot-requests
vas3a Feb 19, 2025
03e1249
PM-588 - fix project fetch
vas3a Feb 19, 2025
fe23fc1
Merge pull request #1005 from topcoder-platform/PM-588_copilot-requests
vas3a Feb 19, 2025
9903ed3
Fix resending request
Feb 19, 2025
9a80cd6
Merge branch 'dev' into PM-601
Feb 19, 2025
b33587f
Use color vars
Feb 19, 2025
7421815
Merge pull request #1006 from topcoder-platform/PM-579-copilot-form
himaniraghav3 Feb 19, 2025
f8542e6
Align project types to endpoint
Feb 20, 2025
c454a70
Merge pull request #1007 from topcoder-platform/PM-579-copilot-form
himaniraghav3 Feb 20, 2025
93a6e0c
PM-588_copilot-requests - handle type unedfined
vas3a Feb 20, 2025
fc77463
PM-588 - minor QA feedback
vas3a Feb 20, 2025
42076b0
Merge pull request #1008 from topcoder-platform/PM-588_copilot-reques…
vas3a Feb 20, 2025
55acaf7
Fix same name attributes for form
Feb 20, 2025
4ad7cf8
Merge pull request #1009 from topcoder-platform/PM-579-copilot-form
himaniraghav3 Feb 20, 2025
53e7852
Merge pull request #1004 from topcoder-platform/PM-601
himaniraghav3 Feb 21, 2025
b683f48
Display api errors
Feb 21, 2025
b7b8da6
Merge pull request #1010 from topcoder-platform/PM-579-copilot-form
himaniraghav3 Feb 21, 2025
a097fa1
Error handling on form
Feb 24, 2025
f1fcafe
only show error details if defined
Feb 24, 2025
26538ad
Merge pull request #1011 from topcoder-platform/PM-579-copilot-form
himaniraghav3 Feb 24, 2025
11f59af
Topcoder Admin App - User Management
suppermancool Feb 25, 2025
420f144
review management with merged dev
stevenfrog Feb 26, 2025
764f178
Merge pull request #1014 from stevenfrog/review-management-f2f
jmgasper Feb 27, 2025
093642d
PM-589 Copilot opportunity listing page
Feb 27, 2025
e784a89
Merge branch 'dev' into diazz-challenge-30376220
suppermancool Mar 1, 2025
22cc6cd
User Management final fix
suppermancool Mar 1, 2025
c6f04a8
table pagination fix: when first loaded the data, there is only show …
suppermancool Mar 1, 2025
b1312ae
Merge pull request #1016 from topcoder-platform/diazz-challenge-30376220
jmgasper Mar 3, 2025
13dc5fa
Copilot Opportunity Details Page
Mar 3, 2025
9e66f8b
Merge branch 'dev' into PM-589
Mar 3, 2025
62b1fce
Change page size to 20
Mar 3, 2025
0f7847f
Merge pull request #1015 from topcoder-platform/PM-589
himaniraghav3 Mar 3, 2025
634aa25
Merge pull request #1017 from topcoder-platform/PM-590
himaniraghav3 Mar 3, 2025
8b579cf
Merge pull request #1018 from topcoder-platform/PM-589
himaniraghav3 Mar 3, 2025
1a907ad
fix-table-style
Mar 3, 2025
1462b63
Merge pull request #1019 from topcoder-platform/Fix-table-style
himaniraghav3 Mar 4, 2025
871c4aa
Topcoder Admin App - Permission Management
suppermancool Mar 9, 2025
26ef81c
Merge pull request #1020 from topcoder-platform/diazz-code-30376331
jmgasper Mar 17, 2025
1ef17ac
Topcoder Admin App - Billing Account Management
suppermancool Mar 17, 2025
59d3534
Topcoder Admin App - Misc Bug Fix
suppermancool Mar 17, 2025
87a85a3
Manage users:
suppermancool Mar 18, 2025
0efe737
Merge pull request #1021 from topcoder-platform/diazz-f2f-30376413
jmgasper Mar 19, 2025
153f155
Billing Account Management: final fix
suppermancool Mar 20, 2025
16aa05d
Merge branch 'dev' into diazz-code-30376369
suppermancool Mar 20, 2025
f08061f
fix after merging
suppermancool Mar 20, 2025
757c086
Billing account: add default form value
suppermancool Mar 20, 2025
afab032
Review Application Bug Fix
suppermancool Mar 20, 2025
1e47bf8
Merge pull request #1023 from topcoder-platform/diazz-f2f-30376447
jmgasper Mar 21, 2025
1070c68
Topcoder Admin App - Resource Management on Challenge Management
suppermancool Apr 3, 2025
2eaafa9
New review app Init
billsedison Apr 4, 2025
4d8cfa5
Resource Management final fix
suppermancool Apr 6, 2025
7af80d9
Merge pull request #1022 from topcoder-platform/diazz-code-30376369
jmgasper Apr 6, 2025
cd7e42f
Merge pull request #1025 from topcoder-platform/feat/new-review-app-init
jmgasper Apr 6, 2025
96f2e65
Merge branch 'dev' into diazz-code-30376498
suppermancool Apr 6, 2025
37a7313
Merge pull request #1026 from topcoder-platform/diazz-code-30376498
jmgasper Apr 6, 2025
1588b8b
adding AI PR Review Buddy
kkartunov Apr 10, 2025
72c5744
Revert "New review app Init"
jmgasper Apr 15, 2025
094877f
Add start date
Apr 23, 2025
28a3742
Revert timeout
Apr 23, 2025
2d3c37e
Topcoder Admin App - Roles Management Update
suppermancool Apr 23, 2025
d09c17b
PM-589 Opportunity table fixes
Apr 24, 2025
e3a2cbe
bot review fixes
Apr 24, 2025
369f68d
Fix skill pills
Apr 25, 2025
d9d34af
Merge pull request #1047 from topcoder-platform/PM-590-fixes
himaniraghav3 Apr 25, 2025
8df2396
PM-1064 Request Copilot button on opportunity feed
Apr 25, 2025
be354e8
Rename var to simpler term
Apr 25, 2025
8043b02
PM-589 Improve skills UI
Apr 25, 2025
a34c0bd
bot review fixes
Apr 25, 2025
9d945ef
Merge pull request #1052 from topcoder-platform/PM-590-fixes
himaniraghav3 Apr 25, 2025
a4457e3
Add PM role
Apr 28, 2025
b24648c
Fix Load more logic
Apr 28, 2025
827d9e2
bot suggestions
Apr 28, 2025
1c6ab4c
Merge branch 'dev' into diazz-admin-f2f-30376659
suppermancool Apr 28, 2025
26face4
Fix for GitHub bot suggestions
suppermancool Apr 29, 2025
374040b
Merge pull request #1051 from topcoder-platform/PM-1064
kkartunov Apr 29, 2025
150e438
Merge pull request #1055 from topcoder-platform/PM-590-fixes
kkartunov Apr 29, 2025
00309f3
PM-1064 Fix the role - admin
Apr 29, 2025
2920614
Remove console log
Apr 29, 2025
29d0283
Merge pull request #1057 from topcoder-platform/PM-1064
himaniraghav3 Apr 29, 2025
8bca4f7
Fix white space for status
Apr 29, 2025
159d6e2
Merge pull request #1058 from topcoder-platform/PM-590-fixes
himaniraghav3 Apr 29, 2025
6471e31
Merge pull request #1056 from topcoder-platform/diazz-admin-f2f-30376659
jmgasper Apr 29, 2025
acbb128
PM-1157 Add fallback content for copilot requests when access denied
Apr 30, 2025
31d15a0
Merge pull request #1060 from topcoder-platform/PM-1157
himaniraghav3 Apr 30, 2025
3e088f6
PM-876 Add a requests button on opportunity feed
Apr 30, 2025
bd7518e
Merge pull request #1062 from topcoder-platform/PM-876
himaniraghav3 Apr 30, 2025
1f3b4de
PM-1069 Copilot request UI improvements
May 5, 2025
b5892cd
Merge pull request #1066 from topcoder-platform/PM-1069
himaniraghav3 May 6, 2025
92d56f7
feat: apply for copilot opportunity
hentrymartin May 6, 2025
3692ce4
fix: deploy dev config change
hentrymartin May 6, 2025
63d486a
fix: lint
hentrymartin May 6, 2025
070098b
fix: lint
hentrymartin May 6, 2025
54fbb38
fix: lint
hentrymartin May 6, 2025
2ee1f11
feat: list copilot applications
hentrymartin May 7, 2025
557e546
fix: review comments
hentrymartin May 7, 2025
6acbb53
fix: review comments
hentrymartin May 7, 2025
49286f4
fix: review comments
hentrymartin May 7, 2025
ec0e17e
Merge branch 'pm-578' into pm-1067
hentrymartin May 7, 2025
ca7c666
fix: lint
hentrymartin May 7, 2025
cf19762
removed circle config
hentrymartin May 7, 2025
c767c8b
removed circle config
hentrymartin May 7, 2025
233712b
Merge pull request #1067 from topcoder-platform/pm-578
hentrymartin May 9, 2025
b57e191
Merge pull request #1068 from topcoder-platform/pm-1067
hentrymartin May 9, 2025
e2a9166
fix: QA feedbacks on apply copilot opportunity functionality
hentrymartin May 12, 2025
9e3d8ed
fix: QA feedbacks on apply copilot opportunity functionality
hentrymartin May 12, 2025
b5bc422
Merge pull request #1072 from topcoder-platform/pm-578_1
hentrymartin May 13, 2025
d3cfb6d
feat: added assign action to applications list
hentrymartin May 26, 2025
f07ce95
feat: added assign action to applications list
hentrymartin May 26, 2025
c120616
fix: don't show applied on for completed project
hentrymartin May 26, 2025
b9cf19e
Merge pull request #1086 from topcoder-platform/pm-580
kkartunov May 27, 2025
952f7ed
fix: dont show action button when invite is inprogress
hentrymartin May 27, 2025
742128b
fix: lint
hentrymartin May 27, 2025
baa4337
Merge pull request #1087 from topcoder-platform/pm-580_1
hentrymartin May 27, 2025
5c70b90
fix: return if already invited
hentrymartin May 28, 2025
2b9c86e
Merge pull request #1088 from topcoder-platform/pm-580_1
hentrymartin May 28, 2025
c9014f3
fix: show invite button only for active projects
hentrymartin May 28, 2025
b99bef7
fix: show invite button only for active projects
hentrymartin May 28, 2025
2bf40eb
Merge pull request #1089 from topcoder-platform/pm-580_1
hentrymartin May 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
22 changes: 22 additions & 0 deletions .github/workflows/code_reviewer.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: AI PR Reviewer

on:
pull_request:
types:
- opened
- synchronize
permissions:
pull-requests: write
jobs:
tc-ai-pr-review:
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v3

- name: TC AI PR Reviewer
uses: topcoder-platform/tc-ai-pr-reviewer@master
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # The GITHUB_TOKEN is there by default so you just need to keep it like it is and not necessarily need to add it as secret as it will throw an error. [More Details](https://docs.github.com/en/actions/security-guides/automatic-token-authentication#about-the-github_token-secret)
LAB45_API_KEY: ${{ secrets.LAB45_API_KEY }}
exclude: '**/*.json, **/*.md, **/*.jpg, **/*.png, **/*.jpeg, **/*.bmp, **/*.webp' # Optional: exclude patterns separated by commas
5 changes: 4 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
"dependencies": {
"@datadog/browser-logs": "^4.21.2",
"@heroicons/react": "^1.0.6",
"@hookform/resolvers": "^4.1.2",
"@popperjs/core": "^2.11.8",
"@sprig-technologies/sprig-browser": "^2.20.1",
"@storybook/addon-actions": "7.6.10",
Expand Down Expand Up @@ -71,6 +72,7 @@
"react-elastic-carousel": "^0.11.5",
"react-gtm-module": "^2.0.11",
"react-helmet": "^6.1.0",
"react-hook-form": "^7.54.2",
"react-markdown": "8.0.6",
"react-otp-input": "^3.1.1",
"react-popper": "^2.3.0",
Expand Down Expand Up @@ -101,7 +103,8 @@
"tc-auth-lib": "topcoder-platform/tc-auth-lib#1.0.27",
"typescript": "^4.8.4",
"universal-navigation": "https://github.com/topcoder-platform/universal-navigation#9fc50d938be7182",
"uuid": "^9.0.0"
"uuid": "^9.0.0",
"yup": "^1.6.1"
},
"devDependencies": {
"@babel/core": "^7.19.3",
Expand Down
File renamed without changes.
39 changes: 39 additions & 0 deletions src/apps/admin/src/AdminApp.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
import { FC, useContext, useEffect, useMemo } from 'react'
import { Outlet, Routes } from 'react-router-dom'

import { routerContext, RouterContextData } from '~/libs/core'

import { AdminAppContextProvider, Layout, SWRConfigProvider } from './lib'
import { toolTitle } from './admin-app.routes'
import './lib/styles/index.scss'

/**
* The admin app.
*/
const AdminApp: FC = () => {
const { getChildRoutes }: RouterContextData = useContext(routerContext)
// eslint-disable-next-line react-hooks/exhaustive-deps -- missing dependency: getChildRoutes
const childRoutes = useMemo(() => getChildRoutes(toolTitle), [])

useEffect(() => {
document.body.classList.add('admin-app')
return () => {
document.body.classList.remove('admin-app')
}
}, [])

return (
<div>
<AdminAppContextProvider>
<SWRConfigProvider>
<Layout>
<Outlet />
<Routes>{childRoutes}</Routes>
</Layout>
</SWRConfigProvider>
</AdminAppContextProvider>
</div>
)
}

export default AdminApp
276 changes: 276 additions & 0 deletions src/apps/admin/src/admin-app.routes.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,276 @@
import { AppSubdomain, ToolTitle } from '~/config'
import {
lazyLoad,
LazyLoadedComponent,
PlatformRoute,
Rewrite,
UserRole,
} from '~/libs/core'

import {
billingAccountRouteId,
manageChallengeRouteId,
manageReviewRouteId,
permissionManagementRouteId,
rootRoute,
userManagementRouteId,
} from './config/routes.config'

const AdminApp: LazyLoadedComponent = lazyLoad(() => import('./AdminApp'))

const ChallengeManagement: LazyLoadedComponent = lazyLoad(
() => import('./challenge-management/ChallengeManagement'),
)
const ChallengeManagementPage: LazyLoadedComponent = lazyLoad(
() => import('./challenge-management/ChallengeManagementPage'),
'ChallengeManagementPage',
)
const ManageUserPage: LazyLoadedComponent = lazyLoad(
() => import('./challenge-management/ManageUserPage'),
'ManageUserPage',
)
const ManageResourcePage: LazyLoadedComponent = lazyLoad(
() => import('./challenge-management/ManageResourcePage'),
'ManageResourcePage',
)
const AddResourcePage: LazyLoadedComponent = lazyLoad(
() => import('./challenge-management/AddResourcePage'),
'AddResourcePage',
)
const UserManagementPage: LazyLoadedComponent = lazyLoad(
() => import('./user-management/UserManagementPage'),
'UserManagementPage',
)
const ReviewManagement: LazyLoadedComponent = lazyLoad(
() => import('./review-management/ReviewManagement'),
)
const ReviewManagementPage: LazyLoadedComponent = lazyLoad(
() => import('./review-management/ReviewManagementPage'),
'ReviewManagementPage',
)
const ManageReviewerPage: LazyLoadedComponent = lazyLoad(
() => import('./review-management/ManageReviewerPage'),
'ManageReviewerPage',
)
const BillingAccount: LazyLoadedComponent = lazyLoad(
() => import('./billing-account/BillingAccount'),
)
const BillingAccountsPage: LazyLoadedComponent = lazyLoad(
() => import('./billing-account/BillingAccountsPage'),
'BillingAccountsPage',
)
const BillingAccountNewPage: LazyLoadedComponent = lazyLoad(
() => import('./billing-account/BillingAccountNewPage'),
'BillingAccountNewPage',
)
const BillingAccountDetailsPage: LazyLoadedComponent = lazyLoad(
() => import('./billing-account/BillingAccountDetailsPage'),
'BillingAccountDetailsPage',
)
const BillingAccountResourcesPage: LazyLoadedComponent = lazyLoad(
() => import('./billing-account/BillingAccountResourcesPage'),
'BillingAccountResourcesPage',
)
const BillingAccountResourceNewPage: LazyLoadedComponent = lazyLoad(
() => import('./billing-account/BillingAccountResourceNewPage'),
'BillingAccountResourceNewPage',
)
const ClientsPage: LazyLoadedComponent = lazyLoad(
() => import('./billing-account/ClientsPage'),
'ClientsPage',
)
const ClientEditPage: LazyLoadedComponent = lazyLoad(
() => import('./billing-account/ClientEditPage'),
'ClientEditPage',
)
const PermissionManagement: LazyLoadedComponent = lazyLoad(
() => import('./permission-management/PermissionManagement'),
)
const PermissionRolesPage: LazyLoadedComponent = lazyLoad(
() => import('./permission-management/PermissionRolesPage'),
'PermissionRolesPage',
)
const PermissionRoleMembersPage: LazyLoadedComponent = lazyLoad(
() => import('./permission-management/PermissionRoleMembersPage'),
'PermissionRoleMembersPage',
)
const PermissionAddRoleMembersPage: LazyLoadedComponent = lazyLoad(
() => import('./permission-management/PermissionAddRoleMembersPage'),
'PermissionAddRoleMembersPage',
)
const PermissionGroupsPage: LazyLoadedComponent = lazyLoad(
() => import('./permission-management/PermissionGroupsPage'),
'PermissionGroupsPage',
)
const PermissionGroupMembersPage: LazyLoadedComponent = lazyLoad(
() => import('./permission-management/PermissionGroupMembersPage'),
'PermissionGroupMembersPage',
)
const PermissionAddGroupMembersPage: LazyLoadedComponent = lazyLoad(
() => import('./permission-management/PermissionAddGroupMembersPage'),
'PermissionAddGroupMembersPage',
)

export const toolTitle: string = ToolTitle.admin

export const adminRoutes: ReadonlyArray<PlatformRoute> = [
// Admin App Root
{
authRequired: true,
children: [
{
element: <Rewrite to={manageChallengeRouteId} />,
route: '',
},
// Challenge Management Module
{
children: [
{
element: <ChallengeManagementPage />,
id: 'challenge-management-page',
route: '',
},
{
element: <ManageUserPage />,
id: 'manage-user',
route: ':challengeId/manage-user',
},
{
element: <ManageResourcePage />,
id: 'manage-resource',
route: ':challengeId/manage-resource',
},
{
element: <AddResourcePage />,
id: 'add-resource',
route: ':challengeId/manage-resource/add',
},
],
element: <ChallengeManagement />,
id: manageChallengeRouteId,
route: manageChallengeRouteId,
},
// User Management Module
{
element: <UserManagementPage />,
id: userManagementRouteId,
route: userManagementRouteId,
},
// Reviewer Management Module
{
children: [
{
element: <ReviewManagementPage />,
id: 'review-management-page',
route: '',
},
{
element: <ManageReviewerPage />,
id: 'manage-reviewer',
route: ':challengeId/manage-reviewer',
},
],
element: <ReviewManagement />,
id: manageReviewRouteId,
route: manageReviewRouteId,
},
// Billing Account Module
{
children: [
{
element: <BillingAccountsPage />,
id: 'billing-accounts-page',
route: 'billing-accounts',
},
{
element: <BillingAccountNewPage />,
id: 'billing-account-new-page',
route: 'billing-accounts/new',
},
{
element: <BillingAccountDetailsPage />,
id: 'billing-account-details-page',
route: 'billing-accounts/:accountId/details',
},
{
element: <BillingAccountResourcesPage />,
id: 'billing-account-resources-page',
route: 'billing-accounts/:accountId/resources',
},
{
element: <BillingAccountNewPage />,
id: 'billing-account-resources-page',
route: 'billing-accounts/:accountId/edit',
},
{
element: <BillingAccountResourceNewPage />,
id: 'billing-account-resource-new-page',
route: 'billing-accounts/:accountId/resources/new',
},
{
element: <ClientsPage />,
id: 'billing-account-clients-page',
route: 'clients',
},
{
element: <ClientEditPage />,
id: 'billing-account-client-edit-page',
route: 'clients/:clientId/edit',
},
{
element: <ClientEditPage />,
id: 'billing-account-client-edit-page',
route: 'clients/new',
},
],
element: <BillingAccount />,
id: billingAccountRouteId,
route: billingAccountRouteId,
},
// Permission Management Module
{
children: [
{
element: <PermissionRolesPage />,
id: 'permission-roles-page',
route: 'roles',
},
{
element: <PermissionRoleMembersPage />,
id: 'permission-role-members-page',
route: 'roles/:roleId/role-members',
},
{
element: <PermissionAddRoleMembersPage />,
id: 'permission-add-role-members-page',
route: 'roles/:roleId/role-members/add',
},
{
element: <PermissionGroupsPage />,
id: 'permission-groups-page',
route: 'groups',
},
{
element: <PermissionGroupMembersPage />,
id: 'permission-group-members-page',
route: 'groups/:groupId/group-members',
},
{
element: <PermissionAddGroupMembersPage />,
id: 'permission-add-group-members-page',
route: 'groups/:groupId/group-members/add',
},
],
element: <PermissionManagement />,
id: permissionManagementRouteId,
route: permissionManagementRouteId,
},
],
domain: AppSubdomain.admin,
element: <AdminApp />,
id: toolTitle,
rolesRequired: [UserRole.administrator],
route: rootRoute,
title: toolTitle,
},
]
Loading