import { useIntl } from 'react-intl'; import Checkbox from '../../components/Common/Checkbox'; import SubmitButton from '../../components/Common/SubmitButton'; import TextArea from '../../components/Common/TextArea'; import TextInput from '../../components/Common/TextInput'; import { useRSForm } from '../../context/RSFormContext'; import { useCallback, useEffect, useState } from 'react'; import Button from '../../components/Common/Button'; import { CrownIcon, DownloadIcon, DumpBinIcon, UploadIcon } from '../../components/Icons'; import { useUsers } from '../../context/UsersContext'; import { useNavigate } from 'react-router-dom'; import FileInput from '../../components/Common/FileInput'; function RSFormCard() { const navigate = useNavigate(); const intl = useIntl(); const { getUserLabel } = useUsers(); const { schema, upload, reload, isEditable, isClaimable, processing, destroy, claim } = useRSForm(); const [title, setTitle] = useState(''); const [alias, setAlias] = useState(''); const [comment, setComment] = useState(''); const [common, setCommon] = useState(false); const onSuccess = (data: any) => reload(); useEffect(() => { setTitle(schema!.title) setAlias(schema!.alias) setComment(schema!.comment) setCommon(schema!.is_common) }, [schema]); const handleSubmit = (event: React.FormEvent) => { event.preventDefault(); if (!processing) { const data = { 'title': title, 'alias': alias, 'comment': comment, 'is_common': common, }; upload(data, onSuccess); } }; const handleDelete = useCallback(() => { if (window.confirm('Вы уверены, что хотите удалить данную схему?')) { destroy(() => navigate('/rsforms?filter=owned')) } }, [destroy, navigate]); const handleClaimOwner = useCallback(() => { if (window.confirm('Вы уверены, что хотите стать владельцем данной схемы?')) { claim(() => reload()); } }, [claim, reload]); const handleUpload = useCallback(() => { }, []); const handleDownload = useCallback(() => { }, []); return (
setTitle(event.target.value)} /> setAlias(event.target.value)} />