@@ -107,16 +107,38 @@ export function BackendChatInput({ chatId }: { chatId?: number }) {
107107
108108 try {
109109 // Import terminal output functions
110- const { addTerminalOutput } = await import ( "../../ipc/handlers/terminal_handlers" ) ;
110+ const { addTerminalOutput } = await import (
111+ "../../ipc/handlers/terminal_handlers"
112+ ) ;
111113
112114 // Initialize backend terminal with welcome message
113- addTerminalOutput ( appId , "backend" , `🚀 Backend Development Environment Ready` , "output" ) ;
114- addTerminalOutput ( appId , "backend" , `Type commands or ask me to run backend operations...` , "output" ) ;
115+ addTerminalOutput (
116+ appId ,
117+ "backend" ,
118+ `🚀 Backend Development Environment Ready` ,
119+ "output" ,
120+ ) ;
121+ addTerminalOutput (
122+ appId ,
123+ "backend" ,
124+ `Type commands or ask me to run backend operations...` ,
125+ "output" ,
126+ ) ;
115127
116128 // For fullstack mode, also initialize frontend terminal
117129 if ( settings ?. selectedChatMode === "fullstack" ) {
118- addTerminalOutput ( appId , "frontend" , `🚀 Frontend Development Environment Ready` , "output" ) ;
119- addTerminalOutput ( appId , "frontend" , `Type commands or ask me to run frontend operations...` , "output" ) ;
130+ addTerminalOutput (
131+ appId ,
132+ "frontend" ,
133+ `🚀 Frontend Development Environment Ready` ,
134+ "output" ,
135+ ) ;
136+ addTerminalOutput (
137+ appId ,
138+ "frontend" ,
139+ `Type commands or ask me to run frontend operations...` ,
140+ "output" ,
141+ ) ;
120142 }
121143 } catch ( error ) {
122144 logger . error ( "Failed to initialize terminals:" , error ) ;
@@ -283,7 +305,9 @@ export function BackendChatInput({ chatId }: { chatId?: number }) {
283305 { /* Backend Mode Indicator */ }
284306 < div className = "flex items-center justify-center px-3 py-2 bg-blue-100 dark:bg-blue-900 text-blue-800 dark:text-blue-200" >
285307 < Server size = { 16 } className = "mr-2" />
286- < span className = "text-sm font-medium" > Backend Development Mode Active</ span >
308+ < span className = "text-sm font-medium" >
309+ Backend Development Mode Active
310+ </ span >
287311 </ div >
288312
289313 { /* Only render ChatInputActions if proposal is loaded */ }
@@ -358,7 +382,10 @@ export function BackendChatInput({ chatId }: { chatId?: number }) {
358382 </ div >
359383 < div className = "pl-2 pr-1 flex items-center justify-between pb-2" >
360384 < div className = "flex items-center" >
361- < ChatInputControls showContextFilesPicker = { true } appId = { appId ?? undefined } />
385+ < ChatInputControls
386+ showContextFilesPicker = { true }
387+ appId = { appId ?? undefined }
388+ />
362389 { /* File attachment dropdown */ }
363390 < FileAttachmentDropdown
364391 onFileSelect = { handleFileSelect }
@@ -418,7 +445,11 @@ function BackendChatInputActions({
418445 return < div > Backend tip proposal</ div > ;
419446 }
420447 if ( proposal . type === "action-proposal" ) {
421- return < BackendActionProposalActions proposal = { proposal } > </ BackendActionProposalActions > ;
448+ return (
449+ < BackendActionProposalActions
450+ proposal = { proposal }
451+ > </ BackendActionProposalActions >
452+ ) ;
422453 }
423454
424455 // Split files into server functions and other files - only for CodeProposal
@@ -517,7 +548,9 @@ function BackendChatInputActions({
517548 < div className = "p-3 border-t border-blue-200 dark:border-blue-800 bg-blue-50/50 dark:bg-blue-950/20 text-sm" >
518549 { ! ! proposal . securityRisks . length && (
519550 < div className = "mb-3" >
520- < h4 className = "font-semibold mb-1 text-blue-800 dark:text-blue-200" > Security Risks</ h4 >
551+ < h4 className = "font-semibold mb-1 text-blue-800 dark:text-blue-200" >
552+ Security Risks
553+ </ h4 >
521554 < ul className = "space-y-1" >
522555 { proposal . securityRisks . map ( ( risk , index ) => (
523556 < li key = { index } className = "flex items-start space-x-2" >
@@ -544,7 +577,9 @@ function BackendChatInputActions({
544577
545578 { proposal . sqlQueries ?. length > 0 && (
546579 < div className = "mb-3" >
547- < h4 className = "font-semibold mb-1 text-blue-800 dark:text-blue-200" > SQL Queries</ h4 >
580+ < h4 className = "font-semibold mb-1 text-blue-800 dark:text-blue-200" >
581+ SQL Queries
582+ </ h4 >
548583 < ul className = "space-y-2" >
549584 { proposal . sqlQueries . map ( ( query , index ) => (
550585 < BackendSqlQueryItem key = { index } query = { query } />
@@ -555,7 +590,9 @@ function BackendChatInputActions({
555590
556591 { proposal . packagesAdded ?. length > 0 && (
557592 < div className = "mb-3" >
558- < h4 className = "font-semibold mb-1 text-blue-800 dark:text-blue-200" > Backend Packages Added</ h4 >
593+ < h4 className = "font-semibold mb-1 text-blue-800 dark:text-blue-200" >
594+ Backend Packages Added
595+ </ h4 >
559596 < ul className = "space-y-1" >
560597 { proposal . packagesAdded . map ( ( pkg , index ) => (
561598 < li
@@ -582,7 +619,9 @@ function BackendChatInputActions({
582619
583620 { serverFunctions . length > 0 && (
584621 < div className = "mb-3" >
585- < h4 className = "font-semibold mb-1 text-blue-800 dark:text-blue-200" > Server Functions Changed</ h4 >
622+ < h4 className = "font-semibold mb-1 text-blue-800 dark:text-blue-200" >
623+ Server Functions Changed
624+ </ h4 >
586625 < ul className = "space-y-1" >
587626 { serverFunctions . map ( ( file : FileChange , index : number ) => (
588627 < li key = { index } className = "flex items-center space-x-2" >
@@ -604,7 +643,9 @@ function BackendChatInputActions({
604643
605644 { otherFilesChanged . length > 0 && (
606645 < div >
607- < h4 className = "font-semibold mb-1 text-blue-800 dark:text-blue-200" > Backend Files Changed</ h4 >
646+ < h4 className = "font-semibold mb-1 text-blue-800 dark:text-blue-200" >
647+ Backend Files Changed
648+ </ h4 >
608649 < ul className = "space-y-1" >
609650 { otherFilesChanged . map ( ( file : FileChange , index : number ) => (
610651 < li key = { index } className = "flex items-center space-x-2" >
@@ -630,11 +671,17 @@ function BackendChatInputActions({
630671 ) ;
631672}
632673
633- function BackendActionProposalActions ( { proposal } : { proposal : ActionProposal } ) {
674+ function BackendActionProposalActions ( {
675+ proposal,
676+ } : {
677+ proposal : ActionProposal ;
678+ } ) {
634679 return (
635680 < div className = "border-b border-blue-200 dark:border-blue-800 p-2 pb-0 flex items-center justify-between bg-blue-50/50 dark:bg-blue-950/20" >
636681 < div className = "flex items-center space-x-2 overflow-x-auto pb-2" >
637- < span className = "text-sm font-medium text-blue-800 dark:text-blue-200" > Backend Actions:</ span >
682+ < span className = "text-sm font-medium text-blue-800 dark:text-blue-200" >
683+ Backend Actions:
684+ </ span >
638685 { proposal . actions . map ( ( action ) => mapBackendActionToButton ( action ) ) }
639686 </ div >
640687 </ div >
@@ -673,7 +720,10 @@ function BackendRebuildButton() {
673720 } , [ selectedAppId , posthog , restartApp ] ) ;
674721
675722 return (
676- < BackendSuggestionButton onClick = { onClick } tooltipText = "Rebuild backend application" >
723+ < BackendSuggestionButton
724+ onClick = { onClick }
725+ tooltipText = "Rebuild backend application"
726+ >
677727 Rebuild Backend
678728 </ BackendSuggestionButton >
679729 ) ;
@@ -692,7 +742,10 @@ function BackendRestartButton() {
692742 } , [ selectedAppId , posthog , restartApp ] ) ;
693743
694744 return (
695- < BackendSuggestionButton onClick = { onClick } tooltipText = "Restart backend server" >
745+ < BackendSuggestionButton
746+ onClick = { onClick }
747+ tooltipText = "Restart backend server"
748+ >
696749 Restart Backend
697750 </ BackendSuggestionButton >
698751 ) ;
@@ -713,7 +766,10 @@ function BackendKeepGoingButton() {
713766 } ) ;
714767 } ;
715768 return (
716- < BackendSuggestionButton onClick = { onClick } tooltipText = "Continue backend development" >
769+ < BackendSuggestionButton
770+ onClick = { onClick }
771+ tooltipText = "Continue backend development"
772+ >
717773 Keep Going
718774 </ BackendSuggestionButton >
719775 ) ;
@@ -751,17 +807,11 @@ function BackendSuggestionButton({
751807function getBackendIconForFileChange ( file : FileChange ) {
752808 switch ( file . type ) {
753809 case "write" :
754- return (
755- < FileText size = { 16 } className = "text-blue-500 flex-shrink-0" />
756- ) ;
810+ return < FileText size = { 16 } className = "text-blue-500 flex-shrink-0" /> ;
757811 case "rename" :
758- return (
759- < SendToBack size = { 16 } className = "text-blue-500 flex-shrink-0" />
760- ) ;
812+ return < SendToBack size = { 16 } className = "text-blue-500 flex-shrink-0" /> ;
761813 case "delete" :
762- return (
763- < FileX size = { 16 } className = "text-blue-500 flex-shrink-0" />
764- ) ;
814+ return < FileX size = { 16 } className = "text-blue-500 flex-shrink-0" /> ;
765815 }
766816}
767817
@@ -853,9 +903,7 @@ function BackendSqlQueryItem({ query }: { query: SqlQuery }) {
853903 </ div >
854904 { isExpanded && (
855905 < div className = "mt-2 text-xs max-h-[200px] overflow-auto" >
856- < CodeHighlight className = "language-sql" >
857- { queryContent }
858- </ CodeHighlight >
906+ < CodeHighlight className = "language-sql" > { queryContent } </ CodeHighlight >
859907 </ div >
860908 ) }
861909 </ li >
0 commit comments