From 339df3d2a02b85a0fd80fc7dcb1b5be80829db7f Mon Sep 17 00:00:00 2001 From: Marc Chouteau Date: Sat, 29 Aug 2026 10:04:54 +0200 Subject: [PATCH] Add SuperDataGridExporterTests for export and UI logic Comprehensive test suite for SuperBlazorComponents.DataGridExporter: - Covers column resolution, CSV/Excel export, file store expiration/cleanup - Tests export button rendering, dialog UI, accessibility, cancellation, errors - Uses Bunit, MSTest, helpers for grid/column setup, service stubs - Manages temp directories for file isolation, custom time providers for expiration --- .github/workflows/ci-publish.yml | 12 +- README.md | 1 + SUPERDATAGRIDEXPORTER.md | 124 ++++++ SuperBlazorComponents.slnx | 1 + .../Components/Pages/SuperGridDemo.razor | 37 +- src/DemoWebSite/DemoWebSite.csproj | 8 +- src/DemoWebSite/Program.cs | 11 + ...0468641e73f93cf3f118548ca7a15fe169100.xlsx | Bin 0 -> 351498 bytes .../SuperDataGridCsvExportButton.razor | 17 + .../SuperDataGridExcelExportButton.razor | 17 + .../SuperDataGridExportButtonBase.cs | 73 ++++ .../SuperDataGridExportDialog.razor | 114 ++++++ .../ISuperDataGridExportService.cs | 12 + .../Internal/ExportColumn.cs | 6 + .../Internal/ExportColumnResolver.cs | 137 +++++++ .../Internal/ExportFileCleanupService.cs | 48 +++ .../Internal/ExportFileStore.cs | 162 ++++++++ .../Internal/StoredExportFile.cs | 3 + .../Properties/AssemblyInfo.cs | 3 + .../StartupExtensions.cs | 46 +++ ...erBlazorComponents.DataGridExporter.csproj | 32 ++ .../SuperDataGridExportFormat.cs | 7 + .../SuperDataGridExportResult.cs | 3 + .../SuperDataGridExportService.cs | 233 ++++++++++++ .../SuperDataGridExporterOptions.cs | 37 ++ .../_Imports.razor | 7 + .../wwwroot/icons/microsoft-excel.svg | 7 + .../Components/Buttons/SuperButton.razor.cs | 9 +- .../SuperDataGrid/DataGridColumn.razor | 24 ++ .../SuperDataGrid/SuperDataGrid.razor | 2 +- .../SuperDataGrid/SuperDataGrid.razor.cs | 27 ++ .../SuperDataGridQuerySnapshot.cs | 45 +++ .../SuperBlazorComponents.csproj | 2 +- .../SuperBlazorComponents.Tests.csproj | 11 +- .../SuperDataGridExporterTests.cs | 359 ++++++++++++++++++ 35 files changed, 1621 insertions(+), 16 deletions(-) create mode 100644 SUPERDATAGRIDEXPORTER.md create mode 100644 src/DemoWebSite/_temp/data-grid-exports/e4afaf7eca362f7d1afc0ae8a250468641e73f93cf3f118548ca7a15fe169100.xlsx create mode 100644 src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridCsvExportButton.razor create mode 100644 src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridExcelExportButton.razor create mode 100644 src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridExportButtonBase.cs create mode 100644 src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridExportDialog.razor create mode 100644 src/SuperBlazorComponents.DataGridExporter/ISuperDataGridExportService.cs create mode 100644 src/SuperBlazorComponents.DataGridExporter/Internal/ExportColumn.cs create mode 100644 src/SuperBlazorComponents.DataGridExporter/Internal/ExportColumnResolver.cs create mode 100644 src/SuperBlazorComponents.DataGridExporter/Internal/ExportFileCleanupService.cs create mode 100644 src/SuperBlazorComponents.DataGridExporter/Internal/ExportFileStore.cs create mode 100644 src/SuperBlazorComponents.DataGridExporter/Internal/StoredExportFile.cs create mode 100644 src/SuperBlazorComponents.DataGridExporter/Properties/AssemblyInfo.cs create mode 100644 src/SuperBlazorComponents.DataGridExporter/StartupExtensions.cs create mode 100644 src/SuperBlazorComponents.DataGridExporter/SuperBlazorComponents.DataGridExporter.csproj create mode 100644 src/SuperBlazorComponents.DataGridExporter/SuperDataGridExportFormat.cs create mode 100644 src/SuperBlazorComponents.DataGridExporter/SuperDataGridExportResult.cs create mode 100644 src/SuperBlazorComponents.DataGridExporter/SuperDataGridExportService.cs create mode 100644 src/SuperBlazorComponents.DataGridExporter/SuperDataGridExporterOptions.cs create mode 100644 src/SuperBlazorComponents.DataGridExporter/_Imports.razor create mode 100644 src/SuperBlazorComponents.DataGridExporter/wwwroot/icons/microsoft-excel.svg create mode 100644 src/SuperBlazorComponents/Components/SuperDataGrid/SuperDataGridQuerySnapshot.cs create mode 100644 tests/SuperBlazorComponents.Tests/SuperDataGridExporterTests.cs diff --git a/.github/workflows/ci-publish.yml b/.github/workflows/ci-publish.yml index 95ee282..6813778 100644 --- a/.github/workflows/ci-publish.yml +++ b/.github/workflows/ci-publish.yml @@ -12,7 +12,8 @@ env: DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true DOTNET_CLI_TELEMETRY_OPTOUT: true SOLUTION_FILE: SuperBlazorComponents.slnx - PACKAGE_PROJECT: src/SuperBlazorComponents/SuperBlazorComponents.csproj + MAIN_PACKAGE_PROJECT: src/SuperBlazorComponents/SuperBlazorComponents.csproj + EXPORTER_PACKAGE_PROJECT: src/SuperBlazorComponents.DataGridExporter/SuperBlazorComponents.DataGridExporter.csproj permissions: contents: read @@ -64,7 +65,14 @@ jobs: - name: Pack SuperBlazorComponents run: > - dotnet pack ${{ env.PACKAGE_PROJECT }} + dotnet pack ${{ env.MAIN_PACKAGE_PROJECT }} + --no-build + --configuration Release + --output ./nupkgs + + - name: Pack SuperBlazorComponents.DataGridExporter + run: > + dotnet pack ${{ env.EXPORTER_PACKAGE_PROJECT }} --no-build --configuration Release --output ./nupkgs diff --git a/README.md b/README.md index d5ac910..5c77f99 100644 --- a/README.md +++ b/README.md @@ -19,6 +19,7 @@ | Preview | Component | Description | Docs | |---|---|---|---| | SuperDataGrid preview | **SuperDataGrid** | Virtualized data grid — frozen columns/rows, hierarchical lazy-loading rows, reordering, resizing, filtering, sorting, inline editing, row selection, settings persistence | [📖 SUPERDATAGRID.md](SUPERDATAGRID.md) | +| SuperDataGrid exporter preview | **SuperDataGrid Exporter** | Optional CSV and Excel export extension for complete filtered, sorted and virtualized datasets | [📖 SUPERDATAGRIDEXPORTER.md](SUPERDATAGRIDEXPORTER.md) | | SuperLayout preview | **SuperLayout** | Responsive app layout — header, sidebar, body, footer, chat panel with collapsible sidebar | [📖 SUPERLAYOUT.md](SUPERLAYOUT.md) | | SuperContext preview | **SuperContext** | Context-aware tabs and contextual panels — discover components by runtime type and zone, render one or many contexts, and isolate host state per instance | [📖 SUPERCONTEXT.md](SUPERCONTEXT.md) | | SuperTabs preview | **SuperTabs** | Dynamic tabbed interface — badges, closable tabs, lazy loading, persistence (URL + localStorage), keyboard navigation, service-driven management | [📖 SUPERTABS.md](SUPERTABS.md) | diff --git a/SUPERDATAGRIDEXPORTER.md b/SUPERDATAGRIDEXPORTER.md new file mode 100644 index 0000000..3a7034d --- /dev/null +++ b/SUPERDATAGRIDEXPORTER.md @@ -0,0 +1,124 @@ +# SuperDataGrid CSV and Excel exporter + +The **SuperBlazorComponents.DataGridExporter** extension exports the complete +filtered and sorted view of a **SuperDataGrid**, including rows that are not +currently rendered by virtualization. + +## Installation + +Reference both packages/projects: + +~~~bash +dotnet add package SuperBlazorComponents +dotnet add package SuperBlazorComponents.DataGridExporter +~~~ + +Register the exporter and map its download endpoint in **Program.cs**: + +~~~csharp +using SuperBlazorComponents.DataGridExporter; + +builder.Services.AddSuperComponents(); +builder.Services.AddSuperDataGridExporter(options => +{ + options.TemporaryDirectory = Path.Combine( + builder.Environment.ContentRootPath, "_temp", "grid-exports"); + options.FileLifetime = TimeSpan.FromHours(24); + options.CleanupInterval = TimeSpan.FromDays(1); +}); + +var app = builder.Build(); +app.MapSuperDataGridExporter(); +~~~ + +The endpoint uses an unguessable 256-bit token and is anonymous by design. +Files expire after **FileLifetime**; cleanup runs at startup and then at +**CleanupInterval**. + +## Usage + +Keep a component reference to the grid and pass it to either export button: + +~~~razor +@using SuperBlazorComponents.DataGridExporter.Components + + + +
+
+ + +
+
+
+ + +
+ +@code { + private SuperDataGrid? _grid; +} +~~~ + +Set **IconOnly="true"** to hide the text while preserving it as the tooltip +and accessible label. The Bootstrap **ms-auto** wrapper aligns the export +actions to the right of the grid header. The grid keeps the custom header area +separated from its built-in actions. Omit **IconOnly** to display the icon and +text together. + +Only currently visible columns are exported, in their current order. The +exporter captures the grid filters and sort order once, then reads the complete +result from **ItemsProvider** in batches. Hierarchical grids export root items +only. The default batch size is 200 rows and can be changed with +**SuperDataGridExporterOptions.BatchSize**. + +## Custom columns + +Headers are resolved in this order: + +1. **ExportHeader** +2. plain text found directly in **HeaderTemplate** +3. **Title** +4. **Property** + +Values use **ExportValue** first, then **Property** or **For**. Configure both +overrides when a column is entirely template-driven: + +~~~razor + + + + +@code { + private static object GetExportedStatus(Product item) + => item.IsActive ? "Active" : "Inactive"; +} +~~~ + +Set **Exportable="false"** to exclude a visible column. + +## Formats and limits + +- CSV defaults to UTF-8 without BOM, comma delimiter and invariant culture. + These defaults are configurable through **SuperDataGridExporterOptions**. +- CSV strings beginning with formula control characters are prefixed safely by + default. +- Excel preserves native number, date and boolean cell types, freezes the + header, reproduces the grid's left frozen columns, enables filtering and + sizes columns to their content. Excel cannot freeze columns from the right. +- One worksheet supports at most 1,048,575 exported data rows because the + header occupies the first Excel row. +- The grid must use **ItemsProvider**; the currently rendered virtualized items + alone are intentionally never treated as the complete dataset. diff --git a/SuperBlazorComponents.slnx b/SuperBlazorComponents.slnx index 6de2220..5e7c836 100644 --- a/SuperBlazorComponents.slnx +++ b/SuperBlazorComponents.slnx @@ -7,6 +7,7 @@ + diff --git a/src/DemoWebSite/Components/Pages/SuperGridDemo.razor b/src/DemoWebSite/Components/Pages/SuperGridDemo.razor index 20ade86..f0699b1 100644 --- a/src/DemoWebSite/Components/Pages/SuperGridDemo.razor +++ b/src/DemoWebSite/Components/Pages/SuperGridDemo.razor @@ -4,6 +4,7 @@ @using SuperBlazorComponents.Components.SuperDataGrid @using SuperBlazorComponents.Components.SuperDataGrid.Filters @using SuperBlazorComponents.Components.SuperDataGrid.Tools +@using SuperBlazorComponents.DataGridExporter.Components SuperGrid Demo - 5000 Items @@ -78,10 +79,24 @@ -
+
Header +
+ + +
@@ -194,9 +209,23 @@ FreezeLeftColumns="1" GridId="supergrid-demo"> - +
+ +
+ + +
+
diff --git a/src/DemoWebSite/DemoWebSite.csproj b/src/DemoWebSite/DemoWebSite.csproj index 65644bb..2183339 100644 --- a/src/DemoWebSite/DemoWebSite.csproj +++ b/src/DemoWebSite/DemoWebSite.csproj @@ -32,6 +32,9 @@ Always + + Always + Always @@ -71,12 +74,13 @@ - - + + + diff --git a/src/DemoWebSite/Program.cs b/src/DemoWebSite/Program.cs index 5cf3a58..1f55102 100644 --- a/src/DemoWebSite/Program.cs +++ b/src/DemoWebSite/Program.cs @@ -8,6 +8,7 @@ using SuperBlazorComponents; using SuperBlazorComponents.Components.SuperDataGrid; +using SuperBlazorComponents.DataGridExporter; using System.Text.RegularExpressions; @@ -76,6 +77,15 @@ DisplayDefaultFooterTemplate = true }); }); +builder.Services.AddSuperDataGridExporter(options => +{ + options.TemporaryDirectory = Path.Combine( + builder.Environment.ContentRootPath, + "_temp", + "data-grid-exports"); + options.FileLifetime = TimeSpan.FromHours(24); + options.CleanupInterval = TimeSpan.FromDays(1); +}); System.Globalization.CultureInfo.DefaultThreadCurrentUICulture = new System.Globalization.CultureInfo("en-US"); System.Globalization.CultureInfo.DefaultThreadCurrentCulture = new System.Globalization.CultureInfo("en-US"); @@ -113,6 +123,7 @@ }) })); app.MapMcp("/mcp"); +app.MapSuperDataGridExporter(); app.MapGet("/demo-source", (string route, IWebHostEnvironment environment) => { diff --git a/src/DemoWebSite/_temp/data-grid-exports/e4afaf7eca362f7d1afc0ae8a250468641e73f93cf3f118548ca7a15fe169100.xlsx b/src/DemoWebSite/_temp/data-grid-exports/e4afaf7eca362f7d1afc0ae8a250468641e73f93cf3f118548ca7a15fe169100.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..d2c1d879f1ff2b456e83ed1a696dc9dd6052c745 GIT binary patch literal 351498 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

l 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 AzyJUM literal 0 HcmV?d00001 diff --git a/src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridCsvExportButton.razor b/src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridCsvExportButton.razor new file mode 100644 index 0000000..0bd34d9 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridCsvExportButton.razor @@ -0,0 +1,17 @@ +@typeparam TItem +@inherits SuperDataGridExportButtonBase + + + +@code { + protected override SuperDataGridExportFormat Format => SuperDataGridExportFormat.Csv; + protected override string DefaultText => "Exporter CSV"; + protected override string DialogTitle => "Export CSV"; +} diff --git a/src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridExcelExportButton.razor b/src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridExcelExportButton.razor new file mode 100644 index 0000000..c832664 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridExcelExportButton.razor @@ -0,0 +1,17 @@ +@typeparam TItem +@inherits SuperDataGridExportButtonBase + + + +@code { + protected override SuperDataGridExportFormat Format => SuperDataGridExportFormat.Excel; + protected override string DefaultText => "Exporter Excel"; + protected override string DialogTitle => "Export Excel"; +} diff --git a/src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridExportButtonBase.cs b/src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridExportButtonBase.cs new file mode 100644 index 0000000..4e6db00 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridExportButtonBase.cs @@ -0,0 +1,73 @@ +using Microsoft.AspNetCore.Components; +using Microsoft.AspNetCore.Components.Web; + +using SuperBlazorComponents.Components.Buttons; +using SuperBlazorComponents.Components.Dialogs; +using SuperBlazorComponents.Components.SuperDataGrid; +using SuperBlazorComponents.Services; + +namespace SuperBlazorComponents.DataGridExporter.Components; + +public abstract class SuperDataGridExportButtonBase : ComponentBase +{ + [Inject] + private SuperDialogService DialogService { get; set; } = default!; + + [Parameter, EditorRequired] + public SuperDataGrid? Grid { get; set; } + + [CascadingParameter] + private SuperDataGrid? CascadedGrid { get; set; } + + [Parameter] + public string? DefaultFileName { get; set; } + + [Parameter] + public string? Text { get; set; } + + [Parameter] + public bool Disabled { get; set; } + + [Parameter] + public SuperButtonStyle Style { get; set; } = SuperButtonStyle.Primary; + + [Parameter] + public SuperButtonSize Size { get; set; } = SuperButtonSize.Default; + + [Parameter] + public bool Outline { get; set; } + + ///

+ /// Displays only the format icon. The resolved text remains available as + /// the button tooltip and accessible label. + /// + [Parameter] + public bool IconOnly { get; set; } + + protected abstract SuperDataGridExportFormat Format { get; } + protected abstract string DefaultText { get; } + protected abstract string DialogTitle { get; } + + protected string ResolvedText => string.IsNullOrWhiteSpace(Text) ? DefaultText : Text; + private SuperDataGrid? EffectiveGrid => Grid ?? CascadedGrid; + protected bool IsDisabled => Disabled || EffectiveGrid is null; + + protected async Task OpenDialogAsync(MouseEventArgs _) + { + var grid = EffectiveGrid; + if (grid is null) + return; + + var parameters = new Dictionary + { + [nameof(SuperDataGridExportDialog.Grid)] = grid, + [nameof(SuperDataGridExportDialog.Format)] = Format, + [nameof(SuperDataGridExportDialog.DefaultFileName)] = DefaultFileName ?? string.Empty + }; + + await DialogService.OpenAsync>( + DialogTitle, + parameters, + new DialogOptions { Width = "560px" }); + } +} diff --git a/src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridExportDialog.razor b/src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridExportDialog.razor new file mode 100644 index 0000000..6f65602 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/Components/SuperDataGridExportDialog.razor @@ -0,0 +1,114 @@ +@typeparam TItem +@implements IDisposable +@inject ISuperDataGridExportService ExportService +@inject SuperDialogService DialogService + + + +@code { + [Parameter, EditorRequired] + public SuperDataGrid Grid { get; set; } = default!; + + [Parameter] + public SuperDataGridExportFormat Format { get; set; } + + [Parameter] + public string DefaultFileName { get; set; } = string.Empty; + + private readonly CancellationTokenSource _cancellationTokenSource = new(); + private string _fileName = string.Empty; + private string? _error; + private bool _isGenerating; + private bool _initialized; + private SuperDataGridExportResult? _result; + + private string Extension => Format == SuperDataGridExportFormat.Csv ? ".csv" : ".xlsx"; + + protected override void OnParametersSet() + { + if (_initialized) + return; + + _fileName = string.IsNullOrWhiteSpace(DefaultFileName) + ? $"export-{DateTime.Now:yyyyMMdd-HHmmss}" + : DefaultFileName; + _initialized = true; + } + + private async Task GenerateAsync(MouseEventArgs _) + { + if (_isGenerating || string.IsNullOrWhiteSpace(_fileName)) + return; + + _isGenerating = true; + _error = null; + try + { + _result = await ExportService.ExportAsync( + Grid, Format, _fileName, _cancellationTokenSource.Token); + } + catch (OperationCanceledException) when (_cancellationTokenSource.IsCancellationRequested) + { + } + catch (Exception exception) + { + _error = exception.Message; + } + finally + { + _isGenerating = false; + } + } + + private Task CancelAsync(MouseEventArgs _) => DialogService.Close(null); + private Task CloseAsync(MouseEventArgs _) => DialogService.Close(_result); + + public void Dispose() + { + _cancellationTokenSource.Cancel(); + _cancellationTokenSource.Dispose(); + } +} diff --git a/src/SuperBlazorComponents.DataGridExporter/ISuperDataGridExportService.cs b/src/SuperBlazorComponents.DataGridExporter/ISuperDataGridExportService.cs new file mode 100644 index 0000000..34ff372 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/ISuperDataGridExportService.cs @@ -0,0 +1,12 @@ +using SuperBlazorComponents.Components.SuperDataGrid; + +namespace SuperBlazorComponents.DataGridExporter; + +public interface ISuperDataGridExportService +{ + Task ExportAsync( + SuperDataGrid grid, + SuperDataGridExportFormat format, + string fileName, + CancellationToken cancellationToken = default); +} diff --git a/src/SuperBlazorComponents.DataGridExporter/Internal/ExportColumn.cs b/src/SuperBlazorComponents.DataGridExporter/Internal/ExportColumn.cs new file mode 100644 index 0000000..791c1f5 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/Internal/ExportColumn.cs @@ -0,0 +1,6 @@ +namespace SuperBlazorComponents.DataGridExporter.Internal; + +internal sealed record ExportColumn( + string Header, + string? FormatString, + Func ValueAccessor); diff --git a/src/SuperBlazorComponents.DataGridExporter/Internal/ExportColumnResolver.cs b/src/SuperBlazorComponents.DataGridExporter/Internal/ExportColumnResolver.cs new file mode 100644 index 0000000..ddcf3c9 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/Internal/ExportColumnResolver.cs @@ -0,0 +1,137 @@ +using System.Collections.Concurrent; +using System.Diagnostics; +using System.Net; +using System.Reflection; +using System.Text.RegularExpressions; + +using Microsoft.AspNetCore.Components; +using Microsoft.AspNetCore.Components.Rendering; +using Microsoft.AspNetCore.Components.RenderTree; + +using SuperBlazorComponents.Components.SuperDataGrid; + +namespace SuperBlazorComponents.DataGridExporter.Internal; + +internal static partial class ExportColumnResolver +{ + private static readonly ConcurrentDictionary<(Type Type, string Path), Func> Accessors = new(); + + public static IReadOnlyList> Resolve(SuperDataGrid grid) + { + var result = new List>(); + + foreach (var column in grid.ColumnsCollection.Where(c => c.Exportable && c.IsCurrentlyVisible)) + { + var header = FirstNotEmpty( + column.ExportHeader, + ExtractHeaderText(column.HeaderTemplate), + column.Title, + column.Property); + + if (string.IsNullOrWhiteSpace(header)) + { + throw new InvalidOperationException( + "An exportable grid column has no resolvable header. Set ExportHeader on the column."); + } + + Func accessor; + if (column.ExportValue is not null) + { + accessor = column.ExportValue; + } + else if (!string.IsNullOrWhiteSpace(column.Property)) + { + var untypedAccessor = Accessors.GetOrAdd( + (typeof(TItem), column.Property), + static key => CreateAccessor(key.Type, key.Path)); + accessor = item => item is null ? null : untypedAccessor(item); + } + else + { + throw new InvalidOperationException( + $"Column '{header}' has no resolvable value. Set Property, For, or ExportValue on the column."); + } + + result.Add(new ExportColumn(header, column.FormatString, accessor)); + } + + if (result.Count == 0) + throw new InvalidOperationException("The grid has no visible exportable columns."); + + return result; + } + + private static Func CreateAccessor(Type itemType, string propertyPath) + { + var members = new List(); + var currentType = itemType; + + foreach (var segment in propertyPath.Split('.', StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries)) + { + var member = (MemberInfo?)currentType.GetProperty(segment, BindingFlags.Instance | BindingFlags.Public) + ?? currentType.GetField(segment, BindingFlags.Instance | BindingFlags.Public); + + if (member is null) + throw new InvalidOperationException($"Property path '{propertyPath}' was not found on '{itemType.Name}'."); + + members.Add(member); + currentType = member switch + { + PropertyInfo property => property.PropertyType, + FieldInfo field => field.FieldType, + _ => throw new UnreachableException() + }; + } + + return instance => + { + object? value = instance; + foreach (var member in members) + { + if (value is null) + return null; + value = member switch + { + PropertyInfo property => property.GetValue(value), + FieldInfo field => field.GetValue(value), + _ => null + }; + } + return value; + }; + } + +#pragma warning disable BL0006 // Deliberately inspect simple text frames; component output falls back to Title/Property. + private static string? ExtractHeaderText(RenderFragment? template) + { + if (template is null) + return null; + + var builder = new RenderTreeBuilder(); + template(builder); + var frames = builder.GetFrames(); + var parts = new List(); + + for (var i = 0; i < frames.Count; i++) + { + var frame = frames.Array[i]; + if (frame.FrameType == RenderTreeFrameType.Text) + parts.Add(frame.TextContent); + else if (frame.FrameType == RenderTreeFrameType.Markup) + parts.Add(HtmlTagRegex().Replace(frame.MarkupContent, " ")); + } + + var text = WhitespaceRegex().Replace(WebUtility.HtmlDecode(string.Join(" ", parts)), " ").Trim(); + return string.IsNullOrWhiteSpace(text) ? null : text; + } +#pragma warning restore BL0006 + + private static string? FirstNotEmpty(params string?[] values) + => values.FirstOrDefault(value => !string.IsNullOrWhiteSpace(value))?.Trim(); + + [GeneratedRegex("<[^>]+>")] + private static partial Regex HtmlTagRegex(); + + [GeneratedRegex("\\s+")] + private static partial Regex WhitespaceRegex(); +} diff --git a/src/SuperBlazorComponents.DataGridExporter/Internal/ExportFileCleanupService.cs b/src/SuperBlazorComponents.DataGridExporter/Internal/ExportFileCleanupService.cs new file mode 100644 index 0000000..f66da55 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/Internal/ExportFileCleanupService.cs @@ -0,0 +1,48 @@ +using Microsoft.Extensions.Hosting; +using Microsoft.Extensions.Logging; + +namespace SuperBlazorComponents.DataGridExporter.Internal; + +internal sealed class ExportFileCleanupService : BackgroundService +{ + private readonly ExportFileStore _store; + private readonly SuperDataGridExporterOptions _options; + private readonly TimeProvider _timeProvider; + private readonly ILogger _logger; + + public ExportFileCleanupService( + ExportFileStore store, + SuperDataGridExporterOptions options, + TimeProvider timeProvider, + ILogger logger) + { + _store = store; + _options = options; + _timeProvider = timeProvider; + _logger = logger; + } + + protected override async Task ExecuteAsync(CancellationToken stoppingToken) + { + await CleanupAsync(stoppingToken); + using var timer = new PeriodicTimer(_options.CleanupInterval, _timeProvider); + + while (await timer.WaitForNextTickAsync(stoppingToken)) + await CleanupAsync(stoppingToken); + } + + private async Task CleanupAsync(CancellationToken cancellationToken) + { + try + { + await _store.CleanupExpiredAsync(cancellationToken); + } + catch (OperationCanceledException) when (cancellationToken.IsCancellationRequested) + { + } + catch (Exception exception) + { + _logger.LogError(exception, "Data-grid export cleanup failed."); + } + } +} diff --git a/src/SuperBlazorComponents.DataGridExporter/Internal/ExportFileStore.cs b/src/SuperBlazorComponents.DataGridExporter/Internal/ExportFileStore.cs new file mode 100644 index 0000000..7b7879b --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/Internal/ExportFileStore.cs @@ -0,0 +1,162 @@ +using System.Security.Cryptography; +using System.Text.RegularExpressions; + +using Microsoft.Extensions.Logging; + +namespace SuperBlazorComponents.DataGridExporter.Internal; + +internal sealed partial class ExportFileStore +{ + private readonly SuperDataGridExporterOptions _options; + private readonly TimeProvider _timeProvider; + private readonly ILogger _logger; + + public ExportFileStore( + SuperDataGridExporterOptions options, + TimeProvider timeProvider, + ILogger logger) + { + _options = options; + _timeProvider = timeProvider; + _logger = logger; + } + + public async Task CreateAsync( + SuperDataGridExportFormat format, + string requestedFileName, + Func> writer, + CancellationToken cancellationToken) + { + Directory.CreateDirectory(_options.TemporaryDirectory); + + var extension = GetExtension(format); + var token = Convert.ToHexString(RandomNumberGenerator.GetBytes(32)).ToLowerInvariant(); + var finalPath = Path.Combine(_options.TemporaryDirectory, $"{token}.{extension}"); + var partialPath = Path.Combine(_options.TemporaryDirectory, $"{token}.partial.{extension}"); + var downloadName = SanitizeFileName(requestedFileName, extension); + + try + { + var rowCount = await writer(partialPath, cancellationToken); + File.Move(partialPath, finalPath); + File.SetLastWriteTimeUtc(finalPath, _timeProvider.GetUtcNow().UtcDateTime); + + var url = $"{_options.NormalizedDownloadRoute}/{token}/{extension}?fileName={Uri.EscapeDataString(downloadName)}"; + return new SuperDataGridExportResult(downloadName, url, rowCount); + } + catch + { + TryDelete(partialPath); + TryDelete(finalPath); + throw; + } + } + + public StoredExportFile? TryResolve(string token, string format, string? requestedFileName) + { + if (!TokenRegex().IsMatch(token) || !TryParseFormat(format, out var exportFormat)) + return null; + + var extension = GetExtension(exportFormat); + var path = Path.Combine(_options.TemporaryDirectory, $"{token}.{extension}"); + if (!File.Exists(path)) + return null; + + var expiresAt = File.GetLastWriteTimeUtc(path) + _options.FileLifetime; + if (expiresAt <= _timeProvider.GetUtcNow().UtcDateTime) + { + TryDelete(path); + return null; + } + + return new StoredExportFile( + path, + exportFormat == SuperDataGridExportFormat.Csv + ? "text/csv; charset=utf-8" + : "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + SanitizeFileName(requestedFileName, extension)); + } + + public Task CleanupExpiredAsync(CancellationToken cancellationToken) + { + if (!Directory.Exists(_options.TemporaryDirectory)) + return Task.CompletedTask; + + var threshold = _timeProvider.GetUtcNow().UtcDateTime - _options.FileLifetime; + foreach (var path in Directory.EnumerateFiles(_options.TemporaryDirectory, "*", SearchOption.TopDirectoryOnly)) + { + cancellationToken.ThrowIfCancellationRequested(); + if (!ManagedFileRegex().IsMatch(Path.GetFileName(path))) + continue; + + try + { + if (File.GetLastWriteTimeUtc(path) <= threshold) + File.Delete(path); + } + catch (Exception exception) when (exception is IOException or UnauthorizedAccessException) + { + _logger.LogWarning(exception, "Unable to delete expired data-grid export file {FilePath}", path); + } + } + + return Task.CompletedTask; + } + + internal static string SanitizeFileName(string? requestedFileName, string extension) + { + var name = Path.GetFileName(requestedFileName ?? string.Empty).Trim(); + if (name.EndsWith($".{extension}", StringComparison.OrdinalIgnoreCase)) + name = name[..^(extension.Length + 1)]; + else if (Path.HasExtension(name)) + name = Path.GetFileNameWithoutExtension(name); + + name = InvalidFileNameRegex().Replace(name, "_").Trim(' ', '.'); + if (string.IsNullOrWhiteSpace(name)) + name = "export"; + if (name.Length > 120) + name = name[..120]; + + return $"{name}.{extension}"; + } + + internal static string GetExtension(SuperDataGridExportFormat format) + => format == SuperDataGridExportFormat.Csv ? "csv" : "xlsx"; + + private static bool TryParseFormat(string value, out SuperDataGridExportFormat format) + { + if (string.Equals(value, "csv", StringComparison.OrdinalIgnoreCase)) + { + format = SuperDataGridExportFormat.Csv; + return true; + } + if (string.Equals(value, "xlsx", StringComparison.OrdinalIgnoreCase)) + { + format = SuperDataGridExportFormat.Excel; + return true; + } + + format = default; + return false; + } + + private static void TryDelete(string path) + { + try + { + File.Delete(path); + } + catch (Exception exception) when (exception is IOException or UnauthorizedAccessException) + { + } + } + + [GeneratedRegex("^[a-f0-9]{64}$", RegexOptions.CultureInvariant)] + private static partial Regex TokenRegex(); + + [GeneratedRegex("^[a-f0-9]{64}(?:\\.partial)?\\.(?:csv|xlsx)$", RegexOptions.CultureInvariant)] + private static partial Regex ManagedFileRegex(); + + [GeneratedRegex("[<>:\"/\\\\|?*\\x00-\\x1F]", RegexOptions.CultureInvariant)] + private static partial Regex InvalidFileNameRegex(); +} diff --git a/src/SuperBlazorComponents.DataGridExporter/Internal/StoredExportFile.cs b/src/SuperBlazorComponents.DataGridExporter/Internal/StoredExportFile.cs new file mode 100644 index 0000000..22cdb62 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/Internal/StoredExportFile.cs @@ -0,0 +1,3 @@ +namespace SuperBlazorComponents.DataGridExporter.Internal; + +internal sealed record StoredExportFile(string Path, string ContentType, string DownloadName); diff --git a/src/SuperBlazorComponents.DataGridExporter/Properties/AssemblyInfo.cs b/src/SuperBlazorComponents.DataGridExporter/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..356b2a7 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/Properties/AssemblyInfo.cs @@ -0,0 +1,3 @@ +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleTo("SuperBlazorComponents.Tests")] diff --git a/src/SuperBlazorComponents.DataGridExporter/StartupExtensions.cs b/src/SuperBlazorComponents.DataGridExporter/StartupExtensions.cs new file mode 100644 index 0000000..76a9cf2 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/StartupExtensions.cs @@ -0,0 +1,46 @@ +using Microsoft.AspNetCore.Builder; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Routing; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.DependencyInjection.Extensions; + +using SuperBlazorComponents.DataGridExporter.Internal; + +namespace SuperBlazorComponents.DataGridExporter; + +public static class StartupExtensions +{ + public static IServiceCollection AddSuperDataGridExporter( + this IServiceCollection services, + Action? configure = null) + { + var options = new SuperDataGridExporterOptions(); + configure?.Invoke(options); + options.Validate(); + + services.TryAddSingleton(TimeProvider.System); + services.AddSingleton(options); + services.AddSingleton(); + services.AddScoped(); + services.AddHostedService(); + return services; + } + + public static IEndpointConventionBuilder MapSuperDataGridExporter(this IEndpointRouteBuilder endpoints) + { + var options = endpoints.ServiceProvider.GetRequiredService(); + var pattern = $"{options.NormalizedDownloadRoute}/{{token}}/{{format}}"; + + return endpoints.MapGet(pattern, ( + string token, + string format, + string? fileName, + ExportFileStore store) => + { + var file = store.TryResolve(token, format, fileName); + return file is null + ? Results.NotFound() + : Results.File(file.Path, file.ContentType, file.DownloadName, enableRangeProcessing: true); + }).AllowAnonymous(); + } +} diff --git a/src/SuperBlazorComponents.DataGridExporter/SuperBlazorComponents.DataGridExporter.csproj b/src/SuperBlazorComponents.DataGridExporter/SuperBlazorComponents.DataGridExporter.csproj new file mode 100644 index 0000000..d21743f --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/SuperBlazorComponents.DataGridExporter.csproj @@ -0,0 +1,32 @@ + + + net10.0 + enable + enable + SuperBlazorComponents.DataGridExporter + SuperBlazorComponents.DataGridExporter + 2.0.7 + SuperBlazorComponents.DataGridExporter + SuperBlazorComponents DataGrid Exporter + Appliman + Appliman + CSV and Excel export components for SuperDataGrid, including virtualized data. + blazor;datagrid;csv;excel;export;dotnet + MIT + SUPERDATAGRIDEXPORTER.md + + + + + + + + + + + + + + + + diff --git a/src/SuperBlazorComponents.DataGridExporter/SuperDataGridExportFormat.cs b/src/SuperBlazorComponents.DataGridExporter/SuperDataGridExportFormat.cs new file mode 100644 index 0000000..49a279f --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/SuperDataGridExportFormat.cs @@ -0,0 +1,7 @@ +namespace SuperBlazorComponents.DataGridExporter; + +public enum SuperDataGridExportFormat +{ + Csv, + Excel +} diff --git a/src/SuperBlazorComponents.DataGridExporter/SuperDataGridExportResult.cs b/src/SuperBlazorComponents.DataGridExporter/SuperDataGridExportResult.cs new file mode 100644 index 0000000..00e5018 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/SuperDataGridExportResult.cs @@ -0,0 +1,3 @@ +namespace SuperBlazorComponents.DataGridExporter; + +public sealed record SuperDataGridExportResult(string FileName, string DownloadUrl, int RowCount); diff --git a/src/SuperBlazorComponents.DataGridExporter/SuperDataGridExportService.cs b/src/SuperBlazorComponents.DataGridExporter/SuperDataGridExportService.cs new file mode 100644 index 0000000..3a8d1e4 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/SuperDataGridExportService.cs @@ -0,0 +1,233 @@ +using System.Globalization; +using System.Runtime.CompilerServices; + +using ClosedXML.Excel; + +using CsvHelper; +using CsvHelper.Configuration; + +using SuperBlazorComponents.Components.SuperDataGrid; +using SuperBlazorComponents.DataGridExporter.Internal; + +namespace SuperBlazorComponents.DataGridExporter; + +internal sealed class SuperDataGridExportService : ISuperDataGridExportService +{ + private const int ExcelMaximumDataRows = 1_048_575; + + private readonly SuperDataGridExporterOptions _options; + private readonly ExportFileStore _fileStore; + + public SuperDataGridExportService( + SuperDataGridExporterOptions options, + ExportFileStore fileStore) + { + _options = options; + _fileStore = fileStore; + } + + public Task ExportAsync( + SuperDataGrid grid, + SuperDataGridExportFormat format, + string fileName, + CancellationToken cancellationToken = default) + { + ArgumentNullException.ThrowIfNull(grid); + if (grid.ItemsProvider is null) + throw new InvalidOperationException("The grid must define an ItemsProvider to export all rows."); + + var columns = ExportColumnResolver.Resolve(grid); + var query = grid.CaptureQuerySnapshot(); + var frozenColumnCount = grid.ColumnsCollection + .Where(column => column.IsCurrentlyVisible) + .Take(Math.Max(0, grid.FreezeLeftColumns)) + .Count(column => column.Exportable); + + return _fileStore.CreateAsync( + format, + fileName, + (path, token) => format == SuperDataGridExportFormat.Csv + ? WriteCsvAsync(path, grid.ItemsProvider, query, columns, token) + : WriteExcelAsync(path, grid.ItemsProvider, query, columns, frozenColumnCount, token), + cancellationToken); + } + + private async Task WriteCsvAsync( + string path, + GridItemsProvider provider, + SuperDataGridQuerySnapshot query, + IReadOnlyList> columns, + CancellationToken cancellationToken) + { + var configuration = new CsvConfiguration(_options.CsvCulture) + { + Delimiter = _options.CsvDelimiter, + HasHeaderRecord = true + }; + + await using var stream = new FileStream( + path, FileMode.CreateNew, FileAccess.Write, FileShare.None, 64 * 1024, useAsync: true); + await using var textWriter = new StreamWriter(stream, _options.CsvEncoding); + using var csv = new CsvWriter(textWriter, configuration); + + foreach (var column in columns) + csv.WriteField(column.Header); + await csv.NextRecordAsync(); + + var rowCount = 0; + await foreach (var item in ReadAllAsync(provider, query, cancellationToken)) + { + foreach (var column in columns) + { + var value = column.ValueAccessor(item); + var formatted = FormatCsvValue(value, column.FormatString); + csv.WriteField(ProtectCsvValue(value, formatted)); + } + + await csv.NextRecordAsync(); + rowCount++; + } + + await textWriter.FlushAsync(cancellationToken); + return rowCount; + } + + private async Task WriteExcelAsync( + string path, + GridItemsProvider provider, + SuperDataGridQuerySnapshot query, + IReadOnlyList> columns, + int frozenColumnCount, + CancellationToken cancellationToken) + { + using var workbook = new XLWorkbook(); + var worksheet = workbook.Worksheets.Add("Export"); + + for (var columnIndex = 0; columnIndex < columns.Count; columnIndex++) + { + var cell = worksheet.Cell(1, columnIndex + 1); + cell.SetValue(columns[columnIndex].Header); + cell.Style.Font.Bold = true; + } + + var rowCount = 0; + await foreach (var item in ReadAllAsync(provider, query, cancellationToken)) + { + cancellationToken.ThrowIfCancellationRequested(); + if (rowCount >= ExcelMaximumDataRows) + { + throw new InvalidOperationException( + $"Excel supports at most {ExcelMaximumDataRows:N0} data rows per worksheet."); + } + + var rowNumber = rowCount + 2; + for (var columnIndex = 0; columnIndex < columns.Count; columnIndex++) + SetExcelValue(worksheet.Cell(rowNumber, columnIndex + 1), columns[columnIndex].ValueAccessor(item)); + + rowCount++; + } + + worksheet.SheetView.FreezeRows(1); + if (frozenColumnCount > 0) + worksheet.SheetView.FreezeColumns(Math.Min(frozenColumnCount, columns.Count)); + worksheet.Range(1, 1, rowCount + 1, columns.Count).SetAutoFilter(); + worksheet.Columns(1, columns.Count).AdjustToContents( + 1, + Math.Min(rowCount + 1, 10_000)); + workbook.SaveAs(path); + return rowCount; + } + + private async IAsyncEnumerable ReadAllAsync( + GridItemsProvider provider, + SuperDataGridQuerySnapshot query, + [EnumeratorCancellation] CancellationToken cancellationToken) + { + var startIndex = 0; + int? expectedTotal = null; + var filters = query.Filters.Select(filter => filter.ToFilterInfo()).ToArray(); + + while (expectedTotal is null || startIndex < expectedTotal.Value) + { + cancellationToken.ThrowIfCancellationRequested(); + var request = new GridItemsProviderRequest( + startIndex, + _options.BatchSize, + query.SortColumn, + query.SortDirection, + filters, + cancellationToken); + var result = await provider(request); + expectedTotal ??= Math.Max(0, result.TotalItemCount); + var items = result.Items.Take(_options.BatchSize).ToArray(); + + if (items.Length == 0) + { + if (startIndex < expectedTotal.Value) + { + throw new InvalidOperationException( + $"The grid ItemsProvider returned no rows at index {startIndex} before the announced total of {expectedTotal.Value} rows."); + } + yield break; + } + + foreach (var item in items) + yield return item; + + startIndex += items.Length; + } + } + + private string FormatCsvValue(object? value, string? formatString) + { + if (value is null) + return string.Empty; + + if (!string.IsNullOrWhiteSpace(formatString)) + return string.Format(_options.CsvCulture, formatString, value); + + return value switch + { + DateTime dateTime => dateTime.ToString("O", _options.CsvCulture), + DateTimeOffset dateTimeOffset => dateTimeOffset.ToString("O", _options.CsvCulture), + IFormattable formattable => formattable.ToString(null, _options.CsvCulture), + _ => value.ToString() ?? string.Empty + }; + } + + private string ProtectCsvValue(object? source, string formatted) + { + if (!_options.ProtectCsvFormulas || source is not string || string.IsNullOrEmpty(formatted)) + return formatted; + + var firstMeaningful = formatted.FirstOrDefault(character => !char.IsWhiteSpace(character)); + return firstMeaningful is '=' or '+' or '-' or '@' ? "'" + formatted : formatted; + } + + private static void SetExcelValue(IXLCell cell, object? value) + { + switch (value) + { + case null: cell.Clear(XLClearOptions.Contents); break; + case string text: cell.SetValue(text); break; + case bool boolean: cell.SetValue(boolean); break; + case byte number: cell.SetValue(number); break; + case sbyte number: cell.SetValue(number); break; + case short number: cell.SetValue(number); break; + case ushort number: cell.SetValue(number); break; + case int number: cell.SetValue(number); break; + case uint number: cell.SetValue(number); break; + case long number: cell.SetValue(number); break; + case ulong number when number <= long.MaxValue: cell.SetValue((long)number); break; + case float number: cell.SetValue(number); break; + case double number: cell.SetValue(number); break; + case decimal number: cell.SetValue(number); break; + case DateTime dateTime: cell.SetValue(dateTime); break; + case DateTimeOffset dateTimeOffset: cell.SetValue(dateTimeOffset.DateTime); break; + case DateOnly date: cell.SetValue(date.ToDateTime(TimeOnly.MinValue)); break; + case TimeSpan timeSpan: cell.SetValue(timeSpan); break; + case Enum enumValue: cell.SetValue(enumValue.ToString()); break; + default: cell.SetValue(Convert.ToString(value, CultureInfo.InvariantCulture) ?? string.Empty); break; + } + } +} diff --git a/src/SuperBlazorComponents.DataGridExporter/SuperDataGridExporterOptions.cs b/src/SuperBlazorComponents.DataGridExporter/SuperDataGridExporterOptions.cs new file mode 100644 index 0000000..e4f2509 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/SuperDataGridExporterOptions.cs @@ -0,0 +1,37 @@ +using System.Globalization; +using System.Text; + +namespace SuperBlazorComponents.DataGridExporter; + +public sealed class SuperDataGridExporterOptions +{ + public string TemporaryDirectory { get; set; } = Path.Combine( + Path.GetTempPath(), "SuperBlazorComponents.DataGridExporter"); + + public TimeSpan FileLifetime { get; set; } = TimeSpan.FromHours(24); + public TimeSpan CleanupInterval { get; set; } = TimeSpan.FromDays(1); + public string DownloadRoute { get; set; } = "/_super-datagrid-export"; + public int BatchSize { get; set; } = 200; + public string CsvDelimiter { get; set; } = ","; + public Encoding CsvEncoding { get; set; } = new UTF8Encoding(false); + public CultureInfo CsvCulture { get; set; } = CultureInfo.InvariantCulture; + public bool ProtectCsvFormulas { get; set; } = true; + + internal void Validate() + { + if (string.IsNullOrWhiteSpace(TemporaryDirectory)) + throw new InvalidOperationException("TemporaryDirectory must be configured."); + if (FileLifetime <= TimeSpan.Zero) + throw new InvalidOperationException("FileLifetime must be greater than zero."); + if (CleanupInterval <= TimeSpan.Zero) + throw new InvalidOperationException("CleanupInterval must be greater than zero."); + if (BatchSize <= 0) + throw new InvalidOperationException("BatchSize must be greater than zero."); + if (string.IsNullOrEmpty(CsvDelimiter)) + throw new InvalidOperationException("CsvDelimiter must not be empty."); + if (string.IsNullOrWhiteSpace(DownloadRoute)) + throw new InvalidOperationException("DownloadRoute must be configured."); + } + + internal string NormalizedDownloadRoute => "/" + DownloadRoute.Trim('/'); +} diff --git a/src/SuperBlazorComponents.DataGridExporter/_Imports.razor b/src/SuperBlazorComponents.DataGridExporter/_Imports.razor new file mode 100644 index 0000000..ab43a78 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/_Imports.razor @@ -0,0 +1,7 @@ +@using Microsoft.AspNetCore.Components +@using Microsoft.AspNetCore.Components.Web +@using SuperBlazorComponents.Components +@using SuperBlazorComponents.Components.Buttons +@using SuperBlazorComponents.Components.SuperDataGrid +@using SuperBlazorComponents.DataGridExporter +@using SuperBlazorComponents.Services diff --git a/src/SuperBlazorComponents.DataGridExporter/wwwroot/icons/microsoft-excel.svg b/src/SuperBlazorComponents.DataGridExporter/wwwroot/icons/microsoft-excel.svg new file mode 100644 index 0000000..5e76853 --- /dev/null +++ b/src/SuperBlazorComponents.DataGridExporter/wwwroot/icons/microsoft-excel.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/SuperBlazorComponents/Components/Buttons/SuperButton.razor.cs b/src/SuperBlazorComponents/Components/Buttons/SuperButton.razor.cs index 0b7c596..1692b3b 100644 --- a/src/SuperBlazorComponents/Components/Buttons/SuperButton.razor.cs +++ b/src/SuperBlazorComponents/Components/Buttons/SuperButton.razor.cs @@ -31,6 +31,13 @@ public partial class SuperButton : IAsyncDisposable [Parameter] public string? Icon { get; set; } + /// + /// Displays only the leading icon or image while retaining + /// as the accessible label and tooltip. + /// + [Parameter] + public bool IconOnly { get; set; } + /// /// Url of the image displayed in place of the icon when provided. /// @@ -77,7 +84,7 @@ public partial class SuperButton : IAsyncDisposable private bool HasLeadingVisual => !string.IsNullOrWhiteSpace(Image) || !string.IsNullOrWhiteSpace(Icon); - private bool UseIconOnly => IsCollapsedOrHidden && HasLeadingVisual; + private bool UseIconOnly => HasLeadingVisual && (IconOnly || IsCollapsedOrHidden); private string ButtonTypeAttributeValue => ButtonType switch { diff --git a/src/SuperBlazorComponents/Components/SuperDataGrid/DataGridColumn.razor b/src/SuperBlazorComponents/Components/SuperDataGrid/DataGridColumn.razor index 5ec14f8..14fcaed 100644 --- a/src/SuperBlazorComponents/Components/SuperDataGrid/DataGridColumn.razor +++ b/src/SuperBlazorComponents/Components/SuperDataGrid/DataGridColumn.razor @@ -131,6 +131,25 @@ [Parameter] public RenderFragment? HeaderTemplate { get; set; } + /// + /// Optional plain-text header used by data exporters. When omitted, exporters can + /// fall back to , and . + /// + [Parameter] + public string? ExportHeader { get; set; } + + /// + /// Optional value selector used by data exporters for template-only or computed columns. + /// + [Parameter] + public Func? ExportValue { get; set; } + + /// + /// Gets or sets whether this column is included by data exporters. + /// + [Parameter] + public bool Exportable { get; set; } = true; + /// /// Custom template for rendering the footer. /// @@ -166,6 +185,11 @@ /// internal bool CurrentVisible => _currentVisible; + /// + /// Gets the effective visibility after runtime grid settings have been applied. + /// + public bool IsCurrentlyVisible => CurrentVisible; + protected override void OnInitialized() { _defaultWidth = Width; diff --git a/src/SuperBlazorComponents/Components/SuperDataGrid/SuperDataGrid.razor b/src/SuperBlazorComponents/Components/SuperDataGrid/SuperDataGrid.razor index 99f2f4b..ad625c2 100644 --- a/src/SuperBlazorComponents/Components/SuperDataGrid/SuperDataGrid.razor +++ b/src/SuperBlazorComponents/Components/SuperDataGrid/SuperDataGrid.razor @@ -25,7 +25,7 @@
} -
+
@if (HeaderTemplate is not null) { @HeaderTemplate diff --git a/src/SuperBlazorComponents/Components/SuperDataGrid/SuperDataGrid.razor.cs b/src/SuperBlazorComponents/Components/SuperDataGrid/SuperDataGrid.razor.cs index b8f5026..691d4a8 100644 --- a/src/SuperBlazorComponents/Components/SuperDataGrid/SuperDataGrid.razor.cs +++ b/src/SuperBlazorComponents/Components/SuperDataGrid/SuperDataGrid.razor.cs @@ -5,6 +5,7 @@ using Microsoft.AspNetCore.Components.Web.Virtualization; using Microsoft.Extensions.Logging; using Microsoft.JSInterop; +using System.Collections.Immutable; using System.Runtime.CompilerServices; namespace SuperBlazorComponents.Components.SuperDataGrid; @@ -358,6 +359,32 @@ public partial class SuperDataGrid : IAsyncDisposable /// public IReadOnlyList> ColumnsCollection => _columns; + /// + /// Captures the current sorting and filtering state so a long-running operation can + /// consistently query the same grid view. + /// + public SuperDataGridQuerySnapshot CaptureQuerySnapshot() + { + var filters = _filterInfoList.Select(CreateFilterSnapshot).ToImmutableArray(); + return new SuperDataGridQuerySnapshot(_sortColumn, _sortDirection, filters); + } + + private static SuperDataGridFilterSnapshot CreateFilterSnapshot(SuperDataGridFilterInfo source) + { + return new SuperDataGridFilterSnapshot( + source.PropertyName, + source.PropertyValue, + source.SelectedValues.ToImmutableArray(), + source.StartDate, + source.EndDate, + source.FromNumericValue, + source.ToNumericValue, + source.PeriodName, + source.PeriodPreset, + source.PropertyType, + source.Operator); + } + public string FooterText { get diff --git a/src/SuperBlazorComponents/Components/SuperDataGrid/SuperDataGridQuerySnapshot.cs b/src/SuperBlazorComponents/Components/SuperDataGrid/SuperDataGridQuerySnapshot.cs new file mode 100644 index 0000000..55883e0 --- /dev/null +++ b/src/SuperBlazorComponents/Components/SuperDataGrid/SuperDataGridQuerySnapshot.cs @@ -0,0 +1,45 @@ +using System.Collections.Immutable; + +using SuperBlazorComponents.Components.SuperDateRange; + +namespace SuperBlazorComponents.Components.SuperDataGrid; + +/// +/// Immutable snapshot of the query currently displayed by a . +/// +public sealed record SuperDataGridQuerySnapshot( + string? SortColumn, + SortDirection SortDirection, + ImmutableArray Filters); + +/// +/// Immutable representation of one active grid filter. +/// +public sealed record SuperDataGridFilterSnapshot( + string PropertyName, + string? PropertyValue, + ImmutableArray SelectedValues, + DateTimeOffset? StartDate, + DateTimeOffset? EndDate, + long? FromNumericValue, + long? ToNumericValue, + string? PeriodName, + SuperDateRangePreset? PeriodPreset, + Type PropertyType, + SuperDataGridFilterOperator Operator) +{ + public SuperDataGridFilterInfo ToFilterInfo() => new() + { + PropertyName = PropertyName, + PropertyValue = PropertyValue, + SelectedValues = SelectedValues, + StartDate = StartDate, + EndDate = EndDate, + FromNumericValue = FromNumericValue, + ToNumericValue = ToNumericValue, + PeriodName = PeriodName, + PeriodPreset = PeriodPreset, + PropertyType = PropertyType, + Operator = Operator + }; +} diff --git a/src/SuperBlazorComponents/SuperBlazorComponents.csproj b/src/SuperBlazorComponents/SuperBlazorComponents.csproj index 58c3d59..316c162 100644 --- a/src/SuperBlazorComponents/SuperBlazorComponents.csproj +++ b/src/SuperBlazorComponents/SuperBlazorComponents.csproj @@ -4,7 +4,7 @@ net10.0 enable enable - 2.0.6 + 2.0.7 false SuperBlazorComponents SuperBlazorComponents diff --git a/tests/SuperBlazorComponents.Tests/SuperBlazorComponents.Tests.csproj b/tests/SuperBlazorComponents.Tests/SuperBlazorComponents.Tests.csproj index a873e09..2ee4ab1 100644 --- a/tests/SuperBlazorComponents.Tests/SuperBlazorComponents.Tests.csproj +++ b/tests/SuperBlazorComponents.Tests/SuperBlazorComponents.Tests.csproj @@ -8,15 +8,16 @@ - - - - - + + + + + + diff --git a/tests/SuperBlazorComponents.Tests/SuperDataGridExporterTests.cs b/tests/SuperBlazorComponents.Tests/SuperDataGridExporterTests.cs new file mode 100644 index 0000000..a367be3 --- /dev/null +++ b/tests/SuperBlazorComponents.Tests/SuperDataGridExporterTests.cs @@ -0,0 +1,359 @@ +using System.Globalization; +using System.Text; + +using Bunit; + +using ClosedXML.Excel; + +using Microsoft.AspNetCore.Components; +using Microsoft.AspNetCore.Components.Rendering; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Logging.Abstractions; +using Microsoft.VisualStudio.TestTools.UnitTesting; + +using SuperBlazorComponents.Components.SuperDataGrid; +using SuperBlazorComponents.DataGridExporter; +using SuperBlazorComponents.DataGridExporter.Components; +using SuperBlazorComponents.DataGridExporter.Internal; + +namespace SuperBlazorComponents.Tests; + +#pragma warning disable BL0005 // Tests intentionally construct component instances to exercise the exporter directly. + +[TestClass] +public sealed class SuperDataGridExporterTests +{ + private string _temporaryDirectory = null!; + private readonly List _contexts = []; + private readonly Dictionary, IRenderedComponent>> _renderedGrids = []; + + [TestInitialize] + public void Setup() + { + _temporaryDirectory = Path.Combine( + Path.GetTempPath(), + "SuperBlazorComponents.Tests", + Guid.NewGuid().ToString("N")); + } + + [TestCleanup] + public void Cleanup() + { + foreach (var context in _contexts) + context.Dispose(); + _contexts.Clear(); + _renderedGrids.Clear(); + + if (Directory.Exists(_temporaryDirectory)) + Directory.Delete(_temporaryDirectory, recursive: true); + } + + [TestMethod] + public void ColumnResolver_UsesConfiguredPriorityAndExportValue() + { + var grid = CreateGrid((request) => + ValueTask.FromResult(GridItemsProviderResult.Empty())); + var column = AddColumn(grid, new TestColumn + { + Property = nameof(TestRow.Name), + Title = "Title", + ExportHeader = "Explicit", + HeaderTemplate = builder => builder.AddContent(0, "Template"), + ExportValue = row => row.Name.ToUpperInvariant() + }); + AddColumn(grid, new TestColumn + { + Property = nameof(TestRow.Id), + Title = "Hidden", + Visible = false + }); + + var resolved = ExportColumnResolver.Resolve(grid); + + Assert.HasCount(1, resolved); + Assert.AreEqual("Explicit", resolved[0].Header); + Assert.AreEqual("ALPHA", resolved[0].ValueAccessor(new TestRow(1, "Alpha", 12.5m, true))); + Assert.IsTrue(column.IsCurrentlyVisible); + } + + [TestMethod] + public void ColumnResolver_ExtractsSimpleHeaderTemplateAndRejectsMissingValue() + { + var grid = CreateGrid((request) => + ValueTask.FromResult(GridItemsProviderResult.Empty())); + AddColumn(grid, new TestColumn + { + HeaderTemplate = builder => + { + builder.OpenElement(0, "strong"); + builder.AddContent(1, "Custom header"); + builder.CloseElement(); + } + }); + + var exception = Assert.ThrowsExactly( + () => ExportColumnResolver.Resolve(grid)); + + StringAssert.Contains(exception.Message, "Custom header"); + StringAssert.Contains(exception.Message, "ExportValue"); + } + + [TestMethod] + public async Task CsvExport_ReadsEveryBatchAndProtectsFormulaStrings() + { + var rows = Enumerable.Range(1, 5) + .Select(index => new TestRow(index, index == 2 ? "=SUM(A1:A2)" : $"Name {index}", index + .25m, index % 2 == 0)) + .ToArray(); + var starts = new List(); + var grid = CreateGrid(request => + { + starts.Add(request.StartIndex); + var page = rows.Skip(request.StartIndex).Take(request.Count ?? rows.Length).ToArray(); + return ValueTask.FromResult(GridItemsProviderResult.From(page, rows.Length)); + }); + AddColumn(grid, new TestColumn { Property = nameof(TestRow.Name), Title = "Name" }); + AddColumn(grid, new TestColumn { Property = nameof(TestRow.Amount), Title = "Amount", FormatString = "{0:F2}" }); + starts.Clear(); + + var service = CreateService(batchSize: 2); + var result = await service.ExportAsync(grid, SuperDataGridExportFormat.Csv, "../unsafe:report.csv"); + var file = Directory.GetFiles(_temporaryDirectory, "*.csv").Single(); + var content = await File.ReadAllTextAsync(file, Encoding.UTF8); + + Assert.AreEqual(5, result.RowCount); + Assert.AreEqual("unsafe_report.csv", result.FileName); + CollectionAssert.AreEqual(new[] { 0, 2, 4 }, starts); + StringAssert.StartsWith(content, "Name,Amount"); + StringAssert.Contains(content, "'=SUM(A1:A2)"); + StringAssert.Contains(content, "1.25"); + StringAssert.Matches(result.DownloadUrl, new System.Text.RegularExpressions.Regex( + @"/[a-f0-9]{64}/csv\?fileName=")); + } + + [TestMethod] + public async Task ExcelExport_PreservesNativeCellTypes() + { + var rows = new[] { new TestRow(1, "Alpha", 12.5m, true) }; + var grid = CreateGrid(request => ValueTask.FromResult( + GridItemsProviderResult.From(rows.Skip(request.StartIndex), rows.Length))); + grid.FreezeLeftColumns = 2; + AddColumn(grid, new TestColumn { Property = nameof(TestRow.Id), Title = "ID" }); + AddColumn(grid, new TestColumn { Property = nameof(TestRow.Amount), Title = "Amount" }); + AddColumn(grid, new TestColumn { Property = nameof(TestRow.Enabled), Title = "Enabled" }); + + var result = await CreateService().ExportAsync( + grid, SuperDataGridExportFormat.Excel, "typed"); + var file = Directory.GetFiles(_temporaryDirectory, "*.xlsx").Single(); + using var workbook = new XLWorkbook(file); + var worksheet = workbook.Worksheet("Export"); + + Assert.AreEqual(1, result.RowCount); + Assert.AreEqual(XLDataType.Number, worksheet.Cell(2, 1).DataType); + Assert.AreEqual(XLDataType.Number, worksheet.Cell(2, 2).DataType); + Assert.AreEqual(XLDataType.Boolean, worksheet.Cell(2, 3).DataType); + Assert.IsTrue(worksheet.SheetView.SplitRow > 0); + Assert.AreEqual(2, worksheet.SheetView.SplitColumn); + } + + [TestMethod] + public async Task Export_FailsWhenProviderStopsBeforeAnnouncedTotal() + { + var grid = CreateGrid(request => ValueTask.FromResult( + request.StartIndex == 0 + ? GridItemsProviderResult.From( + new[] { new TestRow(1, "One", 1, true) }, 2) + : GridItemsProviderResult.From([], 2))); + AddColumn(grid, new TestColumn { Property = nameof(TestRow.Id), Title = "ID" }); + + var exception = await Assert.ThrowsExactlyAsync( + () => CreateService(batchSize: 1).ExportAsync( + grid, SuperDataGridExportFormat.Csv, "broken")); + + StringAssert.Contains(exception.Message, "announced total"); + Assert.HasCount(0, Directory.Exists(_temporaryDirectory) + ? Directory.GetFiles(_temporaryDirectory) + : []); + } + + [TestMethod] + public async Task Export_HonorsCancellationWithoutPublishingAFile() + { + var grid = CreateGrid(request => ValueTask.FromResult( + GridItemsProviderResult.From( + new[] { new TestRow(1, "One", 1, true) }, 1))); + AddColumn(grid, new TestColumn { Property = nameof(TestRow.Id), Title = "ID" }); + using var cancellation = new CancellationTokenSource(); + cancellation.Cancel(); + + await Assert.ThrowsExactlyAsync( + () => CreateService().ExportAsync( + grid, + SuperDataGridExportFormat.Csv, + "cancelled", + cancellation.Token)); + + Assert.HasCount(0, Directory.Exists(_temporaryDirectory) + ? Directory.GetFiles(_temporaryDirectory) + : []); + } + + [TestMethod] + public async Task FileStore_RejectsExpiredTokenAndCleansOldPartialFiles() + { + var clock = new ManualTimeProvider(new DateTimeOffset(2026, 8, 29, 10, 0, 0, TimeSpan.Zero)); + var options = CreateOptions(); + options.FileLifetime = TimeSpan.FromHours(1); + var store = new ExportFileStore(options, clock, NullLogger.Instance); + var result = await store.CreateAsync( + SuperDataGridExportFormat.Csv, + "test", + async (path, cancellationToken) => + { + await File.WriteAllTextAsync(path, "value", cancellationToken); + return 1; + }, + CancellationToken.None); + var token = result.DownloadUrl.Split('/', StringSplitOptions.RemoveEmptyEntries)[1]; + var partial = Path.Combine(_temporaryDirectory, $"{new string('a', 64)}.partial.csv"); + await File.WriteAllTextAsync(partial, "partial"); + File.SetLastWriteTimeUtc(partial, clock.GetUtcNow().UtcDateTime - TimeSpan.FromHours(2)); + + clock.Advance(TimeSpan.FromHours(2)); + Assert.IsNull(store.TryResolve(token, "csv", "test.csv")); + await store.CleanupExpiredAsync(CancellationToken.None); + + Assert.IsFalse(File.Exists(partial)); + Assert.HasCount(0, Directory.GetFiles(_temporaryDirectory)); + } + + [TestMethod] + public void ExportButtons_RenderSuperButtonIconsAndDisableWithoutGrid() + { + using var context = new BunitContext(); + context.JSInterop.Mode = JSRuntimeMode.Loose; + context.Services.AddSuperComponents(); + + var csv = context.Render>(); + var excel = context.Render>(); + + Assert.HasCount(1, csv.FindAll(".fa-file-csv")); + var excelLogo = excel.Find("img.super-button-image"); + Assert.AreEqual( + "_content/SuperBlazorComponents.DataGridExporter/icons/microsoft-excel.svg", + excelLogo.GetAttribute("src")); + Assert.IsTrue(csv.Find("button").HasAttribute("disabled")); + Assert.IsTrue(excel.Find("button").HasAttribute("disabled")); + } + + [TestMethod] + public void ExportButtons_IconOnlyHidesTextAndKeepsAccessibleLabel() + { + using var context = new BunitContext(); + context.JSInterop.Mode = JSRuntimeMode.Loose; + context.Services.AddSuperComponents(); + + var csv = context.Render>(parameters => parameters + .Add(component => component.IconOnly, true)); + var button = csv.Find("button"); + + Assert.AreEqual("Exporter CSV", button.GetAttribute("title")); + Assert.AreEqual("Exporter CSV", button.GetAttribute("aria-label")); + Assert.IsFalse(button.TextContent.Contains("Exporter CSV", StringComparison.Ordinal)); + Assert.HasCount(1, button.QuerySelectorAll(".fa-file-csv")); + } + + [TestMethod] + public void ExportDialog_AfterGenerationDisplaysDownloadLink() + { + using var context = new BunitContext(); + context.JSInterop.Mode = JSRuntimeMode.Loose; + context.Services.AddSuperComponents(); + context.Services.AddSingleton(new StubExportService()); + var grid = new SuperDataGrid + { + ItemsProvider = request => ValueTask.FromResult(GridItemsProviderResult.Empty()) + }; + + var dialog = context.Render>(parameters => parameters + .Add(component => component.Grid, grid) + .Add(component => component.Format, SuperDataGridExportFormat.Csv) + .Add(component => component.DefaultFileName, "products")); + + dialog.Find("button.btn-primary").Click(); + + dialog.WaitForAssertion(() => + { + var link = dialog.Find("a.btn-primary"); + Assert.AreEqual("/exports/token/csv", link.GetAttribute("href")); + StringAssert.Contains(dialog.Markup, "products.csv"); + }); + } + + private SuperDataGridExportService CreateService(int batchSize = 200) + { + var options = CreateOptions(); + options.BatchSize = batchSize; + var store = new ExportFileStore(options, TimeProvider.System, NullLogger.Instance); + return new SuperDataGridExportService(options, store); + } + + private SuperDataGridExporterOptions CreateOptions() => new() + { + TemporaryDirectory = _temporaryDirectory, + FileLifetime = TimeSpan.FromHours(24), + CleanupInterval = TimeSpan.FromDays(1), + CsvCulture = CultureInfo.InvariantCulture + }; + + private SuperDataGrid CreateGrid(GridItemsProvider provider) + { + var context = new BunitContext(); + context.JSInterop.Mode = JSRuntimeMode.Loose; + context.Services.AddLogging(); + context.Services.AddSuperComponents(); + _contexts.Add(context); + + var renderedGrid = context.Render>(parameters => parameters + .Add(component => component.ItemsProvider, provider)); + _renderedGrids.Add(renderedGrid.Instance, renderedGrid); + return renderedGrid.Instance; + } + + private TestColumn AddColumn(SuperDataGrid grid, TestColumn column) + { + column.Initialize(); + _renderedGrids[grid].InvokeAsync( + () => grid.AddColumn(grid.ColumnsCollection.Count, column)).GetAwaiter().GetResult(); + return column; + } + + private sealed class TestColumn : DataGridColumn + { + public void Initialize() + { + base.OnInitialized(); + base.OnParametersSet(); + } + } + + private sealed record TestRow(int Id, string Name, decimal Amount, bool Enabled); + + private sealed class StubExportService : ISuperDataGridExportService + { + public Task ExportAsync( + SuperDataGrid grid, + SuperDataGridExportFormat format, + string fileName, + CancellationToken cancellationToken = default) + => Task.FromResult(new SuperDataGridExportResult( + "products.csv", "/exports/token/csv", 42)); + } + + private sealed class ManualTimeProvider(DateTimeOffset utcNow) : TimeProvider + { + private DateTimeOffset _utcNow = utcNow; + public override DateTimeOffset GetUtcNow() => _utcNow; + public void Advance(TimeSpan duration) => _utcNow += duration; + } +} +#pragma warning restore BL0005