UNPKG

@open-formulieren/formio-builder

Version:

An opinionated Formio webform builder for Open Forms

13 lines (12 loc) 897 B
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime"; import clsx from 'clsx'; /** * Render a button group with the available and active modes. * * This component is generic - pass a union of the possible mode values for strict type * checking: `<ModeToggle<'mode1' | 'mode2'>>` */ function ModeToggle({ name, modes, currentMode, onToggle, className, btnClassName = 'btn-secondary', }) { return (_jsx("div", Object.assign({ className: clsx('btn-group', 'btn-group-toggle', className) }, { children: modes.map(({ value, label }) => (_jsxs("label", Object.assign({ className: clsx('btn', 'btn-sm', btnClassName, { active: value === currentMode }) }, { children: [_jsx("input", { type: "radio", name: name, value: value, autoComplete: "off", checked: value === currentMode, onChange: event => onToggle(event.target.value) }), label] }), value))) }))); } export default ModeToggle;