Add shared chart controls to UI.Adaptive via LiveCharts2 rc6.1
Details
Add AdaptiveCartesianChart and AdaptivePieChart wrapper controls to
PrivStack.UI.Adaptive. These code-first Border-based controls encapsulate
LiveCharts2 controls internally, allowing plugins to use charting via
StyledProperty bindings without directly referencing LiveCharts in their
XAML — avoiding the SourceGenChart TypeLoadException that occurs when
LiveCharts controls are XAML-compiled in dynamically-loaded plugin
assemblies.
Any plugin that references UI.Adaptive now gets charting for free.
Version bump: 1.61.0 → 1.62.0
Add real LiveCharts2 visualizations to Finance Reports
Details
Replace flat progress bar charts with interactive LiveCharts2 controls:
- Spending by Category: horizontal bar chart + pie chart side by side
- Income vs Expenses: grouped column chart with net savings line overlay
- Net Worth: area/line chart with gradient fill for time series
- Category Trends: line + column combo chart for spending over time
Each chart includes currency-formatted axes, tooltips, and summary text.
Additional fixes:
- "All" date range now starts from earliest transaction date instead of year 2000
- TransactionViewModel inherits ObservableObject instead of ViewModelBase to
prevent ViewLocator log spam searching for nonexistent TransactionView
Version bump: 3.17.0 → 3.18.0
Make report date filters global and improve chart visuals
Details
Date range filters now apply to all four reports (Spending, Income vs
Expenses, Net Worth, Category Trends) instead of only Spending. Moved
filter bar to a shared header row above the report content area. Default
range changed from 1 Month to 12 Months.
ReportingService methods now accept (DateOnly from, DateOnly to) instead
of hardcoded month counts. Updated intent handlers to match the new API.
Replaced ProgressBar-based charts with styled horizontal bar charts using
colored Border fills with distinct colors per report type. Added BarPixels
computed properties to row records.
Category selector for trends moved into the global filter area. Removed
1 Week / 2 Weeks options from date range (not useful for monthly reports).
Version bump to 3.17.0.
Add real-time import progress overlay for CSV transaction imports
Details
When importing CSV bank statements, the Finance plugin now shows a
progress overlay with a visual progress bar, current/total count,
and the payee being processed. Transactions are inserted into the
register in real-time as each one is saved, eliminating the UI freeze
and bulk-reload that previously occurred. Users can cancel mid-import
via a cancel button; already-saved transactions persist. Bumps version
to 3.16.0.
Add import date range filter for bank statement imports
Details
New ImportDateFilterControl provides preset date range options (Last 30
Days, Last 90 Days, This Year, All, Custom) when importing bank
statements in both the Account Register and Reconciliation paths.
IngestionService now accepts an optional fromDate parameter to filter
parsed transactions by date. The modal stacks correctly over the
reconciliation view by saving and restoring previous modal state.
Bumps version to 3.15.0.
Get notified about new releases