From 62b647ab76a7066da1a11fdcebbbd31118dac72f Mon Sep 17 00:00:00 2001 From: Jeff Date: Wed, 10 Apr 2024 15:09:22 -0400 Subject: refactor: Moved handling API requests out of FlexibleForm --- src/components/FlexibleForm.js | 30 +++++++++--------------------- 1 file changed, 9 insertions(+), 21 deletions(-) (limited to 'src') diff --git a/src/components/FlexibleForm.js b/src/components/FlexibleForm.js index 831f972..d8c959d 100644 --- a/src/components/FlexibleForm.js +++ b/src/components/FlexibleForm.js @@ -2,27 +2,13 @@ import React from 'react'; import { Link } from "react-router-dom"; import logo from "../assets/img/logo.svg"; -const FlexibleForm = ({ data, onSuccess }) => { - const handleSubmit = async (event) => { - event.preventDefault(); - const formData = new FormData(event.target); - - try { - const response = await fetch(process.env.NEXT_PUBLIC_HOST + data.formAction, { - method: data.formMethod, - body: JSON.stringify(Object.fromEntries(formData)), - headers: { - 'Content-Type': 'application/json' - }, - }); - - const token = response.headers.get('Authorization'); - onSuccess(token); - - } catch (error) { - console.error('Error submitting form:', error); - } - } +const FlexibleForm = ({ data, onFormSubmit }) => { + const handleSubmit = (event) => { + event.preventDefault(); + if (typeof onFormSubmit === 'function') { + onFormSubmit(event); + } + }; return (
@@ -56,6 +42,8 @@ const FlexibleForm = ({ data, onSuccess }) => { type={field.type} autoComplete={field.autoComplete} required={field.required} + value={field.value} + onChange={field.onChange} className="block w-full rounded-md border-0 py-1.5 text-gray-900 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-indigo-600 sm:text-sm sm:leading-6" />
-- cgit v1.2.3-70-g09d2