Contact emailsmas...@chromium.org

ExplainerNone

Specificationhttps://dom.spec.whatwg.org/#shadowroot-clonable

Summary

This enables individual control over whether a shadow root is clonable (via
standard platform cloning commands such as `cloneNode()`). Imperative
shadow roots can now be controlled via a parameter to
`attachShadow({clonable:true})`. Declarative shadow roots can be controlled
via a new attribute, `<template shadowrootmode=open shadowrootclonable>`.


Blink componentBlink>DOM>ShadowDOM
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EDOM%3EShadowDOM>

Search tagsdeclarative shadow dom
<https://chromestatus.com/features#tags:declarative%20shadow%20dom>

TAG reviewNone

TAG review statusNot applicable

Risks


Interoperability and Compatibility

This is a slight change in behavior, which poses a very small compat risk.
Prior to this feature, declarative shadow roots within `<template>`
elements would get automatically cloned. With the change, only shadow roots
that are explicitly set to `clonable` will be cloned. I believe the usage
of the "inside-template" behavior before was minimal, so the risk should be
low. Safari already shipped the new behavior, reducing the risk. I plan to
enable this functionality slowly and monitor for breakage and bug reports.


*Gecko*: Positive (https://bugzilla.mozilla.org/show_bug.cgi?id=1868428)
Shipping soon

*WebKit*: Shipped/Shipping (
https://developer.apple.com/documentation/safari-release-notes/safari-17_4-release-notes#Web-API
)

*Web developers*: No signals

*Other signals*:

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that
it has potentially high risk for Android WebView-based applications?

None


Debuggability

None


Will this feature be supported on all six Blink platforms (Windows, Mac,
Linux, ChromeOS, Android, and Android WebView)?Yes

Is this feature fully tested by web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
?Yes

https://wpt.fyi/results/shadow-dom/shadow-root-clonable.html


Flag name on chrome://flagsShadowRootClonable

Finch feature nameShadowRootClonable

Requires code in //chrome?False

Tracking bughttps://crbug.com/1510466

Estimated milestones
Shipping on desktop 124
Shipping on Android 124
Shipping on WebView 124

Anticipated spec changes

Open questions about a feature may be a source of future web compat or
interop issues. Please list open issues (e.g. links to known github issues
in the project for the feature specification) whose resolution may
introduce web compat/interop risk (e.g., changing to naming or structure of
the API in a non-backward-compatible way).
None

Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5161435196030976

Links to previous Intent discussionsIntent to prototype:
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM%3DNeDiPDiSgLRpcW8Q%3DhYTrt%3Dgp%2B%2B6eiS21s_TwFEr%2BHamONA%40mail.gmail.com

This intent message was generated by Chrome Platform Status
<https://chromestatus.com/>.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM%3DNeDjeNTzKD%3DMpiPbi64%2BEq97vnAA1Q%2BfMG--iFCG8N%3DSa9Q%40mail.gmail.com.

Reply via email to