Skip to content
Lenso UI

架构

了解原生交互所有权、组件样式与 authored 文档投影。

交互边界

Base UI 管理普通原生控件、导航和覆盖层。Lenso 使用组件专属 StyleX 映射组合具体原生部件,不通过通用兼容包装将所有系列转换成另一套 API。

ListBox、TagGroup 和 Table 使用 Lenso 本地集合模型:稳定 key、Set 选择、项目注册和集合焦点管理。它们不是 React Aria 集合包装。应阅读本地签名,不假设它们采用 Menu、Select 或其他库的集合契约。

React Aria Components 管理日期、时间和颜色模型,以及依赖这些上下文的辅助部件。日期分段、日历网格或颜色输入区域不能仅因外观相似就放入不相关的 Base UI 字段。

原生 HTML 管理非交互结构。卡片、文本表面和布局区域不会仅因添加样式就获得键盘行为。

公开契约

React 公开导出决定组件系列清单。原生属性、ref、状态属性、render 组合与回调签名保持可观察。本地变体添加展示样式,不创建 onPress 适配器,也不把所有值统一成 DOM 事件。

复合系列应组合属于同一上下文的部件。生成 API 标明实际导出与声明来源;导入的历史片段不是可执行契约证据。

样式交付

@lenso/tokens 提供主题和类型化映射。@lenso/stylex-build 编译应用声明,并与包元数据合并。应用必须向每个实际渲染文档交付合并规则。构建时工具不应进入生产浏览器 JavaScript。

文档投影

公开文档与不可变参考归档分开编写。一个版本化索引结合 authored 指南、当前原生 API 和本地运行示例的位置。渲染、导航、搜索、站点地图、复制 Markdown 和示例验证计划使用同一索引。

参考归档是经过完整性校验的来源输入,不是公开发布历史或迁移指南。移除公开归档页面不能丢弃仍维护的示例场景:这些场景应放在对应 Lenso 组件页面。

证据边界

导出证明可用性,注册本地模块证明存在运行位置。它们都不证明视觉一致性、键盘可访问性或 WCAG 合规。参考颜色存在已知普通文本对比度问题,应如实报告,不宣称认证。