@primereact/headless 11.0.0-alpha.1 → 11.0.0-alpha.3

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 (91) hide show
  1. package/animateonscroll/index.d.ts +2 -0
  2. package/animateonscroll/index.mjs +2 -0
  3. package/animateonscroll/index.mjs.map +1 -0
  4. package/animateonscroll/useAnimateOnScroll.d.ts +3 -0
  5. package/animateonscroll/useAnimateOnScroll.props.d.ts +2 -0
  6. package/animateonscroll/useAnimateOnScroll.test.d.ts +0 -0
  7. package/confirmdialog/index.d.ts +2 -0
  8. package/confirmdialog/index.mjs +2 -0
  9. package/confirmdialog/index.mjs.map +1 -0
  10. package/confirmdialog/useConfirmDialog.d.ts +1 -0
  11. package/confirmdialog/useConfirmDialog.props.d.ts +2 -0
  12. package/confirmdialog/useConfirmDialog.test.d.ts +0 -0
  13. package/confirmpopup/index.d.ts +2 -0
  14. package/confirmpopup/index.mjs +2 -0
  15. package/confirmpopup/index.mjs.map +1 -0
  16. package/confirmpopup/useConfirmPopup.d.ts +25 -0
  17. package/confirmpopup/useConfirmPopup.props.d.ts +2 -0
  18. package/confirmpopup/useConfirmPopup.test.d.ts +0 -0
  19. package/dialog/index.d.ts +2 -0
  20. package/dialog/index.mjs +2 -0
  21. package/dialog/index.mjs.map +1 -0
  22. package/dialog/useDialog.d.ts +30 -0
  23. package/dialog/useDialog.props.d.ts +2 -0
  24. package/dialog/useDialog.test.d.ts +0 -0
  25. package/drawer/index.d.ts +2 -0
  26. package/drawer/index.mjs +2 -0
  27. package/drawer/index.mjs.map +1 -0
  28. package/drawer/useDrawer.d.ts +22 -0
  29. package/drawer/useDrawer.props.d.ts +2 -0
  30. package/drawer/useDrawer.test.d.ts +0 -0
  31. package/focustrap/index.d.ts +2 -0
  32. package/focustrap/index.mjs +2 -0
  33. package/focustrap/index.mjs.map +1 -0
  34. package/focustrap/useFocusTrap.d.ts +5 -0
  35. package/focustrap/useFocusTrap.props.d.ts +2 -0
  36. package/focustrap/useFocusTrap.test.d.ts +0 -0
  37. package/imagecompare/index.d.ts +2 -0
  38. package/imagecompare/index.mjs +2 -0
  39. package/imagecompare/index.mjs.map +1 -0
  40. package/imagecompare/useImageCompare.d.ts +8 -0
  41. package/imagecompare/useImageCompare.props.d.ts +2 -0
  42. package/imagecompare/useImageCompare.test.d.ts +0 -0
  43. package/message/index.d.ts +2 -0
  44. package/message/index.mjs +2 -0
  45. package/message/index.mjs.map +1 -0
  46. package/message/useMessage.d.ts +6 -0
  47. package/message/useMessage.props.d.ts +2 -0
  48. package/message/useMessage.test.d.ts +0 -0
  49. package/package.json +5 -5
  50. package/placer/index.d.ts +2 -0
  51. package/placer/index.mjs +2 -0
  52. package/placer/index.mjs.map +1 -0
  53. package/placer/usePlacer.d.ts +12 -0
  54. package/placer/usePlacer.props.d.ts +2 -0
  55. package/placer/usePlacer.test.d.ts +0 -0
  56. package/popover/index.d.ts +2 -0
  57. package/popover/index.mjs +8 -0
  58. package/popover/index.mjs.map +1 -0
  59. package/popover/usePopover.d.ts +15 -0
  60. package/popover/usePopover.props.d.ts +2 -0
  61. package/popover/usePopover.test.d.ts +0 -0
  62. package/portal/index.d.ts +2 -0
  63. package/portal/index.mjs +2 -0
  64. package/portal/index.mjs.map +1 -0
  65. package/portal/usePortal.d.ts +3 -0
  66. package/portal/usePortal.props.d.ts +2 -0
  67. package/portal/usePortal.test.d.ts +0 -0
  68. package/rating/index.d.ts +2 -0
  69. package/rating/index.mjs +2 -0
  70. package/rating/index.mjs.map +1 -0
  71. package/rating/useRating.d.ts +12 -0
  72. package/rating/useRating.props.d.ts +2 -0
  73. package/rating/useRating.test.d.ts +0 -0
  74. package/slider/index.d.ts +2 -0
  75. package/slider/index.mjs +2 -0
  76. package/slider/index.mjs.map +1 -0
  77. package/slider/useSlider.d.ts +58 -0
  78. package/slider/useSlider.props.d.ts +2 -0
  79. package/slider/useSlider.test.d.ts +0 -0
  80. package/tooltip/group/index.d.ts +2 -0
  81. package/tooltip/group/index.mjs +2 -0
  82. package/tooltip/group/index.mjs.map +1 -0
  83. package/tooltip/group/useTooltipGroup.d.ts +9 -0
  84. package/tooltip/group/useTooltipGroup.props.d.ts +2 -0
  85. package/tooltip/group/useTooltipGroup.test.d.ts +0 -0
  86. package/tooltip/index.d.ts +2 -0
  87. package/tooltip/index.mjs +2 -0
  88. package/tooltip/index.mjs.map +1 -0
  89. package/tooltip/useTooltip.d.ts +28 -0
  90. package/tooltip/useTooltip.props.d.ts +2 -0
  91. package/tooltip/useTooltip.test.d.ts +0 -0
@@ -0,0 +1,12 @@
1
+ import { AlignType, SideType } from '@primereact/types/shared/placer';
2
+ import * as React from 'react';
3
+ export declare const usePlacer: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/placer").usePlacerProps, unknown, {
4
+ state: {
5
+ effectiveSide: SideType | null | undefined;
6
+ effectiveAlign: AlignType | null | undefined;
7
+ };
8
+ containerRef: React.RefObject<unknown>;
9
+ anchorRef: React.RefObject<unknown>;
10
+ arrowRef: React.RefObject<unknown>;
11
+ applyPlacement: () => void;
12
+ }>;
@@ -0,0 +1,2 @@
1
+ import type { usePlacerProps } from '@primereact/types/shared/placer';
2
+ export declare const defaultProps: usePlacerProps;
File without changes
@@ -0,0 +1,2 @@
1
+ export * from './usePopover';
2
+ export * from './usePopover.props';
@@ -0,0 +1,8 @@
1
+ import{withHeadless as _}from"@primereact/core/headless";import{ConnectedOverlayScrollHandler as ee}from"@primereact/core/utils";import{useMountEffect as te}from"@primereact/hooks/use-mount-effect";import{useUnmountEffect as ne}from"@primereact/hooks/use-unmount-effect";import{$dt as re}from"@primeuix/styled";import{absolutePosition as oe,addClass as ce,addStyle as se,focus as ue,getOffset as N,isClient as le,isTouchDevice as ie,setAttribute as ae}from"@primeuix/utils/dom";import{ZIndex as T}from"@primeuix/utils/zindex";import{EventBus as Y}from"@primeuix/utils/eventbus";var v=Y();import*as n from"react";var K={dismissable:!0,appendTo:"body",baseZIndex:0,autoZIndex:!0,breakpoints:{},closeOnEscape:!0,defaultOpen:void 0,open:void 0,onOpenChange:void 0};var Ce=_({name:"usePopover",defaultProps:K,setup:({props:z,$attrSelector:I})=>{let{dismissable:C,baseZIndex:Z=0,autoZIndex:L,closeOnEscape:k,defaultOpen:O,open:S,onOpenChange:a,breakpoints:E}=z,[f,H]=n.useState(!1),w=n.useRef(!1),u=n.useRef(null),l=n.useRef(null),d=n.useRef(null),m=n.useRef(null),s=n.useRef(null),p=n.useRef(null),r=n.useRef(null),o=n.useRef(null),$={visible:f},b=n.useCallback(()=>{var e,t;return r!=null&&r.current&&(r==null?void 0:r.current)instanceof HTMLElement?r==null?void 0:r.current:(t=(e=r==null?void 0:r.current)==null?void 0:e.elementRef.current)!=null?t:null},[r]),y=n.useCallback(()=>{var e,t;return o!=null&&o.current&&(o==null?void 0:o.current)instanceof HTMLElement?o==null?void 0:o.current:(t=(e=o==null?void 0:o.current)==null?void 0:e.elementRef.current)!=null?t:null},[o]),R=()=>{f||(H(!0),a==null||a({value:!0}))},i=()=>{f&&(H(!1),a==null||a({value:!1}),setTimeout(()=>{let e=b();e&&ue(e)},10))},B=()=>{let e=y();e&&(se(e,{position:"absolute",top:"0"}),M(),C&&g(),F(),J(),L&&T.set("overlay",e,Z+10),u.current=t=>{let c=t;e.contains(c.target)&&(w.current=!0)},v.on("overlay-click",u.current),k&&j())},A=()=>{P(),G(),h(),q(),u.current&&(v.off("overlay-click",u.current),u.current=null),i()},U=()=>{let e=y();L&&e&&T.clear(e)},M=()=>{let e=y(),t=b();if(!t||!e)return;oe(e,t,!1);let c=N(e),x=N(t),D=0;Number(c.left)<Number(x.left)&&(D=Number(x.left)-Number(c.left)),e.style.setProperty(re("popover.arrow.left").name,`${D}px`),c.top<x.top&&(ce(e,"p-popover-flipped"),e.setAttribute("data-p-popover-flipped","true"))},V=e=>{e.code==="Escape"&&k&&i()},g=()=>{!m.current&&le()&&(m.current=e=>{let t=e,c=y();f&&!(t.target===c||c!=null&&c.contains(t.target))&&i(),w.current=!1},document.addEventListener("click",m.current))},P=()=>{m.current&&(document.removeEventListener("click",m.current),m.current=null,w.current=!1)},j=()=>{p.current||(p.current=e=>{e.code==="Escape"&&k&&i()},window.document.addEventListener("keydown",p.current))},q=()=>{p.current&&(window.document.removeEventListener("keydown",p.current),p.current=null)},F=()=>{var e;l.current||(l.current=new ee((e=b())!=null?e:null,()=>{f&&i()})),l.current.bindScrollListener()},G=()=>{l.current&&l.current.unbindScrollListener()},J=()=>{d.current||(d.current=()=>{f&&!ie()&&M()},window.addEventListener("resize",d.current))},h=()=>{d.current&&(window.removeEventListener("resize",d.current),d.current=null)},Q=e=>{v.emit("overlay-click",{originalEvent:e,target:b()})},W=()=>{if(!E||!s.current){s.current=document.createElement("style"),s.current.type="text/css",ae(s.current,"nonce","nonce"),document.head.appendChild(s.current);let e="";for(let t in E)e+=`
2
+ @media screen and (max-width: ${t}) {
3
+ .p-popover[${I}] {
4
+ width: ${E[t]} !important;
5
+ }
6
+ }
7
+ `;s.current.innerHTML=e}},X=()=>{s.current&&(document.head.removeChild(s.current),s.current=null)};return n.useEffect(()=>{S?setTimeout(()=>{R()},0):i()},[S]),n.useEffect(()=>{O?setTimeout(()=>{R()},0):i()},[O]),te(()=>{E&&W()}),ne(()=>{C&&P(),l.current&&(l.current.destroy(),l.current=null),X(),h();let e=y();e&&L&&T.clear(e),u.current&&(v.off("overlay-click",u.current),u.current=null)}),{state:$,show:R,hide:i,onBeforeEnter:B,onAfterLeave:U,onOverlayClick:Q,onLeave:A,onContentKeydown:V,triggerRef:r,containerRef:o}}});export{K as defaultProps,Ce as usePopover};
8
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/popover/usePopover.ts","../../../primereact/src/overlayeventbus/OverlayEventBus.ts","../../src/popover/usePopover.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { ConnectedOverlayScrollHandler } from '@primereact/core/utils';\nimport { useMountEffect } from '@primereact/hooks/use-mount-effect';\nimport { useUnmountEffect } from '@primereact/hooks/use-unmount-effect';\nimport { $dt } from '@primeuix/styled';\nimport { absolutePosition, addClass, addStyle, focus, getOffset, isClient, isTouchDevice, setAttribute } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport { OverlayEventBus } from 'primereact/overlayeventbus';\nimport * as React from 'react';\nimport { defaultProps } from './usePopover.props';\n\nexport const usePopover = withHeadless({\n name: 'usePopover',\n defaultProps,\n setup: ({ props, $attrSelector }) => {\n const { dismissable, baseZIndex = 0, autoZIndex, closeOnEscape, defaultOpen, open, onOpenChange, breakpoints } = props;\n const [visibleState, setVisibleState] = React.useState(false);\n const selfClick = React.useRef(false);\n const overlayEventListeners = React.useRef<((e: unknown) => void) | null>(null);\n const scrollHandler = React.useRef<ConnectedOverlayScrollHandler | null>(null);\n const resizeListener = React.useRef<() => void | null>(null);\n const outsideClickListener = React.useRef<((e: unknown) => void) | null>(null);\n const styleElement = React.useRef<HTMLStyleElement | null>(null);\n const documentKeydownListener = React.useRef<((e: unknown) => void) | null>(null);\n const triggerRef = React.useRef<HTMLElement | null>(null);\n const containerRef = React.useRef<HTMLElement | null>(null);\n\n const state = {\n visible: visibleState\n };\n\n const getTrigger = React.useCallback(() => {\n if (triggerRef?.current && triggerRef?.current instanceof HTMLElement) {\n return triggerRef?.current;\n }\n\n // @ts-expect-error - Temporary fix for elementRef property access\n return triggerRef?.current?.elementRef.current ?? null;\n }, [triggerRef]);\n\n const getContainer = React.useCallback(() => {\n if (containerRef?.current && containerRef?.current instanceof HTMLElement) {\n return containerRef?.current;\n }\n\n // @ts-expect-error - Temporary fix for elementRef property access\n return containerRef?.current?.elementRef.current ?? null;\n }, [containerRef]);\n\n const show = () => {\n if (visibleState) return;\n\n setVisibleState(true);\n onOpenChange?.({\n value: true\n });\n };\n\n const hide = () => {\n if (!visibleState) return;\n\n setVisibleState(false);\n onOpenChange?.({\n value: false\n });\n\n setTimeout(() => {\n const trigger = getTrigger();\n\n if (trigger) {\n focus(trigger);\n }\n }, 10);\n };\n\n const onBeforeEnter = () => {\n const container = getContainer();\n\n if (!container) return;\n\n addStyle(container, { position: 'absolute', top: '0' });\n alignOverlay();\n\n if (dismissable) {\n bindOutsideClickListener();\n }\n\n bindScrollListener();\n bindResizeListener();\n\n if (autoZIndex) {\n // Fix\n ZIndex.set('overlay', container, baseZIndex + 10);\n }\n\n overlayEventListeners.current = (e: unknown) => {\n const event = e as Event;\n\n if (container.contains(event.target as Node)) {\n selfClick.current = true;\n }\n };\n\n OverlayEventBus.on('overlay-click', overlayEventListeners.current);\n\n if (closeOnEscape) {\n bindDocumentKeyDownListener();\n }\n };\n\n const onLeave = () => {\n unbindOutsideClickListener();\n unbindScrollListener();\n unbindResizeListener();\n unbindDocumentKeyDownListener();\n\n if (overlayEventListeners.current) {\n OverlayEventBus.off('overlay-click', overlayEventListeners.current);\n overlayEventListeners.current = null;\n }\n\n hide();\n };\n\n const onAfterLeave = () => {\n const container = getContainer();\n\n if (autoZIndex && container) {\n ZIndex.clear(container);\n }\n };\n\n const alignOverlay = () => {\n const container = getContainer();\n\n const trigger = getTrigger();\n\n if (!trigger || !container) return;\n\n absolutePosition(container, trigger, false);\n\n const containerOffset = getOffset(container);\n const targetOffset = getOffset(trigger);\n let arrowLeft = 0;\n\n if (Number(containerOffset.left) < Number(targetOffset.left)) {\n arrowLeft = Number(targetOffset.left) - Number(containerOffset.left);\n }\n\n container.style.setProperty($dt('popover.arrow.left').name, `${arrowLeft}px`);\n\n if (containerOffset.top < targetOffset.top) {\n addClass(container, 'p-popover-flipped');\n container.setAttribute('data-p-popover-flipped', 'true');\n }\n };\n\n const onContentKeydown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.code === 'Escape' && closeOnEscape) {\n hide();\n }\n };\n\n const bindOutsideClickListener = () => {\n if (!outsideClickListener.current && isClient()) {\n outsideClickListener.current = (event: unknown) => {\n const clickEvent = event as MouseEvent;\n\n const container = getContainer();\n\n if (visibleState && !(clickEvent.target === container || container?.contains(clickEvent.target as Node))) {\n hide();\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: unknown) => {\n const keyboardEvent = event as KeyboardEvent;\n\n if (keyboardEvent.code === 'Escape' && closeOnEscape) {\n hide();\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 (!scrollHandler.current) {\n scrollHandler.current = new ConnectedOverlayScrollHandler(getTrigger() ?? null, () => {\n if (visibleState) {\n hide();\n }\n });\n }\n\n scrollHandler.current.bindScrollListener();\n };\n\n const unbindScrollListener = () => {\n if (scrollHandler.current) {\n scrollHandler.current.unbindScrollListener();\n }\n };\n\n const bindResizeListener = () => {\n if (!resizeListener.current) {\n resizeListener.current = () => {\n if (visibleState && !isTouchDevice()) {\n alignOverlay();\n }\n };\n\n window.addEventListener('resize', resizeListener.current);\n }\n };\n\n const unbindResizeListener = () => {\n if (resizeListener.current) {\n window.removeEventListener('resize', resizeListener.current);\n resizeListener.current = null;\n }\n };\n\n const onOverlayClick = (event: Event) => {\n OverlayEventBus.emit('overlay-click', {\n originalEvent: event,\n target: getTrigger()\n });\n };\n\n const createStyle = () => {\n if (!breakpoints || !styleElement.current) {\n styleElement.current = document.createElement('style');\n styleElement.current.type = 'text/css';\n setAttribute(styleElement.current, 'nonce', 'nonce');\n document.head.appendChild(styleElement.current);\n\n let innerHTML = '';\n\n for (const breakpoint in breakpoints) {\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .p-popover[${$attrSelector}] {\n width: ${breakpoints[breakpoint]} !important;\n }\n }\n `;\n }\n\n styleElement.current.innerHTML = innerHTML;\n }\n };\n\n const destroyStyle = () => {\n if (styleElement.current) {\n document.head.removeChild(styleElement.current);\n styleElement.current = null;\n }\n };\n\n React.useEffect(() => {\n if (open) {\n setTimeout(() => {\n show();\n }, 0);\n } else {\n hide();\n }\n }, [open]);\n\n React.useEffect(() => {\n if (defaultOpen) {\n setTimeout(() => {\n show();\n }, 0);\n } else {\n hide();\n }\n }, [defaultOpen]);\n\n useMountEffect(() => {\n if (breakpoints) {\n createStyle();\n }\n });\n\n useUnmountEffect(() => {\n if (dismissable) {\n unbindOutsideClickListener();\n }\n\n if (scrollHandler.current) {\n scrollHandler.current.destroy();\n scrollHandler.current = null;\n }\n\n destroyStyle();\n unbindResizeListener();\n\n const container = getContainer();\n\n if (container && autoZIndex) {\n ZIndex.clear(container);\n }\n\n if (overlayEventListeners.current) {\n OverlayEventBus.off('overlay-click', overlayEventListeners.current);\n overlayEventListeners.current = null;\n }\n });\n\n return {\n state,\n show,\n hide,\n onBeforeEnter,\n onAfterLeave,\n onOverlayClick,\n onLeave,\n onContentKeydown,\n triggerRef,\n containerRef\n };\n }\n});\n","import { EventBus } from '@primeuix/utils/eventbus';\n\nexport default EventBus();\n","import type { usePopoverProps } from '@primereact/types/shared/popover';\n\nexport const defaultProps: usePopoverProps = {\n dismissable: true,\n appendTo: 'body',\n baseZIndex: 0,\n autoZIndex: true,\n breakpoints: {},\n closeOnEscape: true,\n defaultOpen: undefined,\n open: undefined,\n onOpenChange: undefined\n};\n"],"mappings":"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","names":["withHeadless","ConnectedOverlayScrollHandler","useMountEffect","useUnmountEffect","$dt","absolutePosition","addClass","addStyle","focus","getOffset","isClient","isTouchDevice","setAttribute","ZIndex","EventBus","OverlayEventBus_default","React","defaultProps","usePopover","withHeadless","defaultProps","props","$attrSelector","dismissable","baseZIndex","autoZIndex","closeOnEscape","defaultOpen","open","onOpenChange","breakpoints","visibleState","setVisibleState","selfClick","overlayEventListeners","scrollHandler","resizeListener","outsideClickListener","styleElement","documentKeydownListener","triggerRef","containerRef","state","getTrigger","_a","_b","getContainer","show","hide","trigger","focus","onBeforeEnter","container","addStyle","alignOverlay","bindOutsideClickListener","bindScrollListener","bindResizeListener","ZIndex","e","event","OverlayEventBus_default","bindDocumentKeyDownListener","onLeave","unbindOutsideClickListener","unbindScrollListener","unbindResizeListener","unbindDocumentKeyDownListener","onAfterLeave","absolutePosition","containerOffset","getOffset","targetOffset","arrowLeft","$dt","addClass","onContentKeydown","isClient","clickEvent","ConnectedOverlayScrollHandler","isTouchDevice","onOverlayClick","createStyle","setAttribute","innerHTML","breakpoint","destroyStyle","useMountEffect","useUnmountEffect"]}
@@ -0,0 +1,15 @@
1
+ import * as React from 'react';
2
+ export declare const usePopover: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/popover").usePopoverProps, unknown, {
3
+ state: {
4
+ visible: boolean;
5
+ };
6
+ show: () => void;
7
+ hide: () => void;
8
+ onBeforeEnter: () => void;
9
+ onAfterLeave: () => void;
10
+ onOverlayClick: (event: Event) => void;
11
+ onLeave: () => void;
12
+ onContentKeydown: (event: React.KeyboardEvent<HTMLDivElement>) => void;
13
+ triggerRef: React.RefObject<HTMLElement | null>;
14
+ containerRef: React.RefObject<HTMLElement | null>;
15
+ }>;
@@ -0,0 +1,2 @@
1
+ import type { usePopoverProps } from '@primereact/types/shared/popover';
2
+ export declare const defaultProps: usePopoverProps;
File without changes
@@ -0,0 +1,2 @@
1
+ export * from './usePortal';
2
+ export * from './usePortal.props';
@@ -0,0 +1,2 @@
1
+ import{withHeadless as f}from"@primereact/core/headless";import{useMountEffect as d,useUnmountEffect as i,useUpdateEffect as m}from"@primereact/hooks";import{isClient as n}from"@primeuix/utils";import*as u from"react";var o={visible:!1,onMounted:void 0,onUnmounted:void 0};var P=f({name:"usePortal",defaultProps:o,setup({props:e}){let[t,r]=u.useState(e.visible&&n());return d(()=>{n()&&!t&&(r(!0),e.onMounted&&e.onMounted())}),m(()=>{e.onMounted&&e.onMounted()},[t]),i(()=>{e.onUnmounted&&e.onUnmounted()}),{mountedState:t}}});export{o as defaultProps,P as usePortal};
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/portal/usePortal.ts","../../src/portal/usePortal.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { useMountEffect, useUnmountEffect, useUpdateEffect } from '@primereact/hooks';\nimport { isClient } from '@primeuix/utils';\nimport * as React from 'react';\nimport { defaultProps } from './usePortal.props';\n\nexport const usePortal = withHeadless({\n name: 'usePortal',\n defaultProps,\n setup({ props }) {\n const [mountedState, setMountedState] = React.useState<boolean | undefined>(props.visible && isClient());\n\n useMountEffect(() => {\n if (isClient() && !mountedState) {\n setMountedState(true);\n\n if (props.onMounted) {\n props.onMounted();\n }\n }\n });\n\n useUpdateEffect(() => {\n if (props.onMounted) {\n props.onMounted();\n }\n }, [mountedState]);\n\n useUnmountEffect(() => {\n if (props.onUnmounted) {\n props.onUnmounted();\n }\n });\n\n return {\n mountedState\n };\n }\n});\n","import type { usePortalProps } from '@primereact/types/shared/portal';\n\nexport const defaultProps: usePortalProps = {\n visible: false,\n onMounted: undefined,\n onUnmounted: undefined\n};\n"],"mappings":"AAAA,OAAS,gBAAAA,MAAoB,4BAC7B,OAAS,kBAAAC,EAAgB,oBAAAC,EAAkB,mBAAAC,MAAuB,oBAClE,OAAS,YAAAC,MAAgB,kBACzB,UAAYC,MAAW,QCDhB,IAAMC,EAA+B,CACxC,QAAS,GACT,UAAW,OACX,YAAa,MACjB,EDAO,IAAMC,EAAYC,EAAa,CAClC,KAAM,YACN,aAAAC,EACA,MAAM,CAAE,MAAAC,CAAM,EAAG,CACb,GAAM,CAACC,EAAcC,CAAe,EAAU,WAA8BF,EAAM,SAAWG,EAAS,CAAC,EAEvG,OAAAC,EAAe,IAAM,CACbD,EAAS,GAAK,CAACF,IACfC,EAAgB,EAAI,EAEhBF,EAAM,WACNA,EAAM,UAAU,EAG5B,CAAC,EAEDK,EAAgB,IAAM,CACdL,EAAM,WACNA,EAAM,UAAU,CAExB,EAAG,CAACC,CAAY,CAAC,EAEjBK,EAAiB,IAAM,CACfN,EAAM,aACNA,EAAM,YAAY,CAE1B,CAAC,EAEM,CACH,aAAAC,CACJ,CACJ,CACJ,CAAC","names":["withHeadless","useMountEffect","useUnmountEffect","useUpdateEffect","isClient","React","defaultProps","usePortal","withHeadless","defaultProps","props","mountedState","setMountedState","isClient","useMountEffect","useUpdateEffect","useUnmountEffect"]}
@@ -0,0 +1,3 @@
1
+ export declare const usePortal: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/portal").usePortalProps, unknown, {
2
+ mountedState: boolean | undefined;
3
+ }>;
@@ -0,0 +1,2 @@
1
+ import type { usePortalProps } from '@primereact/types/shared/portal';
2
+ export declare const defaultProps: usePortalProps;
File without changes
@@ -0,0 +1,2 @@
1
+ export * from './useRating';
2
+ export * from './useRating.props';
@@ -0,0 +1,2 @@
1
+ import{withHeadless as V}from"@primereact/core/headless";import{focus as x,getFirstFocusableElement as C}from"@primeuix/utils";import*as n from"react";var d={modelValue:void 0,defaultValue:void 0,stars:5,disabled:!1,readOnly:!1,onChange:void 0};var y=V({name:"useRating",defaultProps:d,setup:({props:o,elementRef:R})=>{let{readOnly:u,disabled:c}=o,[i,l]=n.useState(o.modelValue),f=n.useRef(-1),E=n.useRef(!1),[b,g]=n.useState(-1),[F,I]=n.useState(!1),T={value:i,focusedOptionIndex:b,isFocusVisibleItem:F},r=e=>{f.current=e,g(e)},a=e=>{E.current=e,I(e)},v=(e,s)=>{if(!u&&!c){m(s),a(!1);let t=C(e.currentTarget);t&&t instanceof HTMLElement&&x(t)}},m=e=>{u||c||(f.current===e||i===e?(r(-1),a(!1),l(void 0)):(r(e),a(!0),l(e)))},h=(e,s)=>{var t;u||c||(r(s),a(((t=e.nativeEvent.sourceCapabilities)==null?void 0:t.firesTouchEvents)===!1))},p=e=>{var t;if(u||c)return;let s=e.relatedTarget;s&&((t=R.current)!=null&&t.contains(s))||(r(-1),a(!1))},O=(e,s)=>{u||c||(m(s),a(!0))};return n.useEffect(()=>{var e;(e=o==null?void 0:o.onChange)==null||e.call(o,{value:i,originalEvent:null})},[i]),{state:T,onOptionClick:v,onFocus:h,onBlur:p,onChange:O}}});export{d as defaultProps,y as useRating};
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/rating/useRating.ts","../../src/rating/useRating.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { focus, getFirstFocusableElement } from '@primeuix/utils';\nimport * as React from 'react';\nimport { defaultProps } from './useRating.props';\n\nexport const useRating = withHeadless({\n name: 'useRating',\n defaultProps,\n setup: ({ props, elementRef }) => {\n const { readOnly, disabled } = props;\n const [valueState, setValueState] = React.useState(props.modelValue);\n const focusedOptionIndexRef = React.useRef(-1);\n const isFocusVisibleItemRef = React.useRef(false);\n const [focusedOptionIndex, setFocusedOptionIndex] = React.useState(-1);\n const [isFocusVisibleItem, setIsFocusVisibleItem] = React.useState(false);\n\n const state = {\n value: valueState,\n focusedOptionIndex,\n isFocusVisibleItem\n };\n\n // methods\n const setFocusedOption = (val: number) => {\n focusedOptionIndexRef.current = val;\n setFocusedOptionIndex(val);\n };\n\n const setIsFocusVisible = (val: boolean) => {\n isFocusVisibleItemRef.current = val;\n setIsFocusVisibleItem(val);\n };\n\n const onOptionClick = (event: React.MouseEvent<HTMLDivElement>, value: number) => {\n if (!readOnly && !disabled) {\n onOptionSelect(value);\n setIsFocusVisible(false);\n\n const firstFocusableEl = getFirstFocusableElement(event.currentTarget);\n\n if (firstFocusableEl && firstFocusableEl instanceof HTMLElement) {\n focus(firstFocusableEl);\n }\n }\n };\n\n const onOptionSelect = (value: number) => {\n if (readOnly || disabled) return;\n\n if (focusedOptionIndexRef.current === value || valueState === value) {\n setFocusedOption(-1);\n setIsFocusVisible(false);\n setValueState(undefined);\n } else {\n setFocusedOption(value);\n setIsFocusVisible(true);\n setValueState(value);\n }\n };\n\n const onFocus = (event: React.FocusEvent<HTMLInputElement>, value: number) => {\n if (readOnly || disabled) return;\n\n setFocusedOption(value);\n setIsFocusVisible((event.nativeEvent as FocusEvent & { sourceCapabilities?: { firesTouchEvents: boolean } | null }).sourceCapabilities?.firesTouchEvents === false);\n };\n\n const onBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n if (readOnly || disabled) return;\n\n const relatedTarget = event.relatedTarget as HTMLElement | null;\n\n if (relatedTarget && elementRef.current?.contains(relatedTarget)) {\n return;\n }\n\n setFocusedOption(-1);\n setIsFocusVisible(false);\n // formField.onBlur?.();\n };\n\n const onChange = (event: React.ChangeEvent<HTMLInputElement>, value: number) => {\n if (readOnly || disabled) return;\n\n onOptionSelect(value);\n setIsFocusVisible(true);\n };\n\n // effects\n\n React.useEffect(() => {\n props?.onChange?.({ value: valueState, originalEvent: null });\n }, [valueState]);\n\n return {\n state,\n // methods\n onOptionClick,\n onFocus,\n onBlur,\n onChange\n };\n }\n});\n","import type { useRatingProps } from '@primereact/types/shared/rating';\n\nexport const defaultProps: useRatingProps = {\n modelValue: undefined,\n defaultValue: undefined,\n stars: 5,\n disabled: false,\n readOnly: false,\n onChange: undefined\n};\n"],"mappings":"AAAA,OAAS,gBAAAA,MAAoB,4BAC7B,OAAS,SAAAC,EAAO,4BAAAC,MAAgC,kBAChD,UAAYC,MAAW,QCAhB,IAAMC,EAA+B,CACxC,WAAY,OACZ,aAAc,OACd,MAAO,EACP,SAAU,GACV,SAAU,GACV,SAAU,MACd,EDJO,IAAMC,EAAYC,EAAa,CAClC,KAAM,YACN,aAAAC,EACA,MAAO,CAAC,CAAE,MAAAC,EAAO,WAAAC,CAAW,IAAM,CAC9B,GAAM,CAAE,SAAAC,EAAU,SAAAC,CAAS,EAAIH,EACzB,CAACI,EAAYC,CAAa,EAAU,WAASL,EAAM,UAAU,EAC7DM,EAA8B,SAAO,EAAE,EACvCC,EAA8B,SAAO,EAAK,EAC1C,CAACC,EAAoBC,CAAqB,EAAU,WAAS,EAAE,EAC/D,CAACC,EAAoBC,CAAqB,EAAU,WAAS,EAAK,EAElEC,EAAQ,CACV,MAAOR,EACP,mBAAAI,EACA,mBAAAE,CACJ,EAGMG,EAAoBC,GAAgB,CACtCR,EAAsB,QAAUQ,EAChCL,EAAsBK,CAAG,CAC7B,EAEMC,EAAqBD,GAAiB,CACxCP,EAAsB,QAAUO,EAChCH,EAAsBG,CAAG,CAC7B,EAEME,EAAgB,CAACC,EAAyCC,IAAkB,CAC9E,GAAI,CAAChB,GAAY,CAACC,EAAU,CACxBgB,EAAeD,CAAK,EACpBH,EAAkB,EAAK,EAEvB,IAAMK,EAAmBC,EAAyBJ,EAAM,aAAa,EAEjEG,GAAoBA,aAA4B,aAChDE,EAAMF,CAAgB,CAE9B,CACJ,EAEMD,EAAkBD,GAAkB,CAClChB,GAAYC,IAEZG,EAAsB,UAAYY,GAASd,IAAec,GAC1DL,EAAiB,EAAE,EACnBE,EAAkB,EAAK,EACvBV,EAAc,MAAS,IAEvBQ,EAAiBK,CAAK,EACtBH,EAAkB,EAAI,EACtBV,EAAca,CAAK,GAE3B,EAEMK,EAAU,CAACN,EAA2CC,IAAkB,CA5DtF,IAAAM,EA6DgBtB,GAAYC,IAEhBU,EAAiBK,CAAK,EACtBH,IAAmBS,EAAAP,EAAM,YAA2F,qBAAjG,YAAAO,EAAqH,oBAAqB,EAAK,EACtK,EAEMC,EAAUR,GAA8C,CAnEtE,IAAAO,EAoEY,GAAItB,GAAYC,EAAU,OAE1B,IAAMuB,EAAgBT,EAAM,cAExBS,KAAiBF,EAAAvB,EAAW,UAAX,MAAAuB,EAAoB,SAASE,MAIlDb,EAAiB,EAAE,EACnBE,EAAkB,EAAK,EAE3B,EAEMY,EAAW,CAACV,EAA4CC,IAAkB,CACxEhB,GAAYC,IAEhBgB,EAAeD,CAAK,EACpBH,EAAkB,EAAI,EAC1B,EAIA,OAAM,YAAU,IAAM,CA1F9B,IAAAS,GA2FYA,EAAAxB,GAAA,YAAAA,EAAO,WAAP,MAAAwB,EAAA,KAAAxB,EAAkB,CAAE,MAAOI,EAAY,cAAe,IAAK,EAC/D,EAAG,CAACA,CAAU,CAAC,EAER,CACH,MAAAQ,EAEA,cAAAI,EACA,QAAAO,EACA,OAAAE,EACA,SAAAE,CACJ,CACJ,CACJ,CAAC","names":["withHeadless","focus","getFirstFocusableElement","React","defaultProps","useRating","withHeadless","defaultProps","props","elementRef","readOnly","disabled","valueState","setValueState","focusedOptionIndexRef","isFocusVisibleItemRef","focusedOptionIndex","setFocusedOptionIndex","isFocusVisibleItem","setIsFocusVisibleItem","state","setFocusedOption","val","setIsFocusVisible","onOptionClick","event","value","onOptionSelect","firstFocusableEl","getFirstFocusableElement","focus","onFocus","_a","onBlur","relatedTarget","onChange"]}
@@ -0,0 +1,12 @@
1
+ import * as React from 'react';
2
+ export declare const useRating: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/rating").useRatingProps, unknown, {
3
+ state: {
4
+ value: number | undefined;
5
+ focusedOptionIndex: number;
6
+ isFocusVisibleItem: boolean;
7
+ };
8
+ onOptionClick: (event: React.MouseEvent<HTMLDivElement>, value: number) => void;
9
+ onFocus: (event: React.FocusEvent<HTMLInputElement>, value: number) => void;
10
+ onBlur: (event: React.FocusEvent<HTMLInputElement>) => void;
11
+ onChange: (event: React.ChangeEvent<HTMLInputElement>, value: number) => void;
12
+ }>;
@@ -0,0 +1,2 @@
1
+ import type { useRatingProps } from '@primereact/types/shared/rating';
2
+ export declare const defaultProps: useRatingProps;
File without changes
@@ -0,0 +1,2 @@
1
+ export * from './useSlider';
2
+ export * from './useSlider.props';
@@ -0,0 +1,2 @@
1
+ import{withHeadless as ae}from"@primereact/core/headless";import{useEventListener as S}from"@primereact/hooks";import{focus as ue,getAttribute as re,getWindowScrollLeft as le,getWindowScrollTop as se,isRTL as ie}from"@primeuix/utils";import*as s from"react";var X={value:void 0,defaultValue:void 0,orientation:"horizontal",min:0,max:100,step:void 0,onValueChange:void 0};var be=ae({name:"useSlider",defaultProps:X,setup({props:t,elementRef:f}){var W,U;let[Y,L]=s.useState((U=(W=t.value)!=null?W:t.defaultValue)!=null?U:void 0),g=s.useRef(0),E=s.useRef(!1),M=s.useRef(0),w=s.useRef(0),k=s.useRef(0),A=s.useRef(null),D=s.useRef(null);s.useEffect(()=>{t.value!==void 0&&L(t.value)},[t.value]);let r={value:Y},z=s.useCallback(()=>{let e=M.current;return M.current+=1,e},[]),d=s.useCallback(()=>Array.isArray(r.value)||M.current>1,[r.value]),C=()=>{var n,a,u,l,c,i,o;let e=(n=f.current)==null?void 0:n.getBoundingClientRect();w.current=((a=e==null?void 0:e.left)!=null?a:0)+le(),k.current=((u=e==null?void 0:e.top)!=null?u:0)+se(),A.current=(c=(l=f.current)==null?void 0:l.offsetWidth)!=null?c:null,D.current=(o=(i=f.current)==null?void 0:i.offsetHeight)!=null?o:null},P=e=>{var o;let n,a=e,u=e,l=a.touches?a.touches[0].pageX:u.pageX,c=a.touches?a.touches[0].pageY:u.pageY;if(h()){if(!f.current)return;ie(f.current)?n=(w.current+A.current-l)*100/A.current:n=(l-w.current)*100/A.current}else n=(k.current+D.current-c)*100/D.current;let i=(t.max-t.min)*(n/100)+t.min;if(t.step){let m=d()?Array.isArray(r.value)&&(o=r.value[g.current])!=null?o:0:typeof r.value=="number"?r.value:0,y=i-m;y<0?i=m+Math.ceil(i/t.step-m/t.step)*t.step:y>0&&(i=m+Math.floor(i/t.step-m/t.step)*t.step)}else i=Math.floor(i);R(e,i)},R=(e,n)=>{var l,c,i,o,m,y;let a=Math.round(n*100)/100,u;d()?(u=Array.isArray(r.value)?[...r.value]:[0,0],g.current==0?(a<((l=t.min)!=null?l:0)?a=t.min:a>=((c=t.max)!=null?c:100)&&(a=t.max),u[0]=a):(a>((i=t.max)!=null?i:100)?a=t.max:a<=((o=t.min)!=null?o:0)&&(a=t.min),u[1]=a)):(a<((m=t.min)!=null?m:0)?a=t.min:a>((y=t.max)!=null?y:100)&&(a=t.max),u=a),L(u),t.onValueChange&&t.onValueChange({originalEvent:e,value:u})},H=(e,n=0)=>{var a;t.disabled||((a=f.current)==null||a.setAttribute("data-p-sliding","true"),E.current=!0,C(),d()&&Array.isArray(r.value)&&r.value[0]===t.max?g.current=0:g.current=n,ue(e.currentTarget))},x=e=>{E.current&&P(e)},V=()=>{var e;E.current&&(E.current=!1,(e=f.current)==null||e.removeAttribute("data-p-sliding"),J(),O(),Z(),$())},B=(e,n)=>{Q(),_(),H(e,n)},j=(e,n)=>{G(),N(),H(e,n)},q=(e,n)=>{var a,u;switch(g.current=n,e.code){case"ArrowDown":case"ArrowLeft":I(e,n),e.preventDefault();break;case"ArrowUp":case"ArrowRight":K(e,n),e.preventDefault();break;case"PageDown":I(e,n,!0),e.preventDefault();break;case"PageUp":K(e,n,!0),e.preventDefault();break;case"Home":R(e,(a=t.min)!=null?a:0),e.preventDefault();break;case"End":R(e,(u=t.max)!=null?u:100),e.preventDefault();break;default:break}},F=e=>{t.disabled||re(e.target,"data-pc-name")!=="sliderthumb"&&(C(),P(e))},[G,J]=S({type:"mousemove",listener:e=>x(e)}),[N,O]=S({type:"mouseup",listener:()=>V()}),[Q,Z]=S({type:"touchmove",listener:e=>x(e)}),[_,$]=S({type:"touchend",listener:()=>V()}),I=(e,n,a=!1)=>{var l,c;let u;d()?Array.isArray(r.value)?t.step?u=((l=r.value[n])!=null?l:0)-t.step:u=((c=r.value[n])!=null?c:0)-1:u=0:typeof r.value=="number"?t.step?u=r.value-t.step:!t.step&&a?u=r.value-10:u=r.value-1:u=0,R(e,u),e.preventDefault()},K=(e,n,a=!1)=>{var l,c;let u;d()?Array.isArray(r.value)?t.step?u=((l=r.value[n])!=null?l:0)+t.step:u=((c=r.value[n])!=null?c:0)+1:u=0:t.step?u=(typeof r.value=="number"?r.value:0)+t.step:!t.step&&a?u=(typeof r.value=="number"?r.value:0)+10:u=(typeof r.value=="number"?r.value:0)+1,R(e,u),e.preventDefault()},T=s.useCallback(()=>{var u,l;let e=r.value,n=(u=t.min)!=null?u:0,a=(l=t.max)!=null?l:100;return e===void 0||Array.isArray(e)||e<n?0:e>a?100:(e-n)*100/(a-n)},[r.value,t.min,t.max]),b=s.useCallback(()=>{var u,l;let e=r.value,n=(u=t.min)!=null?u:0,a=(l=t.max)!=null?l:100;return Array.isArray(e)&&e[0]!==void 0?e[0]<n?0:(e[0]-n)*100/(a-n):0},[r.value,t.min,t.max]),v=s.useCallback(()=>{var u,l;let e=r.value,n=(u=t.min)!=null?u:0,a=(l=t.max)!=null?l:100;return Array.isArray(e)&&e.length===2&&e[1]!==void 0?e[1]>a?100:(e[1]-n)*100/(a-n):100},[r.value,t.min,t.max]),p=()=>{if(d()){let e=v()>b()?v()-b():b()-v(),n=v()>b()?b():v();return h()?{insetInlineStart:n+"%",width:e+"%"}:{bottom:n+"%",height:e+"%"}}else return h()?{width:T()+"%"}:{height:T()+"%"}},ee=()=>h()?{insetInlineStart:T()+"%"}:{bottom:T()+"%"},te=()=>h()?{insetInlineStart:b()+"%"}:{bottom:b()+"%"},ne=()=>h()?{insetInlineStart:v()+"%"}:{bottom:v()+"%"},h=s.useCallback(()=>t.orientation==="horizontal",[]);return{state:r,registerThumb:z,thumbCounter:M,range:d,onTouchStart:B,onDrag:x,onDragEnd:V,onMouseDown:j,onKeyDown:q,onBarClick:F,rangeStyle:p,handleThumbStyle:ee,rangeStartHandleStyle:te,rangeEndHandleStyle:ne}}});export{X as defaultProps,be as useSlider};
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/slider/useSlider.ts","../../src/slider/useSlider.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { useEventListener } from '@primereact/hooks';\nimport { useSliderProps } from '@primereact/types/shared/slider';\nimport { focus, getAttribute, getWindowScrollLeft, getWindowScrollTop, isRTL } from '@primeuix/utils';\nimport * as React from 'react';\nimport { defaultProps } from './useSlider.props';\n\nexport const useSlider = withHeadless({\n name: 'useSlider',\n defaultProps,\n setup({ props, elementRef }) {\n const [activeValue, setActiveValue] = React.useState<useSliderProps['value']>(props.value ?? props.defaultValue ?? undefined);\n const handleIndex = React.useRef(0);\n const dragging = React.useRef(false);\n const thumbCounter = React.useRef(0);\n const initX = React.useRef(0);\n const initY = React.useRef(0);\n const barWidth = React.useRef<number | null>(null);\n const barHeight = React.useRef<number | null>(null);\n\n React.useEffect(() => {\n if (props.value !== undefined) {\n setActiveValue(props.value);\n }\n }, [props.value]);\n\n const state = {\n value: activeValue\n };\n\n const registerThumb = React.useCallback(() => {\n const index = thumbCounter.current;\n\n thumbCounter.current += 1;\n\n return index;\n }, []);\n\n const range = React.useCallback(() => {\n return Array.isArray(state.value) || thumbCounter.current > 1;\n }, [state.value]);\n\n const updateDomData = () => {\n const rect = elementRef.current?.getBoundingClientRect();\n\n initX.current = (rect?.left ?? 0) + getWindowScrollLeft();\n initY.current = (rect?.top ?? 0) + getWindowScrollTop();\n barWidth.current = elementRef.current?.offsetWidth ?? null;\n barHeight.current = elementRef.current?.offsetHeight ?? null;\n };\n\n const handleValue = (event: React.MouseEvent | React.TouchEvent) => {\n let rawValue;\n const touchEvent = event as React.TouchEvent;\n const mouseEvent = event as React.MouseEvent;\n const pageX = touchEvent.touches ? touchEvent.touches[0].pageX : mouseEvent.pageX;\n const pageY = touchEvent.touches ? touchEvent.touches[0].pageY : mouseEvent.pageY;\n\n if (horizontal()) {\n if (!elementRef.current) return;\n\n if (isRTL(elementRef.current)) {\n rawValue = ((initX.current + (barWidth.current as number) - pageX) * 100) / (barWidth.current as number);\n } else {\n rawValue = ((pageX - initX.current) * 100) / (barWidth.current as number);\n }\n } else {\n rawValue = ((initY.current + (barHeight.current as number) - pageY) * 100) / (barHeight.current as number);\n }\n\n let newValue = ((props.max as number) - (props.min as number)) * (rawValue / 100) + (props.min as number);\n\n if (props.step) {\n const oldValue: number = range() ? (Array.isArray(state.value) ? (state.value[handleIndex.current] ?? 0) : 0) : typeof state.value === 'number' ? state.value : 0;\n const diff = newValue - oldValue;\n\n if (diff < 0) newValue = oldValue + Math.ceil(newValue / props.step - oldValue / props.step) * props.step;\n else if (diff > 0) newValue = oldValue + Math.floor(newValue / props.step - oldValue / props.step) * props.step;\n } else {\n newValue = Math.floor(newValue);\n }\n\n updateValue(event, newValue);\n };\n\n const updateValue = (event: React.MouseEvent | React.TouchEvent | React.KeyboardEvent, value: number) => {\n let newValue = Math.round(value * 100) / 100;\n let updatedValue;\n\n if (range()) {\n updatedValue = Array.isArray(state.value) ? [...state.value] : [0, 0];\n\n if (handleIndex.current == 0) {\n if (newValue < (props.min ?? 0)) {\n newValue = props.min as number;\n } else if (newValue >= (props.max ?? 100)) {\n newValue = props.max as number;\n }\n\n updatedValue[0] = newValue;\n } else {\n if (newValue > (props.max ?? 100)) {\n newValue = props.max as number;\n } else if (newValue <= (props.min ?? 0)) {\n newValue = props.min as number;\n }\n\n updatedValue[1] = newValue;\n }\n } else {\n if (newValue < (props.min ?? 0)) {\n newValue = props.min as number;\n } else if (newValue > (props.max ?? 100)) {\n newValue = props.max as number;\n }\n\n updatedValue = newValue;\n }\n\n setActiveValue(updatedValue);\n\n if (props.onValueChange) {\n props.onValueChange({\n originalEvent: event,\n value: updatedValue\n });\n }\n };\n\n const onDragStart = (event: React.MouseEvent<HTMLElement> | React.TouchEvent<HTMLElement>, index: number = 0) => {\n if (props.disabled) {\n return;\n }\n\n elementRef.current?.setAttribute('data-p-sliding', 'true');\n dragging.current = true;\n updateDomData();\n\n if (range() && Array.isArray(state.value) && state.value[0] === props.max) {\n handleIndex.current = 0;\n } else {\n handleIndex.current = index;\n }\n\n focus(event.currentTarget as HTMLElement);\n };\n\n const onDrag = (event: React.MouseEvent | React.TouchEvent) => {\n if (dragging.current) {\n handleValue(event);\n }\n };\n\n const onDragEnd = () => {\n if (dragging.current) {\n dragging.current = false;\n elementRef.current?.removeAttribute('data-p-sliding');\n\n unbindThumbMouseMoveListener();\n unbindThumbMouseUpListener();\n unbindDocumentTouchMoveListener();\n unbindDocumentTouchEndListener();\n }\n };\n\n const onTouchStart = (event: React.TouchEvent<HTMLElement>, index: number) => {\n bindDocumentTouchMoveListener();\n bindDocumentTouchEndListener();\n onDragStart(event, index);\n };\n\n const onMouseDown = (event: React.MouseEvent<HTMLElement>, index: number) => {\n bindThumbMouseMoveListener();\n bindThumbMouseUpListener();\n onDragStart(event, index);\n };\n\n const onKeyDown = (event: React.KeyboardEvent, index: number) => {\n handleIndex.current = index;\n\n switch (event.code) {\n case 'ArrowDown':\n case 'ArrowLeft':\n decrementValue(event, index);\n event.preventDefault();\n break;\n\n case 'ArrowUp':\n case 'ArrowRight':\n incrementValue(event, index);\n event.preventDefault();\n break;\n\n case 'PageDown':\n decrementValue(event, index, true);\n event.preventDefault();\n break;\n\n case 'PageUp':\n incrementValue(event, index, true);\n event.preventDefault();\n break;\n\n case 'Home':\n updateValue(event, props.min ?? 0);\n event.preventDefault();\n break;\n\n case 'End':\n updateValue(event, props.max ?? 100);\n event.preventDefault();\n break;\n\n default:\n break;\n }\n };\n\n const onBarClick = (event: React.MouseEvent) => {\n if (props.disabled) {\n return;\n }\n\n if (getAttribute(event.target as Element, 'data-pc-name') !== 'sliderthumb') {\n updateDomData();\n handleValue(event);\n }\n };\n\n const [bindThumbMouseMoveListener, unbindThumbMouseMoveListener] = useEventListener({\n type: 'mousemove',\n listener: (event: Event) => onDrag(event as unknown as React.MouseEvent)\n });\n\n const [bindThumbMouseUpListener, unbindThumbMouseUpListener] = useEventListener({\n type: 'mouseup',\n listener: () => onDragEnd()\n });\n\n const [bindDocumentTouchMoveListener, unbindDocumentTouchMoveListener] = useEventListener({\n type: 'touchmove',\n listener: (event: Event) => onDrag(event as unknown as React.MouseEvent)\n });\n\n const [bindDocumentTouchEndListener, unbindDocumentTouchEndListener] = useEventListener({\n type: 'touchend',\n listener: () => onDragEnd()\n });\n\n const decrementValue = (event: React.KeyboardEvent, index: number, pageKey = false) => {\n let newValue;\n\n if (range()) {\n if (Array.isArray(state.value)) {\n if (props.step) newValue = (state.value[index] ?? 0) - props.step;\n else newValue = (state.value[index] ?? 0) - 1;\n } else {\n newValue = 0;\n }\n } else {\n if (typeof state.value === 'number') {\n if (props.step) newValue = state.value - props.step;\n else if (!props.step && pageKey) newValue = state.value - 10;\n else newValue = state.value - 1;\n } else {\n newValue = 0;\n }\n }\n\n updateValue(event, newValue);\n event.preventDefault();\n };\n\n const incrementValue = (event: React.KeyboardEvent, index: number, pageKey = false) => {\n let newValue;\n\n if (range()) {\n if (Array.isArray(state.value)) {\n if (props.step) newValue = (state.value[index] ?? 0) + props.step;\n else newValue = (state.value[index] ?? 0) + 1;\n } else {\n newValue = 0;\n }\n } else {\n if (props.step) newValue = (typeof state.value === 'number' ? state.value : 0) + props.step;\n else if (!props.step && pageKey) newValue = (typeof state.value === 'number' ? state.value : 0) + 10;\n else newValue = (typeof state.value === 'number' ? state.value : 0) + 1;\n }\n\n updateValue(event, newValue);\n event.preventDefault();\n };\n\n const handlePosition = React.useCallback(() => {\n const value = state.value;\n const min = props.min ?? 0;\n const max = props.max ?? 100;\n\n if (value === undefined || Array.isArray(value)) return 0;\n\n if (value < min) return 0;\n else if (value > max) return 100;\n else return ((value - min) * 100) / (max - min);\n }, [state.value, props.min, props.max]);\n\n const rangeStartPosition = React.useCallback(() => {\n const value = state.value;\n const min = props.min ?? 0;\n const max = props.max ?? 100;\n\n if (Array.isArray(value) && value[0] !== undefined) {\n if (value[0] < min) return 0;\n else return ((value[0] - min) * 100) / (max - min);\n } else return 0;\n }, [state.value, props.min, props.max]);\n\n const rangeEndPosition = React.useCallback(() => {\n const value = state.value;\n const min = props.min ?? 0;\n const max = props.max ?? 100;\n\n if (Array.isArray(value) && value.length === 2 && value[1] !== undefined) {\n if (value[1] > max) return 100;\n else return ((value[1] - min) * 100) / (max - min);\n } else return 100;\n }, [state.value, props.min, props.max]);\n\n const rangeStyle = () => {\n if (range()) {\n const rangeSliderWidth = rangeEndPosition() > rangeStartPosition() ? rangeEndPosition() - rangeStartPosition() : rangeStartPosition() - rangeEndPosition();\n const rangeSliderPosition = rangeEndPosition() > rangeStartPosition() ? rangeStartPosition() : rangeEndPosition();\n\n if (horizontal()) {\n return { insetInlineStart: rangeSliderPosition + '%', width: rangeSliderWidth + '%' };\n } else {\n return { bottom: rangeSliderPosition + '%', height: rangeSliderWidth + '%' };\n }\n } else {\n if (horizontal()) {\n return { width: handlePosition() + '%' };\n } else {\n return { height: handlePosition() + '%' };\n }\n }\n };\n\n const handleThumbStyle = () => {\n if (horizontal()) {\n return { insetInlineStart: handlePosition() + '%' };\n } else {\n return { bottom: handlePosition() + '%' };\n }\n };\n\n const rangeStartHandleStyle = () => {\n if (horizontal()) {\n return { insetInlineStart: rangeStartPosition() + '%' };\n } else {\n return { bottom: rangeStartPosition() + '%' };\n }\n };\n\n const rangeEndHandleStyle = () => {\n if (horizontal()) {\n return { insetInlineStart: rangeEndPosition() + '%' };\n } else {\n return { bottom: rangeEndPosition() + '%' };\n }\n };\n\n const horizontal = React.useCallback(() => {\n return props.orientation === 'horizontal';\n }, []);\n\n return {\n state,\n registerThumb,\n thumbCounter,\n //methods\n range,\n onTouchStart,\n onDrag,\n onDragEnd,\n onMouseDown,\n onKeyDown,\n onBarClick,\n rangeStyle,\n handleThumbStyle,\n rangeStartHandleStyle,\n rangeEndHandleStyle\n };\n }\n});\n","import type { useSliderProps } from '@primereact/types/shared/slider';\n\nexport const defaultProps: useSliderProps = {\n value: undefined,\n defaultValue: undefined,\n orientation: 'horizontal',\n min: 0,\n max: 100,\n step: undefined,\n onValueChange: undefined\n};\n"],"mappings":"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","names":["withHeadless","useEventListener","focus","getAttribute","getWindowScrollLeft","getWindowScrollTop","isRTL","React","defaultProps","useSlider","withHeadless","defaultProps","props","elementRef","_a","_b","activeValue","setActiveValue","handleIndex","dragging","thumbCounter","initX","initY","barWidth","barHeight","state","registerThumb","index","range","updateDomData","_c","_d","_e","_f","_g","rect","getWindowScrollLeft","getWindowScrollTop","handleValue","event","rawValue","touchEvent","mouseEvent","pageX","pageY","horizontal","isRTL","newValue","oldValue","diff","updateValue","value","updatedValue","onDragStart","focus","onDrag","onDragEnd","unbindThumbMouseMoveListener","unbindThumbMouseUpListener","unbindDocumentTouchMoveListener","unbindDocumentTouchEndListener","onTouchStart","bindDocumentTouchMoveListener","bindDocumentTouchEndListener","onMouseDown","bindThumbMouseMoveListener","bindThumbMouseUpListener","onKeyDown","decrementValue","incrementValue","onBarClick","getAttribute","useEventListener","pageKey","handlePosition","min","max","rangeStartPosition","rangeEndPosition","rangeStyle","rangeSliderWidth","rangeSliderPosition","handleThumbStyle","rangeStartHandleStyle","rangeEndHandleStyle"]}
@@ -0,0 +1,58 @@
1
+ import { useSliderProps } from '@primereact/types/shared/slider';
2
+ import * as React from 'react';
3
+ export declare const useSlider: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<useSliderProps, unknown, {
4
+ state: {
5
+ value: number | number[] | undefined;
6
+ };
7
+ registerThumb: () => number;
8
+ thumbCounter: React.RefObject<number>;
9
+ range: () => boolean;
10
+ onTouchStart: (event: React.TouchEvent<HTMLElement>, index: number) => void;
11
+ onDrag: (event: React.MouseEvent | React.TouchEvent) => void;
12
+ onDragEnd: () => void;
13
+ onMouseDown: (event: React.MouseEvent<HTMLElement>, index: number) => void;
14
+ onKeyDown: (event: React.KeyboardEvent, index: number) => void;
15
+ onBarClick: (event: React.MouseEvent) => void;
16
+ rangeStyle: () => {
17
+ insetInlineStart: string;
18
+ width: string;
19
+ bottom?: undefined;
20
+ height?: undefined;
21
+ } | {
22
+ bottom: string;
23
+ height: string;
24
+ insetInlineStart?: undefined;
25
+ width?: undefined;
26
+ } | {
27
+ width: string;
28
+ insetInlineStart?: undefined;
29
+ bottom?: undefined;
30
+ height?: undefined;
31
+ } | {
32
+ height: string;
33
+ insetInlineStart?: undefined;
34
+ width?: undefined;
35
+ bottom?: undefined;
36
+ };
37
+ handleThumbStyle: () => {
38
+ insetInlineStart: string;
39
+ bottom?: undefined;
40
+ } | {
41
+ bottom: string;
42
+ insetInlineStart?: undefined;
43
+ };
44
+ rangeStartHandleStyle: () => {
45
+ insetInlineStart: string;
46
+ bottom?: undefined;
47
+ } | {
48
+ bottom: string;
49
+ insetInlineStart?: undefined;
50
+ };
51
+ rangeEndHandleStyle: () => {
52
+ insetInlineStart: string;
53
+ bottom?: undefined;
54
+ } | {
55
+ bottom: string;
56
+ insetInlineStart?: undefined;
57
+ };
58
+ }>;
@@ -0,0 +1,2 @@
1
+ import type { useSliderProps } from '@primereact/types/shared/slider';
2
+ export declare const defaultProps: useSliderProps;
File without changes
@@ -0,0 +1,2 @@
1
+ export * from './useTooltipGroup';
2
+ export * from './useTooltipGroup.props';
@@ -0,0 +1,2 @@
1
+ import{withHeadless as a}from"@primereact/core/headless";import{useUnmountEffect as T}from"@primereact/hooks/use-unmount-effect";import*as o from"react";var s={timeout:700,skipTimeout:300};var G=a({name:"useTooltipGroup",defaultProps:s,setup:({props:m})=>{let{timeout:c,skipTimeout:p}=m,e=o.useRef(null),u=o.useRef(null),t=o.useRef(null),r=o.useRef("delayed"),n=()=>{u.current&&(clearTimeout(u.current),u.current=null)},f=(i,l)=>{n(),e.current===null?r.current=t.current?"instant":"delayed":e.current===l?r.current="normal":r.current="instant",e.current=l,t.current===null&&(t.current=window.setTimeout(()=>{r.current="normal",t.current=null},p||300)),u.current=window.setTimeout(()=>{u.current=null,e.current=null,r.current="delayed",i==null||i()},c||700)};return T(()=>{n(),e.current&&(e.current=null),t.current&&(clearTimeout(t.current),t.current=null)}),{state:{get timeoutState(){return r.current},get prevTooltip(){return e.current}},scheduleTimeout:f,clearTimers:n}}});export{s as defaultProps,G as useTooltipGroup};
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/tooltip/group/useTooltipGroup.ts","../../../src/tooltip/group/useTooltipGroup.props.ts"],"sourcesContent":["import { withHeadless } from '@primereact/core/headless';\nimport { useUnmountEffect } from '@primereact/hooks/use-unmount-effect';\nimport { TimeoutState } from '@primereact/types/shared/tooltip';\nimport * as React from 'react';\nimport { defaultProps } from './useTooltipGroup.props';\n\nexport const useTooltipGroup = withHeadless({\n name: 'useTooltipGroup',\n defaultProps,\n setup: ({ props }) => {\n const { timeout, skipTimeout } = props;\n const prevTooltip = React.useRef<null | HTMLElement | undefined>(null);\n const timeoutRef = React.useRef<number | null>(null);\n const skipTimeoutRef = React.useRef<number | null>(null);\n const timeoutStateRef = React.useRef<TimeoutState>('delayed');\n\n const clearTimers = () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n timeoutRef.current = null;\n }\n };\n\n const scheduleTimeout = (callback?: () => void, currentTooltip?: HTMLElement) => {\n clearTimers();\n\n if (prevTooltip.current === null) {\n timeoutStateRef.current = skipTimeoutRef.current ? 'instant' : 'delayed';\n } else if (prevTooltip.current === currentTooltip) {\n timeoutStateRef.current = 'normal';\n } else {\n timeoutStateRef.current = 'instant';\n }\n\n prevTooltip.current = currentTooltip;\n\n if (skipTimeoutRef.current === null) {\n skipTimeoutRef.current = window.setTimeout(() => {\n timeoutStateRef.current = 'normal';\n skipTimeoutRef.current = null;\n }, skipTimeout || 300);\n }\n\n timeoutRef.current = window.setTimeout(() => {\n timeoutRef.current = null;\n prevTooltip.current = null;\n timeoutStateRef.current = 'delayed';\n callback?.();\n }, timeout || 700);\n };\n\n useUnmountEffect(() => {\n clearTimers();\n\n if (prevTooltip.current) {\n prevTooltip.current = null;\n }\n\n if (skipTimeoutRef.current) {\n clearTimeout(skipTimeoutRef.current);\n skipTimeoutRef.current = null;\n }\n });\n\n const state = {\n get timeoutState() {\n return timeoutStateRef.current;\n },\n get prevTooltip() {\n return prevTooltip.current;\n }\n };\n\n return {\n state,\n scheduleTimeout,\n clearTimers\n };\n }\n});\n","import type { useTooltipGroupProps } from '@primereact/types/shared/tooltip';\n\nexport const defaultProps: useTooltipGroupProps = {\n timeout: 700,\n skipTimeout: 300\n};\n"],"mappings":"AAAA,OAAS,gBAAAA,MAAoB,4BAC7B,OAAS,oBAAAC,MAAwB,uCAEjC,UAAYC,MAAW,QCDhB,IAAMC,EAAqC,CAC9C,QAAS,IACT,YAAa,GACjB,EDCO,IAAMC,EAAkBC,EAAa,CACxC,KAAM,kBACN,aAAAC,EACA,MAAO,CAAC,CAAE,MAAAC,CAAM,IAAM,CAClB,GAAM,CAAE,QAAAC,EAAS,YAAAC,CAAY,EAAIF,EAC3BG,EAAoB,SAAuC,IAAI,EAC/DC,EAAmB,SAAsB,IAAI,EAC7CC,EAAuB,SAAsB,IAAI,EACjDC,EAAwB,SAAqB,SAAS,EAEtDC,EAAc,IAAM,CAClBH,EAAW,UACX,aAAaA,EAAW,OAAO,EAC/BA,EAAW,QAAU,KAE7B,EAEMI,EAAkB,CAACC,EAAuBC,IAAiC,CAC7EH,EAAY,EAERJ,EAAY,UAAY,KACxBG,EAAgB,QAAUD,EAAe,QAAU,UAAY,UACxDF,EAAY,UAAYO,EAC/BJ,EAAgB,QAAU,SAE1BA,EAAgB,QAAU,UAG9BH,EAAY,QAAUO,EAElBL,EAAe,UAAY,OAC3BA,EAAe,QAAU,OAAO,WAAW,IAAM,CAC7CC,EAAgB,QAAU,SAC1BD,EAAe,QAAU,IAC7B,EAAGH,GAAe,GAAG,GAGzBE,EAAW,QAAU,OAAO,WAAW,IAAM,CACzCA,EAAW,QAAU,KACrBD,EAAY,QAAU,KACtBG,EAAgB,QAAU,UAC1BG,GAAA,MAAAA,GACJ,EAAGR,GAAW,GAAG,CACrB,EAEA,OAAAU,EAAiB,IAAM,CACnBJ,EAAY,EAERJ,EAAY,UACZA,EAAY,QAAU,MAGtBE,EAAe,UACf,aAAaA,EAAe,OAAO,EACnCA,EAAe,QAAU,KAEjC,CAAC,EAWM,CACH,MAVU,CACV,IAAI,cAAe,CACf,OAAOC,EAAgB,OAC3B,EACA,IAAI,aAAc,CACd,OAAOH,EAAY,OACvB,CACJ,EAII,gBAAAK,EACA,YAAAD,CACJ,CACJ,CACJ,CAAC","names":["withHeadless","useUnmountEffect","React","defaultProps","useTooltipGroup","withHeadless","defaultProps","props","timeout","skipTimeout","prevTooltip","timeoutRef","skipTimeoutRef","timeoutStateRef","clearTimers","scheduleTimeout","callback","currentTooltip","useUnmountEffect"]}
@@ -0,0 +1,9 @@
1
+ import { TimeoutState } from '@primereact/types/shared/tooltip';
2
+ export declare const useTooltipGroup: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/tooltip").useTooltipGroupProps, unknown, {
3
+ state: {
4
+ readonly timeoutState: TimeoutState;
5
+ readonly prevTooltip: HTMLElement | null | undefined;
6
+ };
7
+ scheduleTimeout: (callback?: () => void, currentTooltip?: HTMLElement) => void;
8
+ clearTimers: () => void;
9
+ }>;
@@ -0,0 +1,2 @@
1
+ import type { useTooltipGroupProps } from '@primereact/types/shared/tooltip';
2
+ export declare const defaultProps: useTooltipGroupProps;
File without changes
@@ -0,0 +1,2 @@
1
+ export * from './useTooltip';
2
+ export * from './useTooltip.props';
@@ -0,0 +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};
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +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"]}
@@ -0,0 +1,28 @@
1
+ import * as React from 'react';
2
+ export declare const useTooltip: (inProps?: unknown) => import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/tooltip").useTooltipProps, unknown, {
3
+ state: {
4
+ visible: boolean;
5
+ life: boolean;
6
+ shouldAnimateOnEnter: boolean;
7
+ shouldAnimateOnLeave: boolean;
8
+ };
9
+ placer: import("@primereact/types/core").HeadlessInstance<import("@primereact/types/shared/placer").usePlacerProps, unknown, {
10
+ state: {
11
+ effectiveSide: import("@primereact/types/shared/placer").SideType | null | undefined;
12
+ effectiveAlign: import("@primereact/types/shared/placer").AlignType | null | undefined;
13
+ };
14
+ containerRef: React.RefObject<unknown>;
15
+ anchorRef: React.RefObject<unknown>;
16
+ arrowRef: React.RefObject<unknown>;
17
+ applyPlacement: () => void;
18
+ }>;
19
+ show: (forceInstant?: boolean) => void;
20
+ hide: (forceInstant?: boolean) => void;
21
+ onEnter: () => void;
22
+ onBeforeEnter: () => void;
23
+ onLeave: () => void;
24
+ onContentAfterLeave: () => void;
25
+ onContentEnter: () => void;
26
+ onContentLeave: () => void;
27
+ contentRef: React.RefObject<HTMLDivElement | null>;
28
+ }>;
@@ -0,0 +1,2 @@
1
+ import type { useTooltipProps } from '@primereact/types/shared/tooltip';
2
+ export declare const defaultProps: useTooltipProps;
File without changes