From 9939a60a4a15a414169bd6fefe6ff4b8a5ef2538 Mon Sep 17 00:00:00 2001
From: chauhan-varun
Date: Sat, 14 Jun 2025 22:21:47 +0530
Subject: [PATCH] fix: Feedback Form Submits Empty String
---
components/DocsHelp.tsx | 28 ++++++++++++++++++++++++----
1 file changed, 24 insertions(+), 4 deletions(-)
diff --git a/components/DocsHelp.tsx b/components/DocsHelp.tsx
index 8fa21d48b..01b245b47 100644
--- a/components/DocsHelp.tsx
+++ b/components/DocsHelp.tsx
@@ -34,8 +34,17 @@ export function DocsHelp({
async function createFeedbackHandler(event: FormEvent) {
event.preventDefault();
const formData = new FormData(feedbackFormRef.current!);
+ const feedbackComment = formData.get('feedback-comment') as string;
+
+ // Validate that feedback comment is not empty
+ if (!feedbackComment || feedbackComment.trim() === '') {
+ setError('Please provide feedback before submitting.');
+ return;
+ }
+
formData.append('feedback-page', router.asPath);
setIsSubmitting(true);
+ setError(''); // Clear any previous errors
try {
const response = await fetch(
@@ -49,7 +58,7 @@ export function DocsHelp({
body: JSON.stringify({
feedbackPage: formData.get('feedback-page'),
feedbackVote: formData.get('feedback-vote'),
- feedbackComment: formData.get('feedback-comment'),
+ feedbackComment: feedbackComment,
}),
},
);
@@ -71,10 +80,20 @@ export function DocsHelp({
const createGitHubIssueHandler = () => {
const formData = new FormData(feedbackFormRef.current!);
+ const feedbackComment = formData.get('feedback-comment') as string;
+
+ // Validate that feedback comment is not empty
+ if (!feedbackComment || feedbackComment.trim() === '') {
+ setError('Please provide feedback before creating an issue.');
+ return;
+ }
+
setIsSubmitting(true);
+ setError(''); // Clear any previous errors
+
try {
const title = encodeURIComponent('Feedback on Documentation');
- const body = encodeURIComponent(`${formData.get('feedback-comment')}`);
+ const body = encodeURIComponent(feedbackComment);
const url = `https://github.com/json-schema-org/website/issues/new?title=${title}&body=${body}`;
window.open(url, '_blank');
@@ -192,7 +211,7 @@ export function DocsHelp({
Let us know your Feedback
- Optional
+ Required
@@ -201,6 +220,7 @@ export function DocsHelp({
name='feedback-comment'
id='feedback-comment'
data-test='feedback-form-input'
+ required
/>
@@ -292,7 +312,7 @@ export function DocsHelp({
)}
{error && (
-