UNPKG

@tomino/dynamic-form-semantic-ui

Version:

Semantic UI form renderer based on dynamic form generation

24 lines 1.59 kB
import React from 'react'; import { Modal, Menu, Button, Input } from 'semantic-ui-react'; import { modalActions } from './editor_styles'; import { config } from '@tomino/dynamic-form'; import { EditorContext } from './editor_context'; export const ModalDuplicate = () => { const editorState = React.useContext(EditorContext); const [open, changeOpen] = React.useState(false); const [name, setName] = React.useState(editorState.project ? editorState.project.form.props.label + ' (clone)' : ''); return (React.createElement(Modal, { trigger: React.createElement(Menu.Item, { icon: 'clone', title: config.i18n `Duplicate current form`, onClick: () => { editorState.project && changeOpen(true); } }), open: open }, React.createElement(Modal.Header, null, config.i18n `Duplicate Current Form`), React.createElement(Modal.Content, null, React.createElement(Modal.Description, null, React.createElement(Input, { fluid: true, label: "Name:", labelPosition: "left", value: name, onChange: e => setName(e.currentTarget.value) }), React.createElement("div", { className: modalActions }, React.createElement(Button, { onClick: () => changeOpen(false) }, "Close"), React.createElement(Button, { onClick: () => { editorState.duplicateProject(name); changeOpen(false); }, icon: "file", color: "green", content: "Duplicate" })))))); }; //# sourceMappingURL=modal_duplicate.js.map