Merge pull request #64 from R0m1k3/1.1

1.1
This commit is contained in:
LogiFlow authored and GitHub committed 2025-08-12 22:31:39 +02:00
commit 19042cd689
7 files changed
+43 -11

No files matched your search

Binary file not shown.

After

Width:  |  Height:  |  Size: 333 KiB

+1 -1
View File
@@ -90,7 +90,7 @@ export default function Layout({ children }: LayoutProps) {
{/* Desktop Sidebar */}
{!isMobile && <Sidebar />}
<main className={`flex-1 flex flex-col ${
<main className={`flex-1 flex flex-col min-h-0 ${
isMobile ? 'ml-0' : sidebarCollapsed ? 'ml-16' : 'ml-64'
}`}>
{/* Header with store selector for admin */}
+30
View File
@@ -0,0 +1,30 @@
import { useState, useMemo, useEffect } from 'react';
export function usePagination<T>(data: T[], initialItemsPerPage: number = 10) {
const [currentPage, setCurrentPage] = useState(1);
const [itemsPerPage, setItemsPerPage] = useState(initialItemsPerPage);
const totalItems = data.length;
const totalPages = Math.ceil(totalItems / itemsPerPage);
// Reset to first page when data changes
useEffect(() => {
setCurrentPage(1);
}, [data.length, itemsPerPage]);
const paginatedData = useMemo(() => {
const startIndex = (currentPage - 1) * itemsPerPage;
const endIndex = startIndex + itemsPerPage;
return data.slice(startIndex, endIndex);
}, [data, currentPage, itemsPerPage]);
return {
currentPage,
setCurrentPage,
itemsPerPage,
setItemsPerPage,
totalPages,
totalItems,
paginatedData,
};
}
+2 -2
View File
@@ -674,8 +674,8 @@ export default function CustomerOrders() {
} = usePagination(sortedOrders, 10);
return (
<div className="flex-1 overflow-y-auto">
<div className="p-6 space-y-6">
<div className="flex-1 min-h-0 flex flex-col">
<div className="flex-1 overflow-y-auto p-6 space-y-6">
{/* Header */}
<div className="bg-white border-b border-gray-200 p-6 shadow-sm -m-6 mb-6">
<div className="flex items-center justify-between">
+2 -2
View File
@@ -218,8 +218,8 @@ export default function Dashboard() {
};
return (
<div className="flex-1 overflow-y-auto">
<div className="p-6 space-y-6">
<div className="flex-1 min-h-0 flex flex-col">
<div className="flex-1 overflow-y-auto p-6 space-y-6">
{/* Header */}
<div className="flex items-center justify-between">
<div>
+4 -3
View File
@@ -4,7 +4,8 @@ import { Button } from "@/components/ui/button";
import { Input } from "@/components/ui/input";
import { Badge } from "@/components/ui/badge";
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select";
import { Pagination, usePagination } from "@/components/ui/pagination";
import { Pagination } from "@/components/ui/pagination";
import { usePagination } from "@/hooks/usePagination";
import { useAuthUnified } from "@/hooks/useAuthUnified";
import { useStore } from "@/components/Layout";
import { useToast } from "@/hooks/use-toast";
@@ -255,8 +256,8 @@ export default function Deliveries() {
const canValidate = permissions.canValidate('deliveries');
return (
<div className="flex-1 overflow-y-auto">
<div className="p-6 space-y-6">
<div className="flex-1 min-h-0 flex flex-col">
<div className="flex-1 overflow-y-auto p-6 space-y-6">
{/* Header */}
<div className="bg-white border-b border-gray-200 p-6 shadow-sm -m-6 mb-6">
<div className="flex items-center justify-between">
+4 -3
View File
@@ -4,7 +4,8 @@ import { Button } from "@/components/ui/button";
import { Input } from "@/components/ui/input";
import { Badge } from "@/components/ui/badge";
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select";
import { Pagination, usePagination } from "@/components/ui/pagination";
import { Pagination } from "@/components/ui/pagination";
import { usePagination } from "@/hooks/usePagination";
import { useAuthUnified } from "@/hooks/useAuthUnified";
import { useStore } from "@/components/Layout";
import { useToast } from "@/hooks/use-toast";
@@ -226,8 +227,8 @@ export default function Orders() {
const canDelete = permissions.canDelete('orders');
return (
<div className="flex-1 overflow-y-auto">
<div className="p-6 space-y-6">
<div className="flex-1 min-h-0 flex flex-col">
<div className="flex-1 overflow-y-auto p-6 space-y-6">
{/* Header */}
<div className="bg-white border-b border-gray-200 p-6 shadow-sm -m-6 mb-6">
<div className="flex items-center justify-between">