@@ -47,15 +58,24 @@ export function CardsWithPagination(props: CardsWithPaginationProps) {
))}
-
+
+ {showSizeSelector && (
+
+ )}
+
+
);
}
diff --git a/src/components/wrappers/common/pagination/pagination-size.tsx b/src/components/wrappers/common/pagination/pagination-size.tsx
new file mode 100644
index 00000000..67f631f9
--- /dev/null
+++ b/src/components/wrappers/common/pagination/pagination-size.tsx
@@ -0,0 +1,35 @@
+import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select";
+import { cn } from "@/lib/utils";
+
+export type PaginationSizeProps = {
+ className?: string;
+ pageSize: number;
+ onPageSizeChange: (size: number) => void;
+ pageSizeOptions?: number[];
+};
+
+export const PaginationSize = (props: PaginationSizeProps) => {
+ const { className, onPageSizeChange, pageSizeOptions = [10, 20, 30, 40, 50] } = props;
+ const effectivePageSize = pageSizeOptions.includes(props.pageSize) ? props.pageSize : pageSizeOptions[0];
+
+ return (
+