diff --git a/src/components/Componentes/question-date-sheet.tsx b/src/components/Componentes/question-date-sheet.tsx
index 1fd0854..7ecde83 100644
--- a/src/components/Componentes/question-date-sheet.tsx
+++ b/src/components/Componentes/question-date-sheet.tsx
@@ -11,6 +11,7 @@ import {
import { createPortal } from "react-dom";
import type { QuestionField } from "@/lib/schema-adapter";
import { useI18n } from "@/translations/provider";
+import { Button } from "./button";
import { useSheetScrollLock } from "./use-sheet-scroll-lock";
const EXIT_ANIMATION_MS = 300;
@@ -349,6 +350,21 @@ export function QuestionDateSheet({
/>
+
+
+
,
diff --git a/src/components/Componentes/question-date.test.tsx b/src/components/Componentes/question-date.test.tsx
index 9321f95..0f601dc 100644
--- a/src/components/Componentes/question-date.test.tsx
+++ b/src/components/Componentes/question-date.test.tsx
@@ -1,4 +1,4 @@
-import { fireEvent, render, screen } from "@testing-library/react";
+import { cleanup, fireEvent, render, screen } from "@testing-library/react";
import { beforeEach, describe, expect, it, vi } from "vitest";
import type { QuestionField } from "@/lib/schema-adapter";
import { QuestionDate } from "./question-date";
@@ -36,6 +36,7 @@ const question = {
describe("QuestionDate", () => {
beforeEach(() => {
+ cleanup();
answerValue = null;
});
@@ -57,4 +58,16 @@ describe("QuestionDate", () => {
const yearWheel = screen.getByLabelText("Year");
expect(yearWheel.textContent).not.toMatch(/[,٬]/);
});
+
+ it("handles invalid date strings gracefully without throwing RangeError", () => {
+ answerValue = "Mortezaei";
+ const { rerender } = render();
+ expect(screen.queryByText("Age")).toBeNull();
+ expect(screen.getByText("Select date")).toBeDefined();
+
+ answerValue = "invalid-date-format";
+ rerender();
+ expect(screen.queryByText("Age")).toBeNull();
+ expect(screen.getByText("Select date")).toBeDefined();
+ });
});