主题
XHIM 五端 UI 资源
该目录保存 XHIM UI Kit 的跨平台视觉源文件和可审计元数据。运行时代码仍使用 各平台原生 UI 框架:
| 产品端 | UI 包 | 资源形式 |
|---|---|---|
| iOS / macOS | XHIMSwiftUI | Swift Package Asset Catalog |
| Android | xhim-ui-compose | Android Vector Drawable |
| Windows | XHIM.UI.Wpf | WPF Geometry ResourceDictionary |
| HarmonyOS / OpenHarmony | @xihansoftware/xhim | HAR media SVG |
图标来源
当前 IM 图标集来自 Lucide 1.14.0,固定 Commit 56e49f12166312f04af4cfd862621c93cf583979。Lucide 采用 ISC 许可证;其 许可证列出的部分 Feather 衍生图标同时保留 MIT 条款。完整许可证、选中 SVG 及每个源文件 SHA-256 位于 lucide/1.14.0/。
选择的是 IM 常用的 19 个图标:
text
camera check-check chevron-left circle-alert clock ellipsis image
message-circle mic paperclip phone plus rotate-ccw search send smile
users video x只纳入实际使用的子集,避免把几千个无关资源放进客户包。发行时不能删除 Lucide-LICENSE.txt;各平台包已经放入相同许可证副本。
重新导入
发布构建不在网络上临时下载资源。升级 Lucide 时先由法务/设计审核版本,再更新 导入器中的版本、Commit 和图标清单:
bash
git clone --depth 1 --branch 1.14.0 \
https://github.com/lucide-icons/lucide.git /tmp/lucide
python3 scripts/ui/import_lucide_icons.py \
--source-checkout /tmp/lucide
python3 scripts/ui/import_lucide_icons.py --check导入器同时生成 Apple、Android、Windows 和 HarmonyOS 资源。不要只手改某一端 的生成文件;产品颜色、圆角和尺寸的共同基线在 xhim-design-tokens.json,业务仍可通过各平台 Theme 覆盖。
架构边界
这些资源和 UI 组件只负责展示与用户动作回调,不读取 XHIM SQLite、不直接请求 HTTP/WSS、不持有 C ABI handle。业务 ViewModel/Presenter 负责把平台 Facade 模型转换成 ConversationItem/MessageItem,因此替换主题、图标或 Cell 不会 改变登录、同步和可靠消息语义。