@mintlify/components 1.0.3 → 1.0.4

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 (115) hide show
  1. package/dist/components/index.d.ts +1 -0
  2. package/dist/components/index.d.ts.map +1 -1
  3. package/dist/components/search/button.d.ts +12 -0
  4. package/dist/components/search/button.d.ts.map +1 -0
  5. package/dist/components/search/button.js +53 -0
  6. package/dist/components/search/index.d.ts +7 -0
  7. package/dist/components/search/index.d.ts.map +1 -0
  8. package/dist/components/search/provider.d.ts +19 -0
  9. package/dist/components/search/provider.d.ts.map +1 -0
  10. package/dist/components/search/provider.js +32 -0
  11. package/dist/components/search/search.d.ts +36 -0
  12. package/dist/components/search/search.d.ts.map +1 -0
  13. package/dist/components/search/search.js +253 -0
  14. package/dist/index.js +55 -48
  15. package/dist/node_modules/.pnpm/@floating-ui_core@1.7.3/node_modules/@floating-ui/core/dist/floating-ui.core.js +1 -1
  16. package/dist/node_modules/.pnpm/@floating-ui_dom@1.7.4/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +165 -164
  17. package/dist/node_modules/.pnpm/@floating-ui_react-dom@2.1.6_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +21 -20
  18. package/dist/node_modules/.pnpm/@floating-ui_react@0.26.28_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@floating-ui/react/dist/floating-ui.react.js +367 -0
  19. package/dist/node_modules/.pnpm/@floating-ui_react@0.26.28_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@floating-ui/react/dist/floating-ui.react.utils.js +13 -0
  20. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/components/combobox/combobox.js +397 -0
  21. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/components/description/description.js +43 -0
  22. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/components/dialog/dialog.js +100 -0
  23. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/components/focus-trap/focus-trap.js +129 -0
  24. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/components/keyboard.js +4 -0
  25. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/components/label/label.js +59 -0
  26. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/components/mouse.js +4 -0
  27. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/components/portal/portal.js +71 -0
  28. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/components/transition/transition.js +135 -0
  29. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/document-overflow/adjust-scrollbar-padding.js +14 -0
  30. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/document-overflow/handle-ios-locking.js +48 -0
  31. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/document-overflow/overflow-store.js +36 -0
  32. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/document-overflow/prevent-scroll.js +8 -0
  33. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/document-overflow/use-document-overflow.js +12 -0
  34. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-active-press.js +33 -0
  35. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-by-comparator.js +16 -0
  36. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-controllable.js +9 -0
  37. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-default-value.js +8 -0
  38. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-disposables.js +9 -0
  39. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-document-event.js +15 -0
  40. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-element-size.js +20 -0
  41. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-escape.js +12 -0
  42. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-event-listener.js +15 -0
  43. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-event.js +9 -0
  44. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-flags.js +8 -0
  45. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-inert-others.js +41 -0
  46. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-is-mounted.js +11 -0
  47. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-is-top-layer.js +24 -0
  48. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-is-touch-device.js +16 -0
  49. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-iso-morphic-effect.js +8 -0
  50. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-latest-value.js +11 -0
  51. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-on-disappear.js +27 -0
  52. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-on-unmount.js +14 -0
  53. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-outside-click.js +39 -0
  54. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-owner.js +8 -0
  55. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-refocusable-input.js +22 -0
  56. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-resolve-button-type.js +12 -0
  57. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-root-containers.js +38 -0
  58. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-scroll-lock.js +12 -0
  59. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-server-handoff-complete.js +16 -0
  60. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-store.js +7 -0
  61. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-sync-refs.js +20 -0
  62. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-tab-direction.js +13 -0
  63. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-tracked-pointer.js +16 -0
  64. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-transition.js +69 -0
  65. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-tree-walker.js +18 -0
  66. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-watch.js +15 -0
  67. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/hooks/use-window-event.js +15 -0
  68. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/internal/close-provider.js +9 -0
  69. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/internal/disabled.js +8 -0
  70. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/internal/floating.js +149 -0
  71. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/internal/form-fields.js +35 -0
  72. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/internal/frozen.js +13 -0
  73. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/internal/hidden.js +13 -0
  74. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/internal/id.js +8 -0
  75. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/internal/open-closed.js +19 -0
  76. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/internal/portal-force-root.js +12 -0
  77. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/active-element-history.js +14 -0
  78. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/bugs.js +18 -0
  79. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/calculate-active-index.js +40 -0
  80. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/class-names.js +6 -0
  81. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/default-map.js +12 -0
  82. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/disposables.js +40 -0
  83. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/document-ready.js +9 -0
  84. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/env.js +34 -0
  85. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/focus-management.js +84 -0
  86. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/form.js +14 -0
  87. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/match.js +11 -0
  88. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/micro-task.js +8 -0
  89. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/owner.js +7 -0
  90. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/platform.js +14 -0
  91. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/render.js +118 -0
  92. package/dist/node_modules/.pnpm/@headlessui_react@2.2.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@headlessui/react/dist/utils/store.js +14 -0
  93. package/dist/node_modules/.pnpm/@react-aria_focus@3.21.4_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/focus/dist/useFocusRing.js +38 -0
  94. package/dist/node_modules/.pnpm/@react-aria_interactions@3.27.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/interactions/dist/useFocus.js +30 -0
  95. package/dist/node_modules/.pnpm/@react-aria_interactions@3.27.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/interactions/dist/useFocusVisible.js +97 -0
  96. package/dist/node_modules/.pnpm/@react-aria_interactions@3.27.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/interactions/dist/useFocusWithin.js +57 -0
  97. package/dist/node_modules/.pnpm/@react-aria_interactions@3.27.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/interactions/dist/useHover.js +86 -0
  98. package/dist/node_modules/.pnpm/@react-aria_interactions@3.27.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/interactions/dist/utils.js +66 -0
  99. package/dist/node_modules/.pnpm/@react-aria_utils@3.33.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/utils/dist/DOMFunctions.js +27 -0
  100. package/dist/node_modules/.pnpm/@react-aria_utils@3.33.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/utils/dist/domHelpers.js +15 -0
  101. package/dist/node_modules/.pnpm/@react-aria_utils@3.33.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/utils/dist/focusWithoutScrolling.js +45 -0
  102. package/dist/node_modules/.pnpm/@react-aria_utils@3.33.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/utils/dist/isVirtualEvent.js +7 -0
  103. package/dist/node_modules/.pnpm/@react-aria_utils@3.33.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/utils/dist/openLink.js +28 -0
  104. package/dist/node_modules/.pnpm/@react-aria_utils@3.33.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/utils/dist/platform.js +47 -0
  105. package/dist/node_modules/.pnpm/@react-aria_utils@3.33.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/utils/dist/useGlobalListeners.js +34 -0
  106. package/dist/node_modules/.pnpm/@react-aria_utils@3.33.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-aria/utils/dist/useLayoutEffect.js +6 -0
  107. package/dist/node_modules/.pnpm/@react-stately_flags@3.1.2/node_modules/@react-stately/flags/dist/import.js +7 -0
  108. package/dist/node_modules/.pnpm/@tanstack_react-virtual@3.13.18_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@tanstack/react-virtual/dist/esm/index.js +38 -0
  109. package/dist/node_modules/.pnpm/@tanstack_virtual-core@3.13.18/node_modules/@tanstack/virtual-core/dist/esm/index.js +533 -0
  110. package/dist/node_modules/.pnpm/@tanstack_virtual-core@3.13.18/node_modules/@tanstack/virtual-core/dist/esm/utils.js +52 -0
  111. package/dist/node_modules/.pnpm/lucide-react@0.453.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/loader-circle.js +13 -0
  112. package/dist/node_modules/.pnpm/lucide-react@0.453.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/search-x.js +16 -0
  113. package/dist/node_modules/.pnpm/lucide-react@0.453.0_react@18.3.1/node_modules/lucide-react/dist/esm/icons/search.js +14 -0
  114. package/dist/styles.css +1 -1
  115. package/package.json +2 -1
@@ -0,0 +1,12 @@
1
+ import { Keys as a } from "../components/keyboard.js";
2
+ import { useEventListener as r } from "./use-event-listener.js";
3
+ import { useIsTopLayer as u } from "./use-is-top-layer.js";
4
+ function m(o, t = typeof document < "u" ? document.defaultView : null, s) {
5
+ let n = u(o, "escape");
6
+ r(t, "keydown", (e) => {
7
+ n && (e.defaultPrevented || e.key === a.Escape && s(e));
8
+ });
9
+ }
10
+ export {
11
+ m as useEscape
12
+ };
@@ -0,0 +1,15 @@
1
+ import { useEffect as u } from "react";
2
+ import { useLatestValue as f } from "./use-latest-value.js";
3
+ function E(e, t, i, r) {
4
+ let n = f(i);
5
+ u(() => {
6
+ e = e ?? window;
7
+ function s(o) {
8
+ n.current(o);
9
+ }
10
+ return e.addEventListener(t, s, r), () => e.removeEventListener(t, s, r);
11
+ }, [e, t, r]);
12
+ }
13
+ export {
14
+ E as useEventListener
15
+ };
@@ -0,0 +1,9 @@
1
+ import a from "react";
2
+ import { useLatestValue as u } from "./use-latest-value.js";
3
+ let l = function(t) {
4
+ let e = u(t);
5
+ return a.useCallback((...r) => e.current(...r), [e]);
6
+ };
7
+ export {
8
+ l as useEvent
9
+ };
@@ -0,0 +1,8 @@
1
+ import { useState as n, useCallback as t } from "react";
2
+ function f(s = 0) {
3
+ let [e, l] = n(s), F = t((a) => l(a), [e]), o = t((a) => l((g) => g | a), [e]), r = t((a) => (e & a) === a, [e]), u = t((a) => l((g) => g & ~a), [l]), m = t((a) => l((g) => g ^ a), [l]);
4
+ return { flags: e, setFlag: F, addFlag: o, hasFlag: r, removeFlag: u, toggleFlag: m };
5
+ }
6
+ export {
7
+ f as useFlags
8
+ };
@@ -0,0 +1,41 @@
1
+ import { disposables as v } from "../utils/disposables.js";
2
+ import { getOwnerDocument as g } from "../utils/owner.js";
3
+ import { useIsTopLayer as w } from "./use-is-top-layer.js";
4
+ import { useIsoMorphicEffect as A } from "./use-iso-morphic-effect.js";
5
+ let d = /* @__PURE__ */ new Map(), l = /* @__PURE__ */ new Map();
6
+ function h(e) {
7
+ var t;
8
+ let r = (t = l.get(e)) != null ? t : 0;
9
+ return l.set(e, r + 1), r !== 0 ? () => c(e) : (d.set(e, { "aria-hidden": e.getAttribute("aria-hidden"), inert: e.inert }), e.setAttribute("aria-hidden", "true"), e.inert = !0, () => c(e));
10
+ }
11
+ function c(e) {
12
+ var t;
13
+ let r = (t = l.get(e)) != null ? t : 1;
14
+ if (r === 1 ? l.delete(e) : l.set(e, r - 1), r !== 1) return;
15
+ let n = d.get(e);
16
+ n && (n["aria-hidden"] === null ? e.removeAttribute("aria-hidden") : e.setAttribute("aria-hidden", n["aria-hidden"]), e.inert = n.inert, d.delete(e));
17
+ }
18
+ function x(e, { allowed: t, disallowed: r } = {}) {
19
+ let n = w(e, "inert-others");
20
+ A(() => {
21
+ var u, s;
22
+ if (!n) return;
23
+ let a = v();
24
+ for (let i of (u = r == null ? void 0 : r()) != null ? u : []) i && a.add(h(i));
25
+ let f = (s = t == null ? void 0 : t()) != null ? s : [];
26
+ for (let i of f) {
27
+ if (!i) continue;
28
+ let m = g(i);
29
+ if (!m) continue;
30
+ let o = i.parentElement;
31
+ for (; o && o !== m.body; ) {
32
+ for (let p of o.children) f.some((b) => p.contains(b)) || a.add(h(p));
33
+ o = o.parentElement;
34
+ }
35
+ }
36
+ return a.dispose;
37
+ }, [n, t, r]);
38
+ }
39
+ export {
40
+ x as useInertOthers
41
+ };
@@ -0,0 +1,11 @@
1
+ import { useRef as r } from "react";
2
+ import { useIsoMorphicEffect as t } from "./use-iso-morphic-effect.js";
3
+ function s() {
4
+ let e = r(!1);
5
+ return t(() => (e.current = !0, () => {
6
+ e.current = !1;
7
+ }), []), e;
8
+ }
9
+ export {
10
+ s as useIsMounted
11
+ };
@@ -0,0 +1,24 @@
1
+ import { useId as a } from "react";
2
+ import { DefaultMap as n } from "../utils/default-map.js";
3
+ import { createStore as p } from "../utils/store.js";
4
+ import { useIsoMorphicEffect as u } from "./use-iso-morphic-effect.js";
5
+ import { useStore as h } from "./use-store.js";
6
+ let l = new n(() => p(() => [], { ADD(t) {
7
+ return this.includes(t) ? this : [...this, t];
8
+ }, REMOVE(t) {
9
+ let r = this.indexOf(t);
10
+ if (r === -1) return this;
11
+ let e = this.slice();
12
+ return e.splice(r, 1), e;
13
+ } }));
14
+ function x(t, r) {
15
+ let e = l.get(r), i = a(), f = h(e);
16
+ if (u(() => {
17
+ if (t) return e.dispatch("ADD", i), () => e.dispatch("REMOVE", i);
18
+ }, [e, t]), !t) return !1;
19
+ let s = f.indexOf(i), o = f.length;
20
+ return s === -1 && (s = o, o += 1), s === o - 1;
21
+ }
22
+ export {
23
+ x as useIsTopLayer
24
+ };
@@ -0,0 +1,16 @@
1
+ import { useState as o } from "react";
2
+ import { useIsoMorphicEffect as c } from "./use-iso-morphic-effect.js";
3
+ function s() {
4
+ var n;
5
+ let [e] = o(() => typeof window < "u" && typeof window.matchMedia == "function" ? window.matchMedia("(pointer: coarse)") : null), [i, r] = o((n = e == null ? void 0 : e.matches) != null ? n : !1);
6
+ return c(() => {
7
+ if (!e) return;
8
+ function t(a) {
9
+ r(a.matches);
10
+ }
11
+ return e.addEventListener("change", t), () => e.removeEventListener("change", t);
12
+ }, [e]), i;
13
+ }
14
+ export {
15
+ s as useIsTouchDevice
16
+ };
@@ -0,0 +1,8 @@
1
+ import { useEffect as o, useLayoutEffect as r } from "react";
2
+ import { env as s } from "../utils/env.js";
3
+ let i = (e, f) => {
4
+ s.isServer ? o(e, f) : r(e, f);
5
+ };
6
+ export {
7
+ i as useIsoMorphicEffect
8
+ };
@@ -0,0 +1,11 @@
1
+ import { useRef as e } from "react";
2
+ import { useIsoMorphicEffect as o } from "./use-iso-morphic-effect.js";
3
+ function f(r) {
4
+ let t = e(r);
5
+ return o(() => {
6
+ t.current = r;
7
+ }, [r]), t;
8
+ }
9
+ export {
10
+ f as useLatestValue
11
+ };
@@ -0,0 +1,27 @@
1
+ import { useEffect as u } from "react";
2
+ import { disposables as f } from "../utils/disposables.js";
3
+ import { useLatestValue as d } from "./use-latest-value.js";
4
+ function p(i, r, o) {
5
+ let s = d((t) => {
6
+ let e = t.getBoundingClientRect();
7
+ e.x === 0 && e.y === 0 && e.width === 0 && e.height === 0 && o();
8
+ });
9
+ u(() => {
10
+ if (!i) return;
11
+ let t = r === null ? null : r instanceof HTMLElement ? r : r.current;
12
+ if (!t) return;
13
+ let e = f();
14
+ if (typeof ResizeObserver < "u") {
15
+ let n = new ResizeObserver(() => s.current(t));
16
+ n.observe(t), e.add(() => n.disconnect());
17
+ }
18
+ if (typeof IntersectionObserver < "u") {
19
+ let n = new IntersectionObserver(() => s.current(t));
20
+ n.observe(t), e.add(() => n.disconnect());
21
+ }
22
+ return () => e.dispose();
23
+ }, [r, s, i]);
24
+ }
25
+ export {
26
+ p as useOnDisappear
27
+ };
@@ -0,0 +1,14 @@
1
+ import { useRef as o, useEffect as s } from "react";
2
+ import { microTask as u } from "../utils/micro-task.js";
3
+ import { useEvent as f } from "./use-event.js";
4
+ function a(t) {
5
+ let r = f(t), e = o(!1);
6
+ s(() => (e.current = !1, () => {
7
+ e.current = !0, u(() => {
8
+ e.current && r();
9
+ });
10
+ }), [r]);
11
+ }
12
+ export {
13
+ a as useOnUnmount
14
+ };
@@ -0,0 +1,39 @@
1
+ import { useCallback as y, useRef as d } from "react";
2
+ import { isFocusableElement as b, FocusableMode as x } from "../utils/focus-management.js";
3
+ import { isMobile as E } from "../utils/platform.js";
4
+ import { useDocumentEvent as c } from "./use-document-event.js";
5
+ import { useIsTopLayer as g } from "./use-is-top-layer.js";
6
+ import { useLatestValue as w } from "./use-latest-value.js";
7
+ import { useWindowEvent as M } from "./use-window-event.js";
8
+ const f = 30;
9
+ function F(p, i, h) {
10
+ let r = g(p, "outside-click"), m = w(h), a = y(function(e, n) {
11
+ if (e.defaultPrevented) return;
12
+ let t = n(e);
13
+ if (t === null || !t.getRootNode().contains(t) || !t.isConnected) return;
14
+ let v = (function l(o) {
15
+ return typeof o == "function" ? l(o()) : Array.isArray(o) || o instanceof Set ? o : [o];
16
+ })(i);
17
+ for (let l of v) if (l !== null && (l.contains(t) || e.composed && e.composedPath().includes(l))) return;
18
+ return !b(t, x.Loose) && t.tabIndex !== -1 && e.preventDefault(), m.current(e, t);
19
+ }, [m, i]), u = d(null);
20
+ c(r, "pointerdown", (e) => {
21
+ var n, t;
22
+ u.current = ((t = (n = e.composedPath) == null ? void 0 : n.call(e)) == null ? void 0 : t[0]) || e.target;
23
+ }, !0), c(r, "mousedown", (e) => {
24
+ var n, t;
25
+ u.current = ((t = (n = e.composedPath) == null ? void 0 : n.call(e)) == null ? void 0 : t[0]) || e.target;
26
+ }, !0), c(r, "click", (e) => {
27
+ E() || u.current && (a(e, () => u.current), u.current = null);
28
+ }, !0);
29
+ let s = d({ x: 0, y: 0 });
30
+ c(r, "touchstart", (e) => {
31
+ s.current.x = e.touches[0].clientX, s.current.y = e.touches[0].clientY;
32
+ }, !0), c(r, "touchend", (e) => {
33
+ let n = { x: e.changedTouches[0].clientX, y: e.changedTouches[0].clientY };
34
+ if (!(Math.abs(n.x - s.current.x) >= f || Math.abs(n.y - s.current.y) >= f)) return a(e, () => e.target instanceof HTMLElement ? e.target : null);
35
+ }, !0), M(r, "blur", (e) => a(e, () => window.document.activeElement instanceof HTMLIFrameElement ? window.document.activeElement : null), !0);
36
+ }
37
+ export {
38
+ F as useOutsideClick
39
+ };
@@ -0,0 +1,8 @@
1
+ import { useMemo as o } from "react";
2
+ import { getOwnerDocument as r } from "../utils/owner.js";
3
+ function m(...e) {
4
+ return o(() => r(...e), [...e]);
5
+ }
6
+ export {
7
+ m as useOwnerDocument
8
+ };
@@ -0,0 +1,22 @@
1
+ import { useRef as u } from "react";
2
+ import { useEvent as o } from "./use-event.js";
3
+ import { useEventListener as r } from "./use-event-listener.js";
4
+ function a(e) {
5
+ let n = u({ value: "", selectionStart: null, selectionEnd: null });
6
+ return r(e, "blur", (l) => {
7
+ let t = l.target;
8
+ t instanceof HTMLInputElement && (n.current = { value: t.value, selectionStart: t.selectionStart, selectionEnd: t.selectionEnd });
9
+ }), o(() => {
10
+ if (document.activeElement !== e && e instanceof HTMLInputElement && e.isConnected) {
11
+ if (e.focus({ preventScroll: !0 }), e.value !== n.current.value) e.setSelectionRange(e.value.length, e.value.length);
12
+ else {
13
+ let { selectionStart: l, selectionEnd: t } = n.current;
14
+ l !== null && t !== null && e.setSelectionRange(l, t);
15
+ }
16
+ n.current = { value: "", selectionStart: null, selectionEnd: null };
17
+ }
18
+ });
19
+ }
20
+ export {
21
+ a as useRefocusableInput
22
+ };
@@ -0,0 +1,12 @@
1
+ import { useMemo as n } from "react";
2
+ function s(t, e) {
3
+ return n(() => {
4
+ var o;
5
+ if (t.type) return t.type;
6
+ let r = (o = t.as) != null ? o : "button";
7
+ if (typeof r == "string" && r.toLowerCase() === "button" || (e == null ? void 0 : e.tagName) === "BUTTON" && !e.hasAttribute("type")) return "button";
8
+ }, [t.type, t.as, e]);
9
+ }
10
+ export {
11
+ s as useResolveButtonType
12
+ };
@@ -0,0 +1,38 @@
1
+ import s, { useState as m, createContext as p, useContext as v } from "react";
2
+ import { Hidden as h, HiddenFeatures as E } from "../internal/hidden.js";
3
+ import { getOwnerDocument as H } from "../utils/owner.js";
4
+ import { useEvent as c } from "./use-event.js";
5
+ import { useOwnerDocument as T } from "./use-owner.js";
6
+ function x({ defaultContainers: u = [], portals: n, mainTreeNode: r } = {}) {
7
+ let i = T(r), a = c(() => {
8
+ var o, l;
9
+ let t = [];
10
+ for (let e of u) e !== null && (e instanceof HTMLElement ? t.push(e) : "current" in e && e.current instanceof HTMLElement && t.push(e.current));
11
+ if (n != null && n.current) for (let e of n.current) t.push(e);
12
+ for (let e of (o = i == null ? void 0 : i.querySelectorAll("html > *, body > *")) != null ? o : []) e !== document.body && e !== document.head && e instanceof HTMLElement && e.id !== "headlessui-portal-root" && (r && (e.contains(r) || e.contains((l = r == null ? void 0 : r.getRootNode()) == null ? void 0 : l.host)) || t.some((f) => e.contains(f)) || t.push(e));
13
+ return t;
14
+ });
15
+ return { resolveContainers: a, contains: c((o) => a().some((l) => l.contains(o))) };
16
+ }
17
+ let d = p(null);
18
+ function N({ children: u, node: n }) {
19
+ let [r, i] = m(null), a = b(n ?? r);
20
+ return s.createElement(d.Provider, { value: a }, u, a === null && s.createElement(h, { features: E.Hidden, ref: (o) => {
21
+ var l, t;
22
+ if (o) {
23
+ for (let e of (t = (l = H(o)) == null ? void 0 : l.querySelectorAll("html > *, body > *")) != null ? t : []) if (e !== document.body && e !== document.head && e instanceof HTMLElement && e != null && e.contains(o)) {
24
+ i(e);
25
+ break;
26
+ }
27
+ }
28
+ } }));
29
+ }
30
+ function b(u = null) {
31
+ var n;
32
+ return (n = v(d)) != null ? n : u;
33
+ }
34
+ export {
35
+ N as MainTreeProvider,
36
+ b as useMainTreeNode,
37
+ x as useRootContainers
38
+ };
@@ -0,0 +1,12 @@
1
+ import { useDocumentOverflowLockedEffect as s } from "./document-overflow/use-document-overflow.js";
2
+ import { useIsTopLayer as l } from "./use-is-top-layer.js";
3
+ function f(r, e, c = () => [document.body]) {
4
+ let t = l(r, "scroll-lock");
5
+ s(t, e, (n) => {
6
+ var o;
7
+ return { containers: [...(o = n.containers) != null ? o : [], c] };
8
+ });
9
+ }
10
+ export {
11
+ f as useScrollLock
12
+ };
@@ -0,0 +1,16 @@
1
+ import * as t from "react";
2
+ import { env as n } from "../utils/env.js";
3
+ function o() {
4
+ let f = typeof document > "u";
5
+ return "useSyncExternalStore" in t ? ((e) => e.useSyncExternalStore)(t)(() => () => {
6
+ }, () => !1, () => !f) : !1;
7
+ }
8
+ function a() {
9
+ let f = o(), [e, r] = t.useState(n.isHandoffComplete);
10
+ return e && n.isHandoffComplete === !1 && r(!1), t.useEffect(() => {
11
+ e !== !0 && r(!0);
12
+ }, [e]), t.useEffect(() => n.handoff(), []), f ? !1 : e;
13
+ }
14
+ export {
15
+ a as useServerHandoffComplete
16
+ };
@@ -0,0 +1,7 @@
1
+ import { useSyncExternalStore as o } from "react";
2
+ function t(e) {
3
+ return o(e.subscribe, e.getSnapshot, e.getSnapshot);
4
+ }
5
+ export {
6
+ t as useStore
7
+ };
@@ -0,0 +1,20 @@
1
+ import { useRef as f, useEffect as l } from "react";
2
+ import { useEvent as c } from "./use-event.js";
3
+ let t = Symbol();
4
+ function a(e, o = !0) {
5
+ return Object.assign(e, { [t]: o });
6
+ }
7
+ function m(...e) {
8
+ let o = f(e);
9
+ l(() => {
10
+ o.current = e;
11
+ }, [e]);
12
+ let u = c((n) => {
13
+ for (let r of o.current) r != null && (typeof r == "function" ? r(n) : r.current = n);
14
+ });
15
+ return e.every((n) => n == null || (n == null ? void 0 : n[t])) ? void 0 : u;
16
+ }
17
+ export {
18
+ a as optionalRef,
19
+ m as useSyncRefs
20
+ };
@@ -0,0 +1,13 @@
1
+ import { useRef as a } from "react";
2
+ import { useWindowEvent as t } from "./use-window-event.js";
3
+ var o = ((e) => (e[e.Forwards = 0] = "Forwards", e[e.Backwards = 1] = "Backwards", e))(o || {});
4
+ function n() {
5
+ let e = a(0);
6
+ return t(!0, "keydown", (r) => {
7
+ r.key === "Tab" && (e.current = r.shiftKey ? 1 : 0);
8
+ }, !0), e;
9
+ }
10
+ export {
11
+ o as Direction,
12
+ n as useTabDirection
13
+ };
@@ -0,0 +1,16 @@
1
+ import { useRef as u } from "react";
2
+ function n(e) {
3
+ return [e.screenX, e.screenY];
4
+ }
5
+ function o() {
6
+ let e = u([-1, -1]);
7
+ return { wasMoved(r) {
8
+ let t = n(r);
9
+ return e.current[0] === t[0] && e.current[1] === t[1] ? !1 : (e.current = t, !0);
10
+ }, update(r) {
11
+ e.current = n(r);
12
+ } };
13
+ }
14
+ export {
15
+ o as useTrackedPointer
16
+ };
@@ -0,0 +1,69 @@
1
+ import { useState as y, useRef as m } from "react";
2
+ import { disposables as v } from "../utils/disposables.js";
3
+ import { useDisposables as A } from "./use-disposables.js";
4
+ import { useFlags as E } from "./use-flags.js";
5
+ import { useIsoMorphicEffect as F } from "./use-iso-morphic-effect.js";
6
+ var c, g;
7
+ typeof process < "u" && typeof globalThis < "u" && typeof Element < "u" && ((c = process == null ? void 0 : process.env) == null ? void 0 : c.NODE_ENV) === "test" && typeof ((g = Element == null ? void 0 : Element.prototype) == null ? void 0 : g.getAnimations) > "u" && (Element.prototype.getAnimations = function() {
8
+ return console.warn(["Headless UI has polyfilled `Element.prototype.getAnimations` for your tests.", "Please install a proper polyfill e.g. `jsdom-testing-mocks`, to silence these warnings.", "", "Example usage:", "```js", "import { mockAnimationsApi } from 'jsdom-testing-mocks'", "mockAnimationsApi()", "```"].join(`
9
+ `)), [];
10
+ });
11
+ var b = ((e) => (e[e.None = 0] = "None", e[e.Closed = 1] = "Closed", e[e.Enter = 2] = "Enter", e[e.Leave = 4] = "Leave", e))(b || {});
12
+ function L(e) {
13
+ let n = {};
14
+ for (let t in e) e[t] === !0 && (n[`data-${t}`] = "");
15
+ return n;
16
+ }
17
+ function w(e, n, t, o) {
18
+ let [s, r] = y(t), { hasFlag: l, addFlag: i, removeFlag: a } = E(e && s ? 3 : 0), p = m(!1), u = m(!1), h = A();
19
+ return F(() => {
20
+ var d;
21
+ if (e) {
22
+ if (t && r(!0), !n) {
23
+ t && i(3);
24
+ return;
25
+ }
26
+ return (d = o == null ? void 0 : o.start) == null || d.call(o, t), j(n, { inFlight: p, prepare() {
27
+ u.current ? u.current = !1 : u.current = p.current, p.current = !0, !u.current && (t ? (i(3), a(4)) : (i(4), a(2)));
28
+ }, run() {
29
+ u.current ? t ? (a(3), i(4)) : (a(4), i(3)) : t ? a(1) : i(1);
30
+ }, done() {
31
+ var f;
32
+ u.current && typeof n.getAnimations == "function" && n.getAnimations().length > 0 || (p.current = !1, a(7), t || r(!1), (f = o == null ? void 0 : o.end) == null || f.call(o, t));
33
+ } });
34
+ }
35
+ }, [e, t, n, h]), e ? [s, { closed: l(1), enter: l(2), leave: l(4), transition: l(2) || l(4) }] : [t, { closed: void 0, enter: void 0, leave: void 0, transition: void 0 }];
36
+ }
37
+ function j(e, { prepare: n, run: t, done: o, inFlight: s }) {
38
+ let r = v();
39
+ return x(e, { prepare: n, inFlight: s }), r.nextFrame(() => {
40
+ t(), r.requestAnimationFrame(() => {
41
+ r.add(k(e, o));
42
+ });
43
+ }), r.dispose;
44
+ }
45
+ function k(e, n) {
46
+ var t, o;
47
+ let s = v();
48
+ if (!e) return s.dispose;
49
+ let r = !1;
50
+ s.add(() => {
51
+ r = !0;
52
+ });
53
+ let l = (o = (t = e.getAnimations) == null ? void 0 : t.call(e).filter((i) => i instanceof CSSTransition)) != null ? o : [];
54
+ return l.length === 0 ? (n(), s.dispose) : (Promise.allSettled(l.map((i) => i.finished)).then(() => {
55
+ r || n();
56
+ }), s.dispose);
57
+ }
58
+ function x(e, { inFlight: n, prepare: t }) {
59
+ if (n != null && n.current) {
60
+ t();
61
+ return;
62
+ }
63
+ let o = e.style.transition;
64
+ e.style.transition = "none", t(), e.offsetHeight, e.style.transition = o;
65
+ }
66
+ export {
67
+ L as transitionDataAttributes,
68
+ w as useTransition
69
+ };
@@ -0,0 +1,18 @@
1
+ import { useRef as i, useEffect as m } from "react";
2
+ import { getOwnerDocument as E } from "../utils/owner.js";
3
+ import { useIsoMorphicEffect as N } from "./use-iso-morphic-effect.js";
4
+ function T(c, { container: e, accept: r, walk: t }) {
5
+ let o = i(r), n = i(t);
6
+ m(() => {
7
+ o.current = r, n.current = t;
8
+ }, [r, t]), N(() => {
9
+ if (!e || !c) return;
10
+ let u = E(e);
11
+ if (!u) return;
12
+ let f = o.current, s = n.current, l = Object.assign((p) => f(p), { acceptNode: f }), a = u.createTreeWalker(e, NodeFilter.SHOW_ELEMENT, l, !1);
13
+ for (; a.nextNode(); ) s(a.currentNode);
14
+ }, [e, c, o, n]);
15
+ }
16
+ export {
17
+ T as useTreeWalker
18
+ };
@@ -0,0 +1,15 @@
1
+ import { useRef as c, useEffect as i } from "react";
2
+ import { useEvent as l } from "./use-event.js";
3
+ function p(o, e) {
4
+ let r = c([]), t = l(o);
5
+ i(() => {
6
+ let f = [...r.current];
7
+ for (let [n, u] of e.entries()) if (r.current[n] !== u) {
8
+ let s = t(e, f);
9
+ return r.current = e, s;
10
+ }
11
+ }, [t, ...e]);
12
+ }
13
+ export {
14
+ p as useWatch
15
+ };
@@ -0,0 +1,15 @@
1
+ import { useEffect as u } from "react";
2
+ import { useLatestValue as f } from "./use-latest-value.js";
3
+ function m(r, e, i, t) {
4
+ let o = f(i);
5
+ u(() => {
6
+ if (!r) return;
7
+ function n(s) {
8
+ o.current(s);
9
+ }
10
+ return window.addEventListener(e, n, t), () => window.removeEventListener(e, n, t);
11
+ }, [r, e, t]);
12
+ }
13
+ export {
14
+ m as useWindowEvent
15
+ };
@@ -0,0 +1,9 @@
1
+ import t, { createContext as o } from "react";
2
+ let a = o(() => {
3
+ });
4
+ function n({ value: e, children: r }) {
5
+ return t.createElement(a.Provider, { value: e }, r);
6
+ }
7
+ export {
8
+ n as CloseProvider
9
+ };
@@ -0,0 +1,8 @@
1
+ import { useContext as e, createContext as t } from "react";
2
+ let o = t(void 0);
3
+ function n() {
4
+ return e(o);
5
+ }
6
+ export {
7
+ n as useDisabled
8
+ };