From 7a554252844c0feea8030723379b3c98b3a244fc Mon Sep 17 00:00:00 2001 From: Pedro Nobre Date: Sun, 5 Jul 2026 13:42:39 +0100 Subject: [PATCH] applied fix --- components/solid/src/components/ui/tooltip.tsx | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/components/solid/src/components/ui/tooltip.tsx b/components/solid/src/components/ui/tooltip.tsx index 0d498f207..5fb52efff 100644 --- a/components/solid/src/components/ui/tooltip.tsx +++ b/components/solid/src/components/ui/tooltip.tsx @@ -1,3 +1,4 @@ +import type { PolymorphicProps } from '@ark-ui/solid' import { Tooltip as ArkTooltip } from '@ark-ui/solid/tooltip' import { type ComponentProps, type JSX, Show, splitProps } from 'solid-js' import { Portal } from 'solid-js/web' @@ -19,11 +20,13 @@ const Trigger = withContext(ArkTooltip.Trigger, 'trigger') export { TooltipContext as Context } from '@ark-ui/solid/tooltip' -export interface TooltipProps extends Omit { +type TriggerRenderProp = PolymorphicProps<'button'>['asChild'] + +export interface TooltipProps extends Omit { showArrow?: boolean portalled?: boolean portalRef?: HTMLElement | undefined - children: JSX.Element | undefined + children: TriggerRenderProp | JSX.Element | undefined content: JSX.Element | string contentProps?: ContentProps disabled?: boolean @@ -42,10 +45,15 @@ export const Tooltip = (props: TooltipProps) => { const portalled = () => local.portalled ?? true + const asRenderProp = () => (typeof local.children === 'function' ? local.children : false) + return ( - + - {local.children} + {local.children as JSX.Element}}> + {(renderFn) => } + +