/** * `@drama/ui` 公共面 —— 唯一对外入口(禁止深导入)。 * * 导出通用 Vue3 基础组件、命令式 toast API、主题 tokens(JS 形态)。组件与业务无关、 * 不直连网络、不读 env。顶层公共面会加载 theme.css,业务应用无需深导入样式子路径。 */ import './theme/theme.css' export { default as Button } from './components/Button.vue' export { default as Modal } from './components/Modal.vue' export { default as Drawer } from './components/Drawer.vue' export { default as Card } from './components/Card.vue' export { default as PageHeader } from './components/PageHeader.vue' export { default as Section } from './components/Section.vue' export { default as Stat } from './components/Stat.vue' export { default as Table } from './components/Table.vue' export { default as ToastHost } from './components/ToastHost.vue' export { default as Input } from './components/Input.vue' export { default as Textarea } from './components/Textarea.vue' export { default as Select } from './components/Select.vue' export { default as Slider } from './components/Slider.vue' export { default as SegmentedControl } from './components/SegmentedControl.vue' export { default as Toolbar } from './components/Toolbar.vue' export { default as FormField } from './components/FormField.vue' export { default as Badge } from './components/Badge.vue' export { default as Tabs } from './components/Tabs.vue' export { default as Pagination } from './components/Pagination.vue' export { default as EmptyState } from './components/EmptyState.vue' export { default as Spinner } from './components/Spinner.vue' export { default as ConfirmAction } from './components/ConfirmAction.vue' export { useToast } from './composables/use-toast.js' export { tokens } from './theme/tokens.js'