Product
Socket Now Supports uv.lock Files
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
@webcomponents/shadydom
Advanced tools
ShadyDOM provides a shim for ShadowDOM V1. It is less correct but less intrusive and faster than the ShadowDOM Polyfill.
Usage of the shim is transparent when attachShadow
is unavailable. Elements are
patched as needed to report ShadowDOM correct dom information. Only dom tree
accessors and mutation api is maintained. Some dom api
(for example MutationObservers) is not shimmed.
To force ShadyDOM to be used even when native ShadowDOM is available, set
the ShadyDOM = {force: true}
in a script prior to loading the polyfill.
<div id="host"></div>
<script>
host.attachShadow({mode: 'open'});
host.shadowRoot.appendChild(document.createElement('a'));
</script>
For building and testing, first run
npm install
bower install
To build, make sure gulp is installed and gulp
.
To test, run npm test
ShadyDOM distribution is asynchronous for performance reasons. This means that
the composed dom will be available 1 microtask after the dom mutation occurs.
For testing, ShadyDOM.flush
may be called to force syncronous composition.
ShadowDOM compatible styling is not provided with the ShadyDOM shim. To shim ShadowDOM styling, use the shadycss shim.
FAQs
Shadow DOM polyfill
The npm package @webcomponents/shadydom receives a total of 3,842 weekly downloads. As such, @webcomponents/shadydom popularity was classified as popular.
We found that @webcomponents/shadydom demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.
Security News
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.