UNPKG

@aokiapp/rjsf-mantine-theme

Version:

Mantine theme, fields and widgets for react-jsonschema-form

27 lines 1.59 kB
import { jsx as _jsx } from "react/jsx-runtime"; import { ActionIcon } from '@mantine/core'; import { TranslatableString } from '@rjsf/utils'; import { IconChevronDown, IconChevronUp, IconCopy, IconTrash } from '@tabler/icons-react'; function IconButton(props) { // eliminate uiSchema and registry from props, which are not accepted by ActionIcon const { iconType, icon, uiSchema: _uiSchema, registry: _registry, color, title, ...rest } = props; return (_jsx(ActionIcon, { size: iconType, variant: 'light', color: color, "aria-label": title, title: title, role: 'button', ...rest, children: icon })); } export default IconButton; export function CopyButton(props) { const { registry: { translateString }, } = props; return _jsx(IconButton, { title: translateString(TranslatableString.CopyButton), ...props, icon: _jsx(IconCopy, {}) }); } export function MoveDownButton(props) { const { registry: { translateString }, } = props; return (_jsx(IconButton, { title: translateString(TranslatableString.MoveDownButton), ...props, icon: _jsx(IconChevronDown, {}) })); } export function MoveUpButton(props) { const { registry: { translateString }, } = props; return _jsx(IconButton, { title: translateString(TranslatableString.MoveUpButton), ...props, icon: _jsx(IconChevronUp, {}) }); } export function RemoveButton(props) { const { registry: { translateString }, } = props; return (_jsx(IconButton, { title: translateString(TranslatableString.RemoveButton), color: 'red', ...props, icon: _jsx(IconTrash, {}) })); } //# sourceMappingURL=IconButton.js.map