/**
 * @edu/ui-components - 共享组件库
 *
 * 维护者：ai13（teacher-portal）
 * 关联文档：teacher-portal 02-architecture-design.md §7
 *
 * 包含：
 * - ErrorBoundary：React 渲染异常兜底
 * - Loading：骨架屏 / 加载占位
 * - Empty：空态展示
 * - RequirePermission：L3 组件级视口控制
 * - cn：类名合并工具（project_rules §3.9）
 *
 * 后续扩展（P2+）：
 * - AppShell（MF Shell 布局）
 * - shadcn/ui 基础组件（Button/Input/Select/Modal/Toast/DataTable）
 * - A11y 工具集（useA11yId/mergeA11yProps/describeInput/focus-trap）
 * - Form（react-hook-form + zodResolver）
 * - RichTextEditor（Tiptap 封装）
 * - Chart（recharts 封装）
 */

export { ErrorBoundary } from "./error-boundary.js";
export type {
  ErrorBoundaryProps,
  ErrorBoundaryState,
} from "./error-boundary.js";

export { Loading } from "./loading.js";
export type { LoadingProps } from "./loading.js";

export { Empty } from "./empty.js";
export type { EmptyProps } from "./empty.js";

export { RequirePermission } from "./require-permission.js";
export type { RequirePermissionProps } from "./require-permission.js";

export { cn } from "./utils/cn.js";
