@dnb/eufemia
Version:
DNB Eufemia Design System UI Library
38 lines (37 loc) • 1.43 kB
JavaScript
"use client";
import _extends from "@babel/runtime-corejs3/helpers/esm/extends";
var _PreviousButton, _NextButton;
import React, { useContext } from 'react';
import classnames from 'classnames';
import ButtonRow from "../../Form/ButtonRow/index.js";
import NextButton from "../NextButton/index.js";
import PreviousButton from "../PreviousButton/index.js";
import WizardContext from "../Context/index.js";
import DataContext from "../../DataContext/Context.js";
function Buttons(props) {
const {
className
} = props;
const {
activeIndex,
totalStepsRef
} = useContext(WizardContext) || {};
const totalSteps = (totalStepsRef === null || totalStepsRef === void 0 ? void 0 : totalStepsRef.current) || 0;
const showPreviousButton = activeIndex > 0;
const showNextButton = activeIndex < totalSteps - 1;
const {
prerenderFieldProps
} = useContext(DataContext);
if (prerenderFieldProps) {
return null;
}
if (!showPreviousButton && !showNextButton) {
return null;
}
return React.createElement(ButtonRow, _extends({
className: classnames('dnb-forms-buttons', className)
}, props), showPreviousButton && (_PreviousButton || (_PreviousButton = React.createElement(PreviousButton, null))), showNextButton && (_NextButton || (_NextButton = React.createElement(NextButton, null))));
}
Buttons._supportsSpacingProps = true;
export default Buttons;
//# sourceMappingURL=Buttons.js.map