
Research
/Security News
npm Author Qix Compromised via Phishing Email in Major Supply Chain Attack
npm author Qix’s account was compromised, with malicious versions of popular packages like chalk-template, color-convert, and strip-ansi published.
autoindexer
Advanced tools
Generate index automatically for your article. Use umd, so it can be bundled by browserify/webpack if you'd like to.
It's very easy to use, just give it the root node which hold the article.
If I have my article structure like this:
<div id="article">
<h1>Title0</h1>
<p>Content here.</p>
<h2>Title1</h2>
<p>Content here.</p>
<h2>Title2</h2>
<p>Content here.</p>
<h1>Title3</h1>
<p>Content here.</p>
<h2>Title4</h2>
<p>Content here.</p>
</div>
<div id="index"></div>
Then just pass the article node to it:
var indexer = createIndexer();
var articleNode = document.getElementById('article');
var index = document.getElementById('index');
var ul = indexer(articleNode);
index.appendChild(ul);
It returns a UL node and you can decide which node it append to.
Options | Description |
---|---|
maxLevel | Max hierarchal level of index, default to 3. |
It will find any Header element in your article, and composite them to a tree according two points:
Which means the structure of index's node is not identical with the headers structure in DOM.
For example:
<h2>1</h2>
<h1>2</h1>
<h2>3</h2>
<h3>4</h3>
<h2>5</h2>
It will generate a structure like this:
Although the level of first H2 is smaller then the H1 which next to it, but H2 occured first. H2 can't hold H1 as its children, so H1 become the sibling of H2, but check the last H2, it can't be held as a children by H3, so it find H1 as its parent, so the last H2 become the sibling of the middle H2.
Or, you may consider about the nesting structure like this:
<h2>1</h2>
<div>
<p>Content</p>
<h1>2</h1>
</div>
<h2>3</h2>
<div>
<h3>4</h3>
<p>Content</p>
<div>
<h2>5</h2>
</div>
</div>
This DOM structure is totally a mess, but my indexer still work, and the result is the same as the last example. :smile:
FAQs
generate index automatically for your article.
The npm package autoindexer receives a total of 0 weekly downloads. As such, autoindexer popularity was classified as not popular.
We found that autoindexer 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
/Security News
npm author Qix’s account was compromised, with malicious versions of popular packages like chalk-template, color-convert, and strip-ansi published.
Research
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
Security News
Ruby maintainers from Bundler and rbenv teams are building rv to bring Python uv's speed and unified tooling approach to Ruby development.