@stratakit/structures
Version:
Medium-sized component structures for the Strata design system
29 lines (28 loc) • 869 B
JavaScript
import { jsx } from "react/jsx-runtime";
import { Composite, useCompositeStore } from "@ariakit/react/composite";
import { Role } from "@ariakit/react/role";
import { forwardRef } from "@stratakit/foundations/secret-internals";
import cx from "classnames";
import { useInit } from "./~utils.useInit.js";
import { Action as TreeItemAction, Root as TreeItemRoot } from "./TreeItem.js";
const Tree = forwardRef((props, forwardedRef) => {
useInit();
const composite = useCompositeStore({
orientation: "vertical"
});
return /* @__PURE__ */ jsx(Role.div, {
role: "tree",
...props,
render: /* @__PURE__ */ jsx(Composite, {
store: composite
}),
className: cx("\u{1F95D}Tree", props.className),
ref: forwardedRef,
children: props.children
});
});
export {
TreeItemRoot as Item,
TreeItemAction as ItemAction,
Tree as Root
};