microsoft / fast

The adaptive interface system for modern web experiences.
https://www.fast.design
Other
9.23k stars 589 forks source link

Fix/shadowrootmode #6933

Closed spmonahan closed 3 months ago

spmonahan commented 5 months ago

Pull Request

📖 Description

Changes the shadowroot attribute on <template>s to shadowrootmode per the standardized declarative shadow DOM when server rendering components.

👩‍💻 Reviewer Notes

web.dev notes that pre-standardization, Chrome and Edge used the shadowroot attribute instead. This attribute doesn't work in any current version of the browsers I tested in so I've removed it entirely. This seems a reasonable choice to me since this package is still in beta and the versions of Chrome and Edge that support the non-standard attribute are quite old at this point, however, if it's necessary to support the non-standard attribute I'm happy to do that work but I will need guidance on how to test against older browser versions.

📑 Test Plan

I updated relevant tests in the repo and validated the before and after in Edge, Chrome, Safari and Firefox.

This is my test repo.

Before

Edge

edge_shadowroot

Chrome

chrome_shadowroot

Firefox

firefox_shadowroot

Safari

safari_shadowroot

After

Edge

edge_shadowrootmode

Chrome

chrome_shadowrootmode

Firefox

firefox_shadowrootmode

Safari

safari_shadowrootmode

✅ Checklist

General