diff --git a/eslint.config.js b/eslint.config.js index a896c241..1b3807e7 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -74,6 +74,8 @@ export default tseslint.config( }, }, rules: { + // We use TypeScript for React components; prop-types are unnecessary + 'react/prop-types': 'off', // General Best Practice Rules (subset adapted for flat config) '@typescript-eslint/array-type': ['error', { default: 'array-simple' }], 'arrow-body-style': ['error', 'as-needed'], diff --git a/packages/vscode-ide-companion/src/webview/components/InputForm.tsx b/packages/vscode-ide-companion/src/webview/components/InputForm.tsx index 819cdd25..17559cb7 100644 --- a/packages/vscode-ide-companion/src/webview/components/InputForm.tsx +++ b/packages/vscode-ide-companion/src/webview/components/InputForm.tsx @@ -123,20 +123,9 @@ export const InputForm: React.FC = ({ style={{ backgroundColor: 'var(--app-primary-background)' }} >
-
+ {/* Inner background layer */} -
+
{/* Banner area */}
@@ -161,11 +150,7 @@ export const InputForm: React.FC = ({
= ({ />
- {/* Actions row */} -
+ {/* Actions row (compact, Claude-style) */} +
{/* Edit mode button */} {/* Active file indicator */} {activeFileName && ( - {expanded &&
{children}
} - - ) : ( -
{children}
- )} -
-
- ); -}; - -/** - * Timeline container component - */ -export const Timeline: React.FC<{ children: React.ReactNode }> = ({ - children, -}) =>
{children}
; diff --git a/packages/vscode-ide-companion/src/webview/components/layouts/ChatHeader.tsx b/packages/vscode-ide-companion/src/webview/components/layouts/ChatHeader.tsx index 086e7e08..0f1711d8 100644 --- a/packages/vscode-ide-companion/src/webview/components/layouts/ChatHeader.tsx +++ b/packages/vscode-ide-companion/src/webview/components/layouts/ChatHeader.tsx @@ -18,27 +18,22 @@ export const ChatHeader: React.FC = ({ onLoadSessions, onNewSession, }) => ( -
+
-
+