## Description
This PR adds support for modals within UI modules. Modals within UI
modules are created as meta widgets and modal meta widgets were not
supported.
### Changes
1. Canvas Rendering Enhancement:
- Modified FixedLayoutEditorCanvas and FixedLayoutViewerCanvas to
include meta widget children in the canvas rendering
2. Modal Widget Improvements:
- Updated ModalWidget to handle meta widget children structures
3. Selectors:
- Created new selector getModalWidgetByName to find modals in both
regular widgets and meta widgets
- Enhanced getWidgetIdsByType to include meta widgets in the search
- Updated modal-related sagas to use the new selectors
4. Main Container Widget Support:
- Modified withWidgetProps to allow the main container widget to access
meta widget children even when hasMetaWidgets is false
Fixes https://github.com/appsmithorg/appsmith/issues/39287
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/13829067577>
> Commit: 15cde006ab4268e2ce9b5574dbd9be57a37287c4
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=13829067577&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 13 Mar 2025 11:09:59 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **Bug Fixes**
- Improved canvas rendering responsiveness, ensuring interface elements
update correctly with layout changes.
- Enhanced modal display behavior by refining widget retrieval,
resulting in more consistent interactions.
- **New Features**
- Introduced an optional modal configuration to better support
alternative widget structures.
- Updated child component handling to accommodate new meta widget
conditions within the main interface.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|---|---|---|
| .. | ||
| canvas | ||
| common | ||
| editor | ||
| viewer | ||
| index.ts | ||