36 lines
964 B
Markdown
36 lines
964 B
Markdown
# shadcn/ui customizations
|
|
|
|
This project keeps local changes to generated shadcn/ui components. Review these customizations before updating or reinstalling components.
|
|
|
|
## `Empty`
|
|
|
|
File: `components/ui/empty.tsx`
|
|
|
|
The root `Empty` component supports an invalid state through `aria-invalid`:
|
|
|
|
```tsx
|
|
<Empty aria-invalid={hasError}>
|
|
{/* empty-state content */}
|
|
</Empty>
|
|
```
|
|
|
|
The customization adds a destructive border and ring with these classes:
|
|
|
|
```text
|
|
aria-invalid:border
|
|
aria-invalid:border-destructive
|
|
aria-invalid:ring-3
|
|
aria-invalid:ring-destructive/20
|
|
dark:aria-invalid:border-destructive/50
|
|
dark:aria-invalid:ring-destructive/40
|
|
```
|
|
|
|
Before updating the component, inspect the upstream diff:
|
|
|
|
```bash
|
|
bunx --bun shadcn@latest add empty --dry-run
|
|
bunx --bun shadcn@latest add empty --diff empty.tsx
|
|
```
|
|
|
|
Manually merge upstream changes and preserve the invalid-state classes. Do not use `--overwrite` unless removing local customizations is intentional.
|