{"_id":"@devexpress/eslint-plugin-dx-security","_rev":"9-672d4d33a4b5f8841bfe7863afe47e7b","name":"@devexpress/eslint-plugin-dx-security","dist-tags":{"latest":"0.2.10"},"versions":{"0.2.5":{"name":"@devexpress/eslint-plugin-dx-security","version":"0.2.5","keywords":["eslint","eslint-plugin","security","linting","devexpress","react","aspx","sdl","xss","javascript","typescript","jsx","tsx"],"author":{"name":"Developer Express Inc."},"license":"MIT","_id":"@devexpress/eslint-plugin-dx-security@0.2.5","maintainers":[{"name":"devexpress-npm-publisher","email":"npm@devexpress.com"},{"name":"kirovboris","email":"boris.s.kirov@gmail.com"},{"name":"dx_services","email":"externalServicesAdmin@devexpress.com"},{"name":"romanresh","email":"romanresh@live.com"},{"name":"vyacheslavdonchak","email":"vyacheslav.donchak@devexpress.com"}],"dist":{"shasum":"0c57590ee5453d266f334893f7018ee542b19687","tarball":"https://registry.npmjs.org/@devexpress/eslint-plugin-dx-security/-/eslint-plugin-dx-security-0.2.5.tgz","fileCount":7,"integrity":"sha512-5s1bC9OmGlM5aWF/njTZoElIrOsq0yEWFJz1PkSYiOq1dq0WQuFodxAGKRpQjt+L6sVY2aUCcPCn/QL5SeMpkA==","signatures":[{"sig":"MEUCIAMP9WvO8DU8OI8lIT9oASEmZzRysjIIC9RY9+89k1TQAiEA2k9qe1nbfWSI/vpjx7+O3LmIqG/aDGMCKZHDlDS0cQs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12885},"main":"./lib/index.mjs","type":"module","exports":{".":"./lib/index.mjs"},"gitHead":"e5cb1f4f610eb10e8bd3454a33bd7ae23be367b6","scripts":{"test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"devexpress-npm-publisher","email":"npm@devexpress.com"},"overrides":{"minimatch":"^10.2.1","@microsoft/eslint-plugin-sdl":{"eslint":"^9.7 || ^10"}},"_npmVersion":"11.9.0","description":"An ESLint® plugin that detects and mitigates security-related issues for DevExpress projects.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"eslint-plugin-react":"^7.37.5","eslint-plugin-redos":"^4.5.0","eslint-plugin-security":"^4.0.0","@microsoft/eslint-plugin-sdl":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.3","eslint-plugin-eslint-plugin":"^7.3.1"},"peerDependencies":{"eslint":"^8 || ^9.7 || ^10"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-dx-security_0.2.5_1773239568052_0.43949647446612294","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"@devexpress/eslint-plugin-dx-security","version":"0.2.6","keywords":["eslint","eslint-plugin","security","linting","devexpress","react","aspx","sdl","xss","javascript","typescript","jsx","tsx"],"author":{"name":"Developer Express Inc."},"license":"MIT","_id":"@devexpress/eslint-plugin-dx-security@0.2.6","maintainers":[{"name":"devexpress-npm-publisher","email":"npm@devexpress.com"},{"name":"kirovboris","email":"boris.s.kirov@gmail.com"},{"name":"dx_services","email":"externalServicesAdmin@devexpress.com"},{"name":"romanresh","email":"romanresh@live.com"},{"name":"vyacheslavdonchak","email":"vyacheslav.donchak@devexpress.com"}],"dist":{"shasum":"6b89c8f9adeb4b7083aca2b2d9298552b8e559c4","tarball":"https://registry.npmjs.org/@devexpress/eslint-plugin-dx-security/-/eslint-plugin-dx-security-0.2.6.tgz","fileCount":7,"integrity":"sha512-lkTJhNTYxRaHjqJFYjOpdHwnYGfsqzIMuJl3otT2WXm5TjEIXZOaNPZ9IGjdLobYmS6O9bZyWxuOCRTRWiWlLg==","signatures":[{"sig":"MEQCIETr6bONwWXpLuFKu7Yepi4QFvp6fTwWrPua7USTT5OAAiBRvzPqUTOu8P+b8jNNgIHHB1xvZHjUW6YzXJxAs7yo4w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12749},"main":"./lib/index.mjs","type":"module","exports":{".":"./lib/index.mjs"},"gitHead":"df88caf2f45f649b991cfd7c22ced46529a57a40","scripts":{"test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2b320130-90c5-476c-8fbf-d686afce3dba"}},"overrides":{"minimatch":"^10.2.1","@microsoft/eslint-plugin-sdl":{"eslint":"^9.7 || ^10"}},"_npmVersion":"11.9.0","description":"An ESLint® plugin that detects and mitigates security-related issues for DevExpress projects.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"eslint-plugin-react":"^7.37.5","eslint-plugin-redos":"^4.5.0","eslint-plugin-security":"^4.0.0","@microsoft/eslint-plugin-sdl":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.3","eslint-plugin-eslint-plugin":"^7.3.1"},"peerDependencies":{"eslint":"^8 || ^9.7 || ^10"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-dx-security_0.2.6_1773240626577_0.3263603785845606","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"@devexpress/eslint-plugin-dx-security","version":"0.2.7","keywords":["eslint","eslint-plugin","security","linting","devexpress","react","aspx","sdl","xss","javascript","typescript","jsx","tsx"],"author":{"name":"Developer Express Inc."},"license":"MIT","_id":"@devexpress/eslint-plugin-dx-security@0.2.7","maintainers":[{"name":"devexpress-npm-publisher","email":"npm@devexpress.com"},{"name":"dx_services","email":"externalServicesAdmin@devexpress.com"},{"name":"romanresh","email":"romanresh@live.com"},{"name":"vyacheslavdonchak","email":"vyacheslav.donchak@devexpress.com"}],"dist":{"shasum":"3107a20eacaa840ebc49e5c7347102e8ef49d989","tarball":"https://registry.npmjs.org/@devexpress/eslint-plugin-dx-security/-/eslint-plugin-dx-security-0.2.7.tgz","fileCount":7,"integrity":"sha512-UL5zuenzoWh/9W3BF/VcbcTn3ba5Hqn+G014Wsb9dU5M1fnalpXQbiqRMQ3peeJER7SamQj1MgxOGnIWopnc+g==","signatures":[{"sig":"MEQCIEtNMgX/1+ydEoTks2rN6TG2pZp6yP/XIUdqiJdOABZMAiAXtsfa3BJxEhPkyf0R/RQ4aV2xRHpUEubJMzD/VgtSWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12773},"main":"./lib/index.mjs","type":"module","exports":{".":"./lib/index.mjs"},"gitHead":"6cafa470fe8b7ea6e9def6d51620eb9832aa7efd","scripts":{"lint":"eslint .","test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2b320130-90c5-476c-8fbf-d686afce3dba"}},"overrides":{"minimatch":"^10.2.1","@microsoft/eslint-plugin-sdl":{"eslint":"^9.7 || ^10"}},"_npmVersion":"11.16.0","description":"An ESLint® plugin that detects and mitigates security-related issues for DevExpress projects.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"eslint-plugin-react":"^7.37.5","eslint-plugin-redos":"^4.5.0","eslint-plugin-security":"^4.0.0","@microsoft/eslint-plugin-sdl":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.3","eslint-plugin-eslint-plugin":"^7.3.1"},"peerDependencies":{"eslint":"^8 || ^9.7 || ^10"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-dx-security_0.2.7_1785429540605_0.6737174040934033","host":"s3://npm-registry-packages-npm-production"}},"0.2.8":{"name":"@devexpress/eslint-plugin-dx-security","version":"0.2.8","keywords":["eslint","eslint-plugin","security","linting","devexpress","react","aspx","sdl","xss","javascript","typescript","jsx","tsx"],"author":{"name":"Developer Express Inc."},"license":"MIT","_id":"@devexpress/eslint-plugin-dx-security@0.2.8","maintainers":[{"name":"devexpress-npm-publisher","email":"npm@devexpress.com"},{"name":"dx_services","email":"externalServicesAdmin@devexpress.com"},{"name":"romanresh","email":"romanresh@live.com"},{"name":"vyacheslavdonchak","email":"vyacheslav.donchak@devexpress.com"}],"dist":{"shasum":"1ee952d56d44f2eb386fb25a4f1f6c8654f4f5db","tarball":"https://registry.npmjs.org/@devexpress/eslint-plugin-dx-security/-/eslint-plugin-dx-security-0.2.8.tgz","fileCount":7,"integrity":"sha512-I6+mlSMxcSQtN49dSHdbkeHwrLl6TFn3DwktQjElZLM38nsMt0jwhJ4hcUK9rmevBJebMpf5PYPGS1ncfg3gDA==","signatures":[{"sig":"MEUCIQCxvjXNctizkj8ePr4KzS2SsOE1ypRJudn4ZqBI3rBu+AIgNbiI+WkG+g4O1rfyYkmaskfxI5RUNFGSI9ogFTSlaZg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12773},"main":"./lib/index.mjs","type":"module","exports":{".":"./lib/index.mjs"},"gitHead":"5be7dd5905ad1e8f6ca477a2985c53f15f3ed4d9","scripts":{"lint":"eslint .","test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2b320130-90c5-476c-8fbf-d686afce3dba"}},"overrides":{"minimatch":"^10.2.1","@microsoft/eslint-plugin-sdl":{"eslint":"^9.7 || ^10"}},"_npmVersion":"11.16.0","description":"An ESLint® plugin that detects and mitigates security-related issues for DevExpress projects.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"eslint-plugin-react":"^7.37.5","eslint-plugin-redos":"^4.5.0","eslint-plugin-security":"^4.0.0","@microsoft/eslint-plugin-sdl":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.3","eslint-plugin-eslint-plugin":"^7.3.1"},"peerDependencies":{"eslint":"^8 || ^9.7 || ^10"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-dx-security_0.2.8_1786355234893_0.18176110686296032","host":"s3://npm-registry-packages-npm-production"}},"0.2.9":{"name":"@devexpress/eslint-plugin-dx-security","version":"0.2.9","keywords":["eslint","eslint-plugin","security","linting","devexpress","react","aspx","sdl","xss","javascript","typescript","jsx","tsx"],"author":{"name":"Developer Express Inc."},"license":"MIT","_id":"@devexpress/eslint-plugin-dx-security@0.2.9","maintainers":[{"name":"devexpress-npm-publisher","email":"npm@devexpress.com"},{"name":"dx_services","email":"externalServicesAdmin@devexpress.com"},{"name":"romanresh","email":"romanresh@live.com"},{"name":"vyacheslavdonchak","email":"vyacheslav.donchak@devexpress.com"}],"dist":{"shasum":"05a46a50906c07f66b1b5f5d8dc2e4d6762f0451","tarball":"https://registry.npmjs.org/@devexpress/eslint-plugin-dx-security/-/eslint-plugin-dx-security-0.2.9.tgz","fileCount":7,"integrity":"sha512-MaoOqLrlxbStDto+42jBqcoDyKb2FK3QtqUPlarxcnrId6zoztMzlBttCVAff7VTj5k6T8NzdVoS5fPT/VXacQ==","signatures":[{"sig":"MEUCIQC4OPHdSLtnqE3HuAZf84csJ2+BAzDEzSqVGdxZ7eNjxgIgIfCQWiAhSrZhybSxW8kmn30ZXYPVwmP4DP6KkzKT+eY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12773},"main":"./lib/index.mjs","type":"module","exports":{".":"./lib/index.mjs"},"gitHead":"bd3ef561f388aa49b47fc26637b2217d215ed001","scripts":{"lint":"eslint .","test":"node --test tests/*.test.mjs"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2b320130-90c5-476c-8fbf-d686afce3dba"}},"overrides":{"minimatch":"^10.2.1","@microsoft/eslint-plugin-sdl":{"eslint":"^9.7 || ^10"}},"_npmVersion":"11.19.0","description":"An ESLint® plugin that detects and mitigates security-related issues for DevExpress projects.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"eslint-plugin-react":"^7.37.5","eslint-plugin-redos":"^4.5.0","eslint-plugin-security":"^4.0.0","@microsoft/eslint-plugin-sdl":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.3","eslint-plugin-eslint-plugin":"^7.3.1"},"peerDependencies":{"eslint":"^8 || ^9.7 || ^10"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-dx-security_0.2.9_1788451571656_0.6413628945200163","host":"s3://npm-registry-packages-npm-production"}},"0.2.10":{"name":"@devexpress/eslint-plugin-dx-security","author":{"name":"Developer Express Inc."},"license":"MIT","version":"0.2.10","keywords":["eslint","eslint-plugin","security","linting","devexpress","react","aspx","sdl","xss","javascript","typescript","jsx","tsx"],"type":"module","scripts":{"test":"node --test tests/*.test.mjs","lint":"eslint ."},"main":"./lib/index.mjs","exports":{".":"./lib/index.mjs"},"peerDependencies":{"eslint":"^8 || ^9.7 || ^10"},"dependencies":{"@microsoft/eslint-plugin-sdl":"^1.1.0","eslint-plugin-react":"^7.37.5","eslint-plugin-redos":"^4.5.0","eslint-plugin-security":"^4.0.0"},"overrides":{"minimatch":"^10.2.1","@microsoft/eslint-plugin-sdl":{"eslint":"^9.7 || ^10"}},"devDependencies":{"eslint":"^9.39.3","eslint-plugin-eslint-plugin":"^7.3.1"},"gitHead":"59310a05040f84e21c24c19819ba167d0225106e","_id":"@devexpress/eslint-plugin-dx-security@0.2.10","description":"An ESLint® plugin that detects and mitigates security-related issues for DevExpress projects.","_nodeVersion":"24.20.0","_npmVersion":"11.19.0","dist":{"integrity":"sha512-2pgzpzy3Kz5SBVJ1Ayov7yY1za0S6x4xMyK9CZ4gdLc2aM1tKcSxBgTfe2zqVIN9vPKzZ8la3W0V+AiJ+ca+lQ==","shasum":"df212fe7632c689f783bc0a6a512890f69496611","tarball":"https://registry.npmjs.org/@devexpress/eslint-plugin-dx-security/-/eslint-plugin-dx-security-0.2.10.tgz","fileCount":7,"unpackedSize":12774,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHAYWJ8BYlmIe6o7x4UN/DVbM/ONbt/rPqH4FIUdNjkOAiBXYm9F4Yxo3Oa8Y+iFhBXiSXh953nAPAbTHTGzCYZFqg=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:2b320130-90c5-476c-8fbf-d686afce3dba"}},"directories":{},"maintainers":[{"name":"devexpress-npm-publisher","email":"npm@devexpress.com"},{"name":"dx_services","email":"externalServicesAdmin@devexpress.com"},{"name":"romanresh","email":"romanresh@live.com"},{"name":"vyacheslavdonchak","email":"vyacheslav.donchak@devexpress.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/eslint-plugin-dx-security_0.2.10_1789118164379_0.5660446556881267"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-11T14:32:47.934Z","modified":"2026-09-11T09:16:04.681Z","0.2.5":"2026-03-11T14:32:48.206Z","0.2.6":"2026-03-11T14:50:26.734Z","0.2.7":"2026-07-30T16:39:00.807Z","0.2.8":"2026-08-10T09:47:15.029Z","0.2.9":"2026-09-03T16:06:11.789Z","0.2.10":"2026-09-11T09:16:04.519Z"},"author":{"name":"Developer Express Inc."},"license":"MIT","keywords":["eslint","eslint-plugin","security","linting","devexpress","react","aspx","sdl","xss","javascript","typescript","jsx","tsx"],"description":"An ESLint® plugin that detects and mitigates security-related issues for DevExpress projects.","maintainers":[{"name":"devexpress-npm-publisher","email":"npm@devexpress.com"},{"name":"dx_services","email":"externalServicesAdmin@devexpress.com"},{"name":"romanresh","email":"romanresh@live.com"},{"name":"vyacheslavdonchak","email":"vyacheslav.donchak@devexpress.com"}],"readme":"# ESLint® Plugin for Security-Related Issue Detection/Mitigation for DevExpress Projects \n\nAn ESLint® plugin that detects and mitigates security-related issues for DevExpress projects.\n\n> ⚠️ **Important**: This package is intended for internal use only. It may contain limitations and should not be used in mission-critical software applications. \n\n## Prerequisites / Dependencies\n\n[ESLint](https://www.npmjs.com/package/eslint) v9+.\n\n## Installation\n\n```sh\nnpm install --save-dev @devexpress/eslint-plugin-dx-security\n```\n\n## Key Features\n\n\n* Security-focused rule set\n* JSX parsing support for `*.jsx` and `*.tsx` files\n* ASPX directive stripping processor for `*.js` files\n* Optional violation filter for third-party rules\n\n### Built-in Rules\n\n| Rule | Severity |\n|------|----------|\n| `no-caller` | error |\n| `no-eval` | error |\n| `no-implied-eval` | error |\n| `no-new-func` | error |\n\n### Microsoft Security Development Lifecycle Rules\n\n| Rule | Severity |\n|------|----------|\n| `@microsoft/sdl/no-angular-bypass-sanitizer` | error |\n| `@microsoft/sdl/no-angularjs-bypass-sce` | error |\n| `@microsoft/sdl/no-angularjs-enable-svg` | error |\n| `@microsoft/sdl/no-angularjs-sanitization-whitelist` | error |\n| `@microsoft/sdl/no-document-domain` | error |\n| `@microsoft/sdl/no-electron-node-integration` | error |\n| `@microsoft/sdl/no-msapp-exec-unsafe` | error |\n| `@microsoft/sdl/no-postmessage-star-origin` | error |\n| `@microsoft/sdl/no-unsafe-alloc` | error |\n| `@microsoft/sdl/no-winjs-html-unsafe` | error |\n\n### React Rules\n\n| Rule | Severity |\n|------|----------|\n| `react/iframe-missing-sandbox` | error |\n| `react/no-danger` | error |\n\n#### `redos` rules\n| Rule | Severity |\n|------|----------|\n| `redos/no-vulnerable` | error (exponential) |\n\n#### `security` rules\n| Rule | Severity |\n|------|----------|\n| `security/detect-buffer-noassert` | error |\n| `security/detect-child-process` | error |\n| `security/detect-disable-mustache-escape` | error |\n| `security/detect-new-buffer` | error |\n| `security/detect-no-csrf-before-method-override` | error |\n\n### ASPX Directive Stripping\n\nThe `strip-aspx-directives` processor automatically removes ASP.NET server-side directives before ESLint parses a `*.js` file. This action prevents syntax errors in JavaScript files that embed server-rendered values.\n\nSubstitution rules:\n\n| Input | Output | Description |\n|-------|--------|-----------|\n| `'<% … %>'` | `''` | Clears directive content enclosed in single quotes. |\n| `\"<% … %>\"` | `\"\"` | Clears directive content enclosed in double quotes.|\n| `<% … %>` | `\"\"` | Replaces unenclosed directive with an empty double-quoted string. |\n\n## Usage Examples\n\nUse one of the following configs to activate the plugin:\n\n* `required`\n\n   Add this config to *eslint.config.mjs* to enforce security rules across all files:\n   \n   ```js\n   import dxSecurity from '@devexpress/eslint-plugin-dx-security';\n   \n   export default [\n     ...dxSecurity.configs.required,\n   ];\n   ```\n\n- `required-exclusive`\n\n   This config suppresses ESLint rules defined by other plugins (including `eslint-disable` comments). Use it to disable rules that may interfere with security checks.\n\n   ```js\n   import dxSecurity from '@devexpress/eslint-plugin-dx-security';\n\n   export default [\n     ...dxSecurity.configs['required-exclusive'],\n   ];\n   ```\n\n## Related Packages\n\n- [eslint](https://www.npmjs.com/package/eslint)\n- [@microsoft/eslint-plugin-sdl](https://www.npmjs.com/package/@microsoft/eslint-plugin-sdl)\n- [eslint-plugin-react](https://www.npmjs.com/package/eslint-plugin-react)\n- [eslint-plugin-redos](https://www.npmjs.com/package/eslint-plugin-redos)\n- [eslint-plugin-security](https://www.npmjs.com/package/eslint-plugin-security)\n","readmeFilename":"README.md"}