From e2bec710e0dc06b63a1b5ecc82c1cac3d78a888d Mon Sep 17 00:00:00 2001 From: TekH Date: Tue, 21 Jul 2026 14:38:22 +0200 Subject: [PATCH] feat(stamp): Add Domain value objects for stamp operations - Add StampType enum (Text, Image, Predefined) - Add PredefinedStampType enum (CONFIDENTIAL, APPROVED, DRAFT, etc.) - Add StampPlacement enum (Foreground, Background) - All enums in DocumentOperator.Domain namespace --- .../ValueObjects/PredefinedStampType.cs | 32 +++++++++++++++++++ .../Models/ValueObjects/StampPlacement.cs | 17 ++++++++++ .../Models/ValueObjects/StampType.cs | 22 +++++++++++++ 3 files changed, 71 insertions(+) create mode 100644 DocumentOperator.Domain/Models/ValueObjects/PredefinedStampType.cs create mode 100644 DocumentOperator.Domain/Models/ValueObjects/StampPlacement.cs create mode 100644 DocumentOperator.Domain/Models/ValueObjects/StampType.cs diff --git a/DocumentOperator.Domain/Models/ValueObjects/PredefinedStampType.cs b/DocumentOperator.Domain/Models/ValueObjects/PredefinedStampType.cs new file mode 100644 index 0000000..e564fcd --- /dev/null +++ b/DocumentOperator.Domain/Models/ValueObjects/PredefinedStampType.cs @@ -0,0 +1,32 @@ +namespace DocumentOperator.Domain.Models.ValueObjects; + +/// +/// Predefined stamp types with standard text and styling. +/// +public enum PredefinedStampType +{ + /// + /// CONFIDENTIAL stamp (red, bold). + /// + Confidential, + + /// + /// APPROVED stamp (green, bold). + /// + Approved, + + /// + /// DRAFT stamp (gray, italic). + /// + Draft, + + /// + /// VOID stamp (red, strikethrough effect). + /// + Void, + + /// + /// FOR REVIEW stamp (orange, bold). + /// + ForReview +} diff --git a/DocumentOperator.Domain/Models/ValueObjects/StampPlacement.cs b/DocumentOperator.Domain/Models/ValueObjects/StampPlacement.cs new file mode 100644 index 0000000..cc1af26 --- /dev/null +++ b/DocumentOperator.Domain/Models/ValueObjects/StampPlacement.cs @@ -0,0 +1,17 @@ +namespace DocumentOperator.Domain.Models.ValueObjects; + +/// +/// Specifies whether the stamp should appear in the foreground (on top of content) or background (behind content). +/// +public enum StampPlacement +{ + /// + /// Stamp appears on top of existing page content. + /// + Foreground, + + /// + /// Stamp appears behind existing page content (watermark effect). + /// + Background +} diff --git a/DocumentOperator.Domain/Models/ValueObjects/StampType.cs b/DocumentOperator.Domain/Models/ValueObjects/StampType.cs new file mode 100644 index 0000000..e54d924 --- /dev/null +++ b/DocumentOperator.Domain/Models/ValueObjects/StampType.cs @@ -0,0 +1,22 @@ +namespace DocumentOperator.Domain.Models.ValueObjects; + +/// +/// Specifies the type of stamp to add to a PDF document. +/// +public enum StampType +{ + /// + /// Text-based stamp with custom text, font, and color. + /// + Text, + + /// + /// Image-based stamp (PNG/JPEG overlay). + /// + Image, + + /// + /// Predefined stamp with standard text (e.g., CONFIDENTIAL, APPROVED). + /// + Predefined +}