UNPKG

@hitachivantara/uikit-react-core

Version:

Core React components for the NEXT Design System.

75 lines (74 loc) 2.22 kB
"use strict"; Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const jsxRuntime = require("react/jsx-runtime"); const React = require("react"); const uikitReactUtils = require("@hitachivantara/uikit-react-utils"); const useHvTreeItem = require("./useHvTreeItem.cjs"); const { useClasses } = uikitReactUtils.createClasses("HvTreeContent", { root: {}, expanded: {}, selected: {}, focused: {}, disabled: {}, iconContainer: {}, label: {} }); const DefaultContent = React.forwardRef( function DefaultContent2(props, ref) { const { classes: classesProp, className, displayIcon, expansionIcon, icon: iconProp, label, nodeId, onClick, onMouseDown, ...others } = props; const { classes } = useClasses(classesProp); const { cx } = uikitReactUtils.useCss(); const { disabled, expanded, selected, focused, handleExpansion, handleSelection, preventSelection } = useHvTreeItem.useHvTreeItem(nodeId); const icon = iconProp ?? expansionIcon ?? displayIcon; return ( /* eslint-disable-next-line jsx-a11y/click-events-have-key-events,jsx-a11y/no-static-element-interactions -- Key event is handled by the TreeView */ /* @__PURE__ */ jsxRuntime.jsxs( "div", { ...others, className: cx(className, classes.root, { [classes.expanded]: expanded, [classes.selected]: selected, [classes.focused]: focused, [classes.disabled]: disabled }), onClick: (event) => { handleExpansion(event); handleSelection(event); onClick?.(event); }, onMouseDown: (event) => { preventSelection(event); onMouseDown?.(event); }, ref, children: [ /* @__PURE__ */ jsxRuntime.jsx("div", { className: classes.iconContainer, children: icon }), /* @__PURE__ */ jsxRuntime.jsx("div", { className: classes.label, children: label }) ] } ) ); } ); exports.DefaultContent = DefaultContent; exports.useClasses = useClasses;