diff --git a/src/admin/clients/ClientsPage.jsx b/src/admin/clients/ClientsPage.jsx index 1b01f19..fe44c29 100644 --- a/src/admin/clients/ClientsPage.jsx +++ b/src/admin/clients/ClientsPage.jsx @@ -123,7 +123,8 @@ const ClientsPage = () => { {clients.length === 0 ? (

Нет клиентов

) : ( - +
+
@@ -231,6 +232,7 @@ const ClientsPage = () => { })}
+ )} diff --git a/src/admin/orders/KanbanBoard.jsx b/src/admin/orders/KanbanBoard.jsx index 31b0e5a..bc8837a 100644 --- a/src/admin/orders/KanbanBoard.jsx +++ b/src/admin/orders/KanbanBoard.jsx @@ -3,6 +3,7 @@ import { DndContext, closestCorners, DragOverlay, PointerSensor, useSensor, useS import { useOutletContext } from 'react-router-dom'; import { useOrders } from './useOrders'; import { useAuth } from '../auth/useAuth'; +import { useIsMobile } from '../../hooks/useIsMobile'; import KanbanColumn from './KanbanColumn'; import OrderCard from './OrderCard'; import OrderModal from './OrderModal'; @@ -13,6 +14,7 @@ const KanbanBoard = () => { const { ordersByStatus, loading, updateStatus } = useOrders(); const { session } = useAuth(); const { showNewOrder, setShowNewOrder } = useOutletContext() || {}; + const isMobile = useIsMobile(); const [activeOrder, setActiveOrder] = useState(null); const [selectedOrder, setSelectedOrder] = useState(null); @@ -85,13 +87,22 @@ const KanbanBoard = () => { return ( <> -
+
{STATUSES.map((status) => ( ))}
diff --git a/src/admin/orders/KanbanColumn.jsx b/src/admin/orders/KanbanColumn.jsx index c6cf6da..97b3a3d 100644 --- a/src/admin/orders/KanbanColumn.jsx +++ b/src/admin/orders/KanbanColumn.jsx @@ -10,11 +10,16 @@ const STATUS_COLORS = { 'закрыт': '#22c55e', }; -const KanbanColumn = ({ status, orders, onCardClick }) => { +const KanbanColumn = ({ status, orders, onCardClick, isMobile }) => { const { setNodeRef, isOver } = useDroppable({ id: status }); return ( -
+
{/* Header */}
{ const { session } = useAuth(); const { prices } = usePricing(); + const isMobile = useIsMobile(); const [form, setForm] = useState({ name: order?.name || '', phone: order?.phone || '', @@ -178,7 +180,7 @@ const OrderModal = ({ order, onClose, onSaved, mode = 'edit' }) => { style={{ position: 'fixed', inset: 0, background: 'rgba(15, 23, 42, 0.55)', - display: 'flex', alignItems: 'center', justifyContent: 'center', + display: 'flex', alignItems: isMobile ? 'flex-end' : 'center', justifyContent: 'center', zIndex: 1000, backdropFilter: 'blur(4px)', }} onClick={onClose} @@ -187,7 +189,16 @@ const OrderModal = ({ order, onClose, onSaved, mode = 'edit' }) => { ref={modalRef} tabIndex={-1} className="glass-panel" - style={{ width: '100%', maxWidth: '620px', maxHeight: '90vh', overflow: 'auto', padding: '30px', margin: '20px' }} + style={{ + width: '100%', + maxWidth: isMobile ? '100%' : '620px', + maxHeight: isMobile ? '92vh' : '90vh', + overflow: 'auto', + padding: isMobile ? '20px 16px' : '30px', + margin: isMobile ? '0' : '20px', + borderRadius: isMobile ? '20px 20px 0 0' : '16px', + alignSelf: isMobile ? 'flex-end' : 'center', + }} onClick={(e) => e.stopPropagation()} > {/* Header */} diff --git a/src/admin/users/UserManagementPage.jsx b/src/admin/users/UserManagementPage.jsx index 7d97b0a..72390b6 100644 --- a/src/admin/users/UserManagementPage.jsx +++ b/src/admin/users/UserManagementPage.jsx @@ -177,8 +177,8 @@ const UserManagementPage = () => { {loading ? (
Загрузка...
) : ( -
- +
+
Email