summaryrefslogtreecommitdiff
path: root/DomainDig/IPGeolocationService.swift
diff options
context:
space:
mode:
authorChristian Cleberg <[email protected]>2026-07-24 23:52:39 -0500
committerChristian Cleberg <[email protected]>2026-07-25 00:00:29 -0500
commit7805888980f6d41bcc881c5d2e6001b2d8e69351 (patch)
tree40710d217106a500428ad8f26c3bddd803d17bdb /DomainDig/IPGeolocationService.swift
parente597cdf5b7084634e300af39b622c8552c9cc5e8 (diff)
downloaddomain-dig-7805888980f6d41bcc881c5d2e6001b2d8e69351.tar.gz
domain-dig-7805888980f6d41bcc881c5d2e6001b2d8e69351.tar.bz2
domain-dig-7805888980f6d41bcc881c5d2e6001b2d8e69351.zip
refactor: extract monitoring surface into DomainViewModel+Monitoring (v5 step 4, 2/n)
Second slice of the DomainViewModel decomposition, stacked on the audit split. - Moves the monitoring configuration surface — notification authorization, the settings mutators (enabled/scope/interval/adaptive/sensitivity/quiet-hours/ alert filter/alerts/selection), toggleMonitoring, runMonitoringNow, the manual run, and the per-domain interval/status labels — plus the private intervalLabel helper into DomainViewModel+Monitoring.swift. Pure move. - persistMonitoringSettings(...) and sanitizeMonitoringSelection() are promoted private -> internal: the tracked-domain lifecycle (add/delete/clear) on the main type calls them too, so they stay put and are now reachable cross-file. The two visibility drops are the only non-deletion edits to DomainViewModel. DomainViewModel.swift: 4761 -> 4601 lines. App builds clean; unit suite 58/58. No project.pbxproj change (DomainDig/ is a synchronized group).
Diffstat (limited to 'DomainDig/IPGeolocationService.swift')
0 files changed, 0 insertions, 0 deletions