UNPKG

@base-ui/react

Version:

Base UI is a library of headless ('unstyled') React components and low-level hooks. You gain complete control over your app's CSS and accessibility features.

37 lines (36 loc) 995 B
"use strict"; 'use client'; Object.defineProperty(exports, "__esModule", { value: true }); exports.CompositeItem = CompositeItem; var _empty = require("@base-ui/utils/empty"); var _useRenderElement = require("../../useRenderElement"); var _useCompositeItem = require("./useCompositeItem"); function CompositeItem(componentProps) { const { render, className, style, state = _empty.EMPTY_OBJECT, props = _empty.EMPTY_ARRAY, refs = _empty.EMPTY_ARRAY, metadata, stateAttributesMapping, tag = 'div', ...elementProps } = componentProps; const { compositeProps, compositeRef } = (0, _useCompositeItem.useCompositeItem)({ metadata }); return (0, _useRenderElement.useRenderElement)(tag, componentProps, { state, // The composite ref attaches first so an outer item wins when nested items share a DOM node. ref: [compositeRef, ...refs], props: [compositeProps, ...props, elementProps], stateAttributesMapping }); }