@nayan-ui/react-native
Version:
React Native Component Library for smooth and faster mobile application development.
44 lines (43 loc) • 1.76 kB
JavaScript
import * as React from 'react';
import { Platform, StyleSheet } from 'react-native';
import Animated, { FadeIn, FadeOut } from 'react-native-reanimated';
import * as TooltipPrimitive from '@rn-primitives/tooltip';
import { TextClassContext } from "./text.js";
import { cn } from "../../lib/utils.js";
import { jsx as _jsx } from "react-native-css-interop/jsx-runtime";
const Tooltip = TooltipPrimitive.Root;
const TooltipTrigger = TooltipPrimitive.Trigger;
const TooltipContent = /*#__PURE__*/React.forwardRef(({
className,
sideOffset = 4,
portalHost,
...props
}, ref) => _jsx(TooltipPrimitive.Portal, {
hostName: portalHost,
children: _jsx(TooltipPrimitive.Overlay, {
style: Platform.OS !== 'web' ? StyleSheet.absoluteFill : undefined,
children: _jsx(Animated.View, {
entering: Platform.select({
web: undefined,
default: FadeIn
}),
exiting: Platform.select({
web: undefined,
default: FadeOut
}),
children: _jsx(TextClassContext.Provider, {
value: "text-sm native:text-base text-popover-foreground",
children: _jsx(TooltipPrimitive.Content, {
ref: ref,
sideOffset: sideOffset,
className: cn('z-50 overflow-hidden rounded-md border border-border bg-popover px-3 py-1.5 shadow-md shadow-foreground/5 web:animate-in web:fade-in-0 web:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2', className),
...props
})
})
})
})
}));
TooltipContent.displayName = TooltipPrimitive.Content.displayName;
export { Tooltip, TooltipContent, TooltipTrigger };
//# sourceMappingURL=tooltip.js.map
;