feat(submissions): Implement submissions page with paginated table

This commit introduces a new page for users to view their submissions in a structured and paginated table. This allows users to easily track their submission history and access key details.

The main changes include:
- A new page at `/submissions` to display the submissions list.
- A `SubmissionsTable` component to render submission data, including title, country, status, and a link to the submission URL.
- Integration of `react-paginate` to handle navigation through large sets of data.
- A new `useSubmissions` custom hook using TanStack Query for efficient, paginated data fetching from the API.
- Addition of the `currency-symbol-map` dependency to display prices with the correct currency symbol.
This commit is contained in:
AmirReza Jamali
2025-09-18 16:52:46 +03:30
parent 2f2114eba9
commit e1898bf259
24 changed files with 411 additions and 86 deletions
+26
View File
@@ -344,6 +344,32 @@ export function GoogleIcon(props: IconProps) {
</svg>
);
}
export function LocationIcon(props: IconProps) {
return (
<svg
width="24"
height="24"
viewBox="0 -960 960 960"
fill="currentColor"
{...props}
>
<path d="M480-480q33 0 56.5-23.5T560-560q0-33-23.5-56.5T480-640q-33 0-56.5 23.5T400-560q0 33 23.5 56.5T480-480Zm0 294q122-112 181-203.5T720-552q0-109-69.5-178.5T480-800q-101 0-170.5 69.5T240-552q0 71 59 162.5T480-186Zm0 106Q319-217 239.5-334.5T160-552q0-150 96.5-239T480-880q127 0 223.5 89T800-552q0 100-79.5 217.5T480-80Zm0-480Z" />
</svg>
);
}
export function ExclamationIcon(props: IconProps) {
return (
<svg
width="24"
height="24"
viewBox="0 -960 960 960"
fill="currentColor"
{...props}
>
<path d="M440-400v-360h80v360h-80Zm0 200v-80h80v80h-80Z" />
</svg>
);
}
export function CrossIcon(props: IconProps) {
return (
<svg