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:
@@ -103,15 +103,16 @@ public partial class FolderStructureViewModel : FeatureViewModelBase
|
||||
|
||||
protected override async Task RunOperationAsync(CancellationToken ct, IProgress<OperationProgress> progress)
|
||||
{
|
||||
if (_currentProfile == null) throw new InvalidOperationException("No tenant connected.");
|
||||
var T = TranslationSource.Instance;
|
||||
if (_currentProfile == null) throw new InvalidOperationException(T["err.no_tenant"]);
|
||||
if (_validRows == null || _validRows.Count == 0)
|
||||
throw new InvalidOperationException("No valid rows. Import a CSV first.");
|
||||
throw new InvalidOperationException(T["err.no_valid_rows"]);
|
||||
if (string.IsNullOrWhiteSpace(LibraryTitle))
|
||||
throw new InvalidOperationException("Library title is required.");
|
||||
throw new InvalidOperationException(T["err.library_title_required"]);
|
||||
|
||||
var urls = GlobalSites.Select(s => s.Url).Where(u => !string.IsNullOrWhiteSpace(u)).ToList();
|
||||
if (urls.Count == 0)
|
||||
throw new InvalidOperationException("Select at least one site from the toolbar.");
|
||||
throw new InvalidOperationException(T["err.no_sites_selected"]);
|
||||
|
||||
var uniquePaths = FolderStructureService.BuildUniquePaths(_validRows);
|
||||
var message = string.Format(TranslationSource.Instance["bulk.confirm.message"],
|
||||
|
||||
Reference in New Issue
Block a user