{"_id":"nestjs-security-cli","_rev":"57-433aad965fca4ffa8a94a89a84c3d295","name":"nestjs-security-cli","dist-tags":{"latest":"2.1.13"},"versions":{"1.0.0":{"name":"nestjs-security-cli","version":"1.0.0","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.0.0","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"homepage":"https://github.com/yourusername/nestjs-security-cli#readme","bugs":{"url":"https://github.com/yourusername/nestjs-security-cli/issues"},"dist":{"shasum":"06148554891547fb308f43eb75453397728e9065","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.0.0.tgz","fileCount":33,"integrity":"sha512-w+GM0XylSKaQ2BPpz2qo7W5/+IkEHRTFL/JgpxdGc6jglT1QHf/dmLybKXBgp83rfZjVVMKYQbWe4WSqVbEhhQ==","signatures":[{"sig":"MEYCIQDIgplJj4fddPrOjsMFX296dfbXOcK6x2/hu4jRVKpnJgIhALgGpEskt+ehQ86qVyvNkCE5G+KazUD2yA5pkpXOgOF8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":186182},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"repository":{"url":"git+https://github.com/yourusername/nestjs-security-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.0.0","typescript":"^5.0.0","@nestjs/core":"^11.0.0","cache-manager":"^5.0.0","@nestjs/common":"^11.0.0","@nestjs/mongoose":"^10.0.0","@nestjs/schedule":"^4.0.0","@nestjs/cache-manager":"^2.0.0"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.0.0_1757103578239_0.5771956257111575","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"nestjs-security-cli","version":"1.0.1","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.0.1","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"homepage":"https://github.com/shawnnolanjr/nestjs-security-cli#readme","bugs":{"url":"https://github.com/shawnnolanjr/nestjs-security-cli/issues"},"dist":{"shasum":"5aca82d66b20fb623ea2021a014782dd1166d8ff","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.0.1.tgz","fileCount":33,"integrity":"sha512-JTH0HSgEVl5I+fbPUejzQa1XXhjQpTjjck5HymP27d6WE3dF9P5/d3BZlMfqVNyFDMBSqqsUH9XYWDZ6FzQ2Ww==","signatures":[{"sig":"MEUCID9PGBIx+CZ3xfBcMM6TTn2NQL48r0uImL2zb/esZKz0AiEAkIPmya7E2f5+EtWQi/YkIT0fH5KoLTEdoHAhdmC9cvI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":186182},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"184e558c48856e8c239d1e2295ecb47f01d71c7f","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"repository":{"url":"git+https://github.com/shawnnolanjr/nestjs-security-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.0.0","typescript":"^5.0.0","@nestjs/core":"^11.0.0","cache-manager":"^5.0.0","@nestjs/common":"^11.0.0","@nestjs/mongoose":"^10.0.0","@nestjs/schedule":"^4.0.0","@nestjs/cache-manager":"^2.0.0"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.0.1_1757103807989_0.4912527676780576","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"nestjs-security-cli","version":"1.0.2","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.0.2","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"homepage":"https://github.com/shawnnolanjr/nestjs-security-cli#readme","bugs":{"url":"https://github.com/shawnnolanjr/nestjs-security-cli/issues"},"dist":{"shasum":"95e3d6f5ac77fe19c8e392836362c61dd66c4194","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.0.2.tgz","fileCount":33,"integrity":"sha512-WUtNAMsII3Re5QHagLSZNNjpYNRjsRPydX2OJnJHBNuaF02t568fvnBZPJJ98gTz+3Xf827uBA4o8nAhIcMR+g==","signatures":[{"sig":"MEYCIQCPQWfArQzpnxrymvRZa7Mccnp5uECPBpvW9w8w6Ui4TAIhAPzx4P62LKjkUw9r2R1N1KW0wzvYrkvtX2lXCueEpqXT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":186260},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"6573436de7db3c846deb6ea1e3980444646b31e2","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"repository":{"url":"git+https://github.com/shawnnolanjr/nestjs-security-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.0.0","typescript":"^5.0.0","@nestjs/core":"^11.0.0","cache-manager":"^5.0.0","@nestjs/common":"^11.0.0","@nestjs/mongoose":"^10.0.0","@nestjs/schedule":"^4.0.0","@nestjs/cache-manager":"^2.0.0"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.0.2_1757104129248_0.43856964698087797","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"nestjs-security-cli","version":"1.0.3","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.0.3","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"homepage":"https://github.com/shawnnolanjr/nestjs-security-cli#readme","bugs":{"url":"https://github.com/shawnnolanjr/nestjs-security-cli/issues"},"dist":{"shasum":"657491f4da3277c35d0837182112cece71847424","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.0.3.tgz","fileCount":33,"integrity":"sha512-014+9KyZwJ3Hg0R2tzXxHnbUb4QrVyWUiiLN++PucsCexeOlkAzEAZq2DzFuAnBcbqZdt3z8YuMl0eLcxmtsLQ==","signatures":[{"sig":"MEUCIQCqn9/kKXRS7B9RU0gU57sfW7bUQbHewK3Q/E70NLIfQQIgJlMOnXPvQWrqAbLhqjK8YEPReP/vN7aAk7inYl0OETA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":186575},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"4fe338c0a0f75b16a573d1051cfdcb1c3f556816","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"repository":{"url":"git+https://github.com/shawnnolanjr/nestjs-security-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.0.3_1757105530982_0.8917675160195868","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"nestjs-security-cli","version":"1.0.4","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.0.4","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"homepage":"https://github.com/shawnnolanjr/nestjs-security-cli#readme","bugs":{"url":"https://github.com/shawnnolanjr/nestjs-security-cli/issues"},"dist":{"shasum":"7484594a142f124d2845074b7e2db9e895282e2b","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.0.4.tgz","fileCount":33,"integrity":"sha512-ON2FkxnaWIy0VVoMPMI4pvBv/yubwedKrgirDBnYfZCGBvto4n5mhvp47pjg3qfDoM+4LmsWdaL3dTHsUiuM3A==","signatures":[{"sig":"MEQCIBJEsbOeZtz/+xzvetma9GTUMmyi3Vnma5U8DuLF2HiHAiAiIQXxztsI9axh4qUuhPiFoAgztiQQuDDx3s0vKCJ92Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":186582},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"a4fabdd8dae693e8028239ca2c843e344dc2111d","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"repository":{"url":"git+https://github.com/shawnnolanjr/nestjs-security-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.0.4_1757105889603_0.6710617172824893","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"nestjs-security-cli","version":"1.1.0","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.1.0","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"homepage":"https://github.com/shawnnolanjr/nestjs-security-cli#readme","bugs":{"url":"https://github.com/shawnnolanjr/nestjs-security-cli/issues"},"dist":{"shasum":"0bcfe204a815e3cb85c1108af0dae3dc1f51f2de","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.1.0.tgz","fileCount":33,"integrity":"sha512-f4hnSoPu91NvXyPbzVtJYjJv01Hn0BBa+q7Dba+oGWGAD0U+C2kBiTLsPPuWaRAF+ntN91vajX0EXoOjFV47BQ==","signatures":[{"sig":"MEUCIQDBRXTvQVQEHK1gOZHUO3N54eRZQOSLBEI/MzzanJ+eCAIge4Dg/Cyv+SiJu61qUFOgdPnpMT1xRYyXvGb6I9prkjg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":189776},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"ac6fd0583e12e98df53e52625dbcf0cffaa89220","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"repository":{"url":"git+https://github.com/shawnnolanjr/nestjs-security-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.1.0_1757106428903_0.5641373269462189","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"nestjs-security-cli","version":"1.1.1","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.1.1","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"homepage":"https://github.com/shawnnolanjr/nestjs-security-cli#readme","bugs":{"url":"https://github.com/shawnnolanjr/nestjs-security-cli/issues"},"dist":{"shasum":"1ef43adfaea83c66b2dfe62fc91d1570c8cb45a0","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.1.1.tgz","fileCount":33,"integrity":"sha512-OB2/nL2DsyB7LP/CUfZlh9nFJb6tLSo+DrtaYIH0o/EoVPwHUmJN8A+Hybb4nMHEPYgU+dJ4luDAuPf9GIylZA==","signatures":[{"sig":"MEUCIFlmlFHMQRXD1a6bE6dYysTCIWGOLue4O7cKvAYjOMUMAiEAy5H3Bnpcdkx69nXCyF/kI2Ma/AxluTSIQXtsfLdiCns=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":190500},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"45f8585ae377f496dcae019617b9d514008f3c09","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"repository":{"url":"git+https://github.com/shawnnolanjr/nestjs-security-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.1.1_1757108597178_0.9949169302001717","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"nestjs-security-cli","version":"1.2.1","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.2.1","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"homepage":"https://github.com/shawnnolanjr/nestjs-security-cli#readme","bugs":{"url":"https://github.com/shawnnolanjr/nestjs-security-cli/issues"},"dist":{"shasum":"c3933d45d41f9e14538cb44d569864e9a7c0141e","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.2.1.tgz","fileCount":33,"integrity":"sha512-jOh/7uAq5dHdpQlWF3gi2AqIHWNf/U4jIiGjRVPdeWAubOPg+ubWZuhZmtH4REUMvnsKAt/JnOBSendMz/a8pA==","signatures":[{"sig":"MEUCIQDxEFd40jW1nApsxXvGAcTySdnWIOSkafjPEjqCvp2FXgIgFV6yMdhsUUAEPE8vsL7bAU1AMGii1/lFXVkZLDD9WZI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":193406},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"9b3fc988d94c09cdfe557a23d0c6f6867e53795f","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"repository":{"url":"git+https://github.com/shawnnolanjr/nestjs-security-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.2.1_1757110200008_0.7794010469020074","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"nestjs-security-cli","version":"1.3.0","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.3.0","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"homepage":"https://github.com/shawnnolanjr/nestjs-security-cli#readme","bugs":{"url":"https://github.com/shawnnolanjr/nestjs-security-cli/issues"},"dist":{"shasum":"3e9b26e55b9c92d27f95271d6a8141cc02d416ae","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.3.0.tgz","fileCount":36,"integrity":"sha512-Z1G0OUpT1npiMzpkoCeofu63kQH9R6986KAkNksoFSp+M3pFaDkD+Oga6rA120NOgNx2F9tpSs3616sBmQz2bQ==","signatures":[{"sig":"MEQCIG/CF6puTAogXq0yAlw8H5bglOTvpbqW/vzT65nPNFf9AiADU48PECz9dyIldbDNprbxAv5+qdKlVKTs6pUrBhNDqQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":199974},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"7700f037d504074ff8f5e7a8853198d0b6532b75","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"repository":{"url":"git+https://github.com/shawnnolanjr/nestjs-security-cli.git","type":"git"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.3.0_1757110968774_0.6116577032421147","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"nestjs-security-cli","version":"1.3.1","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.3.1","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"72c88d98a6738656bf5f232cd01a5397c3407c83","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.3.1.tgz","fileCount":36,"integrity":"sha512-PjOO97qtcOHFpJZ1TICpKjnprBA+uXnBaCPMz1sk5IeQqOzebnjy6diKLZfPisO29iMNrJb52ptZAsnfGVgnwg==","signatures":[{"sig":"MEUCIQDElPVBupZJnMqtgnfrItbPBUxOnwEWosLbmbG2ZdUeBgIgEfDWPWMbLu3lKteBXLBM6pQ7cWRcb6LcS8zirkgvajc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":200052},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"ae9eee62fd53be02aefcb4f229eebea039cd5464","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.3.1_1757142911554_0.17411616677447217","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"nestjs-security-cli","version":"1.3.2","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.3.2","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"087f78cb7dc7e0850e09aad0ac04c0c9983aeaa2","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.3.2.tgz","fileCount":36,"integrity":"sha512-rZdomIyYbfbjxpEmIJsjOViOHK6mnqmjHP+pdDr9yVNwL0zsZTaSPeGuqKM6YtaFJtrxY+EL6Q1QcNemyPWGFA==","signatures":[{"sig":"MEQCIHcZQxDwMd7KtGcHM50C3pvj65ArBDKifxgOPwQLhRO/AiBd4LmvswRXrIBejok/f45alFETjooRKtn2iW785cQZ7A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":202273},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"c2ebcb61f456cec412f740731342056cdddcb01c","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.3.2_1757186401923_0.08436288877828235","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"nestjs-security-cli","version":"1.3.3","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.3.3","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"f9e85c3de6965646c78ebaaafa458bc0bd4c2de1","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.3.3.tgz","fileCount":36,"integrity":"sha512-e30nuDL4N/x9Z0WUPSSP2G8BIxpZ6/uj5pTpR8RUlfkDjEZHPBD21QvmdtP4SgPEV86ItFo2TLndtl7sxxfHfw==","signatures":[{"sig":"MEUCIETl4ZViQQugWYjLY9JXQ3YfBa/hJG5Ekzn4UnfguvX+AiEAog4FhyhjLxaArG5Px5bA/SLVGJ3HfR8t5pB6HTRPMaw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":202233},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0626453643910dcdc82c4777b00c7e4cf252b822","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.3.3_1757196918662_0.21236432774854097","host":"s3://npm-registry-packages-npm-production"}},"1.3.4":{"name":"nestjs-security-cli","version":"1.3.4","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.3.4","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"97e4be2f6759007cfd6a75fe2ba4a3e6499d64a2","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.3.4.tgz","fileCount":36,"integrity":"sha512-8WEM1BgidtB7J7RuHCEPMAa8GWZPVgXfd7EnJbcdQ+lHPSlk4l8vy97YebE4xEt6d1vl7aQQl6IzzZB6RFj/yg==","signatures":[{"sig":"MEUCICIccHGgwWWl4EZg8wxmn5ZZaEXHN0qzAX/Av+Y6/X2sAiEAqFBPh1hvWM3Gqjn+IYvMwYCgZ3OtzowuyuZlaVELFAo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":202936},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"85ed692c90e3f1efb3be14fe9d98636fb48b1b95","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.3.4_1757197235178_0.7139405446536362","host":"s3://npm-registry-packages-npm-production"}},"1.3.5":{"name":"nestjs-security-cli","version":"1.3.5","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.3.5","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"0997c059ea1a7564bfc4b0a1b701e6a3aa3f8763","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.3.5.tgz","fileCount":36,"integrity":"sha512-IADmRScdSzcCNNLVCEjq+Zh7xKdItqeF3JojdALB79naRsPhNYBwj5ROMFf72ab2Zs3jDuNdy30oNR70FeZZWw==","signatures":[{"sig":"MEQCIDW6WrWZUFWO02CNxJ/1fvpSKmpvd8QVAxzIU5dT3BaCAiBGzSiMVd/XILFMqjVgGFjq8XJCKxZDkWaCHKqHBDUq2w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":202792},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"dd595eb9515e582ac9a5062ea65e07a3dbe0cd5d","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.2","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.17.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.3.5_1757197426207_0.614456447544022","host":"s3://npm-registry-packages-npm-production"}},"1.3.6":{"name":"nestjs-security-cli","version":"1.3.6","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.3.6","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"5cce2ab89f63f7d5ae49b97361503b5ed9b3ebe5","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.3.6.tgz","fileCount":39,"integrity":"sha512-sE5ozO5eZ9T4dudN2lpmbf+aU9SJaXSHQ3TQ4b/6V8qsZHaChgD5CRq9hhdy0QSsJ7CaM4ryxu3ZOk654CoOqg==","signatures":[{"sig":"MEQCIFHGO9fsKmK7P+JfmzqaqYUSKTUJEjYBRhFotK+fCnT/AiBDnATNGnZnZNK9lcYjr+eLRpm+DS9kPygWCi5Q8VOPLA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":205547},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"1f4f4004a0db8d5873237b965075f1a9bcf4ef28","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.3.6_1757315413935_0.6555651289005753","host":"s3://npm-registry-packages-npm-production"}},"1.3.7":{"name":"nestjs-security-cli","version":"1.3.7","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.3.7","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"44968222abc621150cdc187614b809b950e342d7","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.3.7.tgz","fileCount":39,"integrity":"sha512-2Wi4pMNgbQYjvWNzYHnSGXpb5Z6tXDhHQmw+MyGNRZFChXBfE6q0Mh3rlJCBy6vSwCFFU0DahStRiJ42981NhQ==","signatures":[{"sig":"MEUCIApenXo1IIVxKTF8BVUc07sD02m5GLGegDz91Tw+ptOmAiEAoDgHzbXfVAyMepZ6GoHG2za8JDD3PiZoHztFe9BmWL4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":206410},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"a6a83eb335893aae75a8dbe4139049b88df24971","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.3.7_1757316361449_0.5729128365253209","host":"s3://npm-registry-packages-npm-production"}},"1.3.8":{"name":"nestjs-security-cli","version":"1.3.8","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.3.8","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"ab2340b63ec5738cb796ddd20a87d2f38a232813","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.3.8.tgz","fileCount":39,"integrity":"sha512-zVsjw6ATLV4rMF+ndVHqT6vr095yP+plt7CkaqCxZMz+nzuETNY0BpXqW0nG5b9nRGl1MIMVtLLoLYV97D7WpA==","signatures":[{"sig":"MEUCIQDIM7DNpFwDQXCDBw9hNxmv/P+6v0bewoWGVR52R3F5jwIgd1uARaW31Jv2EUc6uSfbkvjGsoS5szR50gn/3loRQig=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":206530},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"b0c40ab4a7224dff5dd5049a40dda1f6dc23c331","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.3.8_1757316932514_0.5376487700743857","host":"s3://npm-registry-packages-npm-production"}},"1.3.9":{"name":"nestjs-security-cli","version":"1.3.9","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.3.9","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"851262b0b568b0c8a6ee7a4c97760cc348d46a49","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.3.9.tgz","fileCount":39,"integrity":"sha512-5nQi7wsGKA32E55S1Mh8pwvw7eH0tLvl1MyD90jnY+EILyitgvclXm84rqlZloMDP4sT5JoWEd0kjOyVC+SnAA==","signatures":[{"sig":"MEUCIDaGHg84kEU/7ziP7dPjlvKq7Z0rxWOMQepEo8t9MBmiAiEA5RAUruoGocSFIHRb+pQU9A38DNSUtl+iImqUAugEEow=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":206646},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"20e50ed4c0998d81c61d3723a1fa76be1951681a","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.3.9_1757317092386_0.5679345537691864","host":"s3://npm-registry-packages-npm-production"}},"1.4.9":{"name":"nestjs-security-cli","version":"1.4.9","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.4.9","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"2501dfce9b21d4f16777e5be00a537e9c66b1700","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.4.9.tgz","fileCount":39,"integrity":"sha512-KOQDPNSYEvGwMqYHotSYmNwnhUZzzL35wt8O91jAmln11+zQ5p6raO3HKTZeqd+UMcyLnlJKNyIycwanU52HDQ==","signatures":[{"sig":"MEUCIHlrRV18WRaDVVy4ecU5D8/azazaw05oUDdBvs6zkQ1CAiEAtdnKnfV+MDnRTFEBquxOXpfDqp0m0HEpOXDJTD/CYbg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":207940},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"a5ebd0e3a3933db75147328b3c884feb38703cb0","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.4.9_1757388059127_0.7829431022869446","host":"s3://npm-registry-packages-npm-production"}},"1.4.10":{"name":"nestjs-security-cli","version":"1.4.10","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.4.10","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"17add940df61fe26f69c0d198d15b4cfacd8f11d","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.4.10.tgz","fileCount":39,"integrity":"sha512-OuSa1Abp9WmulPt7Jtak0y7itPChHCpiutM16ZyqNyeX5xY2Xw8CRTQalCG0K4mW4KPd4K0BHDRord+/WRwxGA==","signatures":[{"sig":"MEYCIQCC53w1h3l4WtZ1dzCEkx7lEM8o0e7SYFk1tjKIG1qQLQIhALNh4DZHfBaR4AHWU2JGQ4NhsB2xPMCq39klfb8F23sW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":208434},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"cf015af1592aeb70ae456a563576bfa9b30ae208","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.4.10_1757388797973_0.22210170942343344","host":"s3://npm-registry-packages-npm-production"}},"1.4.11":{"name":"nestjs-security-cli","version":"1.4.11","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.4.11","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"9646c99ddd3827ef66fd1d7e5a533def0806c985","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.4.11.tgz","fileCount":39,"integrity":"sha512-QvGPqNHWBIdTMXOmk6zboztKzqUZ15nOi+esl6SEELG4FVGMAHeNid/RGtizgkSAhRmHoKq12oHq1jn+/9+uEg==","signatures":[{"sig":"MEUCIQDdtJEXcDyEtIQPmBM85JNNPDGFL230HPdqWWJ2TDHEpwIgQ7iaJ7V+zq49AzNkGT0gjqA1RLD7Fz75cljyS+YhAXQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":206613},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"ee69fc5e75b93463d188875b504430b6d677b352","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.4.11_1757394632110_0.5124961711195757","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"nestjs-security-cli","version":"1.5.0","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.0","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"ea0b6acb80d08bd0a3afa4134c9b684a125bb071","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.0.tgz","fileCount":39,"integrity":"sha512-Lsxqw515G89ZQNeuU98aF3DNQQfT8SLAHaDF0s1/kRZLf2iv8GG4sootpp+6Ik/xM1NFzjdEqGlzAuNrdsjHKQ==","signatures":[{"sig":"MEQCIDENP9/vy758hnNNMXibfkF7RZkxHE0Lpxo+gRDWQbBKAiANvUjRdoktTbksvpIfyxiS49ahhTAJc5MPmMDQ3ezjbA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":205893},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"720bca90c93628b1234cb23e9b0080b0207c6d2e","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.0_1757397242903_0.06198044006925385","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"nestjs-security-cli","version":"1.5.1","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.1","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"a630576767c11ef3f4b31c925f0a7a8b77c06537","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.1.tgz","fileCount":39,"integrity":"sha512-rWXBXiQcC4kGxcOE6OePPwLv2UtiKuRi2R6gB0pxp5jqyqXeTgVne1wz7SqLP24ZyHfKJANSNhI0xXsnrLvQsg==","signatures":[{"sig":"MEQCIAIEVa7ZzZ8U3nybioZrevttHkcgdZwog/FSrykPYAR2AiAN8pm3iPDUL5hzYNVALyYF+bGpxP7YhucPIOiSeBM99g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":206195},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"8ba06e49bfe38330244877eb1fe9c21ec7a3e205","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.1_1757397887647_0.4431295213716533","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"nestjs-security-cli","version":"1.5.2","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.2","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"d169b81c3567fa95f993a8397d4e5ad22ace05d0","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.2.tgz","fileCount":39,"integrity":"sha512-PffbZTNW6W3yPnOtVBAC78xq9WGQAmk40quvSaBsH4n9RMwLPMfuIN0TEw1oMZq5WdVlD3MgqFAWYYf0U5GI4Q==","signatures":[{"sig":"MEQCIFeOOfhoTKGzpvt0g3EINwFY7itBH3Z7gQtd1afLQ6nHAiBDjXNCZU0ugpeZ23kgtOsmFSOu3P0Hj7FJlirXy3JX2w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":206205},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"555aa415a74c98dd56d95501da9e6da8907305c8","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.2_1757399383257_0.5220469609425902","host":"s3://npm-registry-packages-npm-production"}},"1.5.3":{"name":"nestjs-security-cli","version":"1.5.3","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.3","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"887b2d6222ec60ce7880d68126d64f18c62ccf50","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.3.tgz","fileCount":39,"integrity":"sha512-0ncNdiMHkFZINbgmwm8UJ5G+xmNELpz/ZHObpJhnzymUuqhDfdLoU6SmAGeShfK4ZYtAczDwu2aCHFoMT8vjPw==","signatures":[{"sig":"MEYCIQDWBwJch7YDmEBcsaRLTHFRLUlOAcBJL9GUvIKLbNWlGAIhAIvPykOLM5tweeBkBRJbwzbYu8Le8Ty+pu3K+ZKOHQCn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":208837},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"d0d36643ea3c8b24dada0fb1e8921561c8b77746","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.3_1757401333374_0.2265464487094797","host":"s3://npm-registry-packages-npm-production"}},"1.5.4":{"name":"nestjs-security-cli","version":"1.5.4","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.4","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"1efe824768b7d603747aa452a7a2990e6692bd50","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.4.tgz","fileCount":39,"integrity":"sha512-Wjsh5h45k3cOKruBMIJTNx2AzNZxLYaF+bU4KJ2mv7TamOf6b4K9zJt8x913972mwAiBPltBNUP5/ZJzcJoAZg==","signatures":[{"sig":"MEUCIEu005dIbRzvkspZ8XyjYgu1Dx8+rB82XY6cyx+BMnIbAiEAuFGpZxvsWzPbZ3B1giGrribO4Fkf/8E5uZnKaP5E4qo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":208375},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"94992efdf47bf5c3dc729e6718726b617e72fab5","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.4_1757402245214_0.7611033481235183","host":"s3://npm-registry-packages-npm-production"}},"1.5.5":{"name":"nestjs-security-cli","version":"1.5.5","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.5","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"cb1dfa2159aae215ee94d0fd9de72945f7b4d409","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.5.tgz","fileCount":39,"integrity":"sha512-QPYXw7OhcX81Xbky9Qt/nuaOzXj03zAL8w+lnV4cnh/VcRh/iKiwRBpmck1nSeYfQEyds3RzEO66ws1Ryzkq/g==","signatures":[{"sig":"MEYCIQDFpnVOi8yDtw2kHbMkCaFWVY+//wbszL3ZsRPYS8KWfwIhAP0M1t7DQtqjyXmj1cWw6V6fmuAa9uyfxlLYljgdcvF6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":209435},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"645c0e294188b6fb008f77d6cdc84e4b1e0993f0","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.5_1757404091003_0.873622457266451","host":"s3://npm-registry-packages-npm-production"}},"1.5.6":{"name":"nestjs-security-cli","version":"1.5.6","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.6","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"e7ac41b990acd735a118bcb7b758881ff8124313","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.6.tgz","fileCount":39,"integrity":"sha512-xeNXi5tXVH9oV3NnsBi/gXyCszaheVZYZ5fmIqIDXK+YzaIF4XdxWa66YlvHzZM58QGw1mrm99KW/QsuxENiiw==","signatures":[{"sig":"MEUCIQD1450jftDnQryzyb9wK23rC7i05Tzbw4L5JA52GridJQIgcfAQwvWuXPdGJSRJUSeyMzuppujsgue5ChIcBgW8jIA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":208375},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"6fd733505f4972fd6765b51fd499b509cc6bd306","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.6_1757404457723_0.6077334279207867","host":"s3://npm-registry-packages-npm-production"}},"1.5.7":{"name":"nestjs-security-cli","version":"1.5.7","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.7","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"abd33e19e95e94f6bafe8d4a6d1cad43410ec71e","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.7.tgz","fileCount":39,"integrity":"sha512-stOURpVf4GXA0Q7gqfnH/JtUZxJDdgLyZIX/QZcrBAQUXh2ILjukytpOB5b3HgDqmlagy7ruLSoXoTDjUyL5qg==","signatures":[{"sig":"MEUCIQD+tuNtn2eS0Q2gFmI4nCfA9BJyxWxbfrNAsb6PgR2YTAIgUtp7Nntr3KmqVpGWnuwP1zpwUyXDiuzAEOfCJ3uMeTk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":268897},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"07f013d2ac14ecb2638a43bfe49d5c65e422c602","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.7_1757448467843_0.07848122459687046","host":"s3://npm-registry-packages-npm-production"}},"1.5.8":{"name":"nestjs-security-cli","version":"1.5.8","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.8","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"7cf186736a33b230d41dd4cd614ddc7568ae9ae2","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.8.tgz","fileCount":39,"integrity":"sha512-Afo6+X6gNnuYy7V/nTCuM0JiwgAiPR/sbS/FMVPZpSx+yEA6TIZu17Se0j0BbSp4GRA7QS382T0w/4jSE5zfhA==","signatures":[{"sig":"MEYCIQC2TZo7JhRtoit8tZfLbCyPPXNvNSNWLM3+BUbqIZeYyQIhAI1VXx4Et0yTf8S6HGVmF8SjObHbuTM2PKK89M2KTlD8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":269406},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"0ae382a5a7c2d6f95f9dd0a173516ee3da177f11","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.8_1757458111124_0.8943886958308205","host":"s3://npm-registry-packages-npm-production"}},"1.5.9":{"name":"nestjs-security-cli","version":"1.5.9","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.9","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"6d3333e38169326adb71fbbd751e7f310e72abf9","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.9.tgz","fileCount":39,"integrity":"sha512-JgT4KXOOR+NA/UuL4NCDvO80sHCGjSgDBZFTY04wh6DPHUQBM6lIbxGkk2HIVLoFYGWwSxAWXRdy/FmYrT2jrQ==","signatures":[{"sig":"MEYCIQCnVfcJXtm8vUBZoyBhKqjAEPgJ9Z6XERuE1xNhvsiaVwIhAKYUGBEAPnqRj9V1SToF9xdnKSqjvArYxqOSqUNgzYlD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":269263},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"6af9391d9ef975aed9b2520332c517e85bad1e26","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.9_1757458275079_0.14679496989345986","host":"s3://npm-registry-packages-npm-production"}},"1.5.10":{"name":"nestjs-security-cli","version":"1.5.10","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.10","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"7d3c3c4bb392f4a9a8e74c643a5e2e0901fa1a5e","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.10.tgz","fileCount":39,"integrity":"sha512-/gE6WNDubjM23WO3EmFSO5He76yMnv75rb5zUthQTHjnBfWm3px2y5xwxW5E7NULaFn+AakrL8Kpva3v+SfNqA==","signatures":[{"sig":"MEUCIQD9tEhZzMA8jwfEx/OknRp1k/nlHrOzmYDsgWJbHTH6GwIgFhHftWuyFCE0NbG3X+z+Y9XNk2DAPVKuk9mPBaCMEMA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":268505},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"0c5715dd0352ec36b83696eb8823d0eb338e8ab9","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.10_1757458635378_0.6844939495465019","host":"s3://npm-registry-packages-npm-production"}},"1.5.11":{"name":"nestjs-security-cli","version":"1.5.11","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.11","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"eda6027c753165584f3ccc88cc644b0526ff557c","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.11.tgz","fileCount":39,"integrity":"sha512-cU0z9drg5VA5Bf8ms+O9EqpRD4BK1nJKxX3rDDxJjTBT0A7H1pSoLhuaml0WRRfVahJ+tPPRJpMmFZ3s3wRdqg==","signatures":[{"sig":"MEYCIQDjRpRq+lrA8gb9MhTOW+lsJ+dW+aRGJO4gNnUzTaTXAwIhAKVHIomsWdo+sEgO33A2NoAT50Yrl1CKRsFg9qFsofcv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":268482},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"bc9b1e0b26dee55680c3b51b8118b6c58a4c636b","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.11_1757562821680_0.3224816495639231","host":"s3://npm-registry-packages-npm-production"}},"1.5.12":{"name":"nestjs-security-cli","version":"1.5.12","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.12","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"a9469ff98889363e951a4ddc280946259fdca43a","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.12.tgz","fileCount":39,"integrity":"sha512-P8/49ZeGPwXh8RzQbSOEhOHWU68boECLs0wJmg+2A5V9KkZtuJB72QxUU+v+1Fg1r/G/CIz1HpPBpj9NC54WlQ==","signatures":[{"sig":"MEQCIGtykBje3tN+4nktf00HZDHvdpFDpqjyYA95sd+YQx/nAiBeKEj41b5fhWrDyT96riezD+p7RK1NtWBIX4XGCoQ1zw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":268366},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"24abc0f9a3e1bca77a5a2f550a7c03835ce2b44c","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.12_1758645249758_0.9062466471892141","host":"s3://npm-registry-packages-npm-production"}},"1.5.13":{"name":"nestjs-security-cli","version":"1.5.13","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.13","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"cf90ade4e030e83d7f9b717fcdd0e37bedb4f835","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.13.tgz","fileCount":39,"integrity":"sha512-UQxjFWUP7ILWA8FomuoyrpbAGu/jWvl95HHL3zIPurTumBhJ74ua6zo0torffB48KTQ8u5NGOLwmdiuvuUmUzQ==","signatures":[{"sig":"MEUCIQDlHXPf4iZ7zuulJfoLLJ5pIO19zXrCEsN3osYDcpI/GAIgKrpWyIOnUkWpNDPnkIOZhWjfRL1mMZo0xUng0bw9ZkQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":268497},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"86411e646686a73ff85c06fee954eb461a63252d","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.13_1761363071308_0.12702164822031636","host":"s3://npm-registry-packages-npm-production"}},"1.5.14":{"name":"nestjs-security-cli","version":"1.5.14","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.14","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"3691233afe33badacf7a5f66457558b480d412aa","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.14.tgz","fileCount":39,"integrity":"sha512-s23g7zJ95l7MW1+rODMRjRx3RHRDObVbcT+59wVqRMH9PUoYaSh4CvK7BglALp06hN2IRB81Ljni38+E2ZB4CA==","signatures":[{"sig":"MEQCIE4h+Dug0fDizbrLC2l66AlPwutSCvFWczKVrI4lquRiAiB2veQyFouH8Dd/9CXMFFc+TzzoRKvH5BFiLWdwYUgrNw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":268464},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"e2603d0de79fd95672d8e2bdfb1fbfde4111d5da","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"mongoose":"^8.18.0","typescript":"^5.9.2","@nestjs/core":"^11.1.6","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.14_1761885877950_0.3149670970744982","host":"s3://npm-registry-packages-npm-production"}},"1.5.15":{"name":"nestjs-security-cli","version":"1.5.15","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.15","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"66494d8bacb6c65cc433e5ceda2e8d4dc7c17a44","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.15.tgz","fileCount":42,"integrity":"sha512-v8Yv+DP8NIvgefVHPI+Fpr4xqW737mfirZq/DWEYe64dYiQQX8D3m6UbDzso2PPJCa1SinOmZAjMtIhVQa4Rjg==","signatures":[{"sig":"MEQCIBXEGBRThsSwJrUS/wz8dYSY4IWsYc/O8iQ+GzqU20jSAiAZfk6JM9FPy1g+i7GMWV/k+LL6H4U0zsSlUlVrneg/Rw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":210276},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"e2603d0de79fd95672d8e2bdfb1fbfde4111d5da","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.0","mocha":"^11.7.4","ts-node":"^10.9.2","mongoose":"^8.18.0","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.6","@types/mocha":"^10.0.10","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/testing":"^11.1.8","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.15_1762066041735_0.05742202069507707","host":"s3://npm-registry-packages-npm-production"}},"1.5.16":{"name":"nestjs-security-cli","version":"1.5.16","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.16","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"d3c482468db952736892af021e526fc1f19fb1e7","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.16.tgz","fileCount":42,"integrity":"sha512-Lr1g9zjVNCImJPzNQWGqD7i1AH4e37DwEpvah/eJHDpcQW6E+rwQ9GAGonHoQxybYZgX+bxi9XhVkaj2SYnBYQ==","signatures":[{"sig":"MEYCIQDeb2wAzcfGZqiIxs4kvzzAG7eGeYQx+decCVkoEHZnKgIhAOkf5gJqGV9vQmMRpIqSIU8QBV2aU9sT/kJvYSvJxLPP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":210304},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"e2603d0de79fd95672d8e2bdfb1fbfde4111d5da","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.0","mocha":"^11.7.4","ts-node":"^10.9.2","mongoose":"^8.18.0","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.6","@types/mocha":"^10.0.10","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/testing":"^11.1.8","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.16_1762067016862_0.6381019953197606","host":"s3://npm-registry-packages-npm-production"}},"1.5.17":{"name":"nestjs-security-cli","version":"1.5.17","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.17","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"f187f2eb7ae2fce411764df3c83dd3652499c850","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.17.tgz","fileCount":42,"integrity":"sha512-OhA8EQPmFKQiJSUykAatPg2IuqajUGTqQyiaBhykvZv7B9FeSb5HekYxzt5kYL7pRYPzCaQvLuV42XvjLgX4bg==","signatures":[{"sig":"MEQCICfo7Itjd8Lf/NMC9ma/B7t8phxN2oSA1TWdhNomlIagAiA+kaHDppMyjXEugbChn0mwob/lCzSet0xgXXPs4GmCSA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":210194},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"e2603d0de79fd95672d8e2bdfb1fbfde4111d5da","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.0","mocha":"^11.7.4","ts-node":"^10.9.2","mongoose":"^8.18.0","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.6","@types/mocha":"^10.0.10","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/testing":"^11.1.8","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.17_1762067363906_0.5231245137960505","host":"s3://npm-registry-packages-npm-production"}},"1.5.18":{"name":"nestjs-security-cli","version":"1.5.18","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.18","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"4e280a6279af058968a71d16d98c997f02fbc42c","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.18.tgz","fileCount":42,"integrity":"sha512-FXhdLf5Al/1PsFQTuP9CykoheiDKbc1qXDjVD2HBtfjNMGHtsholQfOyb+f/SF3NxT5Yl1+l2GPp4QIm/fOPTw==","signatures":[{"sig":"MEQCIFpYlH/+BR5vyXMTEFTQExTMPfxrj8LzWFdL+vFOHvj9AiBPvTw0dyZBTm8oHcbJawqaals6w4GSxvFj+A/aHnVS0w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":210875},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"e2603d0de79fd95672d8e2bdfb1fbfde4111d5da","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.0","mocha":"^11.7.4","ts-node":"^10.9.2","mongoose":"^8.18.0","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.6","@types/mocha":"^10.0.10","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/testing":"^11.1.8","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.18_1762103304464_0.22015640550315507","host":"s3://npm-registry-packages-npm-production"}},"1.5.19":{"name":"nestjs-security-cli","version":"1.5.19","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@1.5.19","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"17e53dc6270bf38baf6c445e76bffe55cb598121","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-1.5.19.tgz","fileCount":42,"integrity":"sha512-DE9Mi88XIzHO4YtSV200dGPmggZvmAPDs+9aaLsi/aYGSRXV5WqSGsPWcoZEqKF1W5GyS2Jg5EMku3CvrsZEmw==","signatures":[{"sig":"MEUCIAlMP9ayhNPH++Z53CzIzyoBC5EwaF/+4OIquL48LxbQAiEAp7dhRf8BH/LUVPR0aV3meZqcmcUXigYEz9o5KZrUsIs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":211371},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"e2603d0de79fd95672d8e2bdfb1fbfde4111d5da","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.0","mocha":"^11.7.4","ts-node":"^10.9.2","mongoose":"^8.18.0","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.6","@types/mocha":"^10.0.10","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/testing":"^11.1.8","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_1.5.19_1762120793822_0.6715876101015146","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"nestjs-security-cli","version":"2.0.0","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.0.0","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"9a7af7050009ca171d914e96a80047e13b378634","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.0.0.tgz","fileCount":42,"integrity":"sha512-Kn1l+IQvAg3rfRuWCamID+GptO5zd5nTs0ZVxFEKRm2MIE5chgp/r1Z5vuqzZD8V9tLfwIvIBRXPm2NnOSTcyQ==","signatures":[{"sig":"MEUCIDoYa7eMmkjk2XckZH3ehPTbjVRrTJ3Qt4j9c6obrS2MAiEA8HSjuq+DFUGJc6udV8rxv/0ekPQa3ogQYOAkP45VHIU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":211370},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"11e1f197af8ae4f9b6ee4c834cef64c1554b5e60","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.0","mocha":"^11.7.4","ts-node":"^10.9.2","mongoose":"^8.18.0","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.6","@types/mocha":"^10.0.10","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/testing":"^11.1.8","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.0.0_1762121209322_0.2332755283128951","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"nestjs-security-cli","version":"2.0.1","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.0.1","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"020ad07d7b99ee04831094ae8446f59b40d799d7","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.0.1.tgz","fileCount":42,"integrity":"sha512-5C/dSUDLGWHIjcRV9pKNd6IJpC8Y6KN+UVImy39YPIDgVUkL78PKKIcuwif60x13vl5wZHmGjA0HW3pZRmRIqA==","signatures":[{"sig":"MEYCIQCYevZ+K8Hb+pNqH/zfjiHH3P/6c8/+YxQu6CKN6CcAAgIhAIYbfzF61h/DC+ltD7iNHqwfBwgMqrwmZwiqwF+w4UJm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":211567},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"e83dab7127b934c5345fc861bdda4eb3ea85e0f2","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.0","mocha":"^11.7.4","ts-node":"^10.9.2","mongoose":"^8.18.0","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.6","@types/mocha":"^10.0.10","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/testing":"^11.1.8","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.0.1_1762121827218_0.2866137804469817","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"nestjs-security-cli","version":"2.1.0","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.1.0","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"5bf11b2140d6a1907e16277ca8b5816df5930143","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.0.tgz","fileCount":42,"integrity":"sha512-j+jm92LN/I+f3qpsoRZO/mxw2v6qviETo/DoF6MaMy6/ABmawZtsTtrQHU4K2//gx/tzuotyynK6hrCLF1Od6Q==","signatures":[{"sig":"MEQCIHAfDlDx/pVmzhIrwP9fAmKUhUw8UdxIpetxtOrIA2SYAiB5GPfIks0IW5NvdTlVoIT9aFUdd1l6zlbg5ppuiLxSiw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":212733},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"e83dab7127b934c5345fc861bdda4eb3ea85e0f2","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.0","mocha":"^11.7.4","ts-node":"^10.9.2","mongoose":"^8.18.0","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.6","@types/mocha":"^10.0.10","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/testing":"^11.1.8","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.1.0_1762243191134_0.9225877042418877","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"nestjs-security-cli","version":"2.1.1","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.1.1","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"c67c8aa25162f7f6871165807f1cb65de0964f2e","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.1.tgz","fileCount":42,"integrity":"sha512-CJNG0enBEdhHZ7cH+heyevTuXCl5imvL/Q/F3xgtAtDiipKjeCErBjE2ROhzIgZ1m1KVDGTn26oyJU7izc7P6Q==","signatures":[{"sig":"MEUCIQCUOac3SBq/k0gXazgjcH+iw3lzEmwyMlFNYrEX8h4QfwIgQKlseQMboaxe7TVRFDRJTKE1D3hM4YEDha043rKB74I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":212630},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"8148b1010440fc683af845993b976f750f6aa947","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.1.0","@nestjs/jwt":"^11.0.0","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.0","mocha":"^11.7.4","ts-node":"^10.9.2","mongoose":"^8.18.0","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.6","@types/mocha":"^10.0.10","cache-manager":"^7.2.0","@nestjs/common":"^11.1.6","@types/express":"^5.0.3","@nestjs/testing":"^11.1.8","@nestjs/mongoose":"^11.0.3","@nestjs/schedule":"^6.0.0","@nestjs/cache-manager":"^3.0.1"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.1.1_1764315126817_0.7494471284068962","host":"s3://npm-registry-packages-npm-production"}},"2.1.2":{"name":"nestjs-security-cli","version":"2.1.2","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.1.2","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"59a0321d19d2fba4759f04155ad703fc08c014ea","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.2.tgz","fileCount":42,"integrity":"sha512-uK9IvDAdAcjll7X8EWk85wG4OH56K7rNQNYzFTgpJ6Q2FctQ34e5kQuxndcCwkwb266ZYb9xiRTwNJi4aTyZ4A==","signatures":[{"sig":"MEUCIQCSwhUVDtOYREvSbW0YBy97/35MRYIVRhNhv2w3YwlUkwIgY6Eu46eNfznyQmiAZyAhByL7LUt/r/cn45n40DQyGMQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":225250},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"e0347aa2f0a5e6c213c4df3ecaaf08e6a0156773","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.2.1","@nestjs/jwt":"^11.0.2","@nestjs/config":"^1.1.5"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.2","mocha":"^11.3.0","ts-node":"^10.9.2","mongoose":"^9.1.5","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.12","@types/mocha":"^10.0.10","cache-manager":"^7.2.8","@nestjs/common":"^11.1.12","@types/express":"^5.0.6","@nestjs/testing":"^11.1.12","@nestjs/mongoose":"^11.0.4","@nestjs/schedule":"^6.1.0","@nestjs/cache-manager":"^3.1.0"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.1.2_1769244211095_0.5323492089574928","host":"s3://npm-registry-packages-npm-production"}},"2.1.3":{"name":"nestjs-security-cli","version":"2.1.3","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.1.3","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"a086da5dbf0d36a04454f6aa6e1e42e503e4e6c6","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.3.tgz","fileCount":42,"integrity":"sha512-5Tj7qzC6COAreZkFh5tWfE07HJ2nIgK/ON7efvjQFTb0ozgtgAAgUYltKEYh6t7MsLxPMEHIDeGFniLy4V2OHQ==","signatures":[{"sig":"MEUCIEWM68ghAQZrkc7ZV80HFXvOeHcmQ786ySbC6tUvam6PAiEAoXs10Wo8SMSx9jGmHHSrtNFQClQ4owqiA8/aZ5jlFwI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":239650},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"029f14e5d9e0ce04fe31aaafe13da584c767aeb6","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.3","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.2.1","@nestjs/jwt":"^11.0.2","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.2","mocha":"^11.7.5","ts-node":"^10.9.2","mongoose":"^9.1.5","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.12","@types/mocha":"^10.0.10","cache-manager":"^7.2.8","@nestjs/common":"^11.1.12","@types/express":"^5.0.6","@nestjs/testing":"^11.1.12","@nestjs/mongoose":"^11.0.4","@nestjs/schedule":"^6.1.0","@nestjs/cache-manager":"^3.1.0"},"peerDependencies":{"mongoose":"^9.1.5","@nestjs/core":"^11.1.12","cache-manager":"^7.2.8","@nestjs/common":"^11.1.12","@nestjs/mongoose":"^11.0.4","@nestjs/schedule":"^6.1.0","@nestjs/cache-manager":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.1.3_1769488634721_0.685361862833086","host":"s3://npm-registry-packages-npm-production"}},"2.1.4":{"name":"nestjs-security-cli","version":"2.1.4","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.1.4","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"77d202951a64c864c079c6f423e0948871226a80","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.4.tgz","fileCount":42,"integrity":"sha512-4BadxG49OEcz/U8chZH98tTTNFj3l3B3oCsg+ikk0nsKM+KK/KfiHPYtlSntNhwLZN87M8aKeiW0yRe/tuDZKA==","signatures":[{"sig":"MEUCIGZmkVqseune4U7gBHhQbqCzLcGjFo6IfD8J1YgA3CXIAiEA+Q2Cjr7n9my8cYvwKzC1OImEv8bDILDJlkFH9HGud2Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":274470},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"b0254bf6c79ec3da5db43cd7dadc4bc53e10ad2b","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"11.9.0","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.2.1","@nestjs/jwt":"^11.0.2","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.2","mocha":"^11.7.5","ts-node":"^10.9.2","mongoose":"^9.1.5","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.12","@types/mocha":"^10.0.10","cache-manager":"^7.2.8","@nestjs/common":"^11.1.12","@types/express":"^5.0.6","@nestjs/testing":"^11.1.12","@nestjs/mongoose":"^11.0.4","@nestjs/schedule":"^6.1.0","@nestjs/cache-manager":"^3.1.0"},"peerDependencies":{"mongoose":"^9.1.5","@nestjs/core":"^11.1.12","cache-manager":"^7.2.8","@nestjs/common":"^11.1.12","@nestjs/mongoose":"^11.0.4","@nestjs/schedule":"^6.1.0","@nestjs/cache-manager":"^3.1.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.1.4_1771040408009_0.569497885427547","host":"s3://npm-registry-packages-npm-production"}},"2.1.5":{"name":"nestjs-security-cli","version":"2.1.5","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.1.5","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"5b0adbb9ead3a224b158934d3ad3268a6247b777","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.5.tgz","fileCount":42,"integrity":"sha512-o2cZrkPuggG6PL2EJsGuXzKlqSiZ7Qc+OEKNPZZ22kohOaMK3/l7IcjUMet+LuN2MHMj3DGo2Er/QXMP9NqUrA==","signatures":[{"sig":"MEYCIQDLp+8vEZ6KipsKYgJsMJLxUpdEXNz0XtoASWNrNuHKpgIhANJfDz9C0K8SIO/AqB6+JTXgsziZcCk+O5v+K2IwpPJQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":274571},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"c46e94f8cc93c5ba9bb3d91b1ed40852ac99bf2d","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"11.9.0","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.2.1","@nestjs/jwt":"^11.0.2","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.2","mocha":"^11.7.5","ts-node":"^10.9.2","mongoose":"^9.1.5","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.12","@types/mocha":"^10.0.10","cache-manager":"^7.2.8","@nestjs/common":"^11.1.12","@types/express":"^5.0.6","@nestjs/testing":"^11.1.12","@nestjs/mongoose":"^11.0.4","@nestjs/schedule":"^6.1.0","@nestjs/cache-manager":"^3.1.0"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0 || ^9.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.1.5_1771045836845_0.38829040259590974","host":"s3://npm-registry-packages-npm-production"}},"2.1.6":{"name":"nestjs-security-cli","version":"2.1.6","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.1.6","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"a1229363d0d6becbdaa1cf0ffe774935024b92f9","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.6.tgz","fileCount":42,"integrity":"sha512-t39PMA+OQW+jDDPJYJEEkzSFH0aiaYFfbe21Zvx0vZV/YCLESfII+c0DNX8P1W2PLeQm9I5UBcxwaeGzjseywQ==","signatures":[{"sig":"MEUCIG3KtqI3E5PdCg1Ygy375xBcIR+HP70xuMN2uRJ6TErAAiEA0c7jjYKls7dzBpxD74l8bWiPuNzB/qbvy1mS7lchHiE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":274447},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"c46e94f8cc93c5ba9bb3d91b1ed40852ac99bf2d","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"11.9.0","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.19.0","dependencies":{"express":"^5.2.1","@nestjs/jwt":"^11.0.2","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.2","mocha":"^11.7.5","ts-node":"^10.9.2","mongoose":"^9.1.5","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.12","@types/mocha":"^10.0.10","cache-manager":"^7.2.8","@nestjs/common":"^11.1.12","@types/express":"^5.0.6","@nestjs/testing":"^11.1.12","@nestjs/mongoose":"^11.0.4","@nestjs/schedule":"^6.1.0","@nestjs/cache-manager":"^3.1.0"},"peerDependencies":{"mongoose":"^7.0.0 || ^8.0.0 || ^9.0.0","@nestjs/core":"^10.0.0 || ^11.0.0","cache-manager":"^5.0.0 || ^6.0.0 || ^7.0.0","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/mongoose":"^10.0.0 || ^11.0.0","@nestjs/schedule":"^4.0.0 || ^5.0.0 || ^6.0.0","@nestjs/cache-manager":"^2.0.0 || ^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.1.6_1771528497262_0.06475424028930221","host":"s3://npm-registry-packages-npm-production"}},"2.1.7":{"name":"nestjs-security-cli","version":"2.1.7","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.1.7","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"266853d9d13a53237724695438a7eedf12d53b22","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.7.tgz","fileCount":39,"integrity":"sha512-0fX0EqY5YfapCt+mkkUdJJ2I3FgzTlx9hb5+G0rcvPo7kPhcxyu1OhwQ3ocPg6xelu7iAHxatVfDdFjMcteNWQ==","signatures":[{"sig":"MEYCIQC7J+DeEcPPaRiaotfb2vFG2ncERl0e83NTpu57HtfXhAIhAPfaKwtlw3ZcUZbecasNwRi6gqpthtoSc0uAHG9GE/dV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":273435},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"023137b25d032c17f5a561849e4e974246abb1e1","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.4","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.22.1","dependencies":{"express":"^5.2.1","@nestjs/jwt":"^11.0.2","@nestjs/config":"^4.0.2"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.2","mocha":"^11.7.5","ts-node":"^10.9.2","mongoose":"^9.1.5","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.1.12","@types/mocha":"^10.0.10","cache-manager":"^7.2.8","@nestjs/common":"^11.1.12","@types/express":"^5.0.6","@nestjs/testing":"^11.1.12","@nestjs/mongoose":"^11.0.4","@nestjs/schedule":"^6.1.0","@nestjs/cache-manager":"^3.1.0"},"peerDependencies":{"mongoose":"^9.1.5","@nestjs/core":"^11.1.19","cache-manager":"^7.2.8","@nestjs/common":"^11.1.19","@nestjs/mongoose":"^11.0.4","@nestjs/schedule":"^6.1.3","@nestjs/cache-manager":"^3.1.2"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.1.7_1778648494303_0.7551300094513809","host":"s3://npm-registry-packages-npm-production"}},"2.1.8":{"name":"nestjs-security-cli","version":"2.1.8","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.1.8","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"4fe72dcdde54a965c930480e7b7e9ab09af86581","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.8.tgz","fileCount":39,"integrity":"sha512-VvxEaJ52VnXa7ZoUJMDxO5nexqBzeYP0iw0gYh7dJFUTTpIdUnhKcQ4PotN619EI4sBvmQuN0fmQn+xuARp+Wg==","signatures":[{"sig":"MEUCIFjD1wHwBTQx8Xqb4nf6vZW4VwgNdj364ZTUFzAdYNx9AiEAuynYj5Cjry2V3rM0nCby1lua4JNqMGQ4dJkuqP1xgYQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":279470},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"522d5a0b1d7d32d535c9b30f74d3b388133277a7","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"10.9.8","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"22.23.1","dependencies":{"express":"^5.2.1","@nestjs/jwt":"^11.0.2","@nestjs/config":"^4.0.4"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.2","mocha":"^12.0.0","ts-node":"^10.9.2","mongoose":"^9.9.4","typescript":"^5.9.3","@types/chai":"^5.2.3","@nestjs/core":"^11.2.3","@types/mocha":"^10.0.10","cache-manager":"^7.2.9","@nestjs/common":"^11.2.3","@types/express":"^5.0.6","@nestjs/testing":"^11.2.3","@nestjs/mongoose":"^11.0.4","@nestjs/schedule":"^6.1.3","@nestjs/cache-manager":"^3.1.3"},"peerDependencies":{"mongoose":"^9.9.4","@nestjs/core":"^11.2.3","cache-manager":"^7.2.9","@nestjs/common":"^11.2.3","@nestjs/mongoose":"^11.0.4","@nestjs/schedule":"^6.1.3","@nestjs/cache-manager":"^3.1.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.1.8_1788280188105_0.06975639103119646","host":"s3://npm-registry-packages-npm-production"}},"2.1.9":{"name":"nestjs-security-cli","version":"2.1.9","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.1.9","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"0c3ed81570e2b0abcebdb5c307d69bdf26a559a1","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.9.tgz","fileCount":2,"integrity":"sha512-WmmwSpcBuhFu7EHcXDSug/lfqYoWx6zXkxyHNWS+iU/O8dbz7TjU+ri8FhaI84NF1QV792EiPr88kQ7oQ8pbYQ==","signatures":[{"sig":"MEQCIFHZVaJ/w1WaB75modhg5fdklSoNGimEw30+kk80USlLAiAwuegahiz54rChhx2Uldm81WUVRcADt2F+lZPwRYLE4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8919},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"522d5a0b1d7d32d535c9b30f74d3b388133277a7","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"11.19.0","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"24.20.0","dependencies":{"express":"^5.2.1","@nestjs/jwt":"^12.0.1","@nestjs/config":"^12.0.0"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.2","mocha":"^12.0.0","ts-node":"^10.9.2","mongoose":"^9.9.4","typescript":"^7.0.2","@types/chai":"^5.2.3","@nestjs/core":"^12.0.1","@types/mocha":"^10.0.10","cache-manager":"^7.2.9","@nestjs/common":"^12.0.1","@types/express":"^5.0.6","@nestjs/testing":"^12.0.1","@nestjs/mongoose":"^12.0.0","@nestjs/schedule":"^12.0.1","@nestjs/cache-manager":"^12.0.0"},"peerDependencies":{"mongoose":"^9.9.4","@nestjs/core":"^11.2.3","cache-manager":"^7.2.9","@nestjs/common":"^11.2.3","@nestjs/mongoose":"^11.0.4","@nestjs/schedule":"^6.1.3","@nestjs/cache-manager":"^3.1.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.1.9_1788501444615_0.6070020975290915","host":"s3://npm-registry-packages-npm-production"}},"2.1.10":{"name":"nestjs-security-cli","version":"2.1.10","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.1.10","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"15609e347dc88b9ec7aaed3de294a9303121a5c2","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.10.tgz","fileCount":2,"integrity":"sha512-4L+gMJUNQ2u9gtvGckSkFUMCjTGBg8mDc2rtUYs3AlEHi41eQNIqpNTrCWTCWypeNBugeh8xK9amXuhQE5e7zA==","signatures":[{"sig":"MEYCIQDeRToD+BT7g7/TlmWx/Q+/t4A9ZKwaKa62SOadijSbAQIhAN3HvSREhWnRnQmHor9huY1zm0j0xiTOTGvrjWtIDLSw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8922},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"522d5a0b1d7d32d535c9b30f74d3b388133277a7","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"11.19.0","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"24.20.0","dependencies":{"express":"^5.2.1","@nestjs/jwt":"^12.0.1","@nestjs/config":"^12.0.0"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.2","mocha":"^12.0.0","ts-node":"^10.9.2","mongoose":"^9.9.4","typescript":"^7.0.2","@types/chai":"^5.2.3","@nestjs/core":"^12.0.1","@types/mocha":"^10.0.10","cache-manager":"^7.2.9","@nestjs/common":"^12.0.1","@types/express":"^5.0.6","@nestjs/testing":"^12.0.1","@nestjs/mongoose":"^12.0.0","@nestjs/schedule":"^12.0.1","@nestjs/cache-manager":"^12.0.0"},"peerDependencies":{"mongoose":"^9.9.4","@nestjs/core":"^12.0.1","cache-manager":"^7.2.9","@nestjs/common":"^12.0.1","@nestjs/mongoose":"^12.0.0","@nestjs/schedule":"^12.0.1","@nestjs/cache-manager":"^12.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.1.10_1788501783426_0.401541517455134","host":"s3://npm-registry-packages-npm-production"}},"2.1.11":{"name":"nestjs-security-cli","version":"2.1.11","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.1.11","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"800a6789518fdfa33741048a1e96d67f733c8367","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.11.tgz","fileCount":2,"integrity":"sha512-zznj6/miJ2wMdlaqf4DC9hRWz6JnSkuRjjod3i4iH/XDqoMAWALOr1G6NMAAkUkcXS5fkirbagJ10/NJxsYBiA==","signatures":[{"sig":"MEQCIDsJZcbi/+B1hqjrtQBNw3g98DSanfkVpD4/8cb9ieA8AiBIKDMA5w7qrfgBMr2uD7ndlQQDA4ZLw+X1X7hKY4xryQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8922},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"522d5a0b1d7d32d535c9b30f74d3b388133277a7","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"11.19.0","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"24.20.0","dependencies":{"express":"^5.2.1","@nestjs/jwt":"^12.0.1","@nestjs/config":"^12.0.0"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.2","mocha":"^12.0.0","ts-node":"^10.9.2","mongoose":"^9.9.4","typescript":"^6.0.3","@types/chai":"^5.2.3","@nestjs/core":"^12.0.1","@types/mocha":"^10.0.10","cache-manager":"^7.2.9","@nestjs/common":"^12.0.1","@types/express":"^5.0.6","@nestjs/testing":"^12.0.1","@nestjs/mongoose":"^12.0.0","@nestjs/schedule":"^12.0.1","@nestjs/cache-manager":"^12.0.0"},"peerDependencies":{"mongoose":"^9.9.4","@nestjs/core":"^12.0.1","cache-manager":"^7.2.9","@nestjs/common":"^12.0.1","@nestjs/mongoose":"^12.0.0","@nestjs/schedule":"^12.0.1","@nestjs/cache-manager":"^12.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.1.11_1788541056290_0.3606251773118796","host":"s3://npm-registry-packages-npm-production"}},"2.1.12":{"name":"nestjs-security-cli","version":"2.1.12","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","_id":"nestjs-security-cli@2.1.12","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"dist":{"shasum":"26f65b539fcf981c8ddb58d215cd9fcb3856396c","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.12.tgz","fileCount":2,"integrity":"sha512-W3KGkFtZ3lNPujUnsCg1/gEYfjVwfJ59vPIu7L18cFJ6DawR89SfFQTz2sfaHwlEnU4bUVMiARgGQKjULbDk5g==","signatures":[{"sig":"MEYCIQD8moU5gvMIab2dooUgKjtaZNhk9AqiFA29QHtlQoaXfgIhALF6LzOVmX22RXLr9lu3sxZnFKRoEA34xKRC0sQPgZfi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8922},"main":"dist/index.js","types":"dist/index.d.ts","funding":[{"url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00","type":"Coffee"}],"gitHead":"522d5a0b1d7d32d535c9b30f74d3b388133277a7","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build"},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"_npmVersion":"11.19.0","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","directories":{},"_nodeVersion":"24.20.0","dependencies":{"express":"^5.2.1","@nestjs/jwt":"^12.0.1","@nestjs/config":"^12.0.0"},"_hasShrinkwrap":false,"devDependencies":{"chai":"^6.2.2","mocha":"^12.0.0","ts-node":"^10.9.2","mongoose":"^9.9.4","typescript":"^6.0.3","@types/chai":"^5.2.3","@nestjs/core":"^12.0.1","@types/mocha":"^10.0.10","cache-manager":"^7.2.9","@nestjs/common":"^12.0.1","@types/express":"^5.0.6","@nestjs/testing":"^12.0.1","@nestjs/mongoose":"^12.0.0","@nestjs/schedule":"^12.0.1","@nestjs/cache-manager":"^12.0.0"},"peerDependencies":{"mongoose":"^9.9.4","@nestjs/core":"^12.0.1","cache-manager":"^7.2.9","@nestjs/common":"^12.0.1","@nestjs/mongoose":"^12.0.0","@nestjs/schedule":"^12.0.1","@nestjs/cache-manager":"^12.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-security-cli_2.1.12_1788541579145_0.7122391443169975","host":"s3://npm-registry-packages-npm-production"}},"2.1.13":{"name":"nestjs-security-cli","version":"2.1.13","description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","clean":"rm -rf dist","prebuild":"npm run clean","prepublishOnly":"npm run build","dev":"tsc --watch"},"keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","peerDependencies":{"@nestjs/cache-manager":"^12.0.0","@nestjs/common":"^12.0.1","@nestjs/core":"^12.0.1","@nestjs/mongoose":"^12.0.0","@nestjs/schedule":"^12.0.1","cache-manager":"^7.2.9","mongoose":"^9.9.4"},"devDependencies":{"@nestjs/cache-manager":"^12.0.0","@nestjs/common":"^12.0.1","@nestjs/core":"^12.0.1","@nestjs/mongoose":"^12.0.0","@nestjs/schedule":"^12.0.1","@nestjs/testing":"^12.0.1","@types/chai":"^5.2.3","@types/express":"^5.0.6","@types/mocha":"^10.0.10","cache-manager":"^7.2.9","chai":"^6.2.2","mocha":"^12.0.0","mongoose":"^9.9.4","ts-node":"^10.9.2","typescript":"^6.0.3"},"dependencies":{"@nestjs/config":"^12.0.0","@nestjs/jwt":"^12.0.1","express":"^5.2.1"},"funding":[{"type":"Coffee","url":"https://buy.stripe.com/eVq00l2Dc4k05Bz9pY4Rq00"}],"gitHead":"522d5a0b1d7d32d535c9b30f74d3b388133277a7","_id":"nestjs-security-cli@2.1.13","_nodeVersion":"24.20.0","_npmVersion":"11.19.0","dist":{"integrity":"sha512-bH3OMYKUaPaw7hRTum0yPcjEJAqDVox++3QZXcHiluBRiTFzdErBu7/87AgubaS7+XavE+n1kszuMWZzSY+NuQ==","shasum":"dcc66c8f5e7e3d569ade3a2abca29aaeb95efc4e","tarball":"https://registry.npmjs.org/nestjs-security-cli/-/nestjs-security-cli-2.1.13.tgz","fileCount":50,"unpackedSize":88132,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD/saaK8miC4tDzw1MAB2LKUwO880xJhGxrtVOwRj4KRAIgKyHky3ozVaLSeW6bbKDohtZST3h62FTY/vgNqpTMet0="}]},"_npmUser":{"name":"snolan760","email":"snolan760@gmail.com"},"directories":{},"maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/nestjs-security-cli_2.1.13_1788542000889_0.47755085035131084"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-05T20:19:38.238Z","modified":"2026-09-04T17:13:21.201Z","1.0.0":"2025-09-05T20:19:38.447Z","1.0.1":"2025-09-05T20:23:28.175Z","1.0.2":"2025-09-05T20:28:49.485Z","1.0.3":"2025-09-05T20:52:11.191Z","1.0.4":"2025-09-05T20:58:09.794Z","1.1.0":"2025-09-05T21:07:09.125Z","1.1.1":"2025-09-05T21:43:17.385Z","1.2.1":"2025-09-05T22:10:00.290Z","1.3.0":"2025-09-05T22:22:48.939Z","1.3.1":"2025-09-06T07:15:11.734Z","1.3.2":"2025-09-06T19:20:02.161Z","1.3.3":"2025-09-06T22:15:18.888Z","1.3.4":"2025-09-06T22:20:35.390Z","1.3.5":"2025-09-06T22:23:46.439Z","1.3.6":"2025-09-08T07:10:14.136Z","1.3.7":"2025-09-08T07:26:01.635Z","1.3.8":"2025-09-08T07:35:32.686Z","1.3.9":"2025-09-08T07:38:12.572Z","1.4.9":"2025-09-09T03:20:59.383Z","1.4.10":"2025-09-09T03:33:18.159Z","1.4.11":"2025-09-09T05:10:32.357Z","1.5.0":"2025-09-09T05:54:03.094Z","1.5.1":"2025-09-09T06:04:47.849Z","1.5.2":"2025-09-09T06:29:43.451Z","1.5.3":"2025-09-09T07:02:13.608Z","1.5.4":"2025-09-09T07:17:25.362Z","1.5.5":"2025-09-09T07:48:11.244Z","1.5.6":"2025-09-09T07:54:17.899Z","1.5.7":"2025-09-09T20:07:48.098Z","1.5.8":"2025-09-09T22:48:31.304Z","1.5.9":"2025-09-09T22:51:15.276Z","1.5.10":"2025-09-09T22:57:15.626Z","1.5.11":"2025-09-11T03:53:41.874Z","1.5.12":"2025-09-23T16:34:09.989Z","1.5.13":"2025-10-25T03:31:11.504Z","1.5.14":"2025-10-31T04:44:38.144Z","1.5.15":"2025-11-02T06:47:21.955Z","1.5.16":"2025-11-02T07:03:37.081Z","1.5.17":"2025-11-02T07:09:24.097Z","1.5.18":"2025-11-02T17:08:24.726Z","1.5.19":"2025-11-02T21:59:54.031Z","2.0.0":"2025-11-02T22:06:49.523Z","2.0.1":"2025-11-02T22:17:07.402Z","2.1.0":"2025-11-04T07:59:51.350Z","2.1.1":"2025-11-28T07:32:07.025Z","2.1.2":"2026-01-24T08:43:31.261Z","2.1.3":"2026-01-27T04:37:14.877Z","2.1.4":"2026-02-14T03:40:08.142Z","2.1.5":"2026-02-14T05:10:36.989Z","2.1.6":"2026-02-19T19:14:57.398Z","2.1.7":"2026-05-13T05:01:34.556Z","2.1.8":"2026-09-01T16:29:48.257Z","2.1.9":"2026-09-04T05:57:24.745Z","2.1.10":"2026-09-04T06:03:03.558Z","2.1.11":"2026-09-04T16:57:36.408Z","2.1.12":"2026-09-04T17:06:19.289Z","2.1.13":"2026-09-04T17:13:21.029Z"},"author":{"name":"Shawn Nolan","email":"shawn@shawnnolan.com"},"license":"MIT","keywords":["nestjs","security","ip-blocking","rbac","attack-detection","rate-limiting","blacklist"],"description":"Advanced IP blocking, role-based security, and attack detection for NestJS applications","maintainers":[{"name":"snolan760","email":"snolan760@gmail.com"}],"readme":"# NestJS Security CLI\n\nAdvanced IP blocking, role-based security, and attack detection for NestJS applications.\n\n## Requirements\n\n- Node.js >= 22.x\n- NestJS >= 11.x\n- TypeScript >= 5.x\n- You'll need to maintain the `@nestjs/cache-manager` and `cache-manager` packages.\n\n## Installation\n\n```bash\nnpm install nestjs-security-cli\n```\n\n## Quick Start\n\n```typescript\nimport { MiddlewareConsumer, Module, RequestMethod } from '@nestjs/common'\nimport { MongooseModule } from '@nestjs/mongoose'\nimport { SecurityModule, BlacklistedIp, BlacklistedIpSchema, SecurityMiddleware } from 'nestjs-security-cli'\n\n@Module( {\n\timports: [\n\t\tSecurityModule.forRootAsync( {\n\t\t\tenableAdminPanel: true,\n\t\t\tuseFactory: () => ({\n\t\t\t\tenableDatabase: true,\n\t\t\t\tdefaultBlockDurationHours: 24,\n\t\t\t\tenableAutoBlocking: true,\n\t\t\t\t// example of customizing the suspicious patterns\n\t\t\t\tsuspiciousPatterns: [\n\t\t\t\t\t{ pattern: '/vendor', name: 'Composer Attempt' },\n\t\t\t\t\t{ pattern: '/phpunit', name: 'PHPUnit Attempt' },\n\t\t\t\t\t{ pattern: '/lib', name: 'Lib Attempt' },\n\t\t\t\t\t{ pattern: '/laravel', name: 'Laravel Attempt' },\n\t\t\t\t\t{ pattern: '/www', name: 'WWW Attempt' },\n\t\t\t\t\t{ pattern: '/ws', name: 'Web Socket Attempt' },\n\t\t\t\t\t{ pattern: '/yii', name: 'Yii Attempt' },\n\t\t\t\t\t{ pattern: '/zend', name: 'Zend Attempt' },\n\t\t\t\t\t{ pattern: '/test', name: 'Test Attempt' },\n\t\t\t\t\t{ pattern: '/tests', name: 'Tests Attempt' },\n\t\t\t\t\t{ pattern: '/testing', name: 'Testing Attempt' },\n\t\t\t\t\t{ pattern: '/cms', name: 'CMS Attempt' },\n\t\t\t\t\t{ pattern: '/crm', name: 'CRM Attempt' }\n\t\t\t\t]\n\t\t\t}),\n\t\t\timports: [ MongoDbModule ],\n\t\t\tproviders: [ ...IpBlockerProvider ]\n\t\t} )\n\t]\n} )\nexport class AppModule {\n}\n```\n\n## DATABASE_CONNECTION provider\n\nif you're needing to use the database connection, and the import options isn't working, you can try to pass it directly\ninto the providers array.\n\n```text\n    {\n        provide: 'DATABASE_CONNECTION',\n        inject: [ConfigService],\n        useFactory: (configService: ConfigService): Promise<typeof mongoose> => {\n        return mongoose.connect(configService.get<string>('DATABASE_HOST'), {\n            dbName: configService.get<string>('DATABASE_NAME')\n        })\n    }\n```\n\n## with forRoot\n\n```typescript\nimport { MiddlewareConsumer, Module, RequestMethod } from '@nestjs/common'\nimport { ConfigModule, ConfigService } from '@nestjs/config'\nimport { MongooseModule } from '@nestjs/mongoose'\nimport { SecurityModule, BlacklistedIp, BlacklistedIpSchema } from 'nestjs-security-cli'\n\n@Module( {\n\timports: [\n\t\tConfigModule.forRoot(),\n\t\tMongoDbModule,\n\t\tSecurityModule.forRoot( {\n\t\t\tenableDatabase: true,\n\t\t\tdefaultBlockDurationHours: 24,\n\t\t\tenableAutoBlocking: true,\n\t\t\tenableAdminPanel: true,\n\t\t} ),\n\t],\n\tproviders: [ ...IpBlockerProvider ], // Required if enableDatabase is true\n} )\nexport class AppModule {\n}\n\nexport class AppModule {}\n```\n\n## Cache-Only Mode (No Database)\n\nIf you don't want to use MongoDB, you can skip the schema registration:\n\n```typescript\nimport { Module } from '@nestjs/common'\nimport { SecurityModule } from 'nestjs-security-cli'\n\n@Module( {\n\timports: [\n\t\tSecurityModule.forRoot( {\n\t\t\tenableDatabase: false, // This will use only cache\n\t\t\tdefaultBlockDurationHours: 24,\n\t\t\tenableAutoBlocking: true\n\t\t} )\n\t]\n} )\nexport class AppModule {}\n````\n\n## SecurityService\n\nSince this has switched to using the `@Inject('IP_BLOCKER')` model to be registered in your app. So by passing the\nIpBlockerProvider, it will automatically register the model. More on this down below.\n\n## Clean up cron\n\nThere's a cron that runs to clean up old blocks. By default, it runs every day at midnight.\n`CLEANUP_CRON` environment variable.\n\n```text\n\t// Cleanup expired entries (runs daily)\n\t@Cron(CronExpression.EVERY_DAY_AT_MIDNIGHT)\n\tasync cleanupExpiredBlocks(): Promise<void> {\n\t\tconst result = await this.blacklistedIpModel.updateMany(\n\t\t\t{ active: true, expiresAt: { $lt: new Date() } },\n\t\t\t{ active: false }\n\t\t)\n\t\tconsole.log(`🧹 Cleaned up ${result.modifiedCount} expired IP blocks`)\n\t}\n```\n\n## Role type\n\nThe roles that can be defined in your app. Persist the roles in your user model as an array of strings.\n\n```text\nexport type Role = 'Admin' | 'User' | 'Moderator' | 'Guest'\n```\n\n## Register the IpBlacklistGuard globally\n### this is no longer needed, since the SecurityModule is now registered globally by default\nAll you have to do is apply the guard to your controllers.\n```\n@UseGuards(IpBlacklistGuard) // add this to any, or all controller endpoints\n@Controller()\nexport class AppController {\n\t@Get()\n\tsomeEndpoint(): object {\n\t\treturn { message: 'Hello World!' }\n\t}\n}\n```\n\n\n## Admin & Roles guards\n\n* The Admin guard accepts ONLY users with the role `Admin`.\n* The Role guard accepts users with ane of (or all) the type \"Roles\" [as mentioned above](#role-type).\n* To leverage the admin panel, you'll need to create a role called `Admin`. The user model in your app should have a\n  field called \"Roles\", which is an array of strings.\n\nTo use the `AdminGuard` just add the decorator to your controller method.\n\n```typescript\n@UseGuards( AdminGuard )\n@Controller( 'my-contoller' )\n```\n\nTo use the `RoleGuard` just add the decorator to your controller method.\n\n```typescript\n@Roles( 'Admin', 'User' )\n@UseGuards( RoleGuard )\n```\n\nThe `AdminGuard` uses both `JwtService` and `ConfigService` to verify the JWT token. So if you're using this in your\napp,\njust make sure that the env var is `JWT_SECRET` and this will work. ( This could be dynamic later ). Also, when passing\nthe token to the methods, you'll need to pass the token as `access_token` in either the request cookies,\nor the header authorization bearer token.\n\n```typescript\nconst user = await this.jwtService.verifyAsync( token, {\n\tsecret: this.configService.get<string>( 'JWT_SECRET' )\n} )\n```\n\n## The admin panel\n\nTo use the built-in admin panel, you can set the `enableAdminPanel: true` in the\nconfigs [as shown in the](#quick-start) to set the available endpoints.\n\nAvailable endpoints:\n\n- POST `/security/blacklist`. This will accept a JSON object with the following fields:\n    - `ip`: The IP address to blacklist\n    - `hours`: The duration of the blacklist in hours\n    - `reason`: The reason for the blacklist\n- GET `/security/blacklist`. This will return a list of all blacklisted IPs\n- GET `/security/blacklist/:ip`. This will return the details of a specific IP address\n- DELETE `/security/blacklist/:ip`. This will delete a specific IP address\n- GET `/security/analytics`. This will return analytics for the last 24 hours\n\n## Features\n\n- 🛡️ IP Blacklisting with MongoDB persistence\n- 🚫 Automatic attack pattern detection\n- ⚡ Redis/Memory caching for fast lookups\n- 👥 Role-based access control (RBAC)\n- 📊 Security analytics and reporting\n- ⏰ Scheduled cleanup of expired blocks\n\n## Configuration Options\n\n```typescript\nexport interface SecurityConfigInterface {\n\tenableDatabase?: boolean\n\tmongooseConnection?: string\n\tcache?: {\n\t\tttl?: number\n\t\tmax?: number\n\t\tstore?: any\n\t}\n\tenableAdminPanel?: boolean\n\tadminPath?: string\n\tenableAutoBlocking?: boolean\n\tsuspiciousPatterns?: Array<{\n\t\tpattern: string\n\t\tname: string\n\t\tblockDurationHours?: number\n\t}>\n\tdefaultBlockDurationHours?: number\n\tenableRateLimit?: boolean\n\trateLimitOptions?: {\n\t\twindowMs?: number\n\t\tmax?: number\n\t}\n\tenableLogging?: boolean\n\tlogLevel?: 'error' | 'warn' | 'info' | 'debug'\n}\n```\n\n## API Documentation\n\n[coming soon]\n\n## License\n\nMIT","readmeFilename":"README.md"}