@primereact/headless 11.0.0-alpha.5 → 11.0.0-alpha.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/carousel/index.d.ts +2 -0
  2. package/carousel/index.mjs +2 -0
  3. package/carousel/index.mjs.map +1 -0
  4. package/carousel/useCarousel.d.ts +23 -0
  5. package/carousel/useCarousel.props.d.ts +2 -0
  6. package/carousel/useCarousel.test.d.ts +0 -0
  7. package/dataview/index.d.ts +2 -0
  8. package/dataview/index.mjs +2 -0
  9. package/dataview/index.mjs.map +1 -0
  10. package/dataview/useDataView.d.ts +3 -0
  11. package/dataview/useDataView.props.d.ts +2 -0
  12. package/dataview/useDataView.test.d.ts +0 -0
  13. package/fileupload/index.d.ts +2 -0
  14. package/fileupload/index.mjs +2 -0
  15. package/fileupload/index.mjs.map +1 -0
  16. package/fileupload/useFileUpload.d.ts +26 -0
  17. package/fileupload/useFileUpload.props.d.ts +2 -0
  18. package/fileupload/useFileUpload.test.d.ts +0 -0
  19. package/gallery/index.d.ts +2 -0
  20. package/gallery/index.mjs +2 -0
  21. package/gallery/index.mjs.map +1 -0
  22. package/gallery/item/index.d.ts +2 -0
  23. package/gallery/item/index.mjs +2 -0
  24. package/gallery/item/index.mjs.map +1 -0
  25. package/gallery/item/useGalleryItem.d.ts +45 -0
  26. package/gallery/item/useGalleryItem.props.d.ts +2 -0
  27. package/gallery/useGallery.d.ts +37 -0
  28. package/gallery/useGallery.props.d.ts +2 -0
  29. package/gallery/useGallery.test.d.ts +0 -0
  30. package/inputnumber/index.d.ts +2 -0
  31. package/inputnumber/index.mjs +2 -0
  32. package/inputnumber/index.mjs.map +1 -0
  33. package/inputnumber/useInputNumber.d.ts +24 -0
  34. package/inputnumber/useInputNumber.props.d.ts +2 -0
  35. package/inputnumber/useInputNumber.test.d.ts +0 -0
  36. package/package.json +4 -4
  37. package/speeddial/index.mjs +1 -1
  38. package/speeddial/index.mjs.map +1 -1
  39. package/speeddial/useSpeedDial.d.ts +2 -1
  40. package/toast/index.css +2 -0
  41. package/toast/index.css.map +1 -0
  42. package/toast/index.d.ts +2 -0
  43. package/toast/index.mjs +2 -0
  44. package/toast/index.mjs.map +1 -0
  45. package/toast/item/index.css +2 -0
  46. package/toast/item/index.css.map +1 -0
  47. package/toast/item/index.d.ts +2 -0
  48. package/toast/item/index.mjs +2 -0
  49. package/toast/item/index.mjs.map +1 -0
  50. package/toast/item/useToastItem.d.ts +21 -0
  51. package/toast/item/useToastItem.props.d.ts +2 -0
  52. package/toast/item/useToastItem.test.d.ts +0 -0
  53. package/toast/useToast.d.ts +18 -0
  54. package/toast/useToast.props.d.ts +2 -0
  55. package/toast/useToast.test.d.ts +0 -0
  56. package/tooltip/index.mjs +1 -1
  57. package/tooltip/index.mjs.map +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/toast/item/useToastItem.ts","../../../../primereact/src/toast/Toast.tsx","../../../../primereact/src/base/index.ts","../../../../primereact/src/toast/Toast.context.ts","../../../../primereact/src/toast/Toast.props.ts","../../../../primereact/src/toast/action/ToastAction.tsx","../../../../primereact/src/toast/item/ToastItem.context.ts","../../../../primereact/src/toast/action/ToastAction.props.ts","../../../../primereact/src/toast/close/ToastClose.tsx","../../../../primereact/src/toast/close/ToastClose.props.ts","../../../../primereact/src/toast/description/ToastDescription.tsx","../../../../primereact/src/toast/description/ToastDescription.props.ts","../../../../primereact/src/toast/icon/ToastIcon.tsx","../../../../primereact/src/toast/icon/ToastIcon.props.ts","../../../../primereact/src/toast/item/ToastItem.tsx","../../../../primereact/src/toast/item/ToastItem.props.ts","../../../../primereact/src/portal/Portal.tsx","../../../../primereact/src/portal/Portal.props.ts","../../../../primereact/src/portal/Portal.context.ts","../../../../primereact/src/toast/portal/ToastPortal.tsx","../../../../primereact/src/toast/region/ToastRegion.tsx","../../../../primereact/src/toast/region/ToastRegion.props.ts","../../../../primereact/src/toast/title/ToastTitle.tsx","../../../../primereact/src/toast/title/ToastTitle.props.ts","../../../../primereact/src/toast/toastManager.ts","../../../src/toast/item/useToastItem.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { useMountEffect } from '@primereact/hooks/use-mount-effect';\nimport { useUnmountEffect } from '@primereact/hooks/use-unmount-effect';\nimport type { ToastType } from '@primereact/types/shared/toast';\nimport { ToastManagerInstance, useToastContext } from 'primereact/toast';\nimport * as React from 'react';\nimport { defaultProps } from './useToastItem.props';\n\nconst SWIPE_THRESHOLD = 50;\nconst VELOCITY_THRESHOLD = 0.11;\nconst DAMPENING_FACTOR = 1.5;\n\nexport const useToastItem = withHeadless({\n name: 'useToastItem',\n defaultProps,\n setup: ({ props, elementRef }) => {\n const { data } = props;\n const toast = useToastContext();\n const [isMounted, setIsMounted] = React.useState(false);\n const [isSwiping, setIsSwiping] = React.useState(false);\n const [isSwipeOut, setIsSwipeOut] = React.useState(false);\n const [swipeOutDirection, setSwipeOutDirection] = React.useState<'up' | 'down' | 'left' | 'right' | null>(null);\n const [swipeDirection, setSwipeDirection] = React.useState<'y' | 'x' | null>(null);\n const [realHeight, setRealHeight] = React.useState(0);\n const swipeStartTimeRef = React.useRef<Date | null>(null);\n const swipeStartPointerRef = React.useRef<{ x: number; y: number } | null>(null);\n const remainingTimeRef = React.useRef<number>(data.duration || toast?.props.timeout || 6000);\n const timeoutStartTimeRef = React.useRef<number>(0);\n const lastTimeoutStartTimeRef = React.useRef<number>(0);\n const onTransitionEndRef = React.useRef<(event: TransitionEvent) => void>(() => {});\n const fallbackTimeoutRef = React.useRef<NodeJS.Timeout | null>(null);\n const rafRef = React.useRef<number | null>(null);\n\n const state = {\n isMounted,\n isSwipeOut,\n isSwiping,\n swipeOutDirection,\n swipeDirection,\n realHeight\n };\n\n const { index, offset } = React.useMemo(() => {\n if (!toast?.toasts || !Array.isArray(toast.toasts)) return { index: 0, offset: 0 };\n\n const toasts = toast.toasts as ToastType[];\n const dataIndex = toasts.indexOf(data);\n\n if (dataIndex === -1) return { index: 0, offset: 0 };\n\n const visibleToasts = data.removed ? toasts : toasts.filter((toast) => !toast.removed);\n const index = visibleToasts.indexOf(data);\n\n const offset = toasts.slice(0, dataIndex).reduce((acc, toast) => acc + (toast.height || 0), 0);\n\n return { index, offset };\n }, [toast?.toasts, data.id, data.removed]);\n\n const deleteToast = React.useCallback(() => {\n ToastManagerInstance.remove(data.id);\n\n toast?.handleFocusElement(elementRef.current);\n\n onTransitionEndRef.current = (event: TransitionEvent) => {\n if (event.propertyName === 'transform') {\n cleanup();\n ToastManagerInstance.delete(data.id);\n }\n };\n\n fallbackTimeoutRef.current = setTimeout(() => {\n cleanup();\n ToastManagerInstance.delete(data.id);\n }, 500);\n\n const cleanup = () => {\n if (fallbackTimeoutRef.current) {\n clearTimeout(fallbackTimeoutRef.current);\n }\n\n elementRef.current?.removeEventListener('transitionend', onTransitionEndRef.current);\n };\n\n elementRef.current?.addEventListener('transitionend', onTransitionEndRef.current);\n }, [data, elementRef, toast?.setToasts, isSwipeOut]);\n\n const onKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'Escape' && data.dismissible !== false && data.variant !== 'loading') {\n deleteToast();\n data.onDismiss?.();\n }\n };\n\n const onFocus = () => {\n toast?.handleToastFocus?.();\n };\n\n const onPointerDown = (event: React.PointerEvent<HTMLDivElement>) => {\n if (event.button === 2 || data.variant === 'loading' || data.dismissible === false) return;\n\n swipeStartTimeRef.current = new Date();\n (event.target as HTMLElement).setPointerCapture(event.pointerId);\n\n setIsSwiping(true);\n\n swipeStartPointerRef.current = { x: event.clientX, y: event.clientY };\n };\n\n const onPointerMove = (event: React.PointerEvent<HTMLDivElement>) => {\n if (!swipeStartPointerRef.current || data.variant === 'loading' || data.dismissible === false) return;\n\n const yDelta = event.clientY - swipeStartPointerRef.current.y;\n const xDelta = event.clientX - swipeStartPointerRef.current.x;\n\n if (!swipeDirection) {\n if (Math.abs(yDelta) > Math.abs(xDelta)) {\n setSwipeDirection('y');\n } else {\n setSwipeDirection('x');\n }\n }\n\n const applyDampening = (delta: number) => {\n const factor = Math.abs(delta) / 20;\n\n return delta * (1 / (DAMPENING_FACTOR + factor));\n };\n\n const position = toast?.props.position || '';\n\n const swipeAmount = { x: 0, y: 0 };\n\n const swipeDirections = position.split('-');\n\n if (swipeDirection === 'y') {\n const isSwipingUp = yDelta < 0;\n const isTop = swipeDirections.includes('top');\n const isBottom = swipeDirections.includes('bottom');\n\n if ((isTop && isSwipingUp) || (isBottom && !isSwipingUp)) {\n swipeAmount.y = yDelta;\n } else {\n swipeAmount.y = applyDampening(yDelta);\n }\n } else if (swipeDirection === 'x') {\n const isSwipingLeft = xDelta < 0;\n const isLeft = swipeDirections.includes('left');\n const isRight = swipeDirections.includes('right');\n\n if ((isLeft && isSwipingLeft) || (isRight && !isSwipingLeft)) {\n swipeAmount.x = xDelta;\n } else {\n swipeAmount.x = applyDampening(xDelta);\n }\n }\n\n if (elementRef.current) {\n elementRef.current?.style.setProperty('--p-swipe-amount-x', `${swipeAmount.x}px`);\n elementRef.current?.style.setProperty('--p-swipe-amount-y', `${swipeAmount.y}px`);\n }\n };\n\n const onPointerUp = () => {\n if (data.variant === 'loading' || data.dismissible === false) return;\n\n swipeStartPointerRef.current = null;\n setIsSwiping(false);\n const swipeAmountX = Number(elementRef.current?.style.getPropertyValue('--p-swipe-amount-x').replace('px', '') || 0);\n const swipeAmountY = Number(elementRef.current?.style.getPropertyValue('--p-swipe-amount-y').replace('px', '') || 0);\n\n const timeTaken = new Date().getTime() - (swipeStartTimeRef.current?.getTime() || 0);\n\n const swipeAmount = swipeDirection === 'x' ? swipeAmountX : swipeAmountY;\n const velocity = Math.abs(swipeAmount) / timeTaken;\n\n if (Math.abs(swipeAmount) >= SWIPE_THRESHOLD || velocity > VELOCITY_THRESHOLD) {\n if (swipeDirection === 'x') {\n setSwipeOutDirection(swipeAmountX < 0 ? 'left' : 'right');\n } else {\n setSwipeOutDirection(swipeAmountY < 0 ? 'up' : 'down');\n }\n\n deleteToast();\n setIsSwipeOut(true);\n data.onDismiss?.();\n\n return;\n } else {\n elementRef.current?.style.setProperty('--p-swipe-amount-x', `0px`);\n elementRef.current?.style.setProperty('--p-swipe-amount-y', `0px`);\n }\n\n setSwipeDirection(null);\n swipeStartTimeRef.current = null;\n };\n\n const onDragEnd = () => {\n setIsSwiping(false);\n setSwipeDirection(null);\n swipeStartTimeRef.current = null;\n };\n\n const handleCloseOnClick = () => {\n deleteToast();\n data.onDismiss?.();\n };\n\n useMountEffect(() => {\n setIsMounted(true);\n });\n\n useUnmountEffect(() => {\n if (fallbackTimeoutRef.current) {\n clearTimeout(fallbackTimeoutRef.current);\n }\n\n if (onTransitionEndRef.current) {\n elementRef.current?.removeEventListener('transitionend', onTransitionEndRef.current);\n }\n });\n\n React.useEffect(() => {\n if (data.removed) {\n deleteToast();\n }\n }, [data.removed, deleteToast]);\n\n React.useEffect(() => {\n if (data.variant === 'loading' || data.duration === Infinity) return;\n\n let timeoutId: NodeJS.Timeout | null = null;\n\n const startTimer = () => {\n if (remainingTimeRef.current === Infinity) return;\n\n timeoutStartTimeRef.current = new Date().getTime();\n\n timeoutId = setTimeout(() => {\n deleteToast();\n data.onTimeout?.();\n }, remainingTimeRef.current);\n };\n\n const pauseTimer = () => {\n if (lastTimeoutStartTimeRef.current < timeoutStartTimeRef.current) {\n const elapsedTime = new Date().getTime() - timeoutStartTimeRef.current;\n\n remainingTimeRef.current = remainingTimeRef.current - elapsedTime;\n }\n\n lastTimeoutStartTimeRef.current = new Date().getTime();\n };\n\n if (toast?.state.isExpanded || toast?.state.isInteracting) {\n pauseTimer();\n } else {\n startTimer();\n }\n\n return () => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n };\n }, [toast?.state.isExpanded, toast?.state.isInteracting, deleteToast]);\n\n React.useEffect(() => {\n if (!elementRef?.current || !toast?.setToasts) return;\n\n const height = elementRef.current.getBoundingClientRect().height;\n\n setRealHeight(height);\n toast.setToasts((prev) => prev.map((t) => (t.id === data.id ? { ...t, height } : t)));\n }, [toast?.setToasts, data.id]);\n\n React.useLayoutEffect(() => {\n if (!isMounted || !elementRef?.current || !toast?.setToasts) return;\n\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n\n rafRef.current = requestAnimationFrame(() => {\n const el = elementRef.current;\n\n if (!el) return;\n\n const originalHeight = el.style.height;\n\n el.style.height = 'auto';\n const newHeight = el.offsetHeight;\n\n el.style.height = originalHeight;\n\n setRealHeight(newHeight);\n toast.setToasts((prev) => prev.map((t) => (t.id === data.id ? { ...t, height: newHeight } : t)));\n });\n\n return () => {\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n };\n }, [isMounted, data.variant, data.title, data.description, data.action, data.icon, data.jsx]);\n\n return {\n state,\n offset,\n index,\n deleteToast,\n onPointerDown,\n onPointerMove,\n onPointerUp,\n onDragEnd,\n handleCloseOnClick,\n onKeyDown,\n onFocus\n };\n }\n});\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { useToast } from '@primereact/headless/toast';\nimport { styles } from '@primereact/styles/toast';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { ToastProvider } from './Toast.context';\nimport { defaultProps } from './Toast.props';\nimport { ToastAction } from './action';\nimport { ToastClose } from './close/ToastClose';\nimport { ToastDescription } from './description';\nimport { ToastIcon } from './icon/ToastIcon';\nimport { ToastItem } from './item';\nimport { ToastPortal } from './portal/ToastPortal';\nimport { ToastRegion } from './region/ToastRegion';\nimport './styles.css';\nimport { ToastTitle } from './title';\n\nexport const Toast = withComponent({\n name: 'Toast',\n defaultProps,\n styles,\n setup(instance) {\n const toast = useToast(instance.inProps);\n\n return toast;\n },\n render(instance) {\n const { props } = instance;\n\n return (\n <ToastProvider value={instance}>\n <Component as={React.Fragment} instance={instance} attrs={{}} children={props.children} />\n </ToastProvider>\n );\n },\n components: {\n Portal: ToastPortal,\n Region: ToastRegion,\n Item: ToastItem,\n Close: ToastClose,\n Title: ToastTitle,\n Description: ToastDescription,\n Icon: ToastIcon,\n Action: ToastAction\n }\n});\n","import { withComponent as withComponentInCore } from '@primereact/core/component';\nimport { styles as baseStyles } from '@primereact/styles/base';\nimport type { withComponentOptions } from '@primereact/types/core';\nimport type { StylesOptions } from '@primereact/types/styles';\n\nexport const withComponent = <IProps, DProps, Exposes extends Record<PropertyKey, unknown> = Record<PropertyKey, unknown>, Styles = StylesOptions, CData = Record<string, unknown>>({\n name = 'UnknownComponent',\n defaultProps,\n styles = {\n ...baseStyles,\n name: 'global'\n } as Styles,\n components,\n setup,\n render\n}: withComponentOptions<IProps, DProps, Exposes, Styles, CData>) => {\n return withComponentInCore<IProps, DProps, Exposes, Styles, CData>({\n name,\n defaultProps,\n styles,\n components,\n setup,\n render\n });\n};\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { ToastInstance } from '@primereact/types/shared/toast';\n\nexport const [ToastProvider, useToastContext] = createOptionalContext<ToastInstance>();\n","import * as HeadlessToast from '@primereact/headless/toast';\nimport type { ToastProps } from '@primereact/types/shared/toast';\n\nexport const defaultProps: ToastProps = {\n ...HeadlessToast.defaultProps,\n richColors: false\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { styles } from '@primereact/styles/toast';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useToastItemContext } from '../item/ToastItem.context';\nimport { useToastContext } from '../Toast.context';\nimport { defaultActionProps } from './ToastAction.props';\n\nexport const ToastAction = withComponent({\n name: 'ToastAction',\n defaultProps: defaultActionProps,\n styles,\n setup() {\n const toastItem = useToastItemContext();\n const toast = useToastContext();\n\n return { toast, toastItem };\n },\n render(instance) {\n const { id, props, ptmi, toastItem } = instance;\n\n const actionProps = toastItem?.props.data.action ?? {};\n\n const rootProps = mergeProps(\n {\n id,\n ...actionProps\n },\n ptmi('root')\n );\n\n return <Component pIf={!!toastItem?.props.data.action} instance={instance} attrs={rootProps} children={actionProps?.children ?? props.children} />;\n }\n});\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { ToastItemInstance } from '@primereact/types/shared/toast';\n\nexport const [ToastItemProvider, useToastItemContext] = createOptionalContext<ToastItemInstance>();\n","import type { ToastActionProps } from '@primereact/types/shared/toast';\n\nexport const defaultActionProps: ToastActionProps = {\n as: 'button'\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { styles } from '@primereact/styles/toast';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useToastItemContext } from '../item/ToastItem.context';\nimport { useToastContext } from '../Toast.context';\nimport { defaultCloseProps } from './ToastClose.props';\n\nexport const ToastClose = withComponent({\n name: 'ToastClose',\n defaultProps: defaultCloseProps,\n styles,\n setup() {\n const toastItem = useToastItemContext();\n const toast = useToastContext();\n\n return { toast, toastItem };\n },\n render(instance) {\n const { id, props, ptmi, toastItem } = instance;\n\n const rootProps = mergeProps(\n {\n id,\n onClick: toastItem?.handleCloseOnClick\n },\n ptmi('root')\n );\n\n return <Component pIf={toastItem?.props.data.variant !== 'loading' && toastItem?.props.data.dismissible !== false} instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import type { ToastCloseProps } from '@primereact/types/shared/toast';\n\nexport const defaultCloseProps: ToastCloseProps = {\n as: 'button'\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { styles } from '@primereact/styles/toast';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useToastItemContext } from '../item/ToastItem.context';\nimport { useToastContext } from '../Toast.context';\nimport { defaultDescriptionProps } from './ToastDescription.props';\n\nexport const ToastDescription = withComponent({\n name: 'ToastDescription',\n defaultProps: defaultDescriptionProps,\n styles,\n setup() {\n const toastItem = useToastItemContext();\n const toast = useToastContext();\n\n return { toast, toastItem };\n },\n render(instance) {\n const { props, toastItem } = instance;\n\n const rootProps = mergeProps({\n className: 'p-toast-description'\n });\n\n return <Component instance={instance} attrs={rootProps} children={props.children ?? toastItem?.props.data.description} />;\n }\n});\n","import type { ToastDescriptionProps } from '@primereact/types/shared/toast';\n\nexport const defaultDescriptionProps: ToastDescriptionProps = {\n as: 'div'\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { Icon } from '@primereact/core/icon';\nimport { CheckIcon, ExclamationTriangleIcon, InfoCircleIcon, SpinnerIcon, TimesCircleIcon } from '@primereact/icons';\nimport { ToastVariant, useToastProps } from '@primereact/types/shared/toast';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useToastItemContext } from '../item/ToastItem.context';\nimport { useToastContext } from '../Toast.context';\nimport { defaultIconProps } from './ToastIcon.props';\n\nconst defaultIcons: useToastProps['icons'] = {\n danger: <TimesCircleIcon />,\n warn: <ExclamationTriangleIcon />,\n info: <InfoCircleIcon />,\n success: <CheckIcon />,\n loading: <SpinnerIcon />\n};\n\nexport const ToastIcon = withComponent({\n name: 'ToastIcon',\n defaultProps: defaultIconProps,\n setup() {\n const toast = useToastContext();\n\n const toastItem = useToastItemContext();\n\n return { toast, toastItem };\n },\n render(instance) {\n const { props, ptmi, toast, toastItem } = instance;\n\n const rootProps = mergeProps(\n {\n className: toast?.cx('icon'),\n ...(toastItem?.props.data.variant === 'loading' && { spin: true })\n },\n toast?.ptm('icon'),\n ptmi('root')\n );\n\n return (\n <Component\n pIf={!!toastItem?.props.data.icon || !!defaultIcons[toastItem?.props.data.variant as ToastVariant]}\n as={Icon}\n instance={instance}\n attrs={rootProps}\n children={toastItem?.props.data.icon ?? defaultIcons[toastItem?.props.data.variant as ToastVariant] ?? props.children}\n />\n );\n }\n});\n","import * as Icon from '@primereact/core/icon';\nimport type { ToastIconProps } from '@primereact/types/shared/toast';\n\nexport const defaultIconProps: ToastIconProps = {\n ...(Icon.defaultIconProps as ToastIconProps)\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { useToastItem } from '@primereact/headless/toast/item';\nimport { styles } from '@primereact/styles/toast';\nimport { cn, mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useToastContext } from '../Toast.context';\nimport { ToastItemProvider } from './ToastItem.context';\nimport { defaultItemProps } from './ToastItem.props';\n\nexport const ToastItem = withComponent({\n name: 'ToastItem',\n defaultProps: defaultItemProps,\n styles,\n setup(instance) {\n const toastItem = useToastItem(instance.inProps);\n\n const toast = useToastContext();\n\n return { ...toastItem, toast };\n },\n render(instance) {\n const { id, props, ptmi, toast, state, offset, onPointerDown, onPointerMove, onPointerUp, onDragEnd, index, onKeyDown } = instance;\n\n const { data } = props;\n\n const rootProps = mergeProps(\n {\n id,\n className: cn('p-toast'),\n tabIndex: 0,\n role: 'alert',\n 'aria-live': 'assertive',\n 'aria-atomic': 'true',\n style: { '--p-toast-index': index, '--p-toast-offset': offset + 'px', '--p-swipe-amount-x': '0px', '--p-swipe-amount-y': '0px', '--p-real-height': state.realHeight + 'px' } as React.CSSProperties,\n 'data-overflow': index > 2,\n 'data-removed': data.removed,\n 'data-expanded': toast?.state.isExpanded,\n 'data-mounted': state?.isMounted,\n 'data-front': index === 0,\n 'data-swiping': state?.isSwiping,\n 'data-swipe-out': state?.isSwipeOut,\n 'data-swipe-out-direction': state?.swipeOutDirection,\n 'data-variant': data.variant,\n 'data-id': data.id,\n 'data-rich-colors': toast?.props.richColors,\n onPointerDown: onPointerDown,\n onPointerMove: onPointerMove,\n onPointerUp: onPointerUp,\n onDragEnd: onDragEnd,\n onKeyDown: onKeyDown\n },\n ptmi('root')\n );\n\n return (\n <ToastItemProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={data.jsx ?? props.children}></Component>\n </ToastItemProvider>\n );\n }\n});\n","import * as HeadlessToastItem from '@primereact/headless/toast/item';\nimport type { ToastItemProps } from '@primereact/types/shared/toast';\n\nexport const defaultItemProps: ToastItemProps = {\n ...HeadlessToastItem.defaultProps,\n as: 'div'\n};\n","'use client';\nimport { usePortal } from '@primereact/headless/portal';\nimport { PortalProps } from '@primereact/types/shared/portal';\nimport { resolve } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport { createPortal } from 'react-dom';\nimport { defaultProps } from './Portal.props';\n\nexport const Portal = withComponent({\n name: 'Portal',\n defaultProps,\n setup(instance) {\n const portal = usePortal(instance.inProps);\n\n return portal;\n },\n render(instance) {\n const { props, mountedState } = instance;\n const element = props.element || (props.children as React.ReactNode);\n\n if (!element || !mountedState) {\n return null;\n }\n\n const appendTo = resolve(props.appendTo, instance) as PortalProps['appendTo'];\n\n if (appendTo === 'self') {\n return element;\n }\n\n const container = !appendTo ? document.body : typeof appendTo === 'string' ? document.querySelector(appendTo) || document.body : appendTo;\n\n return createPortal(element, container);\n }\n});\n","import * as HeadlessPortal from '@primereact/headless/portal';\nimport type { PortalProps } from '@primereact/types/shared/portal';\n\nexport const defaultProps: PortalProps = {\n ...HeadlessPortal.defaultProps,\n element: undefined,\n appendTo: 'body'\n};\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { PortalInstance } from '@primereact/types/shared/portal';\n\nexport const [PortalProvider, usePortalContext] = createOptionalContext<PortalInstance>();\n","'use client';\nimport { Portal } from 'primereact/portal';\n\nexport const ToastPortal = Portal;\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { styles } from '@primereact/styles/toast';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useToastContext } from '../Toast.context';\nimport { defaultRegionProps } from './ToastRegion.props';\n\nexport const ToastRegion = withComponent({\n name: 'ToastRegion',\n defaultProps: defaultRegionProps,\n styles,\n setup() {\n const toast = useToastContext();\n\n return { toast };\n },\n render(instance) {\n const { props, toast } = instance;\n\n const rootProps = mergeProps({\n role: 'region',\n className: 'p-toast-region',\n tabIndex: -1,\n onMouseEnter: toast?.onRegionMouseEnter,\n onMouseLeave: toast?.onRegionMouseLeave,\n onMouseMove: toast?.onRegionMouseMove,\n onDragEnd: toast?.onRegionDragEnd,\n onPointerDown: toast?.onRegionPointerDown,\n onPointerUp: toast?.onRegionPointerUp,\n 'data-position': toast?.props.position,\n 'data-expanded': toast?.state.isExpanded,\n style: {\n '--gap': `${toast?.props.gap}px`,\n '--raise-factor': toast?.props.position?.includes('top') ? 1 : -1,\n '--front-toast-height': `${toast?.toasts[0]?.height || 0}px`\n } as React.CSSProperties\n });\n\n return <Component instance={instance} attrs={rootProps} children={props.children} />;\n }\n});\n","import type { ToastRegionProps } from '@primereact/types/shared/toast';\n\nexport const defaultRegionProps: ToastRegionProps = {\n as: 'div'\n};\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { styles } from '@primereact/styles/toast';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { useToastItemContext } from '../item/ToastItem.context';\nimport { useToastContext } from '../Toast.context';\nimport { defaultTitleProps } from './ToastTitle.props';\n\nexport const ToastTitle = withComponent({\n name: 'ToastTitle',\n defaultProps: defaultTitleProps,\n styles,\n setup() {\n const toastItem = useToastItemContext();\n const toast = useToastContext();\n\n return { toast, toastItem };\n },\n render(instance) {\n const { props, toastItem } = instance;\n\n const rootProps = mergeProps({\n className: 'p-toast-title'\n });\n\n return <Component instance={instance} attrs={rootProps} children={props.children ?? toastItem?.props.data.title} />;\n }\n});\n","import type { ToastTitleProps } from '@primereact/types/shared/toast';\n\nexport const defaultTitleProps: ToastTitleProps = {\n as: 'div'\n};\n","import type { ToastEvent, ToastId, ToastListener, ToastPromiseType, ToastType } from '@primereact/types/shared/toast';\n\nclass ToastManager {\n private toasts: ToastType[] = [];\n private listeners: Set<ToastListener> = new Set();\n private toastCounter = 0;\n\n constructor() {\n this.toasts = [];\n this.listeners = new Set();\n }\n\n private generateId(): string {\n return `toast-${++this.toastCounter}-${Date.now()}`;\n }\n\n private emit(event: ToastEvent): void {\n this.listeners.forEach((listener) => listener(event));\n }\n\n // Subscribe to toast events\n subscribe(listener: ToastListener): () => void {\n this.listeners.add(listener);\n\n return () => this.listeners.delete(listener);\n }\n\n // Get all current toasts\n getToasts(): ToastType[] {\n return [...this.toasts];\n }\n\n // Add a new toast\n add = (id: ToastId, toast: ToastType): ToastId => {\n this.toasts.push({ ...toast, id });\n this.emit({ type: 'add', toast: { ...toast, id } });\n\n return id;\n };\n\n create = (toast: ToastType): ToastId => {\n const id = toast.id || this.generateId();\n\n const isAlreadyExists = this.toasts.find((t) => t.id === id);\n\n if (isAlreadyExists) {\n this.update(id, toast);\n\n return id;\n }\n\n return this.add(id, toast);\n };\n\n // Remove a toast by id or all toasts\n remove = (id?: ToastId): void => {\n if (id) {\n const toastIndex = this.toasts.findIndex((toast) => toast.id === id);\n\n if (toastIndex > -1) {\n this.toasts[toastIndex].removed = true;\n this.toasts[toastIndex].height = 0;\n\n this.emit({ type: 'remove', toastId: id });\n }\n } else {\n this.toasts.forEach((toast) => {\n this.remove(toast.id);\n });\n }\n };\n\n // Clear all toasts\n delete = (id?: ToastId): void => {\n if (id) {\n this.toasts = this.toasts.filter((toast) => toast.id !== id);\n this.emit({ type: 'delete', toastId: id });\n } else {\n this.toasts = [];\n this.emit({ type: 'clear' });\n }\n };\n\n // Update an existing toast\n update = (id: ToastId, updates: Partial<ToastType>): void => {\n const toastIndex = this.toasts.findIndex((toast) => toast.id === id);\n\n if (toastIndex > -1) {\n this.toasts[toastIndex] = { ...this.toasts[toastIndex], ...updates };\n this.emit({ type: 'update', toast: this.toasts[toastIndex] });\n }\n };\n\n // Helper methods for different toast types\n success = (toast: ToastType): ToastId => {\n return this.create({\n ...toast,\n variant: 'success'\n });\n };\n\n danger = (toast: ToastType): ToastId => {\n return this.create({\n ...toast,\n variant: 'danger'\n });\n };\n\n warn = (toast: ToastType): ToastId => {\n return this.create({\n ...toast,\n variant: 'warn'\n });\n };\n\n info = (toast: ToastType): ToastId => {\n return this.create({\n ...toast,\n variant: 'info'\n });\n };\n\n loading = (toast: ToastType): ToastId => {\n return this.create({\n ...toast,\n variant: 'loading'\n });\n };\n\n custom = (jsx: React.ReactElement | ((id: ToastId) => React.ReactElement), options?: Partial<ToastType>): ToastId => {\n const id = options?.id || this.generateId();\n\n const customToast: ToastType = {\n id,\n variant: 'custom',\n jsx: typeof jsx === 'function' ? jsx(id) : jsx,\n ...options\n };\n\n return this.create(customToast);\n };\n\n promise = async <T>(promise: Promise<T>, options: ToastPromiseType<T>): Promise<T> => {\n const loadingToast: ToastType = {\n id: options.loading.id ?? this.generateId(),\n variant: 'loading',\n ...options.loading\n };\n\n this.create(loadingToast);\n\n return promise\n .then((data) => {\n const successToast = typeof options.success === 'function' ? options.success(data) : options.success;\n\n if (successToast) {\n this.update(loadingToast.id!, {\n ...successToast,\n id: loadingToast.id,\n variant: 'success'\n });\n } else {\n this.remove(loadingToast.id);\n }\n\n return data;\n })\n .catch((error) => {\n const errorToast = typeof options.error === 'function' ? options.error(error) : options.error;\n\n if (errorToast) {\n this.update(loadingToast.id!, {\n ...errorToast,\n id: loadingToast.id,\n variant: 'danger'\n });\n } else {\n this.remove(loadingToast.id);\n }\n\n throw error;\n });\n };\n}\n\nexport const ToastManagerInstance = new ToastManager();\n\nexport const toast = Object.assign(ToastManagerInstance.create, {\n success: ToastManagerInstance.success,\n danger: ToastManagerInstance.danger,\n warn: ToastManagerInstance.warn,\n info: ToastManagerInstance.info,\n loading: ToastManagerInstance.loading,\n remove: ToastManagerInstance.remove,\n clear: ToastManagerInstance.delete,\n promise: ToastManagerInstance.promise,\n custom: ToastManagerInstance.custom,\n update: ToastManagerInstance.update\n});\n","import type { useToastItemProps } from '@primereact/types/shared/toast';\n\nexport const defaultProps: useToastItemProps = {\n data: {}\n};\n"],"mappings":"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","names":["withHeadless","useMountEffect","useUnmountEffect","Component","useToast","styles","withComponentInCore","baseStyles","withComponent","name","defaultProps","styles","__spreadProps","__spreadValues","baseStyles","components","setup","render","withComponentInCore","React","createOptionalContext","ToastProvider","useToastContext","HeadlessToast","defaultProps","__spreadProps","__spreadValues","Component","styles","mergeProps","React","createOptionalContext","ToastItemProvider","useToastItemContext","defaultActionProps","ToastAction","withComponent","defaultActionProps","styles","toastItem","useToastItemContext","useToastContext","instance","_a","_b","id","props","ptmi","actionProps","rootProps","mergeProps","__spreadValues","Component","Component","styles","mergeProps","React","defaultCloseProps","ToastClose","withComponent","defaultCloseProps","styles","toastItem","useToastItemContext","useToastContext","instance","id","props","ptmi","rootProps","mergeProps","Component","Component","styles","mergeProps","React","defaultDescriptionProps","ToastDescription","withComponent","defaultDescriptionProps","styles","toastItem","useToastItemContext","useToastContext","instance","_a","props","rootProps","mergeProps","Component","Component","Icon","CheckIcon","ExclamationTriangleIcon","InfoCircleIcon","SpinnerIcon","TimesCircleIcon","mergeProps","React","Icon","defaultIconProps","__spreadValues","defaultIcons","TimesCircleIcon","ExclamationTriangleIcon","InfoCircleIcon","CheckIcon","SpinnerIcon","ToastIcon","withComponent","defaultIconProps","toast","useToastContext","toastItem","useToastItemContext","instance","_a","_b","props","ptmi","rootProps","mergeProps","__spreadValues","Component","Icon","Component","useToastItem","styles","cn","mergeProps","React","HeadlessToastItem","defaultItemProps","__spreadProps","__spreadValues","ToastItem","withComponent","defaultItemProps","styles","instance","toastItem","useToastItem","toast","useToastContext","__spreadProps","__spreadValues","_a","id","props","ptmi","state","offset","onPointerDown","onPointerMove","onPointerUp","onDragEnd","index","onKeyDown","data","rootProps","mergeProps","cn","ToastItemProvider","Component","usePortal","resolve","createPortal","HeadlessPortal","defaultProps","__spreadProps","__spreadValues","Portal","withComponent","defaultProps","instance","usePortal","props","mountedState","element","appendTo","resolve","container","createPortal","createOptionalContext","PortalProvider","usePortalContext","ToastPortal","Portal","Component","styles","mergeProps","React","defaultRegionProps","ToastRegion","withComponent","defaultRegionProps","styles","useToastContext","instance","_a","_b","props","toast","rootProps","mergeProps","Component","Component","styles","mergeProps","React","defaultTitleProps","ToastTitle","withComponent","defaultTitleProps","styles","toastItem","useToastItemContext","useToastContext","instance","_a","props","rootProps","mergeProps","Component","Toast","withComponent","defaultProps","styles","instance","useToast","props","ToastProvider","Component","ToastPortal","ToastRegion","ToastItem","ToastClose","ToastTitle","ToastDescription","ToastIcon","ToastAction","ToastManager","id","toast","__spreadProps","__spreadValues","t","toastIndex","updates","jsx","options","customToast","promise","__async","_a","loadingToast","data","successToast","error","errorToast","event","listener","ToastManagerInstance","React","defaultProps","SWIPE_THRESHOLD","VELOCITY_THRESHOLD","DAMPENING_FACTOR","useToastItem","withHeadless","defaultProps","props","elementRef","data","toast","useToastContext","isMounted","setIsMounted","isSwiping","setIsSwiping","isSwipeOut","setIsSwipeOut","swipeOutDirection","setSwipeOutDirection","swipeDirection","setSwipeDirection","realHeight","setRealHeight","swipeStartTimeRef","swipeStartPointerRef","remainingTimeRef","timeoutStartTimeRef","lastTimeoutStartTimeRef","onTransitionEndRef","fallbackTimeoutRef","rafRef","state","index","offset","toasts","dataIndex","acc","deleteToast","_a","ToastManagerInstance","event","cleanup","onKeyDown","onFocus","onPointerDown","onPointerMove","_b","yDelta","xDelta","applyDampening","delta","factor","position","swipeAmount","swipeDirections","isSwipingUp","isTop","isBottom","isSwipingLeft","isLeft","isRight","onPointerUp","_c","_d","_e","_f","swipeAmountX","swipeAmountY","timeTaken","velocity","onDragEnd","handleCloseOnClick","useMountEffect","useUnmountEffect","timeoutId","startTimer","pauseTimer","elapsedTime","height","prev","t","__spreadProps","__spreadValues","el","originalHeight","newHeight"]}
@@ -0,0 +1,21 @@
1
+ import * as React from 'react';
2
+ export declare const useToastItem: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/toast").useToastItemProps, unknown, {
3
+ state: {
4
+ isMounted: boolean;
5
+ isSwipeOut: boolean;
6
+ isSwiping: boolean;
7
+ swipeOutDirection: "left" | "right" | "up" | "down" | null;
8
+ swipeDirection: "x" | "y" | null;
9
+ realHeight: number;
10
+ };
11
+ offset: number;
12
+ index: number;
13
+ deleteToast: () => void;
14
+ onPointerDown: (event: React.PointerEvent<HTMLDivElement>) => void;
15
+ onPointerMove: (event: React.PointerEvent<HTMLDivElement>) => void;
16
+ onPointerUp: () => void;
17
+ onDragEnd: () => void;
18
+ handleCloseOnClick: () => void;
19
+ onKeyDown: (event: React.KeyboardEvent<HTMLDivElement>) => void;
20
+ onFocus: () => void;
21
+ }>;
@@ -0,0 +1,2 @@
1
+ import type { useToastItemProps } from '@primereact/types/shared/toast';
2
+ export declare const defaultProps: useToastItemProps;
File without changes
@@ -0,0 +1,18 @@
1
+ import type { ToastType } from '@primereact/types/shared/toast';
2
+ import * as React from 'react';
3
+ export declare const useToast: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/toast").useToastProps, unknown, {
4
+ state: {
5
+ isExpanded: boolean;
6
+ isInteracting: boolean;
7
+ };
8
+ toasts: ToastType[];
9
+ onRegionMouseEnter: () => void;
10
+ onRegionMouseMove: () => void;
11
+ onRegionMouseLeave: () => void;
12
+ onRegionDragEnd: () => void;
13
+ onRegionPointerDown: (event: React.PointerEvent) => void;
14
+ onRegionPointerUp: () => void;
15
+ setToasts: React.Dispatch<React.SetStateAction<ToastType[]>>;
16
+ handleFocusElement: (toastElement: HTMLElement | null) => void;
17
+ handleToastFocus: () => void;
18
+ }>;
@@ -0,0 +1,2 @@
1
+ import type { useToastProps } from '@primereact/types/shared/toast';
2
+ export declare const defaultProps: useToastProps;
File without changes
package/tooltip/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
- var _e=Object.defineProperty,$e=Object.defineProperties;var et=Object.getOwnPropertyDescriptors;var le=Object.getOwnPropertySymbols;var tt=Object.prototype.hasOwnProperty,nt=Object.prototype.propertyIsEnumerable;var fe=(c,u,l)=>u in c?_e(c,u,{enumerable:!0,configurable:!0,writable:!0,value:l}):c[u]=l,O=(c,u)=>{for(var l in u||(u={}))tt.call(u,l)&&fe(c,l,u[l]);if(le)for(var l of le(u))nt.call(u,l)&&fe(c,l,u[l]);return c},H=(c,u)=>$e(c,et(u));import{withHeadless as at}from"@primereact/core/headless";import{usePlacer as lt}from"@primereact/headless/placer";import{useUnmountEffect as ft}from"@primereact/hooks/use-unmount-effect";import{addStyle as j,isClient as T}from"@primeuix/utils/dom";import{ZIndex as Re}from"@primeuix/utils/zindex";import{Component as it}from"@primereact/core/component";import{useTooltipGroup as ct}from"@primereact/headless/tooltip/group";import{mergeProps as ut}from"@primeuix/utils";import{withComponent as rt}from"@primereact/core/component";import{styles as ot}from"@primereact/styles/base";var me=({name:c="UnknownComponent",defaultProps:u,styles:l=H(O({},ot),{name:"global"}),components:b,setup:v,render:C})=>rt({name:c,defaultProps:u,styles:l,components:b,setup:v,render:C});import*as B from"react";import{createOptionalContext as st}from"@primereact/core/utils";var[de,pe]=st();import*as ve from"@primereact/headless/tooltip/group";import*as ye from"react";var Le=H(O({},ve.defaultProps),{as:ye.Fragment});var St=me({name:"TooltipGroup",defaultProps:Le,setup(c){return ct(c.inProps)},render(c){let{props:u,ptmi:l}=c,b=ut(l("root"));return B.createElement(de,{value:c},B.createElement(it,{instance:c,attrs:b,children:u.children}))}});import*as a from"react";var Ee={showDelayDuration:700,hideDelayDuration:0,autoZIndex:!0,baseZIndex:0,containerRef:void 0,triggerRef:void 0,open:!1,onOpenChange:void 0,defaultOpen:!1,closeOnEscape:!0,side:"top",sideOffset:0,align:"center",alignOffset:0,autoHide:!1,disabled:!1};var Zt=at({name:"useTooltip",defaultProps:Ee,setup:({props:c,$primereact:u})=>{var ce;let{showDelayDuration:l,hideDelayDuration:b,autoHide:v,autoZIndex:C,baseZIndex:M,disabled:w,defaultOpen:F,open:Z,onOpenChange:m,closeOnEscape:U,side:xe,align:ge,sideOffset:be,alignOffset:we}=c,r=lt({side:xe,align:ge,sideOffset:be,alignOffset:we}),f=pe(),[S,D]=a.useState(!1),[he,I]=a.useState(!1),[Pe,N]=a.useState(!1),[Te,V]=a.useState(!1),k=a.useRef(null),G=a.useRef(null),y=a.useRef(null),X=a.useRef(!1),L=a.useRef(null),E=a.useRef(null),R=a.useRef(null),h=a.useRef(null),x=a.useRef(null),Ce={visible:S,life:he,shouldAnimateOnEnter:Pe,shouldAnimateOnLeave:Te},P=()=>{var e,o,t,n,s,i;return(e=r==null?void 0:r.anchorRef)!=null&&e.current&&((o=r==null?void 0:r.anchorRef)==null?void 0:o.current)instanceof HTMLElement?(t=r==null?void 0:r.anchorRef)==null?void 0:t.current:(i=(s=(n=r==null?void 0:r.anchorRef)==null?void 0:n.current)==null?void 0:s.elementRef)==null?void 0:i.current},p=()=>{var e,o,t,n,s,i;return(e=r==null?void 0:r.containerRef)!=null&&e.current&&((o=r==null?void 0:r.containerRef)==null?void 0:o.current)instanceof HTMLElement?(t=r==null?void 0:r.containerRef)==null?void 0:t.current:(i=(s=(n=r==null?void 0:r.containerRef)==null?void 0:n.current)==null?void 0:s.elementRef)==null?void 0:i.current},Se=()=>{var e,o,t,n,s,i;return(e=r==null?void 0:r.arrowRef)!=null&&e.current&&((o=r==null?void 0:r.arrowRef)==null?void 0:o.current)instanceof HTMLElement?(t=r==null?void 0:r.arrowRef)==null?void 0:t.current:(i=(s=(n=r==null?void 0:r.arrowRef)==null?void 0:n.current)==null?void 0:s.elementRef)==null?void 0:i.current},Y=()=>{var e,o;return h.current&&h.current instanceof HTMLElement?h.current:(o=(e=h.current)==null?void 0:e.elementRef)==null?void 0:o.current},A=()=>{k.current&&(clearTimeout(k.current),k.current=null),G.current&&(clearTimeout(G.current),G.current=null)},g=(e=!1)=>{var n,s;if(w)return;A(),(n=f==null?void 0:f.clearTimers)==null||n.call(f);let o=(s=f==null?void 0:f.state)==null?void 0:s.timeoutState;V(!1),N(!e&&o!=="instant");let t=o==="instant"||o==="normal"?0:l||400;e||t===0?(D(!0),I(!0),m==null||m({value:!0})):k.current=window.setTimeout(()=>{D(!0),I(!0),m==null||m({value:!0})},t)},d=(e=!1)=>{var n;A();let o=(n=f==null?void 0:f.state)==null?void 0:n.timeoutState;N(!1),V(!e&&o!=="instant"),f==null||f.scheduleTimeout(()=>{},P()||void 0);let t=o==="instant"||o==="normal"?0:b||0;e||t===0?(D(!1),m==null||m({value:!1})):G.current=window.setTimeout(()=>{D(!1),m==null||m({value:!1})},t)},q=()=>d(!0),J=()=>d(!0),Q=()=>{g(),x.current=null},W=()=>g(!0),_=()=>d(),$=()=>{v?d():se()},De=()=>{let e=P();!e||!T()||(e.addEventListener("click",q),e.addEventListener("pointerdown",J),e.addEventListener("pointerenter",Q),e.addEventListener("focus",W),e.addEventListener("blur",_),e.addEventListener("pointerleave",$))},ke=()=>{let e=P();!e||!T()||(e.removeEventListener("click",q),e.removeEventListener("pointerdown",J),e.removeEventListener("pointerenter",Q),e.removeEventListener("focus",W),e.removeEventListener("blur",_),e.removeEventListener("pointerleave",$))},ee=()=>{v||(g(!0),x.current=null)},te=()=>g(!0),ne=()=>d(),re=()=>{v||se()},Ge=()=>{let e=p();!e||!T()||(e.addEventListener("pointerenter",ee),e.addEventListener("focus",te),e.addEventListener("blur",ne),e.addEventListener("pointerleave",re))},oe=()=>{let e=p();!e||!T()||(e.removeEventListener("pointerenter",ee),e.removeEventListener("focus",te),e.removeEventListener("blur",ne),e.removeEventListener("pointerleave",re))},Oe=e=>{let o={x:e.reduce((t,n)=>t+n.x,0)/e.length,y:e.reduce((t,n)=>t+n.y,0)/e.length};return[...e].sort((t,n)=>{let s=Math.atan2(t.y-o.y,t.x-o.x),i=Math.atan2(n.y-o.y,n.x-o.x);return s-i})},He=()=>{var i;let e=P(),o=p();if(!e||!o)return;let t=e.getBoundingClientRect(),n=o.getBoundingClientRect(),s=[];switch((i=r==null?void 0:r.state)==null?void 0:i.effectiveSide){case"top":s.push({x:t.left,y:t.top},{x:t.right,y:t.top},{x:n.left,y:n.bottom},{x:n.right,y:n.bottom});break;case"bottom":s.push({x:t.left,y:t.bottom},{x:t.right,y:t.bottom},{x:n.left,y:n.top},{x:n.right,y:n.top});break;case"left":s.push({x:t.left,y:t.top},{x:t.left,y:t.bottom},{x:n.right,y:n.top},{x:n.right,y:n.bottom});break;case"right":s.push({x:t.right,y:t.top},{x:t.right,y:t.bottom},{x:n.left,y:n.top},{x:n.left,y:n.bottom});break}return Oe(s)},Me=(e,o)=>{if(!o)return!1;let{x:t,y:n}=e,s=!1;for(let i=0,K=o.length-1;i<o.length;K=i++){let ue=o[i].x,z=o[i].y,We=o[K].x,ae=o[K].y;z>n!=ae>n&&t<(We-ue)*(n-z)/(ae-z+1e-7)+ue&&(s=!s)}return s},se=()=>{p()?x.current=He()||null:(x.current=null,d(!0))},ie=e=>{if(v)return;let o={x:e.clientX,y:e.clientY},t=e.target,n=P(),s=p(),i=Se();!n||!s||Me(o,x.current)||n.contains(t)||s.contains(t)||i&&i.contains(t)||(d(),x.current=null)},Ie=()=>{document.addEventListener("pointermove",ie)},Ae=()=>{document.removeEventListener("pointermove",ie)},Ke=()=>{let e=p();e&&j(e,{opacity:""})},ze=()=>{var o,t,n;let e=p();e&&(r==null||r.applyPlacement(),Ge(),Ue(),Ye(),Je(),Ie(),C&&Re.set("tooltip",e,(M!=null?M:0)+((n=(t=(o=u.config)==null?void 0:o.zIndex)==null?void 0:t.tooltip)!=null?n:1100)),U&&Ve())},Be=()=>{oe(),Ne(),qe(),Qe(),Xe(),Ae()},je=()=>{I(!1)},Fe=()=>{let e=Y();e&&j(e,{opacity:"1",transform:"scale(1)"})},Ze=()=>{let e=Y();e&&j(e,{opacity:"0",transform:"scale(0.95)"})},Ue=()=>{!y.current&&T()&&(y.current=e=>{let o=e,t=p();S&&!(o.target===t||t!=null&&t.contains(o.target))&&d(!0),X.current=!1},document.addEventListener("click",y.current))},Ne=()=>{y.current&&(document.removeEventListener("click",y.current),y.current=null,X.current=!1)},Ve=()=>{L.current||(L.current=e=>{e.code==="Escape"&&U&&d(!0)},window.document.addEventListener("keydown",L.current))},Xe=()=>{L.current&&(window.document.removeEventListener("keydown",L.current),L.current=null)},Ye=()=>{E.current||(E.current=()=>{S&&d(!0)},window.document.addEventListener("scroll",E.current))},qe=()=>{E.current&&(window.document.removeEventListener("scroll",E.current),E.current=null)},Je=()=>{R.current||(R.current=()=>{S&&d(!0)},window.document.addEventListener("resize",R.current))},Qe=()=>{R.current&&(window.document.removeEventListener("resize",R.current),R.current=null)};return a.useEffect(()=>{w||(F||Z)&&setTimeout(()=>{g()},0)},[F,Z,w]),a.useEffect(()=>{w||De()},[(ce=r==null?void 0:r.anchorRef)==null?void 0:ce.current,w]),ft(()=>{A(),ke(),oe();let e=p();C&&e&&Re.clear(e)}),{state:Ce,placer:r,show:g,hide:d,onEnter:Ke,onBeforeEnter:ze,onLeave:Be,onContentAfterLeave:je,onContentEnter:Fe,onContentLeave:Ze,contentRef:h}}});export{Ee as defaultProps,Zt as useTooltip};
1
+ var We=Object.defineProperty,_e=Object.defineProperties;var $e=Object.getOwnPropertyDescriptors;var ae=Object.getOwnPropertySymbols;var et=Object.prototype.hasOwnProperty,tt=Object.prototype.propertyIsEnumerable;var le=(c,u,l)=>u in c?We(c,u,{enumerable:!0,configurable:!0,writable:!0,value:l}):c[u]=l,O=(c,u)=>{for(var l in u||(u={}))et.call(u,l)&&le(c,l,u[l]);if(ae)for(var l of ae(u))tt.call(u,l)&&le(c,l,u[l]);return c},H=(c,u)=>_e(c,$e(u));import{withHeadless as ut}from"@primereact/core/headless";import{usePlacer as at}from"@primereact/headless/placer";import{useUnmountEffect as lt}from"@primereact/hooks/use-unmount-effect";import{isClient as T}from"@primeuix/utils/dom";import{ZIndex as Ee}from"@primeuix/utils/zindex";import{Component as st}from"@primereact/core/component";import{useTooltipGroup as it}from"@primereact/headless/tooltip/group";import{mergeProps as ct}from"@primeuix/utils";import{withComponent as nt}from"@primereact/core/component";import{styles as rt}from"@primereact/styles/base";var fe=({name:c="UnknownComponent",defaultProps:u,styles:l=H(O({},rt),{name:"global"}),components:b,setup:v,render:C})=>nt({name:c,defaultProps:u,styles:l,components:b,setup:v,render:C});import*as B from"react";import{createOptionalContext as ot}from"@primereact/core/utils";var[me,de]=ot();import*as pe from"@primereact/headless/tooltip/group";import*as ve from"react";var ye=H(O({},pe.defaultProps),{as:ve.Fragment});var Ct=fe({name:"TooltipGroup",defaultProps:ye,setup(c){return it(c.inProps)},render(c){let{props:u,ptmi:l}=c,b=ct(l("root"));return B.createElement(me,{value:c},B.createElement(st,{instance:c,attrs:b,children:u.children}))}});import*as a from"react";var Le={showDelayDuration:700,hideDelayDuration:0,autoZIndex:!0,baseZIndex:0,containerRef:void 0,triggerRef:void 0,open:!1,onOpenChange:void 0,defaultOpen:!1,closeOnEscape:!0,side:"top",sideOffset:0,align:"center",alignOffset:0,autoHide:!1,disabled:!1};var Ft=ut({name:"useTooltip",defaultProps:Le,setup:({props:c,$primereact:u})=>{var ie;let{showDelayDuration:l,hideDelayDuration:b,autoHide:v,autoZIndex:C,baseZIndex:M,disabled:w,defaultOpen:j,open:F,onOpenChange:m,closeOnEscape:Z,side:Re,align:xe,sideOffset:ge,alignOffset:be}=c,r=at({side:Re,align:xe,sideOffset:ge,alignOffset:be}),f=de(),[S,D]=a.useState(!1),[we,I]=a.useState(!1),[he,U]=a.useState(!1),[Pe,N]=a.useState(!1),k=a.useRef(null),G=a.useRef(null),y=a.useRef(null),V=a.useRef(!1),L=a.useRef(null),E=a.useRef(null),R=a.useRef(null),h=a.useRef(null),x=a.useRef(null),Te={visible:S,life:we,shouldAnimateOnEnter:he,shouldAnimateOnLeave:Pe},P=()=>{var e,o,t,n,s,i;return(e=r==null?void 0:r.anchorRef)!=null&&e.current&&((o=r==null?void 0:r.anchorRef)==null?void 0:o.current)instanceof HTMLElement?(t=r==null?void 0:r.anchorRef)==null?void 0:t.current:(i=(s=(n=r==null?void 0:r.anchorRef)==null?void 0:n.current)==null?void 0:s.elementRef)==null?void 0:i.current},p=()=>{var e,o,t,n,s,i;return(e=r==null?void 0:r.containerRef)!=null&&e.current&&((o=r==null?void 0:r.containerRef)==null?void 0:o.current)instanceof HTMLElement?(t=r==null?void 0:r.containerRef)==null?void 0:t.current:(i=(s=(n=r==null?void 0:r.containerRef)==null?void 0:n.current)==null?void 0:s.elementRef)==null?void 0:i.current},Ce=()=>{var e,o,t,n,s,i;return(e=r==null?void 0:r.arrowRef)!=null&&e.current&&((o=r==null?void 0:r.arrowRef)==null?void 0:o.current)instanceof HTMLElement?(t=r==null?void 0:r.arrowRef)==null?void 0:t.current:(i=(s=(n=r==null?void 0:r.arrowRef)==null?void 0:n.current)==null?void 0:s.elementRef)==null?void 0:i.current},X=()=>{var e,o;return h.current&&h.current instanceof HTMLElement?h.current:(o=(e=h.current)==null?void 0:e.elementRef)==null?void 0:o.current},A=()=>{k.current&&(clearTimeout(k.current),k.current=null),G.current&&(clearTimeout(G.current),G.current=null)},g=(e=!1)=>{var n,s;if(w)return;A(),(n=f==null?void 0:f.clearTimers)==null||n.call(f);let o=(s=f==null?void 0:f.state)==null?void 0:s.timeoutState;N(!1),U(!e&&o!=="instant");let t=o==="instant"||o==="normal"?0:l||400;e||t===0?(D(!0),I(!0),m==null||m({value:!0})):k.current=window.setTimeout(()=>{D(!0),I(!0),m==null||m({value:!0})},t)},d=(e=!1)=>{var n;A();let o=(n=f==null?void 0:f.state)==null?void 0:n.timeoutState;U(!1),N(!e&&o!=="instant"),f==null||f.scheduleTimeout(()=>{},P()||void 0);let t=o==="instant"||o==="normal"?0:b||0;e||t===0?(D(!1),m==null||m({value:!1})):G.current=window.setTimeout(()=>{D(!1),m==null||m({value:!1})},t)},Y=()=>d(!0),q=()=>d(!0),J=()=>{g(),x.current=null},Q=()=>g(!0),W=()=>d(),_=()=>{v?d():oe()},Se=()=>{let e=P();!e||!T()||(e.addEventListener("click",Y),e.addEventListener("pointerdown",q),e.addEventListener("pointerenter",J),e.addEventListener("focus",Q),e.addEventListener("blur",W),e.addEventListener("pointerleave",_))},De=()=>{let e=P();!e||!T()||(e.removeEventListener("click",Y),e.removeEventListener("pointerdown",q),e.removeEventListener("pointerenter",J),e.removeEventListener("focus",Q),e.removeEventListener("blur",W),e.removeEventListener("pointerleave",_))},$=()=>{v||(g(!0),x.current=null)},ee=()=>g(!0),te=()=>d(),ne=()=>{v||oe()},ke=()=>{let e=p();!e||!T()||(e.addEventListener("pointerenter",$),e.addEventListener("focus",ee),e.addEventListener("blur",te),e.addEventListener("pointerleave",ne))},re=()=>{let e=p();!e||!T()||(e.removeEventListener("pointerenter",$),e.removeEventListener("focus",ee),e.removeEventListener("blur",te),e.removeEventListener("pointerleave",ne))},Ge=e=>{let o={x:e.reduce((t,n)=>t+n.x,0)/e.length,y:e.reduce((t,n)=>t+n.y,0)/e.length};return[...e].sort((t,n)=>{let s=Math.atan2(t.y-o.y,t.x-o.x),i=Math.atan2(n.y-o.y,n.x-o.x);return s-i})},Oe=()=>{var i;let e=P(),o=p();if(!e||!o)return;let t=e.getBoundingClientRect(),n=o.getBoundingClientRect(),s=[];switch((i=r==null?void 0:r.state)==null?void 0:i.effectiveSide){case"top":s.push({x:t.left,y:t.top},{x:t.right,y:t.top},{x:n.left,y:n.bottom},{x:n.right,y:n.bottom});break;case"bottom":s.push({x:t.left,y:t.bottom},{x:t.right,y:t.bottom},{x:n.left,y:n.top},{x:n.right,y:n.top});break;case"left":s.push({x:t.left,y:t.top},{x:t.left,y:t.bottom},{x:n.right,y:n.top},{x:n.right,y:n.bottom});break;case"right":s.push({x:t.right,y:t.top},{x:t.right,y:t.bottom},{x:n.left,y:n.top},{x:n.left,y:n.bottom});break}return Ge(s)},He=(e,o)=>{if(!o)return!1;let{x:t,y:n}=e,s=!1;for(let i=0,K=o.length-1;i<o.length;K=i++){let ce=o[i].x,z=o[i].y,Qe=o[K].x,ue=o[K].y;z>n!=ue>n&&t<(Qe-ce)*(n-z)/(ue-z+1e-7)+ce&&(s=!s)}return s},oe=()=>{p()?x.current=Oe()||null:(x.current=null,d(!0))},se=e=>{if(v)return;let o={x:e.clientX,y:e.clientY},t=e.target,n=P(),s=p(),i=Ce();!n||!s||He(o,x.current)||n.contains(t)||s.contains(t)||i&&i.contains(t)||(d(),x.current=null)},Me=()=>{document.addEventListener("pointermove",se)},Ie=()=>{document.removeEventListener("pointermove",se)},Ae=()=>{p()},Ke=()=>{var o,t,n;let e=p();e&&(r==null||r.applyPlacement(),ke(),Ze(),Xe(),qe(),Me(),C&&Ee.set("tooltip",e,(M!=null?M:0)+((n=(t=(o=u.config)==null?void 0:o.zIndex)==null?void 0:t.tooltip)!=null?n:1100)),Z&&Ne())},ze=()=>{re(),Ue(),Ye(),Je(),Ve(),Ie()},Be=()=>{I(!1)},je=()=>{X()},Fe=()=>{X()},Ze=()=>{!y.current&&T()&&(y.current=e=>{let o=e,t=p();S&&!(o.target===t||t!=null&&t.contains(o.target))&&d(!0),V.current=!1},document.addEventListener("click",y.current))},Ue=()=>{y.current&&(document.removeEventListener("click",y.current),y.current=null,V.current=!1)},Ne=()=>{L.current||(L.current=e=>{e.code==="Escape"&&Z&&d(!0)},window.document.addEventListener("keydown",L.current))},Ve=()=>{L.current&&(window.document.removeEventListener("keydown",L.current),L.current=null)},Xe=()=>{E.current||(E.current=()=>{S&&d(!0)},window.document.addEventListener("scroll",E.current))},Ye=()=>{E.current&&(window.document.removeEventListener("scroll",E.current),E.current=null)},qe=()=>{R.current||(R.current=()=>{S&&d(!0)},window.document.addEventListener("resize",R.current))},Je=()=>{R.current&&(window.document.removeEventListener("resize",R.current),R.current=null)};return a.useEffect(()=>{w||(j||F)&&setTimeout(()=>{g()},0)},[j,F,w]),a.useEffect(()=>{w||Se()},[(ie=r==null?void 0:r.anchorRef)==null?void 0:ie.current,w]),lt(()=>{A(),De(),re();let e=p();C&&e&&Ee.clear(e)}),{state:Te,placer:r,show:g,hide:d,onEnter:Ae,onBeforeEnter:Ke,onLeave:ze,onContentAfterLeave:Be,onContentEnter:je,onContentLeave:Fe,contentRef:h}}});export{Le as defaultProps,Ft as useTooltip};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/tooltip/useTooltip.ts","../../../primereact/src/tooltip/group/TooltipGroup.tsx","../../../primereact/src/base/index.ts","../../../primereact/src/tooltip/group/TooltipGroup.context.ts","../../../primereact/src/tooltip/group/TooltipGroup.props.ts","../../src/tooltip/useTooltip.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { usePlacer } from '@primereact/headless/placer';\nimport { useUnmountEffect } from '@primereact/hooks/use-unmount-effect';\nimport { addStyle, isClient } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport { useTooltipGroupContext } from 'primereact/tooltip/group';\nimport * as React from 'react';\nimport { defaultProps } from './useTooltip.props';\n\ntype Point = { x: number; y: number };\n\nexport const useTooltip = withHeadless({\n name: 'useTooltip',\n defaultProps,\n setup: ({ props, $primereact }) => {\n const { showDelayDuration, hideDelayDuration, autoHide, autoZIndex, baseZIndex, disabled, defaultOpen, open, onOpenChange, closeOnEscape, side, align, sideOffset, alignOffset } = props;\n const placer = usePlacer({ side, align, sideOffset, alignOffset });\n const tooltipgroup = useTooltipGroupContext();\n const [visibleState, setVisibleState] = React.useState<boolean>(false);\n const [lifeState, setLifeState] = React.useState<boolean>(false);\n const [shouldAnimateOnEnter, setShouldAnimateOnEnter] = React.useState<boolean>(false);\n const [shouldAnimateOnLeave, setShouldAnimateOnLeave] = React.useState<boolean>(false);\n const showTimeout = React.useRef<number | null>(null);\n const hideTimeout = React.useRef<number | null>(null);\n const outsideClickListener = React.useRef<((event: Event) => void) | null>(null);\n const selfClick = React.useRef<boolean>(false);\n const documentKeydownListener = React.useRef<((event: KeyboardEvent) => void) | null>(null);\n const documentScrollListener = React.useRef<((event: Event) => void) | null>(null);\n const documentResizeListener = React.useRef<((event: Event) => void) | null>(null);\n const contentRef = React.useRef<HTMLDivElement | null>(null);\n const safePolygonRef = React.useRef<Point[] | null>(null);\n\n const state = {\n visible: visibleState,\n life: lifeState,\n shouldAnimateOnEnter,\n shouldAnimateOnLeave\n };\n\n const getTrigger = () => {\n if (placer?.anchorRef?.current && placer?.anchorRef?.current instanceof HTMLElement) {\n return placer?.anchorRef?.current;\n }\n\n // @ts-expect-error - Temporary fix for elementRef property access\n return placer?.anchorRef?.current?.elementRef?.current;\n };\n\n const getContainer = () => {\n if (placer?.containerRef?.current && placer?.containerRef?.current instanceof HTMLElement) {\n return placer?.containerRef?.current;\n }\n\n // @ts-expect-error - Temporary fix for elementRef property access\n return placer?.containerRef?.current?.elementRef?.current;\n };\n\n const getArrow = () => {\n if (placer?.arrowRef?.current && placer?.arrowRef?.current instanceof HTMLElement) {\n return placer?.arrowRef?.current;\n }\n\n // @ts-expect-error - Temporary fix for elementRef property access\n return placer?.arrowRef?.current?.elementRef?.current;\n };\n\n const getContent = () => {\n if (contentRef.current && contentRef.current instanceof HTMLElement) {\n return contentRef.current;\n }\n\n // @ts-expect-error - Temporary fix for elementRef property access\n return contentRef.current?.elementRef?.current;\n };\n\n const clearTimers = () => {\n if (showTimeout.current) {\n clearTimeout(showTimeout.current);\n showTimeout.current = null;\n }\n\n if (hideTimeout.current) {\n clearTimeout(hideTimeout.current);\n hideTimeout.current = null;\n }\n };\n\n const show = (forceInstant = false) => {\n if (disabled) return;\n\n clearTimers();\n\n tooltipgroup?.clearTimers?.();\n const timeoutState = tooltipgroup?.state?.timeoutState;\n\n setShouldAnimateOnLeave(false);\n setShouldAnimateOnEnter(!forceInstant && timeoutState !== 'instant');\n\n const showDelay = timeoutState === 'instant' || timeoutState === 'normal' ? 0 : showDelayDuration || 400;\n\n if (forceInstant || showDelay === 0) {\n setVisibleState(true);\n setLifeState(true);\n onOpenChange?.({ value: true });\n } else {\n showTimeout.current = window.setTimeout(() => {\n setVisibleState(true);\n setLifeState(true);\n onOpenChange?.({ value: true });\n }, showDelay);\n }\n };\n\n const hide = (forceInstant = false) => {\n clearTimers();\n const timeoutState = tooltipgroup?.state?.timeoutState;\n\n setShouldAnimateOnEnter(false);\n setShouldAnimateOnLeave(!forceInstant && timeoutState !== 'instant');\n\n tooltipgroup?.scheduleTimeout(() => {}, getTrigger() || undefined);\n\n const hideDelay = timeoutState === 'instant' || timeoutState === 'normal' ? 0 : hideDelayDuration || 0;\n\n if (forceInstant || hideDelay === 0) {\n setVisibleState(false);\n onOpenChange?.({ value: false });\n } else {\n hideTimeout.current = window.setTimeout(() => {\n setVisibleState(false);\n onOpenChange?.({ value: false });\n }, hideDelay);\n }\n };\n\n const onTriggerClick = () => hide(true);\n const onTriggerPointerDown = () => hide(true);\n\n const onTriggerPointerEnter = () => {\n show();\n safePolygonRef.current = null;\n };\n\n const onTriggerFocus = () => show(true);\n const onTriggerBlur = () => hide();\n\n const onTriggerPointerLeave = () => {\n if (autoHide) {\n hide();\n } else {\n onPointerLeave();\n }\n };\n\n const bindTriggerListeners = () => {\n const trigger = getTrigger();\n\n if (!trigger || !isClient()) return;\n\n trigger.addEventListener('click', onTriggerClick);\n trigger.addEventListener('pointerdown', onTriggerPointerDown);\n trigger.addEventListener('pointerenter', onTriggerPointerEnter);\n trigger.addEventListener('focus', onTriggerFocus);\n trigger.addEventListener('blur', onTriggerBlur);\n trigger.addEventListener('pointerleave', onTriggerPointerLeave);\n };\n\n const unbindTriggerListeners = () => {\n const trigger = getTrigger();\n\n if (!trigger || !isClient()) return;\n\n trigger.removeEventListener('click', onTriggerClick);\n trigger.removeEventListener('pointerdown', onTriggerPointerDown);\n trigger.removeEventListener('pointerenter', onTriggerPointerEnter);\n trigger.removeEventListener('focus', onTriggerFocus);\n trigger.removeEventListener('blur', onTriggerBlur);\n trigger.removeEventListener('pointerleave', onTriggerPointerLeave);\n };\n\n const onContainerPointerEnter = () => {\n if (autoHide) return;\n\n show(true);\n safePolygonRef.current = null;\n };\n\n const onContainerFocus = () => show(true);\n const onContainerBlur = () => hide();\n\n const onContainerPointerLeave = () => {\n if (autoHide) return;\n\n onPointerLeave();\n };\n\n const bindContainerListeners = () => {\n const container = getContainer();\n\n if (!container || !isClient()) return;\n\n container.addEventListener('pointerenter', onContainerPointerEnter);\n container.addEventListener('focus', onContainerFocus);\n container.addEventListener('blur', onContainerBlur);\n container.addEventListener('pointerleave', onContainerPointerLeave);\n };\n\n const unbindContainerListeners = () => {\n const container = getContainer();\n\n if (!container || !isClient()) return;\n\n container.removeEventListener('pointerenter', onContainerPointerEnter);\n container.removeEventListener('focus', onContainerFocus);\n container.removeEventListener('blur', onContainerBlur);\n container.removeEventListener('pointerleave', onContainerPointerLeave);\n };\n\n const sortPointsClockwise = (points: Point[]): Point[] => {\n const center = {\n x: points.reduce((sum, p) => sum + p.x, 0) / points.length,\n y: points.reduce((sum, p) => sum + p.y, 0) / points.length\n };\n\n return [...points].sort((a, b) => {\n const angleA = Math.atan2(a.y - center.y, a.x - center.x);\n const angleB = Math.atan2(b.y - center.y, b.x - center.x);\n\n return angleA - angleB;\n });\n };\n\n const createSafePolygon = (): Point[] | undefined => {\n const trigger = getTrigger();\n const container = getContainer();\n\n if (!trigger || !container) return;\n\n const triggerRect = trigger.getBoundingClientRect();\n const containerRect = container.getBoundingClientRect();\n const points = [];\n\n switch (placer?.state?.effectiveSide) {\n case 'top':\n points.push({ x: triggerRect.left, y: triggerRect.top }, { x: triggerRect.right, y: triggerRect.top }, { x: containerRect.left, y: containerRect.bottom }, { x: containerRect.right, y: containerRect.bottom });\n break;\n case 'bottom':\n points.push({ x: triggerRect.left, y: triggerRect.bottom }, { x: triggerRect.right, y: triggerRect.bottom }, { x: containerRect.left, y: containerRect.top }, { x: containerRect.right, y: containerRect.top });\n break;\n case 'left':\n points.push({ x: triggerRect.left, y: triggerRect.top }, { x: triggerRect.left, y: triggerRect.bottom }, { x: containerRect.right, y: containerRect.top }, { x: containerRect.right, y: containerRect.bottom });\n break;\n case 'right':\n points.push({ x: triggerRect.right, y: triggerRect.top }, { x: triggerRect.right, y: triggerRect.bottom }, { x: containerRect.left, y: containerRect.top }, { x: containerRect.left, y: containerRect.bottom });\n break;\n }\n\n return sortPointsClockwise(points);\n };\n\n const isPointInPolygon = (point: Point, polygon: Point[] | null) => {\n if (!polygon) return false;\n\n const { x, y } = point;\n let inside = false;\n\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n const xi = polygon[i].x,\n yi = polygon[i].y;\n const xj = polygon[j].x,\n yj = polygon[j].y;\n\n const intersect = yi > y !== yj > y && x < ((xj - xi) * (y - yi)) / (yj - yi + 0.0000001) + xi;\n\n if (intersect) inside = !inside;\n }\n\n return inside;\n };\n\n const onPointerLeave = () => {\n const container = getContainer();\n\n if (!container) {\n safePolygonRef.current = null;\n hide(true);\n } else {\n safePolygonRef.current = createSafePolygon() || null;\n }\n };\n\n const onPointerMove = (event: PointerEvent) => {\n if (autoHide) return;\n\n const point = { x: event.clientX, y: event.clientY };\n const currentTarget = event.target as HTMLElement;\n const trigger = getTrigger();\n const container = getContainer();\n const arrow = getArrow();\n\n if (!trigger || !container) return;\n\n if (isPointInPolygon(point, safePolygonRef.current) || trigger.contains(currentTarget) || container.contains(currentTarget) || (arrow && arrow.contains(currentTarget))) return;\n else {\n hide();\n safePolygonRef.current = null;\n }\n };\n\n const bindDocumentListeners = () => {\n document.addEventListener('pointermove', onPointerMove);\n };\n\n const unbindDocumentListeners = () => {\n document.removeEventListener('pointermove', onPointerMove);\n };\n\n const onEnter = () => {\n const container = getContainer();\n\n if (!container) return;\n\n addStyle(container, { opacity: '' });\n };\n\n const onBeforeEnter = () => {\n const container = getContainer();\n\n if (!container) return;\n\n placer?.applyPlacement();\n bindContainerListeners();\n bindOutsideClickListener();\n bindScrollListener();\n bindResizeListener();\n bindDocumentListeners();\n\n if (autoZIndex) {\n ZIndex.set('tooltip', container, (baseZIndex ?? 0) + ($primereact.config?.zIndex?.tooltip ?? 1100));\n }\n\n if (closeOnEscape) {\n bindDocumentKeyDownListener();\n }\n };\n\n const onLeave = () => {\n unbindContainerListeners();\n unbindOutsideClickListener();\n unbindScrollListener();\n unbindResizeListener();\n unbindDocumentKeyDownListener();\n unbindDocumentListeners();\n //hide(true);\n };\n\n const onContentAfterLeave = () => {\n setLifeState(false);\n };\n\n const onContentEnter = () => {\n const content = getContent();\n\n if (!content) return;\n\n addStyle(content, { opacity: '1', transform: 'scale(1)' });\n };\n\n const onContentLeave = () => {\n const content = getContent();\n\n if (!content) return;\n\n addStyle(content, { opacity: '0', transform: 'scale(0.95)' });\n };\n\n const bindOutsideClickListener = () => {\n if (!outsideClickListener.current && isClient()) {\n outsideClickListener.current = (event: Event) => {\n const clickEvent = event as MouseEvent;\n const container = getContainer();\n\n if (visibleState && !(clickEvent.target === container || container?.contains(clickEvent.target as Node))) {\n hide(true);\n }\n\n selfClick.current = false;\n };\n\n document.addEventListener('click', outsideClickListener.current);\n }\n };\n\n const unbindOutsideClickListener = () => {\n if (outsideClickListener.current) {\n document.removeEventListener('click', outsideClickListener.current);\n outsideClickListener.current = null;\n selfClick.current = false;\n }\n };\n\n const bindDocumentKeyDownListener = () => {\n if (!documentKeydownListener.current) {\n documentKeydownListener.current = (event: KeyboardEvent) => {\n if (event.code === 'Escape' && closeOnEscape) {\n hide(true);\n }\n };\n\n window.document.addEventListener('keydown', documentKeydownListener.current);\n }\n };\n\n const unbindDocumentKeyDownListener = () => {\n if (documentKeydownListener.current) {\n window.document.removeEventListener('keydown', documentKeydownListener.current);\n documentKeydownListener.current = null;\n }\n };\n\n const bindScrollListener = () => {\n if (!documentScrollListener.current) {\n documentScrollListener.current = () => {\n if (!visibleState) return;\n\n hide(true);\n };\n\n window.document.addEventListener('scroll', documentScrollListener.current);\n }\n };\n\n const unbindScrollListener = () => {\n if (documentScrollListener.current) {\n window.document.removeEventListener('scroll', documentScrollListener.current);\n documentScrollListener.current = null;\n }\n };\n\n const bindResizeListener = () => {\n if (!documentResizeListener.current) {\n documentResizeListener.current = () => {\n if (!visibleState) return;\n\n hide(true);\n };\n\n window.document.addEventListener('resize', documentResizeListener.current);\n }\n };\n\n const unbindResizeListener = () => {\n if (documentResizeListener.current) {\n window.document.removeEventListener('resize', documentResizeListener.current);\n documentResizeListener.current = null;\n }\n };\n\n // Effects\n React.useEffect(() => {\n if (disabled) return;\n\n if (defaultOpen || open) {\n setTimeout(() => {\n show();\n }, 0);\n }\n }, [defaultOpen, open, disabled]);\n\n React.useEffect(() => {\n if (!disabled) {\n bindTriggerListeners();\n }\n }, [placer?.anchorRef?.current, disabled]);\n\n useUnmountEffect(() => {\n clearTimers();\n unbindTriggerListeners();\n unbindContainerListeners();\n\n const container = getContainer();\n\n if (autoZIndex && container) {\n ZIndex.clear(container);\n }\n });\n\n return {\n state,\n placer,\n show,\n hide,\n onEnter,\n onBeforeEnter,\n onLeave,\n onContentAfterLeave,\n onContentEnter,\n onContentLeave,\n contentRef\n };\n }\n});\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { useTooltipGroup } from '@primereact/headless/tooltip/group';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { TooltipGroupProvider } from './TooltipGroup.context';\nimport { defaultGroupProps } from './TooltipGroup.props';\n\nexport const TooltipGroup = withComponent({\n name: 'TooltipGroup',\n defaultProps: defaultGroupProps,\n setup(instance) {\n const tooltipgroup = useTooltipGroup(instance.inProps);\n\n return tooltipgroup;\n },\n render(instance) {\n const { props, ptmi } = instance;\n\n const rootProps = mergeProps(ptmi('root'));\n\n return (\n <TooltipGroupProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={props.children} />\n </TooltipGroupProvider>\n );\n }\n});\n","import { withComponent as withComponentInCore } from '@primereact/core/component';\nimport { styles as baseStyles } from '@primereact/styles/base';\nimport type { withComponentOptions } from '@primereact/types/core';\nimport type { StylesOptions } from '@primereact/types/styles';\n\nexport const withComponent = <IProps, DProps, Exposes extends Record<PropertyKey, unknown> = Record<PropertyKey, unknown>, Styles = StylesOptions, CData = Record<string, unknown>>({\n name = 'UnknownComponent',\n defaultProps,\n styles = {\n ...baseStyles,\n name: 'global'\n } as Styles,\n components,\n setup,\n render\n}: withComponentOptions<IProps, DProps, Exposes, Styles, CData>) => {\n return withComponentInCore<IProps, DProps, Exposes, Styles, CData>({\n name,\n defaultProps,\n styles,\n components,\n setup,\n render\n });\n};\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { TooltipGroupInstance } from '@primereact/types/shared/tooltip';\n\nexport const [TooltipGroupProvider, useTooltipGroupContext] = createOptionalContext<TooltipGroupInstance>();\n","import * as HeadlessTooltipGroup from '@primereact/headless/tooltip/group';\nimport type { TooltipGroupProps } from '@primereact/types/shared/tooltip';\nimport * as React from 'react';\n\nexport const defaultGroupProps: TooltipGroupProps = {\n ...HeadlessTooltipGroup.defaultProps,\n as: React.Fragment\n};\n","import type { useTooltipProps } from '@primereact/types/shared/tooltip';\n\nexport const defaultProps: useTooltipProps = {\n showDelayDuration: 700,\n hideDelayDuration: 0,\n autoZIndex: true,\n baseZIndex: 0,\n containerRef: undefined,\n triggerRef: undefined,\n open: false,\n onOpenChange: undefined,\n defaultOpen: false,\n closeOnEscape: true,\n side: 'top',\n sideOffset: 0,\n align: 'center',\n alignOffset: 0,\n autoHide: false,\n disabled: false\n};\n"],"mappings":"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","names":["withHeadless","usePlacer","useUnmountEffect","addStyle","isClient","ZIndex","Component","useTooltipGroup","mergeProps","withComponentInCore","baseStyles","withComponent","name","defaultProps","styles","__spreadProps","__spreadValues","baseStyles","components","setup","render","withComponentInCore","React","createOptionalContext","TooltipGroupProvider","useTooltipGroupContext","HeadlessTooltipGroup","React","defaultGroupProps","__spreadProps","__spreadValues","TooltipGroup","withComponent","defaultGroupProps","instance","useTooltipGroup","props","ptmi","rootProps","mergeProps","TooltipGroupProvider","Component","React","defaultProps","useTooltip","withHeadless","defaultProps","props","$primereact","_a","showDelayDuration","hideDelayDuration","autoHide","autoZIndex","baseZIndex","disabled","defaultOpen","open","onOpenChange","closeOnEscape","side","align","sideOffset","alignOffset","placer","usePlacer","tooltipgroup","useTooltipGroupContext","visibleState","setVisibleState","lifeState","setLifeState","shouldAnimateOnEnter","setShouldAnimateOnEnter","shouldAnimateOnLeave","setShouldAnimateOnLeave","showTimeout","hideTimeout","outsideClickListener","selfClick","documentKeydownListener","documentScrollListener","documentResizeListener","contentRef","safePolygonRef","state","getTrigger","_b","_c","_d","_e","_f","getContainer","getArrow","getContent","clearTimers","show","forceInstant","timeoutState","showDelay","hide","hideDelay","onTriggerClick","onTriggerPointerDown","onTriggerPointerEnter","onTriggerFocus","onTriggerBlur","onTriggerPointerLeave","onPointerLeave","bindTriggerListeners","trigger","isClient","unbindTriggerListeners","onContainerPointerEnter","onContainerFocus","onContainerBlur","onContainerPointerLeave","bindContainerListeners","container","unbindContainerListeners","sortPointsClockwise","points","center","sum","p","a","b","angleA","angleB","createSafePolygon","triggerRect","containerRect","isPointInPolygon","point","polygon","x","y","inside","j","xi","yi","xj","yj","onPointerMove","event","currentTarget","arrow","bindDocumentListeners","unbindDocumentListeners","onEnter","addStyle","onBeforeEnter","bindOutsideClickListener","bindScrollListener","bindResizeListener","ZIndex","bindDocumentKeyDownListener","onLeave","unbindOutsideClickListener","unbindScrollListener","unbindResizeListener","unbindDocumentKeyDownListener","onContentAfterLeave","onContentEnter","content","onContentLeave","clickEvent","useUnmountEffect"]}
1
+ {"version":3,"sources":["../../src/tooltip/useTooltip.ts","../../../primereact/src/tooltip/group/TooltipGroup.tsx","../../../primereact/src/base/index.ts","../../../primereact/src/tooltip/group/TooltipGroup.context.ts","../../../primereact/src/tooltip/group/TooltipGroup.props.ts","../../src/tooltip/useTooltip.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { usePlacer } from '@primereact/headless/placer';\nimport { useUnmountEffect } from '@primereact/hooks/use-unmount-effect';\nimport { isClient } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport { useTooltipGroupContext } from 'primereact/tooltip/group';\nimport * as React from 'react';\nimport { defaultProps } from './useTooltip.props';\n\ntype Point = { x: number; y: number };\n\nexport const useTooltip = withHeadless({\n name: 'useTooltip',\n defaultProps,\n setup: ({ props, $primereact }) => {\n const { showDelayDuration, hideDelayDuration, autoHide, autoZIndex, baseZIndex, disabled, defaultOpen, open, onOpenChange, closeOnEscape, side, align, sideOffset, alignOffset } = props;\n const placer = usePlacer({ side, align, sideOffset, alignOffset });\n const tooltipgroup = useTooltipGroupContext();\n const [visibleState, setVisibleState] = React.useState<boolean>(false);\n const [lifeState, setLifeState] = React.useState<boolean>(false);\n const [shouldAnimateOnEnter, setShouldAnimateOnEnter] = React.useState<boolean>(false);\n const [shouldAnimateOnLeave, setShouldAnimateOnLeave] = React.useState<boolean>(false);\n const showTimeout = React.useRef<number | null>(null);\n const hideTimeout = React.useRef<number | null>(null);\n const outsideClickListener = React.useRef<((event: Event) => void) | null>(null);\n const selfClick = React.useRef<boolean>(false);\n const documentKeydownListener = React.useRef<((event: KeyboardEvent) => void) | null>(null);\n const documentScrollListener = React.useRef<((event: Event) => void) | null>(null);\n const documentResizeListener = React.useRef<((event: Event) => void) | null>(null);\n const contentRef = React.useRef<HTMLDivElement | null>(null);\n const safePolygonRef = React.useRef<Point[] | null>(null);\n\n const state = {\n visible: visibleState,\n life: lifeState,\n shouldAnimateOnEnter,\n shouldAnimateOnLeave\n };\n\n const getTrigger = () => {\n if (placer?.anchorRef?.current && placer?.anchorRef?.current instanceof HTMLElement) {\n return placer?.anchorRef?.current;\n }\n\n // @ts-expect-error - Temporary fix for elementRef property access\n return placer?.anchorRef?.current?.elementRef?.current;\n };\n\n const getContainer = () => {\n if (placer?.containerRef?.current && placer?.containerRef?.current instanceof HTMLElement) {\n return placer?.containerRef?.current;\n }\n\n // @ts-expect-error - Temporary fix for elementRef property access\n return placer?.containerRef?.current?.elementRef?.current;\n };\n\n const getArrow = () => {\n if (placer?.arrowRef?.current && placer?.arrowRef?.current instanceof HTMLElement) {\n return placer?.arrowRef?.current;\n }\n\n // @ts-expect-error - Temporary fix for elementRef property access\n return placer?.arrowRef?.current?.elementRef?.current;\n };\n\n const getContent = () => {\n if (contentRef.current && contentRef.current instanceof HTMLElement) {\n return contentRef.current;\n }\n\n // @ts-expect-error - Temporary fix for elementRef property access\n return contentRef.current?.elementRef?.current;\n };\n\n const clearTimers = () => {\n if (showTimeout.current) {\n clearTimeout(showTimeout.current);\n showTimeout.current = null;\n }\n\n if (hideTimeout.current) {\n clearTimeout(hideTimeout.current);\n hideTimeout.current = null;\n }\n };\n\n const show = (forceInstant = false) => {\n if (disabled) return;\n\n clearTimers();\n\n tooltipgroup?.clearTimers?.();\n const timeoutState = tooltipgroup?.state?.timeoutState;\n\n setShouldAnimateOnLeave(false);\n setShouldAnimateOnEnter(!forceInstant && timeoutState !== 'instant');\n\n const showDelay = timeoutState === 'instant' || timeoutState === 'normal' ? 0 : showDelayDuration || 400;\n\n if (forceInstant || showDelay === 0) {\n setVisibleState(true);\n setLifeState(true);\n onOpenChange?.({ value: true });\n } else {\n showTimeout.current = window.setTimeout(() => {\n setVisibleState(true);\n setLifeState(true);\n onOpenChange?.({ value: true });\n }, showDelay);\n }\n };\n\n const hide = (forceInstant = false) => {\n clearTimers();\n const timeoutState = tooltipgroup?.state?.timeoutState;\n\n setShouldAnimateOnEnter(false);\n setShouldAnimateOnLeave(!forceInstant && timeoutState !== 'instant');\n\n tooltipgroup?.scheduleTimeout(() => {}, getTrigger() || undefined);\n\n const hideDelay = timeoutState === 'instant' || timeoutState === 'normal' ? 0 : hideDelayDuration || 0;\n\n if (forceInstant || hideDelay === 0) {\n setVisibleState(false);\n onOpenChange?.({ value: false });\n } else {\n hideTimeout.current = window.setTimeout(() => {\n setVisibleState(false);\n onOpenChange?.({ value: false });\n }, hideDelay);\n }\n };\n\n const onTriggerClick = () => hide(true);\n const onTriggerPointerDown = () => hide(true);\n\n const onTriggerPointerEnter = () => {\n show();\n safePolygonRef.current = null;\n };\n\n const onTriggerFocus = () => show(true);\n const onTriggerBlur = () => hide();\n\n const onTriggerPointerLeave = () => {\n if (autoHide) {\n hide();\n } else {\n onPointerLeave();\n }\n };\n\n const bindTriggerListeners = () => {\n const trigger = getTrigger();\n\n if (!trigger || !isClient()) return;\n\n trigger.addEventListener('click', onTriggerClick);\n trigger.addEventListener('pointerdown', onTriggerPointerDown);\n trigger.addEventListener('pointerenter', onTriggerPointerEnter);\n trigger.addEventListener('focus', onTriggerFocus);\n trigger.addEventListener('blur', onTriggerBlur);\n trigger.addEventListener('pointerleave', onTriggerPointerLeave);\n };\n\n const unbindTriggerListeners = () => {\n const trigger = getTrigger();\n\n if (!trigger || !isClient()) return;\n\n trigger.removeEventListener('click', onTriggerClick);\n trigger.removeEventListener('pointerdown', onTriggerPointerDown);\n trigger.removeEventListener('pointerenter', onTriggerPointerEnter);\n trigger.removeEventListener('focus', onTriggerFocus);\n trigger.removeEventListener('blur', onTriggerBlur);\n trigger.removeEventListener('pointerleave', onTriggerPointerLeave);\n };\n\n const onContainerPointerEnter = () => {\n if (autoHide) return;\n\n show(true);\n safePolygonRef.current = null;\n };\n\n const onContainerFocus = () => show(true);\n const onContainerBlur = () => hide();\n\n const onContainerPointerLeave = () => {\n if (autoHide) return;\n\n onPointerLeave();\n };\n\n const bindContainerListeners = () => {\n const container = getContainer();\n\n if (!container || !isClient()) return;\n\n container.addEventListener('pointerenter', onContainerPointerEnter);\n container.addEventListener('focus', onContainerFocus);\n container.addEventListener('blur', onContainerBlur);\n container.addEventListener('pointerleave', onContainerPointerLeave);\n };\n\n const unbindContainerListeners = () => {\n const container = getContainer();\n\n if (!container || !isClient()) return;\n\n container.removeEventListener('pointerenter', onContainerPointerEnter);\n container.removeEventListener('focus', onContainerFocus);\n container.removeEventListener('blur', onContainerBlur);\n container.removeEventListener('pointerleave', onContainerPointerLeave);\n };\n\n const sortPointsClockwise = (points: Point[]): Point[] => {\n const center = {\n x: points.reduce((sum, p) => sum + p.x, 0) / points.length,\n y: points.reduce((sum, p) => sum + p.y, 0) / points.length\n };\n\n return [...points].sort((a, b) => {\n const angleA = Math.atan2(a.y - center.y, a.x - center.x);\n const angleB = Math.atan2(b.y - center.y, b.x - center.x);\n\n return angleA - angleB;\n });\n };\n\n const createSafePolygon = (): Point[] | undefined => {\n const trigger = getTrigger();\n const container = getContainer();\n\n if (!trigger || !container) return;\n\n const triggerRect = trigger.getBoundingClientRect();\n const containerRect = container.getBoundingClientRect();\n const points = [];\n\n switch (placer?.state?.effectiveSide) {\n case 'top':\n points.push({ x: triggerRect.left, y: triggerRect.top }, { x: triggerRect.right, y: triggerRect.top }, { x: containerRect.left, y: containerRect.bottom }, { x: containerRect.right, y: containerRect.bottom });\n break;\n case 'bottom':\n points.push({ x: triggerRect.left, y: triggerRect.bottom }, { x: triggerRect.right, y: triggerRect.bottom }, { x: containerRect.left, y: containerRect.top }, { x: containerRect.right, y: containerRect.top });\n break;\n case 'left':\n points.push({ x: triggerRect.left, y: triggerRect.top }, { x: triggerRect.left, y: triggerRect.bottom }, { x: containerRect.right, y: containerRect.top }, { x: containerRect.right, y: containerRect.bottom });\n break;\n case 'right':\n points.push({ x: triggerRect.right, y: triggerRect.top }, { x: triggerRect.right, y: triggerRect.bottom }, { x: containerRect.left, y: containerRect.top }, { x: containerRect.left, y: containerRect.bottom });\n break;\n }\n\n return sortPointsClockwise(points);\n };\n\n const isPointInPolygon = (point: Point, polygon: Point[] | null) => {\n if (!polygon) return false;\n\n const { x, y } = point;\n let inside = false;\n\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n const xi = polygon[i].x,\n yi = polygon[i].y;\n const xj = polygon[j].x,\n yj = polygon[j].y;\n\n const intersect = yi > y !== yj > y && x < ((xj - xi) * (y - yi)) / (yj - yi + 0.0000001) + xi;\n\n if (intersect) inside = !inside;\n }\n\n return inside;\n };\n\n const onPointerLeave = () => {\n const container = getContainer();\n\n if (!container) {\n safePolygonRef.current = null;\n hide(true);\n } else {\n safePolygonRef.current = createSafePolygon() || null;\n }\n };\n\n const onPointerMove = (event: PointerEvent) => {\n if (autoHide) return;\n\n const point = { x: event.clientX, y: event.clientY };\n const currentTarget = event.target as HTMLElement;\n const trigger = getTrigger();\n const container = getContainer();\n const arrow = getArrow();\n\n if (!trigger || !container) return;\n\n if (isPointInPolygon(point, safePolygonRef.current) || trigger.contains(currentTarget) || container.contains(currentTarget) || (arrow && arrow.contains(currentTarget))) return;\n else {\n hide();\n safePolygonRef.current = null;\n }\n };\n\n const bindDocumentListeners = () => {\n document.addEventListener('pointermove', onPointerMove);\n };\n\n const unbindDocumentListeners = () => {\n document.removeEventListener('pointermove', onPointerMove);\n };\n\n const onEnter = () => {\n const container = getContainer();\n\n if (!container) return;\n\n //addStyle(container, { opacity: '' });\n };\n\n const onBeforeEnter = () => {\n const container = getContainer();\n\n if (!container) return;\n\n placer?.applyPlacement();\n bindContainerListeners();\n bindOutsideClickListener();\n bindScrollListener();\n bindResizeListener();\n bindDocumentListeners();\n\n if (autoZIndex) {\n ZIndex.set('tooltip', container, (baseZIndex ?? 0) + ($primereact.config?.zIndex?.tooltip ?? 1100));\n }\n\n if (closeOnEscape) {\n bindDocumentKeyDownListener();\n }\n };\n\n const onLeave = () => {\n unbindContainerListeners();\n unbindOutsideClickListener();\n unbindScrollListener();\n unbindResizeListener();\n unbindDocumentKeyDownListener();\n unbindDocumentListeners();\n //hide(true);\n };\n\n const onContentAfterLeave = () => {\n setLifeState(false);\n };\n\n const onContentEnter = () => {\n const content = getContent();\n\n if (!content) return;\n\n //addStyle(content, { opacity: '1', transform: 'scale(1)' });\n };\n\n const onContentLeave = () => {\n const content = getContent();\n\n if (!content) return;\n\n //addStyle(content, { opacity: '0', transform: 'scale(0.95)' });\n };\n\n const bindOutsideClickListener = () => {\n if (!outsideClickListener.current && isClient()) {\n outsideClickListener.current = (event: Event) => {\n const clickEvent = event as MouseEvent;\n const container = getContainer();\n\n if (visibleState && !(clickEvent.target === container || container?.contains(clickEvent.target as Node))) {\n hide(true);\n }\n\n selfClick.current = false;\n };\n\n document.addEventListener('click', outsideClickListener.current);\n }\n };\n\n const unbindOutsideClickListener = () => {\n if (outsideClickListener.current) {\n document.removeEventListener('click', outsideClickListener.current);\n outsideClickListener.current = null;\n selfClick.current = false;\n }\n };\n\n const bindDocumentKeyDownListener = () => {\n if (!documentKeydownListener.current) {\n documentKeydownListener.current = (event: KeyboardEvent) => {\n if (event.code === 'Escape' && closeOnEscape) {\n hide(true);\n }\n };\n\n window.document.addEventListener('keydown', documentKeydownListener.current);\n }\n };\n\n const unbindDocumentKeyDownListener = () => {\n if (documentKeydownListener.current) {\n window.document.removeEventListener('keydown', documentKeydownListener.current);\n documentKeydownListener.current = null;\n }\n };\n\n const bindScrollListener = () => {\n if (!documentScrollListener.current) {\n documentScrollListener.current = () => {\n if (!visibleState) return;\n\n hide(true);\n };\n\n window.document.addEventListener('scroll', documentScrollListener.current);\n }\n };\n\n const unbindScrollListener = () => {\n if (documentScrollListener.current) {\n window.document.removeEventListener('scroll', documentScrollListener.current);\n documentScrollListener.current = null;\n }\n };\n\n const bindResizeListener = () => {\n if (!documentResizeListener.current) {\n documentResizeListener.current = () => {\n if (!visibleState) return;\n\n hide(true);\n };\n\n window.document.addEventListener('resize', documentResizeListener.current);\n }\n };\n\n const unbindResizeListener = () => {\n if (documentResizeListener.current) {\n window.document.removeEventListener('resize', documentResizeListener.current);\n documentResizeListener.current = null;\n }\n };\n\n // Effects\n React.useEffect(() => {\n if (disabled) return;\n\n if (defaultOpen || open) {\n setTimeout(() => {\n show();\n }, 0);\n }\n }, [defaultOpen, open, disabled]);\n\n React.useEffect(() => {\n if (!disabled) {\n bindTriggerListeners();\n }\n }, [placer?.anchorRef?.current, disabled]);\n\n useUnmountEffect(() => {\n clearTimers();\n unbindTriggerListeners();\n unbindContainerListeners();\n\n const container = getContainer();\n\n if (autoZIndex && container) {\n ZIndex.clear(container);\n }\n });\n\n return {\n state,\n placer,\n show,\n hide,\n onEnter,\n onBeforeEnter,\n onLeave,\n onContentAfterLeave,\n onContentEnter,\n onContentLeave,\n contentRef\n };\n }\n});\n","'use client';\nimport { Component } from '@primereact/core/component';\nimport { useTooltipGroup } from '@primereact/headless/tooltip/group';\nimport { mergeProps } from '@primeuix/utils';\nimport { withComponent } from 'primereact/base';\nimport * as React from 'react';\nimport { TooltipGroupProvider } from './TooltipGroup.context';\nimport { defaultGroupProps } from './TooltipGroup.props';\n\nexport const TooltipGroup = withComponent({\n name: 'TooltipGroup',\n defaultProps: defaultGroupProps,\n setup(instance) {\n const tooltipgroup = useTooltipGroup(instance.inProps);\n\n return tooltipgroup;\n },\n render(instance) {\n const { props, ptmi } = instance;\n\n const rootProps = mergeProps(ptmi('root'));\n\n return (\n <TooltipGroupProvider value={instance}>\n <Component instance={instance} attrs={rootProps} children={props.children} />\n </TooltipGroupProvider>\n );\n }\n});\n","import { withComponent as withComponentInCore } from '@primereact/core/component';\nimport { styles as baseStyles } from '@primereact/styles/base';\nimport type { withComponentOptions } from '@primereact/types/core';\nimport type { StylesOptions } from '@primereact/types/styles';\n\nexport const withComponent = <IProps, DProps, Exposes extends Record<PropertyKey, unknown> = Record<PropertyKey, unknown>, Styles = StylesOptions, CData = Record<string, unknown>>({\n name = 'UnknownComponent',\n defaultProps,\n styles = {\n ...baseStyles,\n name: 'global'\n } as Styles,\n components,\n setup,\n render\n}: withComponentOptions<IProps, DProps, Exposes, Styles, CData>) => {\n return withComponentInCore<IProps, DProps, Exposes, Styles, CData>({\n name,\n defaultProps,\n styles,\n components,\n setup,\n render\n });\n};\n","import { createOptionalContext } from '@primereact/core/utils';\nimport type { TooltipGroupInstance } from '@primereact/types/shared/tooltip';\n\nexport const [TooltipGroupProvider, useTooltipGroupContext] = createOptionalContext<TooltipGroupInstance>();\n","import * as HeadlessTooltipGroup from '@primereact/headless/tooltip/group';\nimport type { TooltipGroupProps } from '@primereact/types/shared/tooltip';\nimport * as React from 'react';\n\nexport const defaultGroupProps: TooltipGroupProps = {\n ...HeadlessTooltipGroup.defaultProps,\n as: React.Fragment\n};\n","import type { useTooltipProps } from '@primereact/types/shared/tooltip';\n\nexport const defaultProps: useTooltipProps = {\n showDelayDuration: 700,\n hideDelayDuration: 0,\n autoZIndex: true,\n baseZIndex: 0,\n containerRef: undefined,\n triggerRef: undefined,\n open: false,\n onOpenChange: undefined,\n defaultOpen: false,\n closeOnEscape: true,\n side: 'top',\n sideOffset: 0,\n align: 'center',\n alignOffset: 0,\n autoHide: false,\n disabled: false\n};\n"],"mappings":"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","names":["withHeadless","usePlacer","useUnmountEffect","isClient","ZIndex","Component","useTooltipGroup","mergeProps","withComponentInCore","baseStyles","withComponent","name","defaultProps","styles","__spreadProps","__spreadValues","baseStyles","components","setup","render","withComponentInCore","React","createOptionalContext","TooltipGroupProvider","useTooltipGroupContext","HeadlessTooltipGroup","React","defaultGroupProps","__spreadProps","__spreadValues","TooltipGroup","withComponent","defaultGroupProps","instance","useTooltipGroup","props","ptmi","rootProps","mergeProps","TooltipGroupProvider","Component","React","defaultProps","useTooltip","withHeadless","defaultProps","props","$primereact","_a","showDelayDuration","hideDelayDuration","autoHide","autoZIndex","baseZIndex","disabled","defaultOpen","open","onOpenChange","closeOnEscape","side","align","sideOffset","alignOffset","placer","usePlacer","tooltipgroup","useTooltipGroupContext","visibleState","setVisibleState","lifeState","setLifeState","shouldAnimateOnEnter","setShouldAnimateOnEnter","shouldAnimateOnLeave","setShouldAnimateOnLeave","showTimeout","hideTimeout","outsideClickListener","selfClick","documentKeydownListener","documentScrollListener","documentResizeListener","contentRef","safePolygonRef","state","getTrigger","_b","_c","_d","_e","_f","getContainer","getArrow","getContent","clearTimers","show","forceInstant","timeoutState","showDelay","hide","hideDelay","onTriggerClick","onTriggerPointerDown","onTriggerPointerEnter","onTriggerFocus","onTriggerBlur","onTriggerPointerLeave","onPointerLeave","bindTriggerListeners","trigger","isClient","unbindTriggerListeners","onContainerPointerEnter","onContainerFocus","onContainerBlur","onContainerPointerLeave","bindContainerListeners","container","unbindContainerListeners","sortPointsClockwise","points","center","sum","p","a","b","angleA","angleB","createSafePolygon","triggerRect","containerRect","isPointInPolygon","point","polygon","x","y","inside","j","xi","yi","xj","yj","onPointerMove","event","currentTarget","arrow","bindDocumentListeners","unbindDocumentListeners","onEnter","onBeforeEnter","bindOutsideClickListener","bindScrollListener","bindResizeListener","ZIndex","bindDocumentKeyDownListener","onLeave","unbindOutsideClickListener","unbindScrollListener","unbindResizeListener","unbindDocumentKeyDownListener","onContentAfterLeave","onContentEnter","onContentLeave","clickEvent","useUnmountEffect"]}