AugusteVN.Modules.Sponsorships._Shared
1.0.7
dotnet add package AugusteVN.Modules.Sponsorships._Shared --version 1.0.7
NuGet\Install-Package AugusteVN.Modules.Sponsorships._Shared -Version 1.0.7
<PackageReference Include="AugusteVN.Modules.Sponsorships._Shared" Version="1.0.7" />
<PackageVersion Include="AugusteVN.Modules.Sponsorships._Shared" Version="1.0.7" />
<PackageReference Include="AugusteVN.Modules.Sponsorships._Shared" />
paket add AugusteVN.Modules.Sponsorships._Shared --version 1.0.7
#r "nuget: AugusteVN.Modules.Sponsorships._Shared, 1.0.7"
#:package AugusteVN.Modules.Sponsorships._Shared@1.0.7
#addin nuget:?package=AugusteVN.Modules.Sponsorships._Shared&version=1.0.7
#tool nuget:?package=AugusteVN.Modules.Sponsorships._Shared&version=1.0.7
AugusteVN.Modules.Sponsorships._Shared
Shared contracts, DTOs, permissions, and FluentValidation validators for the Sponsorships module.
Part of the AugusteVN Modules collection.
Overview
This package contains the shared primitives consumed by all Sponsorships layer projects (Api, Features, Database, _Shared.Spa). It defines the API route constants, the scoped-permission enum, request/response DTOs, and request-level FluentValidation validators.
Contents
Permissions
Simple enum for Sponsorships-scoped authorization (not a flags enum):
| Value | Name | Description |
|---|---|---|
0 |
None |
No permissions |
1 |
ManageSponsorships |
Full CRUD access to sponsor segments |
~None |
All |
All permissions (bitwise complement of None) |
A PermissionsProvider helper exposes PermissionsList and PermissionsDict for claims registration at startup.
ApiRoutes
Static class defining route constants used across the API and client layers:
public static class ApiRoutes
{
public const string SponsorSegments = nameof(SponsorSegments);
}
SponsorSegmentResponse
Primary response DTO extending ReviewableResponse from the AugusteVN._Shared.Contracts.Reviewable package:
| Property | Type | Description |
|---|---|---|
Id |
Guid |
Unique sponsor segment identifier |
Email |
string |
Sponsor contact email |
BrandName |
string |
Sponsor brand name |
BodyAsMarkdown |
string |
Segment body in Markdown format |
BodyAsHtml |
string? |
Segment body rendered as HTML |
CreatedAt |
DateTime |
Creation timestamp |
EmailJobId |
Guid? |
Associated email campaign job ID |
BlogPostSlug |
string? |
Associated blog post slug for content targeting |
PaymentRefId |
Guid |
Payment reference linking to the Payments module |
IsFallback |
bool |
Whether this segment is used when no paid match exists |
Inherits review state properties (IsApproved, IsDeclined, IsCancelled) from ReviewableResponse.
Request DTOs
CreateSponsorSegmentRequest
Extends TrackingRequest for user/session tracking:
| Property | Type | Description |
|---|---|---|
Email |
string |
Sponsor's email address |
BrandName |
string |
Sponsor's brand name |
BodyAsMarkdown |
string |
Segment body in Markdown |
BodyAsHtml |
string |
Segment body in HTML |
PaymentRefId |
Guid |
Associated payment reference ID |
UpdateSponsorSegmentRequest
Extends ReviewableRequest for review-state management:
| Property | Type | Description |
|---|---|---|
Id |
Guid |
Segment identifier |
Email |
string |
Sponsor's email address |
BrandName |
string |
Sponsor's brand name |
BodyAsMarkdown |
string |
Segment body in Markdown |
IsFallback |
bool |
Whether this is a fallback segment |
GetSponsorSegmentsRequest
Extends PaginationRequest for paginated listing.
GetSponsorSegmentByIdRequest
| Property | Type | Description |
|---|---|---|
Id |
Guid |
Segment identifier to look up |
GetSponsorSegmentForContentRequest
| Property | Type | Description |
|---|---|---|
BlogPostSlug |
string |
Blog post slug to find a sponsor segment for |
FluentValidation Validators
The following validators enforce request-level rules at the API boundary:
CreateSponsorSegmentRequestValidatorGetSponsorSegmentByIdRequestValidatorGetSponsorSegmentForContentRequestValidator
Installation
dotnet add package AugusteVN.Modules.Sponsorships._Shared
Full Documentation
See the Sponsorships Module README for complete documentation.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- AugusteVN._Shared.Contracts (>= 1.1.0)
- AugusteVN._Shared.Extensions (>= 1.1.1)
- AugusteVN.Database.Entities (>= 1.1.4)
- FluentValidation (>= 11.11.0)
NuGet packages (3)
Showing the top 3 NuGet packages that depend on AugusteVN.Modules.Sponsorships._Shared:
| Package | Downloads |
|---|---|
|
AugusteVN.Modules.Sponsorships._Shared.Spa
Blazor components for sponsor display and management |
|
|
AugusteVN.Modules.Sponsorships.Api
Minimal API endpoints for sponsor segments |
|
|
AugusteVN.Modules.Sponsorships.Features
CQRS handlers for sponsorship operations |
GitHub repositories
This package is not used by any popular GitHub repositories.