feat(admin-ui): shadcn primitives + @/ui barrel (Stage 2.1)
This commit is contained in:
@@ -0,0 +1,125 @@
|
||||
/**
|
||||
* Barrel re-export для shadcn-style UI primitives.
|
||||
*
|
||||
* <p>Это единая точка входа для UI компонентов в admin-ui. Цель — постепенно
|
||||
* переключить все импорты с {@code @nstart/ui} на {@code @/ui}, и затем
|
||||
* удалить @nstart/ui из package.json.
|
||||
*
|
||||
* <p>Phase 2 миграции (handoff plan): новые компоненты — Radix primitives +
|
||||
* Tailwind v4 tokens. Phase 3 — каждый touched файл переносится с {@code
|
||||
* @nstart/ui} на {@code @/ui} имена. Phase 4 — pkg removed.
|
||||
*
|
||||
* <p>Все компоненты используют наши design tokens (--color-ink, --color-accent
|
||||
* etc.) через @theme inline в styles.css.
|
||||
*/
|
||||
|
||||
// Buttons + actions
|
||||
export { Button, buttonVariants, type ButtonProps } from './components/button'
|
||||
export { IconButton, type IconButtonProps } from './components/icon-button'
|
||||
|
||||
// Inputs
|
||||
export { Input, type InputProps } from './components/input'
|
||||
export { Label } from './components/label'
|
||||
export { SearchInput, type SearchInputProps } from './components/search-input'
|
||||
|
||||
// Form layout
|
||||
export { FormActions, type FormActionsProps } from './components/form-actions'
|
||||
|
||||
// Status / feedback
|
||||
export { Badge, type BadgeProps } from './components/badge'
|
||||
export { Alert, type AlertProps } from './components/alert'
|
||||
export { Skeleton } from './components/skeleton'
|
||||
export { LoadingBlock, type LoadingBlockProps } from './components/loading-block'
|
||||
export { EmptyState, type EmptyStateProps } from './components/empty-state'
|
||||
|
||||
// Surfaces
|
||||
export {
|
||||
Card,
|
||||
CardHeader,
|
||||
CardTitle,
|
||||
CardDescription,
|
||||
CardContent,
|
||||
CardFooter,
|
||||
} from './components/card'
|
||||
export { Separator } from './components/separator'
|
||||
export { PageHeader, type PageHeaderProps } from './components/page-header'
|
||||
|
||||
// Overlays
|
||||
export {
|
||||
Dialog,
|
||||
DialogTrigger,
|
||||
DialogPortal,
|
||||
DialogClose,
|
||||
DialogOverlay,
|
||||
DialogContent,
|
||||
DialogHeader,
|
||||
DialogFooter,
|
||||
DialogTitle,
|
||||
DialogDescription,
|
||||
type DialogContentProps,
|
||||
} from './components/dialog'
|
||||
export {
|
||||
Sheet,
|
||||
SheetTrigger,
|
||||
SheetClose,
|
||||
SheetPortal,
|
||||
SheetContent,
|
||||
SheetHeader,
|
||||
SheetFooter,
|
||||
SheetTitle,
|
||||
SheetDescription,
|
||||
type SheetContentProps,
|
||||
} from './components/sheet'
|
||||
export {
|
||||
Popover,
|
||||
PopoverTrigger,
|
||||
PopoverAnchor,
|
||||
PopoverContent,
|
||||
} from './components/popover'
|
||||
export {
|
||||
Tooltip,
|
||||
TooltipProvider,
|
||||
TooltipTrigger,
|
||||
TooltipContent,
|
||||
} from './components/tooltip'
|
||||
|
||||
// Navigation
|
||||
export { Tabs, TabsList, TabsTrigger, TabsContent } from './components/tabs'
|
||||
export {
|
||||
DropdownMenu,
|
||||
DropdownMenuTrigger,
|
||||
DropdownMenuContent,
|
||||
DropdownMenuItem,
|
||||
DropdownMenuCheckboxItem,
|
||||
DropdownMenuRadioItem,
|
||||
DropdownMenuLabel,
|
||||
DropdownMenuSeparator,
|
||||
DropdownMenuGroup,
|
||||
DropdownMenuPortal,
|
||||
DropdownMenuSub,
|
||||
DropdownMenuSubTrigger,
|
||||
DropdownMenuSubContent,
|
||||
DropdownMenuRadioGroup,
|
||||
} from './components/dropdown-menu'
|
||||
|
||||
// Form controls
|
||||
export { Checkbox } from './components/checkbox'
|
||||
export { Switch } from './components/switch'
|
||||
|
||||
// Domain-specific atoms (handoff design system)
|
||||
export { Cap, type CapProps } from './components/cap'
|
||||
export {
|
||||
ScopeDot,
|
||||
ScopeBadge,
|
||||
ScopeStrip,
|
||||
type DataScope,
|
||||
} from './components/scope'
|
||||
|
||||
// === @nstart/ui compatibility aliases ===
|
||||
// Чтобы упростить миграцию touched файлов: перевод import только-source,
|
||||
// not всего code. Каждый alias документирован, как соотносится с новым API.
|
||||
|
||||
export { Card as Panel } from './components/card'
|
||||
export { Dialog as Modal } from './components/dialog'
|
||||
export { Sheet as Drawer } from './components/sheet'
|
||||
export { Input as TextInput } from './components/input'
|
||||
Reference in New Issue
Block a user