diff --git a/src/lib/files-data.ts b/src/lib/files-data.ts index 677d66e..3686fd7 100755 --- a/src/lib/files-data.ts +++ b/src/lib/files-data.ts @@ -45,572 +45,23 @@ export type StorageUsage = { total: number } -const owner = { name: "Martine Vogel", avatar: "/avatars/martine.jpg" } -const teamMember1 = { name: "Alex Chen", avatar: "/avatars/alex.jpg" } -const teamMember2 = { name: "Jordan Park" } -const teamMember3 = { name: "Sam Rivera", avatar: "/avatars/sam.jpg" } +const owner = { + name: "Martine Vogel", + avatar: "/avatars/martine.jpg", +} +const pm1 = { name: "Derek Haines" } +const pm2 = { name: "Rachel Torres" } +const field1 = { name: "Mike Callahan" } export const mockFiles: FileItem[] = [ - // root folders + // ─── Top-level company folders ─── { - id: "folder-documents", - name: "Documents", + id: "folder-00-corporate", + name: "00_Corporate", type: "folder", size: 0, path: [], - createdAt: "2025-09-15T10:00:00Z", - modifiedAt: "2026-01-20T14:30:00Z", - owner, - starred: true, - shared: false, - trashed: false, - parentId: null, - }, - { - id: "folder-images", - name: "Images", - type: "folder", - size: 0, - path: [], - createdAt: "2025-10-01T09:00:00Z", - modifiedAt: "2026-01-18T11:00:00Z", - owner, - starred: false, - shared: true, - sharedWith: [ - { ...teamMember1, role: "editor" }, - { ...teamMember2, role: "viewer" }, - ], - trashed: false, - parentId: null, - }, - { - id: "folder-projects", - name: "Projects", - type: "folder", - size: 0, - path: [], - createdAt: "2025-08-20T08:00:00Z", - modifiedAt: "2026-01-22T16:45:00Z", - owner, - starred: true, - shared: true, - sharedWith: [ - { ...teamMember1, role: "editor" }, - { ...teamMember3, role: "editor" }, - ], - trashed: false, - parentId: null, - }, - { - id: "folder-archive", - name: "Archive", - type: "folder", - size: 0, - path: [], - createdAt: "2025-06-10T12:00:00Z", - modifiedAt: "2025-12-05T09:30:00Z", - owner, - starred: false, - shared: false, - trashed: false, - parentId: null, - }, - { - id: "folder-shared-assets", - name: "Shared Assets", - type: "folder", - size: 0, - path: [], - createdAt: "2025-11-01T10:00:00Z", - modifiedAt: "2026-01-15T13:20:00Z", - owner: teamMember1, - starred: false, - shared: true, - sharedWith: [ - { ...owner, role: "editor" }, - { ...teamMember2, role: "viewer" }, - ], - trashed: false, - parentId: null, - }, - - // Documents folder contents - { - id: "doc-proposal", - name: "Project Proposal.docx", - type: "document", - mimeType: "application/vnd.openxmlformats-officedocument.wordprocessingml.document", - size: 245_000, - path: ["Documents"], - createdAt: "2025-11-10T14:00:00Z", - modifiedAt: "2026-01-19T10:15:00Z", - owner, - starred: true, - shared: true, - sharedWith: [{ ...teamMember1, role: "editor" }], - trashed: false, - parentId: "folder-documents", - }, - { - id: "doc-meeting-notes", - name: "Meeting Notes - Jan 2026.docx", - type: "document", - mimeType: "application/vnd.openxmlformats-officedocument.wordprocessingml.document", - size: 128_500, - path: ["Documents"], - createdAt: "2026-01-05T09:00:00Z", - modifiedAt: "2026-01-22T11:30:00Z", - owner, - starred: false, - shared: false, - trashed: false, - parentId: "folder-documents", - }, - { - id: "doc-budget", - name: "Budget 2026.xlsx", - type: "spreadsheet", - mimeType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", - size: 890_000, - path: ["Documents"], - createdAt: "2025-12-01T08:00:00Z", - modifiedAt: "2026-01-21T15:00:00Z", - owner, - starred: true, - shared: true, - sharedWith: [ - { ...teamMember1, role: "editor" }, - { ...teamMember3, role: "viewer" }, - ], - trashed: false, - parentId: "folder-documents", - }, - { - id: "doc-contract", - name: "Vendor Contract.pdf", - type: "pdf", - mimeType: "application/pdf", - size: 1_540_000, - path: ["Documents"], - createdAt: "2025-10-20T11:00:00Z", - modifiedAt: "2025-10-20T11:00:00Z", - owner, - starred: false, - shared: false, - trashed: false, - parentId: "folder-documents", - }, - { - id: "doc-timeline", - name: "Project Timeline.xlsx", - type: "spreadsheet", - mimeType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", - size: 456_000, - path: ["Documents"], - createdAt: "2025-11-28T13:00:00Z", - modifiedAt: "2026-01-18T09:45:00Z", - owner, - starred: false, - shared: true, - sharedWith: [{ ...teamMember2, role: "viewer" }], - trashed: false, - parentId: "folder-documents", - }, - { - id: "folder-documents-reports", - name: "Reports", - type: "folder", - size: 0, - path: ["Documents"], - createdAt: "2025-10-05T10:00:00Z", - modifiedAt: "2026-01-15T14:00:00Z", - owner, - starred: false, - shared: false, - trashed: false, - parentId: "folder-documents", - }, - - // Documents/Reports subfolder - { - id: "doc-q4-report", - name: "Q4 2025 Report.pdf", - type: "pdf", - mimeType: "application/pdf", - size: 2_100_000, - path: ["Documents", "Reports"], - createdAt: "2026-01-02T10:00:00Z", - modifiedAt: "2026-01-10T16:00:00Z", - owner, - starred: false, - shared: true, - sharedWith: [ - { ...teamMember1, role: "viewer" }, - { ...teamMember3, role: "viewer" }, - ], - trashed: false, - parentId: "folder-documents-reports", - }, - { - id: "doc-analytics", - name: "Site Analytics.xlsx", - type: "spreadsheet", - mimeType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", - size: 670_000, - path: ["Documents", "Reports"], - createdAt: "2025-12-20T14:00:00Z", - modifiedAt: "2026-01-15T14:00:00Z", - owner: teamMember1, - starred: false, - shared: true, - sharedWith: [{ ...owner, role: "editor" }], - trashed: false, - parentId: "folder-documents-reports", - }, - - // Images folder contents - { - id: "img-hero", - name: "hero-banner.png", - type: "image", - mimeType: "image/png", - size: 3_200_000, - path: ["Images"], - createdAt: "2025-12-10T10:00:00Z", - modifiedAt: "2025-12-10T10:00:00Z", - owner, - starred: false, - shared: true, - sharedWith: [{ ...teamMember2, role: "viewer" }], - trashed: false, - parentId: "folder-images", - }, - { - id: "img-logo", - name: "compass-logo.svg", - type: "image", - mimeType: "image/svg+xml", - size: 12_400, - path: ["Images"], - createdAt: "2025-09-01T08:00:00Z", - modifiedAt: "2025-11-15T16:30:00Z", - owner, - starred: true, - shared: true, - sharedWith: [ - { ...teamMember1, role: "editor" }, - { ...teamMember2, role: "viewer" }, - ], - trashed: false, - parentId: "folder-images", - }, - { - id: "img-mockup", - name: "dashboard-mockup.fig", - type: "image", - mimeType: "application/x-figma", - size: 8_900_000, - path: ["Images"], - createdAt: "2025-11-20T14:00:00Z", - modifiedAt: "2026-01-10T11:00:00Z", - owner: teamMember1, - starred: false, - shared: true, - sharedWith: [{ ...owner, role: "editor" }], - trashed: false, - parentId: "folder-images", - }, - { - id: "img-photo1", - name: "team-photo.jpg", - type: "image", - mimeType: "image/jpeg", - size: 4_500_000, - path: ["Images"], - createdAt: "2025-12-20T15:00:00Z", - modifiedAt: "2025-12-20T15:00:00Z", - owner: teamMember3, - starred: false, - shared: true, - sharedWith: [ - { ...owner, role: "viewer" }, - { ...teamMember1, role: "viewer" }, - ], - trashed: false, - parentId: "folder-images", - }, - { - id: "img-screenshot", - name: "app-screenshot.png", - type: "image", - mimeType: "image/png", - size: 1_800_000, - path: ["Images"], - createdAt: "2026-01-08T09:00:00Z", - modifiedAt: "2026-01-08T09:00:00Z", - owner, - starred: false, - shared: false, - trashed: false, - parentId: "folder-images", - }, - - // Projects folder contents - { - id: "folder-projects-compass", - name: "Compass", - type: "folder", - size: 0, - path: ["Projects"], - createdAt: "2025-08-20T08:00:00Z", - modifiedAt: "2026-01-22T16:45:00Z", - owner, - starred: true, - shared: true, - sharedWith: [ - { ...teamMember1, role: "editor" }, - { ...teamMember3, role: "editor" }, - ], - trashed: false, - parentId: "folder-projects", - }, - { - id: "folder-projects-website", - name: "Website Redesign", - type: "folder", - size: 0, - path: ["Projects"], - createdAt: "2025-10-15T09:00:00Z", - modifiedAt: "2026-01-20T10:00:00Z", - owner, - starred: false, - shared: true, - sharedWith: [{ ...teamMember1, role: "editor" }], - trashed: false, - parentId: "folder-projects", - }, - { - id: "proj-spec", - name: "Technical Spec.md", - type: "code", - mimeType: "text/markdown", - size: 34_000, - path: ["Projects"], - createdAt: "2025-09-10T10:00:00Z", - modifiedAt: "2026-01-15T08:00:00Z", - owner, - starred: false, - shared: true, - sharedWith: [{ ...teamMember1, role: "editor" }], - trashed: false, - parentId: "folder-projects", - }, - - // Projects/Compass subfolder - { - id: "compass-readme", - name: "README.md", - type: "code", - mimeType: "text/markdown", - size: 8_200, - path: ["Projects", "Compass"], - createdAt: "2025-08-20T08:30:00Z", - modifiedAt: "2026-01-22T16:45:00Z", - owner, - starred: false, - shared: true, - sharedWith: [{ ...teamMember1, role: "editor" }], - trashed: false, - parentId: "folder-projects-compass", - }, - { - id: "compass-design", - name: "Design System.fig", - type: "image", - mimeType: "application/x-figma", - size: 15_600_000, - path: ["Projects", "Compass"], - createdAt: "2025-09-05T14:00:00Z", - modifiedAt: "2026-01-18T11:30:00Z", - owner: teamMember1, - starred: true, - shared: true, - sharedWith: [ - { ...owner, role: "editor" }, - { ...teamMember3, role: "viewer" }, - ], - trashed: false, - parentId: "folder-projects-compass", - }, - { - id: "compass-api-doc", - name: "API Documentation.pdf", - type: "pdf", - mimeType: "application/pdf", - size: 980_000, - path: ["Projects", "Compass"], - createdAt: "2025-11-01T10:00:00Z", - modifiedAt: "2026-01-12T14:00:00Z", - owner, - starred: false, - shared: true, - sharedWith: [{ ...teamMember3, role: "viewer" }], - trashed: false, - parentId: "folder-projects-compass", - }, - - // Projects/Website Redesign subfolder - { - id: "web-wireframes", - name: "Wireframes.fig", - type: "image", - mimeType: "application/x-figma", - size: 12_300_000, - path: ["Projects", "Website Redesign"], - createdAt: "2025-10-20T11:00:00Z", - modifiedAt: "2026-01-20T10:00:00Z", - owner: teamMember1, - starred: false, - shared: true, - sharedWith: [{ ...owner, role: "editor" }], - trashed: false, - parentId: "folder-projects-website", - }, - { - id: "web-copy", - name: "Website Copy.docx", - type: "document", - mimeType: "application/vnd.openxmlformats-officedocument.wordprocessingml.document", - size: 67_000, - path: ["Projects", "Website Redesign"], - createdAt: "2025-11-15T09:00:00Z", - modifiedAt: "2026-01-16T13:00:00Z", - owner, - starred: false, - shared: true, - sharedWith: [{ ...teamMember1, role: "editor" }], - trashed: false, - parentId: "folder-projects-website", - }, - - // Shared Assets folder (owned by team member) - { - id: "shared-brand-guide", - name: "Brand Guidelines.pdf", - type: "pdf", - mimeType: "application/pdf", - size: 5_400_000, - path: ["Shared Assets"], - createdAt: "2025-11-01T10:00:00Z", - modifiedAt: "2025-11-01T10:00:00Z", - owner: teamMember1, - starred: false, - shared: true, - sharedWith: [ - { ...owner, role: "editor" }, - { ...teamMember2, role: "viewer" }, - ], - trashed: false, - parentId: "folder-shared-assets", - }, - { - id: "shared-icons", - name: "Icon Set.zip", - type: "archive", - mimeType: "application/zip", - size: 2_300_000, - path: ["Shared Assets"], - createdAt: "2025-11-05T14:00:00Z", - modifiedAt: "2025-11-05T14:00:00Z", - owner: teamMember1, - starred: false, - shared: true, - sharedWith: [{ ...owner, role: "viewer" }], - trashed: false, - parentId: "folder-shared-assets", - }, - { - id: "shared-fonts", - name: "Custom Fonts.zip", - type: "archive", - mimeType: "application/zip", - size: 1_100_000, - path: ["Shared Assets"], - createdAt: "2025-11-10T09:00:00Z", - modifiedAt: "2025-11-10T09:00:00Z", - owner: teamMember1, - starred: false, - shared: true, - sharedWith: [{ ...owner, role: "editor" }], - trashed: false, - parentId: "folder-shared-assets", - }, - - // Root-level files - { - id: "root-video", - name: "Product Demo.mp4", - type: "video", - mimeType: "video/mp4", - size: 45_000_000, - path: [], - createdAt: "2025-12-15T16:00:00Z", - modifiedAt: "2025-12-15T16:00:00Z", - owner, - starred: false, - shared: true, - sharedWith: [ - { ...teamMember1, role: "viewer" }, - { ...teamMember2, role: "viewer" }, - { ...teamMember3, role: "viewer" }, - ], - trashed: false, - parentId: null, - }, - { - id: "root-audio", - name: "Podcast Recording.mp3", - type: "audio", - mimeType: "audio/mpeg", - size: 18_500_000, - path: [], - createdAt: "2026-01-05T11:00:00Z", - modifiedAt: "2026-01-05T11:00:00Z", - owner: teamMember3, - starred: false, - shared: true, - sharedWith: [{ ...owner, role: "viewer" }], - trashed: false, - parentId: null, - }, - { - id: "root-presentation", - name: "Q1 Kickoff.pptx", - type: "document", - mimeType: "application/vnd.openxmlformats-officedocument.presentationml.presentation", - size: 6_700_000, - path: [], - createdAt: "2026-01-02T08:00:00Z", - modifiedAt: "2026-01-20T17:00:00Z", - owner, - starred: true, - shared: true, - sharedWith: [ - { ...teamMember1, role: "editor" }, - { ...teamMember3, role: "editor" }, - ], - trashed: false, - parentId: null, - }, - { - id: "root-config", - name: "deploy-config.yaml", - type: "code", - mimeType: "text/yaml", - size: 2_400, - path: [], - createdAt: "2025-11-20T10:00:00Z", + createdAt: "2025-06-01T08:00:00Z", modifiedAt: "2026-01-10T09:00:00Z", owner, starred: false, @@ -618,103 +69,642 @@ export const mockFiles: FileItem[] = [ trashed: false, parentId: null, }, - - // Trashed files { - id: "trash-old-draft", - name: "Old Draft.docx", - type: "document", - mimeType: "application/vnd.openxmlformats-officedocument.wordprocessingml.document", - size: 156_000, - path: ["Documents"], - createdAt: "2025-08-10T10:00:00Z", - modifiedAt: "2025-12-28T14:00:00Z", - owner, - starred: false, - shared: false, - trashed: true, - parentId: "folder-documents", - }, - { - id: "trash-screenshot", - name: "old-screenshot.png", - type: "image", - mimeType: "image/png", - size: 2_400_000, - path: ["Images"], - createdAt: "2025-07-15T09:00:00Z", - modifiedAt: "2025-12-20T11:00:00Z", - owner, - starred: false, - shared: false, - trashed: true, - parentId: "folder-images", - }, - { - id: "trash-backup", - name: "backup-nov.zip", - type: "archive", - mimeType: "application/zip", - size: 34_000_000, + id: "folder-01-company-structure", + name: "01_CompanyStructure", + type: "folder", + size: 0, path: [], - createdAt: "2025-11-30T22:00:00Z", - modifiedAt: "2026-01-05T08:00:00Z", + createdAt: "2025-06-01T08:00:00Z", + modifiedAt: "2025-12-15T10:00:00Z", owner, starred: false, shared: false, - trashed: true, + trashed: false, + parentId: null, + }, + { + id: "folder-02-sops", + name: "02_SOPs", + type: "folder", + size: 0, + path: [], + createdAt: "2025-06-01T08:00:00Z", + modifiedAt: "2026-01-05T14:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [ + { ...pm1, role: "viewer" }, + { ...pm2, role: "viewer" }, + ], + trashed: false, + parentId: null, + }, + { + id: "folder-03-hr", + name: "03_HumanResources", + type: "folder", + size: 0, + path: [], + createdAt: "2025-06-01T08:00:00Z", + modifiedAt: "2025-11-20T16:00:00Z", + owner, + starred: false, + shared: false, + trashed: false, + parentId: null, + }, + { + id: "folder-04-ar", + name: "04_AccountsReceivable", + type: "folder", + size: 0, + path: [], + createdAt: "2025-06-01T08:00:00Z", + modifiedAt: "2026-01-15T11:00:00Z", + owner, + starred: false, + shared: false, + trashed: false, + parentId: null, + }, + { + id: "folder-05-ap", + name: "05_AccountsPayable", + type: "folder", + size: 0, + path: [], + createdAt: "2025-06-01T08:00:00Z", + modifiedAt: "2026-01-18T09:30:00Z", + owner, + starred: false, + shared: false, + trashed: false, + parentId: null, + }, + { + id: "folder-06-licenses", + name: "06_LicensesRegistrations", + type: "folder", + size: 0, + path: [], + createdAt: "2025-06-01T08:00:00Z", + modifiedAt: "2025-09-10T12:00:00Z", + owner, + starred: false, + shared: false, + trashed: false, + parentId: null, + }, + { + id: "folder-11-nutech", + name: "11_NuTechProjects", + type: "folder", + size: 0, + path: [], + createdAt: "2025-06-01T08:00:00Z", + modifiedAt: "2026-01-20T14:00:00Z", + owner, + starred: true, + shared: true, + sharedWith: [ + { ...pm1, role: "editor" }, + { ...pm2, role: "editor" }, + ], + trashed: false, + parentId: null, + }, + { + id: "folder-12-design", + name: "12_DesignProjects", + type: "folder", + size: 0, + path: [], + createdAt: "2025-06-01T08:00:00Z", + modifiedAt: "2025-12-01T10:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm2, role: "editor" }], + trashed: false, + parentId: null, + }, + { + id: "folder-14-orc", + name: "14_ORCProjects", + type: "folder", + size: 0, + path: [], + createdAt: "2025-06-01T08:00:00Z", + modifiedAt: "2026-01-22T16:00:00Z", + owner, + starred: true, + shared: true, + sharedWith: [ + { ...pm1, role: "editor" }, + { ...pm2, role: "editor" }, + { ...field1, role: "viewer" }, + ], + trashed: false, parentId: null, }, - // Archive folder contents + // ─── 03_HumanResources contents ─── { - id: "archive-old-project", - name: "2024 Campaign.zip", - type: "archive", - mimeType: "application/zip", - size: 89_000_000, - path: ["Archive"], - createdAt: "2025-01-15T10:00:00Z", - modifiedAt: "2025-06-10T12:00:00Z", + id: "folder-hr-employee", + name: "00_Employee", + type: "folder", + size: 0, + path: ["03_HumanResources"], + createdAt: "2025-06-01T08:00:00Z", + modifiedAt: "2025-11-20T16:00:00Z", owner, starred: false, shared: false, trashed: false, - parentId: "folder-archive", + parentId: "folder-03-hr", + }, + + // ─── 11_NuTechProjects: sample project ─── + { + id: "folder-nutech-001", + name: "N-001-1234-Johnson", + type: "folder", + size: 0, + path: ["11_NuTechProjects"], + createdAt: "2025-08-15T09:00:00Z", + modifiedAt: "2026-01-20T14:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm1, role: "editor" }], + trashed: false, + parentId: "folder-11-nutech", }, { - id: "archive-legacy-docs", - name: "Legacy Documentation.pdf", + id: "folder-nutech-002", + name: "N-002-5600-Martinez", + type: "folder", + size: 0, + path: ["11_NuTechProjects"], + createdAt: "2025-10-01T10:00:00Z", + modifiedAt: "2026-01-18T11:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm2, role: "editor" }], + trashed: false, + parentId: "folder-11-nutech", + }, + + // ─── 14_ORCProjects: sample project ─── + { + id: "folder-orc-001", + name: "O-001-5678-Williams", + type: "folder", + size: 0, + path: ["14_ORCProjects"], + createdAt: "2025-07-10T08:00:00Z", + modifiedAt: "2026-01-22T16:00:00Z", + owner, + starred: true, + shared: true, + sharedWith: [ + { ...pm1, role: "editor" }, + { ...field1, role: "viewer" }, + ], + trashed: false, + parentId: "folder-14-orc", + }, + { + id: "folder-orc-002", + name: "O-002-9012-Chen", + type: "folder", + size: 0, + path: ["14_ORCProjects"], + createdAt: "2025-09-20T09:00:00Z", + modifiedAt: "2026-01-15T13:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm2, role: "editor" }], + trashed: false, + parentId: "folder-14-orc", + }, + + // ─── O-001-5678-Williams subfolders ─── + { + id: "folder-orc001-estimate", + name: "02_WorkingEstimate", + type: "folder", + size: 0, + path: ["14_ORCProjects", "O-001-5678-Williams"], + createdAt: "2025-07-10T08:00:00Z", + modifiedAt: "2026-01-10T15:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm1, role: "editor" }], + trashed: false, + parentId: "folder-orc-001", + }, + { + id: "folder-orc001-payrequests", + name: "03_PayRequests", + type: "folder", + size: 0, + path: ["14_ORCProjects", "O-001-5678-Williams"], + createdAt: "2025-07-10T08:00:00Z", + modifiedAt: "2026-01-20T10:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm1, role: "editor" }], + trashed: false, + parentId: "folder-orc-001", + }, + { + id: "folder-orc001-constructionlog", + name: "07_ConstructionLog", + type: "folder", + size: 0, + path: ["14_ORCProjects", "O-001-5678-Williams"], + createdAt: "2025-07-10T08:00:00Z", + modifiedAt: "2026-01-22T08:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...field1, role: "editor" }], + trashed: false, + parentId: "folder-orc-001", + }, + { + id: "folder-orc001-precon", + name: "10_Preconstruction", + type: "folder", + size: 0, + path: ["14_ORCProjects", "O-001-5678-Williams"], + createdAt: "2025-07-10T08:00:00Z", + modifiedAt: "2025-12-15T14:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm1, role: "editor" }], + trashed: false, + parentId: "folder-orc-001", + }, + + // ─── 03_PayRequests: sample pay app ─── + { + id: "folder-orc001-payapp1", + name: "PayApplication-01-December-2025", + type: "folder", + size: 0, + path: [ + "14_ORCProjects", + "O-001-5678-Williams", + "03_PayRequests", + ], + createdAt: "2025-12-01T09:00:00Z", + modifiedAt: "2025-12-15T16:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm1, role: "editor" }], + trashed: false, + parentId: "folder-orc001-payrequests", + }, + { + id: "folder-orc001-payapp2", + name: "PayApplication-02-January-2026", + type: "folder", + size: 0, + path: [ + "14_ORCProjects", + "O-001-5678-Williams", + "03_PayRequests", + ], + createdAt: "2026-01-02T09:00:00Z", + modifiedAt: "2026-01-20T10:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm1, role: "editor" }], + trashed: false, + parentId: "folder-orc001-payrequests", + }, + + // ─── 10_Preconstruction subfolders ─── + { + id: "folder-orc001-designs", + name: "01_WorkingDesigns", + type: "folder", + size: 0, + path: [ + "14_ORCProjects", + "O-001-5678-Williams", + "10_Preconstruction", + ], + createdAt: "2025-07-10T08:00:00Z", + modifiedAt: "2025-11-20T11:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm1, role: "editor" }], + trashed: false, + parentId: "folder-orc001-precon", + }, + { + id: "folder-orc001-estimates", + name: "04_PreconstructionEstimates", + type: "folder", + size: 0, + path: [ + "14_ORCProjects", + "O-001-5678-Williams", + "10_Preconstruction", + ], + createdAt: "2025-07-10T08:00:00Z", + modifiedAt: "2025-12-15T14:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm1, role: "editor" }], + trashed: false, + parentId: "folder-orc001-precon", + }, + + // ─── Estimate version 00 (CSI divisions) ─── + { + id: "folder-est-v00", + name: "O-001-5678-00", + type: "folder", + size: 0, + path: [ + "14_ORCProjects", + "O-001-5678-Williams", + "10_Preconstruction", + "04_PreconstructionEstimates", + ], + createdAt: "2025-07-15T08:00:00Z", + modifiedAt: "2025-10-20T14:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm1, role: "editor" }], + trashed: false, + parentId: "folder-orc001-estimates", + }, + { + id: "folder-est-v01", + name: "O-001-5678-01", + type: "folder", + size: 0, + path: [ + "14_ORCProjects", + "O-001-5678-Williams", + "10_Preconstruction", + "04_PreconstructionEstimates", + ], + createdAt: "2025-10-25T09:00:00Z", + modifiedAt: "2025-12-15T14:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm1, role: "editor" }], + trashed: false, + parentId: "folder-orc001-estimates", + }, + + // ─── CSI division folders inside estimate v00 ─── + ...buildCsiDivisions("folder-est-v00", [ + "14_ORCProjects", + "O-001-5678-Williams", + "10_Preconstruction", + "04_PreconstructionEstimates", + "O-001-5678-00", + ]), + + // ─── Sample files scattered throughout ─── + { + id: "file-corp-insurance", + name: "General Liability Policy 2026.pdf", type: "pdf", mimeType: "application/pdf", - size: 3_200_000, - path: ["Archive"], - createdAt: "2025-03-20T14:00:00Z", - modifiedAt: "2025-03-20T14:00:00Z", + size: 2_400_000, + path: ["00_Corporate"], + createdAt: "2025-12-20T10:00:00Z", + modifiedAt: "2025-12-20T10:00:00Z", owner, starred: false, shared: false, trashed: false, - parentId: "folder-archive", + parentId: "folder-00-corporate", }, { - id: "archive-old-video", - name: "Training Video 2024.mp4", - type: "video", - mimeType: "video/mp4", - size: 120_000_000, - path: ["Archive"], - createdAt: "2024-11-10T16:00:00Z", - modifiedAt: "2024-11-10T16:00:00Z", + id: "file-sop-safety", + name: "Safety Protocol v3.pdf", + type: "pdf", + mimeType: "application/pdf", + size: 890_000, + path: ["02_SOPs"], + createdAt: "2025-09-01T08:00:00Z", + modifiedAt: "2026-01-05T14:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [ + { ...pm1, role: "viewer" }, + { ...field1, role: "viewer" }, + ], + trashed: false, + parentId: "folder-02-sops", + }, + { + id: "file-sop-closeout", + name: "Project Closeout Checklist.docx", + type: "document", + mimeType: "application/vnd.openxmlformats-officedocument.wordprocessingml.document", + size: 145_000, + path: ["02_SOPs"], + createdAt: "2025-07-15T10:00:00Z", + modifiedAt: "2025-11-10T09:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm2, role: "viewer" }], + trashed: false, + parentId: "folder-02-sops", + }, + { + id: "file-license-gc", + name: "GC License - State.pdf", + type: "pdf", + mimeType: "application/pdf", + size: 520_000, + path: ["06_LicensesRegistrations"], + createdAt: "2025-03-01T08:00:00Z", + modifiedAt: "2025-03-01T08:00:00Z", owner, starred: false, shared: false, trashed: false, - parentId: "folder-archive", + parentId: "folder-06-licenses", + }, + { + id: "file-orc001-estimate-v00", + name: "Working Estimate v0.xlsx", + type: "spreadsheet", + mimeType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + size: 1_200_000, + path: ["14_ORCProjects", "O-001-5678-Williams", "02_WorkingEstimate"], + createdAt: "2025-08-01T10:00:00Z", + modifiedAt: "2026-01-10T15:00:00Z", + owner: pm1, + starred: false, + shared: true, + sharedWith: [{ ...owner, role: "editor" }], + trashed: false, + parentId: "folder-orc001-estimate", + }, + { + id: "file-orc001-log-jan", + name: "Daily Log 2026-01-22.pdf", + type: "pdf", + mimeType: "application/pdf", + size: 340_000, + path: [ + "14_ORCProjects", + "O-001-5678-Williams", + "07_ConstructionLog", + ], + createdAt: "2026-01-22T17:00:00Z", + modifiedAt: "2026-01-22T17:00:00Z", + owner: field1, + starred: false, + shared: true, + sharedWith: [{ ...owner, role: "viewer" }], + trashed: false, + parentId: "folder-orc001-constructionlog", + }, + { + id: "file-orc001-floorplan", + name: "Floor Plan Rev C.pdf", + type: "pdf", + mimeType: "application/pdf", + size: 8_900_000, + path: [ + "14_ORCProjects", + "O-001-5678-Williams", + "10_Preconstruction", + "01_WorkingDesigns", + ], + createdAt: "2025-09-15T14:00:00Z", + modifiedAt: "2025-11-20T11:00:00Z", + owner: pm1, + starred: true, + shared: true, + sharedWith: [{ ...owner, role: "editor" }], + trashed: false, + parentId: "folder-orc001-designs", + }, + { + id: "file-orc001-elevations", + name: "Elevations Rev B.pdf", + type: "pdf", + mimeType: "application/pdf", + size: 6_200_000, + path: [ + "14_ORCProjects", + "O-001-5678-Williams", + "10_Preconstruction", + "01_WorkingDesigns", + ], + createdAt: "2025-09-15T14:30:00Z", + modifiedAt: "2025-10-28T09:00:00Z", + owner: pm1, + starred: false, + shared: true, + sharedWith: [{ ...owner, role: "editor" }], + trashed: false, + parentId: "folder-orc001-designs", + }, + { + id: "file-payapp1-invoice", + name: "Invoice-Dec-2025.pdf", + type: "pdf", + mimeType: "application/pdf", + size: 450_000, + path: [ + "14_ORCProjects", + "O-001-5678-Williams", + "03_PayRequests", + "PayApplication-01-December-2025", + ], + createdAt: "2025-12-10T14:00:00Z", + modifiedAt: "2025-12-15T16:00:00Z", + owner: pm1, + starred: false, + shared: true, + sharedWith: [{ ...owner, role: "editor" }], + trashed: false, + parentId: "folder-orc001-payapp1", }, ] export const mockStorageUsage: StorageUsage = { - used: 412_000_000, + used: 156_000_000, total: 5_000_000_000, } + +// ─── CSI Division folder generator ─── + +const CSI_DIVISIONS = [ + "00 00 00 Procurement Req", + "01 00 00 General Req", + "02 00 00 Ext Conditions", + "03 00 00 Concrete", + "04 00 00 Masonry", + "05 00 00 Metals", + "06 00 00 Woods Plastics and Composites", + "07 00 00 Thermal Protection", + "08 00 00 Openings", + "09 00 00 Finishes", + "10 00 00 Specialties", + "11 00 00 Equipment", + "12 00 00 Furnishings", + "13 00 00 Special Const", + "14 00 00 Conveying Equipment", + "21 00 00 Fire Suppression", + "22 00 00 Plumbing", + "23 00 00 HVAC", + "26 00 00 Electrical", + "27 00 00 Communications", + "28 00 00 Safety and Security", + "31 00 00 Earthwork", + "32 00 00 Exterior Improvement", + "33 00 00 Utilities", + "48 00 00 Electrical Power Generation Equipment", +] as const + +function buildCsiDivisions( + parentId: string, + parentPath: string[] +): FileItem[] { + return CSI_DIVISIONS.map((name) => ({ + id: `${parentId}-csi-${name.slice(0, 2)}`, + name, + type: "folder" as FileType, + size: 0, + path: parentPath, + createdAt: "2025-07-15T08:00:00Z", + modifiedAt: "2025-10-20T14:00:00Z", + owner, + starred: false, + shared: true, + sharedWith: [{ ...pm1, role: "editor" as SharedRole }], + trashed: false, + parentId, + })) +}