From fef011c4d32bad32237399075429526b77e92e0b Mon Sep 17 00:00:00 2001 From: Renato Teixeira Date: Mon, 30 Mar 2026 22:39:15 -0300 Subject: [PATCH 1/6] refactor: update table components for improved empty state and search input UX --- src/shared/components/Table/Table/Table.tsx | 4 +-- .../Table/TableEmpty/TableEmpty.tsx | 7 ++-- .../components/Table/TableHead/TableHead.tsx | 33 ++++++++++++------- 3 files changed, 29 insertions(+), 15 deletions(-) diff --git a/src/shared/components/Table/Table/Table.tsx b/src/shared/components/Table/Table/Table.tsx index f4c6c87..879cb9f 100644 --- a/src/shared/components/Table/Table/Table.tsx +++ b/src/shared/components/Table/Table/Table.tsx @@ -116,8 +116,8 @@ export function Table(props: TableProps) { ) : ( <> -
- +
+
{columns.map((col) => { diff --git a/src/shared/components/Table/TableEmpty/TableEmpty.tsx b/src/shared/components/Table/TableEmpty/TableEmpty.tsx index fafadcd..14fec18 100644 --- a/src/shared/components/Table/TableEmpty/TableEmpty.tsx +++ b/src/shared/components/Table/TableEmpty/TableEmpty.tsx @@ -1,9 +1,12 @@ +import { MessageSquareX } from "lucide-react"; import type { TableEmptyProps } from "./TableEmpty.types"; export function TableEmpty({ context, emptyState }: TableEmptyProps) { return ( -
-

+

+ + +

{emptyState ?? (context ? `No ${context} found` : "No registers found")}

diff --git a/src/shared/components/Table/TableHead/TableHead.tsx b/src/shared/components/Table/TableHead/TableHead.tsx index ba234e7..31b7d39 100644 --- a/src/shared/components/Table/TableHead/TableHead.tsx +++ b/src/shared/components/Table/TableHead/TableHead.tsx @@ -1,4 +1,4 @@ -import { InputField } from "@/shared/components/InputField"; +import clsx from "clsx"; import type { TableHeadProps } from "./TableHead.types"; import { SearchIcon } from "lucide-react"; @@ -7,19 +7,30 @@ export function TableHead({ searchable, query, pageSize, pageSizeOptions, setQue
{searchable && ( - } - value={query} - onChange={(e) => setQuery(e.target.value)} - /> +
+ {!query && ( + + + + )} + + setQuery(e.target.value)} + /> +
)}
-
+