UNPKG

@rjsf/antd

Version:

Ant Design theme, fields and widgets for react-jsonschema-form

35 lines 2.14 kB
import { jsx as _jsx } from "react/jsx-runtime"; import { Button } from 'antd'; import ArrowDownOutlined from '@ant-design/icons/ArrowDownOutlined'; import ArrowUpOutlined from '@ant-design/icons/ArrowUpOutlined'; import CopyOutlined from '@ant-design/icons/CopyOutlined'; import DeleteOutlined from '@ant-design/icons/DeleteOutlined'; import PlusCircleOutlined from '@ant-design/icons/PlusCircleOutlined'; import { getUiOptions, TranslatableString, } from '@rjsf/utils'; export default function IconButton(props) { const { iconType = 'default', icon, onClick, uiSchema, registry, ...otherProps } = props; return (_jsx(Button, { onClick: onClick, type: iconType, icon: icon, ...otherProps })); } export function AddButton(props) { const { registry: { translateString }, } = props; return (_jsx(IconButton, { title: translateString(TranslatableString.AddItemButton), ...props, block: true, iconType: 'primary', icon: _jsx(PlusCircleOutlined, {}) })); } export function CopyButton(props) { const { registry: { translateString }, } = props; return _jsx(IconButton, { title: translateString(TranslatableString.CopyButton), ...props, icon: _jsx(CopyOutlined, {}) }); } export function MoveDownButton(props) { const { registry: { translateString }, } = props; return (_jsx(IconButton, { title: translateString(TranslatableString.MoveDownButton), ...props, icon: _jsx(ArrowDownOutlined, {}) })); } export function MoveUpButton(props) { const { registry: { translateString }, } = props; return _jsx(IconButton, { title: translateString(TranslatableString.MoveUpButton), ...props, icon: _jsx(ArrowUpOutlined, {}) }); } export function RemoveButton(props) { // The `block` prop is not part of the `IconButtonProps` defined in the template, so get it from the uiSchema instead const options = getUiOptions(props.uiSchema); const { registry: { translateString }, } = props; return (_jsx(IconButton, { title: translateString(TranslatableString.RemoveButton), ...props, danger: true, block: !!options.block, iconType: 'primary', icon: _jsx(DeleteOutlined, {}) })); } //# sourceMappingURL=index.js.map