Align iOS home common apps and all-functions page with Android.

Add unified HomeCommonMenu/HomeAllFunctions diagnostics, rebuild all-functions from top-level menuList permissions, and document Home and AllFunctions module logic.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-30 09:40:02 +08:00
parent 63fb0462d6
commit 5692134efc
11 changed files with 693 additions and 138 deletions

View File

@ -0,0 +1,29 @@
//
// HomeAllFunctionsDiagnostics.swift
// suixinkan
//
// Created by Codex on 2026/6/30.
//
import Foundation
import os
/// 便 Android `AllFunctionsViewModel`
enum HomeAllFunctionsDiagnostics {
private static let logger = Logger(subsystem: "com.yuanzhixiang.suixinkan", category: "HomeAllFunctions")
/// URI
static func log(snapshot: HomeAllFunctionsSnapshot) {
#if DEBUG
log(step: "allFunctions", uris: snapshot.allFunctions.map(\.uri))
log(step: "commonFunctions", uris: snapshot.commonFunctions.map(\.uri))
log(step: "moreFunctions", uris: snapshot.moreFunctions.map(\.uri))
#endif
}
/// URI
private static func log(step: String, uris: [String]) {
let payload = "count=\(uris.count) uris=\(HomeCommonMenuDiagnostics.formatURIList(uris))"
logger.debug("step=\(step, privacy: .public) \(payload, privacy: .public)")
}
}