@@ -3164,6 +3164,110 @@ export function FileExplorer(props: FileExplorerProps) {
31643164 e . dataTransfer ! . dropEffect = "copy" ;
31653165 } }
31663166 >
3167+ { /* Header with title and action buttons - Figma design */ }
3168+ < div
3169+ class = "file-explorer-header"
3170+ style = { {
3171+ display : "flex" ,
3172+ "align-items" : "center" ,
3173+ "justify-content" : "space-between" ,
3174+ padding : "8px 16px" ,
3175+ height : "32px" ,
3176+ "flex-shrink" : "0" ,
3177+ } }
3178+ >
3179+ < div style = { { display : "flex" , "align-items" : "center" , gap : "4px" } } >
3180+ < span
3181+ style = { {
3182+ "font-family" : "var(--figma-font-sans, Inter, sans-serif)" ,
3183+ "font-size" : "12px" ,
3184+ "font-weight" : "600" ,
3185+ color : "var(--figma-text-secondary, #A0A0A0)" ,
3186+ "text-transform" : "uppercase" ,
3187+ "letter-spacing" : "0.5px" ,
3188+ } }
3189+ >
3190+ { explorerTitle ( ) }
3191+ </ span >
3192+ < Icon name = "chevron-down" size = { 16 } color = "var(--figma-text-muted, #808080)" />
3193+ </ div >
3194+
3195+ < div style = { { display : "flex" , "align-items" : "center" , gap : "8px" } } >
3196+ < button
3197+ onClick = { ( ) => setShowSearch ( ! showSearch ( ) ) }
3198+ title = "Search (Ctrl+Shift+F)"
3199+ style = { {
3200+ width : "16px" ,
3201+ height : "16px" ,
3202+ display : "flex" ,
3203+ "align-items" : "center" ,
3204+ "justify-content" : "center" ,
3205+ background : "transparent" ,
3206+ border : "none" ,
3207+ cursor : "pointer" ,
3208+ padding : "0" ,
3209+ color : "var(--figma-text-muted, #808080)" ,
3210+ } }
3211+ >
3212+ < Icon name = "magnifying-glass" size = { 16 } />
3213+ </ button >
3214+ < button
3215+ onClick = { handleAddFolder }
3216+ title = "New File"
3217+ style = { {
3218+ width : "16px" ,
3219+ height : "16px" ,
3220+ display : "flex" ,
3221+ "align-items" : "center" ,
3222+ "justify-content" : "center" ,
3223+ background : "transparent" ,
3224+ border : "none" ,
3225+ cursor : "pointer" ,
3226+ padding : "0" ,
3227+ color : "var(--figma-text-muted, #808080)" ,
3228+ } }
3229+ >
3230+ < Icon name = "plus" size = { 16 } />
3231+ </ button >
3232+ < button
3233+ onClick = { ( ) => window . dispatchEvent ( new CustomEvent ( "explorer:refresh" ) ) }
3234+ title = "Refresh"
3235+ style = { {
3236+ width : "16px" ,
3237+ height : "16px" ,
3238+ display : "flex" ,
3239+ "align-items" : "center" ,
3240+ "justify-content" : "center" ,
3241+ background : "transparent" ,
3242+ border : "none" ,
3243+ cursor : "pointer" ,
3244+ padding : "0" ,
3245+ color : "var(--figma-text-muted, #808080)" ,
3246+ } }
3247+ >
3248+ < Icon name = "arrows-rotate" size = { 16 } />
3249+ </ button >
3250+ < button
3251+ onClick = { ( ) => window . dispatchEvent ( new CustomEvent ( "explorer:collapse-all" ) ) }
3252+ title = "Collapse All"
3253+ style = { {
3254+ width : "16px" ,
3255+ height : "16px" ,
3256+ display : "flex" ,
3257+ "align-items" : "center" ,
3258+ "justify-content" : "center" ,
3259+ background : "transparent" ,
3260+ border : "none" ,
3261+ cursor : "pointer" ,
3262+ padding : "0" ,
3263+ color : "var(--figma-text-muted, #808080)" ,
3264+ } }
3265+ >
3266+ < Icon name = "chevrons-up" size = { 16 } />
3267+ </ button >
3268+ </ div >
3269+ </ div >
3270+
31673271 { /* Search bar */ }
31683272 < Show when = { showSearch ( ) } >
31693273 < div
0 commit comments