mirror of
https://github.com/AtomUI/AtomUI.git
synced 2026-10-23 09:48:48 +08:00
3.5 KiB
3.5 KiB
项目依赖关系
本文档记录 AtomUI.slnx 中项目的主要引用关系。它描述源码维护视角下的依赖方向,不等同于 NuGet 包的最终依赖闭包。
解决方案项目
AtomUI.slnx 当前包含核心库、控件库、图标字体、Gallery 宿主:
src/AtomUI.Nativesrc/AtomUI.Coresrc/AtomUI.Controls.Sharedsrc/AtomUI.Controlssrc/AtomUI.Desktop.Controlssrc/AtomUI.Desktop.Controls.DataGridsrc/AtomUI.Desktop.Controls.ColorPickersrc/AtomUI.Desktop.Controls.Extrassrc/AtomUI.Generatorsrc/AtomUI.Icons.Sharedsrc/AtomUI.Icons.AntDesignsrc/AtomUI.Icons.AntDesign.Generatorsrc/AtomUI.Fonts.AlibabaSanssrc/AtomUI.Fonts.AlibabaPuHuiTisrc/AtomUI.Toolkits.GalleryBasecontrolgallery/AtomUIGallerycontrolgallery/AtomUIGallery.Desktopcontrolgallery/AtomUIGallery.Browser
主要项目引用
| 项目 | 直接引用 | 说明 |
|---|---|---|
AtomUI.Native |
Avalonia, NWayland |
原生窗口 API 基础层;NWayland 用于 Wayland surface 输入区域等协议能力 |
AtomUI.Core |
AtomUI.Native, AtomUI.Generator |
主题、Token、语言、动画基础设施 |
AtomUI.Controls.Shared |
AtomUI.Core, AtomUI.Generator |
控件共享契约和协调器 |
AtomUI.Controls |
AtomUI.Core, AtomUI.Controls.Shared, AtomUI.Fonts.AlibabaSans, AtomUI.Icons.AntDesign, AtomUI.Generator |
公共控件、Primitives、公共主题 |
AtomUI.Desktop.Controls |
AtomUI.Controls, AtomUI.Generator, Avalonia.Desktop, Avalonia.Wayland, Avalonia.X11 |
桌面主控件包及 AtomUI 的桌面后端选择入口 |
AtomUI.Desktop.Controls.DataGrid |
AtomUI.Desktop.Controls, AtomUI.Generator |
独立 DataGrid 包 |
AtomUI.Desktop.Controls.ColorPicker |
AtomUI.Desktop.Controls, AtomUI.Generator, Avalonia.Controls.ColorPicker |
独立 ColorPicker 包 |
AtomUI.Desktop.Controls.Extras |
AtomUI.Desktop.Controls, AtomUI.Generator |
Ant Design 之外的稳定补充控件包 |
AtomUI.Toolkits.GalleryBase |
AtomUI.Desktop.Controls, AtomUI.Generator |
产品中立的 Gallery 展示控件、主题和运行时底座 |
AtomUI.Icons.AntDesign |
AtomUI.Core |
Ant Design 图标注册与生成图标 |
AtomUI.Icons.AntDesign.Generator |
AtomUI.Icons.Shared |
从 SVG 生成 Ant Design 图标源码 |
AtomUI.Fonts.* |
AtomUI.Core |
字体集合注册 |
AtomUIGallery |
AtomUI.Toolkits.GalleryBase, AtomUI.Desktop.Controls, AtomUI.Desktop.Controls.DataGrid, AtomUI.Desktop.Controls.ColorPicker, AtomUI.Generator |
AtomUI 产品示例主体 |
AtomUIGallery.Desktop |
AtomUIGallery |
桌面宿主 |
AtomUIGallery.Browser |
AtomUIGallery, AtomUI.Fonts.AlibabaPuHuiTi |
浏览器宿主 |
内部可见性
多个包通过 InternalsVisibleTo 共享内部实现,维护时需要注意这些不是公开 API:
AtomUI.Core对AtomUI.Controls、AtomUI.Controls.Shared、AtomUI.Desktop.Controls、DataGrid、ColorPicker、Extras 开放内部成员。AtomUI.Controls对AtomUI.Desktop.Controls、DataGrid、ColorPicker、Extras 开放内部成员。AtomUI.Desktop.Controls对 DataGrid、ColorPicker、Extras、性能工具开放内部成员。AtomUI.Native对AtomUI.Core、AtomUI.Desktop.Controls、未来AtomUI.Mobile.Controls开放内部成员。
这些关系说明 DataGrid、ColorPicker 和 Extras 虽然是独立包,但它们不是完全隔离的第三方扩展,而是桌面控件体系的同源扩展。