Jarvis.Blazor.Mud
1.1.6.5
See the version list below for details.
dotnet add package Jarvis.Blazor.Mud --version 1.1.6.5
NuGet\Install-Package Jarvis.Blazor.Mud -Version 1.1.6.5
<PackageReference Include="Jarvis.Blazor.Mud" Version="1.1.6.5" />
<PackageVersion Include="Jarvis.Blazor.Mud" Version="1.1.6.5" />
<PackageReference Include="Jarvis.Blazor.Mud" />
paket add Jarvis.Blazor.Mud --version 1.1.6.5
#r "nuget: Jarvis.Blazor.Mud, 1.1.6.5"
#:package Jarvis.Blazor.Mud@1.1.6.5
#addin nuget:?package=Jarvis.Blazor.Mud&version=1.1.6.5
#tool nuget:?package=Jarvis.Blazor.Mud&version=1.1.6.5
Jarvis.Blazor.Mud
Biblioteca de componentes reutilizáveis para Blazor baseada no MudBlazor, oferecendo componentes de formulário, layouts, diálogos, serviços e autenticação prontos para uso.
Frameworks suportados: .NET 8.0 | .NET 9.0 | .NET 10.0
Instalação
dotnet add package Jarvis.Blazor.Mud
Configuração no Program.cs
// Registro básico (sem autenticação)
builder.Services.AddJarvisMud();
// Registro completo (com autenticação e upload de arquivos)
builder.Services.AddJarvisMud(options =>
{
options.AppId = "minha-app";
options.EndpointFile = "https://api.exemplo.com/upload";
});
// Ou de forma simplificada
builder.Services.AddJarvisMud("minha-app", "https://api.exemplo.com/upload");
Referências no index.html / App.razor
<link href="_content/Jarvis.Blazor.Uppy/uppy.min.css" rel="stylesheet" />
<link href="_content/Jarvis.Blazor.Quill/quill.min.css" rel="stylesheet" />
<link href="_content/Cropper.Blazor/cropper.min.css" rel="stylesheet" />
<script src="_content/Jarvis.Blazor.Mud/init.js"></script>
<script src="_content/Jarvis.Blazor.Uppy/uppy.min.js"></script>
<script src="_content/Jarvis.Blazor.Quill/quill.min.js"></script>
<script src="_content/Cropper.Blazor/cropper.min.js"></script>
Componentes de Formulário
Todos herdam de FormBase<T> e suportam two-way binding (@bind-Value), validação, helper text, modo read-only e layout horizontal/vertical.
| Componente | Descrição |
|---|---|
FormMudText |
Campo de texto (com toggle de senha) |
FormMudNumeric |
Campo numérico |
FormMudDate |
Seletor de data |
FormMudDateRange |
Seletor de intervalo de datas |
FormMudTime |
Seletor de hora |
FormMudSearch |
Campo de busca |
FormMudCheckBox |
Checkbox |
FormMudSwitch |
Toggle switch |
FormMudSelect |
Dropdown de seleção única |
FormMudSelectMultiple |
Dropdown de seleção múltipla |
FormMudAutocomplete |
Autocomplete |
FormMudAutocompleteTemplate |
Autocomplete com template customizado |
FormMudTextArea |
Área de texto multilinha |
FormMudColor |
Seletor de cor |
FormMudUrl |
Campo de URL |
FormMudFileUpload |
Upload de arquivo |
FormMudClipboard |
Campo com botão de copiar |
FormImage |
Exibição de imagem |
FormQuill |
Editor de texto rico (Quill) |
FormUppy |
Upload avançado de arquivos (Uppy) |
MudDualListbox |
Listbox de seleção dupla |
Componentes de Layout
| Componente | Descrição |
|---|---|
HeroSide |
Imagem hero em um lado, conteúdo no outro |
SplitScreen |
Layout de duas colunas |
MudThemeLayout |
Layout com tema MudBlazor (light/dark mode) |
FormMudAppBar |
Barra superior da aplicação |
FormMudMainContent |
Container de conteúdo principal |
Diálogos
| Componente | Descrição |
|---|---|
DialogAlert |
Alerta modal (info, warning, error, success) |
DialogConfirm |
Diálogo de confirmação (sim/não) |
DialogCropperImage |
Modal com recorte de imagem |
DialogForm |
Modal com conteúdo de formulário |
Serviços
Todos os serviços são registrados como Scoped via AddJarvisMud().
| Serviço | Interface | Descrição |
|---|---|---|
AlertService |
IAlertService |
Alertas e confirmações modais |
ToastService |
IToastService |
Notificações snackbar |
PopupService |
IPopupService |
Gerenciamento de diálogos |
BreadcrumbService |
IBreadcrumbService |
Navegação por breadcrumbs |
ClipboardService |
IClipboardService |
Copiar para área de transferência |
FileDownload |
IFileDownload |
Download de arquivos no browser |
HttpService |
IHttpService |
Cliente HTTP com tratamento de JSON |
JsConsoleService |
IJsConsoleService |
Acesso ao console do browser |
LocalStorageService |
ILocalStorageService |
Armazenamento local do browser |
PrintContentService |
IPrintContentService |
Impressão de páginas/elementos |
ThemeService |
IThemeService |
Gerenciamento de tema (light/dark) |
Autenticação
A biblioteca inclui um AuthenticationStateProvider baseado em tokens com persistência no Local Storage.
// Registrado automaticamente ao usar AddJarvisMud(options => ...)
services.AddScoped<AuthenticationStateProvider, JarvisAuthenticationStateProvider>();
Funcionalidades:
- Gerenciamento de estado de autenticação
- Persistência de token no Local Storage
- Refresh automático de token (
TokenRefreshHandler) - Redirecionamento para login quando token é inválido
Classes Base
CustomComponentBase
Classe base para todos os componentes customizados. Injeta automaticamente os serviços principais (Toast, Alert, Popup, Navigation, JSRuntime) e disponibiliza métodos HTTP auxiliares (GetAsync, PostAsync, PutAsync, DeleteAsync).
FormBase<T>
Classe base genérica para componentes de formulário. Suporta binding bidirecional, label, helper text, modo read-only e controle de layout.
PageBase
Classe base para páginas. Fornece acesso ao estado de autenticação, informações do usuário, parâmetros de query e gerenciamento de token.
Opções de Configuração
public class JarvisMudOptions
{
public string AppId { get; set; }
public string LoginPath { get; set; } = "/auth/login";
public string LogoutPath { get; set; } = "/auth/logout";
public string RecoverPasswordPath { get; set; } = "/auth/recuperar-senha";
public string CreateAccountPath { get; set; } = "/auth/criar-cadastro";
public string[] OthersPath { get; set; } = [];
public string EndpointFile { get; set; }
public IDictionary<string, string> HeadersEndpointFile { get; set; }
public string DefaultImageSrc { get; set; } // Imagem placeholder padrão (base64)
}
Dependências
| Pacote | Versão |
|---|---|
| MudBlazor | 8.15.0 |
| Jarvis.Toolkit | 1.2.0.5 |
| Jarvis.Blazor.Uppy | 2.0.0.9 |
| Jarvis.Blazor.Quill | 1.0.0.2 |
| Cropper.Blazor | 1.5.0 |
| Microsoft.AspNetCore.Components.Authorization | 8.0 / 9.0 / 10.0 |
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. 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
- Cropper.Blazor (>= 1.5.0)
- Jarvis.Blazor.Quill (>= 1.0.0.2)
- Jarvis.Blazor.Uppy (>= 2.0.0.9)
- Jarvis.Toolkit (>= 1.2.0.5)
- Microsoft.AspNetCore.Components.Authorization (>= 10.0.2)
- MudBlazor (>= 8.15.0)
-
net8.0
- Cropper.Blazor (>= 1.5.0)
- Jarvis.Blazor.Quill (>= 1.0.0.2)
- Jarvis.Blazor.Uppy (>= 2.0.0.9)
- Jarvis.Toolkit (>= 1.2.0.5)
- Microsoft.AspNetCore.Components.Authorization (>= 8.0.23)
- MudBlazor (>= 8.15.0)
-
net9.0
- Cropper.Blazor (>= 1.5.0)
- Jarvis.Blazor.Quill (>= 1.0.0.2)
- Jarvis.Blazor.Uppy (>= 2.0.0.9)
- Jarvis.Toolkit (>= 1.2.0.5)
- Microsoft.AspNetCore.Components.Authorization (>= 9.0.12)
- MudBlazor (>= 8.15.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.1.7.1 | 78 | 2/9/2026 |
| 1.1.7 | 84 | 2/9/2026 |
| 1.1.6.9 | 80 | 2/8/2026 |
| 1.1.6.8 | 86 | 2/6/2026 |
| 1.1.6.7 | 88 | 2/5/2026 |
| 1.1.6.6 | 85 | 2/3/2026 |
| 1.1.6.5 | 85 | 2/1/2026 |
| 1.1.6.4 | 93 | 1/30/2026 |
| 1.1.6.3 | 88 | 1/29/2026 |
| 1.1.6.2 | 92 | 1/14/2026 |
| 1.1.6.1 | 95 | 1/9/2026 |
| 1.1.6 | 281 | 12/16/2025 |
| 1.1.5.9 | 437 | 12/10/2025 |
| 1.1.5.8 | 184 | 12/5/2025 |
| 1.1.5.7 | 119 | 11/29/2025 |
| 1.1.5.6 | 185 | 11/28/2025 |
| 1.1.5.5 | 183 | 11/26/2025 |
| 1.1.5.4 | 196 | 11/24/2025 |
| 1.1.5.3 | 199 | 11/24/2025 |
| 1.1.5.2 | 264 | 11/22/2025 |