UNPKG

@hitachivantara/uikit-react-lab

Version:

Contributed React components for the NEXT UI Kit.

57 lines (56 loc) 1.63 kB
"use strict"; Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const jsxRuntime = require("react/jsx-runtime"); const uikitReactCore = require("@hitachivantara/uikit-react-core"); const utils = require("./utils.cjs"); const Step = require("./Step/Step.cjs"); const HvDefaultNavigation = ({ numSteps, stepSize, getTitles, getDynamicValues, className, children, ...other }) => { const { activeTheme } = uikitReactCore.useTheme(); const { container: maxSize, avatar: minSize } = utils.stepSizes[stepSize]; const StepComponent = Step.HvStep; const stepsWidth = maxSize + minSize * (numSteps - 1); const { width, titleWidth, separatorWidth } = getDynamicValues(stepsWidth); const maxWidth = Math.max(titleWidth - minSize, separatorWidth); const minWidth = Math.max( titleWidth - (maxSize + minSize) * 0.5, separatorWidth ); const Steps = children; const titles = getTitles(({ state }) => ({ variant: "label", titleWidth, titleDisabled: state === "Disabled" })); return /* @__PURE__ */ jsxRuntime.jsxs("div", { ...other, children: [ /* @__PURE__ */ jsxRuntime.jsx( Steps, { ...{ stepsWidth, navWidth: width, separatorValues: { minWidth, maxWidth, getColor: utils.getColor, height: activeTheme?.stepNavigation.defaultSeparatorHeight || 0 }, stepValues: { minSize, maxSize, StepComponent } } } ), titles ] }); }; exports.HvDefaultNavigation = HvDefaultNavigation;