Files
Genarrative/packages/shared/src/components/index.ts
T
kdletters c5200c7d45
Project CI / Backend tests (push) Successful in 8m31s
Project CI / Repository checks (push) Successful in 14m14s
Project CI / Frontend tests (push) Successful in 13m2s
Project CI / Native shell tests (push) Successful in 21m30s
补齐共享 UI 组件库与展示页交互 (#202)
## 变更内容

- 新增基于 shadcn open-code 模式的共享 UI canonical 组件、样式与导出。
- 新增 `/components` 共享组件展示页,并覆盖平台组件、Token、状态和移动端布局。
- 补齐平台展示页的筛选、排序、上传预览、标签、开关和异步状态交互。
- 修复排序导致预览主题变化、筛选弹窗误关闭和入口状态不更新的问题。
- 同步网站与客户端构建别名、依赖、路由测试和项目文档。

## 验证

- `npm run test -- src/components/shared-components/SharedComponentsShowcasePage.test.tsx`
- `npm run typecheck`
- `npm run check:encoding`
- `npm run build:raw`
- `git diff --check`
- pre-push 门禁通过

Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/202
Co-authored-by: kdletters <kdletters@qq.com>
Co-committed-by: kdletters <kdletters@qq.com>
2026-08-31 14:10:44 +08:00

231 lines
6.7 KiB
TypeScript

export type {
PlatformActionButtonAlign,
PlatformActionButtonProps,
PlatformActionButtonShape,
PlatformActionButtonSize,
PlatformActionButtonSurface,
PlatformActionButtonTone,
} from './PlatformActionButton';
export { PlatformActionButton } from './PlatformActionButton';
export { getPlatformActionButtonClassName } from './platformActionButtonModel';
export type { PlatformAsyncStatePanelProps } from './PlatformAsyncStatePanel';
export { PlatformAsyncStatePanel } from './PlatformAsyncStatePanel';
export type {
PlatformBackActionButtonProps,
PlatformBackActionButtonVariant,
} from './PlatformBackActionButton';
export { PlatformBackActionButton } from './PlatformBackActionButton';
export type { PlatformBadgeProps, PlatformBadgeTone } from './PlatformBadge';
export { PlatformBadge } from './PlatformBadge';
export type {
PlatformEmptyStateProps,
PlatformEmptyStateSize,
PlatformEmptyStateSurface,
PlatformEmptyStateTone,
} from './PlatformEmptyState';
export { PlatformEmptyState } from './PlatformEmptyState';
export type {
PlatformFieldLabelProps,
PlatformFieldLabelVariant,
} from './PlatformFieldLabel';
export { PlatformFieldLabel } from './PlatformFieldLabel';
export type {
PlatformFilterToolbarProps,
PlatformFilterToolbarTabItem,
} from './PlatformFilterToolbar';
export { PlatformFilterToolbar } from './PlatformFilterToolbar';
export type {
PlatformIconBadgeProps,
PlatformIconBadgeShape,
PlatformIconBadgeSize,
PlatformIconBadgeTone,
} from './PlatformIconBadge';
export { PlatformIconBadge } from './PlatformIconBadge';
export type {
PlatformIconButtonProps,
PlatformIconButtonSize,
PlatformIconButtonVariant,
} from './PlatformIconButton';
export { PlatformIconButton } from './PlatformIconButton';
export type {
PlatformInfoBlockProps,
PlatformInfoBlockVariant,
} from './PlatformInfoBlock';
export { PlatformInfoBlock } from './PlatformInfoBlock';
export type { PlatformModalProps } from './PlatformModal';
export { PlatformModal } from './PlatformModal';
export type {
PlatformNavigableListItemAlign,
PlatformNavigableListItemProps,
} from './PlatformNavigableListItem';
export { PlatformNavigableListItem } from './PlatformNavigableListItem';
export type {
PlatformPillBadgeProps,
PlatformPillBadgeSize,
PlatformPillBadgeTone,
} from './PlatformPillBadge';
export { PlatformPillBadge } from './PlatformPillBadge';
export { getPlatformPillBadgeClassName } from './platformPillBadgeModel';
export type {
PlatformProgressBarProps,
PlatformProgressBarSize,
} from './PlatformProgressBar';
export { PlatformProgressBar } from './PlatformProgressBar';
export type {
PlatformRuntimeStatusShape,
PlatformRuntimeStatusSize,
PlatformRuntimeStatusSurface,
PlatformRuntimeStatusToastProps,
PlatformRuntimeStatusTone,
} from './PlatformRuntimeStatusToast';
export { PlatformRuntimeStatusToast } from './PlatformRuntimeStatusToast';
export type {
PlatformSegmentedTabItem,
PlatformSegmentedTabsColumns,
PlatformSegmentedTabsFrame,
PlatformSegmentedTabsGap,
PlatformSegmentedTabsLayout,
PlatformSegmentedTabsProps,
PlatformSegmentedTabsRadius,
PlatformSegmentedTabsSemantics,
PlatformSegmentedTabsSize,
PlatformSegmentedTabsSurface,
PlatformSegmentedTabsTone,
} from './PlatformSegmentedTabs';
export { PlatformSegmentedTabs } from './PlatformSegmentedTabs';
export type {
PlatformStatGridColumns,
PlatformStatGridDensity,
PlatformStatGridItem,
PlatformStatGridOrder,
PlatformStatGridProps,
PlatformStatGridSurface,
PlatformStatGridTextAlign,
} from './PlatformStatGrid';
export { PlatformStatGrid } from './PlatformStatGrid';
export type { PlatformStatusProps, PlatformStatusTone } from './PlatformStatus';
export { PlatformStatus } from './PlatformStatus';
export type {
PlatformStatusMessageProps,
PlatformStatusMessageSize,
PlatformStatusMessageSurface,
PlatformStatusMessageTone,
} from './PlatformStatusMessage';
export { PlatformStatusMessage } from './PlatformStatusMessage';
export type {
PlatformSubpanelElement,
PlatformSubpanelPadding,
PlatformSubpanelProps,
PlatformSubpanelRadius,
PlatformSubpanelStaticElement,
PlatformSubpanelSurface,
PlatformSubpanelTitleVariant,
} from './PlatformSubpanel';
export { PlatformSubpanel } from './PlatformSubpanel';
export type {
PlatformSelectFieldProps,
PlatformTextFieldProps,
} from './PlatformTextField';
export { PlatformSelectField, PlatformTextField } from './PlatformTextField';
export type {
PlatformToggleRowMode,
PlatformToggleRowProps,
PlatformToggleRowSurface,
} from './PlatformToggleRow';
export { PlatformToggleRow } from './PlatformToggleRow';
export type {
BadgeProps,
BadgeTone,
ButtonProps,
CheckboxProps,
EmptyStateProps,
IconButtonProps,
IconButtonSize,
IconButtonVariant,
LabelProps,
ModalProps,
ProgressBarProps,
SegmentedTabItem,
SegmentedTabsProps,
SelectFieldProps,
SharedButtonSize,
SharedButtonVariant,
SkeletonProps,
StatusProps,
StatusTone,
SubpanelProps,
SwitchProps,
TableProps,
TextFieldProps,
} from './ui';
export {
Badge,
Button,
Checkbox,
Divider,
EmptyState,
IconButton,
Label,
Modal,
ProgressBar,
SegmentedTabs,
SelectField,
Skeleton,
Spinner,
Status,
Subpanel,
Switch,
Table,
TableBody,
TableCaption,
TableCell,
TableFooter,
TableHead,
TableHeader,
TableRow,
TextField,
} from './ui';
export type { BadgeProps as ShadcnBadgeProps } from './ui/badge';
export { badgeVariants, Badge as ShadcnBadge } from './ui/badge';
export type {
ButtonProps as ShadcnButtonProps,
ShadcnButtonSize,
ShadcnButtonVariant,
} from './ui/button';
export { buttonVariants, Button as ShadcnButton } from './ui/button';
export type { CardProps } from './ui/card';
export { Card, CardActions, CardHeader, CardTitle } from './ui/card';
export type { SharedDialogProps } from './ui/dialog';
export {
Dialog,
DialogClose,
DialogContent,
DialogDescription,
DialogFooter,
DialogHeader,
DialogOverlay,
DialogPortal,
DialogTitle,
DialogTrigger,
} from './ui/dialog';
export type { InputProps } from './ui/input';
export { Input, inputVariants } from './ui/input';
export type { SharedSwitchProps } from './ui/switch';
export { SwitchRoot, SwitchThumb } from './ui/switch';
export { Tabs, TabsContent, TabsList, TabsTrigger } from './ui/tabs';
export type { TextareaProps } from './ui/textarea';
export { Textarea } from './ui/textarea';
// Additional platform-prefixed aliases make the package discoverable beside
// existing application adapters while keeping the public API product-neutral.
export type {
ButtonProps as PlatformButtonProps,
SwitchProps as PlatformSwitchProps,
} from './ui';
export {
Button as PlatformButton,
Divider as PlatformDivider,
Spinner as PlatformSpinner,
Switch as PlatformSwitch,
} from './ui';