-
Notifications
You must be signed in to change notification settings - Fork 2
files core monitor notificationpresentation swift cfe2534c
ventaphobia edited this page Apr 23, 2026
·
1 revision
- Area: Core app.
- This page records the file's current repository role, source metadata, and recent commit history.
- Review nearby tests and commit pages before changing this file.
| Field | Value |
|---|---|
| Source path | Core-Monitor/NotificationPresentation.swift |
| Wiki area | Core app |
| Exists in current checkout | True |
| Size | 2728 bytes |
| Binary | False |
| Line count | 68 |
| Extension | .swift |
Foundation, UserNotifications
| Kind | Name | Line |
|---|---|---|
| struct | NotificationStripPresentation |
3 |
| struct | Action |
5 |
| enum | Style |
6 |
| Commit | Date | Subject |
|---|---|---|
49e36e2 |
2026-04-17 | Fix notification presentation actor isolation for 14.0.4 |
734d179 |
2026-04-17 | Remove remaining alerts strings |
- Prefer focused changes that respect the ownership described above.
- If this file touches helper trust, SMC writes, startup, or permissions, update the relevant support docs and tests.
- If this file is generated or an asset manifest, verify the producing workflow instead of hand-editing generated payloads.
import Foundation
import UserNotifications
struct NotificationStripPresentation: Equatable {
struct Action: Equatable {
enum Style: Equatable {
case prominent
case standard
}
let title: String
let icon: String
let style: Style
}
let detail: String
let action: Action?
@MainActor
init(notificationManager: AlertManager) {
self.init(
activeAlertCount: notificationManager.activeAlerts.count,
authorizationStatus: notificationManager.authorizationStatus,
desktopNotificationsEnabled: notificationManager.desktopNotificationsEnabled,
notificationsMutedUntil: notificationManager.notificationsMutedUntil
)
}
init(
activeAlertCount: Int,
authorizationStatus: UNAuthorizationStatus,
desktopNotificationsEnabled: Bool,
notificationsMutedUntil: Date?,
now: Date = Date()
) {
if activeAlertCount > 0 {
detail = "\(activeAlertCount) active notification\(activeAlertCount == 1 ? "" : "s")"
action = Action(title: "Open Notifications", icon: "bell.badge", style: .prominent)
return
}
- Home
- Start Here
- Product Overview
- Runtime Architecture
- Monitoring Pipeline
- Fan Control
- Privileged Helper
- Touch Bar
- Release Automation
- Security Model
- File Index (279)
- Every Commit (401)
- Chronological Change Log
- Removed Parts
- All Deleted Paths
- Branches And Tags
- Wiki Manifest
- Start Here
- Product Overview
- Source Map
- Runtime Architecture
- App Startup And Lifecycle
- Dashboard Architecture
- Menu Bar Architecture
- Monitoring Pipeline
- Snapshot Trends And Freshness
- CPU GPU Memory Disk Network
- Battery Power And Thermals
- SMC And Apple Silicon
- Fan Control
- Custom Fan Curves
- Privileged Helper
- XPC Trust Boundary
- Helper Diagnostics
- Touch Bar Architecture
- Touch Bar Customization
- Weather And Location
- Privacy And Permissions
- Onboarding And Help
- Legacy Alerts
- Kernel Panic Weird Mode