{"_id":"@dezkareid/eslint-plugin-web","_rev":"6-717f884960cd571f9c9892dce94222cc","name":"@dezkareid/eslint-plugin-web","dist-tags":{"latest":"1.2.0"},"versions":{"0.0.0":{"name":"@dezkareid/eslint-plugin-web","version":"0.0.0","keywords":["eslint","eslint-plugin","eslintplugin"],"license":"MIT","_id":"@dezkareid/eslint-plugin-web@0.0.0","maintainers":[{"name":"dezkareid","email":"elmaildeldezkareid@gmail.com"}],"homepage":"https://github.com/dezkareid/dezkareid#readme","bugs":{"url":"https://github.com/dezkareid/dezkareid/issues"},"dist":{"shasum":"6969e9045e550daa6f915421d06dd5bbccba54db","tarball":"https://registry.npmjs.org/@dezkareid/eslint-plugin-web/-/eslint-plugin-web-0.0.0.tgz","fileCount":17,"integrity":"sha512-FDoDzLQX67S38GRpOrnXujcXAzX6No7+oQt/NBqlLAh347d1DOsKmgRsn87FBdHrIa7TxqnJSe58k2//KGxLOg==","signatures":[{"sig":"MEQCID0hRLG55NSuC7uRilfL1EDMQTMfgG+3DOmBin3p8A4VAiBlOGA2OFn1YQx4vNZ4eZeTAiQ5VX+c4TnGgjfWNkJOXw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":25052},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":"./dist/index.js","gitHead":"ea0d989a40d9a88fd82404dd21ef8395d18377f4","private":false,"scripts":{"test":"vitest --run","build":"tsc"},"_npmUser":{"name":"dezkareid","email":"elmaildeldezkareid@gmail.com"},"repository":{"url":"git+https://github.com/dezkareid/dezkareid.git","type":"git","directory":"linters/eslint-plugin-web"},"_npmVersion":"11.11.0","description":"Custom ESLint plugin with shared configurations and rules for web projects in the `dezkareid` monorepo.","directories":{},"_nodeVersion":"22.17.1","dependencies":{"@eslint/css":"1.0.0","eslint-plugin-astro":"1.6.0","eslint-plugin-unicorn":"63.0.0","@eslint-react/eslint-plugin":"2.13.0","@dezkareid/eslint-config-ts-base":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"9.39.2","vitest":"4.0.18","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.57.0"},"peerDependencies":{"eslint":"9.39.2"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-web_0.0.0_1774140106530_0.8377001316958572","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@dezkareid/eslint-plugin-web","version":"1.0.0","keywords":["eslint","eslint-plugin","eslintplugin"],"license":"MIT","_id":"@dezkareid/eslint-plugin-web@1.0.0","maintainers":[{"name":"dezkareid","email":"elmaildeldezkareid@gmail.com"}],"homepage":"https://github.com/dezkareid/dezkareid#readme","bugs":{"url":"https://github.com/dezkareid/dezkareid/issues"},"dist":{"shasum":"371eeb6476e431cf1f471b77e313d7aca9de0502","tarball":"https://registry.npmjs.org/@dezkareid/eslint-plugin-web/-/eslint-plugin-web-1.0.0.tgz","fileCount":18,"integrity":"sha512-vVkBQAglKy5UdN+JhKHzz42TcE+pM6wx1cN8htrv0en6yTzgLo2ZyXGhpB5n3+sgbhWV4+te8Sn+jJOytr7N3Q==","signatures":[{"sig":"MEQCIA/GC/Vu0MT+Ek0e/aR4QzaJqMFC+NFh4OLIgemU/LwQAiBrXORv7/SRsJUXtSotfS1w/c2Xivw/tEF0CwOTjie0TA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dezkareid%2feslint-plugin-web@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":11365},"main":"./dist/index.js","type":"module","_from":"file:dezkareid-eslint-plugin-web-1.0.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./css":"./dist/configs/css.js","./astro":"./dist/configs/astro.js","./react":"./dist/configs/react.js","./typescript":"./dist/configs/typescript.js"},"private":false,"scripts":{"test":"vitest --run","build":"tsc"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0bdff9b4-3609-47d2-bd77-497aaaa76f9d"}},"_resolved":"/tmp/bae966f96899d5f685e484bae1da0984/dezkareid-eslint-plugin-web-1.0.0.tgz","_integrity":"sha512-vVkBQAglKy5UdN+JhKHzz42TcE+pM6wx1cN8htrv0en6yTzgLo2ZyXGhpB5n3+sgbhWV4+te8Sn+jJOytr7N3Q==","repository":{"url":"git+https://github.com/dezkareid/dezkareid.git","type":"git","directory":"linters/eslint-plugin-web"},"_npmVersion":"10.9.4","description":"Custom ESLint plugin with shared configurations and rules for web projects in the `dezkareid` monorepo.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"@eslint/css":"1.0.0","eslint-plugin-unicorn":"63.0.0","@stylistic/eslint-plugin":"5.10.0","@dezkareid/eslint-config-ts-base":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"9.39.2","vitest":"4.0.18","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.57.0","eslint-plugin-astro":"1.6.0","@eslint-react/eslint-plugin":"2.13.0"},"peerDependencies":{"eslint":">=9.39.2","eslint-plugin-astro":">=1.6.0","@eslint-react/eslint-plugin":">=2.13.0"},"peerDependenciesMeta":{"eslint-plugin-astro":{"optional":true},"@eslint-react/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-web_1.0.0_1774156001334_0.10397908491855623","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@dezkareid/eslint-plugin-web","version":"1.1.0","keywords":["eslint","eslint-plugin","eslintplugin"],"license":"MIT","_id":"@dezkareid/eslint-plugin-web@1.1.0","maintainers":[{"name":"dezkareid","email":"elmaildeldezkareid@gmail.com"}],"homepage":"https://github.com/dezkareid/dezkareid#readme","bugs":{"url":"https://github.com/dezkareid/dezkareid/issues"},"dist":{"shasum":"6763953f9149d102564e837133231246eccd465b","tarball":"https://registry.npmjs.org/@dezkareid/eslint-plugin-web/-/eslint-plugin-web-1.1.0.tgz","fileCount":20,"integrity":"sha512-XMaDXIpLbw2W8hAI7F3n8qOvZFz1m2Y1JKI4+nUauDm31GpOf4SAreamFs3SZ+WMqhT9j1ApoD3fddGSe//Jdg==","signatures":[{"sig":"MEQCIAYFCpV2pp2Xlpjx1nMhgFWKT/ly0gWkV9x8c5OfY1C1AiAoE79OAq7TieFUbp6FQHW7P4NymY7GfZwjfhL2/I731Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dezkareid%2feslint-plugin-web@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":12855},"main":"./dist/index.js","type":"module","_from":"file:dezkareid-eslint-plugin-web-1.1.0.tgz","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./css":"./dist/configs/css.js","./next":"./dist/configs/next.js","./astro":"./dist/configs/astro.js","./react":"./dist/configs/react.js","./typescript":"./dist/configs/typescript.js"},"private":false,"scripts":{"test":"vitest --run","build":"tsc"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0bdff9b4-3609-47d2-bd77-497aaaa76f9d"}},"_resolved":"/tmp/6b7d1b3b8424c4e25bb85548fd0091fa/dezkareid-eslint-plugin-web-1.1.0.tgz","_integrity":"sha512-XMaDXIpLbw2W8hAI7F3n8qOvZFz1m2Y1JKI4+nUauDm31GpOf4SAreamFs3SZ+WMqhT9j1ApoD3fddGSe//Jdg==","repository":{"url":"git+https://github.com/dezkareid/dezkareid.git","type":"git","directory":"linters/eslint-plugin-web"},"_npmVersion":"10.9.4","description":"Custom ESLint plugin with shared configurations and rules for web projects in the `dezkareid` monorepo.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"@eslint/css":"1.0.0","eslint-plugin-unicorn":"63.0.0","@stylistic/eslint-plugin":"5.10.0","@dezkareid/eslint-config-ts-base":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"9.39.2","vitest":"4.0.18","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.57.0","eslint-plugin-astro":"1.6.0","@next/eslint-plugin-next":"^16.2.1","@eslint-react/eslint-plugin":"2.13.0"},"peerDependencies":{"eslint":">=9.39.2","eslint-plugin-astro":">=1.6.0","@next/eslint-plugin-next":">=16.2.1","@eslint-react/eslint-plugin":">=2.13.0"},"peerDependenciesMeta":{"eslint-plugin-astro":{"optional":true},"@next/eslint-plugin-next":{"optional":true},"@eslint-react/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-web_1.1.0_1774741509002_0.5653708093553762","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@dezkareid/eslint-plugin-web","version":"1.1.1","keywords":["eslint","eslint-plugin","eslintplugin"],"license":"MIT","_id":"@dezkareid/eslint-plugin-web@1.1.1","maintainers":[{"name":"dezkareid","email":"elmaildeldezkareid@gmail.com"}],"homepage":"https://github.com/dezkareid/dezkareid#readme","bugs":{"url":"https://github.com/dezkareid/dezkareid/issues"},"dist":{"shasum":"3f0b87e3e140dda84dd78ce41e5e7bc521289cc9","tarball":"https://registry.npmjs.org/@dezkareid/eslint-plugin-web/-/eslint-plugin-web-1.1.1.tgz","fileCount":20,"integrity":"sha512-mIEwyCWpHCt3xqVPk/qNVco5DShSwoRK0g4pdYziunS/gnUAkExHTBm4RWAX+ohePz+5aW/w1Cio6lJgBQlwRA==","signatures":[{"sig":"MEYCIQCNpY+bQ4iK/8kNUCRHgukSEBmqDe0HOV9/0vPzLCTwGQIhAODJEyTwgofCmNbuI5gO2O58U1o25YFrs6qkytT4lvu7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dezkareid%2feslint-plugin-web@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":13239},"main":"./dist/index.js","type":"module","_from":"file:dezkareid-eslint-plugin-web-1.1.1.tgz","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./css":"./dist/configs/css.js","./next":"./dist/configs/next.js","./astro":"./dist/configs/astro.js","./react":"./dist/configs/react.js","./typescript":"./dist/configs/typescript.js"},"private":false,"scripts":{"test":"vitest --run","build":"tsc"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0bdff9b4-3609-47d2-bd77-497aaaa76f9d"}},"_resolved":"/tmp/18c7f81e64eb8b441714a5a3402bb1c6/dezkareid-eslint-plugin-web-1.1.1.tgz","_integrity":"sha512-mIEwyCWpHCt3xqVPk/qNVco5DShSwoRK0g4pdYziunS/gnUAkExHTBm4RWAX+ohePz+5aW/w1Cio6lJgBQlwRA==","repository":{"url":"git+https://github.com/dezkareid/dezkareid.git","type":"git","directory":"linters/eslint-plugin-web"},"_npmVersion":"10.9.4","description":"Custom ESLint plugin with shared configurations and rules for web projects in the `dezkareid` monorepo.","directories":{},"_nodeVersion":"22.22.1","dependencies":{"@eslint/css":"1.0.0","eslint-plugin-unicorn":"63.0.0","@stylistic/eslint-plugin":"5.10.0","@dezkareid/eslint-config-ts-base":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"9.39.2","vitest":"4.0.18","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.57.0","eslint-plugin-astro":"1.6.0","@next/eslint-plugin-next":"^16.2.1","@eslint-react/eslint-plugin":"2.13.0"},"peerDependencies":{"eslint":">=9.39.2","eslint-plugin-astro":">=1.6.0","@next/eslint-plugin-next":">=16.2.1","@eslint-react/eslint-plugin":">=2.13.0"},"peerDependenciesMeta":{"eslint-plugin-astro":{"optional":true},"@next/eslint-plugin-next":{"optional":true},"@eslint-react/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-web_1.1.1_1774969787256_0.7679756401319353","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@dezkareid/eslint-plugin-web","version":"1.1.2","keywords":["eslint","eslint-plugin","eslintplugin"],"license":"MIT","_id":"@dezkareid/eslint-plugin-web@1.1.2","maintainers":[{"name":"dezkareid","email":"elmaildeldezkareid@gmail.com"}],"homepage":"https://github.com/dezkareid/dezkareid#readme","bugs":{"url":"https://github.com/dezkareid/dezkareid/issues"},"dist":{"shasum":"6d3c629dbe368ef6a616684e4aaaf36344107628","tarball":"https://registry.npmjs.org/@dezkareid/eslint-plugin-web/-/eslint-plugin-web-1.1.2.tgz","fileCount":20,"integrity":"sha512-pf0hWQt+JMu8/maSnxxUoLrBU2cy+qk3mJZtzS/b+p79rYvncLdTOTvhU6oDA2v1g7BUcW1bAgAkl/lHwTFa3g==","signatures":[{"sig":"MEUCIGVs/7a/hbyTYf9JEn35ss9Ty8LPXvU3OuqSjdQ03nAKAiEA2Oob3U3S/OeMko/fHcu59mCCiIcSTKxetrUo8Y55RFw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dezkareid%2feslint-plugin-web@1.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":13543},"main":"./dist/index.js","type":"module","_from":"file:dezkareid-eslint-plugin-web-1.1.2.tgz","types":"./dist/index.d.ts","engines":{"node":">=22"},"exports":{".":"./dist/index.js","./css":"./dist/configs/css.js","./next":"./dist/configs/next.js","./astro":"./dist/configs/astro.js","./react":"./dist/configs/react.js","./typescript":"./dist/configs/typescript.js"},"private":false,"scripts":{"test":"vitest --run","build":"tsc"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0bdff9b4-3609-47d2-bd77-497aaaa76f9d"}},"_resolved":"/tmp/932d21f0df91ef8c75bf4c8d5ca1f076/dezkareid-eslint-plugin-web-1.1.2.tgz","_integrity":"sha512-pf0hWQt+JMu8/maSnxxUoLrBU2cy+qk3mJZtzS/b+p79rYvncLdTOTvhU6oDA2v1g7BUcW1bAgAkl/lHwTFa3g==","repository":{"url":"git+https://github.com/dezkareid/dezkareid.git","type":"git","directory":"linters/eslint-plugin-web"},"_npmVersion":"10.9.7","description":"Custom ESLint plugin with shared configurations and rules for web projects in the `dezkareid` monorepo.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"@eslint/css":"1.0.0","eslint-plugin-unicorn":"63.0.0","@stylistic/eslint-plugin":"5.10.0","@dezkareid/eslint-config-ts-base":"1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"9.39.2","vitest":"4.0.18","@eslint/js":"9.39.2","typescript":"5.9.3","@types/node":"25.0.10","typescript-eslint":"8.57.0","eslint-plugin-astro":"1.6.0","@next/eslint-plugin-next":"^16.2.1","@eslint-react/eslint-plugin":"2.13.0"},"peerDependencies":{"eslint":">=9.39.2","eslint-plugin-astro":">=1.6.0","@next/eslint-plugin-next":">=16.2.1","@eslint-react/eslint-plugin":">=2.13.0"},"peerDependenciesMeta":{"eslint-plugin-astro":{"optional":true},"@next/eslint-plugin-next":{"optional":true},"@eslint-react/eslint-plugin":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-web_1.1.2_1775371525904_0.720635642568191","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@dezkareid/eslint-plugin-web","version":"1.2.0","main":"./dist/index.js","exports":{".":"./dist/index.js","./typescript":"./dist/configs/typescript.js","./react":"./dist/configs/react.js","./next":"./dist/configs/next.js","./css":"./dist/configs/css.js","./astro":"./dist/configs/astro.js"},"type":"module","private":false,"publishConfig":{"access":"public"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/dezkareid/dezkareid.git","directory":"linters/eslint-plugin-web"},"bugs":{"url":"https://github.com/dezkareid/dezkareid/issues"},"engines":{"node":">=22"},"keywords":["eslint","eslint-plugin","eslintplugin"],"peerDependencies":{"@eslint-react/eslint-plugin":">=2.13.0","@next/eslint-plugin-next":">=16.2.1","eslint":">=9.39.2","eslint-plugin-astro":">=1.6.0"},"peerDependenciesMeta":{"@eslint-react/eslint-plugin":{"optional":true},"@next/eslint-plugin-next":{"optional":true},"eslint-plugin-astro":{"optional":true}},"devDependencies":{"@eslint-react/eslint-plugin":"2.13.0","@eslint/js":"9.39.2","@next/eslint-plugin-next":"^16.2.1","@types/node":"25.0.10","eslint":"9.39.2","eslint-plugin-astro":"1.6.0","typescript":"5.9.3","typescript-eslint":"8.57.0","vitest":"4.0.18"},"dependencies":{"@dezkareid/eslint-config-ts-base":"1.0.0","@eslint/css":"1.0.0","@stylistic/eslint-plugin":"5.10.0","eslint-plugin-unicorn":"63.0.0"},"scripts":{"build":"tsc","test":"vitest --run"},"_id":"@dezkareid/eslint-plugin-web@1.2.0","types":"./dist/index.d.ts","description":"Custom ESLint plugin with shared configurations and rules for web projects in the `dezkareid` monorepo.","homepage":"https://github.com/dezkareid/dezkareid#readme","_integrity":"sha512-bUPsgVL9LALTx4pqhsnAv2MPm0NGq09Jyr4rzqbTb8e4g6DD6Y5cGrx2FKcOyxDKN3bO3tOOINSL/HBUC9HZKg==","_resolved":"/tmp/5b75323e6f2d12925fc5595ba229b07f/dezkareid-eslint-plugin-web-1.2.0.tgz","_from":"file:dezkareid-eslint-plugin-web-1.2.0.tgz","_nodeVersion":"22.22.2","_npmVersion":"10.9.7","dist":{"integrity":"sha512-bUPsgVL9LALTx4pqhsnAv2MPm0NGq09Jyr4rzqbTb8e4g6DD6Y5cGrx2FKcOyxDKN3bO3tOOINSL/HBUC9HZKg==","shasum":"85cd6e8f865490465daaa35e1511a0e3b847a510","tarball":"https://registry.npmjs.org/@dezkareid/eslint-plugin-web/-/eslint-plugin-web-1.2.0.tgz","fileCount":20,"unpackedSize":14180,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dezkareid%2feslint-plugin-web@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIEdysrNYGzw3gCus+iRXBL/ja+4c9zJowP/LnBK1JP0xAiEAwHXEcuuDsF91FOFieFPuiSxflS8vS2MezKAVJfs3C68="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0bdff9b4-3609-47d2-bd77-497aaaa76f9d"}},"directories":{},"maintainers":[{"name":"dezkareid","email":"elmaildeldezkareid@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/eslint-plugin-web_1.2.0_1775799280971_0.6977483194540135"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-22T00:41:46.344Z","modified":"2026-04-10T05:34:41.360Z","0.0.0":"2026-03-22T00:41:46.685Z","1.0.0":"2026-03-22T05:06:41.471Z","1.1.0":"2026-03-28T23:45:09.131Z","1.1.1":"2026-03-31T15:09:47.385Z","1.1.2":"2026-04-05T06:45:26.039Z","1.2.0":"2026-04-10T05:34:41.120Z"},"bugs":{"url":"https://github.com/dezkareid/dezkareid/issues"},"license":"MIT","homepage":"https://github.com/dezkareid/dezkareid#readme","keywords":["eslint","eslint-plugin","eslintplugin"],"repository":{"type":"git","url":"git+https://github.com/dezkareid/dezkareid.git","directory":"linters/eslint-plugin-web"},"description":"Custom ESLint plugin with shared configurations and rules for web projects in the `dezkareid` monorepo.","maintainers":[{"name":"dezkareid","email":"elmaildeldezkareid@gmail.com"}],"readme":"# @dezkareid/eslint-plugin-web\n\nCustom ESLint plugin with shared configurations and rules for web projects in the `dezkareid` monorepo.\n\n## Installation\n\n```bash\npnpm add -D @dezkareid/eslint-plugin-web\n```\n\n## Usage\n\nEach config is available as a **named entrypoint**. Import only the config(s) you need — this way you only need to install the peer dependencies relevant to your project.\n\n```js\n// eslint.config.mjs\nimport tsBase from '@dezkareid/eslint-config-ts-base';\nimport reactConfig from '@dezkareid/eslint-plugin-web/react';\n\nexport default [\n  ...tsBase,\n  ...reactConfig,\n];\n```\n\n## Configs\n\n### `typescript`\n\n**Entrypoint**: `@dezkareid/eslint-plugin-web/typescript`\n\nExtends `@dezkareid/eslint-config-ts-base`. Applies TypeScript-aware linting rules using `typescript-eslint`.\n\n**Peer dependencies**: none beyond `eslint`.\n\n```js\nimport typescriptConfig from '@dezkareid/eslint-plugin-web/typescript';\n\nexport default [\n  ...typescriptConfig,\n];\n```\n\n---\n\n### `react`\n\n**Entrypoint**: `@dezkareid/eslint-plugin-web/react`\n\nLinting for React projects. Includes:\n- [`@eslint-react/eslint-plugin`](https://github.com/Rel1cx/eslint-react) recommended rules\n- [`eslint-plugin-unicorn`](https://github.com/sindresorhus/eslint-plugin-unicorn) recommended rules\n- Override to allow `Ref`/`ref` abbreviations (conflicts with `@eslint-react/naming-convention/ref-name`)\n\n**Required peer**:\n```bash\npnpm add -D @eslint-react/eslint-plugin\n```\n\n```js\nimport reactConfig from '@dezkareid/eslint-plugin-web/react';\n\nexport default [\n  ...reactConfig,\n];\n```\n\n---\n\n### `next`\n\n**Entrypoint**: `@dezkareid/eslint-plugin-web/next`\n\nLinting for Next.js projects. Extends [`react`](#react) and includes:\n- [`@next/eslint-plugin-next`](https://github.com/vercel/next.js/tree/canary/packages/next-eslint-plugin-next) recommended and `core-web-vitals` rules\n- Override for `unicorn/prefer-string-raw`: disabled for `middleware.ts` and `proxy.ts` (common Next.js middleware filenames)\n\n**Required peer**:\n```bash\npnpm add -D @next/eslint-plugin-next @eslint-react/eslint-plugin\n```\n\n```js\nimport nextConfig from '@dezkareid/eslint-plugin-web/next';\n\nexport default [\n  ...nextConfig,\n];\n```\n\n---\n\n### `astro`\n\n**Entrypoint**: `@dezkareid/eslint-plugin-web/astro`\n\nLinting for Astro projects. Includes:\n- [`eslint-plugin-astro`](https://github.com/ota-meshi/eslint-plugin-astro) recommended rules\n- [`eslint-plugin-unicorn`](https://github.com/sindresorhus/eslint-plugin-unicorn) recommended rules\n- Overrides for Astro filename conventions (PascalCase and kebab-case)\n- Suppresses `@typescript-eslint/no-unused-vars` for `Properties` (implicit via `Astro.props`)\n\n**Required peer**:\n```bash\npnpm add -D eslint-plugin-astro\n```\n\n```js\nimport astroConfig from '@dezkareid/eslint-plugin-web/astro';\n\nexport default [\n  ...astroConfig,\n];\n```\n\n---\n\n### `css`\n\n**Entrypoint**: `@dezkareid/eslint-plugin-web/css`\n\nLinting for CSS files using [`@eslint/css`](https://github.com/eslint/css). Targets `**/*.css` files.\n\n**Peer dependencies**: none beyond `eslint` (`@eslint/css` is bundled).\n\n| Rule | Severity | Description |\n|------|----------|-------------|\n| `css/no-duplicate-imports` | error | Disallows duplicate `@import` statements |\n| `css/no-empty-blocks` | error | Disallows empty rule blocks |\n| `css/no-invalid-at-rules` | error | Disallows unknown at-rules |\n| `css/no-invalid-properties` | error | Disallows invalid CSS property/value pairs |\n| `css/use-baseline` | warn | Warns when using CSS features not yet **widely** available across browsers |\n\n```js\nimport cssConfig from '@dezkareid/eslint-plugin-web/css';\n\nexport default [\n  ...cssConfig,\n];\n```\n\n---\n\n## Rules\n\nThe plugin also exposes custom rules. To use them, import the full plugin:\n\n### `web/no-jquery`\n\nDisallows importing `jquery`. Reports an error on any `import` from `'jquery'`.\n\n```js\nimport web from '@dezkareid/eslint-plugin-web';\n\nexport default [\n  {\n    plugins: { web },\n    rules: {\n      'web/no-jquery': 'error',\n    },\n  },\n];\n```\n\n### `web/no-allowed-packages`\n\nDisallows importing from a configurable list of forbidden packages.\n\n**Options**: array of package name strings to forbid.\n\n```js\nimport web from '@dezkareid/eslint-plugin-web';\n\nexport default [\n  {\n    plugins: { web },\n    rules: {\n      'web/no-allowed-packages': ['error', 'lodash', 'moment'],\n    },\n  },\n];\n```\n\n---\n\n## Requirements\n\n- Node >= 22\n- ESLint `>=9.39.2` (peer dependency)\n","readmeFilename":"README.md"}