{"_id":"@elchinabilov/nestjs-aws-file-storage","_rev":"20-9e0f302cb4c3ad4bae64b13693d18f5d","name":"@elchinabilov/nestjs-aws-file-storage","dist-tags":{"latest":"1.4.7"},"versions":{"1.0.0":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.0.0","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.0.0","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"0d184c7b151474504d61ac5cd4c3dcd95a59243d","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.0.0.tgz","fileCount":42,"integrity":"sha512-WVZV6KalLZjaUtUI1IuNG8QpSdjb7ZHkJEz8ZnVJqoo3ETgX+W3dComVeMX3TLYDF9/J0XrFz6fE2nDahO4cEQ==","signatures":[{"sig":"MEUCIQDx+DA0YJCKaTTsIIM2btlEzITUkEuDC6AlvZ7vNiYgZAIgNwRUeRhbqpH2vls/vEKcspX5e1W+AdgmkYiqiWVwuo0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":315287},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"ed34a936454c4739db7f61b5652413894bc396ca","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^10.0.0","@nestjs/common":"^10.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^10.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.0.0_1759675749280_0.8983091692324385","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.1":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.0.1","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.0.1","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"b0bbf3d7670298a13b62b00398bd0168afaa63b8","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.0.1.tgz","fileCount":43,"integrity":"sha512-UxyATQvt32l5AmVlj+EbD/lsFN5RwJ7gGX0oc9iEmjHcEXvZV4GAzk8ovVv1cF1Pe8087kF67F71Ul1HLAwEVw==","signatures":[{"sig":"MEYCIQCoF6x3/m8GlHOzaLI75VM+nkoQm10hsVI3wiGATZlIpQIhAPS+FPN3JXn8BnIj1GN+ksObC/zbtO6Ugs6xPkIrib2h","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":322614},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"556a65b52f510b07fd1fad2495046735e15e60dc","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^10.0.0","@nestjs/common":"^10.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^10.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.0.1_1759675973751_0.07028468589048886","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.2":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.0.2","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.0.2","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"cd42c8e55d5878705e134cca03691e7863101c9a","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.0.2.tgz","fileCount":43,"integrity":"sha512-SszauM8mmewaijwY440Nxbqyxl/5/wa5uRir+PRiNY01gl7z+i/o+L/I8XB7CfDLycZ/sd6cldubUjFVmT40eA==","signatures":[{"sig":"MEYCIQC/tcW+NbhMFYGGOK13eUUk6zalWJFQvqGGfC7xrYdUygIhALz7L0ZiPE83GUe48f4rQ/9W6ZY8DndjS/DXSGktsNjb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":322382},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"01f3216ceef89e739e688e25a7b34eadb81bd574","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^10.0.0","@nestjs/common":"^10.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^10.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.0.2_1759676072070_0.17039340026878058","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.3":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.0.3","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.0.3","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"148e787e6cf6b469881ec2fabc3b0446cc4ebd2b","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.0.3.tgz","fileCount":43,"integrity":"sha512-ov8U69MV0IaVg7zYyqwLnKVTqJMSZA2OzEgs8e4cJhqnxrrk7T2dGiiRD5WGDOJDxeW9Jv+WabS8iaCl2ercRw==","signatures":[{"sig":"MEUCIQCA2SidDR2JwzUO4nyVyjyO+bVKCvODLvd1mQj9ftvqIwIgOLk8OyW/lD65hmRmcCVrABD9C99bgGEG1Qu9mAIbd5E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":322589},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"c4d39142cc7525a17aaf76178e959b9952b67950","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^10.0.0","@nestjs/common":"^10.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^10.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.0.3_1759676389088_0.1727767799551687","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.1.0","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.1.0","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"75982583acf14375a05884d15c38f16dbca6aec5","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.1.0.tgz","fileCount":43,"integrity":"sha512-B8O4xjbs3CxF/a6KuPCU3fWLakspNY9fhwD0LMIlajXLARvxfshPRDZYoA0AI+6UwowbuIDRlpsllPCG/ZaCBA==","signatures":[{"sig":"MEUCIHwLsiSxlLzsTQ25v9iJ1A1Lz5vzcL+ZA+CZkqbLJ6r9AiEA8qqXan6eqDvcOImnoXIkcKS7VzEd1TxcSYn7wNRMYns=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":323332},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"8ce8a3117274af2e765f966272cd217d970380b9","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^10.0.0","@nestjs/common":"^10.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^10.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.1.0_1759678381846_0.5722976280515468","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.1":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.1.1","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.1.1","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"799f7ea57e6f6e97fe59e62ba8921f6dbaedb0b2","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.1.1.tgz","fileCount":43,"integrity":"sha512-xJiB5sPVX6u8GWaJQU/+caJEytO9wVnz8bz5jEqS/71zPKBelypmlvya0i55N74iQJj5SymeTLvO5CKd2+lxfQ==","signatures":[{"sig":"MEUCIFTjSeX1oZARAQ7Lr+Cqi9yt9+7fpWYpOxDfbQXJjwmJAiEA81IyI1qq565EXzaiPRWwJGr/5L2RO8NHRQvDabw1l/w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":323347},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"04e6cc9e6572c8f0f719e2d0a21230264d1081e4","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^10.0.0","@nestjs/common":"^10.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^10.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.1.1_1759718979241_0.4972286618429749","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.2.0":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.2.0","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.2.0","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"41afe106d5fe39379db05be069d17d5c778461ae","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.2.0.tgz","fileCount":46,"integrity":"sha512-kYhbxvWnkmXepdTo03Bx6pGhic3GwaOESXOMnyspNcYkN5X41VJ/Y2ZHv0/gA01kDC0fSfzW4tQeol18wrZFRw==","signatures":[{"sig":"MEQCIDWhvhu+9059xKJg+gpDc8q5WPPmgWpEHcqo//kGNzFeAiAxylf1EoJxH+MXYXlXcjWtBCeIw1LGGDyzP4tT512DJg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":328631},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"d8bc8a64390f45a6e826c363e6ff3f1d220921e5","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^10.0.0","@nestjs/common":"^10.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^10.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.2.0_1759733354802_0.0545394646867019","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.2.1":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.2.1","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.2.1","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"6fd393b40891308a42bf9b93e5e4a49eb8107f80","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.2.1.tgz","fileCount":46,"integrity":"sha512-7DGAzeFKgNWKPL3uS1yjizCyMQ6d0F4OhrKD+xJKdEwfJzEDkmKEnmPD2oSgB5X7mjBlPN1BA12FjFv6rUQKxw==","signatures":[{"sig":"MEUCIDv6CYgwo+4QHojqmckapDEqkt4GroBovDpe0j4KekP6AiEAznJC6V1xYBgBfoYtDYiQmZupGdR1ZjXF3WEXEARQvAY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":328133},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"0d6f543518edad5063f6b1e0a04b1bb06d711069","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^10.0.0","@nestjs/common":"^10.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^10.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.2.1_1759735113852_0.48029336480666074","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.3.0":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.3.0","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.3.0","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"dba751952f93824f133e190d97ce2fef5bba6d97","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.3.0.tgz","fileCount":46,"integrity":"sha512-8MKojnEdoB3tD0/ghnXGgPrCwmjuOx7BU9ZkPWnAuJnQdBegIZxakpJ8eLvWz0DUSZn5uKhMk+wXrOD1cn9SSA==","signatures":[{"sig":"MEUCIQDa24Xj6ySJXpKS8bdXC1DqXziPnabzVA+mkZrALqw+owIgbUY70rkTl/yiwqNm7gKZ/SrS8ewui1U1P33QnRDldgI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":328750},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"68869ad16acc66090351a04d6c1e05c79b6718b4","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^10.0.0","@nestjs/common":"^10.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^10.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.3.0_1759841290099_0.9937104179220932","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.3.1":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.3.1","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.3.1","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"8e373b3b7724854cb24eabad3b4f3eb608f4bb6a","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.3.1.tgz","fileCount":46,"integrity":"sha512-Q4hC3JzyAIvsd/6j5feRJEbY6p97UTLDYdJjPu1iUowmVAgE6g9uLEnPR1LdKHVHcXKshvyG4UVE9Nw9PbeH3g==","signatures":[{"sig":"MEUCIGtE1MLSraUK6P9e/81sE3jgpxPfZgfGlBPp2pHlHoKKAiEA0m7GWfVKCUSTwHHhLzkV6ntmjvNXIlA9xAJg/IesBQI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":328752},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"25f50973048795d3a9308f6f9815ee30a57fb43a","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^10.0.0","@nestjs/common":"^10.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^10.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.3.1_1759841457898_0.24534230584759076","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.3.2":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.3.2","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.3.2","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"938001d46f1297fa76c9b0f9561f6e5633c0d291","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.3.2.tgz","fileCount":46,"integrity":"sha512-TNpxTPlmH0VoWK/HS5yH1efPoHlkGhNmhy/8JEUb4dNyM8VqeKbnCMM2m2+V+yeA8hms300dwtRaMWHlmfT2Vw==","signatures":[{"sig":"MEYCIQC0orwmHvozXvD9yeyGlpsv/OJxkMMVH1+M87JZZjyM+wIhAO90KOWjneKBihz0+HqGZ/KimiNL42zZrnmWNxEVWjNb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":329336},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"32bf1a9f7f62980cec27a245e9f76b6ecf1808a3","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^11.0.0","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^11.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.3.2_1761396998070_0.20680061184502585","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.4.0":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.4.0","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.4.0","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"be26f3080f717edaedb82f4e013df48edadd2025","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.4.0.tgz","fileCount":46,"integrity":"sha512-Hl5V7p7rkjv4qi+75b1WIgcQeFK9bOGKnrBCluXee2O2xV9SKJmOdzsEgZg/hAc8SqtofLNeeDAnkXg5iaUhOQ==","signatures":[{"sig":"MEUCIBENzo55Rf+SHYFs5BWwIaP2b8p834KIZSbEwrZQSpXXAiEAqDSuTCX/lkQXXIIWAV/HdoSVcENuwz439MMqG/iqLF0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335460},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"cfb3dea7c1d724871516fd0309fb245d48e0e01d","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^11.0.0","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^11.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.4.0_1761722334543_0.4597471040077996","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.4.1":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.4.1","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.4.1","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"85ab75251a445f1b56ee42a8021e5efff22404f7","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.4.1.tgz","fileCount":46,"integrity":"sha512-ATzxGO/CBTUOz031mRjMVP0kSCUgxg9zF5vERvzPALW7pCp8oOKW9D1uq3gVI5N+21KD6ki7u8dgac4dfTHNLg==","signatures":[{"sig":"MEUCIQCf1qw+UunotUyclxhZDRlPnpsl+SNduIdspkSZ6b1yFwIgcikh0r6AXVXq1YfWkv2ObRcjJXUmYIfzkWYVuyIDHv0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335465},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"291822004d385db7c4fb897c6e9326316177312d","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^11.0.0","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^11.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.4.1_1761724559377_0.7762345491815643","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.4.2":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.4.2","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.4.2","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"4aa56da3003ae397bc09df167921699490e90900","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.4.2.tgz","fileCount":46,"integrity":"sha512-EOOb/nOBWzfRAlN/H2T1KLjs+cgF+NCFiDozfbGGR4ujYwz0dfVVwALQ3ZMhbTUKq69CbJbTuNnt0paJfneMRw==","signatures":[{"sig":"MEQCIFy6B4iTqinxr03yBx3FeZmuFuabJPLG4ZLjdLnNMIGZAiB/jbT2/QGg0bAAwsAgqbBE4NN6xtYp/89qyjMPry0t9Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335460},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"cfb3dea7c1d724871516fd0309fb245d48e0e01d","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^11.0.0","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^11.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.4.2_1761802067716_0.9050440580759374","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.4.3":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.4.3","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.4.3","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"c18d1b0936588decbc40e51f93a37143a9e3bdd4","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.4.3.tgz","fileCount":46,"integrity":"sha512-xcgN9Cw+8MPnUu1tUlKKvOt5965D4/8WR36Llc5ZGX7e5Oi2FJsawKJgR+P2yBipLlH0yPoHDZKtji3zfom30Q==","signatures":[{"sig":"MEQCIAqHwvsm9DQA2F5QENO4wON0gDbTn5UCy4PlnSV3iBHDAiB4VQ8xQdpKxHZYg1CLhkKUIqe+kFFZfjbb0zf+RJ7iAg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335556},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"47b67bbd48d7b1866356b6da3ae49a8a9bba89c1","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^11.0.0","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^11.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.4.3_1762072280728_0.9376665046265165","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.4.4":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.4.4","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.4.4","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"9f9bfe49c52794e8e523492ec6dba9c09007b655","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.4.4.tgz","fileCount":46,"integrity":"sha512-G5ObwmTFSxTK1Lo2O6Tx9z4WGmOkXRmUBCXgIOHc5OoNGXY/8Gm/qN/bHFCnwmp63p4t4K0bb7eN7Wc614kyQA==","signatures":[{"sig":"MEUCIQCaBOSPUYOCl7hyceXqmS6cIEt/86OjFDYuUw1zysrzfgIgCX6wb1tbVCQ+le3ok3+ZJzo3IAbOVXGHYbl2sCfqtEA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335668},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"f2724042c03e54bed91504213ae89ac1abab6d7c","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^11.0.0","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^11.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.4.4_1763374871743_0.18825709563319437","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.4.5":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.4.5","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.4.5","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"ca615e4f750669f6daecab9a3589e491b3e6c491","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.4.5.tgz","fileCount":46,"integrity":"sha512-gNb5TUDxkb8bkDpTaeah1AvzprdlSu1Y2WjepY3fgLnwyQ65kHePTS71DDpqhCq8l5ixvcprVDEDzm/sKmSDEQ==","signatures":[{"sig":"MEQCIDDRPBALOUq+fzqf7YHACCsZlUOd3RdaeZVICHgt5Yr0AiBeTtlzrDlK3XQewGhFfoEcFF4UxkmrwHkTUg2YF3hU9A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335889},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"01784f93c15a1564e791c590bc819b1bc4fcc79e","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^11.0.0","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^11.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.4.5_1763375169060_0.9347835647900204","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.4.6":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.4.6","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.4.6","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"cd592e7419a1f7478b57a1677244f60db4dd0e8a","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.4.6.tgz","fileCount":46,"integrity":"sha512-MIAL8eR2OD8CbzjxNF9dn8D2+L7hmyGekRC5IE88ykfsyiR2LVQ6KKkwirjy/CFC+VMukcWlzYi4qeAPoi5WpQ==","signatures":[{"sig":"MEUCIQDKcGbKtbU9FeK8FfbdKc6AjkaYcuMZGBKQkwXsgTcVHAIgUu4VnysN32UMottCASu1bJMW+JAlilzrNDVMrBCDaDo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335937},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"15a462d60ac020d996f50bee22ff42b3cdae6c32","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^11.0.0","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^11.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.4.6_1763376114949_0.2216220820703485","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.4.7":{"name":"@elchinabilov/nestjs-aws-file-storage","version":"1.4.7","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","_id":"@elchinabilov/nestjs-aws-file-storage@1.4.7","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"dist":{"shasum":"ae7a61cc9dd047f79d123a84eb967908f55a47e1","tarball":"https://registry.npmjs.org/@elchinabilov/nestjs-aws-file-storage/-/nestjs-aws-file-storage-1.4.7.tgz","fileCount":46,"integrity":"sha512-Uw9JdIqMsrK+9IJ/Mdbid4QNk0GwJXfxa5ghXiabjzQATiMJXTXd/MGE2J6cfZeFP9zR7Ea3YPQtbDjVUAPrxw==","signatures":[{"sig":"MEYCIQCTi5EmjWgt9M224GhaD2SoBzQEl2HNf5a0vnkk9VI3lgIhAIHCPseiIlr0waE+nKc2auoANrTGDBaAWs4SwGuVpNPB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":340399},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"93d8aca4ef634cdac01ee36b4b978aee34b71c5d","scripts":{"build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"abilov","email":"abilovelchin@gmail.com"},"_npmVersion":"10.9.3","description":"AWS File storage for NestJS","directories":{},"_nodeVersion":"22.19.0","dependencies":{"sharp":"^0.34.3","multer":"^2.0.2","typeorm":"^0.3.27","@nestjs/core":"^11.0.0","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.1","@nestjs/typeorm":"^11.0.0","class-validator":"^0.14.2","@aws-sdk/client-s3":"^3.848.0","@nestjs/mapped-types":"*","@nestjs/platform-express":"^11.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0.0","@types/node":"^20.0.0","@types/multer":"^2.0.0","@types/express":"^5.0.3"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-aws-file-storage_1.4.7_1763477203933_0.3414545036101717","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."}},"time":{"created":"2025-10-05T14:49:09.223Z","modified":"2025-12-24T20:54:13.434Z","1.0.0":"2025-10-05T14:49:09.469Z","1.0.1":"2025-10-05T14:52:53.962Z","1.0.2":"2025-10-05T14:54:32.299Z","1.0.3":"2025-10-05T14:59:49.299Z","1.1.0":"2025-10-05T15:33:02.105Z","1.1.1":"2025-10-06T02:49:39.417Z","1.2.0":"2025-10-06T06:49:15.070Z","1.2.1":"2025-10-06T07:18:34.065Z","1.3.0":"2025-10-07T12:48:10.283Z","1.3.1":"2025-10-07T12:50:58.087Z","1.3.2":"2025-10-25T12:56:38.296Z","1.4.0":"2025-10-29T07:18:54.803Z","1.4.1":"2025-10-29T07:55:59.564Z","1.4.2":"2025-10-30T05:27:47.925Z","1.4.3":"2025-11-02T08:31:20.938Z","1.4.4":"2025-11-17T10:21:11.956Z","1.4.5":"2025-11-17T10:26:09.297Z","1.4.6":"2025-11-17T10:41:55.122Z","1.4.7":"2025-11-18T14:46:44.136Z"},"author":{"name":"Elchin Abilov","email":"abilovelchin@gmail.com"},"license":"MIT","keywords":["file","storage","gateway","nestjs","file-storage","aws","s3"],"description":"AWS File storage for NestJS","maintainers":[{"name":"abilov","email":"abilovelchin@gmail.com"}],"readme":"# AWS File storage package for NestJS\n\nA comprehensive AWS S3 file storage module for NestJS applications with automatic image optimization and multiple format conversions.\n\n## Features\n\n- 🚀 **Easy Integration**: Simple setup with NestJS dependency injection\n- 📁 **AWS S3 Integration**: Seamless file upload to Amazon S3\n- 🖼️ **Automatic Image Optimization**: Built-in image resizing and format conversion\n- 🔄 **Multiple Conversions**: Generate different image sizes (thumbnails, medium, large, etc.)\n- 📊 **Database Tracking**: Store file metadata in your database\n- 🛡️ **TypeScript Support**: Full TypeScript support with type definitions\n- 🎯 **Sharp Integration**: High-performance image processing with Sharp\n- 📝 **RESTful API**: Ready-to-use controllers for file operations\n\n## Installation\n\n```bash\nnpm install @elchinabilov/nestjs-aws-file-storage\n```\n\n## Prerequisites\n\n- Node.js (v16 or higher)\n- NestJS application\n- AWS S3 bucket\n- TypeORM (for database integration)\n\n## Configuration\n\n### 1. Environment Variables\n\nCreate a `.env` file in your project root:\n\n```env\n# AWS Configuration\nAWS_REGION=us-east-1\nAWS_ACCESS_KEY_ID=your-access-key-id\nAWS_SECRET_ACCESS_KEY=your-secret-access-key\nAWS_S3_BUCKET=your-bucket-name\n```\n\n### 2. Database Setup\n\nMake sure you have TypeORM configured in your NestJS application. The module will automatically create the required `files` table.\n\n### 3. Module Configuration\n\nImport the module in your `app.module.ts`:\n\n```typescript\nimport { Module } from \"@nestjs/common\";\nimport { ConfigModule } from \"@nestjs/config\";\nimport { TypeOrmModule } from \"@nestjs/typeorm\";\nimport { FileStorageModule } from \"@elchinabilov/nestjs-aws-file-storage\";\n\n@Module({\n  imports: [\n    ConfigModule.forRoot(),\n    TypeOrmModule.forRoot({\n      // Your TypeORM configuration\n    }),\n    FileStorageModule.forRoot({\n      aws: {\n        region: process.env.AWS_REGION,\n        accessKeyId: process.env.AWS_ACCESS_KEY_ID,\n        secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY,\n        bucket: process.env.AWS_S3_BUCKET,\n      },\n      conversions: [\n        { suffix: \"thumbnail\", width: 150 },\n        { suffix: \"small\", width: 300 },\n        { suffix: \"medium\", width: 600 },\n        { suffix: \"large\", width: 1200 },\n      ],\n      publicRoutes: {\n        upload: true, // POST /files - public (no authentication required)\n        delete: false, // DELETE /files/:id - protected (authentication required)\n        bulkDelete: false, // DELETE /files/bulk - protected (authentication required)\n      },\n    }),\n  ],\n})\nexport class AppModule {}\n```\n\n## Usage\n\n### Basic File Upload\n\nThe module provides a ready-to-use controller at `/files` endpoint:\n\n```typescript\n// POST /files\n// Content-Type: multipart/form-data\n// Body: files (form field)\n```\n\n### Using the Service Directly\n\n```typescript\nimport { Injectable } from \"@nestjs/common\";\nimport { FileStorageService } from \"@elchinabilov/nestjs-aws-file-storage\";\n\n@Injectable()\nexport class MyService {\n  constructor(private readonly fileStorageService: FileStorageService) {}\n\n  async uploadFile(file: Express.Multer.File) {\n    return await this.fileStorageService.upload(file);\n  }\n\n  async deleteFile(fileId: string) {\n    return await this.fileStorageService.delete(fileId);\n  }\n\n  async uploadFromUrl(url: string) {\n    return await this.fileStorageService.uploadFromUrl(url);\n  }\n}\n```\n\n### File Entity\n\nThe uploaded files are stored in the database with the following structure:\n\n```typescript\ninterface FileEntity {\n  id: string; // UUID\n  originalName: string; // Original filename\n  mimeType: string; // MIME type\n  size: number; // File size in bytes\n  conversions: Record<string, string>; // URLs for different sizes\n  createdAt: Date; // Upload timestamp\n}\n```\n\n### Image Conversions\n\nFor image files (JPEG, PNG), the module automatically generates multiple sizes:\n\n```typescript\n// Example response for an uploaded image\n{\n  \"id\": \"123e4567-e89b-12d3-a456-426614174000\",\n  \"originalName\": \"photo.jpg\",\n  \"mimeType\": \"image/jpeg\",\n  \"size\": 1024000,\n  \"conversions\": {\n    \"thumbnail\": \"https://your-bucket.s3.amazonaws.com/uploads/123e4567-e89b-12d3-a456-426614174000/thumbnail.webp\",\n    \"small\": \"https://your-bucket.s3.amazonaws.com/uploads/123e4567-e89b-12d3-a456-426614174000/small.webp\",\n    \"medium\": \"https://your-bucket.s3.amazonaws.com/uploads/123e4567-e89b-12d3-a456-426614174000/medium.webp\",\n    \"large\": \"https://your-bucket.s3.amazonaws.com/uploads/123e4567-e89b-12d3-a456-426614174000/large.webp\"\n  },\n  \"createdAt\": \"2024-01-01T00:00:00.000Z\"\n}\n```\n\n## API Endpoints\n\n### Upload File\n\n```\nPOST /files\nContent-Type: multipart/form-data\n\nBody:\n- file: File (required)\n```\n\n**Response:**\n\n```json\n{\n  \"id\": \"uuid\",\n  \"originalName\": \"filename.jpg\",\n  \"mimeType\": \"image/jpeg\",\n  \"size\": 1024000,\n  \"conversions\": {\n    \"thumbnail\": \"https://...\",\n    \"small\": \"https://...\",\n    \"medium\": \"https://...\",\n    \"large\": \"https://...\"\n  },\n  \"createdAt\": \"2024-01-01T00:00:00.000Z\"\n}\n```\n\n### Upload From URL\n\n```\nPOST /files/url\n\nBody:\n- url: string (required)\n```\n\n**Response:** Same structure as file upload. For images (JPEG/PNG), conversions are generated as WebP. For non-images, a single `url` is returned in `conversions`.\n\n### Delete File\n\n```\nDELETE /files/:id\n```\n\n### Bulk Delete\n\n```\nDELETE /files/bulk\n\nBody:\n- ids: string[] (required)\n```\n\n## Public Routes Configuration\n\nThe module allows you to configure which routes should be public (no authentication required) and which should be protected (authentication required). This is useful when you want to allow public file uploads but protect file deletion operations.\n\n### Example Public Routes Configuration\n\n```typescript\nFileStorageModule.forRoot({\n  aws: {\n    region: \"us-east-1\",\n    accessKeyId: \"your-key\",\n    secretAccessKey: \"your-secret\",\n    bucket: \"your-bucket\",\n  },\n  conversions: [\n    { suffix: \"thumbnail\", width: 150 },\n    { suffix: \"small\", width: 300 },\n  ],\n  publicRoutes: {\n    upload: true, // POST /files - public (no authentication required)\n    // When upload is public, POST /files/url is also public\n    delete: false, // DELETE /files/:id - protected (authentication required)\n    bulkDelete: false, // DELETE /files/bulk - protected (authentication required)\n  },\n});\n```\n\n### Route Behavior\n\n- **Public Routes**: When `publicRoutes` is set to `true` for a route, the `@IsPublic()` decorator is applied dynamically, making the endpoint accessible without authentication.\n- **Protected Routes**: When `publicRoutes` is set to `false` or omitted, the route requires authentication (depends on your authentication setup).\n- **Mixed Configuration**: You can have some routes public and others protected. For example, allow public uploads but protect delete operations.\n- **Dynamic Application**: The module automatically applies the `@IsPublic()` decorator to the specified routes based on your configuration.\n\n## Configuration Options\n\n### FileModuleOptions\n\n```typescript\ninterface FileModuleOptions {\n  aws: {\n    region: string; // AWS region\n    accessKeyId: string; // AWS access key ID\n    secretAccessKey: string; // AWS secret access key\n    bucket: string; // S3 bucket name\n  };\n  conversions: Array<{\n    suffix: string; // Conversion name (e.g., 'thumbnail', 'medium')\n    width: number; // Image width in pixels\n  }>;\n  publicRoutes?: {\n    upload?: boolean; // Make upload endpoint public (no authentication required)\n    delete?: boolean; // Make delete endpoint public (no authentication required)\n    bulkDelete?: boolean; // Make bulk delete endpoint public (no authentication required)\n  };\n}\n```\n\n### Example Configuration\n\n```typescript\nFileStorageModule.forRoot({\n  aws: {\n    region: \"us-east-1\",\n    accessKeyId: \"AKIAIOSFODNN7EXAMPLE\",\n    secretAccessKey: \"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY\",\n    bucket: \"my-app-files\",\n  },\n  conversions: [\n    { suffix: \"thumbnail\", width: 150 },\n    { suffix: \"small\", width: 300 },\n    { suffix: \"medium\", width: 600 },\n    { suffix: \"large\", width: 1200 },\n    { suffix: \"xlarge\", width: 1920 },\n  ],\n});\n```\n\n## Supported File Types\n\n### Images (with automatic optimization)\n\n- JPEG/JPG\n- PNG\n\nImages are automatically converted to WebP format for better compression and performance.\n\n### Other Files\n\n- PDF\n- Documents (DOC, DOCX, TXT, etc.)\n- Videos (MP4, AVI, MOV, etc.)\n- Audio (MP3, WAV, etc.)\n- Archives (ZIP, RAR, etc.)\n\n## File Structure\n\n```\nuploads/\n├── {uuid}/\n│   ├── thumbnail.webp\n│   ├── small.webp\n│   ├── medium.webp\n│   ├── large.webp\n│   └── original-filename.ext\n```\n\n## Error Handling\n\nThe module includes comprehensive error handling for:\n\n- Invalid file types\n- Upload failures\n- AWS S3 connection issues\n- Database errors\n- Image processing errors\n\n## Performance Considerations\n\n- Images are processed asynchronously\n- WebP format is used for better compression\n- Multiple image sizes are generated in parallel\n- Database operations are optimized\n\n## Security\n\n- File type validation\n- Size limits (configure in your NestJS app)\n- Secure AWS credentials handling\n- UUID-based file naming for security\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Author\n\n**Elchin Abilov**\n\n- Email: abilovelchin@gmail.com\n\n<!-- ## Support\n\nIf you encounter any issues or have questions, please open an issue on the GitHub repository. -->\n","readmeFilename":"README.md"}