Remove Add Transaction feature and clean all related code

Deleted files:
- AddTransactionView.swift
- TransactionRepository.swift
- Transaction+CoreDataClass.swift

Cleaned files:
- SourceDetailViewModel: removed transactions published property,
  showingAddTransaction flag, transactionRepository dependency,
  addTransaction() and deleteTransaction() methods
- SourceDetailView: removed transactionsSection, TransactionRow struct,
  Add Transaction button from quickActions, sheet presentation
- InvestmentSource+CoreDataClass: removed transactions NSManaged property,
  transactionsArray, totalInvested, totalDividends, totalFees computed
  properties, and all transaction Core Data accessors
- SettingsViewModel: removed "Transaction" from resetAllData entity list
- SampleDataService: removed transactionRepository and sample transaction

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
alexandrev-tibco
2026-02-20 23:04:03 +01:00
parent b17d8866a4
commit 7cb5f92cf4
20 changed files with 215 additions and 503 deletions
@@ -136,6 +136,18 @@ extension Date {
return formatter.localizedString(for: self, relativeTo: Date())
}
var relativeDayDescription: String {
let calendar = Calendar.current
let days = calendar.dateComponents([.day], from: calendar.startOfDay(for: self), to: calendar.startOfDay(for: Date())).day ?? 0
if days == 0 { return String(localized: "date_today") }
if days == 1 { return "1d ago" }
if days < 31 { return "\(days)d ago" }
let months = calendar.dateComponents([.month], from: self, to: Date()).month ?? 0
if months < 12 { return "\(max(1, months))mo ago" }
let years = calendar.dateComponents([.year], from: self, to: Date()).year ?? 0
return "\(max(1, years))y ago"
}
var friendlyDescription: String {
if isToday {
return String(localized: "date_today")