feat(overlay): allow passing HTMLElement #4463
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Context:
We use a custom HTML element with a shadow root to render our application. This encapsulates our element from the document's DOM, preventing it from accessing main document elements.
Currently, the
OverlayContainerProvider
expects an element ID and retrieves it usingdocument.getElementById(portalContainer)
. However, this approach fails in our use case, as the query always returnsnull
due to shadow DOM encapsulation. Additionally, there is nobody
in our case, which further limits our ability to append overlays to the standard document structure.This PR:
Adds support for passing an
HTMLElement
directly to theOverlayContainerProvider
.Preserves the existing behavior of accepting an element ID.
Enhances and fixes unit tests for
OverlayContainerProvider
.This change requires a UI-Kit update - inform @tirado-rx @benjirsvx
What should be tested?
body
.Are they some special informations required to test something?
Reviewers:
Which persons should review this PR? Add person with @mentions
Examples:
@marigold-ui/developer
@marigold-ui/designer