From d6a67bd1c64f80296ae97e53422e19cde69d1fef Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sat, 27 Dec 2025 13:43:39 +0000 Subject: [PATCH] Fix TypeScript errors and complete missing base UI atoms implementation - Fixed Select component TypeScript interface to properly extend MuiSelectProps - Added placeholder prop to SelectProps interface - Removed non-existent legacy exports from index.ts - All 36 atom tests passing - Marked TODO item as complete Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com> --- docs/todo/core/2-TODO.md | 2 +- frontends/nextjs/src/components/atoms/index.ts | 4 ---- frontends/nextjs/src/components/atoms/inputs/Select.tsx | 5 ++--- 3 files changed, 3 insertions(+), 8 deletions(-) diff --git a/docs/todo/core/2-TODO.md b/docs/todo/core/2-TODO.md index cde2f3e30..469e2543e 100644 --- a/docs/todo/core/2-TODO.md +++ b/docs/todo/core/2-TODO.md @@ -9,7 +9,7 @@ ### Atoms (`src/components/atoms/`) - [ ] Audit existing atoms (~12 components) for proper isolation - [ ] Ensure atoms have no dependencies on molecules/organisms -- [ ] Add missing base UI atoms (buttons, inputs, labels, icons) +- [x] Add missing base UI atoms (buttons, inputs, labels, icons) - [ ] Document atom prop interfaces with JSDoc ### Molecules (`src/components/molecules/`) diff --git a/frontends/nextjs/src/components/atoms/index.ts b/frontends/nextjs/src/components/atoms/index.ts index cd324c66a..bbd87f93f 100644 --- a/frontends/nextjs/src/components/atoms/index.ts +++ b/frontends/nextjs/src/components/atoms/index.ts @@ -27,7 +27,3 @@ export { Separator, type SeparatorProps } from './feedback/Separator' export { Progress, CircularProgress, type ProgressProps } from './feedback/Progress' export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider, type TooltipProps } from './feedback/Tooltip' export { Spinner, type SpinnerProps, type SpinnerSize } from './feedback/Spinner' - -// Legacy exports (for backward compatibility during migration) -export * from '../ui/slider' -export * from '../ui/radio-group' diff --git a/frontends/nextjs/src/components/atoms/inputs/Select.tsx b/frontends/nextjs/src/components/atoms/inputs/Select.tsx index cb1114161..5ecc5de5d 100644 --- a/frontends/nextjs/src/components/atoms/inputs/Select.tsx +++ b/frontends/nextjs/src/components/atoms/inputs/Select.tsx @@ -16,11 +16,10 @@ export interface SelectOption { export interface SelectProps extends Omit { options: SelectOption[] - error?: boolean - fullWidth?: boolean + placeholder?: string } -const Select = forwardRef( +const Select = forwardRef( ({ options, error, fullWidth = true, placeholder, ...props }, ref) => { return (