@rjsf/core
Version:
A simple React component capable of building HTML forms out of a JSON schema.
27 lines (26 loc) • 1.66 kB
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
import { TranslatableString } from '@rjsf/utils';
export default function IconButton(props) {
const { iconType = 'default', icon, className, uiSchema, registry, ...otherProps } = props;
return (_jsx("button", { type: 'button', className: `btn btn-${iconType} ${className}`, ...otherProps, children: _jsx("i", { className: `glyphicon glyphicon-${icon}` }) }));
}
export function CopyButton(props) {
const { registry: { translateString }, } = props;
return _jsx(IconButton, { title: translateString(TranslatableString.CopyButton), ...props, icon: 'copy' });
}
export function MoveDownButton(props) {
const { registry: { translateString }, } = props;
return _jsx(IconButton, { title: translateString(TranslatableString.MoveDownButton), ...props, icon: 'arrow-down' });
}
export function MoveUpButton(props) {
const { registry: { translateString }, } = props;
return _jsx(IconButton, { title: translateString(TranslatableString.MoveUpButton), ...props, icon: 'arrow-up' });
}
export function RemoveButton(props) {
const { registry: { translateString }, } = props;
return (_jsx(IconButton, { title: translateString(TranslatableString.RemoveButton), ...props, iconType: 'danger', icon: 'remove' }));
}
export function ClearButton({ id, className, onClick, disabled, registry, ...props }) {
const { translateString } = registry;
return (_jsx(IconButton, { id: id, iconType: 'default', icon: 'remove', className: 'btn-clear col-xs-12', title: translateString(TranslatableString.ClearButton), onClick: onClick, disabled: disabled, registry: registry, ...props }));
}