chore: release v2.4

- Add theme system (Dark/Light palettes, ModernTheme, ThemeManager)
- Add InputDialog, Spinner common view
- Add DuplicatesCsvExportService
- Refresh views, dialogs, and view models across tabs
- Update localization strings (en/fr)
- Tweak services (transfer, permissions, search, user access, ownership elevation, bulk operations)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Dev
2026-04-20 11:23:11 +02:00
parent 8f30a60d2a
commit 12dd1de9f2
93 changed files with 8708 additions and 1159 deletions
+16
View File
@@ -0,0 +1,16 @@
root = true
[*.cs]
indent_style = space
indent_size = 4
end_of_line = crlf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
# ConfigureAwait(false) is required in non-UI service/infrastructure code so
# callers that may still sync-wait cannot deadlock on the WPF dispatcher.
# Scoped to Services/ and Infrastructure/ — ViewModels legitimately resume on
# the UI thread for INotifyPropertyChanged updates.
[{SharepointToolbox/Services/**.cs,SharepointToolbox/Infrastructure/**.cs}]
dotnet_diagnostic.CA2007.severity = suggestion