55 lines
1.8 KiB
TypeScript
55 lines
1.8 KiB
TypeScript
/**
|
|
* Task status labels
|
|
*/
|
|
export function getTaskStatusLabel(status: number): string {
|
|
switch (status) {
|
|
case 1: return 'New';
|
|
case 2: return 'Blocked';
|
|
case 3: return 'In Progress';
|
|
case 4: return 'Waiting for Approval';
|
|
case 5: return 'Done';
|
|
default: return 'Unknown';
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Task status colors (tailwind classes)
|
|
*/
|
|
export function getTaskStatusColor(status: number): string {
|
|
switch (status) {
|
|
case 1: return 'bg-blue-500'; // New - blue
|
|
case 2: return 'bg-red-500'; // Blocked - red
|
|
case 3: return 'bg-yellow-500'; // In Progress - yellow
|
|
case 4: return 'bg-purple-500'; // Waiting for Approval - purple
|
|
case 5: return 'bg-gray-500'; // Done - gray
|
|
default: return 'bg-gray-300';
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Task status badge classes
|
|
*/
|
|
export function getTaskStatusBadgeClass(status: number): string {
|
|
switch (status) {
|
|
case 1: return 'bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-300';
|
|
case 2: return 'bg-red-100 text-red-800 dark:bg-red-900 dark:text-red-300';
|
|
case 3: return 'bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-300';
|
|
case 4: return 'bg-purple-100 text-purple-800 dark:bg-purple-900 dark:text-purple-300';
|
|
case 5: return 'bg-gray-100 text-gray-800 dark:bg-gray-900 dark:text-gray-300';
|
|
default: return 'bg-gray-100 text-gray-800 dark:bg-gray-900 dark:text-gray-300';
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Email status colors
|
|
*/
|
|
export function getEmailStatusColor(status: 'read' | 'unread' | 'draft' | 'sent' | 'flagged'): string {
|
|
switch (status) {
|
|
case 'read': return 'text-gray-400';
|
|
case 'unread': return 'text-blue-500';
|
|
case 'draft': return 'text-amber-500';
|
|
case 'sent': return 'text-green-500';
|
|
case 'flagged': return 'text-red-500';
|
|
default: return 'text-gray-400';
|
|
}
|
|
}
|