Skip to content

chore: Update ShowMessageBox to ShowMessageBoxAsync and upgrade package versions#760

Open
sfmskywalker wants to merge 27 commits intomainfrom
enh/package-updates
Open

chore: Update ShowMessageBox to ShowMessageBoxAsync and upgrade package versions#760
sfmskywalker wants to merge 27 commits intomainfrom
enh/package-updates

Conversation

@sfmskywalker
Copy link
Member

Purpose

Updates packages.


Scope

Select one primary concern:

  • Bug fix (behavior change)
  • Refactor (no behavior change)
  • Documentation update
  • Formatting / code cleanup
  • Dependency / build update
  • New feature

If this PR includes multiple unrelated concerns, please split it before requesting review.


Description

Problem

Keep packages up to date.

Solution

Updated the packages.


Verification

See if the build succeeds and smoke test the Elsa Studio app.

Expected outcome:

No noticeable changes.


Screenshots / Recordings (if applicable)


Commit Convention

We recommend using conventional commit prefixes:

  • fix: – Bug fixes (behavior change)
  • feat: – New features
  • refactor: – Code changes without behavior change
  • docs: – Documentation updates
  • chore: – Maintenance, tooling, or dependency updates
  • test: – Test additions or modifications

Clear commit messages make reviews easier and history more meaningful.


Checklist

  • The PR is focused on a single concern
  • Commit messages follow the recommended convention
  • Tests added or updated (if applicable)
  • Documentation updated (if applicable)
  • No unrelated cleanup included
  • All tests pass

sfmskywalker and others added 26 commits January 23, 2026 20:53
… implementation in `RemoteActivityExecutionService`.
…abs`, streamline nested components, and enhance styling logic.
Introduced components and models to display a call stack for activity executions in the Workflow Instance Viewer. This includes UI elements for call stack rendering, error handling, and data integration with activity execution records.
…elected` callbacks in `WorkflowInstanceViewer`
This refactor eliminates unused `ActivityExecutionSelected` callbacks and associated parameters across multiple components. It simplifies the codebase by removing redundant logic and dependencies related to activity execution selection while preserving core functionality.
Introduced the ability to pin the call stack, allowing it to remain fixed during navigation. Enhanced activity selection by optimizing early exits, preventing redundant calls, and adding logic for bidirectional highlighting within the current call stack.
…d streamline activity execution integration
Introduced a persistent drawer for execution details and refactored related components for better modularity and readability. Updated the data model and logic to streamline activity execution handling and display refreshed details dynamically.
Set `_isPinned` to true to ensure consistent pin behavior. Added checks and updates for activity execution details, improving null handling and refresh logic. Increased maximum receive message size to 5MB for hub connections.
…ignerWrapper.razor.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…r immutability in WorkflowInstanceWorkspace.razor.cs
…anceDesigner in WorkflowInstanceWorkspace.razor.cs for mutability purposes.
…ined UX

Removed pinning feature and unused variables in `ActivityCallStack`. Refined drawer opening logic in `WorkflowInstanceViewer` for smoother interaction. Enhanced styling and streamlined event callbacks for better performance.
…ction handling

Improved journal entry selection checks, added `_isSelectingFromJournal` flag to prevent unwanted activity selections, and refactored workflow execution log record selection logic with try-finally for consistent state management.
…andling

Replaced `_isSelectingFromCallStack` and `_isSelectingFromJournal` flags with `_programmaticallySelectedNodeId` to streamline the handling of node selections and prevent unintended state changes.
…zation

Added `_selectedEntry` to track selected call stack entries. Implemented virtualization in `ActivityCallStack.razor` to improve performance for long lists. Streamlined entry selection and clearing logic.
- Added functions to fetch custom and default activity names by ID.
- Updated `Journal`, `ActivityCallStack`, and workflow viewer components to use these functions for consistent activity name presentation.
- Enhanced UX by prioritizing designer activity name, with fallbacks to custom names and activity types.
…versions

- Refactor calls to use `ShowMessageBoxAsync` for consistency and async operations.
- Upgrade various package versions to improve dependency management and get latest features.
@greptile-apps
Copy link

greptile-apps bot commented Feb 20, 2026

Greptile Summary

Updated package dependencies to their latest versions and migrated code to be compatible with MudBlazor 9.0 breaking changes. The migration systematically replaces deprecated ShowMessageBox with ShowMessageBoxAsync across all dialog interactions (13 occurrences in 7 files) and updates ActivityPicker.razor.cs to use the new ITreeItemData<string> interface with improved null-safety.

Key changes:

  • MudBlazor upgraded from 8.15.0 to 9.0.0 (major version)
  • Radzen.Blazor upgraded from 8.3.5 to 9.0.5 (major version)
  • Microsoft.AspNetCore packages updated to latest patch releases (8.0.24, 9.0.13, 10.0.3)
  • Elsa.Api.Client updated from 3.6.0-rc2 to 3.7.0-preview.4406
  • Refit packages reorganized by target framework for better version control
  • All dialog confirmation flows now use async pattern consistently

Confidence Score: 5/5

  • This PR is safe to merge with minimal risk
  • The changes are purely dependency updates and mechanical API migrations following MudBlazor 9.0 breaking changes. All modifications are consistent, well-scoped refactoring with no logical changes to application behavior. The migration from ShowMessageBox to ShowMessageBoxAsync is straightforward and maintains identical functionality.
  • No files require special attention

Important Files Changed

Filename Overview
Directory.Packages.props Updates package versions: MudBlazor 8.15.0→9.0.0, Radzen 8.3.5→9.0.5, Microsoft packages to latest patches, reorganizes Refit packages by target framework
src/modules/Elsa.Studio.Workflows/ActivityPickers/Treeview/ActivityPicker.razor.cs Adapts to MudBlazor 9.0 API changes: uses ITreeItemData<string>, adds null-safety operators, removes unnecessary null-conditional operators on non-nullable properties
src/modules/Elsa.Studio.Workflows/Components/WorkflowDefinitionList/WorkflowDefinitionList.razor.cs Migrates ShowMessageBox to ShowMessageBoxAsync (5 occurrences) for MudBlazor 9.0 compatibility
src/modules/Elsa.Studio.Workflows/Components/WorkflowInstanceList/WorkflowInstanceList.razor.cs Migrates ShowMessageBox to ShowMessageBoxAsync (3 occurrences) for MudBlazor 9.0 compatibility

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[MudBlazor 8.15.0] --> B[Upgrade to MudBlazor 9.0.0]
    B --> C{API Breaking Changes}
    C --> D[ShowMessageBox deprecated]
    C --> E[TreeItemData API changes]
    
    D --> F[Update all DialogService calls]
    F --> G[Labels.razor.cs]
    F --> H[InputsSection.razor.cs]
    F --> I[OutputsSection.razor.cs]
    F --> J[VariablesTab.razor.cs]
    F --> K[VersionHistoryTab.razor.cs]
    F --> L[WorkflowDefinitionList.razor.cs]
    F --> M[WorkflowInstanceList.razor.cs]
    
    G --> N[ShowMessageBox → ShowMessageBoxAsync]
    H --> N
    I --> N
    J --> N
    K --> N
    L --> N
    M --> N
    
    E --> O[ActivityPicker.razor.cs]
    O --> P[TreeItemData → ITreeItemData]
    O --> Q[Add null-safety operators]
    O --> R[Remove unnecessary null-conditionals]
    
    N --> S[All components updated]
    P --> S
    Q --> S
    R --> S
    
    S --> T[MudBlazor 9.0 compatible]
Loading

Last reviewed commit: b21302f

…`ActivityPicker.razor`

- Update package version for `CodeBeam.MudBlazor.Extensions` to leverage new features.
- Refactor `ActivityPicker.razor` for improved localization handling and consolidation of logic.
- Simplify `ActivityTreeItem` constructor by integrating `ChildrenList`.
Base automatically changed from feat/activity-call-stack to main March 2, 2026 15:12
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.

1 participant