{"_id":"@antares-core/license","_rev":"13-7745fdcafc546fbb68ee1aa187bbf9ed","name":"@antares-core/license","dist-tags":{"latest":"2.5.3"},"versions":{"2.1.0":{"name":"@antares-core/license","version":"2.1.0","license":"MIT","_id":"@antares-core/license@2.1.0","maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"dist":{"shasum":"4258b623fdc032b4307930478add64a3a54f7bd5","tarball":"https://registry.npmjs.org/@antares-core/license/-/license-2.1.0.tgz","fileCount":30,"integrity":"sha512-X1QWYsE0eL6qLcU1KJHD+JtvIOgrz0HjV0KPfzGq0/AD8+/AL0wRcKhdWwpbO+sjG9qjVRSvfIgseXgvgonwOw==","signatures":[{"sig":"MEQCIBPznRhyxVF0qG1DFn+fClzHq8g/u2cPGot1HkTO0dhRAiAOKcPZZctzJH0G6KGwkXDk6LWTJaXpaJx4ksKYVojdww==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":94485},"main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc -p tsconfig.build.json","clean":"rm -rf dist","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"christ986","email":"5899682@qq.com"},"_npmVersion":"11.6.2","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","directories":{},"_nodeVersion":"24.11.1","dependencies":{"reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.7","typescript":"^5.4.5","@types/node":"^20.12.12"},"peerDependencies":{"rxjs":"^7.8.1","@nestjs/core":"^10.3.7","@nestjs/common":"^10.3.7","@antares-core/core":"workspace:*"},"peerDependenciesMeta":{"rxjs":{"optional":false},"@nestjs/core":{"optional":false},"@nestjs/common":{"optional":false},"@antares-core/core":{"optional":false}},"_npmOperationalInternal":{"tmp":"tmp/license_2.1.0_1788110797655_0.767775338456445","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"@antares-core/license","version":"2.1.1","license":"MIT","_id":"@antares-core/license@2.1.1","maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"dist":{"shasum":"5784221d05e6a5a9c7943ef72e19143839d6722a","tarball":"https://registry.npmjs.org/@antares-core/license/-/license-2.1.1.tgz","fileCount":30,"integrity":"sha512-dbSEF1Hlnss3bWmLziD6osZ/Q6+zeEPUHct94xQ6ZlEcSOrijjNBvx+K0R/6hp2bdcb03EuR/66ESSCalhXH7A==","signatures":[{"sig":"MEUCIQCrCPFwEpQsisPsCsA8mT4APBa/uBqxnNf75Gu0sCvLIQIgar91s/4yLFl4N8gnfEeTpJpONgKJJZijSEqKk9VJ90k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95037},"main":"dist/index.js","_from":"file:antares-core-license-2.1.1.tgz","types":"dist/index.d.ts","scripts":{"build":"tsc -p tsconfig.build.json","clean":"rm -rf dist","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"christ986","email":"5899682@qq.com"},"_resolved":"/private/var/folders/xs/hhn30xd16fgdn8jt85s1lpf00000gn/T/f3ce3ceef63ef21144eaa9826f700baf/antares-core-license-2.1.1.tgz","_integrity":"sha512-dbSEF1Hlnss3bWmLziD6osZ/Q6+zeEPUHct94xQ6ZlEcSOrijjNBvx+K0R/6hp2bdcb03EuR/66ESSCalhXH7A==","_npmVersion":"11.6.2","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","directories":{},"_nodeVersion":"24.11.1","dependencies":{"reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.7","typescript":"^5.4.5","@types/node":"^20.12.12"},"peerDependencies":{"rxjs":"^7.8.1","@nestjs/core":"^10.3.7","@nestjs/common":"^10.3.7","@antares-core/core":"2.1.1"},"peerDependenciesMeta":{"rxjs":{"optional":false},"@nestjs/core":{"optional":false},"@nestjs/common":{"optional":false},"@antares-core/core":{"optional":false}},"_npmOperationalInternal":{"tmp":"tmp/license_2.1.1_1788112733244_0.45969699687720533","host":"s3://npm-registry-packages-npm-production"}},"2.1.2":{"name":"@antares-core/license","version":"2.1.2","license":"MIT","_id":"@antares-core/license@2.1.2","maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"dist":{"shasum":"c00225cade2a126994ea64d8c6cc84e96a2544ce","tarball":"https://registry.npmjs.org/@antares-core/license/-/license-2.1.2.tgz","fileCount":30,"integrity":"sha512-pfm+0j5UuZslhyuuymDvRBg7CDdtAz+EIbx7aw2Btx9vbo0sCpexQ7KwtaF6oR9/H3lBKlJmkRSpq7jGF2xn7w==","signatures":[{"sig":"MEQCIAtn4skI3bI+3b0Tcr4cmjhW5zy9USlMH4EfifEgIwJsAiA1ffmlGS9A87mWvME1J3HXct9Orvv1JXSBKFusIZMkfA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95038},"main":"dist/index.js","_from":"file:antares-core-license-2.1.2.tgz","types":"dist/index.d.ts","scripts":{"build":"tsc -p tsconfig.build.json","clean":"rm -rf dist","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"christ986","email":"5899682@qq.com"},"_resolved":"/private/var/folders/xs/hhn30xd16fgdn8jt85s1lpf00000gn/T/dc2ed72d7e86d93e7e1ac9cb22bddb9b/antares-core-license-2.1.2.tgz","_integrity":"sha512-pfm+0j5UuZslhyuuymDvRBg7CDdtAz+EIbx7aw2Btx9vbo0sCpexQ7KwtaF6oR9/H3lBKlJmkRSpq7jGF2xn7w==","_npmVersion":"11.6.2","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","directories":{},"_nodeVersion":"24.11.1","dependencies":{"reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.7","typescript":"^5.4.5","@types/node":"^20.12.12"},"peerDependencies":{"rxjs":"^7.8.1","@nestjs/core":"^10.3.7","@nestjs/common":"^10.3.7","@antares-core/core":"2.1.2"},"peerDependenciesMeta":{"rxjs":{"optional":false},"@nestjs/core":{"optional":false},"@nestjs/common":{"optional":false},"@antares-core/core":{"optional":false}},"_npmOperationalInternal":{"tmp":"tmp/license_2.1.2_1788113060185_0.03650443567325623","host":"s3://npm-registry-packages-npm-production"}},"2.1.3":{"name":"@antares-core/license","version":"2.1.3","license":"MIT","_id":"@antares-core/license@2.1.3","maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"dist":{"shasum":"296f649ff41652964cb927d9d36c0808fd0b72ad","tarball":"https://registry.npmjs.org/@antares-core/license/-/license-2.1.3.tgz","fileCount":30,"integrity":"sha512-FAX3DMMVUF0oY91BKj6WwNAsfcaPKkpiUjSkv4EyTX2Sl9rT+mZlNKNoK9/dKmLaV/pm6rI8V+/3R4kXJJ38KQ==","signatures":[{"sig":"MEUCIErqkjkmdfMwcV+6Y6HVDEdet8gBAha/BTmon7fnKv2XAiEA9X8zqpWqaD0IjAa1HBuAJr1aNKjW8Ibi9KDL8UrE4gk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95038},"main":"dist/index.js","_from":"file:antares-core-license-2.1.3.tgz","types":"dist/index.d.ts","scripts":{"build":"tsc -p tsconfig.build.json","clean":"rm -rf dist","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"christ986","email":"5899682@qq.com"},"_resolved":"/private/var/folders/xs/hhn30xd16fgdn8jt85s1lpf00000gn/T/f0b4dc85d561b6c09d7d7b9d8e9bf5b1/antares-core-license-2.1.3.tgz","_integrity":"sha512-FAX3DMMVUF0oY91BKj6WwNAsfcaPKkpiUjSkv4EyTX2Sl9rT+mZlNKNoK9/dKmLaV/pm6rI8V+/3R4kXJJ38KQ==","_npmVersion":"11.6.2","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","directories":{},"_nodeVersion":"24.11.1","dependencies":{"reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.7","typescript":"^5.4.5","@types/node":"^20.12.12"},"peerDependencies":{"rxjs":"^7.8.1","@nestjs/core":"^10.3.7","@nestjs/common":"^10.3.7","@antares-core/core":"2.1.3"},"peerDependenciesMeta":{"rxjs":{"optional":false},"@nestjs/core":{"optional":false},"@nestjs/common":{"optional":false},"@antares-core/core":{"optional":false}},"_npmOperationalInternal":{"tmp":"tmp/license_2.1.3_1788117087387_0.7394383223502372","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@antares-core/license","version":"2.2.0","license":"MIT","_id":"@antares-core/license@2.2.0","maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"dist":{"shasum":"b2a21a33e89552fed038393b0bd1e561ac81fd70","tarball":"https://registry.npmjs.org/@antares-core/license/-/license-2.2.0.tgz","fileCount":30,"integrity":"sha512-rK+fsnY/0RdFlSuYF0tAkDbsr5NeRkK1nqDLtDxjFg2WcZvX1TyjrCn+0QXBuwsc4EAEWcCq68q4zwzXomNI3Q==","signatures":[{"sig":"MEUCIQCojWl2GMxaySg390i7RRxkTV0+OH5YxONjY9uSQQg3iAIgcVCKA7Jbi+vMNZ936Vhd13lDMTPW8h2kFjdAKp8sbLE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95038},"main":"dist/index.js","_from":"file:antares-core-license-2.2.0.tgz","types":"dist/index.d.ts","scripts":{"build":"tsc -p tsconfig.build.json","clean":"rm -rf dist","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"christ986","email":"5899682@qq.com"},"_resolved":"/private/var/folders/xs/hhn30xd16fgdn8jt85s1lpf00000gn/T/9b45a19cb4fee12c680988a081c8db07/antares-core-license-2.2.0.tgz","_integrity":"sha512-rK+fsnY/0RdFlSuYF0tAkDbsr5NeRkK1nqDLtDxjFg2WcZvX1TyjrCn+0QXBuwsc4EAEWcCq68q4zwzXomNI3Q==","_npmVersion":"11.6.2","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","directories":{},"_nodeVersion":"24.11.1","dependencies":{"reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.7","typescript":"^5.4.5","@types/node":"^20.12.12"},"peerDependencies":{"rxjs":"^7.8.1","@nestjs/core":"^10.3.7","@nestjs/common":"^10.3.7","@antares-core/core":"2.2.0"},"peerDependenciesMeta":{"rxjs":{"optional":false},"@nestjs/core":{"optional":false},"@nestjs/common":{"optional":false},"@antares-core/core":{"optional":false}},"_npmOperationalInternal":{"tmp":"tmp/license_2.2.0_1789301934862_0.298417926086918","host":"s3://npm-registry-packages-npm-production"}},"2.2.1":{"name":"@antares-core/license","version":"2.2.1","license":"MIT","_id":"@antares-core/license@2.2.1","maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"dist":{"shasum":"347f05924a7387162f74c0d132e82b4cf08ccc28","tarball":"https://registry.npmjs.org/@antares-core/license/-/license-2.2.1.tgz","fileCount":30,"integrity":"sha512-X3SyZHms3Xw9KZi/RuVWtOzlOkEDc6qXe6fPYQNgEUGel5vKDiePjDg8NBJaiilbKmgzAKhsfBPdqW2o8B0ZmA==","signatures":[{"sig":"MEQCIEXdYmsx87ShOMMUjq6jSf9h3v0x9b0SCvTB3fFWwpUYAiAklnN7jvJXTi2BldLpkVt5w+mcTPRwNn0I8RH4UcIBQA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95038},"main":"dist/index.js","_from":"file:antares-core-license-2.2.1.tgz","types":"dist/index.d.ts","scripts":{"build":"tsc -p tsconfig.build.json","clean":"rm -rf dist","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"christ986","email":"5899682@qq.com"},"_resolved":"/private/var/folders/xs/hhn30xd16fgdn8jt85s1lpf00000gn/T/fdf29365aad7ea552a25d93eaf421088/antares-core-license-2.2.1.tgz","_integrity":"sha512-X3SyZHms3Xw9KZi/RuVWtOzlOkEDc6qXe6fPYQNgEUGel5vKDiePjDg8NBJaiilbKmgzAKhsfBPdqW2o8B0ZmA==","_npmVersion":"11.6.2","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","directories":{},"_nodeVersion":"24.11.1","dependencies":{"reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.7","typescript":"^5.4.5","@types/node":"^20.12.12"},"peerDependencies":{"rxjs":"^7.8.1","@nestjs/core":"^10.3.7","@nestjs/common":"^10.3.7","@antares-core/core":"2.2.1"},"peerDependenciesMeta":{"rxjs":{"optional":false},"@nestjs/core":{"optional":false},"@nestjs/common":{"optional":false},"@antares-core/core":{"optional":false}},"_npmOperationalInternal":{"tmp":"tmp/license_2.2.1_1789308923707_0.07018754329089938","host":"s3://npm-registry-packages-npm-production"}},"2.2.2":{"name":"@antares-core/license","version":"2.2.2","license":"MIT","_id":"@antares-core/license@2.2.2","maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"dist":{"shasum":"e1e0b6d3a1619dccd1e14675280485e161914fc8","tarball":"https://registry.npmjs.org/@antares-core/license/-/license-2.2.2.tgz","fileCount":30,"integrity":"sha512-BASZn7mdZsE4H3gqueIfyGLh2d0YEiqdYsJMLBzw6k0s2TY6LpWgDOil4Yv+IJ00V952frPk1QexSVSISsWwpA==","signatures":[{"sig":"MEUCIH+RSgaaMYxeUFtbvjdTKj69WwgIb4EelQA8s3VNwbdeAiEA8G+sRfat5d3sOinEUU3XQSxEwRIfw1HrsENev5QdfY8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110206},"main":"dist/index.js","_from":"file:antares-core-license-2.2.2.tgz","types":"dist/index.d.ts","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"christ986","email":"5899682@qq.com"},"_resolved":"/private/var/folders/xs/hhn30xd16fgdn8jt85s1lpf00000gn/T/9f3103508375d557fa390c33ea9f9c9b/antares-core-license-2.2.2.tgz","_integrity":"sha512-BASZn7mdZsE4H3gqueIfyGLh2d0YEiqdYsJMLBzw6k0s2TY6LpWgDOil4Yv+IJ00V952frPk1QexSVSISsWwpA==","_npmVersion":"11.6.2","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","directories":{},"_nodeVersion":"24.11.1","dependencies":{"reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.7","vitest":"^2.1.8","typescript":"^5.4.5","@types/node":"^20.12.12"},"peerDependencies":{"rxjs":"^7.8.1","@nestjs/core":"^10.3.7","@nestjs/common":"^10.3.7","@antares-core/core":"2.2.2"},"peerDependenciesMeta":{"rxjs":{"optional":false},"@nestjs/core":{"optional":false},"@nestjs/common":{"optional":false},"@antares-core/core":{"optional":false}},"_npmOperationalInternal":{"tmp":"tmp/license_2.2.2_1789310196098_0.6797417738440661","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@antares-core/license","version":"2.3.0","license":"MIT","_id":"@antares-core/license@2.3.0","maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"dist":{"shasum":"dae2adde63f2027d8f32b2087a768b1aa250865e","tarball":"https://registry.npmjs.org/@antares-core/license/-/license-2.3.0.tgz","fileCount":30,"integrity":"sha512-NeU/g+lw1Qkk5T5UFc8+oVF3uVEW6Fc4R1eTzr/sfVlDuv9VpJzxXdFWreVIKLSb4/yKZ1btI66ezizw/hw3FA==","signatures":[{"sig":"MEYCIQDOiYH/z3vY19360TlgsiV+1KA504Sp4UEWgbrYo+08HQIhAPUidjxCqtVRXR2ebhURpoRJeGJBOf97qXcE6WdPP1bh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":124558},"main":"dist/index.js","_from":"file:antares-core-license-2.3.0.tgz","types":"dist/index.d.ts","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"christ986","email":"5899682@qq.com"},"_resolved":"/private/var/folders/xs/hhn30xd16fgdn8jt85s1lpf00000gn/T/a6ea0865d8452d9edd3d4f2281e4bdf5/antares-core-license-2.3.0.tgz","_integrity":"sha512-NeU/g+lw1Qkk5T5UFc8+oVF3uVEW6Fc4R1eTzr/sfVlDuv9VpJzxXdFWreVIKLSb4/yKZ1btI66ezizw/hw3FA==","_npmVersion":"11.6.2","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","directories":{},"_nodeVersion":"24.11.1","dependencies":{"reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.7","vitest":"^2.1.8","typescript":"^5.4.5","@types/node":"^20.12.12"},"peerDependencies":{"rxjs":"^7.8.1","@nestjs/core":"^10.3.7","@nestjs/common":"^10.3.7","@antares-core/core":"2.3.0"},"peerDependenciesMeta":{"rxjs":{"optional":false},"@nestjs/core":{"optional":false},"@nestjs/common":{"optional":false},"@antares-core/core":{"optional":false}},"_npmOperationalInternal":{"tmp":"tmp/license_2.3.0_1789311160805_0.7834383254842381","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"@antares-core/license","version":"2.4.0","license":"MIT","_id":"@antares-core/license@2.4.0","maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"dist":{"shasum":"65dd1a090cec9f8ea35421ed8f7169182e6b1594","tarball":"https://registry.npmjs.org/@antares-core/license/-/license-2.4.0.tgz","fileCount":30,"integrity":"sha512-k8goMpEoMGoJ+vRItOJf/rSGPIU+zdrVPP9ARvFsmHMaftKswaQB7Cj8SQXqVjUo+z3fDqzpUsQN92ipaUkkmA==","signatures":[{"sig":"MEUCIB7Wp2pUyqBdLMvn48r1h5Rg3O6ghSnx0cHYzH4KAc2WAiEA8sGX/gS3HcWVuNIXOU5OSSck6WwjNP4bdLcM1gR0NfU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":168220},"main":"dist/index.js","_from":"file:antares-core-license-2.4.0.tgz","types":"dist/index.d.ts","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json && node ../../scripts/minify-dist.mjs dist","clean":"rm -rf dist","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"christ986","email":"5899682@qq.com"},"_resolved":"/private/var/folders/xs/hhn30xd16fgdn8jt85s1lpf00000gn/T/7522b0da1cd55a46061cff41627d486f/antares-core-license-2.4.0.tgz","_integrity":"sha512-k8goMpEoMGoJ+vRItOJf/rSGPIU+zdrVPP9ARvFsmHMaftKswaQB7Cj8SQXqVjUo+z3fDqzpUsQN92ipaUkkmA==","_npmVersion":"11.6.2","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","directories":{},"_nodeVersion":"24.11.1","dependencies":{"reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.7","vitest":"^2.1.8","typescript":"^5.4.5","@types/node":"^20.12.12"},"peerDependencies":{"rxjs":"^7.8.1","@nestjs/core":"^10.3.7","@nestjs/common":"^10.3.7","@antares-core/core":"2.4.0"},"peerDependenciesMeta":{"rxjs":{"optional":false},"@nestjs/core":{"optional":false},"@nestjs/common":{"optional":false},"@antares-core/core":{"optional":false}},"_npmOperationalInternal":{"tmp":"tmp/license_2.4.0_1789313229158_0.7755217825716096","host":"s3://npm-registry-packages-npm-production"}},"2.5.0":{"name":"@antares-core/license","version":"2.5.0","license":"MIT","_id":"@antares-core/license@2.5.0","maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"dist":{"shasum":"346e11e0ae193038a7bec21bc88b7c39fd62dcfc","tarball":"https://registry.npmjs.org/@antares-core/license/-/license-2.5.0.tgz","fileCount":30,"integrity":"sha512-iIxt14Q3sjjQbzHMDvPHzsykLGZX7u39w5dBp1ZQw8I8AYEeneVCU6+o5qHj5vifns0qdVEbT5O9MgSMLl0Vkw==","signatures":[{"sig":"MEUCIQCZpBMaXXZ+I+GO3+ZXSd34R5e5MQaXaAIksQrVwa4TbQIgDTL1Y5L4fvyn+0TKcdm5OjIpxFC7SS3Bv1YjhvYrH+c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":168220},"main":"dist/index.js","_from":"file:antares-core-license-2.5.0.tgz","types":"dist/index.d.ts","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json && node ../../scripts/minify-dist.mjs dist","clean":"rm -rf dist","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"christ986","email":"5899682@qq.com"},"_resolved":"/private/var/folders/xs/hhn30xd16fgdn8jt85s1lpf00000gn/T/386fe69aba80a72a89c71e92b47c157d/antares-core-license-2.5.0.tgz","_integrity":"sha512-iIxt14Q3sjjQbzHMDvPHzsykLGZX7u39w5dBp1ZQw8I8AYEeneVCU6+o5qHj5vifns0qdVEbT5O9MgSMLl0Vkw==","_npmVersion":"11.6.2","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","directories":{},"_nodeVersion":"24.11.1","dependencies":{"reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.7","vitest":"^2.1.8","typescript":"^5.4.5","@types/node":"^20.12.12"},"peerDependencies":{"rxjs":"^7.8.1","@nestjs/core":"^10.3.7","@nestjs/common":"^10.3.7","@antares-core/core":"2.5.0"},"peerDependenciesMeta":{"rxjs":{"optional":false},"@nestjs/core":{"optional":false},"@nestjs/common":{"optional":false},"@antares-core/core":{"optional":false}},"_npmOperationalInternal":{"tmp":"tmp/license_2.5.0_1789315295853_0.8129716572786356","host":"s3://npm-registry-packages-npm-production"}},"2.5.1":{"name":"@antares-core/license","version":"2.5.1","license":"MIT","_id":"@antares-core/license@2.5.1","maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"dist":{"shasum":"714b12e818c2566aee73735611d6c049e66b846a","tarball":"https://registry.npmjs.org/@antares-core/license/-/license-2.5.1.tgz","fileCount":30,"integrity":"sha512-Q/ng+KETPmAiH0OY4XtkyUokMjCW269sJgeb8P22R3BaQ7fScUMEJWostWXH3k9XNwvdlOUGE9W4tDCIuGTyxA==","signatures":[{"sig":"MEYCIQC3ZSogniTNhA9+Pamy554GhmrJ7vEJL84zBFmc+B5i0AIhAMbDZQPHoFHVj/WQbYYt42UzUaUfpT44ucrkLAnw+q/R","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":168220},"main":"dist/index.js","_from":"file:antares-core-license-2.5.1.tgz","types":"dist/index.d.ts","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json && node ../../scripts/minify-dist.mjs dist","clean":"rm -rf dist","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"christ986","email":"5899682@qq.com"},"_resolved":"/private/var/folders/xs/hhn30xd16fgdn8jt85s1lpf00000gn/T/accfe7e7ae5230ee0a3b290f6c38c38c/antares-core-license-2.5.1.tgz","_integrity":"sha512-Q/ng+KETPmAiH0OY4XtkyUokMjCW269sJgeb8P22R3BaQ7fScUMEJWostWXH3k9XNwvdlOUGE9W4tDCIuGTyxA==","_npmVersion":"11.6.2","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","directories":{},"_nodeVersion":"24.11.1","dependencies":{"reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.7","vitest":"^2.1.8","typescript":"^5.4.5","@types/node":"^20.12.12"},"peerDependencies":{"rxjs":"^7.8.1","@nestjs/core":"^10.3.7","@nestjs/common":"^10.3.7","@antares-core/core":"2.5.1"},"peerDependenciesMeta":{"rxjs":{"optional":false},"@nestjs/core":{"optional":false},"@nestjs/common":{"optional":false},"@antares-core/core":{"optional":false}},"_npmOperationalInternal":{"tmp":"tmp/license_2.5.1_1789317074834_0.11026617488499024","host":"s3://npm-registry-packages-npm-production"}},"2.5.2":{"name":"@antares-core/license","version":"2.5.2","license":"MIT","_id":"@antares-core/license@2.5.2","maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"dist":{"shasum":"c0150d97acae4a855fed188b69e835d7b74c39ca","tarball":"https://registry.npmjs.org/@antares-core/license/-/license-2.5.2.tgz","fileCount":30,"integrity":"sha512-AJ4rvtaS7rco9xyO6DF2Hm0IDJyHlYjZ/XDR7BMFcKZpdhVqc7napCu39xUGaN/WPYdyLdSZTG639ryNVb18NA==","signatures":[{"sig":"MEUCIE9GpA7TyAVFmXlkJG7UGKW/10wBb2yJUy7dhmMkXDUCAiEAxrYh0AzarMc32jW4E6uiFrttjJY+Ot2vLxs8GUJpMt8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":168220},"main":"dist/index.js","_from":"file:antares-core-license-2.5.2.tgz","types":"dist/index.d.ts","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json && node ../../scripts/minify-dist.mjs dist","clean":"rm -rf dist","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"christ986","email":"5899682@qq.com"},"_resolved":"/private/var/folders/xs/hhn30xd16fgdn8jt85s1lpf00000gn/T/c659c94c4005247f653d7557177b107f/antares-core-license-2.5.2.tgz","_integrity":"sha512-AJ4rvtaS7rco9xyO6DF2Hm0IDJyHlYjZ/XDR7BMFcKZpdhVqc7napCu39xUGaN/WPYdyLdSZTG639ryNVb18NA==","_npmVersion":"11.6.2","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","directories":{},"_nodeVersion":"24.11.1","dependencies":{"reflect-metadata":"^0.2.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^5.0.7","vitest":"^2.1.8","typescript":"^5.4.5","@types/node":"^20.12.12"},"peerDependencies":{"rxjs":"^7.8.1","@nestjs/core":"^10.3.7","@nestjs/common":"^10.3.7","@antares-core/core":"2.5.2"},"peerDependenciesMeta":{"rxjs":{"optional":false},"@nestjs/core":{"optional":false},"@nestjs/common":{"optional":false},"@antares-core/core":{"optional":false}},"_npmOperationalInternal":{"tmp":"tmp/license_2.5.2_1789318858075_0.03702454730984073","host":"s3://npm-registry-packages-npm-production"}},"2.5.3":{"name":"@antares-core/license","version":"2.5.3","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","main":"dist/index.js","types":"dist/index.d.ts","dependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@nestjs/common":"^10.3.7","@nestjs/core":"^10.3.7","rxjs":"^7.8.1","@antares-core/core":"2.5.3"},"peerDependenciesMeta":{"@antares-core/core":{"optional":false},"@nestjs/common":{"optional":false},"@nestjs/core":{"optional":false},"rxjs":{"optional":false}},"devDependencies":{"@types/node":"^20.12.12","rimraf":"^5.0.7","typescript":"^5.4.5","vitest":"^2.1.8"},"license":"MIT","scripts":{"build":"tsc -p tsconfig.build.json && node ../../scripts/minify-dist.mjs dist","typecheck":"tsc -p tsconfig.json --noEmit","clean":"rm -rf dist","test":"vitest run","test:watch":"vitest"},"_id":"@antares-core/license@2.5.3","_integrity":"sha512-abhy+E+1RQ8E3e/hYCi2oGTY6I618UfAGurrWk2tcVsHauqmmDlMwVY3Hl9Mq8NAWtIe3tWwB9j3fQDoC7U9rw==","_resolved":"/private/var/folders/xs/hhn30xd16fgdn8jt85s1lpf00000gn/T/83bb4c5ac96af36fbaee06611d9c6ad8/antares-core-license-2.5.3.tgz","_from":"file:antares-core-license-2.5.3.tgz","_nodeVersion":"24.11.1","_npmVersion":"11.6.2","dist":{"integrity":"sha512-abhy+E+1RQ8E3e/hYCi2oGTY6I618UfAGurrWk2tcVsHauqmmDlMwVY3Hl9Mq8NAWtIe3tWwB9j3fQDoC7U9rw==","shasum":"af4a09b7a2bd84077164fb804107201daf9fd9ff","tarball":"https://registry.npmjs.org/@antares-core/license/-/license-2.5.3.tgz","fileCount":30,"unpackedSize":168220,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDsK5E//D2nOjebNeg6v+iznreVIbTqmmfnc64oflSjOgIhALB6Au5KNX6uyW0gUdRbvs7X/Kd7idAj8MczEHJQ0npy"}]},"_npmUser":{"name":"christ986","email":"5899682@qq.com"},"directories":{},"maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/license_2.5.3_1789322885191_0.933337042866424"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-30T17:26:37.518Z","modified":"2026-09-13T18:08:05.503Z","2.1.0":"2026-08-30T17:26:37.798Z","2.1.1":"2026-08-30T17:58:53.387Z","2.1.2":"2026-08-30T18:04:20.334Z","2.1.3":"2026-08-30T19:11:27.528Z","2.2.0":"2026-09-13T12:18:54.984Z","2.2.1":"2026-09-13T14:15:23.848Z","2.2.2":"2026-09-13T14:36:36.219Z","2.3.0":"2026-09-13T14:52:40.985Z","2.4.0":"2026-09-13T15:27:09.293Z","2.5.0":"2026-09-13T16:01:36.010Z","2.5.1":"2026-09-13T16:31:14.966Z","2.5.2":"2026-09-13T17:00:58.211Z","2.5.3":"2026-09-13T18:08:05.325Z"},"license":"MIT","description":"L3 商业授权：在线授权中心 / 离线 License、实例心跳配额、单调时钟防时间篡改","maintainers":[{"name":"christ986","email":"5899682@qq.com"}],"readme":"# @antares-core/license\n\nL3 商业授权层：为基于 `@antares-core/core` 构建的应用提供**许可网关、实例心跳配额、防时间篡改**能力，支撑商业化的授权交付与运行时管控。\n\n依赖 [`@antares-core/core`](https://www.npmjs.com/package/@antares-core/core)。\n\n## 能力总览\n\n| 能力 | 入口 | 说明 |\n|---|---|---|\n| 安全许可网关 | `SecureGatewayModule.forRoot()` | 注册 `CORE_LICENSE_CHECK` 契约，未授权环境拒绝启动 |\n| 在线授权校验 | `verifyOnline(options)` | 对接授权中心，网络校验 + 本地缓存 |\n| 离线 License | `verifyOffline(payload, ...)` | 签名离线许可文件校验，断网环境可用 |\n| 离线缓存 | `OfflineLicenseCache` | 在线校验结果落盘，断网宽限期 |\n| 实例心跳 | `InstanceHeartbeat` / `MemoryHeartbeatStore` | 实例级心跳上报，超配额自动拒绝 |\n| 防时间篡改 | `ClockSkewGuard` | 单调时钟检测，回拨时间立即触发只读 |\n| 只读降级 | `enterReadOnly` / `getReadOnlyReason` | 授权失效进入只读态而非硬崩溃 |\n| 机器指纹 | `machineFingerprint` | 实例唯一标识，绑定授权 |\n\n## 安装\n\n```bash\nnpm install @antares-core/license\n```\n\n## 快速开始\n\n### 1. 启用许可网关\n\n```ts\nimport { Module } from '@nestjs/common';\nimport { CoreBaseModule } from '@antares-core/core';\nimport { SecureGatewayModule } from '@antares-core/license';\n\n@Module({\n  imports: [\n    CoreBaseModule.forRoot({\n      enableSecureGateway: true,   // 生产环境：开启网关并注入 license 校验\n    }),\n    SecureGatewayModule.forRoot(), // 注册 CORE_LICENSE_CHECK 契约实现\n  ],\n})\nexport class AppModule {}\n```\n\n开发 / 测试环境可传 `enableSecureGateway: 'test'` 跳过网关，生产必须为 `true` 并完成授权接线。\n\n### 2. 在线 / 离线校验\n\n```ts\nimport { verifyOnline, verifyOffline, type VerifyResult } from '@antares-core/license';\n\n// 在线：对接授权中心\nconst online: VerifyResult = await verifyOnline({\n  licenseKey: process.env.LICENSE_KEY!,\n  /* 授权中心地址等 */\n});\n\n// 离线：签名许可文件（断网部署）\nconst offline: VerifyResult = verifyOffline(offlineLicensePayload, {\n  /* 公钥等校验参数 */\n});\n\nif (!offline.ok) {\n  enterReadOnly(offline.reason);  // 校验失败进入只读态，而非崩溃\n}\n```\n\n### 3. 实例心跳与配额\n\n```ts\nimport { InstanceHeartbeat, MemoryHeartbeatStore } from '@antares-core/license';\n\nconst heartbeat = new InstanceHeartbeat(\n  new MemoryHeartbeatStore(),   // 生产可替换为 Redis 实现（实现 HeartbeatStore 接口）\n  { /* HeartbeatOptions：上报间隔 / 配额上限等 */ },\n);\n```\n\n### 4. 防时间篡改\n\n```ts\nimport { ClockSkewGuard } from '@antares-core/license';\n\nconst guard = new ClockSkewGuard();\n// 系统时间被回拨时 guard 检测异常，配合 enterReadOnly 触发只读保护\n```\n\n## 运行时行为\n\n- **授权有效**：全功能运行，心跳按周期上报。\n- **授权到期 / 校验失败**：`enterReadOnly(reason)` 进入只读态（`getReadOnlyReason()` 可查询原因），业务写接口被拦截，服务不崩溃——给运维留出续期窗口。\n- **时间回拨**：单调时钟守卫立即识别，防止通过改系统时间绕过到期时间。\n\n## 相关包\n\n- [`@antares-core/core`](https://www.npmjs.com/package/@antares-core/core) — 必装内核（契约锁机制所在层）\n- [`@antares-core/modules`](https://www.npmjs.com/package/@antares-core/modules) — 业务模块\n- [`@antares-core/devtools`](https://www.npmjs.com/package/@antares-core/devtools) — CLI 工具链\n\n## License\n\nMIT — 详见本包根目录的 LICENSE 文件。\n","readmeFilename":"README.md"}