diff options
| author | Christian Cleberg <[email protected]> | 2026-04-22 11:46:52 -0500 |
|---|---|---|
| committer | Christian Cleberg <[email protected]> | 2026-04-22 11:46:52 -0500 |
| commit | 37b02e5ee360d61751951b77b7b556165a3af1fc (patch) | |
| tree | c2e30f32c4e8d2fcdf7035f97e9e353f09859114 /DomainDig/WatchlistView.swift | |
| parent | ceac99c05f180d9008b75c9329822466ff60255b (diff) | |
| download | domain-dig-37b02e5ee360d61751951b77b7b556165a3af1fc.tar.gz domain-dig-37b02e5ee360d61751951b77b7b556165a3af1fc.tar.bz2 domain-dig-37b02e5ee360d61751951b77b7b556165a3af1fc.zip | |
feat(v3.0.0): unify platform architecture and introduce feature tiers
* consolidate DomainReport as canonical data model
* add feature tier system (free/pro/data+ scaffolding)
* apply clean feature gating across workflows and tracking
* refactor app structure for maintainability
* standardize navigation and settings
* add data lifecycle controls
* ensure consistency across UI, export, and CLI
* stabilize internal inspection API
Diffstat (limited to 'DomainDig/WatchlistView.swift')
| -rw-r--r-- | DomainDig/WatchlistView.swift | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/DomainDig/WatchlistView.swift b/DomainDig/WatchlistView.swift index a434705..fcb5a16 100644 --- a/DomainDig/WatchlistView.swift +++ b/DomainDig/WatchlistView.swift @@ -55,7 +55,7 @@ struct WatchlistView: View { } .listRowBackground(Color(.systemGray6).opacity(0.5)) } else { - if let limitMessage = PremiumAccessService.trackedDomainLimitMessage(currentCount: viewModel.trackedDomains.count) { + if let limitMessage = FeatureAccessService.trackedDomainLimitMessage(currentCount: viewModel.trackedDomains.count) { Section { Text(limitMessage) .font(appDensity.font(.caption)) @@ -108,12 +108,19 @@ struct WatchlistView: View { shareTrackedDomains(format: .text) } - Button("Export CSV") { - shareTrackedDomains(format: .csv) - } + if FeatureAccessService.hasAccess(to: .advancedExports) { + Button("Export CSV") { + shareTrackedDomains(format: .csv) + } - Button("Export JSON") { - shareTrackedDomains(format: .json) + Button("Export JSON") { + shareTrackedDomains(format: .json) + } + } else { + Button("CSV Export • Available in Pro") {} + .disabled(true) + Button("JSON Export • Available in Pro") {} + .disabled(true) } } label: { Image(systemName: "line.3.horizontal.decrease.circle") |
