UNPKG

@rjsf/mui

Version:

Material UI 7 theme, fields and widgets for react-jsonschema-form

22 lines 1.3 kB
import { jsx as _jsx } from "react/jsx-runtime"; import IconButton, { RemoveButton } from '../IconButton/index.js'; import AddIcon from '@mui/icons-material/Add'; /** The OptionalDataControlsTemplate renders one of three different states. If * there is an `onAddClick()` function, it renders the "Add" button. If there is * an `onRemoveClick()` function, it renders the "Remove" button. Otherwise it * renders the "No data found" section. All of them use the `label` as either * the `title` of buttons or simply outputting it. * * @param props - The `OptionalDataControlsTemplateProps` for the template */ export default function OptionalDataControlsTemplate(props) { const { id, registry, label, onAddClick, onRemoveClick, uiSchema } = props; if (onAddClick) { return (_jsx(IconButton, { id: id, registry: registry, uiSchema: uiSchema, className: 'rjsf-add-optional-data', onClick: onAddClick, title: label, icon: _jsx(AddIcon, { fontSize: 'small' }) })); } else if (onRemoveClick) { return (_jsx(RemoveButton, { id: id, registry: registry, uiSchema: uiSchema, className: 'rjsf-remove-optional-data', onClick: onRemoveClick, title: label })); } return _jsx("em", { id: id, children: label }); } //# sourceMappingURL=OptionalDataControlsTemplate.js.map