import SwiftUI /// 全 App 统一的 AI 免责声明(上架合规:医疗类内容必须声明不做诊断)。 /// 任何展示 AI 生成的归纳/解读/建议文本的地方,都应在结果末尾附上 `AIDisclaimerFooter`; /// 离开 App 的文本(复制/分享)用 `AIDisclaimer.appended(to:)` 把声明带上。 enum AIDisclaimer { /// 面向用户展示的完整声明文本。 static let text = "本内容由本机本地 AI 依据你录入的健康记录自动归纳整理,仅供个人健康管理与就医沟通参考," + "不构成医学诊断、治疗建议或专业医疗意见;具体健康问题请咨询执业医师。" /// 复制/分享时把声明追加到正文末尾(分隔线 + 声明),让文本离开 App 也带着免责。 static func appended(to body: String) -> String { let trimmed = body.trimmingCharacters(in: .whitespacesAndNewlines) return "\(trimmed)\n\n———\n\(text)" } } /// AI 结果下方的免责声明脚注:小字、弱色、信息图标。放在任何 AI 生成文本块末尾。 struct AIDisclaimerFooter: View { var body: some View { HStack(alignment: .top, spacing: 6) { Image(systemName: "info.circle") .font(.tjScaled( 10)) .foregroundStyle(Tj.Palette.text3) Text(AIDisclaimer.text) .font(.tjScaled( 10)) .lineSpacing(2) .foregroundStyle(Tj.Palette.text3) .fixedSize(horizontal: false, vertical: true) } .frame(maxWidth: .infinity, alignment: .leading) } }