mirror of
https://github.com/Unleash/unleash.git
synced 2025-01-06 00:07:44 +01:00
4167a60588
Follows up on https://github.com/Unleash/unleash/pull/4853 to add Biome to the frontend as well. ![image](https://github.com/Unleash/unleash/assets/14320932/1906faf1-fc29-4172-a4d4-b2716d72cd65) Added a few `biome-ignore` to speed up the process but we may want to check and fix them in the future.
33 lines
1.1 KiB
TypeScript
33 lines
1.1 KiB
TypeScript
import useUiConfig from 'hooks/api/getters/useUiConfig/useUiConfig';
|
|
import { adminRoutes } from './adminRoutes';
|
|
import { useInstanceStatus } from 'hooks/api/getters/useInstanceStatus/useInstanceStatus';
|
|
import { filterAdminRoutes } from './filterAdminRoutes';
|
|
import { filterByConfig, mapRouteLink } from 'component/common/util';
|
|
|
|
export const useAdminRoutes = () => {
|
|
const { uiConfig, isPro, isEnterprise } = useUiConfig();
|
|
const { isBilling } = useInstanceStatus();
|
|
const routes = [...adminRoutes];
|
|
|
|
if (uiConfig.flags.UNLEASH_CLOUD) {
|
|
const adminBillingMenuItem = adminRoutes.findIndex(
|
|
(route) => route.title === 'Billing & invoices',
|
|
);
|
|
routes[adminBillingMenuItem] = {
|
|
...routes[adminBillingMenuItem],
|
|
path: '/admin/billing',
|
|
};
|
|
}
|
|
|
|
return routes
|
|
.filter(filterByConfig(uiConfig))
|
|
.filter((route) =>
|
|
filterAdminRoutes(route?.menu, {
|
|
enterprise: isEnterprise(),
|
|
pro: isPro(),
|
|
billing: isBilling,
|
|
}),
|
|
)
|
|
.map(mapRouteLink);
|
|
};
|