{"_id":"@russ-b/nestjs-common-tools","_rev":"69-850612f9958adfac721f097b97e2813b","name":"@russ-b/nestjs-common-tools","dist-tags":{"latest":"2.4.0"},"versions":{"1.0.0":{"name":"@russ-b/nestjs-common-tools","version":"1.0.0","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.0.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"e7503d9e4e99f4e43400a149131eb403b325e97f","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.0.0.tgz","fileCount":15,"integrity":"sha512-QYWhHZK5dy/d7bXGUhvS2v+6TgOWjQ7cLOYXcE7/tErXmi84ZnZ/vDy00zwIRpIe5Arq6pyV4h0TypWOYBZRqg==","signatures":[{"sig":"MEUCIB2KhnSWAvGbwjMkglRQhSrw8xYYF2RZwCnR4YSaQSC7AiEAmZLfU33XysEdeuy5EHPru9EKf0snwfb54ctmLJh+QN4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":153795},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"9be0e86ab58280e9062ba37bc25325474423838e","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.18.0","@eslint/js":"^9.18.0","typescript":"^5.7.3","tsconfig-paths":"^4.2.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","@nestjs/common":"^11.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.0.0_1738393211917_0.6016681070356855","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@russ-b/nestjs-common-tools","version":"1.1.2","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.2","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"fdf9a23f95b5f335c4a234047ebfa1891ac8593a","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.2.tgz","fileCount":78,"integrity":"sha512-dp0cREBHqsdEw4AuvT9nCy7HOVIIizSkjxus26uRUSTWNyEHYXT9nuHwMZUghlBwZNZWLSnHZgQD4481NZTFTQ==","signatures":[{"sig":"MEUCIQCYCt908MQGa63oFhgMZHiBGEA0uNyy3FCZ2FHQ14z86QIgPe2qW015xM1aup1FAnOTOC7S67g+058V2b30CFAtxIE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":326543},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"e23d1cf8b15d985f9cc77ba200ceb6f27ca09118","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.2_1738655631994_0.4652943318602607","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@russ-b/nestjs-common-tools","version":"1.1.3","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.3","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"a062fcce39cdddf8759349a14df590c8653bc25a","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.3.tgz","fileCount":78,"integrity":"sha512-Zu/SjtNgbO/7AAXC/J7YFYk5TEzhUsW+3bV4zZwa6gCpZUsbD53sNxuhCojQYkcK0d/YlJvAcloEvbm1RswfyQ==","signatures":[{"sig":"MEYCIQDPm6uuQRKVYgSIt0OLbETdTRZe3mqkF2+H/dgRB+j0UQIhAIbu+8aK+7qZMl4vfdEL156h6JiY5N/KIfq5cpyA5Cgq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":326627},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/common/grpc/validators/index.js","./grpc/transformers":"./dist/common/grpc/transformers/index.js"},"gitHead":"013033f76ef101c053f171f6ebfc1ea4d4f40537","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"grpc/transformers":["dist/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.3_1738670470330_0.394761667892362","host":"s3://npm-registry-packages-npm-production"}},"1.1.4":{"name":"@russ-b/nestjs-common-tools","version":"1.1.4","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.4","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"b96f53048856baff07960a9a412e9ad59da28fd1","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.4.tgz","fileCount":78,"integrity":"sha512-5EGeevCmtsDljq0CGh/w5HaoiJR31YAhi9EbSNo3r8U1llRb9XjTLpPaZro696d6ab/oBlqoZ8H4Iu8npDNv6Q==","signatures":[{"sig":"MEUCIDJ2x6VR8dhQ1LN3mfEAav8xzwL/wRF+XxIh0WACR789AiEA/xfijayqoLRddXwnjnvLjv5P2AhRwQBqR/9+mjeX9Go=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":326680},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/common/grpc/validators/index.js","./grpc/transformers":"./dist/common/grpc/transformers/index.js"},"gitHead":"7977c7ef2405929680b45d29b6d2a15d9d1a44b9","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"grpc/transformers":["dist/common/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.4_1738671527167_0.25894797050569873","host":"s3://npm-registry-packages-npm-production"}},"1.1.5":{"name":"@russ-b/nestjs-common-tools","version":"1.1.5","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.5","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"4d6c80efaae95c42fca910ddc44844281e492ac3","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.5.tgz","fileCount":78,"integrity":"sha512-ipTMaIKZKkFndnh/Y1PqkmiT3nLFUNMLbEE625LDVGKSdPHj065td8g9xyWbk/xgukTJGlbIqbmUi4bFj749yw==","signatures":[{"sig":"MEQCIGOhBJ8pykuQH8zhj3CepsW6igtWQpKuBboyZkC7Eh+tAiAZucqXHWXaWKuixT7UHGV8Y09CWCsiibztrpkD0IZSPQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":326739},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/common/grpc/validators/index.js","./grpc/transformers":"./dist/common/grpc/transformers/index.js"},"gitHead":"c93d8607d1e1b4b573effac5c0d0c9d8716e89ef","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"validators":["dist/common/validators/index.d.ts"],"grpc/transformers":["dist/common/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.5_1738671922436_0.07917799599443298","host":"s3://npm-registry-packages-npm-production"}},"1.1.6":{"name":"@russ-b/nestjs-common-tools","version":"1.1.6","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.6","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"d75883d01dcf727a6a24ff0cace771ca38bb0715","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.6.tgz","fileCount":78,"integrity":"sha512-xSvJo3li5iIqwlRxXLtiFR+anmjyEzZNnBpMBynEgrqX4jYGq8L1XGetsYyDCpkKmSrx69lZ0zkGvBTyVeILjQ==","signatures":[{"sig":"MEUCIGeS+9qJ0YDbf9OBALELMKh7L9yF0bBx6+pBWAHUSZ1eAiEA1kgDFna9LkYTCnMIjsMJWkHZgLYxtz3ZdehWTtARUxM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":326734},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/common/validators/index.js","./grpc/transformers":"./dist/common/grpc/transformers/index.js"},"gitHead":"a01e996c9ad6676b11f582f7e4fc6ea7aad18a08","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"validators":["dist/common/validators/index.d.ts"],"grpc/transformers":["dist/common/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.6_1738672143641_0.864493984798534","host":"s3://npm-registry-packages-npm-production"}},"1.1.7":{"name":"@russ-b/nestjs-common-tools","version":"1.1.7","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.7","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"68fa8be9fc501b6d03bd7c8604ae4bc2a250c048","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.7.tgz","fileCount":78,"integrity":"sha512-ANlaFDlCv6TiljFu3mqm1haljVUdu98I/K6n2ss379RP9p2rdcRt/71pa/aFeMIPPat9IUoBaIpJ8WLbVB038w==","signatures":[{"sig":"MEYCIQC398cEZNfMVeDledPX/TicyGyKrShsvLzczFGJ43LRXQIhAJh0NrppYUDY0OazTh00WliYTefKhXfeNjHHpgCq9b5B","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":326766},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/common/validators/index.js","./grpc/transformers":"./dist/common/grpc/transformers/index.js"},"gitHead":"723c95f00fc245e3982fb8a0b22bf9be73c97022","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"validators":["dist/common/validators/index.d.ts"],"grpc/transformers":["dist/common/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.7_1738672276258_0.9630777174947458","host":"s3://npm-registry-packages-npm-production"}},"1.1.8":{"name":"@russ-b/nestjs-common-tools","version":"1.1.8","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.8","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"13ccec3f41f3094a0a67238ef3f9962a233ecf95","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.8.tgz","fileCount":78,"integrity":"sha512-UZVL+vuHTcP6Hb5v/cJ5bm/McxyWZg71gX2N4Qf13TtuOJO8y0cWi0M8CKzIEuY5eYoBXpSdOqb/TJdHcmElYw==","signatures":[{"sig":"MEUCIQCKE16L0npeaIi2CGulPimWVQGh1Ryba44VY830YBCouAIgBxh9MwlbSdN5dMH5OW0Uh+UlM3zU2QDu2n1g47wiwBI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":326766},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/common/validators/index.js","./grpc/transformers":"./dist/common/grpc/transformers/index.js"},"gitHead":"b7bde8ff7f5f6e17044ca732e54e9dceb005d7e7","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"validators":["dist/common/validators/index.d.ts"],"grpc/transformers":["dist/common/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.8_1738672341446_0.37057404187696563","host":"s3://npm-registry-packages-npm-production"}},"1.1.9":{"name":"@russ-b/nestjs-common-tools","version":"1.1.9","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.9","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"e16f7af4e3b665b44434e27064082af1e0c82e87","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.9.tgz","fileCount":87,"integrity":"sha512-mYEHeUBCYex8IOBuL7ZJnSmQVdJ8IAw5bxMjyIm6D79oM4tWxXQZCIy4+PqXGLZZyXhs+30rGnuoJF4WJutJ4A==","signatures":[{"sig":"MEUCIBIa+2J+oHToqNujfQ/fOcZsGnOJX0LogWwVijd/X9NZAiEAn+/1czMjHiik6+qiCAmr97Uyu7dxHgk48X7xT9D84fY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":336026},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/common/validators/index.js","./grpc/filters":"./dist/common/grpc/filters/index.js","./grpc/interceptors":"./dist/common/grpc/interceptors/index.js","./grpc/transformers":"./dist/common/grpc/transformers/index.js"},"gitHead":"cd3af3ec96ff3454febcbe271d0feea927f28519","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"validators":["dist/common/validators/index.d.ts"],"grpc/filters":["dist/common/grpc/filters/index.d.ts"],"grpc/interceptors":["dist/common/grpc/interceptors/index.d.ts"],"grpc/transformers":["dist/common/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.9_1738676842068_0.7509168711753667","host":"s3://npm-registry-packages-npm-production"}},"1.1.10":{"name":"@russ-b/nestjs-common-tools","version":"1.1.10","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.10","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"8f2971a39f43259a1449715ce4798b539ff90650","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.10.tgz","fileCount":87,"integrity":"sha512-C48eaZH3+y9/jH8kzH5RKXaNrmFLBeqN1s6Y3G26ws1zpCnUA2nTSSvblUQeuZna1EiyF/MvUp2ql06D2+sTog==","signatures":[{"sig":"MEQCIFVN2/PsTTiAmING8FfGQcj1KVnhtY716hnKUPd2WPBgAiANgU3Agna7Y2c1MNLEcls34iVDdOWBwzKGNRsAQZbGzQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":334657},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/common/validators/index.js","./grpc/filters":"./dist/common/grpc/filters/index.js","./grpc/interceptors":"./dist/common/grpc/interceptors/index.js","./grpc/transformers":"./dist/common/grpc/transformers/index.js"},"gitHead":"cd3af3ec96ff3454febcbe271d0feea927f28519","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"validators":["dist/common/validators/index.d.ts"],"grpc/filters":["dist/common/grpc/filters/index.d.ts"],"grpc/interceptors":["dist/common/grpc/interceptors/index.d.ts"],"grpc/transformers":["dist/common/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.10_1738677031486_0.30286265501435694","host":"s3://npm-registry-packages-npm-production"}},"1.1.11":{"name":"@russ-b/nestjs-common-tools","version":"1.1.11","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.11","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"f9512a1fecd0a20166f9f87067772a0049bc57aa","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.11.tgz","fileCount":159,"integrity":"sha512-XlnD456Z5pKXDPxIlamIxeS4rutafuEYjiFT9HDK4rJsUFbDPgUzYhKJFGxzXF6qjL+1fSoBb3HTuhqGweOfrQ==","signatures":[{"sig":"MEQCIA4NAFlE674aGAAmi+wA7fWF7poTE4DRNE1VdB4yLwDXAiAx+NHgVUH1UVkJe/i2MTglVmLZUq0/1g9aoSlCcuybVA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":394615},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/common/validators/index.js","./grpc/filters":"./dist/common/grpc/filters/index.js","./grpc/interceptors":"./dist/common/grpc/interceptors/index.js","./grpc/transformers":"./dist/common/grpc/transformers/index.js"},"gitHead":"c15fd3f533cf091e8ac03cc36efd11a218ded794","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"validators":["dist/common/validators/index.d.ts"],"grpc/filters":["dist/common/grpc/filters/index.d.ts"],"grpc/interceptors":["dist/common/grpc/interceptors/index.d.ts"],"grpc/transformers":["dist/common/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.11_1738692900266_0.40124977284768804","host":"s3://npm-registry-packages-npm-production"}},"1.1.12":{"name":"@russ-b/nestjs-common-tools","version":"1.1.12","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.12","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"390ecda039a893fb0e20b7733f1bbc5f42220758","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.12.tgz","fileCount":78,"integrity":"sha512-T2rc9xLCP6QWVK9w9/leXtBKLEmD4JID2gFqsyJWRaPFvsJgtk3YQ49M8CwSYQ+ZaHVLK/1d9AkPabzDse9n7g==","signatures":[{"sig":"MEQCIB9SR1MMp2X9qqkr4O0qWKAlibKwLfXDtkpnJDLO3t/eAiA5+drinJTQ7LB/PBx+VGE8IxtZPZarHFUlj4s4fPUS/w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":325177},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/common/validators/index.js","./grpc/filters":"./dist/common/grpc/filters/index.js","./grpc/interceptors":"./dist/common/grpc/interceptors/index.js","./grpc/transformers":"./dist/common/grpc/transformers/index.js"},"gitHead":"0dafd2fb171275608c9632be73d897638a2d7fa3","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"validators":["dist/common/validators/index.d.ts"],"grpc/filters":["dist/common/grpc/filters/index.d.ts"],"grpc/interceptors":["dist/common/grpc/interceptors/index.d.ts"],"grpc/transformers":["dist/common/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.12_1738700172763_0.14409825019995504","host":"s3://npm-registry-packages-npm-production"}},"1.1.13":{"name":"@russ-b/nestjs-common-tools","version":"1.1.13","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.13","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"49cabdc47fb24379fa1cd9f6cc4daa7c8749e598","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.13.tgz","fileCount":78,"integrity":"sha512-ddKbIDaAKfmvMs5VyEfgKo5Sob4vwQy53sC4VTbO+wzcbLzcVNcewqugdq8k8eXNMhrQGzfX2vT8fft+MNIfnA==","signatures":[{"sig":"MEQCIFWgDdv75XKcG2BLMZrupmCSMz0JSceT3KPXzDIOpPARAiBa3BDYMj0SQQcr6E/b6g7vzD4rkKHKb54kfJks4foM0A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":325121},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/validators/index.js","./grpc/filters":"./dist/grpc/filters/index.js","./grpc/interceptors":"./dist/grpc/interceptors/index.js","./grpc/transformers":"./dist/grpc/transformers/index.js"},"gitHead":"084c9feefe9a002c38551a593ef226c5e94425c3","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"validators":["dist/validators/index.d.ts"],"grpc/filters":["dist/grpc/filters/index.d.ts"],"grpc/interceptors":["dist/grpc/interceptors/index.d.ts"],"grpc/transformers":["dist/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.13_1738700962445_0.7959043602253868","host":"s3://npm-registry-packages-npm-production"}},"1.1.14":{"name":"@russ-b/nestjs-common-tools","version":"1.1.14","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.14","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"cd8f4c538cc765c01feb2592bb9754f5b378d5d8","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.14.tgz","fileCount":81,"integrity":"sha512-+h9tCg7kkbQI3vgb7bkeftDs+FNlPuMY3qLWn3eInhv6h1DybNwc6v2yWNNQ4Dj48ai47PLnKyEv/uZaJuL4XA==","signatures":[{"sig":"MEUCIDXbWjkI5jJEYZWwTJi4snClWwM+9wS9Bfb1XH4b/tzLAiEAoVSDRAPEF3RQywgRm1rUEAh1CorlRhlqhxQ61IZVwPI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":327172},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/validators/index.js","./grpc/filters":"./dist/grpc/filters/index.js","./grpc/interceptors":"./dist/grpc/interceptors/index.js","./grpc/transformers":"./dist/grpc/transformers/index.js"},"gitHead":"f91f4a104f50097b32b1d8eff8c5a1fb9608af56","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"validators":["dist/validators/index.d.ts"],"grpc/filters":["dist/grpc/filters/index.d.ts"],"grpc/interceptors":["dist/grpc/interceptors/index.d.ts"],"grpc/transformers":["dist/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.14_1738701558636_0.9909230087147403","host":"s3://npm-registry-packages-npm-production"}},"1.1.15":{"name":"@russ-b/nestjs-common-tools","version":"1.1.15","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.15","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"08b9e8865d049c87057451488cc3c72829d3495e","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.15.tgz","fileCount":81,"integrity":"sha512-cvfJ2HyWn2gSHXEnupQShQzIA6IlE8U8rSCl8Ig9FEhe+6UY9mWWo0HBBGjhvMKCbJISb8K91BZjBisBbOF1UQ==","signatures":[{"sig":"MEUCIFSwNkRKqNsWeDiBMeucIzsKjsb+37bZ/tb7DKfPLgY9AiEA6KA0U+mMcf2ubSHAxcL837QiQbQ0KEVPiiSwMT/lrN4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":327250},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./grpc":"./dist/grpc/index.js","./validators":"./dist/validators/index.js","./grpc/filters":"./dist/grpc/filters/index.js","./grpc/interceptors":"./dist/grpc/interceptors/index.js","./grpc/transformers":"./dist/grpc/transformers/index.js"},"gitHead":"1100d22f96ebb2fbd67746b70b595641cbe3b07f","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"grpc":["dist/grpc/index.d.ts"],"validators":["dist/validators/index.d.ts"],"grpc/filters":["dist/grpc/filters/index.d.ts"],"grpc/interceptors":["dist/grpc/interceptors/index.d.ts"],"grpc/transformers":["dist/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","class-validator":"^0.14.1","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.15_1738701784063_0.06558715078419097","host":"s3://npm-registry-packages-npm-production"}},"1.1.16":{"name":"@russ-b/nestjs-common-tools","version":"1.1.16","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.16","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"6b7673a155b674ff8f64f4d61b273efbb67bd37a","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.16.tgz","fileCount":87,"integrity":"sha512-lObJ0rjUL0Q3mgv4vk37nBo69I4EqKMsaZqQgEAN44LJ85euRbNyFJgsAfpICg4uNvtsRDKMYZMOaSLv9TFpgg==","signatures":[{"sig":"MEUCIQCRfq3mst8RrZVwCDWOzPv5pI/AKb1ZD6hBXFBmxjW52QIgUpwFYHGn4LY0X1ELTv9OKiaDHnMH2y5KU5nCp2h9rOs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":338353},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./grpc":"./dist/grpc/index.js","./validators":"./dist/validators/index.js","./grpc/filters":"./dist/grpc/filters/index.js","./grpc/servies":"./dist/grpc/services/index.js","./grpc/interceptors":"./dist/grpc/interceptors/index.js","./grpc/transformers":"./dist/grpc/transformers/index.js"},"gitHead":"1100d22f96ebb2fbd67746b70b595641cbe3b07f","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"grpc":["dist/grpc/index.d.ts"],"validators":["dist/validators/index.d.ts"],"grpc/filters":["dist/grpc/filters/index.d.ts"],"grpc/services":["dist/grpc/services/index.d.ts"],"grpc/interceptors":["dist/grpc/interceptors/index.d.ts"],"grpc/transformers":["dist/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.0","class-validator":"^0.14.1","@grpc/reflection":"^1.0.4","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.16_1738702089805_0.43787833520798225","host":"s3://npm-registry-packages-npm-production"}},"1.1.17":{"name":"@russ-b/nestjs-common-tools","version":"1.1.17","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.17","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"88451aeb503e7d14e088d249ccbc13131d113218","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.17.tgz","fileCount":87,"integrity":"sha512-/yDUgnsnB9YYnyTO9PAfkI9LPKxU74A8yomz8534g3UX10OYhQexKlo43xSkcKAmLGk0M29n4lbLPNuzoIgdQA==","signatures":[{"sig":"MEYCIQCqYg2PJiNaCwbwrSqcvRnkG7T5wyfe0ah8OqnYIlCKHwIhAOWUXZIGfZZDpNHcQDrUUfScQh85eLW6bnri0/NggUpI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":338581},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./grpc":"./dist/grpc/index.js","./validators":"./dist/validators/index.js","./grpc/filters":"./dist/grpc/filters/index.js","./grpc/servies":"./dist/grpc/services/index.js","./grpc/interceptors":"./dist/grpc/interceptors/index.js","./grpc/transformers":"./dist/grpc/transformers/index.js"},"gitHead":"1100d22f96ebb2fbd67746b70b595641cbe3b07f","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"grpc":["dist/grpc/index.d.ts"],"validators":["dist/validators/index.d.ts"],"grpc/filters":["dist/grpc/filters/index.d.ts"],"grpc/services":["dist/grpc/services/index.d.ts"],"grpc/interceptors":["dist/grpc/interceptors/index.d.ts"],"grpc/transformers":["dist/grpc/transformers/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.0","class-validator":"^0.14.1","@grpc/reflection":"^1.0.4","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.17_1738702160577_0.6421804681683785","host":"s3://npm-registry-packages-npm-production"}},"1.1.18":{"name":"@russ-b/nestjs-common-tools","version":"1.1.18","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.18","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"18cbcfb404da93c78618e698e64fa8b67ee50704","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.18.tgz","fileCount":90,"integrity":"sha512-arNl1yMjqzlYyXwTACcGeX7NWYNItcIOyJ4KucgycnVNhrlY3sL2CjvtiLJVbNbvk6T8O9ozlAmKPGOV9UkFWQ==","signatures":[{"sig":"MEYCIQC8d+xaEREwj9eWRXSVtHjZXxzqi1LTh7DeO/8v/5VxawIhAKlJB7imDXBlj6iNQcH7j3UiSIhW5aDXx7yymk883ynd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":339288},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./grpc":"./dist/grpc/index.js","./grpc/*":"./dist/grpc/*/index.js","./validators":"./dist/validators/index.js"},"gitHead":"6de5634065bb50bcc3156aaacf55bd622394069e","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"grpc":["dist/grpc/index.d.ts"],"grpc/*":["dist/grpc/*/index.d.ts"],"validators":["dist/validators/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.0","class-validator":"^0.14.1","@grpc/reflection":"^1.0.4","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.18_1738702475620_0.3009629470502888","host":"s3://npm-registry-packages-npm-production"}},"1.1.19":{"name":"@russ-b/nestjs-common-tools","version":"1.1.19","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.19","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"dd4ef2c95131069f98397a8d194500dff341fa40","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.19.tgz","fileCount":90,"integrity":"sha512-ET9bouC7yoNj7jg81JtXUNPUxIG6mFOVOOsnGBKPnigWTHftYYWf4EmVCzszKIolT8V8TFqIAFtk6WnNuwKA2g==","signatures":[{"sig":"MEQCIEXaa7Fxafjj1hwjDdcRwRTKjO4LtewGCLjx5Nhi/gRPAiBUrl2en25Yu3yqfeJTr7j9N7GbA0WzQZHmJYeILqzedw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335669},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./grpc":"./dist/grpc/index.js","./grpc/*":"./dist/grpc/*/index.js","./validators":"./dist/validators/index.js"},"gitHead":"2ebf39b924f3a5fd5c8d32e08de13e17ebb83859","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"grpc":["dist/grpc/index.d.ts"],"grpc/*":["dist/grpc/*/index.d.ts"],"validators":["dist/validators/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.0","class-validator":"^0.14.1","@grpc/reflection":"^1.0.4","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.19_1738703191880_0.5692809770948293","host":"s3://npm-registry-packages-npm-production"}},"1.1.20":{"name":"@russ-b/nestjs-common-tools","version":"1.1.20","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.20","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"a6d1f7588f7ab60a0c2992ee912006344238a286","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.20.tgz","fileCount":90,"integrity":"sha512-47VW0gYl+WMCFmGbYjcYH/TdZ+CzpYylTlI5IMcN5d74CJg0mle0k7NZTzbU7sSnIM/K80PuZqdYZe8ujEAq4Q==","signatures":[{"sig":"MEUCIQDyVjySHoFDbg2UDILXd58KxX9KiROFAkYvSzd3e0FtywIgAXnfGMgR1XnOmfj4gc7TlkV3lJUab8LeWlCmiAzEujM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335931},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./grpc":"./dist/grpc/index.js","./grpc/*":"./dist/grpc/*/index.js","./validators":"./dist/validators/index.js"},"gitHead":"7f9554d179fda2fde1a36ac1d73971f5d1e42338","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"grpc":["dist/grpc/index.d.ts"],"grpc/*":["dist/grpc/*/index.d.ts"],"validators":["dist/validators/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.0","class-validator":"^0.14.1","@grpc/reflection":"^1.0.4","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.20_1738706350559_0.8780181394411759","host":"s3://npm-registry-packages-npm-production"}},"1.1.21":{"name":"@russ-b/nestjs-common-tools","version":"1.1.21","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.21","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"22ed11d32bfaa1ad18266751c5d248e32c08ac47","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.21.tgz","fileCount":90,"integrity":"sha512-tmtOByfYwFJnop9Ekl2B6Qhi9FxX0bDzcAnLZ8EDM/8LDjJiuxflXq7BgivNwBMlmLk/6F/CvoVq6L9BI809Dw==","signatures":[{"sig":"MEQCIF30vnJlTRrqxZSw4DiHiuBP36a7qnNa+Szy3HlvTHutAiAoEbkx2dID3JYdNdJSPFyQs54spb1KbK5BzbHj0cg8yQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":336344},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./grpc":"./dist/grpc/index.js","./grpc/*":"./dist/grpc/*/index.js","./validators":"./dist/validators/index.js"},"gitHead":"14e76716ff5743b757d939473e87d2ce70844264","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"grpc":["dist/grpc/index.d.ts"],"grpc/*":["dist/grpc/*/index.d.ts"],"validators":["dist/validators/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.0","class-validator":"^0.14.1","@grpc/reflection":"^1.0.4","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.21_1738740649231_0.7416508992748461","host":"s3://npm-registry-packages-npm-production"}},"1.1.22":{"name":"@russ-b/nestjs-common-tools","version":"1.1.22","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.22","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"c167e73f79b59824a2e949df233fb75b53225965","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.22.tgz","fileCount":90,"integrity":"sha512-g/llc442RppDcWvTLmtYHJMw8vuJiO8sPHz1d16bIHUyqpL3/2FPHQaIwdOWKmmogfD1NRVqVdqtmtxM2PKInQ==","signatures":[{"sig":"MEUCIQC5mTE98lFtCb+silZZPp+u40HcaKvKFHomp0MIm/U3VgIgJnjEdAWuIVVuHgkHEpIVSaoeeqLfWptE9ccX/G5ioa0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":336479},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./grpc":"./dist/grpc/index.js","./grpc/*":"./dist/grpc/*/index.js","./validators":"./dist/validators/index.js"},"gitHead":"48c8a3382f7919dbaea6b5d4184c30309274e1f3","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"grpc":["dist/grpc/index.d.ts"],"grpc/*":["dist/grpc/*/index.d.ts"],"validators":["dist/validators/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.0","class-validator":"^0.14.1","@grpc/reflection":"^1.0.4","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.22_1738794052050_0.3315229824289152","host":"s3://npm-registry-packages-npm-production"}},"1.1.23":{"name":"@russ-b/nestjs-common-tools","version":"1.1.23","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.23","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"c79cca3e123b47c1625260859d47c4c0dfe30e86","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.23.tgz","fileCount":90,"integrity":"sha512-2GmsY5+I4aCCncdEqYEQLZ8gQGOW1sF901DDTbRipOXxeQ3yyJAuosQVgOB6mDH8rl6qNSK8L9AQbwfX9Es3IQ==","signatures":[{"sig":"MEYCIQCEy93pGsJwkRdL2nfYyXc8i1/j3IagwFpMBGeAkCTTuwIhAOKbMaOQIImEcjkUouIsCcEcCJVv5Muix7KMl32anaGD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":336479},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./grpc":"./dist/grpc/index.js","./grpc/*":"./dist/grpc/*/index.js","./validators":"./dist/validators/index.js"},"gitHead":"48c8a3382f7919dbaea6b5d4184c30309274e1f3","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","typesVersions":{"*":{"grpc":["dist/grpc/index.d.ts"],"grpc/*":["dist/grpc/*/index.d.ts"],"validators":["dist/validators/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","@nestjs/config":"^4.0.0","class-validator":"^0.14.1","@grpc/reflection":"^1.0.4","class-transformer":"^0.5.1","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.23_1738794077934_0.20800000300317478","host":"s3://npm-registry-packages-npm-production"}},"1.1.24":{"name":"@russ-b/nestjs-common-tools","version":"1.1.24","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.24","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"0a3a57d4dc5676df580e90183c3d8f6ca8afaa09","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.24.tgz","fileCount":90,"integrity":"sha512-2JqE9kJfUD/4hZDXbCP1aiXH+6swlCgU+wpzqSFfmeBTRHQFUIUSmHjQhBSPlB22DgJvEntkMMsz4D/sWne+cA==","signatures":[{"sig":"MEQCIGiYEIIIqqtI982JfJEilxqhn2NRDmejdwIUswToY/dKAiBrxQ1V8e9SZI18/q+0x5cefHEVbClHClFh8n3tG3mH5A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":336513},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./grpc":"./dist/grpc/index.js","./grpc/*":"./dist/grpc/*/index.js","./validators":"./dist/validators/index.js"},"gitHead":"48c8a3382f7919dbaea6b5d4184c30309274e1f3","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"grpc":["dist/grpc/index.d.ts"],"grpc/*":["dist/grpc/*/index.d.ts"],"validators":["dist/validators/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","@grpc/reflection":"^1.0.4","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.24_1738931042614_0.10940993633300011","host":"s3://npm-registry-packages-npm-production"}},"1.1.25":{"name":"@russ-b/nestjs-common-tools","version":"1.1.25","keywords":["nestjs","typeorm","repository","database"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.1.25","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"c737de21bc3e6464b2c0fd0ac2603e76f7c84097","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.1.25.tgz","fileCount":90,"integrity":"sha512-MZutlpfveT2fGBKHfBCgJaxImFw9sV1NtCakzoP0A/PqcOo0DXUYy9n3A5rSY1c90Ek3gM7gKexcwgAsF9PD9A==","signatures":[{"sig":"MEQCIHBv2x4nN672pZYS/3Wp3y3ad3WK1Sru8zSojS0rb7KQAiAAo1r9xg8DYjCtJZHDuybdlbrJDUNN5JT3NJhUVY0V3w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":336765},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./grpc":"./dist/grpc/index.js","./grpc/*":"./dist/grpc/*/index.js","./validators":"./dist/validators/index.js"},"gitHead":"48c8a3382f7919dbaea6b5d4184c30309274e1f3","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and TypeORM utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"grpc":["dist/grpc/index.d.ts"],"grpc/*":["dist/grpc/*/index.d.ts"],"validators":["dist/validators/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","protobufjs":"^7.4.0","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","@grpc/reflection":"^1.0.4","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.1.25_1738939348032_0.14122963279810707","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@russ-b/nestjs-common-tools","version":"1.3.0","keywords":["nestjs","typeorm","database","grpc","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.3.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"fc2c2f4ba550922c2059a434d31af7b2ad317741","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.3.0.tgz","fileCount":177,"integrity":"sha512-hORjEyN1Mdu7xWmstrA6nWQ2rccRWJuU1OEkEgZBrXMFi/tJ1Y4KeDbGTrAEkxm4XOWQ3E+21uaPvYUrqRYwyg==","signatures":[{"sig":"MEUCIQDzz89B9EGtLACCfGLlxF1TKV1mfIrMv1XzFYXtGBAIhwIgXZNYOFkaho4pK0aVMNDqRG57IOn+P9bQ/TSRv2sLrpw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":332386},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/validators/index.js"},"gitHead":"9ef63e8e5fd7a47efce20b249bcaac85466aec39","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS and gRPC utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"validators":["dist/validators/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@grpc/grpc-js":"^1.12.5","@nestjs/common":"^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","@grpc/reflection":"^1.0.4","winston-transport":"^4.9.0","@nestjs/microservices":"^11.0.7"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.3.0_1741189231357_0.22953608205845222","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@russ-b/nestjs-common-tools","version":"1.3.2","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.3.2","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"a3b3524966c0d7fc1be16c6ef5b27e2bf633a48f","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.3.2.tgz","fileCount":177,"integrity":"sha512-LEKfG6UdrJoHH8dESq7wk5sdgpKKc+v4IdNrio56kwsSDrFe+8GTO585dPtVkmQVeFLKQMymruQhumnv7l7l+g==","signatures":[{"sig":"MEQCICho0BmZOOsZgi00fUQp156kgbI+HHRtj3tbDFqdI9tTAiBvhBC5jb2Ri8cJbihuvbSGb/MdxP2N8c/Qx8AslvfrXA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":331888},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/validators/index.js"},"gitHead":"39fd42b4004ce55b4e64d7cac1c66b819e603867","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"validators":["dist/validators/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"uuid":"^11.0.5","typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.3.2_1741195123407_0.7760835847255689","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"@russ-b/nestjs-common-tools","version":"1.3.3","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.3.3","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"0f960bd1ef288374f318c2072dcb95159f3e7852","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.3.3.tgz","fileCount":177,"integrity":"sha512-pTUVqCZpVkEJoN29mbsyUh+CljrYG0dIE6oQXoX0DOk0tqP2bbNgKyRP4qQYIQkiiuObKbbzG+jaZyaLTgULuA==","signatures":[{"sig":"MEUCIQDmwp8z5Gikd+EyLWdQAeqDVgsbmfkKd8b49+I5GEd3QgIgKniCTRUDgJ10jJCXo93ol9TNmf3I/hC+I5CDm1tLz/A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":331899},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/validators/index.js"},"gitHead":"39fd42b4004ce55b4e64d7cac1c66b819e603867","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"validators":["dist/validators/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.3.3_1741266769082_0.9286719498122347","host":"s3://npm-registry-packages-npm-production"}},"1.3.4":{"name":"@russ-b/nestjs-common-tools","version":"1.3.4","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.3.4","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"6c95a36277f75e624de7f096b3a17e70b3d3f999","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.3.4.tgz","fileCount":183,"integrity":"sha512-Mz+Qhn667RAfwgm5iiDx5jPIKEeOgBULUSnF4S6aecA0IBjOSi51ahlYWpbQYIxlCZaindcvVdvcEEPxyc3Ffw==","signatures":[{"sig":"MEQCIBnkADdYFDbVIQnfUrRM1zyYlcsqhPPjUtr0YQoqrMLXAiBumWORzzVmE1RxrqA2uauO1FXBDxg5XiBzxVHcAilzLg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":334143},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/validators/index.js","./common/uitl":"./dist/common/util/index.js"},"gitHead":"39fd42b4004ce55b4e64d7cac1c66b819e603867","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.3.4_1741267315341_0.4283778523723665","host":"s3://npm-registry-packages-npm-production"}},"1.3.5":{"name":"@russ-b/nestjs-common-tools","version":"1.3.5","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.3.5","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"d1f01f3bed48fd27100ee32fb063f9fbef98b903","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.3.5.tgz","fileCount":183,"integrity":"sha512-xvHNHiQr2vgRu0iTiAkA1DXkctidQXyMCiKZuujd2OHTp8IUFOxqY/81FRr+4BOBM2RE0fdj8oXdr8Gla47NgQ==","signatures":[{"sig":"MEYCIQD7oNKlROGDK7RFm657Fx1Z1HjpCi82SgEnep9bUsG48wIhAMYre/5zKoblkcKYTLzbU0oULvEG3LKLtrLz6vh0884V","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":334143},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js"},"gitHead":"39fd42b4004ce55b4e64d7cac1c66b819e603867","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"10.9.2","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.3.5_1741267542717_0.6590750900207658","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@russ-b/nestjs-common-tools","version":"1.4.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.4.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"0e2c6d13a46f606fe4251e0b15ed8e0729dec78a","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.4.0.tgz","fileCount":198,"integrity":"sha512-FcsdbEe92DuFEcQes15YAyYOKJwZ8nnyadf4N/O78FLlV6qRbzqtPZpDEqB1tVbm+hCkLXEVsyZhyyqGk+r+5Q==","signatures":[{"sig":"MEQCIDANBO+B1Cch5bE3K6UInn3iYJTdVAER8z6diGo0bV+JAiACkYNFgwcXksse6s3u+DhsSv3oMjJ4q7NT5EC0jq24xw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":351648},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"47d71f8a3e8709243f631ec25a23d6978966778f","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.4.0_1741777023208_0.030779911695631545","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"@russ-b/nestjs-common-tools","version":"1.4.1","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.4.1","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"8795841303884c9357b81aaa259ee1dc8269096d","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.4.1.tgz","fileCount":198,"integrity":"sha512-+dE5oLLpmiFEc7mgnPhoiAZ3x7AasWe8GVhmeoVEcVpzqlc0uSqdG3E0TSf5lOwzvHy11M3F41rld6Q8wKzFcg==","signatures":[{"sig":"MEUCIQCqLU5BpHHrHqTjxMhNyhV5wKj0Bzjg3Tnk06QSBrfD9wIgY3ismfwDoJx9mE+8oNes/pDRU+DFzc+ZjrFZofAAsyI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":351739},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"2df5117d0c8b3cb4170754bc4bfaf328e623920f","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.4.1_1741892063712_0.7491702957772408","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@russ-b/nestjs-common-tools","version":"1.5.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.5.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"b5edec665a96a445ef812dcd23cd5f30c553f6b1","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.5.0.tgz","fileCount":210,"integrity":"sha512-9qVLUkkzXC3+exy3zr6Qp8G76ouoakPx2eo6qMs+KGHUoQauiNaaLHr/GjH4g6+/FIGUzaMZmevIbQLF9TBALw==","signatures":[{"sig":"MEYCIQDgBqEGB3iCjNjcG0ffTooahbTqEQW3CjEoS3zWvAYiSQIhAPZLwUGtcq6+iGLZPDyevvBQvuuc7U3Z74v7ihTxORSk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":443459},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"e0df26a24951ba27ff642f74ab35c34fe29a8881","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.5.0_1745341832035_0.5187276064324935","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"@russ-b/nestjs-common-tools","version":"1.5.1","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.5.1","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"d3d80b2127760fab0878359843466da2b6352d5e","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.5.1.tgz","fileCount":228,"integrity":"sha512-XFB/IMzakq/vH7wenATUeYaXtEh8ymMMMjJPyzMjotyO3MxzYwyjjiqlzvs5Niq8rTu2+xvyRgSR2fOqdebsfA==","signatures":[{"sig":"MEYCIQC8MPooC3JM3ayWBkrJrXt6s1QmZe76Zpd7bsp9caISLgIhAPnte0yLxIyV09dURnGX1igMsVdvLsftB9hDc+Nx4GXq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":456408},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"d866eeb08d44debde717ee93bb0ac85afe9cf5e4","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"modules/s3":["dist/modules/s3/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.5.1_1745398014360_0.831272829593309","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"@russ-b/nestjs-common-tools","version":"1.5.2","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.5.2","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"c885f0dad52eafa05264307272004ac394c8b841","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.5.2.tgz","fileCount":228,"integrity":"sha512-0K5sMIuNI2OXNEpqxQibjAbgR3gy0OwOY3UPHk1Nb8dX6ErtgOxAfgXKgLA+hyKzIg2l/TE+M2bT9k8O/jvGbQ==","signatures":[{"sig":"MEYCIQD3q4WXIxARusRGzW4F8HZL8VP8xtZP8bJ7WCqKe6qFLQIhAN0bX3z67qHhpohRklE55NmFf4caDVhU8FqcMFgmSG3A","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":456402},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"d866eeb08d44debde717ee93bb0ac85afe9cf5e4","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.5.2_1745398239042_0.13078808579663437","host":"s3://npm-registry-packages-npm-production"}},"1.5.3":{"name":"@russ-b/nestjs-common-tools","version":"1.5.3","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.5.3","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"c70fa9b700c6909e6974f038bf6af713b26fbf17","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.5.3.tgz","fileCount":228,"integrity":"sha512-jR1BA/MPsyKA/tgMyh3TCPKVscTjSyq4l0BikFpjC19BHdowQWhSOKwD9sobbbn15WpIqGq2PqbdyAP0aNizzQ==","signatures":[{"sig":"MEQCICqx+lSnOaHLoSwxdeKF9TjTyZJ2XMTbi0HajDtSFNEwAiBFqC/Hno9vJZFsVjl1nH+HhP6CgVK4AP5vwKabU6RLbQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":456596},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"ebbad73655608d651c993eb302df701b9cff499c","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.5.3_1746822314268_0.21430399413640222","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@russ-b/nestjs-common-tools","version":"1.6.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.6.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"7498e6f6a45aea06c1691cf0fe058f0e626945ae","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.6.0.tgz","fileCount":231,"integrity":"sha512-nePwtWmL6F28MI4NKLMlCcBCcey5+N3FulPLCy/VcKWLWHfUMX0PGSPMQJH0QoGbcCuvyaURm/up14Itz+dCmA==","signatures":[{"sig":"MEUCIQCUrTNRaC+HUiNllOJUo8IR9Pvf2PJYOY0grUjVgVo3/wIgIjYNOSAn4VqtWR9kDZGdDoC5BNR2t2CyHnnmfu46WmU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":457812},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"ebbad73655608d651c993eb302df701b9cff499c","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.6.0_1746866846150_0.8124245002075738","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@russ-b/nestjs-common-tools","version":"1.7.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.7.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"3b1ebfa604399450abd7f68210164d04420d7f69","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.7.0.tgz","fileCount":231,"integrity":"sha512-mE/un/9fTGPjxCloPx7L2ydDRv/fLCw72oWI8i0/339ecMON3YoilV2JveG5Ln0R5JMJBjgBJzI97/ilzNv6MA==","signatures":[{"sig":"MEQCIFCDhuFFHOCJ/ApSgT7xAC7C7M+SRm/ooBqVH/F8lAGiAiAesTBdXzhf0vd3+tqHdmVskUhN6SoiiE6zHc1mKHYsLA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":471527},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"ebbad73655608d651c993eb302df701b9cff499c","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","actor":{"name":"russ_developer","type":"user","email":"russ.developer@gmail.com"},"email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.7.0_1751285582335_0.8657723390571175","host":"s3://npm-registry-packages-npm-production"}},"1.7.1":{"name":"@russ-b/nestjs-common-tools","version":"1.7.1","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.7.1","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"65c0ef750be83927291004f060376fc6c272fa3a","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.7.1.tgz","fileCount":231,"integrity":"sha512-fZlsoGrPGomUba+Do19mmZQU5NoGaM0lGpQ5TBzDbufNPKtB7io24xhj0T+pDf6l3Ba9zImcPrbjdbN7V/Q4Ug==","signatures":[{"sig":"MEUCIQDNppAwf27LI4/8wslV9J+5b9XyV4hShg+7rrjz9ct1FgIgW/N0nd3HWESn1SykKSUNSDMRHqveJGWiWun1vXABay0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":471533},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"ebbad73655608d651c993eb302df701b9cff499c","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","actor":{"name":"russ_developer","type":"user","email":"russ.developer@gmail.com"},"email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.7.1_1751286434169_0.6901345097144111","host":"s3://npm-registry-packages-npm-production"}},"1.7.2":{"name":"@russ-b/nestjs-common-tools","version":"1.7.2","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.7.2","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"594b0ab924e6190c4c9b5eab424cedd062e64f11","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.7.2.tgz","fileCount":231,"integrity":"sha512-IW1J+TW+foYIvr157yldEjmWCGhnk+/Udr8OodUvGIGB0qkJM2KPXbTxvfGgvqkPXBscw8/UlnNO6htfdMqrkg==","signatures":[{"sig":"MEQCIHW0CSchJA2xsrWkEzNy7WkH+mP0tPG942Rd2a4yMTP5AiAInzys960eXhmoUUoKfF/GuI7edCS7sIc6NDBlBH5ftg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":471664},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"ebbad73655608d651c993eb302df701b9cff499c","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","actor":{"name":"russ_developer","type":"user","email":"russ.developer@gmail.com"},"email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.7.2_1751298891308_0.41543497705279764","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@russ-b/nestjs-common-tools","version":"1.8.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.8.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"7af12591de97dffb793d67bb33e31cfc1c7ef69a","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.8.0.tgz","fileCount":237,"integrity":"sha512-IT6CEVQWzfruVIKjcplWP0snnlvhocj62KIXbT9NCs+PrOjnuujoYtPx9bedwGNyNwohAmUYOJgViz/XGTelEQ==","signatures":[{"sig":"MEQCIEL1NfDrrLlD+f7sbS7gfDQEsWXMGSW2cRarN9aR/I8HAiAc60LddxarIBV4bTdsAMr7L5aKOkU8lB+bRUE5SBXNzA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":476182},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/filters":"./dist/common/filters/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"a82021a88d7b1544ac3a3ee8959e830007bd10c4","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.8.0_1754166239997_0.20888219281183917","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@russ-b/nestjs-common-tools","version":"1.9.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.9.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"f228ce48e53a6b1ec66ddcd61c8e567c816ccbdc","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.9.0.tgz","fileCount":240,"integrity":"sha512-uPAHo4txC34W34z7wb1V6baCriaadBqS5gKfZboEFspr6TbpMwrmWRZM6Y0OZ9Qrj47aFWSdZysjnNDfhjG2bg==","signatures":[{"sig":"MEYCIQDRjEDVnZrVit5UfvD7Ed6tvEq+kVsjzjqn+ok3RwUcCQIhAJQmVB6Ae7sw3Enf8UoWdDwrpP41WVk8ybIY80B4v3tJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":478284},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/filters":"./dist/common/filters/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"a82021a88d7b1544ac3a3ee8959e830007bd10c4","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.9.0_1754424078365_0.8137317344822899","host":"s3://npm-registry-packages-npm-production"}},"1.9.1":{"name":"@russ-b/nestjs-common-tools","version":"1.9.1","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.9.1","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"a0954d20398a0d7e92a2cda8e29ebd6734b9f370","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.9.1.tgz","fileCount":240,"integrity":"sha512-Jn2GQLIalLdf5kegfYbcr8Kcgv/ZJuj/q0Xj8aJ70mlZZ1QYNnyxLsbTB/K/fp+UEjh5skUtUOOXbEsqyJh8bQ==","signatures":[{"sig":"MEYCIQD0V1jU1rv8wbV5uvR2RdvbknnlIWdk3u9J1T7QUg4EWgIhAIBpmKewTWTdFvxw484efTvD7GDJQ+wwXgOiByDAmRd4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":478522},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/filters":"./dist/common/filters/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"a82021a88d7b1544ac3a3ee8959e830007bd10c4","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.9.1_1754425607886_0.573390888142338","host":"s3://npm-registry-packages-npm-production"}},"1.9.2":{"name":"@russ-b/nestjs-common-tools","version":"1.9.2","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.9.2","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"e22c0b59e771c71e697c62f55366849d5e733f7f","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.9.2.tgz","fileCount":240,"integrity":"sha512-+SLCiSFnXB7emPJzQEy2Nl6Wvpf6kxKKIQHDIEirbln3R4z6PUesTAsSYMY8otHtk64agXElpvUWxwS10arPIA==","signatures":[{"sig":"MEUCIBrkyTVhKskLJ4hQHozJUfYsIwOfG9U4XLQBiKo+bnAWAiEAgfyHV60Fe5/v59JWzi7FD6kZJAo68lUrSD1HM/euI4I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":478880},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/filters":"./dist/common/filters/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"a82021a88d7b1544ac3a3ee8959e830007bd10c4","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.9.2_1754936318768_0.439741063202826","host":"s3://npm-registry-packages-npm-production"}},"1.9.3":{"name":"@russ-b/nestjs-common-tools","version":"1.9.3","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.9.3","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"42f28bd2cc464072bebf524c4a909ff072e25ba9","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.9.3.tgz","fileCount":243,"integrity":"sha512-2lJNvvKQDDMa0HKF+GWraK/PNahdPwcS2NqxUY6TcgwieVQNQ8k3dVRB9/JwkZbJ6kEVhYrWmRS/fbu2mfas0g==","signatures":[{"sig":"MEUCIQC25SliktawAU28wSaVcmvboz9JYX2LC+qXSQB7Q2u59QIgH2368kV7Y/11j7ncieGsGpzgJJeBmVNHSYfFfOafohM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":480175},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/filters":"./dist/common/filters/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"a82021a88d7b1544ac3a3ee8959e830007bd10c4","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.9.3_1755955513635_0.9551128217128515","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@russ-b/nestjs-common-tools","version":"1.10.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.10.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"653cbf9b35d934b712e3f7fbbd39c8e468bcc5d7","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.10.0.tgz","fileCount":285,"integrity":"sha512-PRTZEFvWbuZl1S90WI38AoT/Cybb8LylJodylXex7h21AebORGsjMj7u/iW2lzf0aW9QBuZ6IDtLO83S8eRUFQ==","signatures":[{"sig":"MEYCIQDuGtzazrpfgUys4AluITuKJlJfoZPQI8bfZ1HDiIZx5AIhALOfmGrWjkmWw1tBm0duBChkKa5o08y3HztQAFgFvG9G","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":502821},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/filters":"./dist/common/filters/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"6c3caee8a42fc5ab7ef28c3b0db10b7e6ea07cb7","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.10.0_1762688260291_0.8981866246150347","host":"s3://npm-registry-packages-npm-production"}},"1.10.1":{"name":"@russ-b/nestjs-common-tools","version":"1.10.1","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.10.1","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"3966efac90e89836fabbf70fe10e25fc91d39c4f","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.10.1.tgz","fileCount":285,"integrity":"sha512-yrMsxhMJ2dPmTQIZOvtzvJuBRsh17unhLzr6oYZITAokrvgPuhzDuSqrxH/mBycWGjMmEuF+L3zA51aDIETbJQ==","signatures":[{"sig":"MEUCIQC1j14OyCOrQ/eYMNXscLh6rAJ1uA1od79hSXxerlYQjQIgeWasHAqbkDACVHWtabuJczPN4d6grS2Yp4djPO0Gy1M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":502756},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/filters":"./dist/common/filters/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"e03215fc1cc6efc61a905ffdb505ae9d6ead769c","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.10.1_1762698877566_0.21233172772915188","host":"s3://npm-registry-packages-npm-production"}},"1.10.2":{"name":"@russ-b/nestjs-common-tools","version":"1.10.2","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.10.2","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"b625e47146732502a455b2e9facb9680743532d2","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.10.2.tgz","fileCount":285,"integrity":"sha512-WeBxLIQQAL9A/yutwxyYeEUK1cqcXJ9vIZiFHO0tMqk5uiApApk7d3KBYx4sv/9E2hvmyN4uwYb1vwQXvvYSCw==","signatures":[{"sig":"MEUCIA6wonBJkLlY18GbQd+MH2Fb4FStviPxyC/PwLKA4IMtAiEAy7Ow1ltBHa/4UNdEsoIjZGe6lvrEGdzGFAapz6Fm8zU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":502847},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/filters":"./dist/common/filters/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"e03215fc1cc6efc61a905ffdb505ae9d6ead769c","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.10.2_1762699093985_0.5515624164146218","host":"s3://npm-registry-packages-npm-production"}},"1.10.3":{"name":"@russ-b/nestjs-common-tools","version":"1.10.3","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.10.3","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"ec1ad28b69367d24fe2f6569c76c8e7cd08b9773","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.10.3.tgz","fileCount":291,"integrity":"sha512-sEOOB7EkoVu1NI9B/p6AbXaeUsOc+9nSEMMHIWZIzRkRmxx1brTn6Ao1FEP2I7en1Oo+tmapEW9Feno+CbZT/w==","signatures":[{"sig":"MEQCIBQ6qWkCMRnTkiw1QtoDuZBn6CN76X3fjoBd04ue83IrAiBHe2SDKXpxVqwPXSEFollWq4ok359w4cBCMmIq+UVUog==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":506067},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/filters":"./dist/common/filters/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"1d570cad21f5fe33083fcc286be7db4f145a41e8","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.2.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"22.13.1","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.10.3_1762784496932_0.382945040685746","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"@russ-b/nestjs-common-tools","version":"1.11.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.11.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"0464530599db12547596fe4f19f80dd824721ff1","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.11.0.tgz","fileCount":297,"integrity":"sha512-1k/Qf0/RsXSLD+T9sdm7TMak0go0wYSNrdkl/XHdL+402OIGURgLSo4928qcrz6pFn3XI0kkK/00+SVbURz77A==","signatures":[{"sig":"MEQCIBcdk6j5PqUK+G266vTp+VeyDX30vKC+4kcwrCR1Lt00AiBcuo7IZBOA4AsVWfMG+Fl3ayKwE0K/cl682ibJ4KLrBA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":508338},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./typeorm":"./dist/typeorm/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/filters":"./dist/common/filters/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"0030f4ba9808e3a66ceb80fa83fa6a921185bfd6","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.11.0_1771361332186_0.8351353331885867","host":"s3://npm-registry-packages-npm-production"}},"1.11.1":{"name":"@russ-b/nestjs-common-tools","version":"1.11.1","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.11.1","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"5e39a3aae02043d8608c446db299f44f29be3395","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.11.1.tgz","fileCount":300,"integrity":"sha512-IarweVADqMFV3P9bfvu9GvFnUDAUPPo4IGaLnMBFwiwn0ltYNSOce8bfmY0oS3SOsFz9BzQcuZ93kbpnWOpX+Q==","signatures":[{"sig":"MEUCIQDxBRkWiNgzESYkWU6POox1HzovMfgshIycrf+exhgg8wIgUFZhUQAkB8/dJV6jrMzaVJ9elDTwTZU7m1qO6Lw+iDU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":509470},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./typeorm":"./dist/typeorm/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/filters":"./dist/common/filters/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"1ec691ef16b1f69c1ae981ab4105ac2658e4b0ca","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.11.1_1771361443144_0.7399237777197132","host":"s3://npm-registry-packages-npm-production"}},"1.12.0":{"name":"@russ-b/nestjs-common-tools","version":"1.12.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.12.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"e65c803feb64a8e70f16c9e87d329831bcb63171","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.12.0.tgz","fileCount":306,"integrity":"sha512-V5EeVzZtHhwcrzjwMdSP0s8RfdDHfh1VaeBz3LAZtTcgByKZ6k4K+YO68p/yKEdQB85fvBcENtKTKxK4KIte7A==","signatures":[{"sig":"MEUCIBeeP+bAamQ4FdrfrM0b4pJXvHEXpT/7YTdfAvmgl3xqAiEAt4BfTlvvFGiLOyKiXAH5zrfN8rerPfG8oC9Pvll2xHk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":512731},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":"./dist/index.js","./logger":"./dist/logger/index.js","./modules":"./dist/modules/index.js","./typeorm":"./dist/typeorm/index.js","./validators":"./dist/validators/index.js","./common/util":"./dist/common/util/index.js","./common/filters":"./dist/common/filters/index.js","./common/pagination":"./dist/common/pagination/index.js"},"gitHead":"912a0db0e692b4417524fd15841aa77323ef5cf1","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"npx tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","publish":"npm publish --access public"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","ts-proto":"^2.6.1","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","protobufjs":"^7.4.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.12.0_1774717150156_0.18037146981378904","host":"s3://npm-registry-packages-npm-production"}},"1.13.0":{"name":"@russ-b/nestjs-common-tools","version":"1.13.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.13.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"53ca7058fe9d8a601cc881b833176cbc17b47e7d","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.13.0.tgz","fileCount":176,"integrity":"sha512-2FekWlXl/SlhhIKMSHbbClmS3YT3DK84hlwjmdsbp7VXmPZwqtUUTZBQEw80OL/Gv3S/VPZnqEpIv/zaOs8XGQ==","signatures":[{"sig":"MEUCIQD1yHQbBdKOwSKf3FJRg7tmBCe9vUj6BnIGNlyBTOLWGAIgPZOWKAqEf8mLe9oS/jwwod/1rB0WL9477cbaLbrRGnY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107278},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./common/pagination":{"types":"./dist/common/pagination/index.d.ts","default":"./dist/common/pagination/index.js"}},"gitHead":"a4efc7b632bde8fec3a783b2176c357678257c5d","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.13.0_1774781966463_0.6451717662286802","host":"s3://npm-registry-packages-npm-production"}},"1.13.1":{"name":"@russ-b/nestjs-common-tools","version":"1.13.1","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.13.1","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"df35eb7537fda9fd324da9835d14df36d4444c1f","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.13.1.tgz","fileCount":176,"integrity":"sha512-JP/52n/fVJ4K1VVPIZnOunXDgfcngcX8d6hwT2JMSggrpOVDe49Htj8/EG//ZrnUSd3ubikwBGeCBfl+BYkJ9A==","signatures":[{"sig":"MEYCIQCl7DjHSawe0sv66KILOtx8dGco4p8kjq7OVIDNSITOugIhAOVJhwDUupciE/CZdegZg0IsRA9bPhDJ8Gb7x/Fp2Wah","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107800},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./common/pagination":{"types":"./dist/common/pagination/index.d.ts","default":"./dist/common/pagination/index.js"}},"gitHead":"12ffa4fa40fb63e53433b4e039322469411234e4","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.13.1_1774782527554_0.8326107318764977","host":"s3://npm-registry-packages-npm-production"}},"1.14.0":{"name":"@russ-b/nestjs-common-tools","version":"1.14.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.14.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"8fd87f45adb0f5c988bdc2fb3c3a011c01c456a0","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.14.0.tgz","fileCount":185,"integrity":"sha512-rhBEiom28MRVdV279wgQaqOuy69h2wHJDekI/iujeVl9Q+0n0OuYEC7Vfjs2ayWK9tsDm6rgnS5dlEGPOFIz2Q==","signatures":[{"sig":"MEQCIG/FQA12OwrqCxs2rCu827IVlrA5Ldw7AkBBVWCL495WAiBrU78g/ztph7zKplwT7YSzA3kxzhBsGdSOPBfMY+tRig==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":125461},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"},"./common/pagination":{"types":"./dist/common/pagination/index.d.ts","default":"./dist/common/pagination/index.js"}},"gitHead":"aabd8eeda1aa0034cda63a2181aac6a1c764cfd1","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.14.0_1774811715291_0.6860329442625586","host":"s3://npm-registry-packages-npm-production"}},"1.14.1":{"name":"@russ-b/nestjs-common-tools","version":"1.14.1","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.14.1","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"6ef2ecf2358df586ecd2d050f48c80ed89b1b549","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.14.1.tgz","fileCount":185,"integrity":"sha512-GxNf5YDrGuQC2ETAAxGbhOjA0QSu5JmcJC1J2pIdMz/jnHMABcsUj1Q/TbWdCAmPLDQvrrq8VBaHKm9T3z8Ekg==","signatures":[{"sig":"MEYCIQCUWvayh77vUnbaWxDsTAc6jJ47QH9zd23XkVO8mLW2FwIhAP0W/a6vWXfQb3MAAxq4jL0p8Hr6Y+Vf2BPpEWTdErUh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":126684},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"},"./common/pagination":{"types":"./dist/common/pagination/index.d.ts","default":"./dist/common/pagination/index.js"}},"gitHead":"dcd05273848b0e60eac42a4ac5fdc79bc39b3ffb","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.14.1_1774812900339_0.41836921368232605","host":"s3://npm-registry-packages-npm-production"}},"1.14.2":{"name":"@russ-b/nestjs-common-tools","version":"1.14.2","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.14.2","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"76ce325e4211901a56119b95d0a98e32f300781f","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.14.2.tgz","fileCount":185,"integrity":"sha512-57JLtxDzWBG3S7tUXozuN1ajSBqASV3XC2ceHi0plXGwfDrg8jxBjelE1iBiF9iG0sqbTuhNNaG55lbCoKu5Og==","signatures":[{"sig":"MEUCIQDDsi463nl//vlZ9f/JpCdtD2o11qKVnBoe2E0fvWyR6AIgIUcm7oyq1o4ZPaaYYQGA96ihWLnuRBU6M7pQlSaOVUc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":134737},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"},"./common/pagination":{"types":"./dist/common/pagination/index.d.ts","default":"./dist/common/pagination/index.js"}},"gitHead":"c62a67532838c01469c30ec4fc10c49a5fb8d1a2","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.14.2_1774817252669_0.7577214646952526","host":"s3://npm-registry-packages-npm-production"}},"1.14.3":{"name":"@russ-b/nestjs-common-tools","version":"1.14.3","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.14.3","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"36ec1506a83150e6471e68e8fc00fdf73146d88f","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.14.3.tgz","fileCount":185,"integrity":"sha512-Yx+I9T//hpDSuSf2rlLUEvW+XN5oIvWfrAxpUiZr/K3vLx+Qq8iVcq7PDTJSOROHdQeekPw1QNArrgSAyEFDGA==","signatures":[{"sig":"MEQCIAyhhdWczQYD0N0ncmrNQZmop1J8YV/KbLh7eFSJTtgmAiBo6NGMAw/EP3PH9BlrI7VlVlvHRRcKbjvQyCkLPDrM/w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":135161},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"},"./common/pagination":{"types":"./dist/common/pagination/index.d.ts","default":"./dist/common/pagination/index.js"}},"gitHead":"ed407bc719f4b51bc3130fdda6e96d112ccfd48c","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.14.3_1774819946064_0.8772351563840559","host":"s3://npm-registry-packages-npm-production"}},"1.14.4":{"name":"@russ-b/nestjs-common-tools","version":"1.14.4","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.14.4","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"14ab71da18c843901f3baee4f9e91e47d9d4dbcd","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.14.4.tgz","fileCount":185,"integrity":"sha512-5U6zFdEDayQ/yN//3g0prFls2NDAb3duCIetOUoIKed7g74mkRMOEEOikle34LqLwibxbNxcGIJQ3wnxT7zH+A==","signatures":[{"sig":"MEYCIQC1o85KGFmMv2zqVsE2r4DBh9mEdR3qbgpDKxigxGRghwIhANtAUZjWVxb3XUAEnZSbgJ9xP+ghTdOLUMjj76bu2sst","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":136542},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"},"./common/pagination":{"types":"./dist/common/pagination/index.d.ts","default":"./dist/common/pagination/index.js"}},"gitHead":"532cf040b7094f67b39a96af9cdbc112fb8364dd","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","winston-loki":"^6.1.3","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","nest-winston":"^1.10.2","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.14.4_1775247672089_0.30770185965437125","host":"s3://npm-registry-packages-npm-production"}},"1.14.5":{"name":"@russ-b/nestjs-common-tools","version":"1.14.5","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@1.14.5","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"4c5ff54567c59d9970af1a1e3865f94209045c8a","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-1.14.5.tgz","fileCount":185,"integrity":"sha512-rT5cAogu6OMLGLG1Z0l45cz6iPxwUTMY6I6xsM0AGs9AEBajUItk8kaIvqLDGw8j40iWyhC6Oo9VoXAzL2HGOQ==","signatures":[{"sig":"MEUCIEaCPEup20dYIJ9OnB/RcJwUe38P9broQ9mFgrXcBO57AiEA3QQQsPkpExnRJXXcy2pY+Va8XbW5BaRedlsy8NrwtBM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":136542},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"},"./common/pagination":{"types":"./dist/common/pagination/index.d.ts","default":"./dist/common/pagination/index.js"}},"gitHead":"c286dce05c5f02d1004e574919949a1ecbfd52aa","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","nest-winston":"^1.10.2","winston-loki":"^6.1.3","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_1.14.5_1775248107497_0.25567650591516644","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@russ-b/nestjs-common-tools","version":"2.0.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@2.0.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"148a86bc8a94a2fb7ee678dedefb469660b23343","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-2.0.0.tgz","fileCount":215,"integrity":"sha512-Q6gHfpTMUz9KRDf2OGXKt71y7EgBwY45T7PgCkvXx5zpV0/15+RAk7KW1EajZCt/Dvvbbzyp0a+TT8vhM8aABg==","signatures":[{"sig":"MEQCIGyfssz9FqUlZ+oGNX/H5cMWsXDNYsWZPFp1XGgrMGy1AiBWWq/0NPMN37FPzi3Mnu/ZC8g4RzgCZkb2ADvBkITyoQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":163054},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"setupFiles":["<rootDir>/jest.setup.ts"],"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./pagination":{"types":"./dist/pagination/index.d.ts","default":"./dist/pagination/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"},"./common/pagination":{"types":"./dist/common/pagination/index.d.ts","default":"./dist/common/pagination/index.js"}},"gitHead":"6db236dc12a0797493051d2882fa23de9e9db2e2","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"pagination":["dist/pagination/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","nest-winston":"^1.10.2","winston-loki":"^6.1.3","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_2.0.0_1776417725103_0.5913695444695548","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@russ-b/nestjs-common-tools","version":"2.0.1","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@2.0.1","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"2530d89f6b768a9bbba80e65f666aa35cbf5ea59","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-2.0.1.tgz","fileCount":215,"integrity":"sha512-tefJvJ7kWN9RnHyP6rQ6TIOSXq8zaGx3L2I1vUMbTq3E+UEUl3xYn4xglhn/b4rYe0Uyn0k1kcCnwp2RgERzlw==","signatures":[{"sig":"MEUCIQDTfbsiGa2D8KFNmcUPyNwYFDw3m9hlh2+q3LSA3XJzvwIgdgl8/+haPCzTreY9yKEFaErFde+iaROoO3Lcl9A6NLA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":163088},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"setupFiles":["<rootDir>/jest.setup.ts"],"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./pagination":{"types":"./dist/pagination/index.d.ts","default":"./dist/pagination/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"},"./common/pagination":{"types":"./dist/common/pagination/index.d.ts","default":"./dist/common/pagination/index.js"}},"gitHead":"1a6031bd6264fd27ddb814c71e9fd707a45b107f","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","prepublishOnly":"npm test"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"pagination":["dist/pagination/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"],"common/pagination":["dist/common/pagination/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","nest-winston":"^1.10.2","winston-loki":"^6.1.3","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_2.0.1_1776418438701_0.9926191325574676","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@russ-b/nestjs-common-tools","version":"2.0.2","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@2.0.2","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"dd1000d628fee5af3f80e6cf5bedb4852c1c35b7","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-2.0.2.tgz","fileCount":212,"integrity":"sha512-fyJzivFbSIxufTn/ffu3c6bk0svJvq3CslZHO76pFYrh3IIarJcjQr3kRK0bLr641lgX89pB1TT6ehPhJIiPwA==","signatures":[{"sig":"MEUCIGxF7t3lo3l5dp673UuMTPBa0kKm2vCVIAS0RdxZTBpNAiEAjPoAHUXxY/H82ovsBQWaFn8WDhNVELGriTJ82CfjTcE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":161736},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"setupFiles":["<rootDir>/jest.setup.ts"],"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./pagination":{"types":"./dist/pagination/index.d.ts","default":"./dist/pagination/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"}},"gitHead":"456f1ea144e9172ad199dfbab09d4cddfb4dea04","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","prepublishOnly":"npm test"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"pagination":["dist/pagination/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","nest-winston":"^1.10.2","winston-loki":"^6.1.3","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_2.0.2_1776419696159_0.5255867747505174","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@russ-b/nestjs-common-tools","version":"2.1.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@2.1.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"4cbad756248cb57b866160d97e3af3ef3f29963d","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-2.1.0.tgz","fileCount":233,"integrity":"sha512-ozU6XDJ7gumRGqSP+zLoRWIQZn1cW6W1yorcLWFuCcAAfJA5cogwisAug3zx688As8KptM6Wk/uw65e/Srj78Q==","signatures":[{"sig":"MEUCIQCgx95IHYNwUw10krkN/z7ykwWYE6i/SGqIeupVI+KtFQIgKrt1GdAtFbSxNBQJPrVhd0PnROqgSI0I6tocKSn+vL0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":183123},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"setupFiles":["<rootDir>/jest.setup.ts"],"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./pagination":{"types":"./dist/pagination/index.d.ts","default":"./dist/pagination/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"}},"gitHead":"17a423611084144a183ccb6ad6d3232c87d24c14","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","prepublishOnly":"npm test"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"pagination":["dist/pagination/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@nestjs/typeorm":"^11.0.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","nest-winston":"^1.10.2","winston-loki":"^6.1.3","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","@nestjs/typeorm":"^10.0.0 || ^11.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_2.1.0_1779017914626_0.9861188800347096","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"@russ-b/nestjs-common-tools","version":"2.1.1","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@2.1.1","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"519320aafe29f24201166db8904f583c3b66dbed","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-2.1.1.tgz","fileCount":233,"integrity":"sha512-mk60xrxZiCJcGHDSg33pUMgPg/wrFu6JHo2kzvB8PZE5TYdbHsCKq+QKB5T17P/K2YsMe8TYNYohPMsFn+ycbw==","signatures":[{"sig":"MEUCIQDc/wBO5hbdm8/jDY5lL/i2dgA/0WyPzU7RvZEBUWe30wIgR483fQl+e1C2Gt77fPCH5iz6GRayKZPdymkmzqMGpiU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":186735},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"setupFiles":["<rootDir>/jest.setup.ts"],"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./pagination":{"types":"./dist/pagination/index.d.ts","default":"./dist/pagination/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"}},"gitHead":"dedbba98412f6c29e395403496ba5e626ce19787","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","prepublishOnly":"npm test"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"pagination":["dist/pagination/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^9.18.0","ts-jest":"^29.2.5","prettier":"^3.4.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@nestjs/typeorm":"^11.0.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"typeorm":"^0.3.20","winston":"^3.17.0","nest-winston":"^1.10.2","winston-loki":"^6.1.3","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","@nestjs/typeorm":"^10.0.0 || ^11.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_2.1.1_1779020250875_0.7075226846193716","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@russ-b/nestjs-common-tools","version":"2.2.0","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@2.2.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"a06290793f705d09f0c719705e7485ffdea277fa","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-2.2.0.tgz","fileCount":314,"integrity":"sha512-I4foRbH+Hl/wjEWvlj5V8sFIcWhLDL/O1V49ttjPJ51JDESx52aIuPQZRf04CTMGvQzW7WFfaC+LDn/nBAaDmA==","signatures":[{"sig":"MEYCIQDR7FfRHg3U4lFnRb1PElvIk1F0gubnTZ+GNp25QfqixAIhAKICjFSyBoxqMkmzXf/VTZhX8TyOFhLy7syb6tRD3Q5t","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":275189},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"setupFiles":["<rootDir>/jest.setup.ts"],"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./zod":{"types":"./dist/zod/index.d.ts","default":"./dist/zod/index.js"},"./errors":{"types":"./dist/errors/index.d.ts","default":"./dist/errors/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./pagination":{"types":"./dist/pagination/index.d.ts","default":"./dist/pagination/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./logger/pino":{"types":"./dist/logger/pino/index.d.ts","default":"./dist/logger/pino/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./modules/outbox":{"types":"./dist/modules/outbox/index.d.ts","default":"./dist/modules/outbox/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"}},"gitHead":"c3cd056ae1c80260974adfea665ba5f4aae52f34","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","prepublishOnly":"npm test"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"zod":["dist/zod/index.d.ts"],"errors":["dist/errors/index.d.ts"],"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"pagination":["dist/pagination/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"logger/pino":["dist/logger/pino/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"modules/outbox":["dist/modules/outbox/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.0.0","jest":"^29.7.0","pino":"^10.3.1","eslint":"^9.18.0","fastify":"^5.8.5","ts-jest":"^29.2.5","prettier":"^3.4.2","pino-http":"^11.0.0","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","nestjs-pino":"^4.6.1","pino-pretty":"^13.1.3","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@nestjs/typeorm":"^11.0.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"zod":"^3.0.0 || ^4.0.0","pino":"^10.3.1","fastify":"^4.0.0 || ^5.0.0","typeorm":"^0.3.20","winston":"^3.17.0","pino-http":"^11.0.0","nestjs-pino":"^4.6.1","pino-pretty":"^13.1.3","nest-winston":"^1.10.2","winston-loki":"^6.1.3","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","@nestjs/typeorm":"^10.0.0 || ^11.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"peerDependenciesMeta":{"zod":{"optional":true},"pino":{"optional":true},"fastify":{"optional":true},"pino-http":{"optional":true},"nestjs-pino":{"optional":true},"pino-pretty":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_2.2.0_1779467652214_0.852960210472403","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@russ-b/nestjs-common-tools","version":"2.3.0","keywords":["nestjs","typeorm","database","tools"],"author":"RuSS-B","license":"MIT","_id":"@russ-b/nestjs-common-tools@2.3.0","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"dist":{"shasum":"c29d2436277d4816fa22e2e960bfadb1b7da52ee","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-2.3.0.tgz","fileCount":314,"integrity":"sha512-y8Y1yIaswSNdS7DpljK6VXEdyyoIb43oRLkF2KwnPAECfm9z81e04qYNVu+aFdNXFoI/3Z/n26uAlfAAWBeJkQ==","signatures":[{"sig":"MEUCIAETxYulXkyuJuMDczY7nca8VZhREOx8DzwRkLMx9YhYAiEAtW0QVqyK4G9r0c7C1CJwNFRpsRSTgIEVpqgwndJnnDU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":282452},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"setupFiles":["<rootDir>/jest.setup.ts"],"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./zod":{"types":"./dist/zod/index.d.ts","default":"./dist/zod/index.js"},"./errors":{"types":"./dist/errors/index.d.ts","default":"./dist/errors/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./pagination":{"types":"./dist/pagination/index.d.ts","default":"./dist/pagination/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./logger/pino":{"types":"./dist/logger/pino/index.d.ts","default":"./dist/logger/pino/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./modules/outbox":{"types":"./dist/modules/outbox/index.d.ts","default":"./dist/modules/outbox/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"}},"scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\""},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"zod":["dist/zod/index.d.ts"],"errors":["dist/errors/index.d.ts"],"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"pagination":["dist/pagination/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"logger/pino":["dist/logger/pino/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"modules/outbox":["dist/modules/outbox/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.0.0","jest":"^29.7.0","pino":"^10.3.1","eslint":"^9.18.0","fastify":"^5.8.5","ts-jest":"^29.2.5","prettier":"^3.4.2","pino-http":"^11.0.0","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","nestjs-pino":"^4.6.1","pino-pretty":"^13.1.3","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@nestjs/typeorm":"^11.0.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"zod":"^3.0.0 || ^4.0.0","pino":"^10.3.1","fastify":"^4.0.0 || ^5.0.0","typeorm":"^0.3.20","winston":"^3.17.0","pino-http":"^11.0.0","nestjs-pino":"^4.6.1","pino-pretty":"^13.1.3","nest-winston":"^1.10.2","winston-loki":"^6.1.3","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","@nestjs/typeorm":"^10.0.0 || ^11.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"peerDependenciesMeta":{"zod":{"optional":true},"pino":{"optional":true},"fastify":{"optional":true},"pino-http":{"optional":true},"nestjs-pino":{"optional":true},"pino-pretty":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_2.3.0_1782839811574_0.4623935548858147","host":"s3://npm-registry-packages-npm-production"}},"2.3.1":{"name":"@russ-b/nestjs-common-tools","version":"2.3.1","keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","_id":"@russ-b/nestjs-common-tools@2.3.1","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"dist":{"shasum":"60146d6cfd1e4c23ff55378e99afe81cba5d1750","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-2.3.1.tgz","fileCount":314,"integrity":"sha512-sy8GFXBghD98KMBz0WJX7ttPKBxhVtLYLu/CmHU0yDHSekd27j8/YG46PS6HtfWC61ByHq96vHCQe5EKwKPmKw==","signatures":[{"sig":"MEYCIQCHfJ8PYMTYlpNE7xAu2Kb5/psUFfUS5xZNK7OGTqE9oQIhAIkJpHqFU3EcTh1jna5WtHGdX0+eLElEEAVQdUGchi5S","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":283430},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"setupFiles":["<rootDir>/jest.setup.ts"],"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./zod":{"types":"./dist/zod/index.d.ts","default":"./dist/zod/index.js"},"./errors":{"types":"./dist/errors/index.d.ts","default":"./dist/errors/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./pagination":{"types":"./dist/pagination/index.d.ts","default":"./dist/pagination/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./logger/pino":{"types":"./dist/logger/pino/index.d.ts","default":"./dist/logger/pino/index.js"},"./package.json":"./package.json","./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./modules/outbox":{"types":"./dist/modules/outbox/index.d.ts","default":"./dist/modules/outbox/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"}},"gitHead":"14721bf6be42e7b2b7c13edb594bf621bead61e2","scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","test":"jest","build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","prepublishOnly":"npm test"},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"repository":{"url":"git+https://github.com/RuSS-B/nestjs-common-tools.git","type":"git"},"_npmVersion":"11.10.0","description":"NestJS utility tools","directories":{},"_nodeVersion":"24.12.0","dependencies":{"uuid":"^11.0.5","class-validator":"^0.14.1","class-transformer":"^0.5.1"},"publishConfig":{"access":"public"},"typesVersions":{"*":{"zod":["dist/zod/index.d.ts"],"errors":["dist/errors/index.d.ts"],"logger":["dist/logger/index.d.ts"],"modules":["dist/modules/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"pagination":["dist/pagination/index.d.ts"],"validators":["dist/validators/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"logger/pino":["dist/logger/pino/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"modules/outbox":["dist/modules/outbox/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"zod":"^4.0.0","jest":"^29.7.0","pino":"^10.3.1","eslint":"^9.18.0","fastify":"^5.8.5","ts-jest":"^29.2.5","prettier":"^3.4.2","pino-http":"^11.0.0","@eslint/js":"^9.18.0","typescript":"^5.7.3","@types/jest":"^29.5.14","nestjs-pino":"^4.6.1","pino-pretty":"^13.1.3","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@nestjs/testing":"^11.0.7","@nestjs/typeorm":"^11.0.0","@eslint/eslintrc":"^3.2.0","typescript-eslint":"^8.20.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2"},"peerDependencies":{"zod":"^3.0.0 || ^4.0.0","pino":"^10.3.1","fastify":"^4.0.0 || ^5.0.0","typeorm":"^0.3.20","winston":"^3.17.0","pino-http":"^11.0.0","nestjs-pino":"^4.6.1","pino-pretty":"^13.1.3","nest-winston":"^1.10.2","winston-loki":"^6.1.3","@nestjs/common":"^10.0.0 || ^11.0.0","@nestjs/config":"^3.0.0 || ^4.0.0","@nestjs/typeorm":"^10.0.0 || ^11.0.0","winston-transport":"^4.9.0","@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0"},"peerDependenciesMeta":{"zod":{"optional":true},"pino":{"optional":true},"fastify":{"optional":true},"pino-http":{"optional":true},"nestjs-pino":{"optional":true},"pino-pretty":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/nestjs-common-tools_2.3.1_1783324713606_0.4627929698064013","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"@russ-b/nestjs-common-tools","version":"2.4.0","description":"NestJS utility tools","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"node -e \"const fs = require('fs'); fs.rmSync('dist', { recursive: true, force: true }); fs.rmSync('tsconfig.tsbuildinfo', { force: true });\" && tsc","test":"jest","prepublishOnly":"npm test","prepare":"npm run build","lint":"eslint \"{src,apps,libs,test}/**/*.ts\"","format":"prettier --write \"src/**/*.ts\""},"keywords":["nestjs","typeorm","database","tools"],"author":{"name":"RuSS-B"},"license":"MIT","engines":{"node":">=24.0.0"},"repository":{"type":"git","url":"git+https://github.com/RuSS-B/nestjs-common-tools.git"},"publishConfig":{"access":"public"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./pagination":{"types":"./dist/pagination/index.d.ts","default":"./dist/pagination/index.js"},"./common/util":{"types":"./dist/common/util/index.d.ts","default":"./dist/common/util/index.js"},"./common/filters":{"types":"./dist/common/filters/index.d.ts","default":"./dist/common/filters/index.js"},"./class-transformer":{"types":"./dist/class-transformer/index.d.ts","default":"./dist/class-transformer/index.js"},"./validators":{"types":"./dist/validators/index.d.ts","default":"./dist/validators/index.js"},"./typeorm":{"types":"./dist/typeorm/index.d.ts","default":"./dist/typeorm/index.js"},"./modules":{"types":"./dist/modules/index.d.ts","default":"./dist/modules/index.js"},"./modules/outbox":{"types":"./dist/modules/outbox/index.d.ts","default":"./dist/modules/outbox/index.js"},"./logger":{"types":"./dist/logger/index.d.ts","default":"./dist/logger/index.js"},"./logger/pino":{"types":"./dist/logger/pino/index.d.ts","default":"./dist/logger/pino/index.js"},"./axios":{"types":"./dist/axios/index.d.ts","default":"./dist/axios/index.js"},"./errors":{"types":"./dist/errors/index.d.ts","default":"./dist/errors/index.js"},"./zod":{"types":"./dist/zod/index.d.ts","default":"./dist/zod/index.js"},"./package.json":"./package.json"},"typesVersions":{"*":{"pagination":["dist/pagination/index.d.ts"],"validators":["dist/validators/index.d.ts"],"typeorm":["dist/typeorm/index.d.ts"],"common/util":["dist/common/util/index.d.ts"],"common/filters":["dist/common/filters/index.d.ts"],"class-transformer":["dist/class-transformer/index.d.ts"],"modules":["dist/modules/index.d.ts"],"modules/outbox":["dist/modules/outbox/index.d.ts"],"logger":["dist/logger/index.d.ts"],"logger/pino":["dist/logger/pino/index.d.ts"],"axios":["dist/axios/index.d.ts"],"errors":["dist/errors/index.d.ts"],"zod":["dist/zod/index.d.ts"]}},"dependencies":{"class-transformer":"^0.5.1","class-validator":"^0.14.1","uuid":"^11.0.5"},"peerDependencies":{"@aws-sdk/client-s3":"^3.0.0","@aws-sdk/lib-storage":"^3.0.0","@aws-sdk/s3-request-presigner":"^3.1019.0","@nestjs/common":"^10.0.0 || ^11.0.0 || ^12.0.0","@nestjs/config":"^3.0.0 || ^4.0.0 || ^12.0.0","@nestjs/typeorm":"^10.0.0 || ^11.0.0 || ^12.0.0","axios":"^1.0.0","fastify":"^4.0.0 || ^5.0.0","nest-winston":"^1.10.2","nestjs-pino":"^4.6.1","pino":"^10.3.1","pino-http":"^11.0.0","pino-pretty":"^13.1.3","typeorm":"^0.3.20","winston":"^3.17.0","winston-loki":"^6.1.3","winston-transport":"^4.9.0","zod":"^4.0.0"},"peerDependenciesMeta":{"axios":{"optional":true},"fastify":{"optional":true},"nestjs-pino":{"optional":true},"pino":{"optional":true},"pino-http":{"optional":true},"pino-pretty":{"optional":true},"zod":{"optional":true}},"devDependencies":{"@eslint/eslintrc":"^3.2.0","@eslint/js":"^9.18.0","@nestjs/testing":"^11.0.7","@nestjs/typeorm":"^11.0.0","@types/express":"^5.0.0","@types/jest":"^29.5.14","axios":"^1.0.0","eslint":"^9.18.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2","fastify":"^5.8.5","jest":"^29.7.0","nestjs-pino":"^4.6.1","pino":"^10.3.1","pino-http":"^11.0.0","pino-pretty":"^13.1.3","prettier":"^3.4.2","ts-jest":"^29.2.5","tsconfig-paths":"^4.2.0","typescript":"^5.7.3","typescript-eslint":"^8.20.0","zod":"^4.0.0"},"jest":{"moduleFileExtensions":["js","json","ts"],"rootDir":"src","setupFiles":["<rootDir>/jest.setup.ts"],"testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"collectCoverageFrom":["**/*.(t|j)s"],"coverageDirectory":"../coverage","testEnvironment":"node"},"gitHead":"a2c74728ccda76198a302805deb01e49af884657","_id":"@russ-b/nestjs-common-tools@2.4.0","bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-OEG19+wWmjDxWjWGqVaBb9idaTjC7eplLHn2NsMo/N4KLpTTofENLJklHlxvfz4gdNC/8RvqGjY0cX6Y8J1RGA==","shasum":"b310919eb65ba6ece64e6369ac9276ae75de53dd","tarball":"https://registry.npmjs.org/@russ-b/nestjs-common-tools/-/nestjs-common-tools-2.4.0.tgz","fileCount":320,"unpackedSize":287608,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCaEMxINlY1oOaagnVs5lODMV/DxJXkqF6/JQY5z0+g1gIgWp63PWXKGwJ7jQgLsBdb2mxQOqnacawx8ub7iH0VnnY="}]},"_npmUser":{"name":"russ_developer","email":"russ.developer@gmail.com"},"directories":{},"maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/nestjs-common-tools_2.4.0_1788179553022_0.8406014006560052"},"_hasShrinkwrap":false}},"time":{"created":"2025-02-01T07:00:11.808Z","modified":"2026-08-31T12:32:33.374Z","1.0.0":"2025-02-01T07:00:12.102Z","1.1.2":"2025-02-04T07:53:52.238Z","1.1.3":"2025-02-04T12:01:10.531Z","1.1.4":"2025-02-04T12:18:47.370Z","1.1.5":"2025-02-04T12:25:22.678Z","1.1.6":"2025-02-04T12:29:03.848Z","1.1.7":"2025-02-04T12:31:16.553Z","1.1.8":"2025-02-04T12:32:21.659Z","1.1.9":"2025-02-04T13:47:22.267Z","1.1.10":"2025-02-04T13:50:31.641Z","1.1.11":"2025-02-04T18:15:00.452Z","1.1.12":"2025-02-04T20:16:12.941Z","1.1.13":"2025-02-04T20:29:22.625Z","1.1.14":"2025-02-04T20:39:18.810Z","1.1.15":"2025-02-04T20:43:04.267Z","1.1.16":"2025-02-04T20:48:10.002Z","1.1.17":"2025-02-04T20:49:20.770Z","1.1.18":"2025-02-04T20:54:35.864Z","1.1.19":"2025-02-04T21:06:32.146Z","1.1.20":"2025-02-04T21:59:10.741Z","1.1.21":"2025-02-05T07:30:49.396Z","1.1.22":"2025-02-05T22:20:52.260Z","1.1.23":"2025-02-05T22:21:18.093Z","1.1.24":"2025-02-07T12:24:02.797Z","1.1.25":"2025-02-07T14:42:28.256Z","1.3.0":"2025-03-05T15:40:31.589Z","1.3.2":"2025-03-05T17:18:43.678Z","1.3.3":"2025-03-06T13:12:49.282Z","1.3.4":"2025-03-06T13:21:55.520Z","1.3.5":"2025-03-06T13:25:42.914Z","1.4.0":"2025-03-12T10:57:03.408Z","1.4.1":"2025-03-13T18:54:23.894Z","1.5.0":"2025-04-22T17:10:32.255Z","1.5.1":"2025-04-23T08:46:54.540Z","1.5.2":"2025-04-23T08:50:39.253Z","1.5.3":"2025-05-09T20:25:14.610Z","1.6.0":"2025-05-10T08:47:26.346Z","1.7.0":"2025-06-30T12:13:02.523Z","1.7.1":"2025-06-30T12:27:14.404Z","1.7.2":"2025-06-30T15:54:51.502Z","1.8.0":"2025-08-02T20:24:00.191Z","1.9.0":"2025-08-05T20:01:18.651Z","1.9.1":"2025-08-05T20:26:48.064Z","1.9.2":"2025-08-11T18:18:38.985Z","1.9.3":"2025-08-23T13:25:13.888Z","1.10.0":"2025-11-09T11:37:40.524Z","1.10.1":"2025-11-09T14:34:37.810Z","1.10.2":"2025-11-09T14:38:14.195Z","1.10.3":"2025-11-10T14:21:37.158Z","1.11.0":"2026-02-17T20:48:52.393Z","1.11.1":"2026-02-17T20:50:43.295Z","1.12.0":"2026-03-28T16:59:10.332Z","1.13.0":"2026-03-29T10:59:26.682Z","1.13.1":"2026-03-29T11:08:47.722Z","1.14.0":"2026-03-29T19:15:15.433Z","1.14.1":"2026-03-29T19:35:00.480Z","1.14.2":"2026-03-29T20:47:32.866Z","1.14.3":"2026-03-29T21:32:26.207Z","1.14.4":"2026-04-03T20:21:12.236Z","1.14.5":"2026-04-03T20:28:27.638Z","2.0.0":"2026-04-17T09:22:05.238Z","2.0.1":"2026-04-17T09:33:58.872Z","2.0.2":"2026-04-17T09:54:56.274Z","2.1.0":"2026-05-17T11:38:34.772Z","2.1.1":"2026-05-17T12:17:31.098Z","2.2.0":"2026-05-22T16:34:12.418Z","2.3.0":"2026-06-30T17:16:51.717Z","2.3.1":"2026-07-06T07:58:33.741Z","2.4.0":"2026-08-31T12:32:33.175Z"},"bugs":{"url":"https://github.com/RuSS-B/nestjs-common-tools/issues"},"author":{"name":"RuSS-B"},"license":"MIT","homepage":"https://github.com/RuSS-B/nestjs-common-tools#readme","keywords":["nestjs","typeorm","database","tools"],"repository":{"type":"git","url":"git+https://github.com/RuSS-B/nestjs-common-tools.git"},"description":"NestJS utility tools","maintainers":[{"name":"russ_developer","email":"russ.developer@gmail.com"}],"readme":"# nestjs-common-tools\n\nA small toolbox for NestJS with helpers that often come up in day-to-day development.\n\nThis package grew out of the same recurring problem across multiple projects: there are many standard pieces that are useful in real NestJS applications, but are not available out of the box. Instead of copying those building blocks from project to project, this library collects them in one place to reduce boilerplate and help avoid repeating yourself.\n\n## Installation\n\nInstall the package:\n\n```bash\nnpm install @russ-b/nestjs-common-tools\n```\n\nDepending on which features you use, make sure the relevant peer dependencies are also installed in your project.\n\nFor TypeORM helpers that integrate with Nest's `TypeOrmModule`, install `@nestjs/typeorm` together with TypeORM and your database driver:\n\n```bash\nnpm install @nestjs/typeorm typeorm pg\n# or, for MySQL\nnpm install @nestjs/typeorm typeorm mysql2\n```\n\n## Public entrypoints\n\nThis package uses subpath exports for most features.\n\n| Import path | What it contains |\n|-------------|------------------|\n| `@russ-b/nestjs-common-tools` | root exports such as `services` |\n| `@russ-b/nestjs-common-tools/class-transformer` | reusable `class-transformer` decorators and helpers |\n| `@russ-b/nestjs-common-tools/modules` | NestJS modules such as `S3Module` |\n| `@russ-b/nestjs-common-tools/modules/outbox` | PostgreSQL TypeORM outbox module |\n| `@russ-b/nestjs-common-tools/validators` | validation decorators and constraints |\n| `@russ-b/nestjs-common-tools/typeorm` | TypeORM filters, helpers, transformers, and types |\n| `@russ-b/nestjs-common-tools/logger` | logger builder and logger-related interfaces/types |\n| `@russ-b/nestjs-common-tools/logger/pino` | config-first `nestjs-pino` module options helper |\n| `@russ-b/nestjs-common-tools/axios` | Axios error logging helpers |\n| `@russ-b/nestjs-common-tools/errors` | API error response helpers and validation exception factories |\n| `@russ-b/nestjs-common-tools/zod` | Zod exception filters for NestJS HTTP apps |\n| `@russ-b/nestjs-common-tools/pagination` | pagination DTOs, response builders, and errors |\n| `@russ-b/nestjs-common-tools/common/util` | generic utility helpers |\n| `@russ-b/nestjs-common-tools/common/filters` | shared filter exports |\n\n## Pino logger\n\nImport Pino helpers from `@russ-b/nestjs-common-tools/logger/pino`.\n\nInstall the required peer dependencies in applications that use this entrypoint:\n\n```bash\nnpm install nestjs-pino pino pino-http\n```\n\nInstall `pino-pretty` as well if you enable pretty logs:\n\n```bash\nnpm install pino-pretty\n```\n\n`createPinoLoggerModuleOptions` does not read from `process.env`. Pass application config explicitly, for example from `ConfigService` or your own validated config object.\n\n```typescript\nimport { LoggerModule } from 'nestjs-pino';\nimport { createPinoLoggerModuleOptions } from '@russ-b/nestjs-common-tools/logger/pino';\n\n@Module({\n  imports: [\n    LoggerModule.forRoot(\n      createPinoLoggerModuleOptions({\n        appName: 'billing-api',\n        level: 'info',\n        pretty: false,\n        logHttpRequests: true,\n        version: '1.2.3',\n        environment: 'production',\n      }),\n    ),\n  ],\n})\nexport class AppModule {}\n```\n\n## HTTP request failure logging\n\nImport Axios helpers from `@russ-b/nestjs-common-tools/axios`.\n\nInstall Axios when using this entrypoint:\n\n```bash\nnpm install axios\n```\n\nUse `logHttpRequestFailure` to write structured Axios failure details while\npreserving a consistent fallback for other error values:\n\n```typescript\nimport { Logger } from '@nestjs/common';\nimport { logHttpRequestFailure } from '@russ-b/nestjs-common-tools/axios';\n\nconst logger = new Logger('PaymentClient');\n\ntry {\n  // Axios request\n} catch (error: unknown) {\n  logHttpRequestFailure(logger, error, 'Payment request failed', {\n    paymentId,\n  });\n}\n```\n\n## Error Responses\n\nImport error helpers from `@russ-b/nestjs-common-tools/errors`.\n\nUse `classValidatorExceptionFactory` with Nest's `ValidationPipe` to return the shared API error response shape for `class-validator` errors:\n\n```typescript\nimport { ValidationPipe } from '@nestjs/common';\nimport { classValidatorExceptionFactory } from '@russ-b/nestjs-common-tools/errors';\n\napp.useGlobalPipes(\n  new ValidationPipe({\n    exceptionFactory: classValidatorExceptionFactory,\n  }),\n);\n```\n\nThe shared validation response uses `ApiErrorCode.VALIDATION_FAILED`; root-level errors use `'_root'` as the field name.\n\n## Zod Exception Filters\n\nImport Zod filters from `@russ-b/nestjs-common-tools/zod`.\n\nInstall `zod` in applications that use this entrypoint:\n\n```bash\nnpm install zod\n```\n\nUse the filter that matches your NestJS HTTP adapter:\n\n```typescript\nimport { Module } from '@nestjs/common';\nimport { APP_FILTER } from '@nestjs/core';\nimport { ZodExpressExceptionFilter } from '@russ-b/nestjs-common-tools/zod';\n\n@Module({\n  providers: [\n    {\n      provide: APP_FILTER,\n      useFactory: () => new ZodExpressExceptionFilter(),\n    },\n  ],\n})\nexport class AppModule {}\n```\n\nFor Fastify apps, use `ZodFastifyExceptionFilter` instead. Both filters return a `400` response with a `Validation failed` message and mapped Zod issue details.\n\n## Pagination\n\nImport pagination helpers from `@russ-b/nestjs-common-tools/pagination`.\n\nThe pagination module includes:\n\n- request DTOs for `page` and `perPage`\n- a sortable request DTO with `sortOrder`\n- response builders for the standard and legacy response shapes\n- a transport-agnostic out-of-range error\n- Swagger schema helpers\n\n### Request DTOs\n\n`PaginatedRequestDto` gives you validated pagination query params with sensible defaults:\n\n- `page` defaults to `1`\n- `perPage` defaults to `50`\n- `perPage` is limited to `1000`\n- string query values such as `?page=2&perPage=25` are coerced to numbers\n\n```typescript\nimport { Controller, Get, Query } from '@nestjs/common';\nimport { PaginatedRequestDto } from '@russ-b/nestjs-common-tools/pagination';\n\n@Controller('users')\nexport class UsersController {\n  @Get()\n  findAll(@Query() query: PaginatedRequestDto) {\n    return {\n      page: query.page,\n      perPage: query.perPage,\n      offset: query.offset,\n      params: query.getParams(),\n    };\n  }\n}\n```\n\nIf you also want a sort direction, use `SortablePaginatedRequestDto`:\n\n```typescript\nimport { SortablePaginatedRequestDto } from '@russ-b/nestjs-common-tools/pagination';\n\nexport class UserListQueryDto extends SortablePaginatedRequestDto {}\n```\n\n`sortOrder` accepts `asc` or `desc`.\n\n### Building Responses\n\nUse `Pagination.createResponse(...)` for the standard contract with `total` and `pages`.\n\n```typescript\nimport { Pagination, PaginatedRequestDto } from '@russ-b/nestjs-common-tools/pagination';\n\nasync findAll(query: PaginatedRequestDto) {\n  const [users, total] = await this.userRepository.findAndCount({\n    skip: query.offset,\n    take: query.perPage,\n  });\n\n  return Pagination.createResponse(query, [users, total]);\n}\n```\n\nThis returns:\n\n```typescript\n{\n  data: users,\n  pagination: {\n    total: 125,\n    pages: 13,\n    page: 1,\n    perPage: 10,\n  },\n}\n```\n\nIf you still need the old contract with `totalItems` and `totalPages`, use `Pagination.createLegacyResponse(...)`.\n\n### Out-Of-Range Errors\n\n`Pagination.createResponse(...)` and `Pagination.createLegacyResponse(...)` throw a transport-agnostic pagination error when the requested page is out of range.\n\n```typescript\nimport {\n  PAGINATION_OUT_OF_RANGE,\n  Pagination,\n  PaginationOutOfRangeError,\n} from '@russ-b/nestjs-common-tools/pagination';\n\ntry {\n  return Pagination.createResponse(query, [users, total]);\n} catch (error) {\n  if (\n    error instanceof PaginationOutOfRangeError &&\n    error.code === PAGINATION_OUT_OF_RANGE\n  ) {\n    // map to the transport or framework you use\n  }\n\n  throw error;\n}\n```\n\n## Pagination And Swagger\n\nGeneric DTOs such as `PaginationResponseDto<T>` are useful at runtime, but Swagger usually does not infer the concrete `T` item type automatically.\n\nFor Swagger/OpenAPI responses, this package exposes explicit schema helpers from `@russ-b/nestjs-common-tools/pagination`.\n\n```typescript\nimport { ApiExtraModels, ApiOkResponse, getSchemaPath } from '@nestjs/swagger';\nimport {\n  createPaginatedResponseSchema,\n  PaginationResponseDto,\n} from '@russ-b/nestjs-common-tools/pagination';\n\n@ApiExtraModels(UserDto, PaginationResponseDto)\n@ApiOkResponse({\n  schema: createPaginatedResponseSchema({\n    $ref: getSchemaPath(UserDto),\n  }),\n})\nfindAll() {\n  // ...\n}\n```\n\nIf you still return the legacy pagination shape, use `createLegacyPaginatedResponseSchema(...)` instead.\n\n`PaginationResponseDto` is the standard response DTO with `total` and `pages`.\n`LegacyPaginatedResponseDto` preserves the old `totalItems` and `totalPages` shape.\nThe older `PaginatedResponseDto` name remains only as a deprecated legacy alias.\n\n## Class Transformer Helpers\n\nThis package also exposes small reusable decorators for `class-transformer`.\n\n### `ToStringArray`\n\n`ToStringArray()` is useful for DTO query fields that may arrive as a comma-separated string such as `\"cars, bikes, boats\"` or as an array.\n\n```typescript\nimport { ToStringArray } from '@russ-b/nestjs-common-tools/class-transformer';\n\nexport class SearchDto {\n  @ToStringArray()\n  tags?: string[];\n}\n```\n\nIt will:\n\n- split string values by comma\n- trim extra spaces around items\n- remove empty values\n- normalize a string like `'cars, bikes, boats'` into `['cars', 'bikes', 'boats']`\n\n### `ToBooleanFromString`\n\n`ToBooleanFromString()` is useful for DTO fields that may arrive as `'true'` or `'false'` strings and should become real booleans.\n\n```typescript\nimport { ToBooleanFromString } from '@russ-b/nestjs-common-tools/class-transformer';\n\nexport class SearchDto {\n  @ToBooleanFromString()\n  archived?: boolean;\n}\n```\n\nIt will:\n\n- convert `'true'` to `true`\n- convert `'false'` to `false`\n- trim extra spaces and ignore case\n- leave unsupported values unchanged\n\n### `ToOptionalNumber`\n\n`ToOptionalNumber()` is useful for DTO fields that may arrive as strings such as `'42'`, blank strings, or already parsed numbers.\n\n```typescript\nimport { ToOptionalNumber } from '@russ-b/nestjs-common-tools/class-transformer';\n\nexport class SearchDto {\n  @ToOptionalNumber()\n  page?: number;\n}\n```\n\nIt will:\n\n- convert numeric strings to numbers\n- trim extra spaces before parsing\n- convert empty or blank strings to `undefined`\n- keep `null` as `null`\n- keep `undefined` as `undefined`\n- return `NaN` for unsupported non-string values\n\n## S3 Module\n\n`S3Module` is a small NestJS wrapper around the AWS SDK v3 S3 client. It gives you a reusable `S3Service` with a simple Nest-friendly setup for uploads, downloads, deletes, and signed URLs.\n\n### Install S3 peer dependencies\n\nIf you want to use the S3 module, install the required AWS peer dependencies in your application:\n\n```bash\nnpm install @aws-sdk/client-s3 @aws-sdk/lib-storage @aws-sdk/s3-request-presigner\n```\n\n### Register the module\n\nImport the module from `@russ-b/nestjs-common-tools/modules` and configure it with `forRootAsync`.\n\n```typescript\n// app.module.ts\nimport { Module } from '@nestjs/common';\nimport { ConfigModule, ConfigService } from '@nestjs/config';\nimport { S3Module } from '@russ-b/nestjs-common-tools/modules';\n\n@Module({\n  imports: [\n    ConfigModule.forRoot({\n      isGlobal: true,\n    }),\n    S3Module.forRootAsync({\n      global: true,\n      imports: [ConfigModule],\n      inject: [ConfigService],\n      useFactory: (config: ConfigService) => ({\n        region: config.get<string>('AWS_REGION') ?? 'eu-central-1',\n        defaultBucket: config.get<string>('S3_BUCKET'),\n        endpoint: config.get<string>('S3_ENDPOINT'),\n        logger: config.get<string>('S3_DEBUG') === 'true',\n      }),\n    }),\n  ],\n})\nexport class AppModule {}\n```\n\n### Credentials\n\nThe module does not accept `accessKeyId` or `secretAccessKey` directly. It relies on the AWS SDK default credential chain instead, which means credentials can come from:\n\n- `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`\n- local AWS profiles and shared config\n- IAM roles in AWS environments\n\nExample environment variables:\n\n```env\nAWS_REGION=eu-central-1\nAWS_ACCESS_KEY_ID=your-access-key\nAWS_SECRET_ACCESS_KEY=your-secret-key\nS3_BUCKET=my-app-bucket\n```\n\nThe AWS SDK reads values from process environment, not directly from a `.env` file, so make sure your application loads those variables before creating the client.\n\n`endpoint` is optional and is mostly useful for S3-compatible providers such as MinIO or LocalStack.\n\n`forcePathStyle` defaults to `true` in this module. That is usually convenient for MinIO and LocalStack. If you want standard AWS virtual-hosted URLs, set `forcePathStyle: false`.\n\n`defaultBucket` is the module-level fallback bucket. You can still override it per method call with `options.bucket`.\n\n### Optional logging\n\nBy default, the module stays silent and does not write S3 operation logs.\n\nIf you want extra visibility while testing connectivity with S3 or MinIO, set `logger: true` in the module options. That enables the standard Nest logger for this service.\n\n```typescript\nS3Module.forRootAsync({\n  useFactory: () => ({\n    defaultBucket: 'my-app-bucket',\n    endpoint: 'http://localhost:9000',\n    forcePathStyle: true,\n    logger: true,\n  }),\n});\n```\n\nYou can also pass your own Nest-compatible logger object if you want to redirect those logs elsewhere.\n\n### Inject and use the service\n\n```typescript\n// files.service.ts\nimport { Injectable } from '@nestjs/common';\nimport { Readable } from 'stream';\nimport { S3Service } from '@russ-b/nestjs-common-tools/modules';\n\n@Injectable()\nexport class FilesService {\n  constructor(private readonly s3Service: S3Service) {}\n\n  async putAvatar(key: string, file: Buffer) {\n    return this.s3Service.putObject(key, file, {\n      contentType: 'image/png',\n      cacheControl: 'public, max-age=31536000, immutable',\n      metadata: {\n        source: 'avatar-service',\n      },\n    });\n  }\n\n  async uploadLargeFile(key: string, stream: Readable) {\n    return this.s3Service.upload(key, stream, {\n      contentType: 'application/pdf',\n      metadata: {\n        source: 'document-service',\n      },\n    });\n  }\n\n  async getAvatar(key: string) {\n    const object = await this.s3Service.getObject(key);\n\n    return {\n      stream: object.body,\n      contentType: object.contentType,\n      cacheControl: object.cacheControl,\n      metadata: object.metadata,\n    };\n  }\n\n  async deleteAvatar(key: string) {\n    return this.s3Service.deleteObject(key);\n  }\n\n  async duplicateAvatar(sourceKey: string, destinationKey: string) {\n    return this.s3Service.copyObject(sourceKey, destinationKey);\n  }\n\n  async listAvatars() {\n    return this.s3Service.listObjects({\n      prefix: 'avatars/',\n      maxKeys: 50,\n    });\n  }\n}\n```\n\n### Signed URLs\n\nUse `getSignedUrl` when the client should upload or download directly from S3.\n\n```typescript\n// files.service.ts\nasync getAvatarUploadUrl(key: string) {\n  return this.s3Service.getSignedUrl(key, {\n    operation: 'putObject',\n    expiresIn: 300,\n    contentType: 'image/png',\n    cacheControl: 'public, max-age=31536000, immutable',\n    metadata: {\n      source: 'avatar-upload',\n    },\n  });\n}\n\nasync getAvatarDownloadUrl(key: string) {\n  return this.s3Service.getSignedUrl(key, {\n    operation: 'getObject',\n    expiresIn: 300,\n  });\n}\n```\n\nWhen generating a signed `putObject` URL, make sure the client sends the same headers you used during signing, especially `Content-Type` and any custom metadata headers.\n\n### Available methods\n\n| Method | Description |\n|--------|-------------|\n| `putObject(key, body, options)` | Simple upload using `PutObjectCommand` |\n| `upload(key, body, options)` | Managed upload using `@aws-sdk/lib-storage`, useful for larger or streaming payloads |\n| `getObject(key, options)` | Returns the readable stream together with object metadata |\n| `deleteObject(key, options)` | Deletes an object from the configured bucket |\n| `copyObject(sourceKey, destinationKey, options)` | Copies an object, optionally across buckets |\n| `listObjects(options)` | Lists objects with `prefix`, `maxKeys`, `continuationToken`, and `delimiter` support |\n| `getSignedUrl(key, options)` | Creates a presigned URL for `getObject` or `putObject` |\n\n`uploadObject` is still available as a compatibility alias, but `putObject` is the preferred method name going forward.\n\n### Inject the raw S3 client\n\nIf you need lower-level S3 commands that are not covered by `S3Service`, you can inject the configured AWS client directly.\n\n```typescript\nimport { Inject, Injectable } from '@nestjs/common';\nimport {\n  DeleteObjectsCommand,\n  HeadObjectCommand,\n  S3Client,\n} from '@aws-sdk/client-s3';\nimport { S3_CLIENT } from '@russ-b/nestjs-common-tools/modules';\n\n@Injectable()\nexport class CarPhotoService {\n  constructor(\n    @Inject(S3_CLIENT) private readonly s3Client: S3Client,\n  ) {}\n\n  async getPhotoMetadata(key: string) {\n    return this.s3Client.send(\n      new HeadObjectCommand({\n        Bucket: 'car-photos',\n        Key: key,\n      }),\n    );\n  }\n\n  async deleteMany(keys: string[]) {\n    return this.s3Client.send(\n      new DeleteObjectsCommand({\n        Bucket: 'car-photos',\n        Delete: {\n          Objects: keys.map((key) => ({ Key: key })),\n        },\n      }),\n    );\n  }\n}\n```\n\n## Outbox Module\n\nImport outbox helpers from `@russ-b/nestjs-common-tools/modules/outbox`.\n\n`OutboxModule` is a PostgreSQL TypeORM implementation of the outbox pattern. It stores events in the database, lets workers claim pending events with `FOR UPDATE SKIP LOCKED`, tracks stale processing attempts, and retries failed handlers.\n\n### Register the module\n\n```typescript\nimport { Module } from '@nestjs/common';\nimport { TypeOrmModule } from '@nestjs/typeorm';\nimport { OutboxModule } from '@russ-b/nestjs-common-tools/modules/outbox';\n\n@Module({\n  imports: [\n    TypeOrmModule.forRoot({\n      // your TypeORM options\n    }),\n    OutboxModule.forRoot({\n      operationalPolicy: {\n        claimBatchSize: 100,\n        maxRetries: 5,\n        staleProcessingMinutes: 5,\n        maxConcurrentEvents: 10,\n      },\n    }),\n  ],\n})\nexport class AppModule {}\n```\n\nIf your app has multiple TypeORM data sources, pass the registered data source name:\n\n```typescript\nOutboxModule.forRoot({\n  dataSource: 'primary',\n});\n```\n\n### Create events\n\nCreate outbox events inside the same transaction as the domain change whenever possible.\n\n```typescript\nawait dataSource.transaction(async (manager) => {\n  await manager.save(order);\n\n  await outboxService.createEvent(\n    'order.created',\n    { orderId: order.id },\n    { manager },\n  );\n});\n```\n\nCreate delayed events with `delayMs` or `nextTryAt` when processing must not start before a known time. Pass `maxRetries` to override the global retry limit for a specific event:\n\n```typescript\nawait outboxService.createEvent(\n  'order.reminder',\n  { orderId: order.id },\n  {\n    delayMs: 5_000,\n    maxRetries: 3,\n  },\n);\n```\n\n### Process events\n\nExtend `BaseWorker` and implement event selection plus handling.\n\n```typescript\nimport { Injectable } from '@nestjs/common';\nimport {\n  BaseWorker,\n  OutboxEvent,\n  OutboxService,\n} from '@russ-b/nestjs-common-tools/modules/outbox';\n\n@Injectable()\nexport class OrderCreatedWorker extends BaseWorker {\n  constructor(outboxService: OutboxService) {\n    super(outboxService);\n  }\n\n  getEvents(): Promise<OutboxEvent[]> {\n    return this.outboxService.claimPendingEvents('order.created');\n  }\n\n  async handle(event: OutboxEvent): Promise<void> {\n    // Send email, publish message, call another service, etc.\n  }\n}\n```\n\nOutbox delivery is at-least-once. Handlers must be idempotent, especially when they call external services or publish messages.\n\n### Delay retries\n\nFailed events are retried immediately by default. Override `getNextTryAt()` in a worker to delay the next attempt. While `nextTryAt` is in the future, `claimById()`, `claimPendingEvents()`, and `claimPendingEventsByTypes()` skip the pending event.\n\n```typescript\n@Injectable()\nexport class OrderCreatedWorker extends BaseWorker {\n  constructor(outboxService: OutboxService) {\n    super(outboxService);\n  }\n\n  getEvents(): Promise<OutboxEvent[]> {\n    return this.outboxService.claimPendingEvents('order.created');\n  }\n\n  async handle(event: OutboxEvent): Promise<void> {\n    // Send email, publish message, call another service, etc.\n  }\n\n  protected getNextTryAt(\n    event: OutboxEvent,\n    error: unknown,\n    nextRetryCount: number,\n  ): Date | null {\n    return new Date(Date.now() + nextRetryCount * 60_000);\n  }\n}\n```\n\n### Cleanup processed events\n\n`OutboxCleanupWorker` deletes processed events older than the configured `processedEventRetentionHours`. The library does not schedule it by itself, so wire it to your app scheduler. If retention should come from environment or config, pass it through `OutboxModule.forRootAsync`.\n\n```typescript\nimport { Injectable } from '@nestjs/common';\nimport { Cron } from '@nestjs/schedule';\nimport { OutboxCleanupWorker } from '@russ-b/nestjs-common-tools/modules/outbox';\n\n@Injectable()\nexport class OutboxCleanupCron {\n  constructor(private readonly cleanupWorker: OutboxCleanupWorker) {}\n\n  @Cron('0 0 3 * * *')\n  cleanupProcessedEvents(): Promise<number> {\n    return this.cleanupWorker.cleanupProcessedEvents();\n  }\n}\n```\n\n### Operational policy\n\n`operationalPolicy` supports:\n\n| Option                         | Default   | Description                                                    |\n| ------------------------------ | --------- | -------------------------------------------------------------- |\n| `claimBatchSize`               | `100`     | Default number of events claimed per poll                      |\n| `maxRetries`                   | `5`       | Default retry limit when an event does not define its own `maxRetries` |\n| `staleProcessingMinutes`       | `5`       | Processing events older than this are reset to pending         |\n| `resetStaleProcessingEvents`   | `true`    | Enables stale processing reset in `BaseWorker`                 |\n| `maxConcurrentEvents`          | unlimited | Limits parallel handler execution inside one worker cycle      |\n| `processedEventRetentionHours` | `24`      | Default age used by `deleteProcessed()`                        |\n\nThe outbox entity uses PostgreSQL-specific column types and requires nullable `processing_started_at`, `next_try_at`, and `max_retries` columns for stale processing detection, delayed retries, and per-event retry limits.\n\n## Entity Validator\n\nA custom validator for NestJS that validates if an entity exists in the database using TypeORM.\n\n## Setup\n\n1. Register the validator and setup class-validator container in your application:\n\n```typescript\n// main.ts\nimport { NestFactory } from '@nestjs/core';\nimport { useContainer } from 'class-validator';\nimport { AppModule } from './app.module';\n\nasync function bootstrap() {\n  const app = await NestFactory.create(AppModule);\n  \n  useContainer(app.select(AppModule), { \n    fallbackOnErrors: true \n  });\n  \n  await app.listen(3000);\n}\n```\n\n2. Register the validator constraint in your `AppModule`:\n\n```typescript\n// app.module.ts\nimport { Module } from '@nestjs/common';\nimport { EntityConstraint } from '@russ-b/nestjs-common-tools/validators';\n\n@Module({\n  providers: [\n    EntityConstraint,\n    // other providers\n  ]\n})\nexport class AppModule {}\n```\n\n## Usage\n\n> Deprecated: `IsEntity` couples DTO validation to persistence/service concerns.\n> Keep entity existence checks in the service/application layer instead.\n\n```typescript\nimport { IsEntity } from '@russ-b/nestjs-common-tools/validators';\n\nexport class UserDto {\n  // Validate single entity\n  @IsEntity(User)\n  userId: string;\n\n  // Validate array of entities\n  @IsEntity(Role, { each: true })\n  roleIds: string[];\n\n  // Custom property validation\n  @IsEntity(User, { property: 'customId' })\n  userCustomId: string;\n\n  // Disable UUID validation\n  @IsEntity(User, { isUuid: false })\n  numericId: number;\n}\n```\n\n### Options\n\n| Option    | Type      | Default | Description                                  |\n|-----------|-----------|---------|----------------------------------------------|\n| isUuid    | boolean   | false   | Validate if the value is a valid UUID        |\n| each      | boolean   | false   | Apply validation to each item in array       |\n| property  | string    | 'id'    | Database property to check against           |\n\n## Example\n\n```typescript\n// user.dto.ts\nexport class AssignRolesDto {\n  @IsArray()\n  @IsEntity(Role, {\n    each: true,\n    isUuid: true,\n    property: 'id'\n  })\n  roleIds: string[];\n}\n```\n\n## TypeORM Options Factories\n\n`createTypeOrmOptions` creates Nest `TypeOrmModuleOptions` using driver-specific defaults. It currently supports PostgreSQL and MySQL.\n\n```typescript\n// app.module.ts\nimport { Module } from '@nestjs/common';\nimport { ConfigModule, ConfigService } from '@nestjs/config';\nimport { TypeOrmModule } from '@nestjs/typeorm';\nimport { createTypeOrmOptions } from '@russ-b/nestjs-common-tools/typeorm';\n\n@Module({\n  imports: [\n    ConfigModule.forRoot({\n      isGlobal: true,\n    }),\n    TypeOrmModule.forRootAsync({\n      imports: [ConfigModule],\n      inject: [ConfigService],\n      useFactory: (config: ConfigService) =>\n        createTypeOrmOptions({\n          type: 'postgres',\n          appName: 'parking-api',\n          databaseUrl: config.getOrThrow<string>('DATABASE_URL'),\n          schema: config.get<string>('DATABASE_SCHEMA'),\n          sync: config.get<string>('TYPEORM_SYNC'),\n          logging: config.get<string>('TYPEORM_LOGGING'),\n          isProduction: config.get<string>('NODE_ENV') === 'production',\n        }),\n    }),\n  ],\n})\nexport class AppModule {}\n```\n\nPostgreSQL support is also exposed directly as `createPostgresTypeormOptions`. Its `schema` option is applied both as TypeORM's schema and as `search_path`, and pool options are passed through the `pg` driver via TypeORM's `extra` config.\n\nFor managed PostgreSQL providers that require SSL with a CA certificate, you can pass atomic connection fields and `sslCa`. This avoids `pg` overwriting the explicit `ssl` object when `sslmode` or `sslrootcert` exists in the connection string.\n\n```typescript\nTypeOrmModule.forRootAsync({\n  imports: [ConfigModule],\n  inject: [ConfigService],\n  useFactory: (config: ConfigService) =>\n    createTypeOrmOptions({\n      type: 'postgres',\n      database: {\n        host: config.getOrThrow<string>('DB_HOST'),\n        port: config.get<number>('DB_PORT'),\n        username: config.getOrThrow<string>('DB_USER'),\n        password: config.getOrThrow<string>('DB_PASSWORD'),\n        database: config.getOrThrow<string>('DB_NAME'),\n      },\n      sslCa: config.get<string>('DB_CA_CERT'),\n      sync: config.get<string>('TYPEORM_SYNC'),\n      logging: config.get<string>('TYPEORM_LOGGING'),\n      isProduction: config.get<string>('NODE_ENV') === 'production',\n    }),\n});\n```\n\nWhen `sslCa` is used together with `databaseUrl`, SSL-related query params such as `sslmode` and `sslrootcert` are removed from the URL before TypeORM passes the config to `pg`.\n\nFor MySQL, use `type: 'mysql'` or call `createMysqlTypeormOptions` directly:\n\n```typescript\nTypeOrmModule.forRootAsync({\n  imports: [ConfigModule],\n  inject: [ConfigService],\n  useFactory: (config: ConfigService) =>\n    createTypeOrmOptions({\n      type: 'mysql',\n      databaseUrl: config.getOrThrow<string>('DATABASE_URL'),\n      sync: config.get<string>('TYPEORM_SYNC'),\n      logging: config.get<string>('TYPEORM_LOGGING'),\n      isProduction: config.get<string>('NODE_ENV') === 'production',\n      connectorPackage: 'mysql2',\n    }),\n});\n```\n\nThe MySQL factory uses TypeORM's `poolSize`, `connectTimeout`, and `acquireTimeout` options instead of PostgreSQL-only `search_path`, `application_name`, or `query_timeout` settings.\n\n## TypeORM Exception Filter\n\nWhen you want to convert low-level database errors into meaningful HTTP responses, a TypeORM exception filter helps keep that logic out of controllers and services. You can register it once and optionally override specific constraints with your own domain-friendly messages.\n\n```typescript\n// app.module.ts\nimport { Module } from '@nestjs/common';\nimport { APP_FILTER } from '@nestjs/core';\nimport { ConflictException } from '@nestjs/common';\nimport { TypeOrmExceptionFilter } from '@russ-b/nestjs-common-tools/typeorm';\n\nconst USER_EMAIL_UNIQUE_INDEX = 'users_email_key';\n\n@Module({\n  providers: [\n    {\n      provide: APP_FILTER,\n      useFactory: () =>\n        new TypeOrmExceptionFilter({\n          constraints: {\n            [USER_EMAIL_UNIQUE_INDEX]: () =>\n              new ConflictException('A user with this email already exists'),\n          },\n        }),\n    },\n  ],\n})\nexport class AppModule {}\n```\n\nBy default, the filter already maps common TypeORM database errors such as unique constraint violations, foreign key violations, and invalid input format to NestJS HTTP exceptions. Custom constraint handlers let you keep those responses specific to your business rules.\n\n### Entity Not Found Filter\n\nTypeORM throws `EntityNotFoundError` when methods such as `findOneOrFail` cannot find a requested entity. `EntityNotFoundFilter` maps that error to NestJS `NotFoundException` for HTTP requests and rethrows the original error for non-HTTP contexts.\n\n```typescript\n// app.module.ts\nimport { Module } from '@nestjs/common';\nimport { APP_FILTER } from '@nestjs/core';\nimport { EntityNotFoundFilter } from '@russ-b/nestjs-common-tools/typeorm';\n\n@Module({\n  providers: [\n    {\n      provide: APP_FILTER,\n      useClass: EntityNotFoundFilter,\n    },\n  ],\n})\nexport class AppModule {}\n```\n\n## isTypeOrmQueryFailedError\n\nSometimes a global filter is not enough and you want to react differently to one exact database error inside a service. `isTypeOrmQueryFailedError` is useful for that kind of targeted branching without scattering manual `instanceof QueryFailedError` checks and driver casts around the codebase.\n\n```typescript\nimport { ConflictException, Injectable } from '@nestjs/common';\nimport { isTypeOrmQueryFailedError } from '@russ-b/nestjs-common-tools/typeorm';\n\nconst OPEN_TICKET_PER_CAR_INDEX = 'open_ticket_per_car_index';\n\n@Injectable()\nexport class TicketsService {\n  async createTicket(payload: CreateTicketDto) {\n    try {\n      return await this.ticketRepository.save(payload);\n    } catch (error) {\n      if (\n        isTypeOrmQueryFailedError(error, {\n          code: '23505',\n          constraint: OPEN_TICKET_PER_CAR_INDEX,\n        })\n      ) {\n        throw new ConflictException('This car already has an open ticket');\n      }\n\n      throw error;\n    }\n  }\n}\n```\n\nThe helper can also be used as a plain type guard or with multiple matching fields such as `code`, `constraint`, `table`, or `column`. That makes it a good fit for small pieces of domain-specific error handling where a generic global mapping would be too broad.\n","readmeFilename":"README.md"}