From 5b43741d7494185930c2236409675836a21b28ca Mon Sep 17 00:00:00 2001
From: AmirReza Jamali
Date: Tue, 7 Jul 2026 12:55:41 +0330
Subject: [PATCH] Fix marketing validation and filter reset issues
---
src/app/marketing/_components/FooterStep.tsx | 8 ++++++-
src/app/marketing/_components/HeroStep.tsx | 4 ++++
src/app/providers.tsx | 1 +
.../customers/useCustomerListPresenter.ts | 24 +++++++++++++------
4 files changed, 29 insertions(+), 8 deletions(-)
diff --git a/src/app/marketing/_components/FooterStep.tsx b/src/app/marketing/_components/FooterStep.tsx
index 965254d..503eb3f 100644
--- a/src/app/marketing/_components/FooterStep.tsx
+++ b/src/app/marketing/_components/FooterStep.tsx
@@ -1,6 +1,7 @@
"use client";
import InputGroup from "@/components/FormElements/InputGroup";
import { TextAreaGroup } from "@/components/FormElements/InputGroup/text-area";
+import { createPhoneFieldRules } from "@/components/FormElements/PhoneNumberInput";
import { ShowcaseSection } from "@/components/Layouts/showcase-section";
import { FormErrorMessages } from "@/constants/Texts";
import { forwardRef } from "react";
@@ -46,11 +47,16 @@ const FooterStep = forwardRef(
)}
+ {errors.phone && (
+
+ {errors.phone.message as string}
+
+ )}
(({ initialData, onValidityCh
value: 200,
message: FormErrorMessages.maxLength(200),
},
+ pattern: {
+ value: REGEX.URL,
+ message: FormErrorMessages.invalidPattern,
+ },
})}
label="Button Link"
name="button_link"
diff --git a/src/app/providers.tsx b/src/app/providers.tsx
index 73871f1..ac442ae 100644
--- a/src/app/providers.tsx
+++ b/src/app/providers.tsx
@@ -20,6 +20,7 @@ export function Providers({ children }: { children: React.ReactNode }) {
{
};
const clearAllFilters = useCallback(() => {
- filterFormReset({
- status: undefined,
- role: undefined,
- type: undefined,
+ const clearedFilters = {
+ ...apiDefaultParams,
+ offset: 0,
+ limit: 10,
+ status: "",
+ role: "",
+ type: "",
full_name: "",
email: "",
- company_id: undefined,
- });
+ company_id: "",
+ };
+
+ filterFormReset(clearedFilters);
+ setFilterValue("status", "");
+ setFilterValue("role", "");
+ setFilterValue("type", "");
+ setFilterValue("company_id", "");
setCompanySearch("");
+ setParams(clearedFilters);
router.push(pathName);
- }, [pathName, router, filterFormReset]);
+ }, [pathName, router, filterFormReset, setFilterValue]);
const columns = [
"row",