99 * - ListView delegation for non-grid view types (kanban, calendar, chart, etc.)
1010 */
1111
12- import { useMemo , useState , useCallback , useEffect , type ComponentType } from 'react' ;
12+ import { useMemo , useState , useCallback , useEffect } from 'react' ;
1313import { useParams , useSearchParams , useNavigate } from 'react-router-dom' ;
1414import { ObjectChart } from '@object-ui/plugin-charts' ;
1515import { ListView } from '@object-ui/plugin-list' ;
1616import { DetailView , RecordChatterPanel } from '@object-ui/plugin-detail' ;
1717import { ObjectView as PluginObjectView } from '@object-ui/plugin-view' ;
18- import type { AvailableViewType } from '@object-ui/plugin-view' ;
1918// Import plugins for side-effects (registration)
2019import '@object-ui/plugin-grid' ;
2120import '@object-ui/plugin-kanban' ;
2221import '@object-ui/plugin-calendar' ;
2322import { Button , Empty , EmptyTitle , EmptyDescription , NavigationOverlay , DropdownMenu , DropdownMenuContent , DropdownMenuItem , DropdownMenuTrigger , DropdownMenuSeparator } from '@object-ui/components' ;
24- import { Plus , Table as TableIcon , Settings2 , Wrench , KanbanSquare , Calendar , LayoutGrid , Activity , GanttChart , MapPin , BarChart3 } from 'lucide-react' ;
23+ import { Plus , Table as TableIcon , Settings2 , Wrench } from 'lucide-react' ;
2524import type { ListViewSchema , ViewNavigationConfig , FeedItem } from '@object-ui/types' ;
2625import { MetadataToggle , MetadataPanel , useMetadataInspector } from './MetadataInspector' ;
2726import { ViewConfigPanel } from './ViewConfigPanel' ;
@@ -32,30 +31,6 @@ import { useAuth } from '@object-ui/auth';
3231import { useRealtimeSubscription , useConflictResolution } from '@object-ui/collaboration' ;
3332import { useNavigationOverlay , SchemaRenderer } from '@object-ui/react' ;
3433
35- /** Map view types to Lucide icons (Airtable-style) */
36- const VIEW_TYPE_ICONS : Record < string , ComponentType < { className ?: string } > > = {
37- grid : TableIcon ,
38- kanban : KanbanSquare ,
39- calendar : Calendar ,
40- gallery : LayoutGrid ,
41- timeline : Activity ,
42- gantt : GanttChart ,
43- map : MapPin ,
44- chart : BarChart3 ,
45- } ;
46-
47- /** Available view types for quick-switch palette */
48- const AVAILABLE_VIEW_TYPES : AvailableViewType [ ] = [
49- { type : 'grid' , label : 'Grid' , description : 'Spreadsheet-style rows and columns' } ,
50- { type : 'kanban' , label : 'Kanban' , description : 'Drag cards between columns' } ,
51- { type : 'calendar' , label : 'Calendar' , description : 'View records on a calendar' } ,
52- { type : 'gallery' , label : 'Gallery' , description : 'Visual card layout' } ,
53- { type : 'timeline' , label : 'Timeline' , description : 'Chronological event view' } ,
54- { type : 'gantt' , label : 'Gantt' , description : 'Project timeline with dependencies' } ,
55- { type : 'map' , label : 'Map' , description : 'Geographic location view' } ,
56- { type : 'chart' , label : 'Chart' , description : 'Data visualization' } ,
57- ] ;
58-
5934const FALLBACK_USER = { id : 'current-user' , name : 'Demo User' } ;
6035
6136/**
0 commit comments