Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 3 additions & 0 deletions bun.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion e2e/dlq-idempotency.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
*/
import { test, expect, type Route } from '@playwright/test';
import { test as authTest } from './fixtures/auth';
import { MOCK_EVOLUTION_SEND_RESPONSE, TEST_PHONE } from './fixtures/test-data';
import { TEST_PHONE } from './fixtures/test-data';
import { cleanupTestData } from './utils/supabase';

const SEND_GLOB = '**/functions/v1/evolution-api/**';
Expand Down
2 changes: 1 addition & 1 deletion e2e/teams-departments.spec.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { test, expect } from '@playwright/test';
import { login, openConversation, loginAs } from './helpers/testHelpers';
import { loginAs } from './helpers/testHelpers';

/**
* Department E2E Tests - RBAC, Management, and Access Validation.
Expand Down
1 change: 0 additions & 1 deletion e2e/utils/admin-filters.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
* aos painéis e não dependem de copy/CSS específicos.
*/
import type { Page, Locator } from '@playwright/test';
import { expect } from '@playwright/test';

// ============================================================
// Página de Webhook Events
Expand Down
6 changes: 5 additions & 1 deletion eslint.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import globals from "globals";
import reactHooks from "eslint-plugin-react-hooks";
import reactRefresh from "eslint-plugin-react-refresh";
import tseslint from "typescript-eslint";
import unusedImports from "eslint-plugin-unused-imports";

import tailwind from "eslint-plugin-tailwindcss";

Expand All @@ -19,12 +20,15 @@ export default tseslint.config(
plugins: {
"react-hooks": reactHooks,
"react-refresh": reactRefresh,
"unused-imports": unusedImports,
},
rules: {
...reactHooks.configs.recommended.rules,
"react-hooks/exhaustive-deps": "warn",
"react-refresh/only-export-components": ["warn", { allowConstantExport: true }],
"@typescript-eslint/no-unused-vars": ["warn", { "argsIgnorePattern": "^_", "varsIgnorePattern": "^_" }],
"@typescript-eslint/no-unused-vars": "off",
"unused-imports/no-unused-imports": "warn",
"unused-imports/no-unused-vars": ["warn", { "argsIgnorePattern": "^_", "varsIgnorePattern": "^_" }],
"no-console": ["error", { allow: ["warn", "error"] }],
// Tailwind specific rules removed due to environment constraints
// Estratégia gradual de strict typing
Expand Down
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@
"eslint-plugin-react-hooks": "^5.2.0",
"eslint-plugin-react-refresh": "^0.4.20",
"eslint-plugin-tailwindcss": "^3.18.3",
"eslint-plugin-unused-imports": "^4.4.1",
"globals": "^15.15.0",
"happy-dom": "^20.9.0",
"husky": "^9.1.7",
Expand Down
1 change: 0 additions & 1 deletion scripts/design-system-safety.test.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import { expect, test, describe } from "bun:test";
import { getSuggestion } from "./check-design-system";
import { DS_CONFIG } from "./ds-config";

const ALLOWED_TOKENS = [
"destructive", "warning", "primary", "secondary", "muted", "accent",
Expand Down
2 changes: 1 addition & 1 deletion scripts/regen-trilha-mensagens.ts
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ function ensureMarkers(content: string): string {

// CLICKS: localiza o bloco existente de "click X ..." e envolve em marcadores
if (!next.includes(CLICKS_START)) {
const clickLineRe = /( %% Links navegaveis[^\n]*\n)((?: click [^\n]+\n)+)/;
const clickLineRe = /( {2}%% Links navegaveis[^\n]*\n)((?: {2}click [^\n]+\n)+)/;
const m = next.match(clickLineRe);
if (m) {
next = next.replace(m[0], `${CLICKS_START}\n${CLICKS_END}\n`);
Expand Down
2 changes: 1 addition & 1 deletion src/components/AppErrorBoundary.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { Component, ErrorInfo, ReactNode } from 'react';
import { log } from '@/lib/logger';
import { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';
import { Button } from '@/components/ui/button';
import { RefreshCw, AlertTriangle, ShieldAlert } from 'lucide-react';
import { RefreshCw, ShieldAlert } from 'lucide-react';

interface Props {
children: ReactNode;
Expand Down
2 changes: 1 addition & 1 deletion src/components/CommandPalette.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { useEffect, useState, useCallback, useMemo } from 'react';
import { useEffect, useState, useMemo } from 'react';
import { Clock } from 'lucide-react';
import {
CommandDialog,
Expand Down
1 change: 0 additions & 1 deletion src/components/agents/AgentsView.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { useState } from 'react';
import { EmptyState } from '@/components/ui/empty-state';
import { AgentsEmptyState } from '@/components/ui/contextual-empty-states';
import { InviteAgentDialog } from '@/components/agents/InviteAgentDialog';
import { ConfigurePermissionsDialog } from '@/components/agents/ConfigurePermissionsDialog';
Expand Down
1 change: 0 additions & 1 deletion src/components/agents/ConfigurePermissionsDialog.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import { useState } from 'react';
import { useQuery } from '@tanstack/react-query';
import {
Dialog,
Expand Down
5 changes: 2 additions & 3 deletions src/components/ai/AutoTicketClassifier.tsx
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
import { useState, useEffect } from 'react';
import { motion } from 'framer-motion';
import { Tag, Brain, RefreshCw, Loader2, CheckCircle, Filter, BarChart3 } from 'lucide-react';
import { Card, CardContent, CardHeader, CardTitle, CardDescription } from '@/components/ui/card';
import { Tag, Brain, Loader2, CheckCircle, BarChart3 } from 'lucide-react';
import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card';
import { Button } from '@/components/ui/button';
import { Badge } from '@/components/ui/badge';
import { Switch } from '@/components/ui/switch';
import { Label } from '@/components/ui/label';
import { Progress } from '@/components/ui/progress';
import { ScrollArea } from '@/components/ui/scroll-area';
import { supabase } from '@/integrations/supabase/client';
import { toast } from 'sonner';
Expand Down
3 changes: 1 addition & 2 deletions src/components/ai/ChurnPredictionDashboard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@ import { Progress } from '@/components/ui/progress';
import { ScrollArea } from '@/components/ui/scroll-area';
import { supabase } from '@/integrations/supabase/client';
import { toast } from 'sonner';
import { format, differenceInDays, subDays } from 'date-fns';
import { ptBR } from 'date-fns/locale';
import { differenceInDays } from 'date-fns';
import { dbFrom } from '@/integrations/datasource/db';

interface ChurnRisk {
Expand Down
4 changes: 2 additions & 2 deletions src/components/campaigns/CampaignABTesting.tsx
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import { useState, useEffect } from 'react';
import { supabase } from '@/integrations/supabase/client';
import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card';
import { Card, CardContent } from '@/components/ui/card';
import { Button } from '@/components/ui/button';
import { Input } from '@/components/ui/input';
import { Textarea } from '@/components/ui/textarea';
import { Badge } from '@/components/ui/badge';
import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogFooter } from '@/components/ui/dialog';
import { Plus, Trophy, BarChart3, Trash2, FlaskConical } from 'lucide-react';
import { Plus, Trophy, Trash2, FlaskConical } from 'lucide-react';
import { toast } from 'sonner';
import { motion } from 'framer-motion';

Expand Down
2 changes: 1 addition & 1 deletion src/components/catalog/ExternalProductCatalog.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ import { Label } from '@/components/ui/label';
import { Search, Package, Grid3X3, List, X, ChevronLeft, ChevronRight } from 'lucide-react';
import { motion, AnimatePresence } from 'framer-motion';
import { toast } from '@/hooks/use-toast';
import { useExternalCatalog, ExternalProduct, ExternalCategory } from '@/hooks/useExternalCatalog';
import { useExternalCatalog, ExternalProduct } from '@/hooks/useExternalCatalog';
import { ExternalProductCard } from './ExternalProductCard';

interface ExternalProductCatalogProps {
Expand Down
1 change: 0 additions & 1 deletion src/components/catalog/ExternalProductManagement.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ import {
import { motion, AnimatePresence } from 'framer-motion';
import { useExternalCatalog, ExternalProduct } from '@/hooks/useExternalCatalog';
import { ExternalProductCard } from './ExternalProductCard';
import { toast } from '@/hooks/use-toast';
import { SendProductDialog } from './SendProductDialog';

const PAGE_SIZE = 24;
Expand Down
1 change: 0 additions & 1 deletion src/components/catalog/ProductCard.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import React from 'react';
import { cn } from '@/lib/utils';
import { Badge } from '@/components/ui/badge';
import { Button } from '@/components/ui/button';
import { Card, CardContent } from '@/components/ui/card';
Expand Down
1 change: 0 additions & 1 deletion src/components/catalog/ProductCatalog.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import { log } from '@/lib/logger';
import { ProductCard, Product } from './ProductCard';
import { Input } from '@/components/ui/input';
import { Button } from '@/components/ui/button';
import { Badge } from '@/components/ui/badge';
import { ScrollArea } from '@/components/ui/scroll-area';
import { Skeleton } from '@/components/ui/skeleton';
import {
Expand Down
5 changes: 1 addition & 4 deletions src/components/catalog/SendProductDialog.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,9 @@ import {
} from '@/components/ui/dialog';
import { groupVariantsByColor } from './sendProductUtils';
import {
DropdownMenu, DropdownMenuContent, DropdownMenuItem,
DropdownMenuLabel, DropdownMenuTrigger,
DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger,
} from '@/components/ui/dropdown-menu';
import { Button } from '@/components/ui/button';
import { Badge } from '@/components/ui/badge';
import { Input } from '@/components/ui/input';
import { ScrollArea } from '@/components/ui/scroll-area';
import { Separator } from '@/components/ui/separator';
import { Textarea } from '@/components/ui/textarea';
Expand Down
1 change: 0 additions & 1 deletion src/components/catalog/ShoppingCart.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import React, { useState, useCallback } from 'react';
import { cn } from '@/lib/utils';
import { Button } from '@/components/ui/button';
import { Badge } from '@/components/ui/badge';
import { ScrollArea } from '@/components/ui/scroll-area';
Expand Down
2 changes: 1 addition & 1 deletion src/components/catalog/WhatsAppTemplatesManager.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import { motion, AnimatePresence } from 'framer-motion';
import { cn } from '@/lib/utils';
import {
useWhatsAppTemplates, TEMPLATE_CATEGORIES, TEMPLATE_LANGUAGES,
STATUS_BADGES, EMPTY_TEMPLATE, type WhatsAppTemplate,
STATUS_BADGES,
} from '@/hooks/useWhatsAppTemplates';

const STATUS_ICONS: Record<string, React.ElementType> = {
Expand Down
7 changes: 3 additions & 4 deletions src/components/chatbot/ChatbotFlowsView.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { useState, useCallback, lazy, Suspense } from 'react';
import { useChatbotFlows, ChatbotFlow, ChatbotNode } from '@/hooks/useChatbotFlows';
import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card';
import { Card, CardContent } from '@/components/ui/card';
import { Button } from '@/components/ui/button';
import { Badge } from '@/components/ui/badge';
import { Input } from '@/components/ui/input';
Expand All @@ -16,9 +16,8 @@ import {
Select, SelectContent, SelectItem, SelectTrigger, SelectValue,
} from '@/components/ui/select';
import {
Bot, Plus, Edit2, Trash2, Play, Pause, Copy, Zap, MessageSquare,
GitBranch, Clock, ArrowRight, Loader2, Settings, BarChart3,
HelpCircle, Tag, Users, Send, ChevronRight, Activity,
Bot, Plus, Edit2, Trash2, Play, Copy, Zap, MessageSquare,
GitBranch, Clock, Loader2, BarChart3, Tag, ChevronRight, Activity,
} from 'lucide-react';
import { motion, AnimatePresence } from 'framer-motion';
import { cn } from '@/lib/utils';
Expand Down
2 changes: 1 addition & 1 deletion src/components/cognitive/FeatureSpotlight.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import React, { useState, ReactNode } from 'react';
import { motion, AnimatePresence } from 'framer-motion';
import { motion } from 'framer-motion';
import { HelpCircle, Info, Lightbulb, X } from 'lucide-react';
import { Button } from '@/components/ui/button';
import { cn } from '@/lib/utils';
Expand Down
3 changes: 1 addition & 2 deletions src/components/connections/ConnectionAuditDialog.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,7 @@ import {
} from '@/components/ui/dialog';
import { supabase } from '@/integrations/supabase/client';
import { ScrollArea } from '@/components/ui/scroll-area';
import { Badge } from '@/components/ui/badge';
import { Clock, AlertCircle, CheckCircle2, Info, RefreshCw } from 'lucide-react';
import { AlertCircle, CheckCircle2, Info, RefreshCw } from 'lucide-react';
import { format } from 'date-fns';
import { ptBR } from 'date-fns/locale';

Expand Down
2 changes: 1 addition & 1 deletion src/components/connections/ConnectionsView.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import {
Select, SelectContent, SelectItem, SelectTrigger, SelectValue,
} from '@/components/ui/select';
import {
Smartphone, Plus, QrCode, Loader2, CheckCircle2, XCircle, AlertCircle, RefreshCw,
Smartphone, Plus, QrCode, Loader2, CheckCircle2, XCircle, AlertCircle,
} from 'lucide-react';
import { cn } from '@/lib/utils';
import { supabase } from '@/integrations/supabase/client';
Expand Down
1 change: 0 additions & 1 deletion src/components/contacts/AuditLogPanel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ import { Button } from '@/components/ui/button';
import { History, RefreshCw, ChevronDown, ChevronUp, Shield } from 'lucide-react';
import { supabase } from '@/integrations/supabase/client';
import { sanitizeText } from '@/lib/sanitize';
import { dbFrom } from '@/integrations/datasource/db';

interface AuditEntry {
id: string;
Expand Down
2 changes: 1 addition & 1 deletion src/components/contacts/Contact360Panel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar';
import { Skeleton } from '@/components/ui/skeleton';
import {
User, Phone, Mail, Building2, Tag, MessageCircle,
History, Clock, RefreshCw,
History, Clock,
} from 'lucide-react';
import { sanitizeText } from '@/lib/sanitize';
import { formatPhoneForDisplay as formatPhoneBR } from '@/lib/phoneUtils';
Expand Down
2 changes: 0 additions & 2 deletions src/components/contacts/ContactActivityFeed.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,6 @@ import { supabase } from '@/integrations/supabase/client';
import { Button } from '@/components/ui/button';
import { MessageCircle, FileText, Shield, RotateCcw, RefreshCw, ChevronDown, ChevronUp } from 'lucide-react';
import { sanitizeText } from '@/lib/sanitize';
import { dbFrom, dbList } from '@/integrations/datasource/db';
import { RPC } from '@/integrations/datasource/rpcCatalog';

interface Activity { id: string; type: string; label: string; detail?: string; timestamp: string; }

Expand Down
8 changes: 3 additions & 5 deletions src/components/contacts/ContactActivityTimeline.tsx
Original file line number Diff line number Diff line change
@@ -1,17 +1,15 @@
import { useState, useEffect } from 'react';
import { motion, AnimatePresence } from 'framer-motion';
import { format, formatDistanceToNow } from 'date-fns';
import { formatDistanceToNow } from 'date-fns';
import { ptBR } from 'date-fns/locale';
import { ScrollArea } from '@/components/ui/scroll-area';
import { Badge } from '@/components/ui/badge';
import { Button } from '@/components/ui/button';
import {
MessageSquare, Phone, Mail, Tag, UserPlus, Edit,
ArrowRight, Clock, ChevronDown, ChevronUp, Zap,
MessageSquare, Tag, UserPlus, Edit,
ArrowRight, Clock, ChevronDown, ChevronUp,
} from 'lucide-react';
import { cn } from '@/lib/utils';
import { supabase } from '@/integrations/supabase/client';
import { dbFrom } from '@/integrations/datasource/db';

interface TimelineEvent {
id: string;
Expand Down
3 changes: 1 addition & 2 deletions src/components/contacts/ContactAnalyticsDashboard.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,10 @@ import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card';
import { Badge } from '@/components/ui/badge';
import {
BarChart3, Users, TrendingUp, Building, Tag,
Lightbulb, AlertCircle, ArrowUpRight, Clock, Zap, Sparkles
Lightbulb, AlertCircle, ArrowUpRight, Zap, Sparkles
} from 'lucide-react';
import { cn } from '@/lib/utils';
import { format, subDays, startOfDay } from 'date-fns';
import { ptBR } from 'date-fns/locale';
import { CONTACT_TYPE_CONFIG } from './contactTypeConfig';

interface ContactAnalyticsDashboardProps {
Expand Down
1 change: 0 additions & 1 deletion src/components/contacts/ContactAuditLogPanel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ import { Badge } from '@/components/ui/badge';
import { Button } from '@/components/ui/button';
import { Separator } from '@/components/ui/separator';
import { Shield, Clock, User, RefreshCw, ChevronDown, ChevronUp } from 'lucide-react';
import { supabase } from '@/integrations/supabase/client';
import { sanitizeText } from '@/lib/sanitize';
import { dbFrom } from '@/integrations/datasource/db';

Expand Down
2 changes: 1 addition & 1 deletion src/components/contacts/ContactBirthdayPanel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar';
import { Badge } from '@/components/ui/badge';
import { ScrollArea } from '@/components/ui/scroll-area';
import { Cake, Gift, PartyPopper, Calendar } from 'lucide-react';
import { format, differenceInDays, setYear, isToday, isTomorrow, addDays, startOfDay } from 'date-fns';
import { format, differenceInDays, setYear, startOfDay } from 'date-fns';
import { ptBR } from 'date-fns/locale';
import { cn } from '@/lib/utils';
import { getAvatarColor, getInitials } from '@/lib/avatar-colors';
Expand Down
2 changes: 1 addition & 1 deletion src/components/contacts/ContactBitrix24Panel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
*/
import React, { useState, useEffect } from 'react';
import { Building2, ExternalLink, Users, TrendingUp, MessageSquare } from 'lucide-react';
import { contactsDB, type ExternalContact } from '@/lib/contactsDB';
import { type ExternalContact } from '@/lib/contactsDB';
import { getExternalSupabase, isExternalConfigured } from '@/integrations/supabase/externalClient';
import { Badge } from '@/components/ui/badge';

Expand Down
1 change: 0 additions & 1 deletion src/components/contacts/ContactCRMDialog.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription } from '@/components/ui/dialog';
import { Sparkles } from 'lucide-react';
import { toast } from 'sonner';
import { supabase } from '@/integrations/supabase/client';
import { AdvancedCRMSearch } from '@/components/contacts/AdvancedCRMSearch';
import { dbFrom } from '@/integrations/datasource/db';

Expand Down
2 changes: 1 addition & 1 deletion src/components/contacts/ContactCompareDialog.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import {
import { Badge } from '@/components/ui/badge';
import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar';
import { ScrollArea } from '@/components/ui/scroll-area';
import { Phone, Mail, Building, Briefcase, Tag, Calendar, CheckCircle2, XCircle } from 'lucide-react';
import { Phone, Mail, Building, Briefcase, Tag, Calendar } from 'lucide-react';
import { format } from 'date-fns';
import { ptBR } from 'date-fns/locale';
import { cn } from '@/lib/utils';
Expand Down
1 change: 0 additions & 1 deletion src/components/contacts/ContactConsentManager.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import { Button } from '@/components/ui/button';
import { Separator } from '@/components/ui/separator';
import { Shield, AlertTriangle, CheckCircle2, XCircle, Info } from 'lucide-react';
import { useToast } from '@/hooks/use-toast';
import { supabase } from '@/integrations/supabase/client';
import { sanitizeText } from '@/lib/sanitize';
import { dbFrom } from '@/integrations/datasource/db';
import {
Expand Down
1 change: 0 additions & 1 deletion src/components/contacts/ContactConversationHistory.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
import React, { useEffect, useState } from 'react';
import { Badge } from '@/components/ui/badge';
import { MessageCircle, ExternalLink, Loader2 } from 'lucide-react';
import { supabase } from '@/integrations/supabase/client';
import { sanitizeText } from '@/lib/sanitize';
import { formatDistanceToNow } from 'date-fns';
import { ptBR } from 'date-fns/locale';
Expand Down
3 changes: 1 addition & 2 deletions src/components/contacts/ContactDetailPanel.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import { useState } from 'react';
import { motion, AnimatePresence } from 'framer-motion';
import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar';
import { Badge } from '@/components/ui/badge';
Expand All @@ -7,7 +6,7 @@ import { ScrollArea } from '@/components/ui/scroll-area';
import { Separator } from '@/components/ui/separator';
import {
X, MessageSquare, Edit, Phone, Mail, Building, Briefcase,
Calendar, Tag, Clock, Zap,
Calendar, Tag, Clock,
} from 'lucide-react';
import { ContactActivityTimeline } from './ContactActivityTimeline';
import { ContactNotes } from './ContactNotes';
Expand Down
Loading
Loading