UNPKG

@dnb/eufemia

Version:

DNB Eufemia Design System UI Library

65 lines (64 loc) 2.17 kB
"use strict"; "use client"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _react = require("react"); var _clsx = _interopRequireDefault(require("clsx")); var _Space = _interopRequireDefault(require("../space/Space.js")); var _SkeletonHelper = require("../skeleton/SkeletonHelper.js"); var _HeightAnimation = _interopRequireDefault(require("../height-animation/HeightAnimation.js")); var _StepIndicatorItem = _interopRequireDefault(require("./StepIndicatorItem.js")); var _StepIndicatorContext = _interopRequireDefault(require("./StepIndicatorContext.js")); var _jsxRuntime = require("react/jsx-runtime"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } function StepIndicatorList() { const { mode, skeleton, open, openHandler, closeHandler, countSteps, data, noAnimation } = (0, _react.useContext)(_StepIndicatorContext.default); const Element = mode === 'static' ? 'div' : 'nav'; const params = {}; (0, _SkeletonHelper.skeletonDOMAttributes)(params, skeleton); return (0, _jsxRuntime.jsx)(_HeightAnimation.default, { animate: !noAnimation, open: open, onOpen: state => { if (state) { openHandler(); } else { closeHandler(); } }, children: (0, _jsxRuntime.jsx)(_Space.default, { innerSpace: { top: 'small' }, children: (0, _jsxRuntime.jsx)(Element, { ...params, className: (0, _clsx.default)('dnb-step-indicator', (0, _SkeletonHelper.createSkeletonClass)('font', skeleton)), children: countSteps > 0 && (0, _jsxRuntime.jsx)("ol", { className: "dnb-step-indicator__list", children: data.map((itemData, i) => { const item = typeof itemData === 'string' ? { title: itemData } : itemData; return (0, _jsxRuntime.jsx)(_StepIndicatorItem.default, { currentItemNum: i, ...item }, i); }) }) }) }) }); } var _default = exports.default = StepIndicatorList; //# sourceMappingURL=StepIndicatorList.js.map