import { Form, Formik, FormikHelpers, useFormikContext } from 'formik'; import React, { useEffect } from 'react'; import tw from 'twin.macro'; import { array, boolean, object, string } from 'yup'; import { Egg, EggVariable } from '@/api/admin/eggs/getEgg'; import updateEggVariables from '@/api/admin/eggs/updateEggVariables'; import AdminBox from '@/components/admin/AdminBox'; import Button from '@/components/elements/Button'; import Checkbox from '@/components/elements/Checkbox'; import Field, { FieldRow, TextareaField } from '@/components/elements/Field'; import SpinnerOverlay from '@/components/elements/SpinnerOverlay'; import useFlash from '@/plugins/useFlash'; function EggVariableForm ({ variable: { name }, i }: { variable: EggVariable, i: number }) { const { isSubmitting } = useFormikContext(); return ( {name}

}>
); } export default function EggVariablesContainer ({ egg }: { egg: Egg }) { const { clearAndAddHttpError } = useFlash(); const submit = (values: EggVariable[], { setSubmitting }: FormikHelpers) => { updateEggVariables(egg.id, values) .then(variables => console.log(variables)) .catch(error => clearAndAddHttpError({ key: 'egg', error })) .then(() => setSubmitting(false)); }; useEffect(() => { console.log(egg.relations?.variables || []); }, []); return ( {({ isSubmitting, isValid }) => (
{egg.relations?.variables?.map((v, i) => )}
)}
); }