@dnb/eufemia
Version:
DNB Eufemia Design System UI Library
42 lines (41 loc) • 1.46 kB
JavaScript
"use client";
import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
import React, { useContext } from 'react';
import classnames from 'classnames';
import FlexItem from "../flex/Item.js";
import { ListContext } from "./ListContext.js";
import { createSkeletonClass } from "../skeleton/SkeletonHelper.js";
import Context from "../../shared/Context.js";
function ItemEnd(props) {
var _useContext;
const {
fontWeight = 'medium',
fontSize = 'basis',
skeleton,
className,
children,
...rest
} = props;
const context = useContext(Context);
const inheritedSkeleton = (_useContext = useContext(ListContext)) === null || _useContext === void 0 ? void 0 : _useContext.skeleton;
const appliedSkeleton = skeleton !== null && skeleton !== void 0 ? skeleton : inheritedSkeleton;
const content = React.createElement(FlexItem, _extends({
className: classnames('dnb-list__item__end', className, fontSize && `dnb-t__size--${fontSize}`, appliedSkeleton && createSkeletonClass('font', true), fontWeight === 'medium' && 'dnb-t__weight--medium'),
innerSpace: {
left: 'small',
right: 'medium'
}
}, rest), children);
if (appliedSkeleton) {
return React.createElement(Context.Provider, {
value: {
...context,
skeleton: appliedSkeleton
}
}, content);
}
return content;
}
ItemEnd._supportsSpacingProps = true;
export default ItemEnd;
//# sourceMappingURL=ItemEnd.js.map