@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.
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/search/button.d.ts +12 -0
- package/dist/components/search/button.d.ts.map +1 -0
- package/dist/components/search/button.js +53 -0
- package/dist/components/search/index.d.ts +7 -0
- package/dist/components/search/index.d.ts.map +1 -0
- package/dist/components/search/provider.d.ts +19 -0
- package/dist/components/search/provider.d.ts.map +1 -0
- package/dist/components/search/provider.js +32 -0
- package/dist/components/search/search.d.ts +36 -0
- package/dist/components/search/search.d.ts.map +1 -0
- package/dist/components/search/search.js +253 -0
- package/dist/index.js +55 -48
- package/dist/node_modules/.pnpm/@floating-ui_core@1.7.3/node_modules/@floating-ui/core/dist/floating-ui.core.js +1 -1
- package/dist/node_modules/.pnpm/@floating-ui_dom@1.7.4/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +165 -164
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- package/dist/node_modules/.pnpm/@react-stately_flags@3.1.2/node_modules/@react-stately/flags/dist/import.js +7 -0
- 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
- package/dist/node_modules/.pnpm/@tanstack_virtual-core@3.13.18/node_modules/@tanstack/virtual-core/dist/esm/index.js +533 -0
- package/dist/node_modules/.pnpm/@tanstack_virtual-core@3.13.18/node_modules/@tanstack/virtual-core/dist/esm/utils.js +52 -0
- 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
- 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
- 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
- package/dist/styles.css +1 -1
- 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,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,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,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,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
|
+
};
|