0.0.9 • Published 3 years ago
eslint-plugin-freeze-global v0.0.9
eslint-plugin-freeze-global
Object.freeze globals to prevent accidental mutation during the life of your program.
Installation
You'll first need to install ESLint:
npm i eslint --save-devNext, install eslint-plugin-freeze-global:
npm install eslint-plugin-freeze-global --save-devUsage
Add eslint-plugin-freeze-global to the plugins section of your .eslintrc configuration file:
{
"plugins": [
"eslint-plugin-freeze-global"
]
}Then configure the rules you want to use under the rules section.
No Mutable Global
{
"rules": {
"eslint-plugin-freeze-global/no-mutable-global": 2
}
}Examples
❌ Invalid
import zod from 'zod';
const GLOBAL = {
a: 1,
b: 2,
c: {
d: 'e'
}
};✅ Valid with ["error", "no-mutable-global"]
import zod from 'zod';
const GLOBAL = Object.freeze({
a: 1,
b: 2,
c: Object.freeze({
d: 'e',
})
});No Naked Global
{
"rules": {
"eslint-plugin-freeze-global/no-naked-global": 2
}
}Examples
❌ Invalid
import zod from 'zod';
const GLOBAL = {};✅ Valid with ["error", "no-naked-global"]
import zod from 'zod';
const GLOBAL = Object.freeze({});Or refactor into a class or applicable location.