mirror of
https://github.com/spliit-app/spliit.git
synced 2026-03-04 20:06:11 +01:00
* add group information field to group and Information tab to display * add breaks to info page * Improve UX --------- Co-authored-by: Sebastien Castiel <sebastien@castiel.me>
36 lines
1.1 KiB
TypeScript
36 lines
1.1 KiB
TypeScript
'use client'
|
|
import { Tabs, TabsList, TabsTrigger } from '@/components/ui/tabs'
|
|
import { useTranslations } from 'next-intl'
|
|
import { usePathname, useRouter } from 'next/navigation'
|
|
|
|
type Props = {
|
|
groupId: string
|
|
}
|
|
|
|
export function GroupTabs({ groupId }: Props) {
|
|
const t = useTranslations()
|
|
const pathname = usePathname()
|
|
const value =
|
|
pathname.replace(/\/groups\/[^\/]+\/([^/]+).*/, '$1') || 'expenses'
|
|
const router = useRouter()
|
|
|
|
return (
|
|
<Tabs
|
|
value={value}
|
|
className="[&>*]:border overflow-x-auto"
|
|
onValueChange={(value) => {
|
|
router.push(`/groups/${groupId}/${value}`)
|
|
}}
|
|
>
|
|
<TabsList>
|
|
<TabsTrigger value="expenses">{t('Expenses.title')}</TabsTrigger>
|
|
<TabsTrigger value="balances">{t('Balances.title')}</TabsTrigger>
|
|
<TabsTrigger value="information">{t('Information.title')}</TabsTrigger>
|
|
<TabsTrigger value="stats">{t('Stats.title')}</TabsTrigger>
|
|
<TabsTrigger value="activity">{t('Activity.title')}</TabsTrigger>
|
|
<TabsTrigger value="edit">{t('Settings.title')}</TabsTrigger>
|
|
</TabsList>
|
|
</Tabs>
|
|
)
|
|
}
|