Skip to content

Commit 14694b2

Browse files
committed
feat: complete v0 DC integrations
BREAKING CHANGE: refector of some existing modules. be careful using this new major version
1 parent eea87e2 commit 14694b2

23 files changed

Lines changed: 595 additions & 253 deletions

src/components/CRM/types.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ export type EditableDeal = Omit<Partial<Deal>, 'comments' | 'customer'> & {
1616
// type: "proposition" | "source" | "sector"
1717
// }
1818

19-
export type CRMStatus = "Cold" | "Qualified" | "Proposal Made" | "SoW Submitted" | "Won" | "Lost"
19+
export type CRMStatus = "Cold" | "Qualified" | "Proposal Made" | "SoW Submitted" | "Won" | "Lost" | "Dormant"
2020
export type gecoStatus = 'firm' | 'forecast' | 'other'
2121
// export type Deal = {
2222
// id: number

src/components/DigitalColleagues/AddEpicModal.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { Input } from '@/components/ui/input';
66
import { Textarea } from '@/components/ui/textarea';
77
import { Label } from '@/components/ui/label';
88
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select';
9-
import { Epic } from '../dc-temp/Views/KanbanBoard';
9+
import { Epic } from './types';
1010

1111
interface AddEpicModalProps {
1212
isOpen: boolean;

src/components/DigitalColleagues/AddSprintModal.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover
1010
import { CalendarIcon } from 'lucide-react';
1111
import { format } from 'date-fns';
1212
import { cn } from '@/lib/utils';
13-
import { Sprint } from '../dc-temp/Views/KanbanBoard';
13+
import { Sprint } from './types';
1414

1515
interface AddSprintModalProps {
1616
isOpen: boolean;

src/components/DigitalColleagues/test-data.ts

Lines changed: 17 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,14 @@
1-
import { Project, Epic, Sprint, Task } from '../dc-temp/Views/KanbanBoard';
1+
import { Project, Epic, Sprint, Task } from './types';
22
import { ProjectSummary, TeamSummary, Colleague } from './types';
3+
4+
// Helper function to convert strings to KnowledgeDocument objects
5+
const createKnowledgeDocument = (title: string): import('./types').KnowledgeDocument => ({
6+
id: Math.random().toString(36).substr(2, 9),
7+
title,
8+
format: 'markdown' as const,
9+
createdAt: new Date(),
10+
});
11+
312
// Mock data for testing and stories
413
export const mockProjects: Project[] = [
514
{
@@ -496,32 +505,22 @@ export const mockColleagues: Colleague[] = [
496505
timezone: "PST",
497506
skills: ["UI/UX Design", "Figma", "Adobe Creative Suite", "Prototyping", "User Research"],
498507
bio: "Passionate designer with 8+ years of experience creating user-centered digital experiences.",
499-
avatar: "/placeholder.svg?height=100&width=100&text=SJ",
500508
},
501509
{
502510
id: "2",
503511
type: "digital",
504512
name: "CodeAssist Pro",
505-
email: "codeassist@company.com",
506-
role: "Development Assistant",
507-
department: "Engineering",
508513
status: "active",
509514
joinedDate: new Date("2024-01-01"),
510515
lastActive: new Date(),
511516
jobDescription: "AI-powered coding assistant that helps with code review, debugging, and documentation generation.",
512-
workInstructions: [
513-
"Review pull requests for code quality and best practices",
514-
"Generate comprehensive documentation for new features",
515-
"Assist with debugging complex issues",
516-
"Provide code suggestions and optimizations",
517-
],
517+
workInstructions: "Review pull requests for code quality and best practices. Generate comprehensive documentation for new features. Assist with debugging complex issues. Provide code suggestions and optimizations.",
518518
capabilities: ["Code Review", "Documentation Generation", "Debugging", "Code Optimization", "Testing"],
519-
knowledge: ["JavaScript", "TypeScript", "React", "Node.js", "Python", "Git"],
520-
coreKnowledge: ["Company coding standards", "Architecture patterns", "Security guidelines"],
519+
knowledge: ["JavaScript", "TypeScript", "React", "Node.js", "Python", "Git"].map(createKnowledgeDocument),
520+
coreKnowledge: ["Company coding standards", "Architecture patterns", "Security guidelines"].map(createKnowledgeDocument),
521521
version: "2",
522522
lastUpdated: new Date("2024-01-15"),
523523
isActive: true,
524-
avatar: "/placeholder.svg?height=100&width=100&text=CA",
525524
},
526525
{
527526
id: "3",
@@ -530,46 +529,36 @@ export const mockColleagues: Colleague[] = [
530529
email: "michael.chen@company.com",
531530
role: "Product Manager",
532531
department: "Product",
533-
status: "away",
532+
status: "inactive",
534533
joinedDate: new Date("2022-08-20"),
535534
lastActive: new Date(Date.now() - 2 * 60 * 60 * 1000), // 2 hours ago
536535
phone: "+1 (555) 987-6543",
537536
location: "New York, NY",
538537
timezone: "EST",
539538
skills: ["Product Strategy", "Agile", "Data Analysis", "User Stories", "Roadmapping"],
540539
bio: "Strategic product manager focused on driving user engagement and business growth.",
541-
avatar: "/placeholder.svg?height=100&width=100&text=MC",
542540
},
543541
{
544542
id: "4",
545543
type: "digital",
546544
name: "MarketingBot",
547-
email: "marketingbot@company.com",
548-
role: "Marketing Assistant",
549-
department: "Marketing",
550545
status: "active",
551546
joinedDate: new Date("2024-02-01"),
552547
lastActive: new Date(),
553548
jobDescription: "Specialized AI assistant for marketing campaigns, content creation, and social media management.",
554-
workInstructions: [
555-
"Create engaging social media content",
556-
"Analyze campaign performance metrics",
557-
"Generate marketing copy and headlines",
558-
"Schedule and manage social media posts",
559-
],
549+
workInstructions: "Create engaging social media content. Analyze campaign performance metrics. Generate marketing copy and headlines. Schedule and manage social media posts.",
560550
capabilities: [
561551
"Content Creation",
562552
"Social Media Management",
563553
"Analytics",
564554
"SEO Optimization",
565555
"Campaign Management",
566556
],
567-
knowledge: ["Digital Marketing", "Social Media Platforms", "Content Strategy", "Analytics Tools"],
568-
coreKnowledge: ["Brand guidelines", "Target audience personas", "Marketing objectives"],
557+
knowledge: ["Digital Marketing", "Social Media Platforms", "Content Strategy", "Analytics Tools"].map(createKnowledgeDocument),
558+
coreKnowledge: ["Brand guidelines", "Target audience personas", "Marketing objectives"].map(createKnowledgeDocument),
569559
version: "52",
570560
lastUpdated: new Date("2024-02-10"),
571561
isActive: true,
572-
avatar: "/placeholder.svg?height=100&width=100&text=MB",
573562
},
574563
{
575564
id: "5",
@@ -586,6 +575,5 @@ export const mockColleagues: Colleague[] = [
586575
timezone: "CST",
587576
skills: ["User Research", "Usability Testing", "Data Analysis", "Survey Design", "Interview Techniques"],
588577
bio: "User researcher dedicated to understanding user needs and improving product experiences.",
589-
avatar: "/placeholder.svg?height=100&width=100&text=ER",
590578
},
591579
]

src/components/dc-temp/AssistantInterface.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { TeamSwitcherBar } from "./team-switcher-bar"
88
import { ChatSessionSidebar, type ChatSession } from "./chat-session-sidebar"
99
import { AIChatInterface, type ChatMessage } from "./ai-chat-interface"
1010
import { businessUnits } from "./business-units"
11-
import { capabilities } from "./capabilities"
11+
import { capabilities } from "./capabilities-data"
1212

1313
const mockChatSessions: ChatSession[] = [
1414
{

src/components/dc-temp/Pages/dashboardpage.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,11 @@ import {
1212
mockSidebarItems,
1313
mockApps,
1414
mockRecentFiles,
15-
mockProjects,
1615
mockTutorials,
1716
mockNotifications,
1817
} from "../mock-data"
19-
import type { App, RecentFile, Project } from "../../DigitalColleagues/types"
18+
import { mockProjectSummary } from "../../DigitalColleagues/test-data"
19+
import type { App, RecentFile, ProjectSummary } from "../../DigitalColleagues/types"
2020
// import { ColleaguesManagement } from "../colleagues-management"
2121
import ColleaguesView from "./../Views/ColleaguesView"
2222
import KnowledgeView from "../Views/KnowledgeView"
@@ -60,11 +60,11 @@ export default function Home({ title = "Digital Colleagues", businessUnits }: Ho
6060
console.log("Sharing file:", file.name)
6161
}
6262

63-
const handleProjectOpen = (project: Project) => {
63+
const handleProjectOpen = (project: ProjectSummary) => {
6464
console.log("Opening project:", project.name)
6565
}
6666

67-
const handleProjectShare = (project: Project) => {
67+
const handleProjectShare = (project: ProjectSummary) => {
6868
console.log("Sharing project:", project.name)
6969
}
7070

@@ -177,7 +177,7 @@ export default function Home({ title = "Digital Colleagues", businessUnits }: Ho
177177
<h2 className="text-2xl font-semibold">All Files</h2>
178178
</div>
179179

180-
<FileList files={mockRecentFiles} onFileClick={handleFileClick} onShare={handleFileShare} />
180+
<FileList files={mockRecentFiles} onFileClick={handleFileClick} />
181181
</section>
182182
</div>
183183
)
@@ -197,7 +197,7 @@ export default function Home({ title = "Digital Colleagues", businessUnits }: Ho
197197
<section className="space-y-4">
198198
<h2 className="text-2xl font-semibold">Active Projects</h2>
199199
<div className="grid grid-cols-1 gap-3 md:grid-cols-2 lg:grid-cols-3">
200-
{mockProjects.map((project) => (
200+
{mockProjectSummary.map((project) => (
201201
<ProjectCard
202202
key={project.name}
203203
project={project}

src/components/dc-temp/Views/KanbanBoard.tsx

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -95,19 +95,23 @@ export const KanbanBoard: React.FC<KanbanBoardProps> = ({
9595
onAddTask?.(newTask);
9696
};
9797

98-
const handleUpdateTask = (taskId: string, updates: Partial<Task>) => {
98+
const handleUpdateTask = async (taskId: string, updates: Partial<Task>): Promise<void> => {
9999
setTasks(prev =>
100100
prev.map(task => (task.id === taskId ? { ...task, ...updates } : task))
101101
);
102-
onUpdateTask?.(taskId, updates);
102+
if (onUpdateTask) {
103+
await onUpdateTask(taskId, updates);
104+
}
103105
};
104106

105-
const handleDeleteTask = (taskId: string) => {
107+
const handleDeleteTask = async (taskId: string): Promise<void> => {
106108
setTasks(prev => prev.filter(task => task.id !== taskId));
107109
if (selectedTask?.id === taskId) {
108110
setSelectedTask(null);
109111
}
110-
onDeleteTask?.(taskId);
112+
if (onDeleteTask) {
113+
await onDeleteTask(taskId);
114+
}
111115
};
112116

113117
const handleAddEpic = (newEpic: Omit<Epic, 'id'>) => {

src/components/dc-temp/Views/ProjectsIndexView.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ import {
2626
mockNotifications,
2727
} from "../mock-data"
2828
import type { App, RecentFile, ProjectSummary, Project, ProjectFormData } from "../../DigitalColleagues/types"
29-
import { ColleaguesManagement } from "../colleagues-management"
29+
// import { ColleaguesManagement } from "../colleagues-management"
3030

3131
const AnimatedCircles = () => (
3232
<motion.div

src/components/dc-temp/ai-chat-interface.stories.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type { Meta, StoryObj } from "@storybook/react"
22
import { AIChatInterface, type ChatMessage } from "./ai-chat-interface"
33
import { businessUnits } from "./business-units"
4-
import { capabilities } from "./capabilities"
4+
import { capabilities } from "./capabilities-data"
55

66
const mockMessages: ChatMessage[] = [
77
{

src/components/dc-temp/ai-chat-interface.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import { ScrollArea } from "@/components/ui/scroll-area"
1212
import { cn } from "@/lib/utils"
1313
import type { BusinessUnit } from "./business-units"
1414
import { CapabilityMenu } from "./capability-menu"
15-
import { getContextualActions } from "./capabilities"
15+
import { getContextualActions } from "./capabilities-data"
1616
import type { CapabilityContext, Capability } from "./capabilities"
1717

1818
export interface ChatMessage {

0 commit comments

Comments
 (0)