UNPKG

@zenithui/time-picker

Version:

A ZenithUi Time Picker is React component enables users to select a time from a predefined list of options.

48 lines (47 loc) 2.26 kB
import { jsx } from "react/jsx-runtime"; import { Anchor, Close, Content, Portal, Root, Trigger } from "@radix-ui/react-popover"; import { cn } from "@zenithui/utils"; import { forwardRef } from "react"; const popover_Root = Root; const popover_Trigger = Trigger; const popover_Close = Close; const popover_Portal = Portal; const popover_Content = Content; const popover_Anchor = Anchor; const Popover = (props)=>/*#__PURE__*/ jsx(popover_Root, { "data-slot": "popover", ...props }); const PopoverTrigger = /*#__PURE__*/ forwardRef((props, ref)=>/*#__PURE__*/ jsx(popover_Trigger, { ref: ref, "data-slot": "popover-trigger", ...props })); PopoverTrigger.displayName = "PopoverTrigger"; const PopoverClose = /*#__PURE__*/ forwardRef((props, ref)=>/*#__PURE__*/ jsx(popover_Close, { ref: ref, "data-slot": "popover-close", ...props })); PopoverClose.displayName = "PopoverClose"; const PopoverContent = /*#__PURE__*/ forwardRef(({ className, align = "center", sideOffset = 4, isWithPortal = true, ...props }, ref)=>{ const content = /*#__PURE__*/ jsx(popover_Content, { ref: ref, "data-slot": "popover-content", align: align, sideOffset: sideOffset, className: cn("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]: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 z-50 w-72 origin-(--radix-popover-content-transform-origin) rounded-md border p-4 shadow-md outline-hidden", className), ...props }); return isWithPortal ? /*#__PURE__*/ jsx(popover_Portal, { children: content }) : content; }); PopoverContent.displayName = "PopoverContent"; const PopoverAnchor = /*#__PURE__*/ forwardRef((props, ref)=>/*#__PURE__*/ jsx(popover_Anchor, { ref: ref, "data-slot": "popover-anchor", ...props })); PopoverAnchor.displayName = "PopoverAnchor"; export { Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverTrigger };