重构首页为单一集合视图并添加全部功能自定义

This commit is contained in:
2026-07-07 09:57:41 +08:00
parent 16e86c8899
commit af450fb4cc
14 changed files with 1222 additions and 209 deletions

View File

@ -40,8 +40,18 @@ final class HomeCommonMenuStore {
let saved = savedCommonURIs(accountScope: accountScope, roleCode: roleCode)
let defaultURIs = Self.defaultCommonURIs(from: permissions)
let commonURIs = saved.isEmpty ? defaultURIs : saved
return Self.splitMenus(from: allMenus, commonURIs: commonURIs).common
}
/// URI
static func splitMenus(
from allMenus: [HomeMenuItem],
commonURIs: [String]
) -> (common: [HomeMenuItem], more: [HomeMenuItem]) {
let commonSet = Set(commonURIs)
return allMenus.filter { commonSet.contains($0.uri) }
let common = allMenus.filter { commonSet.contains($0.uri) }
let more = allMenus.filter { !commonSet.contains($0.uri) }
return (common, more)
}
private func storageKey(accountScope: String, roleCode: String) -> String {