Skip to content
This repository was archived by the owner on Mar 7, 2026. It is now read-only.

Commit aac5aea

Browse files
committed
chore(input): replace empty interface with type alias to satisfy ESLint
1 parent 0a8d8c0 commit aac5aea

File tree

2 files changed

+28
-5
lines changed

2 files changed

+28
-5
lines changed

docs/project_plan.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@ A pragmatic breakdown into **four one‑week sprints** plus a preparatory **Spri
2222

2323
| # | Task | DoD | Status |
2424
| ---- | ----------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------ | ------ |
25-
| 1.0a | **Folder restructure** – adopt `src/components/primitives`, `layout`, `hooks`, `providers` hierarchy. | `pnpm build` & `pnpm test` pass after move; no unresolved imports in TS. | |
26-
| 1.0b | Migrate **Button** files into `components/primitives/Button/`; delete legacy `core/Button`. | Storybook & unit tests green at the new path. | |
27-
| 1.0c | Update barrels (`src/components/index.ts`, root `src/index.ts`) and **adjust all imports**. | `pnpm lint` shows 0 errors; grep finds no `from "./core"`. | |
25+
| 1.0a | **Folder restructure** – adopt `src/components/primitives`, `layout`, `hooks`, `providers` hierarchy. | `pnpm build` & `pnpm test` pass after move; no unresolved imports in TS. | |
26+
| 1.0b | Migrate **Button** files into `components/primitives/Button/`; delete legacy `core/Button`. | Storybook & unit tests green at the new path. | |
27+
| 1.0c | Update barrels (`src/components/index.ts`, root `src/index.ts`) and **adjust all imports**. | `pnpm lint` shows 0 errors; grep finds no `from "./core"`. | |
2828
| 1.1a | Create basic **Button** component structure. | Component file exists with basic props and types. ||
29-
| 1.1b | Complete **Button** implementation with tests and stories. | Vitest basic unit tests, Storybook MDX story with ArgsTable. | |
30-
| 1.1c | Implement **TextInput** wrapper in `/src/core`. | Vitest basic unit tests, Storybook MDX story with ArgsTable. | |
29+
| 1.1b | Complete **Button** implementation with tests and stories. | Vitest basic unit tests, Storybook MDX story with ArgsTable. | |
30+
| 1.1c | Implement **TextInput** wrapper in `src/components/primitives`. | Vitest basic unit tests, Storybook docs (autodocs) & unit tests. | |
3131
| 1.2a | Set up basic Storybook configuration. | `npm run storybook` starts successfully. ||
3232
| 1.2b | Install and configure Storybook addon‑docs. | Documentation tab shows component documentation. ||
3333
| 1.2c | Configure and verify Storybook addon‑a11y. | axe‑a11y addon shows zero violations. | |
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
import * as React from "react";
2+
import { cn } from "@/utils/cn";
3+
4+
export type InputProps = React.InputHTMLAttributes<HTMLInputElement>;
5+
6+
const Input = React.forwardRef<HTMLInputElement, InputProps>(
7+
({ className, type, ...props }, ref) => {
8+
return (
9+
<input
10+
type={type}
11+
className={cn(
12+
"flex h-9 w-full rounded-md border border-input bg-background px-3 py-1 text-sm shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",
13+
className
14+
)}
15+
ref={ref}
16+
{...props}
17+
/>
18+
);
19+
}
20+
);
21+
Input.displayName = "Input";
22+
23+
export { Input };

0 commit comments

Comments
 (0)