@teknim/rjsf-mantine
Version:
Mantine theme, fields and widgets for react-jsonschema-form
25 lines • 1.46 kB
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
import { ActionIcon } from '@mantine/core';
import { TranslatableString } from '@rjsf/utils';
import { Copy, ChevronDown, ChevronUp, X } from '../icons';
export default function IconButton(props) {
const { icon, iconType, color, onClick, uiSchema, registry, ...otherProps } = props;
return (_jsx(ActionIcon, { size: iconType, color: color, onClick: onClick, ...otherProps, children: icon }));
}
export function CopyButton(props) {
const { registry: { translateString }, } = props;
return (_jsx(IconButton, { title: translateString(TranslatableString.CopyButton), variant: 'subtle', ...props, icon: _jsx(Copy, {}) }));
}
export function MoveDownButton(props) {
const { registry: { translateString }, } = props;
return (_jsx(IconButton, { title: translateString(TranslatableString.MoveDownButton), variant: 'subtle', ...props, icon: _jsx(ChevronDown, {}) }));
}
export function MoveUpButton(props) {
const { registry: { translateString }, } = props;
return (_jsx(IconButton, { title: translateString(TranslatableString.MoveUpButton), variant: 'subtle', ...props, icon: _jsx(ChevronUp, {}) }));
}
export function RemoveButton(props) {
const { registry: { translateString }, } = props;
return (_jsx(IconButton, { title: translateString(TranslatableString.RemoveButton), variant: 'subtle', color: 'red', ...props, icon: _jsx(X, {}) }));
}
//# sourceMappingURL=IconButton.js.map