diff options
| author | Christian Cleberg <[email protected]> | 2026-07-17 11:18:25 -0500 |
|---|---|---|
| committer | Christian Cleberg <[email protected]> | 2026-07-20 13:56:41 -0500 |
| commit | fd8ca178a379da71f5bb19c461524888cad9447e (patch) | |
| tree | adb481e4c7c22e41e919b97ccded0e506083f9b3 /DomainDig/PurchaseService.swift | |
| parent | 2b52ee5520cad3c47d30d513946645366f268762 (diff) | |
| download | domain-dig-fd8ca178a379da71f5bb19c461524888cad9447e.tar.gz domain-dig-fd8ca178a379da71f5bb19c461524888cad9447e.tar.bz2 domain-dig-fd8ca178a379da71f5bb19c461524888cad9447e.zip | |
v4.8.0: Add scheduled report generation
- ScheduledReportService (@MainActor, headless/storage-backed like
DomainMonitoringService): builds the latest report for every tracked domain
from persisted history, exports it via DomainReportExporter in the
configured format (markdown/PDF/JSON), writes it to a local Documents
subdirectory, logs the run, and fires a "Scheduled Report Ready" local
notification.
- ScheduledReportScheduler mirrors DomainMonitoringScheduler's BGTaskScheduler
approach with its own task identifier (net.cleberg.DomainDig.report.schedule,
added to Info.plist) and a daily/weekly cadence.
- ScheduledReportsView (Settings → Scheduled Reports): enable toggle, cadence
and format pickers, "Generate Now", and a log of past reports each shareable
via the existing ExportPresenter share sheet.
- Gated behind the existing .automatedMonitoring capability (Pro), consistent
with monitoring being the other background-automation feature.
- Settings/logs persist via UserDefaults (DomainExportFormat is now Codable),
not DomainDataPortabilityService backup/restore — this is local automation
configuration, not user-authored content, same reasoning as v4.7.0's
watchlist saved views.
Diffstat (limited to 'DomainDig/PurchaseService.swift')
0 files changed, 0 insertions, 0 deletions
