Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Jan 6, 2026

Comprehensive catalog of all MudBlazor and MudExtensions dependencies across the codebase to support migration to Radzen Blazor. 759 component instances across 143 files, with deep integration in service layer (IThemeService, IUserMessageService, IDialogService).

Deliverables

MUDBLAZOR_AUDIT.md - Executive analysis and migration strategy

  • Component usage statistics (MudStack: 69, MudText: 54, MudTable: 8, MudTabs: 84)
  • Service layer coupling: IThemeService (64+ refs), IDialogService (30+ refs), ISnackbar (64+ refs)
  • MudExtensions usage: 7 UIHints components using enhanced selects (13 instances)
  • 10 pain points with severity ratings (3 HIGH, 4 MEDIUM-HIGH, 3 MEDIUM)
  • 9-phase migration plan: 22 weeks, phased by dependency complexity

COMPONENT_MAPPING_MATRIX.md - Component-level migration guide

  • MudBlazor → Radzen mappings with code examples
  • Migration complexity per component (60 low, 40 medium, 20 high)
  • Service abstraction patterns for IThemeService, IDialogService
  • Critical path: MudTable → RadzenDataGrid (structural rewrite, template-based → column-based)

MUDBLAZOR_FILE_INVENTORY.md - File-by-file checklist

  • 143 files organized by module: Framework (20), Workflows (40+), UIHints (20+)
  • Complete file paths, component lists, C# dependencies
  • Phase-based migration checklist (84 tasks across 9 phases)

Critical Migration Areas

Tables (HIGH complexity, 8 weeks)

  • WorkflowDefinitionList/WorkflowInstanceList use MudTable with ServerData pattern
  • Requires structural rewrite: HeaderContent/RowTemplate → Columns definition

Service Abstractions (HIGH complexity, 2 weeks)

  • IThemeService returns MudTheme/Palette objects
  • IDialogService API differs significantly (ShowAsync vs OpenAsync)
  • Need framework-agnostic interfaces with dual implementations

MudExtensions (MEDIUM-HIGH, 3 weeks)

  • All 7 instances in UIHints module (Dropdown, OutcomePicker, VariablePicker, etc.)
  • Require search, virtualization features from MudSelectExtended

Sequencing

Phase 1-2 (Weeks 1-4): Service abstractions + layout infrastructure
Phase 3-5 (Weeks 5-12): Shared components, dialogs, tables (critical path)
Phase 6-8 (Weeks 13-20): UIHints, workflow editor, modules
Phase 9 (Weeks 21-22): Remove MudBlazor dependencies, final testing

Original prompt

This section details on the original issue you should resolve

<issue_title>Audit and Inventory All MudBlazor Usage in Codebase</issue_title>
<issue_description>## Goal
Catalog all usages of the MudBlazor library and its extensions throughout the Elsa Studio codebase. This includes direct usage in Razor/@code, indirect usage via wrappers or base classes, and all specialized stylings or flavors in layouts/themes. The audit should also document "pain points" or customizations that may affect migration.

Tasks

  • Search for all MudBlazor and MudExtensions usages in @using statements, component tags (e.g., <Mud* />), and using MudBlazor; in C# files.
  • Identify all layouts, shared components, and modules dependent on MudBlazor.
  • List all MudBlazor-specific assets (stylesheets, JS, theming, extensions), and where they are referenced (including in _Imports.razor, index.html, App.razor, etc.).
  • Summarize any custom themes/palettes, table/grid wrappers, and special visual logic (e.g., icon usage, badge/status colors, popover/dialog infra, menu/nav, etc.).
  • Inventory any client-side scripts, initialization, or JSInterop related to MudBlazor UI behaviors.

Deliverables

Use these file references and checklists to divide and assign migration work.</issue_description>

Comments on the Issue (you are @copilot in this section)


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI and others added 2 commits January 6, 2026 20:25
Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>
Co-authored-by: sfmskywalker <938393+sfmskywalker@users.noreply.github.com>
Copilot AI changed the title [WIP] Catalog all usages of MudBlazor in codebase Audit and inventory MudBlazor usage for migration planning Jan 6, 2026
Copilot AI requested a review from sfmskywalker January 6, 2026 20:29
@sfmskywalker sfmskywalker marked this pull request as ready for review January 6, 2026 21:27
Copilot AI review requested due to automatic review settings January 6, 2026 21:27
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR delivers a comprehensive audit and inventory of MudBlazor usage across the Elsa Studio codebase to support migration planning to Radzen Blazor. The documentation catalogs 759 component instances across 143 files, analyzes service layer dependencies, and provides detailed migration strategies.

Key Deliverables:

  • Executive analysis with component statistics, service coupling assessment, and 9-phase migration roadmap (22 weeks)
  • Component-level migration guide with MudBlazor → Radzen mappings, complexity ratings, and code examples
  • File-by-file inventory organized by module with complete paths and phase-based migration checklist (84 tasks)

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
MUDBLAZOR_AUDIT.md Executive summary document providing usage statistics (759 components, 14 imports), service layer analysis (IThemeService, IDialogService, IUserMessageService), MudExtensions usage (7 components), 10 identified pain points, and 9-phase migration plan with risk assessment and success criteria
MUDBLAZOR_FILE_INVENTORY.md Comprehensive file-by-file inventory listing all 143 files using MudBlazor, organized by module (Framework, Workflows, UIHints, etc.) with component details, C# dependencies, and phase-based migration checklist for task assignment
COMPONENT_MAPPING_MATRIX.md Detailed technical mapping guide covering MudBlazor → Radzen component equivalents with code examples, API differences, migration complexity ratings (60 low, 40 medium, 20 high), and service abstraction patterns for IThemeService and IDialogService

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Audit and Inventory All MudBlazor Usage in Codebase

2 participants