UNPKG

@ariakit/react-core

Version:

Ariakit React core

79 lines (77 loc) 1.86 kB
"use client"; import { useToolbarStore } from "../__chunks/WVRNRYET.js"; import { ToolbarScopedContextProvider, useToolbarProviderContext } from "../__chunks/GBYFLPF5.js"; import "../__chunks/W6MTWV42.js"; import { useComposite } from "../__chunks/NLF4OZJK.js"; import "../__chunks/7NJRHOSP.js"; import "../__chunks/55ENK5IP.js"; import "../__chunks/NO3UEYQ2.js"; import "../__chunks/3F6D4KUU.js"; import "../__chunks/SWN3JYXT.js"; import { useStoreState } from "../__chunks/SOQQIDO4.js"; import "../__chunks/CTVD4XJH.js"; import { createElement, createHook, forwardRef } from "../__chunks/L4OUMOCQ.js"; import { useWrapElement } from "../__chunks/W2TDKEPX.js"; import "../__chunks/AZVQSWGA.js"; // src/toolbar/toolbar.tsx import { jsx } from "react/jsx-runtime"; var TagName = "div"; var useToolbar = createHook( function useToolbar2({ store: storeProp, orientation: orientationProp, virtualFocus, focusLoop, rtl, ...props }) { const context = useToolbarProviderContext(); storeProp = storeProp || context; const store = useToolbarStore({ store: storeProp, orientation: orientationProp, virtualFocus, focusLoop, rtl }); const orientation = useStoreState( store, (state) => state.orientation === "both" ? void 0 : state.orientation ); props = useWrapElement( props, (element) => /* @__PURE__ */ jsx(ToolbarScopedContextProvider, { value: store, children: element }), [store] ); props = { role: "toolbar", "aria-orientation": orientation, ...props }; props = useComposite({ store, ...props }); return props; } ); var Toolbar = forwardRef(function Toolbar2(props) { const htmlProps = useToolbar(props); return createElement(TagName, htmlProps); }); export { Toolbar, useToolbar };