Refactored `PdfSignOptionsDto` and `PdfVisualSignatureOptionsDto`: - Converted both to immutable `record` types with non-nullable properties. - Added XML documentation comments for properties and parameters. Simplified `PdfDigitalSignatureService`: - Updated `SignPdfAsync` to enforce non-nullable `PdfSignOptionsDto`. - Removed redundant null checks and inlined `CreateSignatureBounds`. - Simplified signature appearance and image data logic. - Refactored `TryGetKeySize` to use `bool` with `out` parameter. General improvements: - Enhanced code readability and maintainability. - Reduced nullable references and enforced stricter type safety.
55 lines
1.1 KiB
C#
55 lines
1.1 KiB
C#
using EnvelopeGenerator.Application.Common.Enums;
|
|
|
|
namespace EnvelopeGenerator.Application.Common.Dto;
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public sealed record PdfSignOptionsDto
|
|
{
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public string UUID { get; set; } = null!;
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public string Name { get; set; } = null!;
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public string Reason { get; set; } = null!;
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public string Location { get; set; } = null!;
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public string Email { get; set; } = null!;
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public string Phone { get; set; } = null!;
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public string ApplicationName { get; set; } = null!;
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public PdfSignatureCertificationLevel CertificationLevel { get; set; }
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public PdfVisualSignatureOptionsDto VisualSignature { get; set; } = null!;
|
|
}
|