summaryrefslogtreecommitdiffhomepage
path: root/packages/ui/src
diff options
context:
space:
mode:
Diffstat (limited to 'packages/ui/src')
-rw-r--r--packages/ui/src/components/tabs.tsx8
1 files changed, 8 insertions, 0 deletions
diff --git a/packages/ui/src/components/tabs.tsx b/packages/ui/src/components/tabs.tsx
index 0a4d5b91a..8c892a6e5 100644
--- a/packages/ui/src/components/tabs.tsx
+++ b/packages/ui/src/components/tabs.tsx
@@ -13,6 +13,7 @@ export interface TabsTriggerProps extends ComponentProps<typeof Kobalte.Trigger>
}
hideCloseButton?: boolean
closeButton?: JSX.Element
+ onMiddleClick?: () => void
}
export interface TabsContentProps extends ComponentProps<typeof Kobalte.Content> {}
@@ -55,6 +56,7 @@ function TabsTrigger(props: ParentProps<TabsTriggerProps>) {
"children",
"closeButton",
"hideCloseButton",
+ "onMiddleClick",
])
return (
<div
@@ -63,6 +65,12 @@ function TabsTrigger(props: ParentProps<TabsTriggerProps>) {
...(split.classList ?? {}),
[split.class ?? ""]: !!split.class,
}}
+ onAuxClick={(e) => {
+ if (e.button === 1 && split.onMiddleClick) {
+ e.preventDefault()
+ split.onMiddleClick()
+ }
+ }}
>
<Kobalte.Trigger
{...rest}