{"_id":"@mnci/eslint-config","_rev":"33-5826e32172ee75a604e496a8853126a7","name":"@mnci/eslint-config","dist-tags":{"latest":"0.3.15"},"versions":{"0.1.1":{"name":"@mnci/eslint-config","version":"0.1.1","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.1","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"74c422a43e15907e2e382bdad9d72f69070e250f","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.1.tgz","fileCount":14,"integrity":"sha512-s6PVtNJJtRoh2NB/l10cV8kyPvXt9qL0frUrOMwycC8iHh6fEPVE6WeAcyalt1ICUwSMDHw1SOrN/DLxcjxndQ==","signatures":[{"sig":"MEQCIBN4ZpEbV3+rqGYH53nxnADLhCf7NcE49i3+pVAv9DC6AiB25LaErRElZBTy0Wptw9EKo8/Y0av/+amluzFdEKKMng==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":29457},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"541fa3777a6b33cdbac8acf59c784dfbe87611eb","scripts":{"lint":"eslint .","test":"jest"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","@eslint/js":"^9.39.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","eslint-plugin-react":"^7.37.5","jsonc-eslint-parser":"^3.1.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^61.0.2","eslint-config-prettier":"^10.0.0","@stylistic/eslint-plugin":"^5.10.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^10.8.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^9","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.1_1785224500305_0.6817966324333056","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@mnci/eslint-config","version":"0.1.2","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.2","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"35f553401f3d80c3155b6766c3b54101b1bd6a90","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.2.tgz","fileCount":14,"integrity":"sha512-MViilHhqdjFeNRhsf1u0St46EnGMGb2OlNMLgoUXWuTH7aX4vQzUWtboBsJLJMindzVPZzI5osjee3apRCk8OQ==","signatures":[{"sig":"MEUCIEO90v642jaAOkIalAUOLobS5JC2uI7kfws791gmSVE5AiEA9fieu9IDWPxOOBv4Y21PLC1O9Ogr89GLUytKPfRTJEI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":29457},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"c1f88e6659eed2127220e111f2bb52d3296c66ae","scripts":{"lint":"eslint .","test":"jest"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","@eslint/js":"^9.39.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","eslint-plugin-react":"^7.37.5","jsonc-eslint-parser":"^3.1.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^61.0.2","eslint-config-prettier":"^10.0.0","@stylistic/eslint-plugin":"^5.10.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^9.39.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^9","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.2_1785529975318_0.030939340735156584","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@mnci/eslint-config","version":"0.1.3","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.3","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"723d8da11b43350c4d8b601b6dd1af1496c7bbc0","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.3.tgz","fileCount":14,"integrity":"sha512-I4IQXexPRNoDIhDy1SH8lGO1qK9Yz/J9DxZAOJp0G0dnNUfRavjno20ZD0tmZ5N+XGrridwXRlxv2QXURAUfKw==","signatures":[{"sig":"MEUCIQDUF6B5cspuRkQ9dcrN8ir0bPfPKHosIhXZ0IMnwklA0QIgfmMvCvzs5ugn8uz224hMFuPRehKUHMW7FTyigTsvL4M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30246},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"de4617dad25dd726b8763262e19e6aa1dac14ffb","scripts":{"lint":"eslint .","test":"jest"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","@eslint/js":"^9.39.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","eslint-plugin-react":"^7.37.5","jsonc-eslint-parser":"^3.1.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^61.0.2","eslint-config-prettier":"^10.0.0","@stylistic/eslint-plugin":"^5.10.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^9.39.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^9","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.3_1785535826948_0.2824449052439293","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@mnci/eslint-config","version":"0.1.4","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.4","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"44a9a761ae48293957a638cd178c36d2206fc7c7","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.4.tgz","fileCount":15,"integrity":"sha512-JO2Ju+eJNUR+7+ykR68pKkHAK7W9HrbHUbImFK2xo+4hZbp+cPT1FOwuxBng9hDE3kpWsnqgRRSmowAFZgkmXQ==","signatures":[{"sig":"MEUCIQD+WLwiQ5MXbUkNCCA1OCFFLgltAgueimj+OctIjobN7gIgZqmHBtT08xMX9yxAb6E5Zi6ry0Ed5g6uGfzRYBV/CZ0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":39723},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"60b8d92023bc49c08f00cc58307a2a16b51c3a17","scripts":{"lint":"eslint .","test":"jest"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","@eslint/js":"^9.39.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","eslint-plugin-react":"^7.37.5","jsonc-eslint-parser":"^3.1.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^61.0.2","eslint-config-prettier":"^10.0.0","@stylistic/eslint-plugin":"^5.10.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^9.39.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^9","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.4_1785598251215_0.7872718915385442","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@mnci/eslint-config","version":"0.1.5","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.5","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"f9fb3002e8a8c5b153d3ecda84c8b6cf3324e4db","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.5.tgz","fileCount":15,"integrity":"sha512-LKdwV+Yn9h5e98iZglsPGRUd/RlOcxYsu+FlLS3meUBLDV+BY5Z4ewsSypHMWYcCGUocHL9tWoGX+EgB1jD4rw==","signatures":[{"sig":"MEYCIQCsjK2645Ro0c46Q7LJfhimeEhNW+dtdVQAA7fyM25epwIhALUP8RPjJOOKD/uC9Hb9mdT/exy7fzJfiXwQLsLNQcfv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41981},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"bcdf06c050262c95d060fa0197dbc5c8ca08eaac","scripts":{"lint":"eslint .","test":"jest"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","@eslint/js":"^9.39.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","eslint-plugin-react":"^7.37.5","jsonc-eslint-parser":"^3.1.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^61.0.2","eslint-config-prettier":"^10.0.0","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^9.39.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^9","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.5_1785599674116_0.11666157282314926","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@mnci/eslint-config","version":"0.1.6","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.6","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"43b6d6b928fea86775e3cf8564143212c90d0e92","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.6.tgz","fileCount":16,"integrity":"sha512-6AAJ0MODh+O4CiC4ZwYq31TtqZJx89HHDIDpBeXLMcVLW8TpHOCYj5tD21lYPtQC7F9dmPWzTTZUBdK8eKMU5A==","signatures":[{"sig":"MEQCIHMQR8WJfWduNLsvsdvmz+yughRpCS6gul7LpO/Xc6ViAiAV8Gl9BxYVZcI23zij7HcaW/CaV2JnI4i0ZJNFDP9F2g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49692},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"2c99acc9dae9c3a03795c155fe29b5939e21cf0e","scripts":{"lint":"eslint .","test":"jest"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","@eslint/js":"^9.39.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","eslint-plugin-react":"^7.37.5","jsonc-eslint-parser":"^3.1.0","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^61.0.2","eslint-config-prettier":"^10.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.65.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^9.39.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^9","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.6_1785615709654_0.6039144004740769","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@mnci/eslint-config","version":"0.1.7","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.7","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"fc0a6afec422f8e213e8ba8f699181f88ae79fa3","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.7.tgz","fileCount":18,"integrity":"sha512-6wzu3TT+cnbqOThDmzxQXPtGgH3re9iE915vaMikEDq8kl+Jwh3OQGIKvN46hkjGabgy/KC70Wc1PEL6coqd8g==","signatures":[{"sig":"MEYCIQDt4B49Ivn2vyqvPO+PS/5BVkmgZRqOPd3xx0ZcCez7OwIhAOGbaQm5KOA/OyGo3R0lt4cAx0NVBTK0J5SYkvR0mDZU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":56854},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"cd7086047ca3909fb23727e5a8175c5fda7845a2","scripts":{"lint":"eslint .","test":"jest"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","@eslint/js":"^9.39.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","eslint-plugin-react":"^7.37.5","jsonc-eslint-parser":"^3.1.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^61.0.2","eslint-config-prettier":"^10.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.65.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^9.39.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^9","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.7_1785623439982_0.038161451950377234","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@mnci/eslint-config","version":"0.1.8","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.8","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"328fa3b3c191191263bcc77c5553623c4e44828f","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.8.tgz","fileCount":18,"integrity":"sha512-epNG72K4EbvsVFztyT+hoX13LCzSZKRAw1r3uH16VqYHkl8jtsc7rWCqX+ycVwYNykW6JteriGmcUgwfVS7XOA==","signatures":[{"sig":"MEUCICHDVpbp8Q4pEG+Z4at8wrp/5osebh/P9WrllKMsL1TAAiEA32Mymopx1Xs2lMOnWk4EIc9rFxH2R3W/HoDuc0ICWTo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57721},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"bf38992b20c2ac5c6315dcb3e0d91c5a72859b29","scripts":{"lint":"eslint .","test":"jest"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","@eslint/js":"^9.39.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","eslint-plugin-react":"^7.37.5","jsonc-eslint-parser":"^3.1.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^61.0.2","eslint-config-prettier":"^10.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.65.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^9.39.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^9","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.8_1785651962764_0.8991973816753456","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@mnci/eslint-config","version":"0.1.9","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.9","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"6cb28b6f753739e506a59b4a747f08413d19d2d6","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.9.tgz","fileCount":18,"integrity":"sha512-n6CFafyg8VoVlJQDyz2YT1Z/MGpDN5MNX8/5Mh6AP7aH7h3s5ns1rSP6Z6Q22VnW5A+fuQZyEzu1mVoaqpkNQQ==","signatures":[{"sig":"MEQCIEPs5Oar1vbfxT6kKz4+wmvcEkuxVOb9FTnWAyMmsWLwAiBWLWTKl9Mh+feo4n9D1IFW34I/uR7VsTJoYyBq+z4Lvg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60762},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"0083936aab8d19354712ac8bf81cc5510a75d8e2","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","@eslint/js":"^9.39.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","jsonc-eslint-parser":"^3.1.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^61.0.2","eslint-config-prettier":"^10.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.65.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^9.39.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^9","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.9_1785655606414_0.3149212438027731","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@mnci/eslint-config","version":"0.1.10","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.10","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"0a08a7c5cbe25a24c214a96b0966b48623af8a1e","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.10.tgz","fileCount":18,"integrity":"sha512-1jdz9T2wmUIrFvZaP/bOCmXF+uWwQbc0BBfMsmIXSUqCMdENMrBKEnoP7Lvnklgfl8CxVE3RgdlgmAKM0aProg==","signatures":[{"sig":"MEYCIQC3ZmLRdr5p6ZTJljcx85mFLnUxCA8ThsbAy4dOtEPTeAIhAOCoOygoh28BHGBw7GAmGhDxepCp39l/R7if+WNxkPYg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":61820},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"9576b192d63f9cd97d0c4c51aa08530517dcc87f","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","jsonc-eslint-parser":"^3.1.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-config-prettier":"^10.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.65.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^10.8.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^10.4.0","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.10_1785662923817_0.28007554416370284","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@mnci/eslint-config","version":"0.1.11","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.11","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"0a20db54ee1b1a745fac5c43d9314af9a918d7c4","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.11.tgz","fileCount":18,"integrity":"sha512-4yTE7kZHBwJwz+qXfoV2RAMI1EwJ4oh+t9xS9wxb1hdR1qLZ3TkjrLoLOHuXqDz7fgHIT4jmUctD9lWlvFqFfA==","signatures":[{"sig":"MEUCIHhXV2QbXxkdkxMCy90izBV4lkMYXGNbRLNjBg7RICj1AiEA57xoozFLm8YSsCo4/VitEs7pqtUJja5Isqj1XJTnAkE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":62581},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"5a229703865fc6d27a5c170f108c3f7e479626a8","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","jsonc-eslint-parser":"^3.1.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-config-prettier":"^10.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.65.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^10.8.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^10.4.0","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.11_1785687354283_0.2196773053630212","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@mnci/eslint-config","version":"0.1.12","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.12","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"64e5b1687b4b34832e3e08b6ac5af1a6ee22a643","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.12.tgz","fileCount":20,"integrity":"sha512-Qk9ZQF58Udy0NdWuKHucOj4Ir97IZP1DIyIiJHv882Xjv1lDfNB7tuupugy4b+wxxPopnMMhsvVePHuxcwkubw==","signatures":[{"sig":"MEUCIQCzqAjeoVI3DhUDsQN4nrlwTps+JNeOCzHrZoKDmTKbZgIgEVM+6kpqH2sw3FzDYuaH0JxPdBUBNq6dS7i9exbh+q0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72261},"main":"./index.js","type":"module","exports":{".":"./index.js","./prettier":"./prettier.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"6366d93e42f35ee70956df281f3b55f85ac080d9","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","prettier":"^3.8.1","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","jsonc-eslint-parser":"^3.1.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-config-prettier":"^10.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.65.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^10.8.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^10.4.0","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.12_1785709528882_0.7614594844526452","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@mnci/eslint-config","version":"0.1.13","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.13","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"9d1c1d37ee81d21e0caabb059faeaa5cdc504fbb","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.13.tgz","fileCount":20,"integrity":"sha512-JIwgTegESRsbd9byIkQBv8Bj98YNtIz9dOa2aGo9uf615vfoPR8xaIbKt1YAsCh3QjUPvM5AQGJ3FXzRbaVt2A==","signatures":[{"sig":"MEYCIQCCL7PSX0uxREyTTtlT6hrFcRQlaUmSyNDj5i+Rz/C5uAIhAJmZUr+/ydckUaC2lzEAkgTZKaf+8LGWnbbQyDn/Tcws","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72753},"main":"./index.js","type":"module","exports":{".":"./index.js","./prettier":"./prettier.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"937f03f8069122b2bef3f6e9acf448d111a9b8d0","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","prettier":"^3.8.1","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","jsonc-eslint-parser":"^3.1.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-config-prettier":"^10.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.65.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^10.8.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^10.4.0","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.13_1785742485246_0.7170537550061757","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"@mnci/eslint-config","version":"0.1.14","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.14","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"fb91233604fbb74be59325b27e5cc2ef2acc4b1e","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.14.tgz","fileCount":20,"integrity":"sha512-/XslR5pGKgXyldPIptov7H6D4gHfyxg9d4htRDm/peerj1xpr1CznEIqMfyMkQSVxMrc56Yj35t33tivbIvKWQ==","signatures":[{"sig":"MEQCIGBRVSdIFwSgDvjrVIq+j6XSRaYzAZuDXiRdBTgB2h4BAiBZA1wExWXs0JntiIpxLY6/WR9a/ySCZgpbmDx4y+vnOA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74762},"main":"./index.js","type":"module","exports":{".":"./index.js","./prettier":"./prettier.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"0ef17098fb8c01252cea5b67239b7e42128cbc64","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","prettier":"^3.8.1","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","jsonc-eslint-parser":"^3.1.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-config-prettier":"^10.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.65.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^10.8.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^10.4.0","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.14_1785748665507_0.9941364921986022","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"@mnci/eslint-config","version":"0.1.15","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.15","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"9bff33bada1cc1f3aa90d660a08195fcca8ecd72","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.15.tgz","fileCount":20,"integrity":"sha512-5SRXibPDWiELdMn/ZfnQNnbVV4ElVPBGuIpW9UmQo8Ltx0QCp4UvvxiFlZQ83WDGOAzQL/GTX25fX/0TaswZ2w==","signatures":[{"sig":"MEUCIDFrD9mvifl+D1LeZ7mYihYmV70BtKCA5UhExlb2A8ktAiEA+NcGeNS12+IlW9ALgSE66poTF0CnAiFYvg/LzQ5z85s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74762},"main":"./index.js","type":"module","exports":{".":"./index.js","./prettier":"./prettier.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"a101911559ceeb2f9f8818a7883f34fb85dafada","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.16.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"globals":"^17.7.0","prettier":"^3.8.1","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.2.0","jsonc-eslint-parser":"^3.1.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-config-prettier":"^10.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.65.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^10.8.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^10.4.0","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.15_1786082772940_0.5075945592887567","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"@mnci/eslint-config","version":"0.1.16","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.1.16","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"a0d94e53621d4adb7da7372ff14a1f932d50e071","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.1.16.tgz","fileCount":20,"integrity":"sha512-RtSfTz+WjHkCMMcYBTyWnez/5Q97fzn2ytUgKYw41lRGu8jtOBhqmyCE15HMokYBXQDOz+3GPEEp8S7cJknOhg==","signatures":[{"sig":"MEQCIH/vsw6pEBhkpB8IVJkczjk44UCBz6VdMaferadmNIgBAiBzlPcHnrZPxSLR5mRL4d+jiw6HsLUmb90AUhv/mt/gPQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74762},"main":"./index.js","type":"module","exports":{".":"./index.js","./prettier":"./prettier.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"4f21b541af66b3b49af31fe143189d729cd8f8b8","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.17.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"globals":"^17.7.0","prettier":"^3.8.1","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.1.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-config-prettier":"^10.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.65.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^10.8.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.0.1"},"peerDependencies":{"eslint":"^10.4.0","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.16_1786730930466_0.02351080864840971","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@mnci/eslint-config","version":"0.2.0","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.2.0","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"ead15a27608e8aac95408e7e5248b6d6ed4a9a7d","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.2.0.tgz","fileCount":19,"integrity":"sha512-i8H2nua3wo5bCRMmQVercWL25Iw0q5ByfhowbCda0+VcFn2MSVkA3sSIrQgCX3pj3qhghINZIo0UuodxUbQZRQ==","signatures":[{"sig":"MEUCIGCFuKGyAPTsOudIBrqmEUzf7EA5qeCIftpi/38mHSscAiEAqKRSFqwrTjnTTLr+iSWfY0XyfWTsQHHCF3VWpkxcjMI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":77322},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"bcf1eff0d9ee2ea17a4e523682ac2916cc6f3b43","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.19.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.1.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.65.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^10.8.0","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.2.0"},"peerDependencies":{"eslint":"^10.8.0","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.2.0_1787434276682_0.6534402842504687","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@mnci/eslint-config","version":"0.3.0","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.0","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"d94f5f5cc0d43e70193764ff8cfc72549a99124d","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.0.tgz","fileCount":19,"integrity":"sha512-HlNuhoS6ORP38Hh2PrwxcYUrcigjm2ECnPwh7ZwTwf7C2XkMOFoA3Bpz+cTeafGNidj+d2G3rql6lpJrclIlww==","signatures":[{"sig":"MEQCIDMdq53Re4TN4qbpN5f6HT5O60WXO9skEFn17qlzO1xiAiAg7uhjTm0U4om1Dl+JSY1eMovjwKDG0yEPlyLI5Gmprg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78356},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"48620fb58a8a9050384bff87081b1a4430337000","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.19.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.67.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^10.8.1","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.2.0"},"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.0_1787437450443_0.08876462439800159","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@mnci/eslint-config","version":"0.3.1","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.1","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"f9aa33cb3ab903b4d79dcecbb08bfe73aa72a3af","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.1.tgz","fileCount":19,"integrity":"sha512-FIdceYt5tbKZsYOPwadCx0h837KJ6VFz5JKI4TNxDoHygy0pk8dyQED9UOaPy4cLu8JzzWsWmv4WS0U+nNn/7Q==","signatures":[{"sig":"MEYCIQCmY/xbMALk9xXXEOF1gvGhAT8yBTe5L7Zn2iUaffIjggIhALigoOo9WUOugO88l7msPYaqUtLjLLiP0AjO6YEaB4GO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79112},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"701f9b1671ce4e1a2b38ce1686365ec7ea30f2aa","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.19.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.67.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^10.8.1","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.2.0"},"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.1_1787469515229_0.6409037521367986","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@mnci/eslint-config","version":"0.3.2","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.2","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"3c24ade1d0c040e603062d1636abebb6ec60887c","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.2.tgz","fileCount":19,"integrity":"sha512-ixheThHzksag77tp7VMk+bfIxhhfIYkJr9abzcTF4/6wGWDhOl5oJzs6gvAGDbzh0jw05hJa9BAMkdFWWdzk3Q==","signatures":[{"sig":"MEQCIGZ2c2pxEUu9FA7LKKUucXgn2B8Iq+KWy1L1/jW36cmFAiBPf/y35Lg3a6FLhGEcewr+9UI6kM7ZiL0qYgVKjdvhog==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79112},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"91619c33f8624ee64c7bc5ca55403b5ff1434463","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.19.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.64.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.67.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.64.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^30.4.2","eslint":"^10.8.1","ts-jest":"^29.4.11","typescript":"^6.0.3","@types/jest":"^30.0.0","@types/node":"^26.2.0"},"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.2_1787604310373_0.981765625228157","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@mnci/eslint-config","version":"0.3.3","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.3","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"5f3df9628f931ece16bcfdfcffd986d75efbe782","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.3.tgz","fileCount":19,"integrity":"sha512-8t5c0NY8R5X881u4iNKWowXvlY28tiXmsGKQD49evftUFUe0KiMXgpwxUvh3kMTPptXkOu3+6YSrS+At0m/HGg==","signatures":[{"sig":"MEUCIDrT1eLq7ScKS+zxE7cc6V/8fgeHtUEskP6nH82wR2feAiEAmwFDD8+kt4zcvhiS3xL0KRYy+rlpleMCXgzu6bZUt1o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78922},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"0db2637714eb0c353d7c4f36a70423c1af28c892","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.19.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.65.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.67.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.65.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.3_1787778611763_0.9294029704955467","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@mnci/eslint-config","version":"0.3.4","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.4","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"1262264ba0d7dd05eb9e242075ec35ccc6490518","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.4.tgz","fileCount":19,"integrity":"sha512-Y5i8meUqYoJjXnG405fAfpuxgNFLuCwxKy29vZIQikBBe+JkeI6ELc+buZTh3AZ/Z13GofgXzFGiSluaAPrnDw==","signatures":[{"sig":"MEUCIHkH2yotX0H/IufTgnOrVz/j3hmmsJt04C5wLapKbCpnAiEAmT8+16gwvdXXoojGy5jemTcPdBXZ49PJ7oRfQ+Zb4Z8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78922},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"21ac537785c1815281fc816974d8b775a702e82b","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.19.1","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.15.3","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.65.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.67.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.65.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.4_1788171842960_0.8082950652268119","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"@mnci/eslint-config","version":"0.3.5","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.5","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"0cd8a3622c815e74846b0f92341bfaf92f02ec05","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.5.tgz","fileCount":19,"integrity":"sha512-Fg0OisElKaXA2wrnai6TO0lAtOloa31YXI79xWIA+Aeo1FyUkQsmsQN/f1/YwQVMvZE0ZMXOowCl3zbBr7ORdA==","signatures":[{"sig":"MEUCIQDZQf/UbiaX3sHmTxC9c18raEka0l6PeDato+pmz9nVGAIgTREYhvZAJMKu4M3eHIN+s/94zZjDe7GZU/TmPamMds8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78922},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"5ea6abcf30ef8f331178e984551725d3acc0ad40","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.19.1","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.16.6","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.65.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.65.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.5_1788502027374_0.13579361838976234","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"@mnci/eslint-config","version":"0.3.6","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.6","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"7516abcea9790702d218e2f7a757d4380b28df6f","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.6.tgz","fileCount":20,"integrity":"sha512-cQGtuQFdfXawEzcaGpLggAku7lOG1gFk4e6yNzpBD5qDGz9oYtuvd2YflpWwpIhP3eWQ/35KTPl5tyXGGtGL8A==","signatures":[{"sig":"MEYCIQDkHqQGohTv+/42IAGqDOhXZGhpztMPaJizB+HZPgYKkAIhANwCtrzkhrV/syURmsBRW3AxAkdQ8kj8FPk9dKjFlgEZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":87616},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"e21aa1d804c1e8167a7e8be3e1e6ff10f21954d8","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.19.1","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.16.6","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.65.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.65.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.6_1788782123740_0.9368947222094519","host":"s3://npm-registry-packages-npm-production"}},"0.3.7":{"name":"@mnci/eslint-config","version":"0.3.7","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.7","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"db39ff28c25ffd8c6f4df3cc70c54e564d9e8876","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.7.tgz","fileCount":20,"integrity":"sha512-ckQBe74WlRT8AASihSUY7NT3kUyOYhnvM1jrpJp/QfcRT56RQrm19niYT6HCnZnLgaelMteoZyOH1ayWPr+2DQ==","signatures":[{"sig":"MEYCIQDpJSlX9iXqOI2gGaldLen3sdxGT76AYJ3EkpRSk7dR5AIhAMgnfijx77wvwogbkW7wbgIc+E2CFwe/lrUOgMpqX13M","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIDllmlZgFU6kVSjLPV3z3X+RQOJ1QsE+eqxfljKfpNWvAiEA3ydMXO69CPZdz86HB3s8PxUcNsVkaaOsIlMVpWwsWdI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":87616},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"cbe2bdefdc78447a4065088255c6f5e36e1f66fb","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.19.1","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.16.6","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.65.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.65.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.7_1789162484801_0.49364047526333077","host":"s3://npm-registry-packages-npm-production"}},"0.3.8":{"name":"@mnci/eslint-config","version":"0.3.8","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.8","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"45baa32014916a008c570c882762b0e12b0739a2","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.8.tgz","fileCount":20,"integrity":"sha512-UY3KhKg0FwAiBdL5pij+q7J7GtEMOStjq//vBJsD4CXtdmqn8liM2GDX1MCrUQw6L41SQAMkzsbMhdStxbWVNA==","signatures":[{"sig":"MEUCIES/8RVLxmAEwanu216xwm0mMIGiDly4EyJjgoGhw5vjAiEAyhZ9acyVTDjxRu8uP4yE0dRSo5tu0QcWeeyA2pkdbCA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGV7IXZqlMlkrDK25FNZ/35LPAaAue0XcruVvUTBZLqNAiEAvnGqTniTObMWSloc6J+pK2dM+XYfxBGjxOa4MCYAotY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":88580},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"bf9e852f962dd4a6d31fffdf68e7969f668d3044","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.19.1","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.62.0","eslint-plugin-jest":"^29.16.6","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.65.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.65.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.8_1789631388805_0.6689017379400839","host":"s3://npm-registry-packages-npm-production"}},"0.3.9":{"name":"@mnci/eslint-config","version":"0.3.9","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.9","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"442e9a2cc28d42b0953c3a0e2c9c3dbab4e0e627","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.9.tgz","fileCount":21,"integrity":"sha512-VJylNi/cQxrLFYW8FWqf8V8Mkh1p7lIZT13IMqwmZaPZNYh2M+Wdgal0Ay/2CEKxsuM9SYeR0vB8CJvvb19ypw==","signatures":[{"sig":"MEQCIH8fzWDpCidCBkucYj/YpQld/mXMBM6ICvDrJjrC9Dd2AiAs2gJAc0HkIFlMBj8I3nqq+2oF0MUTusv9xU/ZHiD+/A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQC/lbTyPnvXCNpyuB/R4jkIcNyfZ9GHxuS183tRz38imQIhAJ9hux/t7MULtRU38lC11V9bzKX6F44Ks03uII/qDKOF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100752},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"8eeb9987f44dffbd7670c97f81a7bce526f0c31b","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.19.1","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.69.0","eslint-plugin-jest":"^29.16.6","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.65.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.65.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.9_1790099218591_0.28775121512000745","host":"s3://npm-registry-packages-npm-production"}},"0.3.10":{"name":"@mnci/eslint-config","version":"0.3.10","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.10","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"c7f9e0d39d39198b0f6e710fea09beb7eeb5078e","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.10.tgz","fileCount":21,"integrity":"sha512-Qt13v26UShzugZRng0hFJfumi3tGpoerHOEnuZt12ja+iOBzfpk51H++xo9GVJUk9ttijJDMvEl5H9EcL5aZnw==","signatures":[{"sig":"MEQCIBOLN2As3f5CdegACLdI45Hgjn5GsHBoNlvL1VSvqooZAiBTmVsQnXYBhAGYKB76Y7V6/NYaxPhxYRS57wCr6u7W6g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCBFCWv1ZpH0k4omkp06D06Vpe7oEka+HqCquVULbt2NAIhAJQ2IeO5DBy+y6AoKW69YE4VlS5gd2ILq46g6mld/lss","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":102202},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"601766594cdab1e559d6ea2061345b457bff8567","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.20.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.69.0","eslint-plugin-jest":"^29.16.6","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.65.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.65.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.10_1790155193791_0.15372701241430908","host":"s3://npm-registry-packages-npm-production"}},"0.3.11":{"name":"@mnci/eslint-config","version":"0.3.11","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.11","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"30888554d4c431fd9ac2081768d6ffbeeae97a31","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.11.tgz","fileCount":21,"integrity":"sha512-uxdlfXPTApjgFiUPQJbfx6hF28XHpgvI7MeIPgppg++bXd1jXF1tKaeAyShJ4xuwa8NJQ3spKlku5qMxmHlpDg==","signatures":[{"sig":"MEYCIQDC+zQd1j1AtLUVY9lwW+fV5QQleKF7NWfpuE4SbhC4igIhAI4ydr0Zjz27pGAW28/mmIpJYWMuA5bf57r8J5VbMhsh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIH7Lr4ejSlRk8ZkL5U6Q135FOYjaOEP9nIVaZCq5HVHoAiEAh3a0BWX/h7VfpKDHIMkootjriQErFcV1hYbOHCsVeCk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103857},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"ee7d4cdad4f092757b39c3b9fdbaf8a2c7c644a5","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.20.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.69.0","eslint-plugin-jest":"^29.16.6","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.65.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.65.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.11_1790182243933_0.48684067038876755","host":"s3://npm-registry-packages-npm-production"}},"0.3.12":{"name":"@mnci/eslint-config","version":"0.3.12","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.12","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"2ca5f32aa05a93f2874a6153d1d59d9e7967926b","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.12.tgz","fileCount":22,"integrity":"sha512-eZndp+znX5mNnMnBTeK6pLrMobPfHd9ZQ1e1Of1wLwc8df4lUySpdvYOSHBkMFghijXWdanQMvRR5wdRd6mJ6g==","signatures":[{"sig":"MEUCIQD4z2bmzf2RxIbsgZhBhtWhqYgdmJP5wwJZcctgHHVrcQIgLdeFA1C0/uNLFTnxZKaCrkuGAvvcEweq8AJ0Sd/UXkQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC49LYKYlVH1zs38PJFI0+GhpIIlQjij98pX2KtkshsuwIgBzHadmvcad7r7pPuDeu9XiG+MZhUyE6x4PHRwJd/q+A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119203},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"5a6ea5b9a24c1dd2ebeb0ca063dddf00438cae3c","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.20.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.69.0","eslint-plugin-jest":"^29.16.6","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.65.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.65.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.12_1790280422752_0.10810288137129631","host":"s3://npm-registry-packages-npm-production"}},"0.3.13":{"name":"@mnci/eslint-config","version":"0.3.13","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.13","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"f084c556c0997e0b9eb6a0a124ae789565685851","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.13.tgz","fileCount":22,"integrity":"sha512-uFwMINng36i1iy1wUM0SyE86r0irc4p9kukP+6BjUjNuUvsFaBp+ESyoEIFuiGC9FqKRreytiZbz7infW0SV1Q==","signatures":[{"sig":"MEUCIQDpqu8XS8ZGZxP7hWqH2TZ4uXhZB77ki8KCoJOYrMlhwwIgTD+Yjj0Wt39Coix6hLmHneYoCWVo65MzOJatEFg25p0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD52pw2GBjuFY5ARhXFDFK45ZeuEEQkY3IT/ZJ06F1A0gIgVqyt6TjleemYMkcMS33+tTvm11M12UQKe/fROSBh5lI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":120598},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"2d37704659f147dac14a099b63f9b774edb305af","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.20.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.69.0","eslint-plugin-jest":"^29.16.6","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.65.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.65.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.13_1790415088566_0.10161433183399682","host":"s3://npm-registry-packages-npm-production"}},"0.3.14":{"name":"@mnci/eslint-config","version":"0.3.14","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"author":{"name":"Eduardo Russo"},"license":"MIT","_id":"@mnci/eslint-config@0.3.14","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"homepage":"https://github.com/russoedu/MoNecromanCi#readme","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"10283a99328705f217088ab7f479dc52c64c6029","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.14.tgz","fileCount":22,"integrity":"sha512-SReIetPkeko2d8effaqR+/uaigNiiV4pg2axyFuDQsbMUUgxwdrTSH42jKlXHelnI0S/eYxGNkjoSX7zgUFZxQ==","signatures":[{"sig":"MEUCIQDl+P+msqC0EJKDYX9Kgnd2yEiFRFIyQ6zOuD11Q//70QIgH13a1ZbX6pEX41rVbGbPj2FQSdJjL3OfJ1+Ff/8EJbI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEFLMYQZYyGYfluvxSzTacKEpr80qxwLAzzz6AV1jq/NAiAXBXVP9nbNB667GJt9f4BLqWe9nvZbfP46ALSN69mYyg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":120598},"main":"./index.js","type":"module","exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"e772492faa936ece4c7cb7ad6a54d32dfdeb4470","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.20.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.69.0","eslint-plugin-jest":"^29.16.6","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.65.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.65.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.3.14_1790580556455_0.6712270095775155","host":"s3://npm-registry-packages-npm-production"}},"0.3.15":{"_id":"@mnci/eslint-config@0.3.15","bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"dist":{"shasum":"775e5a6120dd1d17c60ebe2cae948ffff9763504","tarball":"https://registry.npmjs.org/@mnci/eslint-config/-/eslint-config-0.3.15.tgz","fileCount":22,"integrity":"sha512-Q2ZSzUXfapYm62dm+0QKssvIGCj2lEpbzKkrLaY9+RSVy6rJGhsj4fTknNsCTDA0M5lObpOrUUekThiOKzr9OQ==","signatures":[{"sig":"MEYCIQDVH2yagGb2mntiCyVu75Q7kSgW7es5a5PZemtYd3S8+gIhAK/Cc7ojXfFQfIAh0vaQCKr7FzS69/wtAf2YUYRqG4sI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIELCjeOsDkV0g020lhe57MTvHkRPMNW9hryjHYVIhOAsAiBTOiabuOMJ5ttO6F798CRw5nexRPb9N5hVFrNr3HhC9Q=="}],"unpackedSize":120598},"main":"./index.js","name":"@mnci/eslint-config","type":"module","author":{"name":"Eduardo Russo"},"exports":{".":"./index.js","./configs/*":"./configs/*.js","./package.json":"./package.json"},"gitHead":"a8a27bbab11cf41c626e92cbff0f7d50fe60cbad","license":"MIT","scripts":{"lint":"eslint .","test":"jest","typecheck":"tsc --noEmit -p tsconfig.typecheck.json"},"version":"0.3.15","_npmUser":{"name":"russoedu","email":"russoedu@gmail.com"},"homepage":"https://github.com/russoedu/MoNecromanCi#readme","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"_npmVersion":"11.21.0","description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","directories":{},"maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"_nodeVersion":"24.21.0","dependencies":{"globals":"^17.9.0","@eslint/js":"^10.0.0","@eslint/css":"^1.4.0","eslint-plugin-n":"^18.2.1","@eslint/markdown":"^8.0.2","eslint-plugin-yml":"^3.5.0","typescript-eslint":"^8.69.0","eslint-plugin-jest":"^29.16.6","eslint-plugin-toml":"^1.5.0","toml-eslint-parser":"^1.0.3","@html-eslint/parser":"^0.65.0","eslint-plugin-jsonc":"^3.4.0","jsonc-eslint-parser":"^3.3.0","eslint-plugin-regexp":"^3.1.1","eslint-plugin-promise":"^7.3.0","eslint-plugin-unicorn":"^72.0.0","eslint-plugin-import-x":"^4.17.1","eslint-plugin-jsx-a11y":"^6.10.2","@stylistic/eslint-plugin":"^5.10.0","@typescript-eslint/parser":"^8.68.0","eslint-plugin-react-hooks":"^7.1.1","@html-eslint/eslint-plugin":"^0.65.0","@eslint-react/eslint-plugin":"^5.18.1","eslint-import-resolver-node":"^0.4.0","eslint-plugin-react-refresh":"^0.5.3","eslint-plugin-unused-imports":"^4.4.1","eslint-import-resolver-typescript":"^4.4.5"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^10.8.1","@nx/eslint-plugin":">=21"},"peerDependenciesMeta":{"@nx/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/eslint-config_0.3.15_1790888716474_0.3384124391283072"}}},"time":{"created":"2026-07-28T07:41:40.117Z","modified":"2026-10-01T21:05:16.748Z","0.1.1":"2026-07-28T07:41:40.465Z","0.1.2":"2026-07-31T20:32:55.465Z","0.1.3":"2026-07-31T22:10:27.106Z","0.1.4":"2026-08-01T15:30:51.363Z","0.1.5":"2026-08-01T15:54:34.264Z","0.1.6":"2026-08-01T20:21:49.792Z","0.1.7":"2026-08-01T22:30:40.113Z","0.1.8":"2026-08-02T06:26:02.899Z","0.1.9":"2026-08-02T07:26:46.578Z","0.1.10":"2026-08-02T09:28:43.969Z","0.1.11":"2026-08-02T16:15:54.438Z","0.1.12":"2026-08-02T22:25:29.042Z","0.1.13":"2026-08-03T07:34:45.394Z","0.1.14":"2026-08-03T09:17:45.685Z","0.1.15":"2026-08-07T06:06:13.081Z","0.1.16":"2026-08-14T18:08:50.637Z","0.2.0":"2026-08-22T21:31:16.834Z","0.3.0":"2026-08-22T22:24:10.607Z","0.3.1":"2026-08-23T07:18:35.380Z","0.3.2":"2026-08-24T20:45:10.572Z","0.3.3":"2026-08-26T21:10:11.899Z","0.3.4":"2026-08-31T10:24:03.102Z","0.3.5":"2026-09-04T06:07:07.497Z","0.3.6":"2026-09-07T11:55:23.872Z","0.3.7":"2026-09-11T21:34:44.886Z","0.3.8":"2026-09-17T07:49:48.920Z","0.3.9":"2026-09-22T17:46:58.692Z","0.3.10":"2026-09-23T09:19:53.917Z","0.3.11":"2026-09-23T16:50:44.013Z","0.3.12":"2026-09-24T20:07:02.836Z","0.3.13":"2026-09-26T09:31:28.678Z","0.3.14":"2026-09-28T07:29:16.551Z","0.3.15":"2026-10-01T21:05:16.561Z"},"bugs":{"url":"https://github.com/russoedu/MoNecromanCi/issues"},"author":{"name":"Eduardo Russo"},"license":"MIT","homepage":"https://github.com/russoedu/MoNecromanCi#readme","keywords":["eslint","eslintconfig","flat-config","mnci","nx"],"repository":{"url":"git+https://github.com/russoedu/MoNecromanCi.git","type":"git","directory":"packages/eslint-config"},"description":"The shared ESLint flat config every mnci-generated monorepo uses — one root config, non-stylistic rules only, covering TS/JS, React, JSON/JSONC/JSON5, YAML, Markdown, CSS and HTML.","maintainers":[{"name":"russoedu","email":"russoedu@gmail.com"}],"readme":"<p align=\"center\">\n  <img src=\"../../assets/logo.svg\" alt=\"mnci\" width=\"160\">\n</p>\n\n# @mnci/eslint-config\n\n> The lint **and** format opinion every `mnci`-generated monorepo uses. **One\n> ESLint config, at the root, for every language in the workspace — code\n> quality, type-aware rules and JavaScript Standard Style formatting, in one\n> tool.**\n>\n> There is no Prettier and no oxfmt. `eslint --fix` is the formatter, which is\n> what makes `space-before-function-paren` — Standard's signature rule —\n> enforceable at all: every Prettier-compatible formatter rewrites\n> `function f (a)` back to `function f(a)`, so a config that both enabled the\n> rule and ran such a formatter was mutually unsatisfiable.\n\n## Why this exists\n\n`mnci` generates opinionated monorepos, and code quality is one of the opinions.\nIt used to be delivered badly: `create-nx-workspace`'s bare `@nx/eslint-plugin`\ndefault landed at the root, each `nx g` generator dropped another\n`eslint.config.mjs` into its own project, and the richer rules the project\nactually wanted lived only in mnci's own repo — never in anything it generated.\n\nThis package is that opinion, packaged. A generated workspace gets **one** file:\n\n```js\n// eslint.config.mjs\nimport mnci from '@mnci/eslint-config'\n\nexport default mnci({ workspaceRoot: import.meta.dirname })\n```\n\n…and nothing else. No per-project configs, and no formatter config — there is no\nsecond tool to configure. mnci actively **deletes** `.prettierrc`,\n`.prettierrc.json`, `.prettierrc.mjs`, `.prettierignore`, `.oxfmtrc.json` and\n`oxlint.config.ts` if an older version left one behind, because a config file no\ncommand line reads is still read by an editor extension.\n\nShipping it as a package rather than as template strings means an upgrade reaches\nexisting workspaces through `npm update`, the plugins are _this_ package's\ndependencies instead of two dozen devDependencies in every generated workspace,\nand the config is independently testable — which it is, against the real `eslint`\nbinary.\n\n## What it covers\n\nOne decision, in one package, because it used to be two.\n\n**ESLint here covers correctness, code quality, type-aware rules AND formatting.**\nThere is no `eslint-config-prettier`, and removing it was load-bearing rather\nthan cosmetic: that package exists to switch every stylistic rule OFF so a\nformatter can own them, so composing it after the Standard block would silently\ndisable all sixty of those rules. A disabled rule reports nothing, so `lint`\nwould have gone on passing while enforcing nothing at all.\n\nThat arrangement is also exactly why a formatting mistake used to produce no\nsquiggle, no message and no Problems entry — ESLint had been configured to have\nno opinion on formatting, so it had nothing to report.\n\n### The ESLint blocks\n\nEvery block carries a `name`, which is how you find it (`eslint --inspect-config`)\nand how you override it. The generated `eslint.config.mjs` ships this same table\nas a comment, so it is readable without opening node_modules.\n\n| Block name                               | Covers                                                                                         |\n| ---------------------------------------- | ---------------------------------------------------------------------------------------------- |\n| `mnci/ignores`                           | paths never linted — `dist`, `coverage`, `.venv`, `__pycache__`, `.dart_tool`                  |\n| `mnci/base`                              | JS/TS correctness — `@eslint/js`, `eslint-plugin-unicorn`, `-promise`, `-n`, `-unused-imports` |\n| `typescript-eslint/*`                    | `typescript-eslint`'s own recommended blocks (its names, not ours)                             |\n| `mnci/typescript`, `…/declarations`      | TS rules on top of them, no type information needed                                            |\n| `mnci/type-aware`, `…/declarations`      | the rules that DO read types — see below                                                       |\n| `mnci/import-graph`                      | import cycles — `eslint-plugin-import-x`                                                       |\n| `mnci/react`                             | JSX/TSX — `@eslint-react/eslint-plugin`, `-react-hooks`, `-react-refresh`, `-jsx-a11y`         |\n| `mnci/regexp/recommended`, `mnci/regexp` | regex correctness incl. catastrophic backtracking — `eslint-plugin-regexp`                     |\n| `mnci/json`, `mnci/jsonc`, `mnci/json5`  | `eslint-plugin-jsonc` — comments allowed in `.jsonc`/`tsconfig.json`, forbidden in `.json`     |\n| `mnci/yaml/recommended/*`, `mnci/yaml`   | `eslint-plugin-yml` — your CI pipeline files                                                   |\n| `mnci/toml/base/*`                       | `eslint-plugin-toml` — **parsing only**, see below                                             |\n| `mnci/markdown`                          | `@eslint/markdown` (GitHub-flavoured)                                                          |\n| `mnci/css`                               | `@eslint/css`                                                                                  |\n| `mnci/html`                              | `@html-eslint/eslint-plugin`, incl. its a11y rules                                             |\n| `mnci/tests`                             | `*.spec`/`*.test` relaxations — `eslint-plugin-jest`, plus Vitest's `vi`/`vitest` globals      |\n| `mnci/tests/mock-aware`                  | specs inside a project: `jest/unbound-method` replaces the base rule, which false-positives on every `expect(mock.method)` |\n| `mnci/nx-dependency-checks`              | `@nx/eslint-plugin` on publishable packages' manifests — only when `workspaceRoot` is passed   |\n| `mnci/vertical-slices`                   | Vertical feature slices: role-suffixed kebab-case files, a subfeature reached only through its index, no two subfeatures importing each other — only when `verticalSlices` is passed. See below |\n| `mnci/standard`                          | JavaScript Standard Style as ~60 `@stylistic` rules — **this is the formatter.** See below     |\n| `mnci/house-style`                       | The deliberate departures from Standard: trailing commas, aligned object values, `consistent-as-needed` quote-props, a blank line before `return`, two statements per line. Composed after `mnci/standard`, so it wins |\n\n`configs/named.js` fills a name in for the blocks upstream presets ship\nanonymously, keeping any name upstream does provide. A test resolves the real\nconfig and fails if any block is unnamed or if two share a name; another test, in\n`@mnci/cli`, fails if the generated comment and the real config disagree.\n\n### Formatting (`configs/standard.js`)\n\nJavaScript Standard Style, as ~60 `@stylistic` **rules** rather than as a\nformatter's options. `npm run format` is `eslint . --fix`; there is no\n`format:check`, because `lint` already reports a formatting mistake as an\nordinary error, with a squiggle and a rule name.\n\nThe rules were derived **programmatically** from `neostandard` and ported to\n`@stylistic` v5, so no rule or option is mistyped by hand. `neostandard` itself\nis deliberately **not** a dependency: it pins `@stylistic` at exactly `2.11.0`,\nwhich calls `sourceCode.isSpaceBetweenTokens` — removed in ESLint 10 — so it\nthrows on the first file. Forcing it onto v5 fails differently, since its config\nnames `func-call-spacing`, which v5 dropped. An override made it *install* and it\nstill did not work.\n\n**`space-before-function-paren` is ON**, which is the point of the whole\narrangement. Standard's signature rule was unreachable for as long as any\nPrettier-compatible formatter owned formatting: Prettier and oxfmt both rewrite\n`function f (a)` back to `function f(a)`, so enabling it made `lint` and\n`format:check` mutually unsatisfiable. With no formatter, nothing contradicts it.\n\n**Do not add `eslint-config-prettier` back.** It exists to switch stylistic rules\noff so a formatter can own them, so composing it after this block would disable\nall sixty rules — and a disabled rule reports nothing, so `lint` would pass while\nenforcing nothing.\n\n`jsx-indent` was the subtle one to remove. Dropping the deprecated rule on its own\nwould have left JSX indentation checked by **nothing**, because Standard also\nlists all sixteen JSX node types in `indent`'s `ignoredNodes`. Both halves go, so\n`indent` genuinely covers JSX — verified on a real `.tsx`. `TemplateLiteral *`\nstays, since it is not a JSX node and removing it false-positives inside template\nliterals.\n\n### Type-aware rules (`configs/typeAware.js`)\n\nA small curated set that reads **types**, so it catches what nothing else in the\nstack can — most importantly a dropped `await`, which type-checks cleanly, passes\nany test that does not happen to race, and then loses an error in production:\n`no-floating-promises`, `no-misused-promises`, `await-thenable`,\n`no-unnecessary-type-assertion`, `unbound-method`, plus four narrow ones.\n\nDeliberately **not** `recommendedTypeChecked`. Measured against the mnci monorepo\nthat preset reported 67 problems and most were not bugs — `require-await` fires on\nevery Nx executor, which must be `async` to satisfy Nx's contract regardless of its\nbody. The curated set reported 10, all real. A rule nobody can satisfy just teaches\npeople to reach for `eslint-disable`.\n\nTwo things about it are load-bearing:\n\n- **Scoped to `apps/*/src`, `libs/*/src`, `packages/*/src`** — not every `.ts`\n  file. A file belonging to no tsconfig is a **fatal parse error**, which\n  suppresses every other rule for that file _and_ fails the build. Restricting the\n  rules to the directories where generated projects live (all of which get a\n  tsconfig) makes that impossible rather than merely unlikely. A stray script at\n  the workspace root keeps all the non-type-aware rules instead of breaking.\n  `allowDefaultProject` is not used: it is fatal in the other direction too, so a\n  glob wide enough to catch real strays breaks properly configured files.\n- **`no-misused-promises` exempts JSX attributes, and only those.**\n  `onClick={async () => { await save() }}` is the universal React idiom while\n  React's prop types declare a void return, so the default setting fails a fresh\n  `react-app` on a file the user wrote normally. The sub-check that catches real\n  bugs — an async callback passed to `Array.filter` — stays on.\n\nCost: roughly 5s → 8s on a whole-workspace lint, because it builds a real TS\nprogram. It therefore needs project references in order, which `nx sync:check`\nalready guarantees in CI before the lint step.\n\n### Import-graph rules (`configs/importGraph.js`)\n\n`no-cycle` and `no-self-import`, scoped to project source. Specifically the\n**intra-project** gap: `@nx/enforce-module-boundaries` polices edges _between_\nprojects, cycles included, but nothing looked inside a project. A cycle among one\nproject's own modules runs until it doesn't — whichever module evaluates second sees\na half-initialised namespace.\n\nTwo things are load-bearing, and both fail _silently_ if changed:\n\n- **`settings['import-x/parsers']` is required for `no-cycle` to do anything at\n  all.** `languageOptions.parser` says how to parse the file being linted; it says\n  nothing about how import-x parses the files it _follows_. Without the mapping every\n  `.ts` dependency is unparseable, traversal stops at depth one, and the rule reports\n  nothing — ever. `no-unresolved` does not need it, which is why the gap is easy to\n  miss.\n- **The TypeScript resolver is not optional.** With import-x's default Node resolver\n  this reported 179 errors on the mnci monorepo, all false: Node cannot resolve an\n  extensionless relative TypeScript import. `createTypeScriptImportResolver` gets no\n  `project` option, so it finds each file's nearest tsconfig itself — a generated\n  workspace's tsconfigs cannot be enumerated up front.\n\n**`no-unresolved` is switched off deliberately**, and cannot be enabled in this\nlayout. A project consumes an internal lib by scoped name (`@scope/core`); npm\nworkspaces symlinks it, but its manifest points at `./dist`, which does not exist\nuntil that dependency is **built** — and `lint` does not depend on `build`. The `ts`\npreset has no tsconfig `paths` to fall back on either. So a completely correct\ncross-project import resolves to nothing on disk. `tsc` already reports unresolved\n_typed_ imports, and the workspace runs `typecheck` in CI.\n\n### Browser automation (`configs/browserAutomation.js`) — opt-in\n\nFor Playwright and Puppeteer projects. `page.evaluate(() => document.title)`\nfails `unicorn/isolated-functions`:\n\n```\nVariable document not defined in scope of isolated function.\nFunction is isolated because: callee of method named \"page.evaluate\"\n```\n\nThe rule is right about the isolation — that callback is serialised and runs\ninside the page, so it genuinely cannot see the enclosing module — and it\nchecks every free variable against the declared globals, which here are\n**Node's**. So no browser global exists for the callback and every one reports.\nWithout the opt-in the choices are passing string scripts and losing type\nchecking, disabling a rule that catches real scope bugs, or a red `lint`.\n\n```js\nexport default mnci({ browserAutomation: true })\n// or only where the automation lives:\nexport default mnci({ browserAutomation: ['packages/scraper/src/**/*.ts'] })\n```\n\nIt declares browser globals; it does not make them true. A file in scope may\nnow reference `document` at the **top** level without ESLint objecting, and\nthat throws in Node. TypeScript is what still catches it — `document` is not in\nscope unless the project's `lib` includes `dom` — which is why this is opt-in\nand scoped by glob rather than on by default.\n\n### Vertical feature slices (`configs/verticalSlices.js`) — opt-in\n\nFor workspaces organised as **vertical feature slices**: each project's `src/`\nholds subfeatures, each exposing an `index`, each holding flat, role-suffixed\nfiles. Off by default, because it is an architecture, not a style — turned on\nfor a workspace that is not built this way, it would fail every file on day one.\n\n```js\nexport default mnci({ workspaceRoot: import.meta.dirname, verticalSlices: true })\n// or only for the projects that follow it:\nexport default mnci({ verticalSlices: ['packages/*/src/**/*.ts'] })\n// or with extra roles, for a vocabulary the default list does not cover:\nexport default mnci({\n  verticalSlices: {\n    files: ['apps/web/src/**/*.{ts,tsx}'],\n    roles: ['route', 'component', 'hook', 'section', 'style', 'content'],\n  },\n})\n```\n\n**The role list is extensible, and for a front end it has to be.** The default\nroles are the back-end vocabulary. The ADR these rules come from also allows\n`.service` (with a recorded exception) and `.middleware`, and its front-end\namendment adds `.route`, `.component`, `.hook`, `.section`, `.style`,\n`.content`, `.mock` and `.fixture`. A React app could not opt in at all while\nthe list was fixed — every component it has would report.\n\n`roles` **appends** to the defaults rather than replacing them: a workspace\nadding `.component.tsx` still wants `.use-case.ts`, and a replacing option\nwould mean restating fourteen entries to add one. Only `file-role` takes it;\nthe other two rules are about imports, which a file's suffix has no bearing on.\n\n| Rule | Reports |\n|---|---|\n| `vertical-slices/file-role` | A name not in kebab-case; a production file without its role suffix (`.use-case`, `.algorithm`, `.policy`, `.model`, `.contract`, `.mapper`, `.validator`, `.repository`, `.client`, `.store`, `.error`, `.config`, `.enum`, `.handler`); a folder nested inside a subfeature; anything but `index`/`main` at the root of `src` |\n| `vertical-slices/no-deep-import` | A sibling reached past its index (`'../billing/fee.policy'` instead of `'../billing'`), and a subfeature importing its own index |\n| `vertical-slices/no-slice-cycle` | Two subfeatures importing each other — **type-only imports included** |\n\nThe cycle rule covers the gap `import-x/no-cycle` leaves. That rule sees cycles\nbetween *files*, and a cycle between two folders usually runs through different\nfiles on each side — a contract imported one way, a use case the other — so there\nis no file-level cycle for it to report. It was written for, and first caught\nthree such cycles in, a real monorepo where `no-cycle` was already on.\n\nTests (`.spec`/`.test`) are exempt from the role and cycle rules — a test is\nnamed for the file it tests, so it has no role suffix, and a spec is not in the\nproduction dependency graph a cycle would matter in.\n\nThey are **not** exempt from `no-deep-import`. A test importing\n`'../billing/fee.policy'` is reported, exactly as production code would be:\nthat rule is about respecting a sibling's public API, and a test that reaches\npast an index couples to the sibling's internals just as tightly — rename a\nfile in one slice and another slice's test breaks. Reach a sibling through its\nindex from a test too, or move the test beside what it is testing.\n\n### Regex and TOML\n\n**`eslint-plugin-regexp`** runs `flat/recommended` minus four rules. The value is\n`no-super-linear-backtracking`: a regex can be perfectly correct and still take\nexponential time on a crafted input, which is a real denial of service in anything\nmatching user data and completely invisible to review. Nothing else here looks\ninside a regex.\n\nThe four exclusions are a crash, not a preference. `no-legacy-features`,\n`no-missing-g-flag`, `no-useless-dollar-replacements` and `no-useless-flag`\nopportunistically reach for TypeScript type information and **throw** when the TS\nparser is present without type-aware services — which is the normal case for any\n`.ts` file outside `{apps,libs,packages}/<name>/src`, since that is the only scope\n`configs/typeAware.js` covers. A crash takes down linting for the whole file rather\nthan reporting one problem. See `configs/regexp.js` for why they are off globally\nrather than narrowing the block's scope.\n\n**`eslint-plugin-toml` is `flat/base` — the parser and no style rules.** mnci writes\n`pyproject.toml` for every Python project and nothing read those files, so a syntax\nerror only surfaced later as a confusing hatchling or pip failure. `flat/base` makes\nit a fatal parse error instead.\n\n`flat/standard` was measured and rejected: it is almost entirely formatting\n(`indent`, `key-spacing`, `quoted-keys`, `array-bracket-spacing`), which is outside\nthis config's scope — and it reports **six** `toml/array-bracket-spacing` errors on\nthe `pyproject.toml` that `@mnci/nx-python-pip` itself generates. Every Python\nworkspace would have failed `npm run lint` on a file the user never wrote. A test\npins the generated content as clean so that cannot be reintroduced.\n\nThis does mean TOML _formatting_ is unenforced. Deliberately — no linter here has\nan opinion on a `.toml`'s layout, and the formatter that once might have was\nmeasured and found worse than nothing.\n\n### Why `space-before-function-paren` IS here\n\nIt is Standard's signature rule, it is **on**, and for most of this project's\nhistory it could not be.\n\n`eslint-config-prettier` disabled it because it **conflicts** with Prettier\nrather than because it is redundant: Prettier emits `function f(a)` and rewrites\n`function f (a)` back on every run, while the rule demands the opposite.\nEnabling it alongside a formatter made `npm run lint` and `npm run format:check`\nmutually unsatisfiable — a real ping-pong, verified by round-tripping a file\nthrough both binaries, not a theoretical concern. Prettier closed the\ncorresponding option permanently, so there was no version to wait for; oxfmt\nbehaves identically.\n\nThe resolution was not to find a better formatter but to stop having one.\nTurning the rule on reformatted 82 files and reported 306 problems in\n`@mnci/cli` alone, 99% of them auto-fixed.\n\nThis is the single clearest reason the stack collapsed onto one tool. A\nformatter and a linter that both hold style opinions must be kept in agreement,\nand the previous arrangement avoided that only by having ESLint hold no\nstylistic opinion at all.\n\n## Usage\n\n```js\n// eslint.config.mjs\nimport mnci from '@mnci/eslint-config'\n\nexport default mnci({ workspaceRoot: import.meta.dirname })\n```\n\n`workspaceRoot` is optional. Passing it enables the `@nx/dependency-checks`\nblock for `packages/*` and `libs/*`, which needs to scan for `private: true`\nmanifests. Omit it in a workspace with no publishable npm packages.\n\n#### `@nx/dependency-checks` only runs under `nx run`\n\nIt needs the Nx project graph, and outside a target it prints:\n\n```\nNo cached ProjectGraph is available. The rule will be skipped.\n```\n\nSo `npm run lint` (`nx run-many -t lint`) evaluates it, and **`npm run format`,\nyour editor and any pre-commit hook do not**. That is worth knowing in both\ndirections:\n\n- A dependency problem will not surface until you run `lint`. `format` passing\n  says nothing about it.\n- The rule is **fixable**, and `format` is `eslint . --fix`. Its being skipped\n  there is the reason a `--fix` run outside `nx` cannot reach a manifest at all.\n\nThis config turns off the two checks whose fixers rewrite manifests\n(`checkObsoleteDependencies`, `checkVersionMismatches` — see below), so neither\npath is destructive now. Before that, the difference between the two commands\nwas the difference between a report and a deleted runtime dependency.\n\nIf you want the rule evaluated in `format` too, warm the graph first —\n`npx nx show projects > /dev/null && npm run format`. mnci does not do this by\ndefault: it makes every format run pay for a graph computation to enforce\nsomething `lint` already gates.\n\n### Where this differs from Standard\n\n`mnci/standard` is a faithful port of `neostandard`. Five deliberate departures\nlive in `mnci/house-style`, composed after it so they win:\n\n| Rule | Standard | Here |\n| --- | --- | --- |\n| `comma-dangle` | `never` | `always-multiline` |\n| `key-spacing` | no alignment | aligned on `value` |\n| `quote-props` | `as-needed` | `consistent-as-needed` |\n| `max-statements-per-line` | 1 (@stylistic default) | 2 |\n| blank line before `return` | not enforced | required |\n\nTwo of those interact, and it is the thing to know before touching either.\n**Aligning object values needs `key-spacing`'s `align` *and* an exception in\n`no-multi-spaces`** — alignment is more than one space, which `no-multi-spaces`\notherwise rejects. Move one without the other and the config contradicts itself:\none rule reports what the other requires, and no `--fix` can satisfy both.\n`mnci/house-style` also re-lists @stylistic's own default exceptions\n(`Property`, `ImportAttribute`), because supplying `exceptions` **replaces** the\ndefault object rather than merging into it.\n\nThe blank line before `return` is `padding-line-between-statements`, not\n`newline-before-return`. The latter is the rule most people reach for and is a\ntrap: deprecated since ESLint 4, with `availableUntil: \"11.0.0\"` in its own\nmetadata. The two were compared on the same fixtures and report identically.\n\nThere is no second file to add. Formatting comes from the `mnci/standard` block\ninside this same config.\n\n## Overriding a rule\n\nDo this in your own config. **Do not edit this package inside `node_modules`, and\ndo not fork it** — it is a dependency, so `npm update` carries rule fixes in the\nway it carries any other, and an override survives that while an edit does not.\n\nFlat config is order-dependent and later blocks win, so an override is a block\nappended after the spread. Name it, so the config inspector shows where the change\ncame from:\n\n```js\nimport mnci from '@mnci/eslint-config'\n\nexport default [\n  ...mnci({ workspaceRoot: import.meta.dirname }),\n  {\n    name: 'local/legacy-app-allows-any',\n    files: ['apps/legacy/**/*.ts'],\n    rules: { '@typescript-eslint/no-explicit-any': 'off' }\n  }\n]\n```\n\n### Options are replaced, not merged\n\nSwitching a rule off is one thing; **re-configuring one is a trap**. ESLint\nreplaces a rule's options wholesale — it does not merge yours into the ones\nalready set — so an override that passes an options object discards every\noption this package gave that rule.\n\n`@nx/dependency-checks` is where this bites, because most of its configuration\nhere is exclusions. Override it without spreading and you lose `ignoredFiles`,\nand the first symptom reads like a real finding: `rollup.config.cjs` does\n`require('@nx/rollup/with-nx')`, so the rule reports `@nx/rollup` as missing\nfrom the `dependencies` of a package that must never declare it.\n\nSo spread the exported options rather than restating them:\n\n```js\nimport mnci, { dependencyChecksOptions } from '@mnci/eslint-config'\n\nexport default [\n  ...mnci({ workspaceRoot: import.meta.dirname }),\n  {\n    name:  'local/dependency-checks',\n    files: ['packages/*/package.json'],\n    rules: {\n      '@nx/dependency-checks': [\n        'error',\n        { ...dependencyChecksOptions(import.meta.dirname), checkObsoleteDependencies: true },\n      ],\n    },\n  },\n]\n```\n\nIt takes `workspaceRoot` because `ignoredDependencies` is computed by scanning\nfor `private: true` manifests — a hardcoded list goes stale the next time an\ninternal lib is added.\n\nTo find out which block turned a rule on in the first place:\n\n```bash\nnpx eslint --inspect-config              # every block, by name\nnpx eslint --print-config path/to/file   # the merged result for one file\n```\n\nIndividual blocks are exported too, if you need to recompose rather than append:\n\n```js\nimport { base, typescript, react, ignores } from '@mnci/eslint-config'\n```\n\nFormatting is overridden the same way as anything else, because it is made of\nrules. To widen the line limit, for instance:\n\n```js\nexport default [\n  ...mnci({ workspaceRoot: import.meta.dirname }),\n  {\n    name: 'local/wider-lines',\n    rules: { '@stylistic/max-len': ['error', { code: 120 }] }\n  }\n]\n```\n\n### The one thing that cannot work\n\n**Adding a formatter.** Prettier, oxfmt, dprint — whichever is chosen will\ndisagree with `mnci/standard`, and because a formatter runs on save it wins\nsilently, leaving `lint` to fail on files nobody edited by hand.\n\nInstalling the editor extension is enough on its own: neither\n`esbenp.prettier-vscode` nor `oxc.oxc-vscode` needs a config file, and with none\npresent they format against their own defaults — semicolons and double quotes,\nthe exact inverse of Standard. That is why `mnci upgrade` deletes every retired\nformatter config rather than merely not writing one, and why `mnci doctor`\nreports a leftover as a failure.\n\n## ESLint 10\n\nThe stack is on ESLint **10** and `eslint-plugin-unicorn` **v72**. Getting there\nwas never about ESLint — it was about two plugins, and both were resolved by\nmeasurement rather than by waiting.\n\n**`eslint-plugin-react` is gone.** React correctness comes from\n`@eslint-react/eslint-plugin`, a maintained rewrite whose peer range is\n`eslint: \"*\"`. The incumbent had no ESLint 10 release at all: its peer range\nstopped at `^9.7`, and on 10 it threw `contextOrFilename.getFilename is not a\nfunction` while loading `react/display-name`, killing linting for every `.tsx`\nfile in the workspace.\n\nHooks stay with `eslint-plugin-react-hooks`. `@eslint-react` reimplements them\nand ships a config to switch the React team's plugin off in favour of its own;\nthis config does the reverse, and switches off the two `@eslint-react` rules\nthat duplicate it so a single defect is never reported twice.\n\n**`eslint-plugin-jsx-a11y` stays, on a peer override.** Its latest release\n(6.10.2) peers at `^3 … ^9`, so `npm install` ERESOLVEs on ESLint 10 — but the\ncap is **stale, not a real incompatibility**. Measured on `eslint@10.8.0`: with\n\n```json\n\"overrides\": { \"eslint-plugin-jsx-a11y\": { \"eslint\": \"$eslint\" } }\n```\n\nin the **root** manifest (npm ignores `overrides` anywhere else, which is why a\nconfig package cannot fix this for itself and mnci writes it), the plugin\ninstalls and its rules still fire. `mnci` generates that entry; remove it the\nmoment jsx-a11y ships a release declaring ESLint 10.\n\n**Four unicorn v72 rules are off, and the reasons are counts, not taste.** The\nupgrade surfaced 92 problems on this repo and not one was a defect:\n`name-replacements` (35), `no-top-level-assignment-in-function` (19) and\n`consistent-boolean-name` (13) rename a team's own vocabulary or condemn the\nstandard per-test fixture idiom — all three were predicted in `configs/base.js`\nbefore they could fire. `no-incorrect-template-string-interpolation` (10) reads\nNx's own `{workspaceRoot}` tokens as forgotten `${...}`, so it cannot be right\nabout any code that writes Nx config. The remaining 25 findings were **fixed**,\nnot switched off.\n\nThree unicorn rules this config would otherwise switch off —\n`name-replacements`, `consistent-boolean-name` and\n`no-top-level-assignment-in-function` — do not exist in v61, so they are not\nlisted: ESLint rejects a config that names a rule its plugin does not have.\n`configs/base.js` says which, so a future upgrade re-adds them deliberately\ninstead of rediscovering why they suddenly fire.\n\n## Notes\n\n- **No build step.** This is plain ESM that consumers load directly. Compiling\n  it would only create a way for the published config to drift from the source.\n- **`@nx/eslint-plugin` is an optional peer.** Its version has to track the\n  workspace's own Nx version, and the `dependency-checks` block is skipped\n  entirely when it is absent — so the config still works outside Nx.\n- **Tests shell out to the real `eslint` binary.** Asserting on a flat config's\n  object shape proves nothing, because a later block can silently disable an\n  earlier rule — which is exactly the failure `eslint-config-prettier` would\n  cause if it came back. Every test runs a real fixture through the real binary\n  and asserts on what came back.\n- **No formatter is a dependency, a peer, or anything else.** `prettier` used to\n  be a dependency here on the reasoning that a workspace should not have to\n  declare a formatter to be formatted correctly. That reasoning inverted once\n  ESLint owned formatting: the declaration is precisely what lets\n  `esbenp.prettier-vscode` resolve a prettier and reformat on save against an\n  opinion no gate checks.\n","readmeFilename":"README.md"}