
Research
Namastex.ai npm Packages Hit with TeamPCP-Style CanisterWorm Malware
Malicious Namastex.ai npm packages appear to replicate TeamPCP-style Canister Worm tradecraft, including exfiltration and self-propagation.
attrs-observe
Advanced tools
Observe and act on the presence of an attribute
attrs-observe is a vanilla-ish web component whose primary purpose is to populate DOM with dynamic data. You may be shocked to learn that this isn't the first such library that does this. The size of this one is ~1.4kb minified and gzipped.
From the point of view of using what's built into the browser, as far as dynamically populating DOM from data, skipping an early Microsoft expiriment, there's:
Unlike many existing alternatives, this one just populates an existing DOM node tree.
Each time populating finishes, an event, "nodes-populated-changed" is emitted.
<div>
I am <span c="whatAmI"></span>
</div>
<attrs-observe observe="c" input='{"whatAmI": "the walrus"}'></attrs-observe>
produces:
I am <span c="whatAmI">the walrus</span>
<div>
<label for="joker">Don't you think the joker laughs at you</label><input id="joker" type="checkbox" c="well?">
</div>
<attrs-observe observe="c" input='{"well?": {"checked": true}}'></attrs-observe>
The input attribute / property of attrs-observe does not need to be set via an inline attribute as shown in the two previous examples. It can be set via a framework or by some other web component.
If the input property changes, it will be reapplied to all the elements with the observed attribute.
produces a checked input.
<div>
I am the <span c="whatAmI"></span>
</div>
<script nomodule>
({
whatAmI: s =>{
s.style.color = 'yellow';
s.innerText = 'Eggman';
}
})
</script>
<p-d-x on="eval" to="{input.whatAmI:whatAmI"></p-d-x>
<attrs-observe observe="c"></attrs-observe>
Produces
<div>
I am the <span c="whatAmI" style="color: yellow;">Eggman</span>
</div>
One can specify whether to monitor for new nodes recursively thoughout the DOM tree by specifying deeply:
<attrs-observe observe="c" deeply></attrs-observe>
First, make sure you have the Polymer CLI and npm (packaged with Node.js) installed. Run npm install to install your element's dependencies, then run polymer serve to serve your element locally.
$ polymer serve
$ polymer test
Your application is already set up to be tested via web-component-tester. Run polymer test to run your application's test suite locally.
FAQs
Observe presence of list of attributes
We found that attrs-observe demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer 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.

Research
Malicious Namastex.ai npm packages appear to replicate TeamPCP-style Canister Worm tradecraft, including exfiltration and self-propagation.

Product
Explore exportable charts for vulnerabilities, dependencies, and usage with Reports, Socket’s new extensible reporting framework.

Product
Socket for Jira lets teams turn alerts into Jira tickets with manual creation, automated ticketing rules, and two-way sync.