import { CreditCard, LayoutDashboard, Settings, Users } from 'lucide-react'; import { NavigationConfigSchema } from '@kit/ui/navigation-schema'; import featureFlagsConfig from '~/config/feature-flags.config'; import pathsConfig from '~/config/paths.config'; const iconClasses = 'w-4'; const getRoutes = (account: string) => [ { label: 'common:dashboardTabLabel', path: pathsConfig.app.accountHome.replace('[account]', account), Icon: , end: true, }, { label: 'common:settingsTabLabel', collapsible: false, children: [ { label: 'common:settingsTabLabel', path: createPath(pathsConfig.app.accountSettings, account), Icon: , }, { label: 'common:accountMembers', path: createPath(pathsConfig.app.accountMembers, account), Icon: , }, featureFlagsConfig.enableTeamAccountBilling ? { label: 'common:billingTabLabel', path: createPath(pathsConfig.app.accountBilling, account), Icon: , } : undefined, ].filter(Boolean), }, ]; export function getTeamAccountSidebarConfig(account: string) { return NavigationConfigSchema.parse({ routes: getRoutes(account), style: process.env.NEXT_PUBLIC_TEAM_NAVIGATION_STYLE, }); } function createPath(path: string, account: string) { return path.replace('[account]', account); }