Research
Security News
Threat Actor Exposes Playbook for Exploiting npm to Build Blockchain-Powered Botnets
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.
eslint-flat-config-utils
Advanced tools
Utils for managing and manipulating ESLint flat config arrays
Utils for managing and manipulating ESLint flat config arrays
npm i eslint-flat-config-utils
Most of the descriptions are written in JSDoc, you can find more details in the documentation via JSR.
Here listing a few highlighted ones:
concat
Concatenate multiple ESLint flat configs into one, resolve the promises, and flatten the array.
// eslint.config.mjs
import { concat } from 'eslint-flat-config-utils'
export default concat(
{
plugins: {},
rules: {},
},
// It can also takes a array of configs:
[
{
plugins: {},
rules: {},
}
// ...
],
// Or promises:
Promise.resolve({
files: ['*.ts'],
rules: {},
})
// ...
)
composer
Create a chainable composer that makes manipulating ESLint flat config easier.
It extends Promise, so that you can directly await or export it to eslint.config.mjs
// eslint.config.mjs
import { composer } from 'eslint-flat-config-utils'
export default composer(
{
plugins: {},
rules: {},
}
// ...some configs, accepts same arguments as `concat`
)
.append(
// appends more configs at the end, accepts same arguments as `concat`
)
.prepend(
// prepends more configs at the beginning, accepts same arguments as `concat`
)
.insertAfter(
'config-name', // specify the name of the target config, or index
// insert more configs after the target, accepts same arguments as `concat`
)
.renamePlugins({
// rename plugins
'old-name': 'new-name',
// for example, rename `n` from `eslint-plugin-n` to more a explicit prefix `node`
'n': 'node'
// applies to all plugins and rules in the configs
})
.override(
'config-name', // specify the name of the target config, or index
{
// merge with the target config
rules: {
'no-console': 'off'
},
}
)
// And you can directly return the composer object to `eslint.config.mjs`
extend
Extend another flat config from a different root, and rewrite the glob paths accordingly:
import { extend } from 'eslint-flat-config-utils'
export default [
...await extend(
import('./sub-package/eslint.config.mjs'),
'./sub-package/'
)
]
MIT License © 2023-PRESENT Anthony Fu
FAQs
Utils for managing and manipulating ESLint flat config arrays
The npm package eslint-flat-config-utils receives a total of 204,075 weekly downloads. As such, eslint-flat-config-utils popularity was classified as popular.
We found that eslint-flat-config-utils demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 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.
Research
Security News
A threat actor's playbook for exploiting the npm ecosystem was exposed on the dark web, detailing how to build a blockchain-powered botnet.
Security News
NVD’s backlog surpasses 20,000 CVEs as analysis slows and NIST announces new system updates to address ongoing delays.
Security News
Research
A malicious npm package disguised as a WhatsApp client is exploiting authentication flows with a remote kill switch to exfiltrate data and destroy files.