1
0
Fork 0
mirror of https://github.com/muerwre/vault-frontend.git synced 2025-04-28 14:16:41 +07:00

#58 using formik at node submit form

This commit is contained in:
Fedor Katurov 2021-03-26 17:52:24 +07:00
parent 4b542e0291
commit b871cc2042
17 changed files with 230 additions and 423 deletions

View file

@ -3,23 +3,25 @@ import { IEditorComponentProps } from '~/redux/node/types';
import { Button } from '~/components/input/Button';
import { Icon } from '~/components/input/Icon';
import styles from './styles.module.scss';
import { Superpower } from '~/components/boris/Superpower';
import { useNodeFormContext } from '~/utils/hooks/useNodeFormFormik';
interface IProps extends IEditorComponentProps {}
const EditorPublicSwitch: FC<IProps> = ({ data, setData }) => {
const onChange = useCallback(() => setData({ ...data, is_promoted: !data.is_promoted }), [
data,
setData,
const EditorPublicSwitch: FC<IProps> = () => {
const { values, setFieldValue } = useNodeFormContext();
const onChange = useCallback(() => setFieldValue('is_promoted', !values.is_promoted), [
values.is_promoted,
setFieldValue,
]);
return (
<Button
color={data.is_promoted ? 'primary' : 'lab'}
color={values.is_promoted ? 'primary' : 'lab'}
type="button"
size="giant"
label={
data.is_promoted
values.is_promoted
? 'Доступно всем на главной странице'
: 'Видно только сотрудникам в лаборатории'
}
@ -27,7 +29,7 @@ const EditorPublicSwitch: FC<IProps> = ({ data, setData }) => {
className={styles.button}
round
>
{data.is_promoted ? (
{values.is_promoted ? (
<Icon icon="waves" size={24} />
) : (
<div className={styles.lab_wrapper}>