Ou continuer avec
@@ -317,10 +314,10 @@ export function SignUpPage() {
-
+
Déjà un compte ?{" "}
-
+
Se connecter
diff --git a/ui/src/pages/support.tsx b/ui/src/pages/support.tsx
deleted file mode 100644
index 1bfc0bd..0000000
--- a/ui/src/pages/support.tsx
+++ /dev/null
@@ -1,191 +0,0 @@
-import { SupportTicketData, useCreateSupportTicket } from "@ui/hooks/support";
-import { Button } from "@ui/components/ui/button";
-import { Description, Label, TextArea, TextField } from "@ui/ui-library/field";
-import { Form } from "@ui/ui-library/form";
-import { Text } from "@ui/components/ui/typography";
-import { ArrowLeftIcon, SendIcon } from "lucide-react";
-import React, { useState } from "react";
-import { Separator } from "react-aria-components";
-import { useNavigate } from "react-router-dom";
-import { twMerge } from "tailwind-merge";
-
-export function SupportPage() {
- const navigate = useNavigate();
- const [formData, setFormData] = useState({
- issue_type: "bug",
- severity: "medium",
- title: "",
- description: "",
- });
-
- const { createSupportTicket, isSuccess, isPending } = useCreateSupportTicket();
-
- const handleSubmit = async (e: React.FormEvent) => {
- e.preventDefault();
- createSupportTicket(formData);
- };
-
- const handleInputChange = (field: keyof SupportTicketData, value: string) => {
- setFormData((prev) => ({ ...prev, [field]: value }));
- };
-
- return (
-
- {/* Header */}
-
-
-
-
- Support technique
-
- Signalez un problème ou demandez de l'aide
-
-
-
-
-
-
-
- {isSuccess ? (
-
-
-
-
-
- Votre ticket de support a été créé !
-
-
- Votre demande a été envoyée avec succès. Notre équipe de support vous répondra dans les
- plus brefs délais.
-
-
-
- ) : (
-
- )}
-
- );
-}
diff --git a/ui/src/pages/tablo.tsx b/ui/src/pages/tablo.tsx
index b9b1f3b..140688a 100644
--- a/ui/src/pages/tablo.tsx
+++ b/ui/src/pages/tablo.tsx
@@ -13,6 +13,15 @@ import {
SelectTrigger,
SelectValue,
} from "@ui/components/ui/select";
+import {
+ Empty,
+ EmptyContent,
+ EmptyDescription,
+ EmptyHeader,
+ EmptyTitle,
+} from "@ui/components/ui/empty";
+import { Button } from "@ui/components/ui/button";
+import { Text, TypographyH3, TypographyMuted } from "@ui/components/ui/typography";
import {
HelpCircle,
CheckCircle2,
@@ -22,6 +31,8 @@ import {
Shield,
LayoutGrid,
List,
+ Plus,
+ Trash2,
} from "lucide-react";
import { useEffect, useState } from "react";
import { useNavigate, useSearchParams } from "react-router-dom";
@@ -158,13 +169,13 @@ export const TabloPage = () => {
const getStatusBadgeColor = (status: string) => {
switch (status) {
case "todo":
- return "bg-gray-100 text-gray-700 dark:bg-gray-700 dark:text-gray-300";
+ return "bg-muted text-muted-foreground";
case "in_progress":
- return "bg-blue-100 text-blue-700 dark:bg-blue-900 dark:text-blue-300";
+ return "bg-primary/10 text-primary";
case "done":
- return "bg-green-100 text-green-700 dark:bg-green-900 dark:text-green-300";
+ return "bg-secondary text-secondary-foreground";
default:
- return "bg-gray-100 text-gray-700 dark:bg-gray-700 dark:text-gray-300";
+ return "bg-muted text-muted-foreground";
}
};
@@ -233,7 +244,7 @@ export const TabloPage = () => {
};
const getRoleColor = (tablo: UserTablo) => {
- return tablo.is_admin ? "text-blue-600 dark:text-blue-400" : "text-gray-500 dark:text-gray-400";
+ return tablo.is_admin ? "text-primary" : "text-muted-foreground";
};
// Calculate KPIs
@@ -265,32 +276,21 @@ export const TabloPage = () => {
if (isLoading) {
return (
-
-
Tablos
-
-
+
+
+
+
+
Tablos
+
+ Gérez vos projets et collaborations
+
+
+
+
-
+
@@ -304,39 +304,26 @@ export const TabloPage = () => {
if (error) {
return (
-
-
Tablos
-
-
+
+
+
+
+
Tablos
+
+ Gérez vos projets et collaborations
+
+
+
+
-
+
-
- Erreur lors du chargement des tablos
-
-
+
Erreur lors du chargement des tablos
+
{error instanceof Error ? error.message : "Une erreur inconnue s'est produite"}
@@ -361,7 +348,7 @@ export const TabloPage = () => {
}}
>
{
@@ -386,53 +373,21 @@ export const TabloPage = () => {
{/* Trash Icon - Only show for admins */}
{isAdmin && (
)}
{/* Read-only indicator for non-admins */}
{!isAdmin && (
-
@@ -441,9 +396,7 @@ export const TabloPage = () => {
-
- {tablo.name}
-
+
{tablo.name}
{/* Status badge */}
{
-
+
{getUserRole(tablo)}
@@ -471,7 +417,7 @@ export const TabloPage = () => {
{/* Contextual Menu */}
{contextMenuTablo === tablo.id && contextMenuPosition && (
{
.map((item, index) => (
))}
- {/*
*/}
-
- {/* Tablo actions
-
-
-
*/}
-
{/* Status change options - Only for admins */}
{isAdmin && (
<>
-
-
+
+
Changer le statut
>
)}
@@ -587,7 +499,7 @@ export const TabloPage = () => {
}}
>
{
@@ -616,9 +528,7 @@ export const TabloPage = () => {
{/* Content */}
-
- {tablo.name}
-
+
{tablo.name}
{
-
+
{getUserRole(tablo)}
@@ -645,99 +548,47 @@ export const TabloPage = () => {
{/* Actions */}
{/* Quick action buttons */}
-
-
+
+
+
+
{isAdmin && (
-
+
+
)}
{!isAdmin && (
-
@@ -747,7 +598,7 @@ export const TabloPage = () => {
{/* Contextual Menu - same as grid view */}
{contextMenuTablo === tablo.id && contextMenuPosition && (
{
.map((item, index) => (