UNPKG

@dnb/eufemia

Version:

DNB Eufemia Design System UI Library

42 lines (41 loc) 1.52 kB
"use client"; import _extends from "@babel/runtime/helpers/esm/extends"; import React, { useContext } from 'react'; import classnames from 'classnames'; import { ListContext } from "./ListContext.js"; import FlexContainer from "../flex/Stack.js"; import SharedContext from "../../shared/Context.js"; function ListContainer(props) { var _ref; const { className, children, variant = 'basic', separated = false, skeleton, disabled, wrapChildrenInSpace = false, ...rest } = props; const parentContext = useContext(ListContext); const globalContext = useContext(SharedContext); const appliedSkeleton = (_ref = skeleton !== null && skeleton !== void 0 ? skeleton : parentContext?.skeleton) !== null && _ref !== void 0 ? _ref : globalContext?.skeleton; const appliedDisabled = disabled !== null && disabled !== void 0 ? disabled : parentContext?.disabled; return React.createElement(ListContext.Provider, { value: { variant, separated, skeleton: appliedSkeleton, disabled: appliedDisabled } }, React.createElement(FlexContainer, _extends({ element: "ul", rowGap: separated ? 'small' : false, wrap: false, wrapChildrenInSpace: wrapChildrenInSpace, className: classnames("dnb-list dnb-list__container", className, variant && `dnb-list--variant-${variant}`, separated && 'dnb-list--separated') }, rest), children)); } ListContainer._supportsSpacingProps = true; export default ListContainer; //# sourceMappingURL=Container.js.map