用途:@openmetadata/ui-core-components 提供布局原语,用于替换 openmetadata-ui 中常见的 <div className="tw:flex ...">、<div className="tw:grid ..."> 等布局容器写法。仅在编写或编辑 openmetadata-ui/src/main/resources/ui/src/ 或 openmetadata-ui-core-components/ 下的 React/TSX 时使用。
主要能力:Box 渲染 flex/inline-flex 容器,通过 direction、align、justify、wrap、gap/rowGap/colGap、inline 等 props 控制布局;Grid 为 24 列网格,Grid.Item 支持 span(默认 24)与 start;Card 支持 variant、color、size、isClickable、isSelected,并含 Card.Header/Content/Footer;Divider 支持 orientation、label、labelAlign。
使用方式:从包根导入,例如 import { Box, Card, Divider, Grid } from '@openmetadata/ui-core-components';。布局走 props,className 仅用于边距、边框、背景等一次性覆盖,不要重新加 tw:flex。颜色必须使用语义 token(如 tw:bg-primary、tw:text-error-primary、tw:text-fg-brand-primary),禁止原始 Tailwind 调色板类或硬编码十六进制;图标用 tw:text-fg-*。写颜色前需阅读 openmetadata-ui/src/main/resources/ui/docs/colors.md。
适用场景:仅布局容器 div 使用原语;单个非布局 div、文本包裹、span、图标包裹以及 antd 等外部库表单组件保持原样。
限制:并非“替换所有 div”的规则。使用后需对改动文件运行 ui-checkstyle 技能再提交。其余细节暂未提供。