Introduced new models (`SignatureDto`, `SignatureCaptureDto`, `EnvelopeReceiverDto`) to support a signature-based workflow. Added services for handling API interactions (`SignatureService`, `AuthService`, `DocumentService`, `EnvelopeReceiverService`, `SignatureCacheService`). Enhanced configuration with `ApiOptions` and `PdfViewerOptions`. Integrated DevExpress features with custom data connection providers, in-memory report storage, and font loading utilities. Marked `AnnotationDto` and `AnnotationService` as `[Obsolete]` in favor of newer implementations. Added detailed documentation for coordinate systems, unit conversions, and usage scenarios.
22 lines
762 B
C#
22 lines
762 B
C#
using DevExpress.XtraReports.UI;
|
|
using DevExpress.XtraReports.Services;
|
|
using EnvelopeGenerator.WebUI.Client.PredefinedReports;
|
|
|
|
namespace EnvelopeGenerator.WebUI.Client.Services
|
|
{
|
|
public class CustomReportProvider : IReportProviderAsync {
|
|
private readonly InMemoryReportStorageWebExtension reportStorage;
|
|
|
|
public CustomReportProvider(InMemoryReportStorageWebExtension reportStorage) {
|
|
this.reportStorage = reportStorage;
|
|
}
|
|
|
|
public Task<XtraReport> GetReportAsync(string id, ReportProviderContext context) {
|
|
if(reportStorage.TryGetReport(id, out var savedReport))
|
|
return Task.FromResult(savedReport);
|
|
|
|
return Task.FromResult(ReportsFactory.GetReport(id));
|
|
}
|
|
}
|
|
}
|