{"_id":"@binbinji/eslint-plugin-import-alias","_rev":"5-082949ceed6f2d369f994e9f49bd454f","name":"@binbinji/eslint-plugin-import-alias","dist-tags":{"alpha":"1.2.3-alpha.1735803764903","latest":"1.2.4"},"versions":{"1.2.2-alpha.1735802480844":{"name":"@binbinji/eslint-plugin-import-alias","version":"1.2.2-alpha.1735802480844","author":{"name":"chouchouji","email":"1305974212@qq.com"},"license":"MIT","_id":"@binbinji/eslint-plugin-import-alias@1.2.2-alpha.1735802480844","maintainers":[{"name":"binbinji","email":"1305974212@qq.com"}],"homepage":"https://github.com/chouchouji/eslint-import-alias#readme","bugs":{"url":"https://github.com/chouchouji/eslint-import-alias/issues"},"dist":{"shasum":"0106fbe845d4ec785e48cb748b0c8cd4442de7d1","tarball":"https://registry.npmjs.org/@binbinji/eslint-plugin-import-alias/-/eslint-plugin-import-alias-1.2.2-alpha.1735802480844.tgz","fileCount":5,"integrity":"sha512-S1oLS+FR/8S/KFPc3jYexevhIWbJp5+lXUC5YUC+lb/T+1g2yr5HiUFDU5Qb5PKLo0uj51Zxp8+V/qGJ0tmpkw==","signatures":[{"sig":"MEQCIDVBRupYyipVXGEQbXBRBpqobq3ZOxpi5oo+Gk99axmnAiAvcCF2FJXPkBhML+CQTKLNc7nc3ZwlC4ULfHS+VRlMkw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":10268},"main":"lib/index.js","_from":"file:binbinji-eslint-plugin-import-alias-1.2.2-alpha.1735802480844.tgz","scripts":{"test":"babel-node test","build":"babel src --out-dir ./ ","clean":"rm -rf lib","release":"vr release --skip-changelog","prebuild":"npm run clean"},"_npmUser":{"name":"binbinji","email":"1305974212@qq.com"},"_resolved":"/tmp/1df2018ad71e8ef856ca099f880e5eef/binbinji-eslint-plugin-import-alias-1.2.2-alpha.1735802480844.tgz","_integrity":"sha512-S1oLS+FR/8S/KFPc3jYexevhIWbJp5+lXUC5YUC+lb/T+1g2yr5HiUFDU5Qb5PKLo0uj51Zxp8+V/qGJ0tmpkw==","repository":{"url":"git+https://github.com/chouchouji/eslint-import-alias.git","type":"git"},"_npmVersion":"10.8.2","description":"ESLint rule for restricting imports to path aliases","directories":{"doc":"docs","lib":"lib","test":"test"},"_nodeVersion":"20.18.1","_hasShrinkwrap":false,"devDependencies":{"eslint":"^4.19.1","babel-cli":"^6.26.0","@varlet/release":"^0.3.2","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-import-alias_1.2.2-alpha.1735802480844_1735802484817_0.13279326238609768","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@binbinji/eslint-plugin-import-alias","version":"1.2.2","author":{"name":"chouchouji","email":"1305974212@qq.com"},"license":"MIT","_id":"@binbinji/eslint-plugin-import-alias@1.2.2","maintainers":[{"name":"binbinji","email":"1305974212@qq.com"}],"homepage":"https://github.com/chouchouji/eslint-import-alias#readme","bugs":{"url":"https://github.com/chouchouji/eslint-import-alias/issues"},"dist":{"shasum":"895f6435b22a683be8abe1e6c7c4a0aa25e18cc1","tarball":"https://registry.npmjs.org/@binbinji/eslint-plugin-import-alias/-/eslint-plugin-import-alias-1.2.2.tgz","fileCount":5,"integrity":"sha512-SJeGcQlIPacpxc9mviYeIEvyAEu1jyOASxELfNhv3ss+Ij+uvoEayO+sJq+NqKAil/qf2iRnWNW6mplWQZy74Q==","signatures":[{"sig":"MEUCIADsOf24BecdcPtFbCLKWd4cAJgOvKrYMpHwU0b3KIbbAiEAoUBUQs2C1VR3kpiMCkkMmY0ewlwgvHOPxjqzzarTGBU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":10248},"main":"lib/index.js","_from":"file:binbinji-eslint-plugin-import-alias-1.2.2.tgz","scripts":{"test":"babel-node test","build":"babel src --out-dir ./ ","clean":"rm -rf lib","release":"vr release --skip-changelog","prebuild":"npm run clean"},"_npmUser":{"name":"binbinji","email":"1305974212@qq.com"},"_resolved":"/tmp/a5e92b31165894713125d0229273ab06/binbinji-eslint-plugin-import-alias-1.2.2.tgz","_integrity":"sha512-SJeGcQlIPacpxc9mviYeIEvyAEu1jyOASxELfNhv3ss+Ij+uvoEayO+sJq+NqKAil/qf2iRnWNW6mplWQZy74Q==","repository":{"url":"git+https://github.com/chouchouji/eslint-import-alias.git","type":"git"},"_npmVersion":"10.8.2","description":"ESLint rule for restricting imports to path aliases","directories":{"doc":"docs","lib":"lib","test":"test"},"_nodeVersion":"20.18.1","_hasShrinkwrap":false,"devDependencies":{"eslint":"^4.19.1","babel-cli":"^6.26.0","@varlet/release":"^0.3.2","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-import-alias_1.2.2_1735802560044_0.7866177953120579","host":"s3://npm-registry-packages-npm-production"}},"1.2.3-alpha.1735803575618":{"name":"@binbinji/eslint-plugin-import-alias","version":"1.2.3-alpha.1735803575618","author":{"name":"chouchouji","email":"1305974212@qq.com"},"license":"MIT","_id":"@binbinji/eslint-plugin-import-alias@1.2.3-alpha.1735803575618","maintainers":[{"name":"binbinji","email":"1305974212@qq.com"}],"homepage":"https://github.com/chouchouji/eslint-import-alias#readme","bugs":{"url":"https://github.com/chouchouji/eslint-import-alias/issues"},"dist":{"shasum":"00ffb955b9c3fddd724fc125e768f6750499e38d","tarball":"https://registry.npmjs.org/@binbinji/eslint-plugin-import-alias/-/eslint-plugin-import-alias-1.2.3-alpha.1735803575618.tgz","fileCount":5,"integrity":"sha512-OaKvF+pH1yAHygxf1OkA2ABtMVl0UewfDPKockHwXFwbUhoc0ebFgVfX9C6O5nP4ULqkN4ikkViNEhtHBWrUYA==","signatures":[{"sig":"MEUCIG5zn69srPr4lm5Xaycnv2F7ILc5gXJw/ZZUkU15NNXmAiEAhqBPhoemiSNMPNfpS6ajbhT3U2upHdMDErbRhTeomxo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":10268},"main":"lib/index.js","_from":"file:binbinji-eslint-plugin-import-alias-1.2.3-alpha.1735803575618.tgz","scripts":{"test":"babel-node test","build":"babel src --out-dir ./ ","clean":"rm -rf lib","release":"vr release --skip-changelog","prebuild":"npm run clean"},"_npmUser":{"name":"binbinji","email":"1305974212@qq.com"},"_resolved":"/tmp/6ee9d30277b78725e44300599a9bdaab/binbinji-eslint-plugin-import-alias-1.2.3-alpha.1735803575618.tgz","_integrity":"sha512-OaKvF+pH1yAHygxf1OkA2ABtMVl0UewfDPKockHwXFwbUhoc0ebFgVfX9C6O5nP4ULqkN4ikkViNEhtHBWrUYA==","repository":{"url":"git+https://github.com/chouchouji/eslint-import-alias.git","type":"git"},"_npmVersion":"10.8.2","description":"ESLint rule for restricting imports to path aliases","directories":{"doc":"docs","lib":"lib","test":"test"},"_nodeVersion":"20.18.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^4.19.1","babel-cli":"^6.26.0","@varlet/release":"^0.3.2","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-import-alias_1.2.3-alpha.1735803575618_1735803579743_0.05211524295700354","host":"s3://npm-registry-packages-npm-production"}},"1.2.3-alpha.1735803764903":{"name":"@binbinji/eslint-plugin-import-alias","version":"1.2.3-alpha.1735803764903","author":{"name":"chouchouji","email":"1305974212@qq.com"},"license":"MIT","_id":"@binbinji/eslint-plugin-import-alias@1.2.3-alpha.1735803764903","maintainers":[{"name":"binbinji","email":"1305974212@qq.com"}],"homepage":"https://github.com/chouchouji/eslint-import-alias#readme","bugs":{"url":"https://github.com/chouchouji/eslint-import-alias/issues"},"dist":{"shasum":"b7abc6279c670f301ada259d7066f76699af66a8","tarball":"https://registry.npmjs.org/@binbinji/eslint-plugin-import-alias/-/eslint-plugin-import-alias-1.2.3-alpha.1735803764903.tgz","fileCount":5,"integrity":"sha512-MabSyqkTltRiajHKtTOmbOgR/29+1G5w+u+BNn16c6hlhhr2MFGE0Gjp5Bh1scTunVSei1uFa147PUELE6Yw8w==","signatures":[{"sig":"MEQCIF/6cRvscTL/tp26s27pJvZMBTq9104vfXW1iMsYiWecAiAgbvfnLKlmN096HjLG0jjL7GoZmXcTX43xgo2c4qDqHA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":10420},"main":"lib/index.js","_from":"file:binbinji-eslint-plugin-import-alias-1.2.3-alpha.1735803764903.tgz","scripts":{"test":"babel-node test","build":"babel src --out-dir ./ ","clean":"rm -rf lib","release":"pnpm clean && pnpm build && vr release --skip-changelog","prebuild":"npm run clean"},"_npmUser":{"name":"binbinji","email":"1305974212@qq.com"},"_resolved":"/tmp/7381dbf33ddeaec2b4d75c04ac5a0710/binbinji-eslint-plugin-import-alias-1.2.3-alpha.1735803764903.tgz","_integrity":"sha512-MabSyqkTltRiajHKtTOmbOgR/29+1G5w+u+BNn16c6hlhhr2MFGE0Gjp5Bh1scTunVSei1uFa147PUELE6Yw8w==","repository":{"url":"git+https://github.com/chouchouji/eslint-import-alias.git","type":"git"},"_npmVersion":"10.8.2","description":"ESLint rule for restricting imports to path aliases","directories":{"doc":"docs","lib":"lib","test":"test"},"_nodeVersion":"20.18.1","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^4.19.1","babel-cli":"^6.26.0","@varlet/release":"^0.3.2","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-import-alias_1.2.3-alpha.1735803764903_1735803769237_0.41234623613016574","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"@binbinji/eslint-plugin-import-alias","version":"1.2.3","author":{"name":"chouchouji","email":"1305974212@qq.com"},"license":"MIT","_id":"@binbinji/eslint-plugin-import-alias@1.2.3","maintainers":[{"name":"binbinji","email":"1305974212@qq.com"}],"homepage":"https://github.com/chouchouji/eslint-import-alias#readme","bugs":{"url":"https://github.com/chouchouji/eslint-import-alias/issues"},"dist":{"shasum":"9927e2e34b601932220deece5cf0b1718d806485","tarball":"https://registry.npmjs.org/@binbinji/eslint-plugin-import-alias/-/eslint-plugin-import-alias-1.2.3.tgz","fileCount":5,"integrity":"sha512-7oicHCNX7lcmxtchsJGQu7Na/LQwguufmS92f8Ls0eSrLS3jYe2wiMsW8bWIipKveApSijcIP2BGWG3A8n8q8Q==","signatures":[{"sig":"MEUCIQD2UpCK4ecpOkUwTtOS7OnOeC6d70ejL9wGrzK2dcQdxgIgGdFpb5+equsZmTVku8f5xgceIXcOha2VrKDFWbJKZGQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":9237},"main":"lib/index.js","_from":"file:binbinji-eslint-plugin-import-alias-1.2.3.tgz","scripts":{"test":"babel-node test","build":"babel src --out-dir ./ ","clean":"rm -rf lib","release":"pnpm clean && pnpm build && vr release --skip-changelog","prebuild":"npm run clean"},"_npmUser":{"name":"binbinji","email":"1305974212@qq.com"},"_resolved":"/tmp/107a20a9201f418e8ef15afadc5a72e6/binbinji-eslint-plugin-import-alias-1.2.3.tgz","_integrity":"sha512-7oicHCNX7lcmxtchsJGQu7Na/LQwguufmS92f8Ls0eSrLS3jYe2wiMsW8bWIipKveApSijcIP2BGWG3A8n8q8Q==","repository":{"url":"git+https://github.com/chouchouji/eslint-import-alias.git","type":"git"},"_npmVersion":"10.8.2","description":"ESLint rule for restricting imports to path aliases","directories":{"doc":"docs","lib":"lib","test":"test"},"_nodeVersion":"20.18.1","_hasShrinkwrap":false,"devDependencies":{"eslint":"^4.19.1","babel-cli":"^6.26.0","@varlet/release":"^0.3.2","babel-preset-env":"^1.7.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-plugin-import-alias_1.2.3_1735809053107_0.09300930107069827","host":"s3://npm-registry-packages-npm-production"}},"1.2.4":{"name":"@binbinji/eslint-plugin-import-alias","version":"1.2.4","description":"ESLint rule for restricting imports and dynamic imports to path aliases","keywords":["eslint","eslint-plugin","import","alias"],"repository":{"type":"git","url":"git+https://github.com/chouchouji/eslint-import-alias.git"},"license":"MIT","author":{"name":"chouchouji","email":"1305974212@qq.com"},"type":"commonjs","main":"lib/index.js","devDependencies":{"@varlet/release":"^0.3.2","eslint":"^8.x","prettier":"3.4.0","rimraf":"^6.0.1","rollup":"^4.29.1"},"scripts":{"format":"prettier --write .","build":"rollup -c","clean":"rimraf lib node_modules","release":"rimraf lib && pnpm build && vr release"},"_id":"@binbinji/eslint-plugin-import-alias@1.2.4","bugs":{"url":"https://github.com/chouchouji/eslint-import-alias/issues"},"homepage":"https://github.com/chouchouji/eslint-import-alias#readme","_integrity":"sha512-fOdwdyT+pkVDSO419i5UzgV9/URdYBniBpgeqwAz+api+xKi0XcHedctBqb89Wetf5OZ0aodcQou1XVj0GtPLg==","_resolved":"/private/var/folders/x0/jrn_r2jx52581fjqd6mhh4pw0000gn/T/9a31c03d6c19d88b657daef2a356a1c0/binbinji-eslint-plugin-import-alias-1.2.4.tgz","_from":"file:binbinji-eslint-plugin-import-alias-1.2.4.tgz","_nodeVersion":"18.20.4","_npmVersion":"10.7.0","dist":{"integrity":"sha512-fOdwdyT+pkVDSO419i5UzgV9/URdYBniBpgeqwAz+api+xKi0XcHedctBqb89Wetf5OZ0aodcQou1XVj0GtPLg==","shasum":"70fcf112ff3c975e849b336ef0ebe26d6a27766b","tarball":"https://registry.npmjs.org/@binbinji/eslint-plugin-import-alias/-/eslint-plugin-import-alias-1.2.4.tgz","fileCount":5,"unpackedSize":7141,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDwC+K9k6Xi0slaa0d2b+S17QwGLPunYdwEO94idduCPAIgf0eAeJLLyKz5wtIzHa4JWYymRB2MkxbhrfijIonHrYY="}]},"_npmUser":{"name":"binbinji","email":"1305974212@qq.com"},"directories":{},"maintainers":[{"name":"binbinji","email":"1305974212@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/eslint-plugin-import-alias_1.2.4_1735823390157_0.8714141888648079"},"_hasShrinkwrap":false}},"time":{"created":"2025-01-02T07:21:24.666Z","modified":"2025-01-02T13:09:50.536Z","1.2.2-alpha.1735802480844":"2025-01-02T07:21:25.005Z","1.2.2":"2025-01-02T07:22:40.217Z","1.2.3-alpha.1735803575618":"2025-01-02T07:39:39.932Z","1.2.3-alpha.1735803764903":"2025-01-02T07:42:49.436Z","1.2.3":"2025-01-02T09:10:53.290Z","1.2.4":"2025-01-02T13:09:50.350Z"},"bugs":{"url":"https://github.com/chouchouji/eslint-import-alias/issues"},"author":{"name":"chouchouji","email":"1305974212@qq.com"},"license":"MIT","homepage":"https://github.com/chouchouji/eslint-import-alias#readme","repository":{"type":"git","url":"git+https://github.com/chouchouji/eslint-import-alias.git"},"description":"ESLint rule for restricting imports and dynamic imports to path aliases","maintainers":[{"name":"binbinji","email":"1305974212@qq.com"}],"readme":"# eslint-plugin-import-alias\n\nAn ESLint rule for forcing import and dynamic import path aliases.\n\n## Install\n\n```shell\nnpm install --save-dev @binbinji/eslint-plugin-import-alias\n\nyarn add @binbinji/eslint-plugin-import-alias -D\n\npnpm add @binbinji/eslint-plugin-import-alias -D\n```\n\n## Usage\n\n```javascript\nimport { test } from '@src/test' // valid\nimport { test } from './test' // invalid\nimport { test } from '../test' // invalid\nimport('./test') // invalid\n```\n\n## Configure\n\n```javascript\n{\n  \"rules\": {\n    \"@binbinji/import-alias/import-alias\": [\n      \"error\",\n      {\n        \"aliases\": [\n          { \"alias\": \"@src\", \"matcher\": \"^src\" }, // src/modules/app/test -> @src/modules/app/test\n          { \"alias\": \"@test\", \"matcher\": \"^test\\/unit\" }, // test/unit/modules/app -> @test/modules/app\n          { \"alias\": \"@testRoot\", \"matcher\": \"^(test)\\/e2e\" } // test/e2e/modules/app -> @testRoot/e2e/modules/app\n        ]\n      }\n    ]\n  }\n}\n```\n\nAliases can be configured to fix the path and rewrite to an aliased path. Each alias has the alias text and a regex matcher that will match against the resolved path from the root directory of the eslint process (usually the project root). For example, if the resolved file path is in the 'src' folder (src/modules/app/test) then 'src' will be replaced with '@src'.\nOptionally, you can define a capture group to replace only the part within the capture group, but still match against the whole regex.\n\nA 'rootDir' can be defined to resolve the file paths from. This defaults to `process.cwd()`. In a lot of cases, this is already the project root in most cases.\n\n```javascript\nmodule.exports = {\n  plugins: ['@binbinji/import-alias'],\n  rules: {\n    '@binbinji/import-alias/import-alias': [\n      'error',\n      {\n        rootDir: __dirname,\n        aliases: [\n          { alias: '@src', matcher: '^src' }, // src/modules/app/test -> @src/modules/app/test\n        ],\n      },\n    ],\n  },\n}\n```\n","readmeFilename":"README.md","keywords":["eslint","eslint-plugin","import","alias"]}