@@ -16,6 +16,17 @@ import {
1616 Shield ,
1717 AppWindow ,
1818 Layers ,
19+ Eye ,
20+ FileCode ,
21+ Palette ,
22+ CheckSquare ,
23+ Webhook ,
24+ Lock ,
25+ Link2 ,
26+ Map ,
27+ PieChart ,
28+ Anchor ,
29+ UserCog ,
1930 type LucideIcon ,
2031} from "lucide-react"
2132import { useState , useEffect , useCallback } from "react"
@@ -48,23 +59,51 @@ import {
4859
4960/** Icon & label hints for well-known metadata types */
5061const META_TYPE_HINTS : Record < string , { label : string ; icon : LucideIcon } > = {
51- object : { label : 'Objects' , icon : Package } ,
52- objects : { label : 'Objects' , icon : Package } ,
53- app : { label : 'Apps' , icon : AppWindow } ,
54- apps : { label : 'Apps' , icon : AppWindow } ,
55- actions : { label : 'Actions' , icon : Zap } ,
56- dashboards : { label : 'Dashboards' , icon : BarChart3 } ,
57- reports : { label : 'Reports' , icon : FileText } ,
58- flows : { label : 'Flows' , icon : Workflow } ,
59- agents : { label : 'Agents' , icon : Bot } ,
60- apis : { label : 'APIs' , icon : Globe } ,
61- ragPipelines : { label : 'RAG Pipelines' , icon : BookOpen } ,
62- profiles : { label : 'Profiles' , icon : Shield } ,
63- sharingRules : { label : 'Sharing Rules' , icon : Shield } ,
64- data : { label : 'Seed Data' , icon : Database } ,
65- plugin : { label : 'Plugins' , icon : Layers } ,
66- plugins : { label : 'Plugins' , icon : Layers } ,
67- kind : { label : 'Kinds' , icon : Database } ,
62+ // Data Protocol
63+ object : { label : 'Objects' , icon : Package } ,
64+ objects : { label : 'Objects' , icon : Package } ,
65+ hooks : { label : 'Hooks' , icon : Anchor } ,
66+ mappings : { label : 'Mappings' , icon : Map } ,
67+ analyticsCubes : { label : 'Analytics Cubes' , icon : PieChart } ,
68+ data : { label : 'Seed Data' , icon : Database } ,
69+
70+ // UI Protocol
71+ app : { label : 'Apps' , icon : AppWindow } ,
72+ apps : { label : 'Apps' , icon : AppWindow } ,
73+ actions : { label : 'Actions' , icon : Zap } ,
74+ views : { label : 'Views' , icon : Eye } ,
75+ pages : { label : 'Pages' , icon : FileCode } ,
76+ dashboards : { label : 'Dashboards' , icon : BarChart3 } ,
77+ reports : { label : 'Reports' , icon : FileText } ,
78+ themes : { label : 'Themes' , icon : Palette } ,
79+
80+ // Automation Protocol
81+ flows : { label : 'Flows' , icon : Workflow } ,
82+ workflows : { label : 'Workflows' , icon : Workflow } ,
83+ approvals : { label : 'Approvals' , icon : CheckSquare } ,
84+ webhooks : { label : 'Webhooks' , icon : Webhook } ,
85+
86+ // Security Protocol
87+ roles : { label : 'Roles' , icon : UserCog } ,
88+ permissions : { label : 'Permissions' , icon : Lock } ,
89+ profiles : { label : 'Profiles' , icon : Shield } ,
90+ sharingRules : { label : 'Sharing Rules' , icon : Shield } ,
91+ policies : { label : 'Policies' , icon : Shield } ,
92+
93+ // AI Protocol
94+ agents : { label : 'Agents' , icon : Bot } ,
95+ ragPipelines : { label : 'RAG Pipelines' , icon : BookOpen } ,
96+
97+ // API Protocol
98+ apis : { label : 'APIs' , icon : Globe } ,
99+
100+ // Integration Protocol
101+ connectors : { label : 'Connectors' , icon : Link2 } ,
102+
103+ // Internal
104+ plugin : { label : 'Plugins' , icon : Layers } ,
105+ plugins : { label : 'Plugins' , icon : Layers } ,
106+ kind : { label : 'Kinds' , icon : Database } ,
68107} ;
69108
70109function getTypeLabel ( type : string ) : string {
@@ -163,16 +202,38 @@ export function AppSidebar({ selectedObject, onSelectObject, selectedMeta, onSel
163202
164203 // Priority order for sidebar sections — lower index = higher up
165204 const TYPE_PRIORITY : Record < string , number > = {
205+ // Data
166206 objects : 0 , object : 0 ,
167- actions : 1 ,
168- flows : 2 ,
169- dashboards : 3 ,
170- reports : 4 ,
171- agents : 5 ,
172- apis : 6 ,
173- ragPipelines : 7 ,
174- profiles : 8 ,
175- sharingRules : 9 ,
207+ hooks : 1 ,
208+ // UI
209+ actions : 10 ,
210+ views : 11 ,
211+ pages : 12 ,
212+ dashboards : 13 ,
213+ reports : 14 ,
214+ themes : 15 ,
215+ // Automation
216+ flows : 20 ,
217+ workflows : 21 ,
218+ approvals : 22 ,
219+ webhooks : 23 ,
220+ // Security
221+ roles : 30 ,
222+ permissions : 31 ,
223+ profiles : 32 ,
224+ sharingRules : 33 ,
225+ policies : 34 ,
226+ // AI
227+ agents : 40 ,
228+ ragPipelines : 41 ,
229+ // API
230+ apis : 50 ,
231+ // Integration
232+ connectors : 51 ,
233+ // Data Extensions
234+ mappings : 60 ,
235+ analyticsCubes : 61 ,
236+ data : 70 ,
176237 } ;
177238 const DEFAULT_PRIORITY = 100 ;
178239
0 commit comments