Resolves https://github.com/webrecorder/browsertrix/issues/2382 ## Changes - Moves superadmin to `/admin` URL namespace - Removes superadmin views from main webpack chunks
52 lines
1.9 KiB
TypeScript
52 lines
1.9 KiB
TypeScript
export enum OrgTab {
|
|
Dashboard = "dashboard",
|
|
Workflows = "workflows",
|
|
Items = "items",
|
|
Collections = "collections",
|
|
BrowserProfiles = "browser-profiles",
|
|
Settings = "settings",
|
|
}
|
|
|
|
export enum RouteNamespace {
|
|
PrivateOrgs = "orgs",
|
|
PublicOrgs = "explore",
|
|
Superadmin = "admin",
|
|
}
|
|
|
|
export const ROUTES = {
|
|
home: "/",
|
|
join: "/join/:token",
|
|
signUp: "/sign-up",
|
|
acceptInvite: "/invite/accept/:token",
|
|
verify: "/verify",
|
|
login: "/log-in",
|
|
loginWithRedirect: "/log-in?redirectUrl",
|
|
forgotPassword: "/log-in/forgot-password",
|
|
resetPassword: "/reset-password",
|
|
accountSettings: "/account/settings(/:settingsTab)",
|
|
orgs: `/${RouteNamespace.PrivateOrgs}(/)`,
|
|
org: [
|
|
`/${RouteNamespace.PrivateOrgs}/:slug(/)`,
|
|
// Org sections:
|
|
`(/${OrgTab.Dashboard})`,
|
|
`(/${OrgTab.Workflows}(/new)(/:workflowId(/crawls/:itemId(/review/:qaTab))))`,
|
|
`(/${OrgTab.Items}(/:itemType(/:itemId(/review/:qaTab))))`,
|
|
`(/${OrgTab.Collections}(/new)(/view/:collectionId(/:collectionTab)))`,
|
|
`(/${OrgTab.BrowserProfiles}(/profile(/browser/:browserId)(/:browserProfileId)))`,
|
|
`(/${OrgTab.Settings}(/:settingsTab))`,
|
|
].join(""),
|
|
publicOrgs: `/${RouteNamespace.PublicOrgs}(/)`,
|
|
publicOrg: `/${RouteNamespace.PublicOrgs}/:slug(/)`,
|
|
publicCollection: `/${RouteNamespace.PublicOrgs}/:slug/collections/:collectionSlug(/:collectionTab)`,
|
|
// Superadmin routes
|
|
admin: `/${RouteNamespace.Superadmin}(/)`,
|
|
adminUsers: `/${RouteNamespace.Superadmin}/users(/)`,
|
|
adminUsersInvite: `/${RouteNamespace.Superadmin}/users/invite`,
|
|
adminCrawls: `/${RouteNamespace.Superadmin}/crawls(/)`,
|
|
adminCrawl: `/${RouteNamespace.Superadmin}/crawls/crawl/:crawlId`,
|
|
// Redirect for https://github.com/webrecorder/browsertrix-cloud/issues/935
|
|
awpUploadRedirect: `/${RouteNamespace.PrivateOrgs}/:orgId/artifacts/upload/:uploadId`,
|
|
} as const;
|
|
|
|
export type Routes = typeof ROUTES;
|