AugusteVN.Modules.EmailCampaigns._Shared.Spa
1.0.7
dotnet add package AugusteVN.Modules.EmailCampaigns._Shared.Spa --version 1.0.7
NuGet\Install-Package AugusteVN.Modules.EmailCampaigns._Shared.Spa -Version 1.0.7
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="AugusteVN.Modules.EmailCampaigns._Shared.Spa" Version="1.0.7" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="AugusteVN.Modules.EmailCampaigns._Shared.Spa" Version="1.0.7" />
<PackageReference Include="AugusteVN.Modules.EmailCampaigns._Shared.Spa" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add AugusteVN.Modules.EmailCampaigns._Shared.Spa --version 1.0.7
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: AugusteVN.Modules.EmailCampaigns._Shared.Spa, 1.0.7"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package AugusteVN.Modules.EmailCampaigns._Shared.Spa@1.0.7
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=AugusteVN.Modules.EmailCampaigns._Shared.Spa&version=1.0.7
#tool nuget:?package=AugusteVN.Modules.EmailCampaigns._Shared.Spa&version=1.0.7
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
AugusteVN.Modules.EmailCampaigns._Shared.Spa
Blazor components and HTTP client services for managing campaigns, templates, subscribers, jobs, and sent emails in SPA frontends.
Part of the AugusteVN Modules collection.
Blazor Components (24)
Campaigns
| Component | Path | Description |
|---|---|---|
GetEmailCampaigns |
GetEmailCampaigns/GetEmailCampaigns.razor |
Paginated listing of all campaigns |
GetEmailCampaignById |
GetEmailCampaignById/GetEmailCampaignById.razor |
Single campaign detail view with nested templates |
CreateEmailCampaignForm |
CreateEmailCampaign/CreateEmailCampaignForm.razor |
Admin form for creating a new campaign |
SelectEmailCampaignStatus |
UpdateEmailCampaignStatus/SelectEmailCampaignStatus.razor |
Dropdown for updating campaign status |
Templates
| Component | Path | Description |
|---|---|---|
GetEmailTemplates |
GetEmailTemplates/GetEmailTemplates.razor |
Listing of all email templates |
GetEmailTemplateById |
GetEmailTemplateById/GetEmailTemplateById.razor |
Single template detail view |
CreateEmailTemplateForm |
CreateEmailTemplate/CreateEmailTemplateForm.razor |
Admin form for creating a new template |
UpdateEmailTemplateForm |
UpdateEmailTemplate/UpdateEmailTemplateForm.razor |
Admin form for editing an existing template |
SelectEmailTemplateStatus |
UpdateEmailTemplateStatus/SelectEmailTemplateStatus.razor |
Dropdown for updating template status |
TestEmailTemplateForm |
TestEmailTemplate/TestEmailTemplateForm.razor |
Form for sending a test email using a template |
EmailTemplatePreview |
EmailTemplatePreview.razor |
Reusable email template preview/renderer component |
Subscribers
| Component | Path | Description |
|---|---|---|
EmailSubscribersList |
GetEmailSubscribers/EmailSubscribersList.razor |
Paginated listing of all subscribers |
LoadMoreEmailSubscribersBtn |
GetEmailSubscribers/LoadMoreEmailSubscribersBtn.razor |
Button to load next page of subscribers |
GetEmailSubscriberById |
GetEmailSubscriberById/GetEmailSubscriberById.razor |
Single subscriber detail view |
CountEmailSubscribers |
CountEmailSubscribers/CountEmailSubscribers.razor |
Displays subscriber count with optional filters |
EmailSubscribeForm |
UpsertEmailSubscriber/EmailSubscribeForm.razor |
Public subscribe / re-subscribe form |
UpdateEmailSubscriptionForm |
UpdateEmailSubscription/UpdateEmailSubscriptionForm.razor |
Form for managing per-category list memberships |
DeleteEmailSubscriberBtn |
DeleteEmailSubscriber/DeleteEmailSubscriberBtn.razor |
Confirmation button for permanent subscriber deletion |
Jobs
| Component | Path | Description |
|---|---|---|
GetEmailJobs |
GetEmailJobs/GetEmailJobs.razor |
Listing of all email jobs |
GetEmailJobById |
GetEmailJobById/GetEmailJobById.razor |
Single job detail view |
CreateEmailJobForm |
CreateEmailJob/CreateEmailJobForm.razor |
Admin form for creating a new batch send job |
SelectEmailJobStatus |
UpdateEmailJobStatus/SelectEmailJobStatus.razor |
Dropdown for updating job status |
Sent Emails & Metrics
| Component | Path | Description |
|---|---|---|
GetSentEmailsCount |
GetSentEmails/GetSentEmailsCount.razor |
Displays count of sent emails |
GetSentEmailMetricsCount |
GetSentEmailMetrics/GetSentEmailMetricsCount.razor |
Displays aggregated metric counts (reads, clicks, unsubs) |
Services
State / HttpClient Pairs
Each resource has a scoped state container and HTTP client pair for reactive UI updates.
| State | HttpClient | Description |
|---|---|---|
EmailCampaignsState |
EmailCampaignsHttpClient |
Campaign data and API calls |
EmailTemplatesState |
EmailTemplatesHttpClient |
Template data and API calls |
EmailSubscribersState |
EmailSubscribersHttpClient |
Subscriber data and API calls |
SentEmailsState |
SentEmailsHttpClient |
Sent email data and API calls |
EmailJobsState |
EmailJobsHttpClient |
Job data and API calls |
Extension Method
AddEmailCampaignsSharedSpa
public static void AddEmailCampaignsSharedSpa(
this IServiceCollection services,
IConfiguration configuration,
Action<string, Dictionary<string, int>> addPermissions)
What it does:
- Invokes the
addPermissionscallback with"EmailCampaigns"and thePermissionsProvider<Permissions>.PermissionsDictto register module permissions with the host application - Registers all 5 state/httpClient pairs as scoped services
Registration
// Program.cs
builder.Services.AddEmailCampaignsSharedSpa(
builder.Configuration,
(moduleName, permissions) =>
{
// Register EmailCampaigns permissions with your app's permission system
Permissions[moduleName] = permissions;
});
Installation
dotnet add package AugusteVN.Modules.EmailCampaigns._Shared.Spa
Dependencies
- AugusteVN.Modules.EmailCampaigns._Shared
Links
- EmailCampaigns module overview
- EmailCampaigns._Shared
- EmailCampaigns.Api
- EmailCampaigns.Database
- EmailCampaigns.Features
- EmailCampaigns.Templates
| 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. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- AugusteVN._Shared.Extensions (>= 1.1.1)
- AugusteVN.Auth.Permissions.Contracts (>= 1.1.0)
- AugusteVN.Modules.EmailCampaigns._Shared (>= 1.0.7)
- AugusteVN.Razor.PrismJS (>= 1.1.7)
- AugusteVN.Razor.State (>= 1.2.0)
- Blazored.FluentValidation (>= 2.2.0)
- Markdig (>= 0.40.0)
- Microsoft.AspNetCore.Components.Web (>= 10.0.0)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.