{"_id":"@asemin/nestjs-exception-handling","_rev":"70-9178c54b31491e9fb70fd5b3fd9cb7a3","name":"@asemin/nestjs-exception-handling","dist-tags":{"latest":"1.0.40","undefined":"1.0.30"},"versions":{"0.0.1":{"name":"@asemin/nestjs-exception-handling","version":"0.0.1","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build","format":"prettier --write \"src/**/*.ts\" \"test/**/*.ts\"","lint":"eslint \"{src,apps,libs,test}/**/*.ts\" --fix"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@nestjs/testing":"^8.0.0","@types/express":"^4.17.13","@types/jest":"27.0.2","@types/node":"^16.0.0","@types/supertest":"^2.0.11","@typescript-eslint/eslint-plugin":"^5.0.0","@typescript-eslint/parser":"^5.0.0","eslint":"^8.0.1","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^4.0.0","jest":"^27.2.5","prettier":"^2.3.2","source-map-support":"^0.5.20","supertest":"^6.1.3","ts-jest":"^27.0.3","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"jest":{"moduleFileExtensions":["js","json","ts"],"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"collectCoverageFrom":["**/*.(t|j)s"],"coverageDirectory":"../coverage","testEnvironment":"node"},"types":"./dist/main.d.ts","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.1","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-m83akcnVflrFCxHEB73nU/1klW+x63zF30+5K7fgKzqDrBZW6Jdhw41oG8kWavWQlEZ83yIQE+ESQIm67LZb1w==","shasum":"60d92f04ed4f7a5ddd2bf2018d5f023040d46e2a","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.1.tgz","fileCount":48,"unpackedSize":105286,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6GDsCRA9TVsSAnZWagAAZQ8P/RdcSwf2mULU9toh6HMx\nYWDvblW5GnYx5Saz10u3h92aSgWd2ze0fAXye0rztfdn1j7WLQoZLeuBeK0e\nwYRWdPoeHI9i/VYoQUv+b/5Avpiv/V1cXeekrB6JAK6sxpW1c0poHetcHFDG\nyiuqRwfyWwI3oYodRhGF0rNBYkzbSWF5Kcp8lHz8xQHUqBTssspmsizqGy19\niTkf3B4RFpMjUY6BLhNn9rMOFlSDCG6ndaYnwGXFv4qVClPTA5+4xuwXEyMT\nZJFB0mTsKCqxjooC2AIxdtN9esDEnus7gGt07vxYc5q4+mkGgBqUNlUMXVAJ\nAHOVsUqezMI7dO1snHwn56Fia1vkOJNHQz35Gqfit/fJfx1D5z57slgrQGze\nqE7P6Iqmtn1fWkP4fgeRjjX0JftVYkhsmxVIiYUFpjCUn1Gu/7iCaAkUtgaG\n61MRBPhXIF5uJSuGG2LHaiIbvd9Ol4a4DCOAW47ZxSi/me3J3XSadXxa6fIY\nm1AwBChJ7GJqmCwK3pSXavID0wSF4T5msMUVzZEx/EFHUkb9Wv6xrdp6dtCg\n+LUwcwOscyzv34PFthy27/X8lqj85MmzPyoD3LlYQKCADeX38KyPtuTlCUO7\nqSPxTFXeXOSGfPn8KsCLQ4STMuwcfEEbWQImo1j595RLrp0Isauj8nUYdwuM\nnyRd\r\n=vCFj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF2xGEw1gneFNSKSUsmPE/Q7jh/Ivqki3mITt7KD1ydsAiEAwFk6PdnS9I7rsfNflI1Tk0OdHOZRQadPJXXjAVqkWSI="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.1_1642619116309_0.41362890281359777"},"_hasShrinkwrap":false},"0.0.2":{"name":"@asemin/nestjs-exception-handling","version":"0.0.2","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build","format":"prettier --write \"src/**/*.ts\" \"test/**/*.ts\"","lint":"eslint \"{src,apps,libs,test}/**/*.ts\" --fix"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@nestjs/testing":"^8.0.0","@types/express":"^4.17.13","@types/jest":"27.0.2","@types/node":"^16.0.0","@types/supertest":"^2.0.11","@typescript-eslint/eslint-plugin":"^5.0.0","@typescript-eslint/parser":"^5.0.0","eslint":"^8.0.1","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^4.0.0","jest":"^27.2.5","prettier":"^2.3.2","source-map-support":"^0.5.20","supertest":"^6.1.3","ts-jest":"^27.0.3","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"jest":{"moduleFileExtensions":["js","json","ts"],"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"collectCoverageFrom":["**/*.(t|j)s"],"coverageDirectory":"../coverage","testEnvironment":"node"},"types":"./dist/main.d.ts","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.2","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-3eez1kvh9C2/rHKLdq35QemDbB+NMJ4jV72BsabaotkGX5yFzAEenmAgZwXenoqb0oY4H6GQCsi2Zc5akxPp0Q==","shasum":"c16175820093c7b3e3baaf0edafd7b8aa2cc7a54","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.2.tgz","fileCount":48,"unpackedSize":105705,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6GIOCRA9TVsSAnZWagAAMZYP/3AOTO3DjNq9tJOO6KuH\nbA2SGPBqgyH2UDBeC2SYf4UX6Bgof2tSb/OgzEIVDaVb+5QfR0HxTHab1hN5\nXgd9wpfpQDopswEGNTKMheDgm+US6CbH38JGTQ6m/BjFpUzSFBTz4NJmpqBp\ngpPmSwrP+NXy4jl06ncIJpmWsIszeJhkwo93cXq3MWR/pbZ+PBWUrXNUkuvq\ncQ6FEUchxHCUEc0y7KajPPMhgyyT+LDnM0WsFLoA4zbJ3jNS5zm6pgvwRO9z\nZz/j8Td7l5J2MINEWGomymdJepSL36wEVWRuNdzH4vbEPeVEEm8Mi1/Re6CN\n/JRtaO5hc+2h8GYeZGvKmhU7w6z6b4QSL8w0ksH+75fubMiyJpLnrUoqQPFE\nq+vwfrggAmLNZlgf9/A+atLF5qOJ9paKJWDYrFbUbD8GZ9pQVMlTYiFNFhZ2\nE7n/ygb98K0YvATwQqkdkIpfUCDX5hY8jWuNCZ31DcGl4vmaU4JGw9LRdXBO\nn3gWy0ujpIx0u0Vp1181LwyVpfffP+LFKE7knlbDfUIHQyHqmRbYfEZxEn4Z\njzWuUPs+r8VQCO3mt8gSyPCF035qfxACheyf53Zq7kqniX1gyQlsM0Pvtcmx\nvxUMz2ABzTrYC0JtL60cLCZ2iCj5glqq1Fs6mRl7z+DENEceaDSdrHZ2meRo\nyF3L\r\n=UCva\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCXPwDgIYarjwsAXug9sMdlwMJDsj9lyV4UCFQB4E6xyQIgCjPiRsJmo1ZNLCoLWvGbwMvUphW8heBISuPVc2Q1dD4="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.2_1642619406330_0.6295997349878399"},"_hasShrinkwrap":false},"0.0.3":{"name":"@asemin/nestjs-exception-handling","version":"0.0.3","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build","format":"prettier --write \"src/**/*.ts\" \"test/**/*.ts\"","lint":"eslint \"{src,apps,libs,test}/**/*.ts\" --fix"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@nestjs/testing":"^8.0.0","@types/express":"^4.17.13","@types/jest":"27.0.2","@types/node":"^16.0.0","@types/supertest":"^2.0.11","@typescript-eslint/eslint-plugin":"^5.0.0","@typescript-eslint/parser":"^5.0.0","eslint":"^8.0.1","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^4.0.0","jest":"^27.2.5","prettier":"^2.3.2","source-map-support":"^0.5.20","supertest":"^6.1.3","ts-jest":"^27.0.3","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"jest":{"moduleFileExtensions":["js","json","ts"],"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"collectCoverageFrom":["**/*.(t|j)s"],"coverageDirectory":"../coverage","testEnvironment":"node"},"types":"./dist/main.d.ts","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.3","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-hPlb94CJEgTTxnvO6CCfg+3OwkbSu3p9t5bFVP+tEbBqJCaaEPAherIT7Ak6D9fnYXqnJWJa/dWNGk/GNZU5tg==","shasum":"62634f216af181866bfd0a9262a868f19a99fa58","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.3.tgz","fileCount":52,"unpackedSize":107462,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6GQPCRA9TVsSAnZWagAAYH4P/2Ndkpc6jl84DwdFM6fX\nE18VJcnaE6NjLNRmuujPAxHmmdPUrR0jdEKnxuiuT7aw0TyYHaIc0nIw/fzu\ni19tIRJprh0NEduo/SjxcO9Io2iru8Q+/ecjAWD1U1C5fYJeiWuVJyt5Rpze\nkcq1yltyEcanIxl7YqrB3MJ4yHUrvUiF5n5Uuqizytx1OyFl9uGxhqjCHf0J\n+BXiTmJIU/p3W++8cRfYW6LFCk032Gk0nt9FFvNT7uqAkaiRYKOxMtyp8kIV\nHmoM2rsycIj/GLoBhUfxtHpVH/bjQDQ44QJpGtcGAKgkfe7F44Gw+uZ+ICT4\n0PWrBWkJRbjYCnoNnkNaaZ9Oexg0eMQq3Snfl8Yvw22QBygvDfDc0l34odD6\nx8d7iAiMicZT1dfADg3AuNwyR2iMtzSKktesXbUpH/y+O7WLz/jnLEOZWcFf\nSImGYijsbCpp/H0npmjGMcwFMX1Sfhwuabe7fZDn099D5Lov1VBKIvqXyvLi\nuH4yL7ihUkyFXoBmi5FnThEjeGg+Fe687rWbBb3KFDWYgw38/CXJ3T+MuXzC\nAhmLo3fD7pes1kONBl34GyMugh4K0D73XU8nimqXE7a1yaI9wgNBdUOSVpvp\nNkm+78f3esq2/1EDi7ghwiaFmKhllcJk/OHQ0Rlme56GWh539Yx1rLVJpeHy\nG1F8\r\n=UcKb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkZG+EOJiDGon0NPS+ageDfYF3bEVZdXB0HmVtlIt0MAIgDchn7qExTAfZoR16t1NR/LxfryOwjxjQazj3JwXFTvk="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.3_1642619919343_0.7196415885378786"},"_hasShrinkwrap":false},"0.0.4":{"name":"@asemin/nestjs-exception-handling","version":"0.0.4","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","types":"./dist/main.d.ts","gitHead":"fede9b6a2fa0043f933bb46b9c32a4e503f87ec5","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.4","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-yAoqATIORNeziICDJ5D/S6nommaA1cK+6Diuql+TYv9eq1fsF/6TrEvm5DevYClfLxdW+5OoNL8VSNV/tE6oDA==","shasum":"4f26bf55976d1b13d46ed98c4759cc5017a5fd5e","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.4.tgz","fileCount":52,"unpackedSize":106651,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6QgDCRA9TVsSAnZWagAAdvYP/jRhcZ4hWNFT1Wwb7Ota\nvbbnIHAyJuKObog0ES4YtXzPaQWYbe7AbH1fFltDn0RGLqxyFQ4f/c31L8MW\n3wJkhCasaB91VkUfQrBeGgS8qe40HDGq6wleGT37RdI4/FGBTSVWz711fwm/\nbLvGJMLuzVPAfsEpPcinOpb/RwEZsN1L6tyfPmr0NbSjOsRYhor9zNj3p9er\nX3UiMgmJERSWyE0c640QskEM//5HDKgHGiwTzGt6WeJ/HAu6QIx+f9Sz3BNN\ntSmPhNE6g3fXI7b/YTXN2RRqNuLkxbOaKWLVP8L2XgjjV3dR1V/dCADzTn6p\nhuNAUX7DMIlVmAc7DpV5lmjhp82f7a+j4EHhSqpyhdeynEYjX9oqiE1ZydGw\nw5v90M0MidCwVv4225smK+9o+au+n431+w6t+HChcBap6qmFYW0TawA4lDrx\nlmgjjIuCo6Mcz8t4BbrEhkkxayJP+y+vJLkER+GY1zXlnuHPXjEIr5F69bNf\nKmo/ts+0NSxYEBdIOG2EivQFCDhCbA/OCRuAQd/EmAM/eJmRVH1YcxXFq6jl\n1Tv1S0TO+S/i+DHpEFp2Tyj2X2FVawG3C8DDSFZqSPM03R7lFUNGOIckR2r8\ne2O/MBKvYdZj+yFtJ5CP3YWSlqNEfDXV4YAwE+QU6kAhtTeNBIIE/FJHyDpk\nyvsm\r\n=79c9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBC4tAPmOjvBPrGxBAsFYnjKER1ScJ+BWh59XRI4zUBaAiBNyaZzB/uOxzJMXzf+/oLBU73bvYarOJQILDPYAjKKWA=="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.4_1642661891339_0.28386136847955146"},"_hasShrinkwrap":false},"0.0.5":{"name":"@asemin/nestjs-exception-handling","version":"0.0.5","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","types":"./dist/main.d.ts","gitHead":"a3bd2641ef6dc80ab2985162ab979ae17dbb8ad9","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.5","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-mV+nK9ZP7uxVf5wrngCIQXaB2RCX8aeZrWdyjsWthI7H2vrrkEacQDaBmbLaOKVey8ZCWCMAG7aTgrVglDqeuA==","shasum":"0b89a76643184688db09f9559f655ce22498e36d","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.5.tgz","fileCount":52,"unpackedSize":106778,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8tl2CRA9TVsSAnZWagAADaAP/3v4/OBhmbEtLyevafAt\nmw1pgZlDy9GljnNNIDjYdNaZn8WwZ4dSMDl4FNFnxw8ZoXFabD//Z9g+tXUn\nFP/WEU7xhKwDcQc3kWxthDTqRiDOrEsghLU/da8xIh4oEEbxxAEh6ydJtMpn\nwaHKQiwagy3kX6TUVArAVG1/YY2yN4vAcvt7zJWwEjk/fHh7DeHH1DXPhsub\nr0qh+as2IxYtQo0/pBOF50E9qvV+xrj/bz6vsneyqPb5PmLm0sneOgieVcBb\nma6crfCYXetGu0kaTfnNJj5oKk7gyvC6B44hr5j46lRwshGffsgwc1IqzzmJ\nyaAb2m6vCzO3KI3PhhIhasOC6Vhb7KRQ4OZ68Y3RGKCs5C6gw/rYVYvpUtpW\nW0q3z9HIxcgZ+6KMQDopRq+2fgo6bfmI2MAkxPZF9c8Gcl6cLsXtxk/hwb8R\nsVKlmco5cvnudulrptkeLzm2XtzbPyt67rSUFLiJv0NruSZYyKR9MR5D3B9p\nVfvvIGIQx9H9Mf6Gq+jhLoP2NU8Ce9jvFP1pKkXWwF+EmLRV99LPFWNMUT3D\n8Jt/hh0rP+2NWEqdE5egU16yV7C3PhGp7mKAVyqNg5DqP9mm6j3FFhJev4WC\ndtM7JRcBbsF026dBFj7y9FRVGHTF0dhhPOXjEVjESWRu8GPTZQeIIk/jvPDE\n8qdo\r\n=kfs6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIET9tpcrN+gyvmfkSjUrO4bieTP1q62NRgcLK3hX/pZ6AiEA92O6yeneMnjgDhgbIDx7Vi5AVeCwxDoNJtfUN85Fxwg="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.5_1643305334194_0.5703175672873886"},"_hasShrinkwrap":false},"0.0.6":{"name":"@asemin/nestjs-exception-handling","version":"0.0.6","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","types":"./dist/main.d.ts","gitHead":"a3bd2641ef6dc80ab2985162ab979ae17dbb8ad9","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.6","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-ib9jxARqRZAA8njODKegLuh9hRBgNnWh2ljcA1puOEu3Gp0zFFt07LMlObXxwV9r6iKeOUHrvgj1CMHq91AINg==","shasum":"9d6f572050c95736419da5e6c97d5f8486f5ddb7","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.6.tgz","fileCount":52,"unpackedSize":106778,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8tpECRA9TVsSAnZWagAA4zgQAKOHl++/J3bAhv0pYDSa\nbBDcY+3JcxGM1VXb17YuC8NYHCIAEGk7rz54a9tvF4E/gecaCqrPg6jUMUE4\n1L9bECzZ3HOcnH2ilIryNtnTXqK37tOqTZpVKjojVNb7bVzdIBvCMrElIY6e\nW/toV9wKflctxqaGURry8NFIiZmPKNefoOedL1k/1Vsx+TgftUQMcAW1RRak\nldOZ0hbtZJdo7PeDcxeH1Bv7tXD2GInaCnrT1Ybuk75W94+S787JYzZ5cxZT\nx9TyOecwmZFjTIv7lKK7yjWIKRK2m501Sy5VYu8836M09xPhl1VOrO57A2AD\nmF44D5bhL9TO6/56O+Yn9h0b7dQLNiBcHjGVFzKO599FZ9SB1Qk59kgvHbRC\no/1l8CEwGciFIyX15P8znMFz3qf5keHJo/2fLFhsGbRRFtItyG3cU/OR9S2X\nA5gF7BM5FMEhrwcqA2eV7IKE308sP9CRGVOFm7nv7ElohjvF0AVPypwNQBYB\nQLyuyKUhE/XZ5P9117FtyX7SDknTKUsgfnLg5kGTlEZd+xX2aPpIxv9akc1l\nwYW+M1uAXWmWHaqGk0te5PMAWPsOta2GHHvkd5O5kUGsOmkIvZ+3/1DbVcY0\nDfolwQRlW59vRXwDPDpIdmocDZeHUqtuLctKb2W3X7nMYiY0K1mYs4vFw/lM\ndkH+\r\n=tIB+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCziSq32P1GwRUpBEZEksa5KvELFBfPbmEgLjMfe3lVygIhANvJEA36cCnZ8TxqvLIHYYVTsPoGnoVRlxrTzFCFCGyS"}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.6_1643305540023_0.013989721950355971"},"_hasShrinkwrap":false},"0.0.7":{"name":"@asemin/nestjs-exception-handling","version":"0.0.7","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","types":"./dist/main.d.ts","gitHead":"a3bd2641ef6dc80ab2985162ab979ae17dbb8ad9","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.7","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-ykUiDOY3ttrUQHhxmB0aNaNO95Yl1YFOkZNqkx323mi0ge9qFBZGZ0pRzgMzIY/mPz5nSPJZdNK2dmtQ9mNfug==","shasum":"af3a771d945f880815ac125f30c43f01e75a34d6","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.7.tgz","fileCount":52,"unpackedSize":106840,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8tupCRA9TVsSAnZWagAAUH4P/A4dyMp3iyUk5gWKUmGL\nMW5WdBxsbX++qtmTKLGB5in1IiuRWqHvfsHcBIYgxvsHRDcJrDfObeqPBxHI\nRy8nptHmvTFyakfmeX23v7WrBwu5c8JAmyU2ejP/pBU2iaZ7JuR+ByRUpoBa\n0KjuOsl36ikFP/PE1p3mNcMRb6edcEFmyZc3W4W2ejO7lKQ6Y9nQf6WE/DPw\n8dwEjzTKwwdoaJLVQDD3tfFynjDiFaF1l6zm1mfv4uqdNmSJH5Wz5egYoR0+\ndvgtqyts1A8/Fx/dqWs8amdDm9psTOIto7ItBeiKxoySYyq6hXNSc9a94JFV\nibkftKvL7tEGJBJpZ/UcVKaPBjte3fAQTrpIOaLBat3np3jMFVBAiY/Xg+5M\nEjZQRbxrZJBoThfxv4azBTcnrfz7LPE1pTA4fIjVKkOaIDqNaC4wVATSi251\n8M76qswcVemUnzMLNx33Low1if0AxsayZRly098i5/26C5DGBR5kRiENJ42d\nTn8+S4FdrukvbRA6xHbHOx92l3k63zS+gu4I4Z3tasuw4p0LGaP04de0/ZwZ\nKqmxEWtfHa30N7kY6XTbe+cvLQkm+Bg+Pi+xMpBafazPN86y8rU9esmTTOWW\n04PsyllFv5Bze5JgU/dsFunGQQQRBR6WzcX0RbBwO551d+NoOhH3Y0GDlUw3\nJQ+N\r\n=BlTM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDeyPD3oaYu+LBwKB30xLEWeair17PkzUQleLTYDGkdSgIgeA6cz8ZjjQnCwwJLZ8vslU+efOhgaf49nhKNcL7ZK2U="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.7_1643305897867_0.3831877064641298"},"_hasShrinkwrap":false},"0.0.8":{"name":"@asemin/nestjs-exception-handling","version":"0.0.8","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","types":"./dist/main.d.ts","gitHead":"a3bd2641ef6dc80ab2985162ab979ae17dbb8ad9","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.8","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-1tizb2ycsFYxTk8PrP+Z+qe7yYNbrGVW6tdZn3KAaQ8LBT47F1BxIes25F4t6NotQLZOmSWJW0iG/87uLvWpLQ==","shasum":"d00f0189b4c11c63b4603d13699fe4df8ff18fc9","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.8.tgz","fileCount":52,"unpackedSize":106838,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8tzUCRA9TVsSAnZWagAAdvQQAItmpDqZ53/rULZQPPjR\nACYU5FLrmd81OpSw7pwy74ZB4+jvoZjFaQHwEOM3OPGPoh7Za8ufaB2b/uyk\nkvl9GVjc5tiwJAMwDIX2/lsCQ3rZ+XheWAnKU3Sr3G6VcmxWdn0P4B8yAM4F\nrHl13jCgWUnPMBSQ4xI1jHXDA4izhArXiu0kop1CQNGjO6Fyu1xMvB2xZ5Bl\nwsiIbSaJysUQ1V+p4/TeHaEi4BZGKZxxCLkeASIAqrUA2RS47946SDHT3iyS\nCyD+mLxGX8EAQi21nOM56cTzLc6kO+qidCiGq0d46SM4+70HJg4wZriV2L39\n6JkXgYTlHTVg0TQy6mmySZlSncvzI7kshab1YwZ7lqnjwi2eHpw2JKtF+ay+\nBfZ2WlV3tSdcPmIl5pEJCA/TbVHAjWyhoPyEjR0DsLSvcIrMQHJUsXl7IpR6\n8aWNvkqYEKlixGfnT9zX9mh73kX7SbpoVn/n9cphLMmt06QiOdPqW5mNjxCF\nL9JLP14zRyhk3f4jja9dPWlW0Cpw4WegfOQEn72lx/3sBgtDMJgVgwGGCbXC\nPq8S5VgwUEPgy1aBGGpjKjqND7Gpa97PLj367EeN0386DIo7pDMBl9Nr0PSH\nhTp+XC7IaMerpZpHrJh+SphnNOyd/gluYrz1RNtpkY2MkJPv+aTHWptYnJQq\nxMfK\r\n=g6Gh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEa1nhF/MMbXZFuxhWWlacCOtGTz3P9tlXeqg41mwwNsAiAKKaeJ/gN5Vg2VsLiBkM+r7LkZG8cI4YFYf4ygifNpZw=="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.8_1643306196000_0.9864303049931906"},"_hasShrinkwrap":false},"0.0.9":{"name":"@asemin/nestjs-exception-handling","version":"0.0.9","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","types":"./dist/main.d.ts","gitHead":"ee165e0948669d3e6488558879289e59faed7b05","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.9","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-iMAPSvAO0lN53rWG2rHjDf+DlQPAxpNTUXe1y2SPYwWaHHw4uLn4wCUHCyShx7JYtYPzHpu4xJEFZy3qWdzSEA==","shasum":"ba3e37450024eb8dbccc194a4b9ca53ee5829949","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.9.tgz","fileCount":52,"unpackedSize":107230,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh+86NCRA9TVsSAnZWagAARXEP/RYRcelngPAlS4t59jbF\nJSTqXCQu87gGcC3osR1X6borE/vm+UvofYZdKVP/Mez8U3deA6f70QxwKR2n\nUVydU+YlMAoq2JlKH9XkaHBKak3r+8I8uNXUTcsl+fO4PBkgdW/FoVeLnXLj\n47nby8yL2+/gOicVegON6bxShmIV0Wed605iaReJk6AnmazztYjGR+kD6xM7\nUH7kF12jHMbK7jGYh4scpNcbQwpKbxeEMDx8sfkHvPYQmNgocoCXZOiT6uTO\np0oTt1Jqmak4vM0RzhOYcekXa2+aZcigTRtFvoAj+v9gYQwqmEtX1Xx4vur8\nq5h3ih72gzjBs2WEWHzDRUL6gNEFaczrXVYUq9ZmC3SsK1ofrq1akDmdeXFo\npRwxbW0bFcFfY3y4KTIEF5h0Mv5E5AzF2QDJJJoc8XiXBwH6JORx5lqhELzJ\nfkfVbs4Zl0rFZPNzPt0kjakuBEkNSaOHSjS87UK3dOMPmWrDix7mDEjvxP45\na7iEmHPOzkAWWjx0y9iT3N405xQcpNaC2Lt2LK5+wP7GLV7wRoAR1k6lVF1/\nwqUhLJrJBGula4lgqjoGVnvPmLmzPey/kMHJXPNK2cCeiBuDXY4uMMm6opQG\nObwk0DHNKcmZdU858KcOuI0POoNn2C2JQSSbIxvV6Pnm/iTFD6jsznHnH/t/\naUZX\r\n=kedD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICOArKheO2bRGjASissGMKl469bWXdSC7+QufBs/Os7qAiEAghTnpw3+B3BHTNek9ev/3BPyMyep8mVhLw80PFIZVuQ="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.9_1643892365679_0.6698430541540494"},"_hasShrinkwrap":false},"0.0.10":{"name":"@asemin/nestjs-exception-handling","version":"0.0.10","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","types":"./dist/main.d.ts","gitHead":"ee165e0948669d3e6488558879289e59faed7b05","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.10","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-tX9tN0Z8EvCE52Jc1SHnth8Ukpr3eDclIfMHH38jYuIFDfWMxCYO86gAbBrR8RT9G4Hj7L09BpTihi8O1LAY2Q==","shasum":"37a77bea3767ba165cf745807030bcf5e078b80d","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.10.tgz","fileCount":52,"unpackedSize":107251,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh+896CRA9TVsSAnZWagAA/q8P+gMB1uFL2rSVwD8VmGd+\nixVczoazD/qS8HpU3r8uHb4IKi5Ej6dBEqwRjLIKUgrGjlZ6bqvEVMq0q4if\ne6r7prndu9Zg/fyjsrZBPHsucFIl/cFH1ZcQWbFDM1DJjUIu7RQVffhwb90P\n7ZmeiLKxE5g9svsLx7cRgOOAP2qwQzNr7DE19kMXqRg9XlJc0gNOzBNfnhbZ\nmRo60UAbotWMca9sQ2RTfZvhveed9XivIcQkakoa24RJN3G338Yi66jkfPlR\nnzNK8im09n9E+CopMfeDrgSIpUjZC2tRkLBKvnTx0gkX7BiUwYLKPu+d3c+w\ndXuHbK3x6GC6m+DZhuGujpoyM6rQFI19WfO/dUp+xwXWcN0swxlHkTwICul6\neWqq5CIqpmYTLtYmePVWVST4tYgDIdMTERNm3BE48VzRjgv21dnI7JDoEf2b\nVejweUTgzMmml31GcT5tYUlZEcQxAz6rgx/VlDI3hDuoGuqlS3fTXjbEMflO\n+sUL/KtP2cLgVNi0KoeJm/4S0uRDUSMHZJ3ste/jg9tZjogDkcO9arbecRb5\nNJdhntp4cug+Wvkx0bAL2t7ke38VJA2QKE6Inc4S2Go4/zftB4YGXA6B8VHC\nd2RF7UkCMmCPm/Xeqr9sGxFLcLGxjQDagGJZSbZ/2zdIPA28m6pIWiV0pQMC\nAYnw\r\n=S9u1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDlPjVWXigA2lmQ7N2G5ZoylAUDTKH7jjHXVnVvctxWdgIhAO1EpxXKqD0DJAc0JoTlYzFhMkvan5lCjV3zzqyDaAMU"}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.10_1643892602445_0.6142074943523745"},"_hasShrinkwrap":false},"0.0.11":{"name":"@asemin/nestjs-exception-handling","version":"0.0.11","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","types":"./dist/main.d.ts","gitHead":"ee165e0948669d3e6488558879289e59faed7b05","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.11","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-wBalasLa0VWUSIPfu9cS98Te2PwFVESo/peMFNuwUChbRvtBiO+1nK/jj9NEUMIiRxL5F75FcDy8SZpJ9wHi8g==","shasum":"0785f6573b7a9975175f5a6e28718a9da0ab3b4f","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.11.tgz","fileCount":52,"unpackedSize":107290,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJjlDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrD2g//Yz8gDntmlypytZ1UXsf+6BeBAJ8WT3/KVh7DNht0/W1wGyf4\r\nREHNzWlhaktzg/dLG8u3xeR3NbT5d6IbdbpwMoj9iKC+G07rArK25aYhohCa\r\nfxRhsN4GvZNtYIhH0NBLcYdGy0LFMBKe5I3a9FI57OnoausMHC34w01qoW0J\r\nYJ9lbvjNUncnX/CSTftRU8DAkJgM4Ya4hVHm0ueUROmopm+N+S5KeqzIop5n\r\n+nyY7dhyCU83VlmcyLRDTBhTEMznGE2JDTw4qy6hn2bi9EnLbrq2He8JR2QA\r\nF6QdC4stIcTeq03EuYSuTk76zdJKRvvlM/QYAxN6IwDLlMoTvKkEGHcUF9nV\r\ndHj4nBbRUEcGFwebq/61fq2tzZnp2GIq/RwKkuFWO2xozFXQ3UMrXa6Y0/vo\r\nSCp7GiCWsd0oWO5uCV1rplK5V0jHvOcy/kroxF+8CO9QIH2/LewYDAbpdplT\r\ns6KjdsAJ8ojFlgcV/MHlf7aKSNfo6BAaII3JzFRj4gVnsJ3tQQ5q/lT5CGZC\r\nbqRscNeqk077cxbyp1Jow4o5uR0OyOHKYP9gVCR6ToROKOTuVlltVxoXPS8L\r\nYKa0pL16KRJZOMh+Tvma3TG971fbeKFxKuvLNQT2bFVkhDmZJkhgXLj4BPvo\r\n+q25BRx4bq8IiweSEaTr707DaAnzeqHpu24=\r\n=/175\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC8DPL7pC7cyk/3sPjAbGJilnP8UTgFlPeqUgYGEOpRugIhAKXJ9Po02PuxKlRs1RKRJBzzGk0+4cA77LRH1WaxJaFH"}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.11_1646672195716_0.9631704023116623"},"_hasShrinkwrap":false},"0.0.12":{"name":"@asemin/nestjs-exception-handling","version":"0.0.12","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","types":"./dist/main.d.ts","gitHead":"4b5ba5653315b4fce88bdd055e9284336b3ce938","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.12","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-VrGSaTTOaRk1fiD+M0mSUWERnjqvk6+cesOCn8Cg4JeAgEfx4B8cOOI82HYau5YpTHaWJ+fJUnsugPverRzvKw==","shasum":"e16c4b0b7ce5194387d9623b4b8a3050a6ebacc9","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.12.tgz","fileCount":52,"unpackedSize":107510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJjqiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrfQA//eiBiJfvpGHU67AkWC8bQ0/r+1oBadJl4t1qiQFpl3EzkrmhW\r\nwprUrohAdeiy5MzARaLYvHHBShKCwejsj+yx5Je/ZsDzgZ1xRxgW/S85aTpV\r\nFmK9JesxpmnA3hpnNYi7BZi49563YlA6s7mJXxqkbmCZDhDGjhku0CghCRQ0\r\n9+Z7DWJWrzZyjkZxcmIptx7eypmGNXSL5vp5iG9eP6ci5rk79ZZiBZBYdt+b\r\n/wznl1HHbY1cC6AaJiHILAQnnuqpPzeCZ4xKxOq1iXjg6tQVkXbow/Reh9KV\r\nOzJ6wawhT/MzNMj7U/5ChxJzsh+dsK5M+QyPD31FZ49xMld5yQROuXaBTvFR\r\n9w64iOGbonj0v2QfM+6+Q5o9mLSRcR/SSLdMmHEgZh/oQXdZ8OpjxYowV4qG\r\nfwUTUo8Ufu/IxBjjvc8MRKYd76IQtL+H0qMlxF5xKDDzpltJ4ncFciQh5CXV\r\neGRXZOQw3uFPLGNqLwy7bW8WkW8wZC6YDcQjQ1uCfeDYfrXtLQ6T3Y+/HLSU\r\nPVu9v2y531zHVmrB4v668RcdsimQxcB/UQma0eIBFqNhfDlOCpj7heWCyqdD\r\n/NrlmNGclzL/F5HlApl83AFDjDJEtYaYkk8YlevNRNHycBHJu1wI6QI/8VS0\r\nAbL9H9gXG/0iri30nDvzG0gsWb6UDUz09QQ=\r\n=ZZi6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDDEuCm6InooXWEtFyKx+2TqV/dxf0fAm78ksf6IhMXrgIhALyZXlqDzsSFTIuxAg/ZjL61dBAQPBVqJ1EJObPSVUS1"}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.12_1646672546189_0.28845968294961377"},"_hasShrinkwrap":false},"0.0.13":{"name":"@asemin/nestjs-exception-handling","version":"0.0.13","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","types":"./dist/main.d.ts","gitHead":"4b5ba5653315b4fce88bdd055e9284336b3ce938","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.13","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-DmCrCC3EQ/z6WF8Xeqy/k6Scdg3ln4EdESv13niHBVnxMK8wU4oCYw/KTWluImU32AtTxaJb1SEbMnZDy9TK4w==","shasum":"ab26ca8a36da683eeb21c8e438dac9bcaeb60c89","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.13.tgz","fileCount":52,"unpackedSize":107692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJkd0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqUBA/+M3X45sYHUG+bhwWRwd6aWxsnzI+ZISm3IwKHXf7ybAyjoQ8B\r\nVC/r1xSuEKlzHeaD4W4LCXvGYiVT3oUMCSQqZavjFKDXHZNHI3aynK1/obdE\r\nZx3rlKC3hWgLAYdveOuqyZSC0+q1mr7+ThHAWkaWJiEYF8TfWSbLnLXuOhts\r\np6mTii9B35/Ei2Kxo6ndsjlQkwVSxsvkcmNP1eKlb8olVSSbkxqQvywsJjBy\r\nrlpkUlofPAuiCwc2LOJQHUBsOy1Dw+M9KCNvqQAX3l+OG07+zGF8AayUZNum\r\nsz4zBN5Om091TrN0iz0HLmJvaCr2xyESiRf4hrv/+RjpkK8xTcYEz5aB84MV\r\ntyr+6/x41CbHLO2SBIQfd9BUP2cBTMr7d2EIAmtvXIG7CNPL3+SH/cAMYGsY\r\nqytR6rf0hJM0Uz11xrC6YWj9DbKB1NoUwjuImkSX4+1puIIdJ6slfPKkqFT/\r\nZQZCo1Fkdnz6WJu78+DsSaTTLHjq/etWZdCCziIqKJYTiSRMtqQ4nRv0kj+4\r\n91ISMVoQ5i99rJvkHAYU8DvJkbfjo3nQmsnUamPS2GEX80aVW+YYLWyBbIWO\r\n23ssb1Nxh3XjUgdVETqtiutqCCgOtDGbiW20wZw160Eo+UDRG2orOxwGy5lp\r\n7aC3pjb446I2x4K28EUzcE4ppqfkiJsyt68=\r\n=40sL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD+fksrZ7s1XHN6MAKrmyWajcfI3FpsAgmJ3u1aSod23AIgICYPeyIi1l4eSG67DKXc6xU71bLUxP1KoQK76wDnxLc="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.13_1646675828067_0.8423861523501834"},"_hasShrinkwrap":false},"0.0.14":{"name":"@asemin/nestjs-exception-handling","version":"0.0.14","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prebuild":"rimraf dist","build":"nest build"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","types":"./dist/main.d.ts","gitHead":"66ab6a3edbe597f3923c9b73ac24828406abe13e","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.14","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-qJDqNwIV9uOOGGaQhwh0+PrxqNnJYkWZi7KXRv26Gl76fMM3NNKl60ZCV9Eh9kV1AUdJFnJyo2j0HaH93Hy2Uw==","shasum":"daf088ebc30ebeb16960f83a4b243d1452ddbc63","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.14.tgz","fileCount":37,"unpackedSize":103749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJkrBACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrNgQ/+IZxvBAtfFqhJs2kF58mzHDnLr/NowkXggq6xH76Fa/CA5d29\r\ngXPPNmhxRdHY8SFrXr0w5NE1E4Udu+3qyHx4C29Ekraufzolqm5Mnoph80uK\r\nz6IoNfbkTEtsg5eyvvQ3xaER7UNsMoXnUpeqdjsvzVvjA0p/KqE5YZcW9Oz/\r\nPcFX4UE/9tqdnT9NMP0+NewbACULA23gUmL9NRrdfZn/YdOkNOZ6q3CZOV2v\r\nw63r0q/BUUPOvEa4ZGuJx9uV/CitElUcFojMUfrP82rDziywU5jrc+sjDhDG\r\nj0Petbz6XpjQw9VEHZjP5f/eVbkN7eIUYzrY3t8/MSVd0+/Ag+lEZx874aYn\r\nOLF8VWJ6OYC72hpvIkHtWyMTaAb25GiWqSs51v2tye6kyT3G6D5BysyvkLkh\r\n7C6RayQi0+ds/eid5ZXP5sOap7o2HZOqdQSJZr7Wrq4HAFhheE2GbOKUVNss\r\njNHl4+BZHZsFTA9SY6fPF3NnuMpggLOEc2hQRLsYHvD8vVxer1tUg4u6UIXF\r\nSCg35+npM/sPGInagjMyB0oWlUhfsS6kaQCwFdrtP+zXu7H1KY/nzGzLV5y+\r\np77R5FTHT6/5m8saGs3R7YVtMPFC+EjmHhfIoQut81lwP8lAM+Z9EocPJd+v\r\nxrzwuFMt9NfJ466NiCRR4YOUeZPSs7UEw+c=\r\n=SP/B\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDehS+9O4lK/GEklNpUnVxHQ2nZbizKw5oHE3i+aJ1RBAIhAOCG3oJx98jrYbzB1xXTqo3hlhHb4jJ0GaoBxgdMBhg7"}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.14_1646676673355_0.9497000874174399"},"_hasShrinkwrap":false},"0.0.15":{"name":"@asemin/nestjs-exception-handling","version":"0.0.15","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepare":"npm run build","build":"tsc"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","types":"./dist/main.d.ts","gitHead":"66ab6a3edbe597f3923c9b73ac24828406abe13e","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.15","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-TXo8vZXyk+GttsQi87OMN4iAFQSdep89f6mbCZ7Ey1rM4eFmIG5SBDCiuTxEwAW6xUX2V8BgJhEegBTsIysJ+A==","shasum":"68666e7135ecdbe899a00e3528ad8da305e302c8","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.15.tgz","fileCount":53,"unpackedSize":188440,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJk36ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmozxQ/6AhjrichKoA5kSaI8yT80gJdaBOaBjIKDor9LtUQXhqEJVXM3\r\n5X5Wwl1nzu76RYxltsy+pYhYPcgIc/5N6pX3W+cXQoJlbzDkd6PVwzlWhYdL\r\nrEkrdlESdPVrnAOnj/61m3nr1nK/7nHsmKtx+3OQisu646gxlUVh31zyUp9v\r\nK2pmeGGnAj5CRROEpaX65ohtxFtvuUdYWshKdPg2zq3uGtQJkHMuDIXBvbi8\r\ni6ZW+AQWSDgy51X8T+VXnPNEa2nvIX9SR/DgvPO3tLSE8COoHYHAE/slAoQX\r\nh5tp8Ghmb+CVfsk909fZzT0B69FZfip2hhdz3+HH7fBqsQoUQz+5JpuTqLhv\r\n/vLECzFu8hyNE4ETH4m9mUtTLMBrxTmKtCvlLeTXE+8ljnla9w6E3P1fG05+\r\nLgU2JopiiYZPEQvShVklLnqmt/E/xAOXOqc9O4hM0icps2+TbYUurT5CYEmp\r\nUIbocq9BgegwEnICRQOnoFqO8G2dIqBcgSpKJx6rKDVUAk/uKZl3313UiL4B\r\nH6aC96QzuUDjoJn8YSyGUfD8vX29BcPs1teVQrB9bKoRfKn3ejNfmAZX7W+i\r\nLBt9xNCLPAfadFeTxkkxkV7cm+g5JX57prtxKpOu4ev5eifbYJdvht654FsM\r\nLA2BIuHclXWKIXVql3wdYl43b4o1pLYcffM=\r\n=9mij\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDlor9uXuKhmOwHnn4nT+Vfu6EHiYGieUQfIYz2+VgS3wIgZfMTcatN6rzZiz/41yYvk5tAm9PRCOTrAMUbzSYaNn8="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.15_1646677498124_0.3808930072225789"},"_hasShrinkwrap":false},"0.0.16":{"name":"@asemin/nestjs-exception-handling","version":"0.0.16","description":"<p align=\"center\">   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a> </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepare":"npm run build","build":"tsc"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","types":"./dist/main.d.ts","gitHead":"66ab6a3edbe597f3923c9b73ac24828406abe13e","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.16","_nodeVersion":"15.13.0","_npmVersion":"8.1.2","dist":{"integrity":"sha512-daxdnf0vT3yBfiuRbXBh1gtleK+aZo+Gwg97f3CodBLb2Hl+PEitxOzQ65tgK5zCTtahj6V5VMiYIEiKLPYkaQ==","shasum":"c9c04b65b8b1954154bdda0c2c403c4b5f25fcc2","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.16.tgz","fileCount":53,"unpackedSize":188911,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJk83ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqhRRAAkYWFA24XhWZlwVhdac1yeGALjpbtSJBxYvbxLxD37vyiCkor\r\nhUU+ik1PQxHIrdDaQQiESXFvixasgVMTme/3pT5lNyt+B8gny0NKKRZy7Xx/\r\nyoTnGfu3ACCztf76u6ZzW1tB8gLVgBF88pbKxCyYsTnSbeiQgftSaPG79+eS\r\nflJ7sQdxgHl1HsWDQVhXvLkcOTKnQeXaLGn9T/7d+S1wokWrgO5m+SZj2FDu\r\noARN2U+1+CN/ogRADG57ST55RKbqA9tF5DCTmaGcM75QWJMriJyYSCD8QMsG\r\n2cDKntLXpOC8JCD0EPJpL/9Tmdws9pUUAHtWWzQAHZNsSvtzYPaekPRLuxi6\r\nd41wk1kS8MH6DnzOryvsQuOn6vbecSj1MXrU4B1QR2esf4pJO66PPhksMgWG\r\nguKDivmQt1bObzGQT35aDTMUW7GdVFX/4mlkQFxnS1wtAdp3eOJj4g0XQ9CH\r\nUavFr8xz8bUaHVimQFA12/ee+cj7Q5y9IrFA+iwAO2zSKRYNkgJp/5ASwBGy\r\nylPFXSUSZF1t7M9WAtQ0mXDbnBvDMongRo89oAENsT1Xsduf5sMU61Y8zYPc\r\nbKX44Qz25hgGio/RUA1UjjnM9ay4ksEwTPHmfu4nUncF4np2SCoZBFJXa9n4\r\nQP1DlumJcxId3nhP6qnur+cqPM6hpTA0yjs=\r\n=NazF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDaD49cKdB9MQvoERirv9VSTEh+glsXZiaaJ2dcC2smMgIgWCWfjQT2PUYz+P/k4XyewVq3Qvxlrc5YvY8Cae9VKFk="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.16_1646677815380_0.7886612917434319"},"_hasShrinkwrap":false},"0.0.17":{"name":"@asemin/nestjs-exception-handling","version":"0.0.17","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepare":"npm run build","build":"tsc"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n#handlers chain creation\r\n\r\n\r\n#main.ts\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n## Running the app\r\n\r\n```bash\r\n# development\r\n$ npm run start\r\n\r\n# watch mode\r\n$ npm run start:dev\r\n\r\n# production mode\r\n$ npm run start:prod\r\n```\r\n\r\n## Test\r\n\r\n```bash\r\n# unit tests\r\n$ npm run test\r\n\r\n# e2e tests\r\n$ npm run test:e2e\r\n\r\n# test coverage\r\n$ npm run test:cov\r\n```\r\n\r\n\r\n## License\r\n\r\nNest is [MIT licensed](LICENSE).\r\n\r\n## Deploy\r\nnpm publish\r\n","readmeFilename":"README.md","gitHead":"d0b6e0abe4253a3b49284b28c70f2a2286ead079","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.17","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-X4aL5+ttu/JBxNTGz5Dy/h1zKDxWrmIZ4tDt8/UqDoy7PlAOUvKNuXQiTqqXhNCvWKFvPEiklFI88g2ZBR7CZA==","shasum":"a4adb3d065c3d2aec372e1723c08b9c78ffaea28","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.17.tgz","fileCount":73,"unpackedSize":219257,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiODyMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp74g/9Fs8bGgxS7A9oIZaBYX21OI2ANNabELjISRUaJn1AcksLBgqv\r\nVUilQaV4bquUbidCY0DsI0TcSfXKUtuA3DEgeRnB4PtFPnSX5h44dh/qoudF\r\n0ju1LP0/Xv5IhbTlD3QmQZj8qs5WeDww5TjTNVoZ+huPeHLv+3lswQwjeX+y\r\n0qHqr8cphr9htu4qG+I/tMlikSYX4fNrmrJ3izyNyFMJ1V0qPQyE3SYzx6HT\r\nojynct6JLRSc2FV5yo9+W61A3brHWq4CAyg+HsRNFwEmmmJn4uF67WRhe/6g\r\nv92wMViCg+rfHpHoYxiTTGZ1qGXqFKYPK1aSMI0NUtOHFbhu8FSiQkGveNmv\r\nlBTFNY7gHFk0PH/mgPnMSH780N7dYn9c5g9DNVcAZCL1fMjTELTe7Lr+tPKt\r\n3cq5RSK14wNQYyfCQ5TjlIclcm6FpKdIlRg6J+xUDw/VKgSKIWAkKSbTa0rr\r\nQW0yCRAzUPiayv7jhrdE2NS8XlFKJEzjPH7a3kScFK+faoY05HhPEAnEfjEm\r\nBF2yew/Zf6Ptx8+bgHloc0mRDQWUwcVtkai2yx3GTJz1BPUC1a1+QwqbQTQD\r\nUPqr9gq86J98CGkDa3j/7INaHwmd+cw0hiXy7bzPUXlUjaeUwH6DmNYMx+qN\r\n75NLvQeDqRUvgGOYQxKMnfONN65dCHQKxdE=\r\n=Lach\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG134kIoekAFvZh/zohUQohPBXmPpeRoGWnAUH2RMUOKAiEAsFGAHHszwFM3JTs1PtqB24aUHdhsTTKTD1k30sw9ejY="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.17_1647852684370_0.7672011449218585"},"_hasShrinkwrap":false},"0.0.18":{"name":"@asemin/nestjs-exception-handling","version":"0.0.18","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepare":"npm run build","build":"tsc"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n#handlers chain creation\r\n\r\n\r\n#main.ts\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n## Running the app\r\n\r\n```bash\r\n# development\r\n$ npm run start\r\n\r\n# watch mode\r\n$ npm run start:dev\r\n\r\n# production mode\r\n$ npm run start:prod\r\n```\r\n\r\n## Test\r\n\r\n```bash\r\n# unit tests\r\n$ npm run test\r\n\r\n# e2e tests\r\n$ npm run test:e2e\r\n\r\n# test coverage\r\n$ npm run test:cov\r\n```\r\n\r\n\r\n## License\r\n\r\nNest is [MIT licensed](LICENSE).\r\n\r\n## Deploy\r\nnpm publish\r\n","readmeFilename":"README.md","gitHead":"d0b6e0abe4253a3b49284b28c70f2a2286ead079","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.18","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-fsEs/qYiDQ9JodId7ws1G3DENCzdcdIlD7RY7JaDOX4zIIvX3xjWkxKE/4qXHx9ywFB6H2b8WSyVYJ0vAyqTWw==","shasum":"b48d792f48767970b46f52eb3e8d516ec7d973ab","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.18.tgz","fileCount":26,"unpackedSize":182069,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOWUZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqRCg//Rr3Zlzj7U1G2y4KkI9U6jZTA9gj5donwSitwZQ3VswnJJLMs\r\ngQkOOdIXhZV3L8QvKdDXzXR1ec4WtGlCtSx/G7TazxgmJMA0YqVFrtLZy2j/\r\nVsMN4RYHmJPAIjSEqQfIOgdzbN+7ybtHaGp/aSoXFlNAbYW4qYra5Wa7Gy7n\r\nhHTGLRWVBpMTX8sxz7pFi5qRix/UX2X/ToQQYBvrINwaLiRwnY/cOprdFuXL\r\n6HqZTAN9DxD+Z1/LxD/a8kRPRV2lW/V7q2i/6mn3S97L3jHEsnde3iQm5coZ\r\neTGV68+7eAomovH99t/w1QQ35uOEz5F6763+CXFKOQbZzNq60sTzF9B+dq6l\r\nlnJZ90Te6fbrA6YZDLNBIye27vPvxqE5zkS40U78hgIGDqlnZ5xrtJiVRia1\r\ntg+CYjNp2kaEyagR/lu1lTJmr1F/WwfEoVkb2HCCQc7W5UlKVjjxfa029i8I\r\nYziRshBgqWuWTiZ3XTRbOo7g/wS1qAukXPSnra1HJmXmdzf2CTgNM/hEA8bZ\r\nuT7ULX8lTqKrNRli7C2WcuZouEYrkpq+yxjAGpz0rHOaBeT+Ms4P8Be401cU\r\nPzbJ4XVdHYL+KeR9YlFZYsNJplPF5nfMTy5U9LCJI7Hptql8N8BDVE2SEvtI\r\njXvC3hKcSeMPXFXvtB0LDjpapX3qYN28ZPU=\r\n=1lyq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAy3toc87gsS6BPKQEKpSDJFu8xZeYVRJYqaykaFR/SpAiARxL29ktNTH8QjoE/EsrVR9vThKMom5EZgv4Wf8jSqBg=="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.18_1647928601412_0.9956084241264906"},"_hasShrinkwrap":false},"0.0.19":{"name":"@asemin/nestjs-exception-handling","version":"0.0.19","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n#handlers chain creation\r\n\r\n\r\n#main.ts\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n## Running the app\r\n\r\n```bash\r\n# development\r\n$ npm run start\r\n\r\n# watch mode\r\n$ npm run start:dev\r\n\r\n# production mode\r\n$ npm run start:prod\r\n```\r\n\r\n## Test\r\n\r\n```bash\r\n# unit tests\r\n$ npm run test\r\n\r\n# e2e tests\r\n$ npm run test:e2e\r\n\r\n# test coverage\r\n$ npm run test:cov\r\n```\r\n\r\n\r\n## License\r\n\r\nNest is [MIT licensed](LICENSE).\r\n\r\n## Deploy\r\nnpm publish\r\n","readmeFilename":"README.md","gitHead":"d0b6e0abe4253a3b49284b28c70f2a2286ead079","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.19","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-FK1mWVwUdEVInMy3gccIHu8LmFpp7CjRZVk+FdBDzuTm3SDBw2nY++VSGDWTogDfk/QxzAyky1xnexAyDV2mJA==","shasum":"878e739a5a23eacc4ae2e2ac37edd5477d10da77","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.19.tgz","fileCount":25,"unpackedSize":181524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOWfeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoR9hAAmLW7uyZCMzTvQbv8OopwLXc8mR0LRBwDg5hiqgXn8/k86fvZ\r\njW+DYY7uGU8qiTtGKMA1+Cmqp0gSe5Rmw2EHejiybqU9Fvzru3Y75i6fGDVC\r\nozWqrivMogwmW5pH3y2j8+Qb8+Dv0xPqusM5STMc5SZQS9PzzH+BIN2/TQdt\r\nLqw/IcCG6EfjKFnv1dIV3SXRMtXkXDe77mdT/AqtSHz6eLnke7ZJ94sWRO+6\r\nWoui/7AVxEaAl22MrL/okPr72qhxaNUI+15Mql6i3Tll+6V5ERBP3xM902TU\r\nDPuKGndJ4NwG/30/YkdBoEtAwSBYzVSbZsPHxNZppGlETrCDWCZqmTMYCe1Y\r\nk1b+0n8ZqetVSRxfn1DxNMHh/r9cSTUbn/pCOSLUQtDpRNyZJeT5nV0VCEHS\r\nhixhqekS5ygfR8wPr9ucTO86CXFGwGRr8ijqDc2pQWodGBN7CwQ4HW0DcM8h\r\naWeH7CP5LNiIGP+8jfHbYfXpQxEJdIPFcnrdbBoBzj2xfRZUyoxyGxvP+SAr\r\n27IgX5MPEnamgIsoL2mteU7U6uEnUU9bqn7xFxvnHiSCkLchufTvGFTiTqcf\r\nP8nBfOrV2UYzS81qXExsOhGlsk/qgStM9/c+n6GjZ+sE8fVeeY+0MKWjHUXb\r\nmhoahhesALrpfflMPbeMHEAq3L4RieMEDe0=\r\n=E7qD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCB7x5DsOItpPhz8xHuY1c8n890ZxlduRtX8Ra/esEJfAIgOKr8Tj2OBdCW3D1TQlouVuoHg02812zmbZPdpdncKEU="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.19_1647929310220_0.6866345429148764"},"_hasShrinkwrap":false},"0.0.20":{"name":"@asemin/nestjs-exception-handling","version":"0.0.20","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n#handlers chain creation\r\n\r\n\r\n#main.ts\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n## Running the app\r\n\r\n```bash\r\n# development\r\n$ npm run start\r\n\r\n# watch mode\r\n$ npm run start:dev\r\n\r\n# production mode\r\n$ npm run start:prod\r\n```\r\n\r\n## Test\r\n\r\n```bash\r\n# unit tests\r\n$ npm run test\r\n\r\n# e2e tests\r\n$ npm run test:e2e\r\n\r\n# test coverage\r\n$ npm run test:cov\r\n```\r\n\r\n\r\n## License\r\n\r\nNest is [MIT licensed](LICENSE).\r\n\r\n## Deploy\r\nnpm publish\r\n","readmeFilename":"README.md","gitHead":"d0b6e0abe4253a3b49284b28c70f2a2286ead079","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.20","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-hX5TufTOy7BcVTE/p9JpRmI1+gjn6qLg7TW6PywSbseNf5Bk7qu4OF7A/lw2lMJ2lpNzBbKLG5t9sjtuBrmUpA==","shasum":"0b15d1083b06b42abf7454edcb20c18a6b31678c","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.20.tgz","fileCount":74,"unpackedSize":226367,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOWjXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrZyhAAow5y8mscJmZku1ej8PnrTKxYkQ+jwlaEHgWJYRVXTyT7P/yA\r\nO9m++MMT3TzGKdnCBvdiIk31QhEoKzH59BUWMf7tOQfn3R85S3oLlVQYkkff\r\nNmkwh26G1riHVhEkocog0YQ8++cKrFvknTDtUdFo1nQ8XL/Tutw5qLbaKolw\r\n80NEB4U6uVIk7rkjPt1t705iU99WOUUFlT3Hmdmv+8rQEh0f3qvyHmkZMbqV\r\n2UyUKTQCoFDSa1RgrgIMnrDVTjLEM1TAR9lfujyg7pI24AHdw4KBYqV3RNcC\r\n2QXrJ1AR2vGGsow1c4L3p4NhoZazVOIYeLC2Ii1Ko1kzFgA1QQiUjvajd7+9\r\nFc9jBcvuNZ2pgszyNCcEeYdBTIahoz5DzS9YtwOxW8nCw36mG31PnBDzXka9\r\ngJpJ9e7h5k4XMGuL3Hb0i95Pq4z57r4H3HS9Pn+Z8wtyA25xLK2Dce59VUxB\r\nnn6yQhgJX6zXlw0+zVxIfRa0BDjs5vUC1WIEO/5Y5xHNspouWI8R6Nz2OEPA\r\nqquN5SZofAGdZGxPb3q77gYOKDZMtuwdFQ2KcQ+2g00vVSOTCmy6o8eMzrM5\r\n1ey7j1fD9LbdklYRyzy243JgzAnDD9960AwmUNCaIfSpYz3OEirHr4oJ2MvC\r\nCIC3KQi31xDgIOp0bxivdI2YA6Wp/X6bz8Y=\r\n=l5Fz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDT8w68+fMjpH8Ilo7Smbal7nF5GWSj4vnS7Q8htebFzAiAllJDRYzZmdrbVKvUWvhiyImbVKCjdwf8Gc8RzxIZavw=="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.20_1647929558443_0.16665705079865045"},"_hasShrinkwrap":false},"0.0.21":{"name":"@asemin/nestjs-exception-handling","version":"0.0.21","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n#handlers chain creation\r\n\r\n\r\n#main.ts\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n## Running the app\r\n\r\n```bash\r\n# development\r\n$ npm run start\r\n\r\n# watch mode\r\n$ npm run start:dev\r\n\r\n# production mode\r\n$ npm run start:prod\r\n```\r\n\r\n## Test\r\n\r\n```bash\r\n# unit tests\r\n$ npm run test\r\n\r\n# e2e tests\r\n$ npm run test:e2e\r\n\r\n# test coverage\r\n$ npm run test:cov\r\n```\r\n\r\n\r\n## License\r\n\r\nNest is [MIT licensed](LICENSE).\r\n\r\n## Deploy\r\nnpm publish\r\n","readmeFilename":"README.md","gitHead":"d0b6e0abe4253a3b49284b28c70f2a2286ead079","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.21","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-iADEoUPIEbertMZ1BQr0BvBIX2vnshqewqcOFVQlJ2qkjMuj/MZQ+D2D7hSllx+ZRJk2SIvTFVCTw7JVUJEq5A==","shasum":"00a7c860ef308e6d999876aaffbc0168cde53f2c","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.21.tgz","fileCount":74,"unpackedSize":226166,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOXOdACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr+vA/+MgmAf09hfUQdPGToaDnosDCUUi795cIPdCIQWxyPzNtLapWQ\r\nSHzCbXlSTKB++hNqgY2OAoCIlCNeb5dwumJ7cbanQxdIxAPGF9pG60YmIlZv\r\n30BBbUxmcgyeTQzBoD1c6UmaE/9movzvvzfrKselkiHv8lxpMXVytkCAoYdZ\r\nhbaZUwjmUctdMjxa35OAOhkUV4ufm8AGuD+qEG5RGEs4HU8SU9MYG5fCrMPW\r\nZtsYGynve8BLndisRb8tYK8+WqSC9YfMNyX4z46TIC8IZ2aUs+Izz/9PfMG+\r\noaC0lgvlJhXcmXJiLNbtvEarWF19oYmb5g9PacrZNT+/7eFMVjb8q7qdO0wN\r\ni0zbLee8DQzTFUhYexJcmpUVEc/GhLvuIdAYWf3XadKgPzLnSToggauRqs9/\r\nOoUTk1/FQmdDAm6deUe1dzORERNgEQpTbfnFjM8ESwiZGsrRfesJ1gp3Joz3\r\n8uP+3VDcP/ghxOHXA0TKLMKN1smYGff/8UCHRcTKi9SnbL4w3V3+U0F6w0Zx\r\nGooXKBGBE/lCteaE2Y2xyEY7yzE80RLYdbamUoz8CyOwSACv2sQ21+xbukqA\r\nfmMk268yzmeqvQLRqaP/at/Nu0omj4DhnAmlgUkMkQ/xRtSr5l7FeqtPYrGl\r\n+r4eGouZkvSuIJ1qUuWhMZ75LEnvJQMatls=\r\n=ZaNL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/iyQotls46KHLzcSRLfhP05M6hlVZvtP1LqipGNdgbwIhAI1yuugk6tkIcNEzt3tt9+8IsryEquNl/u0SuWq+GlMi"}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.21_1647932317070_0.673183658273907"},"_hasShrinkwrap":false},"0.0.22":{"name":"@asemin/nestjs-exception-handling","version":"0.0.22","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n#handlers chain creation\r\n\r\n\r\n#main.ts\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n## Running the app\r\n\r\n```bash\r\n# development\r\n$ npm run start\r\n\r\n# watch mode\r\n$ npm run start:dev\r\n\r\n# production mode\r\n$ npm run start:prod\r\n```\r\n\r\n## Test\r\n\r\n```bash\r\n# unit tests\r\n$ npm run test\r\n\r\n# e2e tests\r\n$ npm run test:e2e\r\n\r\n# test coverage\r\n$ npm run test:cov\r\n```\r\n\r\n\r\n## License\r\n\r\nNest is [MIT licensed](LICENSE).\r\n\r\n## Deploy\r\nnpm publish\r\n","readmeFilename":"README.md","gitHead":"45b66f1efb8a97fd25323146589244e1fd8cac6c","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.22","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-BPpOhmrxzpKEhV3eA0k3KULdIoqSztOWIIy+xkHN9WFOh5WZZTqcFUi7CFPrHFx3klIxgQMj3kVK3bLCajXlug==","shasum":"68df195e196f7a21b8ab4e9c8fc3879e123a75c0","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.22.tgz","fileCount":74,"unpackedSize":230066,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPAayACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqYyRAAn+kh6n1UbT/49XX10Bu+qpq6Ct8uUu7qsBQxRu5I/V1zl7uF\r\n9zXlQ72IVEcQMN8/bM0bBnLu9w6T3Cqu76Gw6DUPb7jo83NkQfFlFf/7aH5B\r\nyhT6bKWQdg2bgAG1d53gSdTyrr8SSpEEqooGooGZMVfsVolFAxdwt9VidEHt\r\n/mY4KTvTqoTYQahV95JKPUhnt6BGZ0ifeZF+KARzotTzI5jzPaOFvuI4fhAb\r\nsm7dsWnQ+uQnKEBO28Uj31JygoJGDOFDXjUsqUPO+F1UxxrNvp05DG7/3cVy\r\nQR66NHpO+LHrath8b2sUCdO8if6K18b8FVpT5RI1GgHaG9ZScMrlPawi8Cs2\r\nGgw0RRL/TIzJw+oSCQFTaiQIo594w1OrpY1OnpJE3nrJoivyfHQjqXm4HQJU\r\nh3/OAJ2dSUi49Dnk1Oh6DXOOQ7vMN+1K29iywhMWuR/X14/2l9XcLyTRcy8Z\r\nEeT4+2wBPwhrWKta0BxKg5cqoOsINy0rR6Dwhg8XyAp2kVpQ+2fkp/WaEKEX\r\neQV6bsy5qaxhOygvXFEyA3oameF9BQyjk25p7Lra/3yxxgx/oePLyV0pAk1p\r\nBlxFC7h913N0WRHw/gdJGFH1CJFgMXxWpaBxhyYu0e1YhHhSijNZBA0pmmwZ\r\n5FYDMcZxl9HlMgGt7SuX7zf/U4FaTUf4WyU=\r\n=ekKG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD85RHwsUI1E+9mIlqVZ3zHCc18J5bc64xZ15YUDoryWQIgFn4/lKQHKtKNDceq/HbkChr2UAp5FU3QzEy6opnbefI="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.22_1648101042099_0.5182005055487144"},"_hasShrinkwrap":false},"0.0.23":{"name":"@asemin/nestjs-exception-handling","version":"0.0.23","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n#handlers chain creation\r\n\r\n\r\n#main.ts\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n## Running the app\r\n\r\n```bash\r\n# development\r\n$ npm run start\r\n\r\n# watch mode\r\n$ npm run start:dev\r\n\r\n# production mode\r\n$ npm run start:prod\r\n```\r\n\r\n## Test\r\n\r\n```bash\r\n# unit tests\r\n$ npm run test\r\n\r\n# e2e tests\r\n$ npm run test:e2e\r\n\r\n# test coverage\r\n$ npm run test:cov\r\n```\r\n\r\n\r\n## License\r\n\r\nNest is [MIT licensed](LICENSE).\r\n\r\n## Deploy\r\nnpm publish\r\n","readmeFilename":"README.md","gitHead":"40f2deb2aa036e74f7dae9605210272474459416","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.23","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-1yJYzBE7fbALx0B4PRghTDLiuAH54Aeu1vIQPn+Qu55CqHOQHuawJ+zG2V9vU3cNeKW6+RZfppwLHbamGXVmwA==","shasum":"49d7001457d0bc9f22e7f38fcb103f14be79884a","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.23.tgz","fileCount":74,"unpackedSize":234808,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPBPeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmri6w/9Hbt9UgpUh6i/bo0fHO1wldb8eTw8FVZ2GLcNQnkYvPqvkGOz\r\niWJlJO3mAh7kR36BLbt0CkzV1FkqChTlA9dUoeIImj5OjAutbLhmN94ifUvF\r\nQuJr3olfvTvpNgDBS78sSAJHIklabAHhksyObQLi14TTcUv/EBhZhxqSBc4b\r\n2Th6lmdQKtRTXF+aucYNFkeLPt5lvRL8rw9UxwlVfWkul1BcruvzuiM5N8hQ\r\n3uzfB235H6O9Hbd7SExZOeHoU6r8SPMUN6Qb/1fEQyy8uVlmWrnAgxeeG8qt\r\nSQ7rMQl4HpKZbzi1e6zOmyRO7SayShRNDI+cZFssjmQ5kOaj+ljyfH+9zELE\r\n8VFgZ7VJ747Tq4ipvFwx2vwzdtpmSN486t18gwrUW0njUsOnlExGmHcq3Yvv\r\nOrO4DLIDZxgCyai6hJQ0fbQVdERSFsOoAdlhatveOxcJkOwccKu7DCmaXHZR\r\nZ4hi+vF3Y46HxJLQbv5EJwdfzop0RA8gEgEMtN4muAoLNUErnXPktqGG4d12\r\nn6TrzhFhMLVlbOo/6+QZSqo5oZVaxI0QIFvJcTgKuz7HNIRjcVtEIAYdMiFY\r\ns3gJWZGjZI0Uwby+pIfF8xaQpMCqsFDc7pI8uluH2wbAJxxTXjo4dzV5VIWw\r\nTnDL6+UErA/lQB5RMu91lU75lKiT5pOsON4=\r\n=zpYv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCmdhklUuic3aUlPr/FdqPneLD4aPXGi4tlCCiaspYgYAIhAKf8J2f4KK6TbhWMfIFSDqhCFnW0sVyiSvF0RQ7CnmRk"}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.23_1648104414699_0.06861548425530062"},"_hasShrinkwrap":false},"0.0.24":{"name":"@asemin/nestjs-exception-handling","version":"0.0.24","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n#handlers chain creation\r\n\r\n\r\n#main.ts\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n## Running the app\r\n\r\n```bash\r\n# development\r\n$ npm run start\r\n\r\n# watch mode\r\n$ npm run start:dev\r\n\r\n# production mode\r\n$ npm run start:prod\r\n```\r\n\r\n## Test\r\n\r\n```bash\r\n# unit tests\r\n$ npm run test\r\n\r\n# e2e tests\r\n$ npm run test:e2e\r\n\r\n# test coverage\r\n$ npm run test:cov\r\n```\r\n\r\n\r\n## License\r\n\r\nNest is [MIT licensed](LICENSE).\r\n\r\n## Deploy\r\nnpm publish\r\n","readmeFilename":"README.md","gitHead":"40f2deb2aa036e74f7dae9605210272474459416","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.24","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-RJIAfkqnF/3FjMOL0dHvdWtAVBgJRazXo6JwQvTpJIlUFcSIl9QGWbCOkZkGGPW+OUEFceMtZ8D87SK8Jv/1pQ==","shasum":"c996aa49059dd975872b52f6a881005a8991dbc9","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.24.tgz","fileCount":74,"unpackedSize":235294,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPBUBACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrBVRAAnDqwkqfdnCA0bV3SWnLVulvshRlyO3iVW2OQYaQuw8QgjVht\r\nb3KKpyBchM5te52KS3T51l0084tDaKSyx+61obsYUcnjdpMoY19koy151P9+\r\nEeDpGeTuXIMsFhqSXVDX7UtnNy7axjlXYV58RGrurElGlDHV9X+A8huut1pM\r\nZzcuqxJyARmxiEdcW8dqb+uKWsQDxmOKBlUF4g9TdDLy8jx7lOJn6T1MY+EZ\r\nhoBURrxOhdm7YaCYf4DPkdeE003M5qKU743F4lZ3rDHuPv014IeuKklESuFL\r\nUaFaXWkrhSyeoCPdy4AHpyBtOJ0Y/7gEQqFOdWpuLWpLfjH5Pq3VgH/tXIKt\r\nKRHH9VEfoX5vbMMYLqhQrLGhKnnZokxoniU8TtESdNF7kGSG4h8ePG8As2TM\r\n7vQtFz+LyRSkQqVANDjLKPrE/Etk1SJULHK43hQpSWOJDCgQOXCmAocwS9DI\r\nouWrgRMQfHpOzi6DRnQ4f8XxCgjGlA8OqUYmEH18KZWV9ALRuJ83Ph4dgRfJ\r\nLHwTqqPxzLd8QIBLkAf8D4QzWTqsWSZYmKWB0etqo/BMUYPN3yLbGOMyjbQ8\r\ncd3SvLqf+4oapRnQhFFp2Iqz1SU7FBQuQWBG8uu+XjPWv2CeVNKkMPFirk3e\r\nWInoTZHIuFWb3ZR+1C2LPpQwsH0wVe9BusI=\r\n=7o+6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG0rUUf4hcp3tS3Tzb1+G6Ne0Hfc3F3BQvyclu3AJJrMAiBTQt7vhTc0zIuYd8N1wEjOvsESrjeQkJ77dE/uUbql8Q=="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.24_1648104705091_0.23313702085785293"},"_hasShrinkwrap":false},"0.0.25":{"name":"@asemin/nestjs-exception-handling","version":"0.0.25","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n#handlers chain creation\r\n\r\n\r\n#main.ts\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n## Running the app\r\n\r\n```bash\r\n# development\r\n$ npm run start\r\n\r\n# watch mode\r\n$ npm run start:dev\r\n\r\n# production mode\r\n$ npm run start:prod\r\n```\r\n\r\n## Test\r\n\r\n```bash\r\n# unit tests\r\n$ npm run test\r\n\r\n# e2e tests\r\n$ npm run test:e2e\r\n\r\n# test coverage\r\n$ npm run test:cov\r\n```\r\n\r\n\r\n## License\r\n\r\nNest is [MIT licensed](LICENSE).\r\n\r\n## Deploy\r\nnpm publish\r\n","readmeFilename":"README.md","gitHead":"b281b9c246dd563f8892d19a5357d21e006c4831","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.25","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-6Sc1SygIv20avWfnxWWXuGUYGxbmZ7tcGeXF9wvQJha8pDkoXFlXVzBN7qWYea1nRjQjfQPyh8w8sjVfVUNr3A==","shasum":"eb688ba3dc67fde8ced654b5ea47d72170a2f8d0","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.25.tgz","fileCount":74,"unpackedSize":238133,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPHDYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo+Jg//X9sO5bgqVhrvU9wDpY715PBz5S6jpbHJxriVpwIjE+CZK6QF\r\nZanJjUDJeqyRCegJHUVyuz6hL34ew1IXWqMZEdkRPaFdWJNdXVLz3QxeM99O\r\nfEamsY9rM45kUuOz2XUCd525cbvzkApljLPYr8P/srfQKzOR0JhGlyMtQV+f\r\nhDEMZvaUO+J0ztz4ZeUaJ/ZJiEobrOfILUwea7x05YuBoy6KLpuLJEkLOh6P\r\n9AFW/OR4zfELQKeKYbnmvbbR0hviV3lXlY6mjft3mWrB4xLDX1ldnLR/wIfL\r\npUnN151zZfRkj5qbM2RlHzi4q7Kj6L/j99yJWQ5iKBSHx3OMl3rvwajW2U5Q\r\nl+kb930mDhnbvfBOcDjupMqZfC1xffgIeLhMyN7pjtVY9A6enWbhNq+qjPrG\r\nLBHInzYaUnlOR3oizkjp48N1Fg4Im46Qo68CUtmxItK/GG4rHYjyqKXIkC/Z\r\nFNXAjJRUCY9RcjHvGnTog5BYsNQFGsWBe4JsHsMEEv1ADm18Xr1WQKK2JGGh\r\nQbC840YPQ6meoji21Cyg+KTXOaDhTYJRcNi7jmnZoLo89KZzfqP+Nh4w6ba2\r\nOTbvyYOASBJTlgzYq/aDS/7+mPfzTpPbRprXMHfYDK3503V/V6aK3hYoukwN\r\ns7yfZPwQfh6m4fmqen3IdUexmVyDJpaJTA0=\r\n=III6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEK66sUXbqK8X6TlGhX13ic4o3DBnvjXpVyuXseHSewNAiBeTvjLGJ04DPXMJBSv3rhmniKzCRGebQ3RO/kyyixplg=="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.25_1648128216260_0.6726166710334742"},"_hasShrinkwrap":false},"0.0.26":{"name":"@asemin/nestjs-exception-handling","version":"0.0.26","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n#handlers chain creation\r\n\r\n\r\n#main.ts\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n## Running the app\r\n\r\n```bash\r\n# development\r\n$ npm run start\r\n\r\n# watch mode\r\n$ npm run start:dev\r\n\r\n# production mode\r\n$ npm run start:prod\r\n```\r\n\r\n## Test\r\n\r\n```bash\r\n# unit tests\r\n$ npm run test\r\n\r\n# e2e tests\r\n$ npm run test:e2e\r\n\r\n# test coverage\r\n$ npm run test:cov\r\n```\r\n\r\n\r\n## License\r\n\r\nNest is [MIT licensed](LICENSE).\r\n\r\n## Deploy\r\nnpm publish\r\n","readmeFilename":"README.md","gitHead":"2de2caea9bb5c8497cc7ea30c7a7e2852ea919f9","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.26","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-HwOK+V0eAszBgyFKn/mDNkLpxh/0/x51rgodIVK3sRIu6MT0RnQV4ZcI1oyEQjwS1zIH/O4jEQBV583w9DRoXA==","shasum":"f86b5c3d9e3da520fa9280ae15b2d26ab66aa024","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.26.tgz","fileCount":74,"unpackedSize":239571,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPHkqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpO3xAAiQVTnY4vkt7Q58MADk008S+5V5UTUmCH4tF87L32w9P2E7uP\r\nGTo3zNcxr5ttlGiPS5jcP+ADYNs0mE6BsFow62nQnck8vYgoCY81nmRJBhGM\r\nz3jqWQ9tlxpzj+AyPT3AtEGOOsD/NydXiVOxvUTWeShcI4DcVSodq1WTzFne\r\nTtIOf9j3t0LG+pYkSAe2kv7yNgsK9F7HfIaqkONlxlg1T0Oczljl+81GrYzE\r\n7WOFiUDq18CIZfaxp0KKM28leGClehzMASPrO5EHk8zMM4VC7jjrwz1hSW7m\r\n/eGbDAQfmFZcompbpM7YozEvUQk/GxpIXOy7QewIMlwdJaW28pEbc3MrQlup\r\nLoMNMRVVfT1ktuUcplc0TKPyxwLfZ58TJn04t1awzOU/dfY28+yinrweUtDu\r\nGG8jvWbc4cBIoLUOBMptwQt7Dk/gaHjtBth+JRUgRAv55LUughRmBdlQiCvg\r\nJPMU7HcPxZD9hAgNEzqckbLoWrrhxn/Ie4Xb2lfODxWfBACG9lNEbGK5acMF\r\njdh0Xt7S3ZmGsUKVIq0ISlcJF29R1r03ngNMuKaz7sWIzzRMGdB+61tNeBjZ\r\nPpGT9FYAzOLNF5xfWFVU+cyKl7JuRKnZTFOjJdWKQz8B2rrIQ6T84337R6TJ\r\nUMwnGHFuVCaDKId7nOekIqW3HVMgkU+OzBE=\r\n=e5HS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD9fMdUba8qU3zkHSjVrdd0mNMCmiMkJ13bRYZAfDXNhwIgZvmwx99cINwmmOaW5XosXCPz9OF3fwsaOh0k5J9DOzU="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.26_1648130346766_0.8136330636200526"},"_hasShrinkwrap":false},"0.0.27":{"name":"@asemin/nestjs-exception-handling","version":"0.0.27","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{"@nestjs/common":"^8.0.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n#handlers chain creation\r\n\r\n\r\n#main.ts\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n## Running the app\r\n\r\n```bash\r\n# development\r\n$ npm run start\r\n\r\n# watch mode\r\n$ npm run start:dev\r\n\r\n# production mode\r\n$ npm run start:prod\r\n```\r\n\r\n## Test\r\n\r\n```bash\r\n# unit tests\r\n$ npm run test\r\n\r\n# e2e tests\r\n$ npm run test:e2e\r\n\r\n# test coverage\r\n$ npm run test:cov\r\n```\r\n\r\n\r\n## License\r\n\r\nNest is [MIT licensed](LICENSE).\r\n\r\n## Deploy\r\nnpm publish\r\n","readmeFilename":"README.md","gitHead":"2de2caea9bb5c8497cc7ea30c7a7e2852ea919f9","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.27","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-Dx6wNKCWSFauCfven1FLcgMKjUuOIq0Aji4Dg/BhtoPXO4s7Yd5ovw2MiVb7HYt7MY3WC+hFiSCW522TDeF0MA==","shasum":"c89b9c37b774b79cc2f68aa6454a8c865efe11ff","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.27.tgz","fileCount":52,"unpackedSize":139384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPHudACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqdyxAAgj1UW7HhpCL/Ti86H7E6BEESu2tJvZDzHicK5A83YoR/La53\r\ng7swGa3I4Fw/ETAG3WNOHfgprW0JSqnTeTQjINB1BeX1RYskU2Xjt5k4VwJ8\r\nakhU9CjE3NNoHNWLSrM5qQSnPMSfwDoTOaeIjOcsbRhFCONG/vS0GXOGoKN/\r\nFTJYebAq3VmYaJnKRi0IGiTVVUNGSAGqFpgMQBPcIp2hRfxatQT+AlctugPl\r\ng2YAd+OUXaZ7qbqDnkKrgyDIhXttjngktxaNQGUIOu09WRcaLlNuEcxSDLcV\r\nwt/N4pL77TGurVfIrE62R2scLXOrOO4SzFS5UTW8UYOqs1ze46mjyGw6bFT+\r\nKciA2bHk0tNhBDEBWUP1i/nnTJrohpAMYtdKNhnsMoP4tB4yG2gkXg7AskUV\r\nGTxqiN5ydwQJ9OiuWs36OAKHLea9NGQZz9Iu3lCVmnbfhIEE65bWC98/FbVM\r\nOnG+9RosGht0n7WmPebve8OGCDaeWfr7HU0oXaQa8YVLej8+IQ0xQf3Y3GVf\r\n852YZVsQrOJnfs+SeZDRuEgsIHe5tyjlXOzkKkhbpxO0X/jRRLawMR/+qrLc\r\n5iaXFMhtAFjwYqOoLxyg52YAPCmTEdzdiCmfqVGvsAqQs5f635CIXmed4pR2\r\nB1sG4dRVdlWDnFoG3JFmIwya9u7hlN3Yuyk=\r\n=By2m\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDoGLOQ9pBehyvWQpnrlVaZuwzaRBcXu7doXtqpD8SLaAiEAlhybVGNwJYcwdNmHB10Xv4ISjK3fLcVr84prKMgKcjI="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.27_1648130973653_0.8419543050484819"},"_hasShrinkwrap":false},"0.0.28":{"name":"@asemin/nestjs-exception-handling","version":"0.0.28","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n#handlers chain creation\r\n\r\n\r\n#main.ts\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n## Running the app\r\n\r\n```bash\r\n# development\r\n$ npm run start\r\n\r\n# watch mode\r\n$ npm run start:dev\r\n\r\n# production mode\r\n$ npm run start:prod\r\n```\r\n\r\n## Test\r\n\r\n```bash\r\n# unit tests\r\n$ npm run test\r\n\r\n# e2e tests\r\n$ npm run test:e2e\r\n\r\n# test coverage\r\n$ npm run test:cov\r\n```\r\n\r\n\r\n## License\r\n\r\nNest is [MIT licensed](LICENSE).\r\n\r\n## Deploy\r\nnpm publish\r\n","readmeFilename":"README.md","gitHead":"2de2caea9bb5c8497cc7ea30c7a7e2852ea919f9","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.28","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-y1HJohz1rvzsdCPY6GWLuEIxE43RFq7eyk+FWUklW4VLjk/roT6jwSHqyFG/v97TRWwIKgrMBKVVR+p0pvN1xg==","shasum":"de0c7270416af67fb46ec000df62a6e6b8c18281","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.28.tgz","fileCount":72,"unpackedSize":71429,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPINOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq8pg//YUNF4xZcEyXwKmq0T/Kx95OhYlPmWQaVPJ5IZmTmMdi/a9dF\r\ny3K9bIq+lk76vj/cpLBy/GZdZZ+32sVfaIRCZUnZbrvs66hvpsS8KWHlrCyE\r\nk7R+ul76SAdbkoUJCpxWpgqwtrqeUmpun6khAyk8RNTTOfr2RoVnlZ4kfMyY\r\nw+XaxTZwcZAECKXHVgcGvpIVPxay/YnqO2Ifta5dl8+5h+s2PFRyelMunHy3\r\npv4qlAnLbGsj6o49oxhGlMpGu7kaYoGEutJjEMoCl/bXIdwIrVLzelYmGIGK\r\nXPsx62WRSuwg9wgi91YgAIJ863EVgtF1MKvuJjMsuyLPRudKvnqU1sPrJ2OD\r\nyShOApg0G0BzUTCZunkBZAp9cJTEWS6AdsPQWRNBnvVX31CvBU32n4xizrN/\r\nO783A3tm3f6vrVYqmYp3ooYfJUZdoRGJAqpDK/BkQdsYkXHQPpsSP/vYac9I\r\ntECD/W1gKQxImi+wR9DJZKLmCNFttWvF8ZBE+ddooaFH8FhJupEXT+cV5OLP\r\n1usAix5T/36sdz3f7osGZjL3TZBdLK3vNmU43tnslbw65UXMAEIZXyXjnZjy\r\nMAtUFiNSpGnQvLEC6cz6qZ4OHyO/ATDDo+HWcIBaeUnzv29LV41x93ELSQa0\r\nAIKtmQU4FLuhQcvR0pQ3tJZGBEZPcqioPRQ=\r\n=I1jo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcvvh4aAfmiAotK7r2oM7LlhBn65PZFaDLOsKOKEUAZQIgIV/78zdu5HBJK548Vht5WR4riGexDz2B4siQKLBeMZw="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.28_1648132942753_0.5033864874339951"},"_hasShrinkwrap":false},"0.0.29":{"name":"@asemin/nestjs-exception-handling","version":"0.0.29","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n#handlers chain creation\r\n\r\n\r\n#main.ts\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n## Running the app\r\n\r\n```bash\r\n# development\r\n$ npm run start\r\n\r\n# watch mode\r\n$ npm run start:dev\r\n\r\n# production mode\r\n$ npm run start:prod\r\n```\r\n\r\n## Test\r\n\r\n```bash\r\n# unit tests\r\n$ npm run test\r\n\r\n# e2e tests\r\n$ npm run test:e2e\r\n\r\n# test coverage\r\n$ npm run test:cov\r\n```\r\n\r\n\r\n## License\r\n\r\nNest is [MIT licensed](LICENSE).\r\n\r\n## Deploy\r\nnpm publish\r\n","readmeFilename":"README.md","gitHead":"2d9d4ed7ddfe6fe03fb1d9db03820effbc353ad1","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@0.0.29","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-qxxSfVNGyvLL3mAYd5w3n4XlfzsD8iVwFIcHnGEL6RZB7hlEJDhpa0I9TlWlBYklhG5WmXCZK2z8QiSvh90M1w==","shasum":"a6d70da11b062812d078497a699676813eab59d5","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-0.0.29.tgz","fileCount":73,"unpackedSize":76728,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPb5lACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq/fQ/+McPX5NtqcWbMzrrilah216toePAVE6sJpZ60X+E2cB74SAyY\r\nBAM8VXUMuw0JIcHL+DDemvcLFPDcXpAGvnszdHKFQb+/lWwNK3BzKp+KU+gi\r\ndlEBWjlFXBxdMZHCGlariypZCgJ35cEQo4/GbEnyySSojLkxe+p2dVWjohEG\r\nwdtw3U4ehjVYWdg1yRbvgmVx5Uu4mp2Ok5D0jQORHX6zdDriLUleCRz3FWLe\r\n5dzTyAHGhFD7qVTdiQFxZa8010SH/GkKTz7qlsljXjAD8PoBmz4hxusEosna\r\n6jiaXFgQB0d5aOHp7Nvk8ToVNAltSyt3nF2jh/1fk+pkHSTcqz1ge8H35PrE\r\nWrrdlFcNX3BzhjnO/+39sSmFKPVFDpxmgojoGGdlcxn35slE/RpkDqOEnz6Y\r\nnNA0F/6diWlH99Kii8SPB9EZwT8oLWVCZrT8d5wNl/u2LG6QuzJPRKurKkaU\r\nSf2zmJoTsojmAqq9jKHEk3tUBWVyrYdBoU3jlXd76fcDbXkSVg2DrYMkQatK\r\n4uWGOuYlGeVbF10Plg9OWiOWGpB0hh2n5xUUg+jkrBFvovh+9IkVZTnOrNnh\r\n2uDNEQEZpx0tcVKWH1yMt59194MFbIitqobuUuZzgyRrRNAgkoHsEqde837i\r\nHGFL07oYPArsaGeUmv5srB+fM3EZ2Dg8VEw=\r\n=X9FY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDprQU+LzLmT8Nc0EMBQbhqY04rSfNIu5DgzUZNaCUAagIhAJSfqHes1kcpUBXzAlIkGm+Yg6Gbe0xepZmmP9dzsJ4m"}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_0.0.29_1648213605353_0.9081089939554314"},"_hasShrinkwrap":false},"1.0.0":{"name":"@asemin/nestjs-exception-handling","version":"1.0.0","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n#handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n#Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"12f60939e8e704d4f0cbea3daa0d5dbaf5feaa0f","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.0","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-QHLnIwz7rNCgrZ+hvUPBhIZiwX1x49tfOifOiZQ+UVhzUM/QBdPvbZRMQRSObAxj0sLCTbCmTponcfGoeVoUlw==","shasum":"a49b8bb4000484c211e17fc5ea2d17fe0cf6faa2","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.0.tgz","fileCount":73,"unpackedSize":78435,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQJckACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp0Zg/+NJpdgjTjKTprlUSSx/XCp2ZzhbUN93rqAdCIMzh9ljR/N9cZ\r\ngVBCM3d80FZ9kqniGWdQDfT06aQ6YRnUq/93Vv4hSpmvprSUY3wlShWsBJKI\r\ni7VPubqa7BwKMQQXzByL+kPqm7mTC6ZatGMaG+7LZUPqV1WH3UoSegrQcyRR\r\nsWwC6cwaEeyAmpsWMy1braQb8mT/lKecqaNGZzcweelv/D3F36ftzNptHwyS\r\nTGgwEsRy4txzzXA/7m7Rdmol5LR5TW1Ft0Wa7YftNt249ur5cXlx6nir2CCY\r\npkwcXddy5p0MEUSgnRy84CEwcu9i1PnYWnY/mELDZkKnwqHCcR512j9Erk4B\r\nhn4O+J8BEoySUcl+Zje2TgF+uUUTO8VcSkCCROxbpRgGQ1Wb1TA/4YTF2Z8n\r\nTuDyL075dpjOzdTjIXN9zABz8kItTuvm65RMKglvyc4I1s8R/DYUejTifMEV\r\nP0VmI522ShcXEAlgEY9I0V1pc13H+9CYN6oWHLtDYjsvN9P5ISm6O/JSZyW1\r\nwmQJpAsUn1nvHJhVnPDFyo/ttECzbd9hCVZAp7yUgPQ3JDU4/f6/bk+hCklb\r\ndkb0kz4KSkOO6M4gWxGohoAFXEwIRD55Xv7qyn/gvOrms6pSJKOtRVMTF9r+\r\nrMZ5+AFFipXgZcXZfAll3+oFKX4Qf9ngDKQ=\r\n=n/WL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCXpUSrgsaBLTyChUEkz1gTv3UZClojgxpMBihhXHcCAgIgGTHGv5tctHDnzo8dPPUZl3DDf2ZO6Gx2Zfi8V3VR7zk="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.0_1648400164151_0.8022190648001277"},"_hasShrinkwrap":false},"1.0.1":{"name":"@asemin/nestjs-exception-handling","version":"1.0.1","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"peerDependencies":{},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"12f60939e8e704d4f0cbea3daa0d5dbaf5feaa0f","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.1","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-EZR7GsGFsDpSjdWeYefThveUcWXVPgakUbPVItDjvEbEveslHr88pHdZRuyzBV3nBkjYNoGRANQiYm4/k6NMwA==","shasum":"2462f2d9fb5c415916604802feaba8a97d6bf18d","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.1.tgz","fileCount":73,"unpackedSize":78805,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQJq2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoKWg/+Lz7ed6rL7xR5TuSN/pMfxvXyBUAWac/NBDhlzMaQ2LslE3Dy\r\nsfxyK8jHHt5Kae2W/jTRdHYbYbzsFKHMJk4mW/+S6IypKfuqgf8BV8rIq/IG\r\nmn1dyUEIXnh8b6GkGpKM64vVgp5woFIX1GaqRYNxJVZUsI0GfMqG/n9J2cfA\r\ni4Li31YZ5Tq+ndY+vMKqfwXVGUpShwjyg8IOTc0/zdrnA7Cmle31muUFlEhz\r\nUYUZWeQWv5hGejD+qJ8yW/kE63agMPugFmthxXRIT35e50WDSM+EmBPVNDxb\r\ngcMIgYazmC2xA7QmFGo2pGLmwcFvHLpuWfbsNPsQ/3GPnE3If9f7BG0JywFO\r\nbeJqpkoFtquSWa3nn8B+dXlkqf8IdtEKV5IjshU8Nv25avM3qQ8PYxTYc+P6\r\nU6WnraV3VmvNeylH+MSbFsAgS3vlN93lm3YNcMTumAfFWlilNx5fNP0p30rv\r\nZBKB8qyqNTLgO+AXsslvhYxouMnbrJ6Y1AjsXcKLUf6NNvYCI7aJSS5c6gEC\r\nIzwoJ6HdeQyWP9MGFF8wCQMMhEiHW5T5x8ngHpNEHuVvQKjD+CjKZJhxPLnC\r\nCB2QBoqh98mTILpBGd9EpILBA+kN95598yY5eQ6Wc/pUzgf5/g3hR7AqepC2\r\ne0iL5q6fn1yLv1dNRHlwFTIMuTpCTWjm5BA=\r\n=uvc5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICgBbpru87HdansuCYlizB4VoMB1EHjc7y045vOClXONAiEA+XesZ+6tarH4PVR2oBo+rbr5DtYB5yL0JVaCGc2E4Y0="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.1_1648401078529_0.2779505108868223"},"_hasShrinkwrap":false},"1.0.2":{"name":"@asemin/nestjs-exception-handling","version":"1.0.2","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/error-codes":"^1.0.0","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"12f60939e8e704d4f0cbea3daa0d5dbaf5feaa0f","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.2","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-kxm7vr8Ybmvuh98+IhurACCyFbstz0pvmqRQFS7TPRFa4Lm6fOqtIdGIOnqEFn0u9wt4MI9hzLBRY6Mhosx7IA==","shasum":"cc6f1a272ac577ef21972f29b8576a59b16e7c35","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.2.tgz","fileCount":77,"unpackedSize":80235,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQd02ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrzLA//ZUjaTzzvcSB641Qx4tU8qt/TJ1Ee+eoFRSR2Ne9IH0v+rT6p\r\nh3ML8IGOxOX9M3+ZrC2aW3a7gtVHh/yp/XpvoJibrBA/oeZKrVDTmODUUQy6\r\nxHE50Lrt8ugiGc+nrGy/BoyDbJSRstw4EEGzuiZKeWEAIzn0tHluaTCBtYUf\r\nNMZE4imwElVidyLv+G5ApAspCgNOaTdWpy1MRfy/diJ2vn8CoDFmIz/7MeK7\r\nZP8YGOVTldHoUhYvu/AxIradQxx3FfaBeBPChQ7t0OLa57ydaQhyN/1EOab7\r\nvICt57i5W1c4Q9AiNWr2A1uRmkWr01hwmikq19ydGCtzfhQLvgTKtjiEc1HW\r\n/44gNPzClSiUUneTqqqOQ3TDmK07psCmOa3TKHNPC2aaLaelpEi6vDJMF7p/\r\nlhZJDkLo6RsfQ24eja98d+UF/nc6isr8klK1Drew4oDb8B0OgIOmqBxxZ1XD\r\nIqOkEXfhGBijgP2Xn9JotH3v+Q123Hc3bJ6W6ILGaHQ5reHG+1KCohaHYSHz\r\nKrRB0yu7jtYcS231XxzXvrk5pzK2obj3xuUYsZmid90Onk7JLZ0zmsaRf9J4\r\n27+doOg3yKW4K290L4xctVqlQLmdLesQmDj57b612YOoY0BvRKUR0CFj/cTV\r\nIcMvRejXNTQsgKigaT7BoOIjWIHkT1PwTFM=\r\n=vxWL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDOeD/itn/UTbe/y9iVDwH9QP944r21aVdrS4gsfeZ56AiEAucMOYz0JbED8+RfDpnCoa6iCx9cUF1NGUsztNyoiz1c="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.2_1648483638113_0.07495827528760168"},"_hasShrinkwrap":false},"1.0.3":{"name":"@asemin/nestjs-exception-handling","version":"1.0.3","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/error-codes":"^1.0.0","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"12f60939e8e704d4f0cbea3daa0d5dbaf5feaa0f","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.3","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-/OqHlcdCW5uOLKB77WXkhoqXyHjUNZDVGERhmOmy+PPBEgUy5GpRVDBOhHKLo/WcARe1sMwzSfrlli8Qk05AVg==","shasum":"cf59aee92812541d54e91f8fbebeb17ad229962f","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.3.tgz","fileCount":77,"unpackedSize":81256,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQd85ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrfgg/6A1GuJDT5lQfnWD+Hr8WLFlSTH3+rS3YYMv3ZWyMNRqGOO9Zk\r\nf9Sfl60J7wdcRs2lGB4GrRuowth6l1xYBaZtjBOjdyPz7HMkEevVdRE2bmiY\r\nYHY+v2kgGKQrR6RDW3PxFin0pp+Reud1kFq0d28qD7HQydq0CFlxNQTmOeHI\r\nal2Zz/iUFA/P9Nay+6NVfq1v19ih8Chg+ExK33e7sk/zi7G38i+vlKcZnnxx\r\ngXlvPt+Yrn3+leHXo0Trg/ivhn4Jl2tpyZpDSEIvPvrspRRCFUE0o4q6R30i\r\ns1KwS8P5oKPoGTXW0w0aTNghEELR199U5zf0sB4KFBnff57haOElB+u1kG9W\r\nnixuUJId9H2p9kPCBLWqNZDnN6+3eh2FMcAX/Q/J5DkDdEeYdFfiMkgIGf7S\r\n9f5Lh5FbGCBuCnJkaedzLvxUvmeOhVu4gMkkmMe1FRGRUNFFEgjrRHpPHQCi\r\nhHCrkG57ei1tL19QQKCzaztp9KvmnBr+1Xlm1m75e0uJj/TJdcXyGFgtvqI6\r\nb1zpw81ekJWpWQkx+GB+FCizCW37trIaQc97Bq71rGI3kl7ZqDlevD6w/SYz\r\nJIS0qEWkCud0KACfrKhJ4VZFq2R4AWg+sWE8ihRf3KJQLrHcudcuxOWdAA0f\r\nOX2u71tA+xmoiCrwTZzwByHlr+74FZ5NgQE=\r\n=WvjI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC6372StFuc5PsUC8BO8Sq51PK9m55Ckim9QAoSlSF1iQIgTiQfGNgh6u84olvPq/YOdEXa0zr5DJ00unhbeMos8IM="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.3_1648484153095_0.42593159095911504"},"_hasShrinkwrap":false},"1.0.4":{"name":"@asemin/nestjs-exception-handling","version":"1.0.4","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/error-codes":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"12f60939e8e704d4f0cbea3daa0d5dbaf5feaa0f","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.4","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-fHGXVYaV2BLw9zz1oM57RxQp2GvdVeVzhFJZl2+VvuNtRNHwaff0oyaxVn3C2JbHBXQcm4BdnvVNL3Misso7AA==","shasum":"418ae1a6a9073c10b9b90767b6fe6419b5870061","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.4.tgz","fileCount":76,"unpackedSize":80881,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQv2cACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoU9A/+IahMFypm7QFSzMp7Ix+dV1eIA2kKhUwwkre7C9cOUAFaBrIx\r\nYUFX5ThJarL9uKA+5ph4oAj1g1OyJqnbFvwlx4S79H92sz07w0Uy6MnWTs6y\r\nm+/M2s3rY9lFcEUhnJil7Cs/f/Qjzq34G//SbtdMJy9WdPX9Yhlzeum7/5ze\r\nu4mpA00j1yj4nSMVw/FJ+IgEPxHw8U3BEpJCEBjZhI9s0TlbI3vmZHOa51Rg\r\nNsnCvmy+obN/a3+Rev5UGh5//JnYLv6eLwHiO4qGhpYpNRc58q3w4tKCeBBO\r\nlgnIuxIdM2Ky+2lRmToLpZv7rEBfm2GVbhQf8WCoTVXgpP7h0PKJiyf+joDQ\r\nXc2RThnLHix0UwhRF3Xp648H4eKv9h0+zJgyhKkipBheD4EnZ+B0Cx7KRdNA\r\nCrWglvk8p6QABYjm79iuoaoyqPIKguUsScN3GtSrJJo4WpkB6F6Lv8QyhG55\r\nguWhUf+OcGWTnTbvmrfDW1HvZZCc7BtXcxFsknlKQPNQxt4Bnk1DQVEaZ2V3\r\nRkpHHpvk+AKEAjWZHBmH0MNzxV0ORgt58samJ4D2vITJjrV1QwuKavrnMMFZ\r\nGXF8B2LkZ4LbLAZIPGpgDsQ5S+5+gRTE918bLJwFkklPOZ5RKVpvNo7eDZMn\r\nSdT5zaCdTlO4RGrcuiZTRNUBQIsgpKQJKfg=\r\n=bfQT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBfxo09aG77JbgLCIRaB7rtSJ7zl7w3c4xXO8IJLmQrnAiA0DMX2+KM1GWwhCRSCy8GjkH/BPihhYgTiemXKSrCTDw=="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.4_1648557467989_0.7635645072208064"},"_hasShrinkwrap":false},"1.0.5":{"name":"@asemin/nestjs-exception-handling","version":"1.0.5","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/error-codes":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"12f60939e8e704d4f0cbea3daa0d5dbaf5feaa0f","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.5","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-dTSRVxfKFxbdcfK3zgWjDDkI1CEGq15HC6NxHtz56w4PF1GOI8rg3MjkLHEsm3xR5OR10X7EfOIKt4W1vLBbGw==","shasum":"0267edf92ff67973159bdb2e62155b75ae4ae080","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.5.tgz","fileCount":25,"unpackedSize":22117,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQv/2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr9Sw/+PUODWOtRjeNEqtvj5ZdgEkwOj2j0NjL71BPB0EC2sZU0Ntu6\r\n1T/O49M2jukSsrF6RpR3V91veS917nF7A7CgFFn4s+xzJm187IPPLbbK6dmM\r\njOA/P437nrvzCTC3Qj9Lwhhn6B+lca7Wbd0aV+QNtaJnxEgkFVVi0D6Iw+hJ\r\n6FPVAI6MjqtP6HjbMM2iZJHmvdGnY2NQagZkAGpBrjUhnppfdTLBgL0MAP8E\r\nNHkYmrRCEWOgeet2Z9J/VKBGuher30SrEDYt6lISSWtbxUXjqH0XTT1RUwgV\r\ne2Q3fftaZ7/RXXVzTVlWZRWV3H5t8Zz9UuJsfCwCyRZfwCPlC6R8vRSVcEBX\r\nb/MmnlxIqgW9lwk3lmHnJstmvAkd2KmqR6O12VHojEeG8PvIrsBen+JhHxFV\r\nMWgFJHq7TGGGJnhgjXLIllnML/3F03arLWyW+GJMmMZ/Se12DORLAB+1ZsCt\r\n2aI/Y3wGWMKrPlY4Ikox80Pt2Eyzzoto1AEa5ib+VzTJTC6z2/SBNOh1i900\r\n2d9d8PGAB2rI1NMX96xvh91dYZE7ybY1daOz1y7kyYQ0YuEhRtPR43yLJ7Se\r\nnrefV8TS80g3qjXS1x6Y9HgSeHPJP4viEQEG8RLk75rTDPuNGTsZHDAybNY4\r\nsPSm7v7USrSmgqVUrCTl2tcAzZNRNxRFaTM=\r\n=oIU8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDrWciLc+F0g6mEOUXnE1U9X+Hv14QXLKkv5cOgI8dGlwIhAILSt0DRlXuENkScrQcXjszChK+yFRBrLiLD5fNxUOTL"}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.5_1648558069982_0.18680358320807944"},"_hasShrinkwrap":false},"1.0.6":{"name":"@asemin/nestjs-exception-handling","version":"1.0.6","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/error-codes":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"12f60939e8e704d4f0cbea3daa0d5dbaf5feaa0f","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.6","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-DWhC6TbhUH+KMCU44yTLk1eadMKlYzJnJMGMSHx0aqtqbg1sUdilHO/edYKQ12PRiwRlnTmUbCq5v/tMfgaPHg==","shasum":"a49ec4c9dd439be865b2de2a839566d15f0a3a28","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.6.tgz","fileCount":60,"unpackedSize":41497,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQwEnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmouMg/+P/FwTjvhOhYXhw8FUVJfd48tOZWuGnyNFZQASs5HWfDdbHqP\r\ns4u9OF7zOAlNgUa/rY9uI27BuSeStJdyFE0EwaYHAt92DvGtzcpv3T+6ldcM\r\nLIA4wD+NxTsUdpilAqSyUt0stCKxrZIa+CuNSMFFiT1QOz/Q8OCsfEG8+U/X\r\nCHbvosi6ZnxwzAXkUVRyU0Zlyrw2iUv8TNgLrJd/cghXLm65LSEhwFeCBbVw\r\n0+w757a9sr7lcCLn18pACgNszwzXMbmY6jdsGuV/KvkAtsbYxNIzgp2HpZ91\r\nF5G+xHGVy3u2pEvLV3cwosYlXW6Geat5MgwX8yHq/Ryhqkc5t9NCf49v2K32\r\n4WZiR0k673M2BIV86REZKvUuJWjP1nvTJQ7M8zsLqIk5E1+MFjD+hC+FIjTR\r\ncjzwD4HtFfrBLevdp7jzY3iEUkvqE74APgAuZKrJ+hxxpKlFs19XvEgduCpv\r\ntMDYdqoSAFKEagU8NVoJqh8MkVaSLU1ehqXNWpb8tl3lj0DmWdmPtaVMi80e\r\nBwPwG+7bjBP5QJrcLlhVmscLaNYxnJmw//gaYxpUXVj13J36OiyiIL7WID5H\r\n3Qlz3eUCgZJiImTC6nF8IkKzA/GzOW55stqRPTn0ElIVM2nF0Gf0CXN2pZYL\r\nnWJZlChHQeaFXomUkUTLFNDyYuwi1HnFaIQ=\r\n=5tId\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDMhmPh65QPtNoEvCjT5v3KeAzvampuGYhxv60/dNTlqwIgS3xL6GEE6anLlujoWHmRdkCwU8QDdwEyh4vyYT+PE/k="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.6_1648558375102_0.45264201353210276"},"_hasShrinkwrap":false},"1.0.7":{"name":"@asemin/nestjs-exception-handling","version":"1.0.7","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/error-codes":"^1.0.7","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"12f60939e8e704d4f0cbea3daa0d5dbaf5feaa0f","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.7","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-a0y+tvYAEPyV/k1rmue9E51JatMBus1VC8cgaZRp1j6uI4JTC6z/w79BolHgvZaIDzNKMnFwNn7XlcyyZiHxNA==","shasum":"f1b18d3ca35501b154962b524d06a9c751f7db36","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.7.tgz","fileCount":60,"unpackedSize":41497,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQxjFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmobYg/8DWL4OSIRJobieOs0OtqamW31bakZh0TNV97pYPIh8fCzD3uM\r\nV28nllLxGBC+mLrjnEVE7c6hErNeDKdOFwmJyrEI4AGS0InSBjDz7Jsr2WvF\r\nsO69nBKmwxfBxZFclhwATyEpqM1jjYmo7ElQcdAAtr0cWyaycRfZlW9Z/Ikt\r\nw/KscxNeKE2gsisBnDkFVraQ1rnd3OZ9nd2uCvAqPwfVob8Sio7x2Lr89pUY\r\nrh+azeRBK6lk5Ddz7okHp9LsbDrqDOsqkIO/d4GiPn9ygt2EddULVW6Yyd4S\r\nykCmEGxQ+RRK915G9HnJZG89+aY+2zZMTVjsKCMJHtHAjRODA1ZFc9+xx1tj\r\nBTWmhSQhUkBZS18r/ENraUtO3qrohbJNNbwNfH/dud+kdKboZkdn2kvNiapl\r\na2/+MvyMD/Rj//X9eQ6OS9P4G2TNk8G6GE82MXXlLVEofTySn9OwQfsqpOZ/\r\nJsWVVF23oZVGk1GbiOK/82mZBmKIbiIDFkzlbUG1+y2hGjE3WjX5s6YaEpVm\r\nAcFkD8OPw2pdBHF62SEjWMh0jpqFFOiTrFORhSBBdNAWqWiflEYKAfgUt9X9\r\n59G0+BujIW8KeZJLPa+l7XtQXxDKOSPZxBpdS5FrxLNIYBw18YmMHjuRyvb7\r\n8/H8uWkgDJcp3Kbdnfsv0dW1Qhn6+MebAuA=\r\n=vCmH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH4g5Q/+0ul7luPibgenzfi7j/7ufKIucCYnYP03sa2vAiEA5+r9cH/ApqEo8e0NZ7fFNfDc8BplR5NyBvmOtAipp3g="}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.7_1648564421524_0.6967851707104482"},"_hasShrinkwrap":false},"1.0.8":{"name":"@asemin/nestjs-exception-handling","version":"1.0.8","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.0","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"12f60939e8e704d4f0cbea3daa0d5dbaf5feaa0f","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.8","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-e1UBEWQEoqoCjEySJMaMebbiB/3orKovtSXpIn0IyfzBnpycKrvR2yUnLyZgVWNzJK2qMct8pbr1m89zrSJvsA==","shasum":"fa2e5fe0a63d33e0bb03221b8ae544d94be047f7","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.8.tgz","fileCount":61,"unpackedSize":41915,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRB7WACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpoxw//Ves9CrtaV5SBe1R5Po1X8npetPmOkUm02NUplV05thX7z7Gv\r\nGpA07mxgQ8QyOn+pc79cYoGM34DYQivkQqs879+uhyQxbmog36ylM/u0twol\r\nuUgrVys5eH4SrVcvaXNvoe3NFBKWj0ftLHmfTZlYNggaxRR7DdC322iQjWWS\r\nlqIyA9Av3jRMz2Dt/n4OxlIT4wTuBh/sE73OPFXaf2iq3q4C8LidXcH6GD3K\r\nwPhVHHtIDKQ8k7dbBceAjTjygqKwiJprUu9e9X25G7zXEQTtoZUltTP132fb\r\nA2BjgF1ngsIi8OWJaqd/wlgZMis0MDIropFqRteoon18PRpviCECCUPtfcRL\r\nekazaR9Uo5Sl5xB+VNoInvU0scc78g+ILVPsP8iW5r1o7HwAjqw5FD0c3ywx\r\nT9149oda/hyZv/jvnA72R4spuTnHPchNLH4U/f2jSlcnDV9jnBgyRsCAz1A0\r\nW3z7NSJDXGzi4psJROunaH0caOqob2UraS9xTi22iyicCrs0qtjgSONoOA12\r\npk5FdimyhXVyVOkYf04SSPmdOzkS5GInKpTomgrCBY+R69MQ/vtapnwWTgtt\r\nCUz6RZD9zDZ0t7QO1BlhnzH1K929zIQ6GX7Y5Hb2pa16I/Bm0qgNf14lj3VP\r\nUDhgnMutMCNUzflqOtzikbnBULuk53HXFtU=\r\n=Fj4R\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC15HdJ/Ix93LpJ+TvnLLClpWkgabcUGynxVey60ffYEwIhAMUwGP1wYlLLV+e7mLQaM4XCJKslQVn+p4C8b4lsualz"}]},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.8_1648631510676_0.3011849628505434"},"_hasShrinkwrap":false},"1.0.9":{"name":"@asemin/nestjs-exception-handling","version":"1.0.9","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.0","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"e60af7d803166759d22a6847336a27e117c1b927","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.9","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-apLNCjMIMh8UaMfZDEZSWDryhSFkYIxRrV6Ca0bW0i00xdysqMaclAKPGAMyIDkcIp5GjAkCboJvZZKEqGb+Xg==","shasum":"0b99bdfc425f5ac12578afa823f3de6c225baf1d","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.9.tgz","fileCount":61,"unpackedSize":42690,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDui/9ORn2pFo82u9oeYTgXu2mua/jmBdyP6FvKN+ZhnAIhALdSemROiiAc2jMqYGa5OePRCEZiPGds0V67c7kPDMLs"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRH43ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrbGBAAjNRVVtWcXaU7kw/MnSzZGU6BBNRhslu3lMG2YLjVYVs9sR9q\r\n0AEpm7u3y0On7o6eiGOpZUHj45XfP2p5tBz7HPZ+jtmz/gFhnlIITkArmQ1J\r\nW+XNO6mrS8/Wo9e8+xYLGBD/Noi7mLm/HEO8T6MWT+bMhrZwaTWWBfNawVth\r\njCCcDmj+iLStcXuXAkBTj+kQbXl7w9DXHuFl7LeUid+EXmDj2cmGq/n8WVjE\r\n45duifsfI0QSu6X/nwDjpBvEaeDh/SlC3DAE98YhvfWOI6iSR3bGf1Oa0m0O\r\nn0iJsPZsdTnRQ9YbF7EbflXnUJWiHCzwYInLeiyJdFy2gzDneQ+076+bbRHe\r\nx/csgGPp9FIaKE5ekKx1kkqGb/mZOrsRAu2VWFqgES7NHBQdlFE3x/uHT7Wd\r\nDma0iQ/p6G9lIQfGFhzgfU6RdCM34oGreehRB+YQQUQLiYIVB/UCVWIvGfAy\r\nQ5Zn0kgYwJdDFw7nd8E8GCwqMqRNNQYVnkWvls6IdEwN3yVOp0u4ITkTW+aQ\r\ns1Ch7UeBm8tB3KmUGa0hHXFsyrWg88Sh7u2nsa+ffbHm24tqTvIMQsltbiFl\r\n1rBzECVFyyc2XNjFcZ+KEnnDqTkmjrqYxuT1IcODAPOq9I5y1t1WBe9I1mw8\r\naLQ7wCyNnREiizNSu0PjTEIBeqPzBgBQhm4=\r\n=whLz\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.9_1648655927393_0.022412426356953397"},"_hasShrinkwrap":false},"1.0.10":{"name":"@asemin/nestjs-exception-handling","version":"1.0.10","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.0","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"e60af7d803166759d22a6847336a27e117c1b927","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.10","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-r1n84KaSyvBq+KfqoHfNWkgGq5xO9MBNWV07mlGw9R7g/1kU3nkPFsodzbl+Jlk+Odkwb1+PiZ5TP4NaVwHhgA==","shasum":"e9a03f41d538f64db9fe2dc6da4cdc7fd280da1a","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.10.tgz","fileCount":61,"unpackedSize":43171,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHAnOjqiRjOPz7rZ3fss4fbL+j+1Jkim89Gtjb5WLqaNAiBSmrTJ4VWzJj+LpqPRXVrA3Jlxv80CgrxgcKPThVgtLQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRIExACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoQVg//dM+Q2awAvSm51JDlMSUElTdUmxpvKjZYSX+5nLfHsdXNCawS\r\nPnAE/Q+DtxdRtNs/jgHQvguovqRBQZglWaV6akFL+OkTyuceydsxWXeImK7+\r\nx3tlaIwoy2ScprhACYerbTvzTJ2TrfdEGhZF8dUWPNcHv/0W/MiwTaWqMmIk\r\ng6XkwXxQSFWQic+/gdzGnUeWZgBWs2IzCvC6lcGt8CY596r3NBN7TsBjoWpn\r\nhI26fbHgUhGh6dMvQ7X2KEE5G/OxAD534ValxHlh9TYQXPAnon64AHQ7u0tB\r\nv4lLT3maMPl0yj19RqY65rVlDpYWgV6cc3pbC95Suf/6dQXfvMeXgDQU4QnU\r\ntaH2VgJDIAObwq3BQJP8P5Q4DoQkmnalPeif7kJVbHm0AEVDbvZGuvgPq0oL\r\nQM3mIX40PQzLXQddv1ZkQloowaak1Y/2+PgQZt/eWOqHBqrphBZNMXLJDLWp\r\njWffTJvDGsBqBki3GbDPdBmCVpf3leGNNLVF+xEJ1UflZUA7dgzG80oZQYYI\r\nXIZSiDgV1k+/ee2j+KZMmPS7gKnwS9WYX/KKrWd9c5OxDp5S/NNB/Tm8ZmwS\r\nLVGCXcfysQaCP4ZIwWoY82gonuBm62gYfk5UFYviNDQnreC/rnRYbw0eJxiI\r\nPHs+gGXcEVBsuqYznr2uUfPs56toMJ3/YJ4=\r\n=3i3Q\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.10_1648656689375_0.48951133096988353"},"_hasShrinkwrap":false},"1.0.11":{"name":"@asemin/nestjs-exception-handling","version":"1.0.11","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.0","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"e60af7d803166759d22a6847336a27e117c1b927","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.11","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-sx2+pDdb41Ym/yTVic4lBNzhv8LgoyyJv0xX/JE1z/i1oOz+/CAMSt9WIOdJNuLvwVm4PNtTggAm1Kat8drfVA==","shasum":"b3fd446f618e7ffdee21f6c2e545edca4252509b","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.11.tgz","fileCount":61,"unpackedSize":43409,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDCkRE8N7gabsb3gctrp6lNUU/6sIHw71WqMfdX4Rtb0AiBeJgJxX/S9wwKJbN5k9oQRuDd1g+uYg06nfR97f5okJg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRIHdACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqVuBAAk5n3VErtqHFajD5cHm/5pO5doDBgqalTiHh3W+4Xeb9HSr3r\r\nfR0m2vgj/X8fNppQeqxVm4UuFAy6dgnWV7Uh9iSrNmmSu17tBxx7ud0ZK54X\r\ncfHdDIjEP2XNl6ur1wcuIektX63FmeFmunTucaQc+ozQ4o1LnbMZ7ydx+SZ7\r\nguwxqHaDdDiMriZ+OfOkygPOZsVwbW6APJiPByGpjn6L9UW4cYartAZv1Zma\r\nnW/IijrHtJb6JaExl6aA/NHm5BCgEkBrrOf4pXt60ah2EpdzU/2v31BATm7+\r\nQQp17Ywd25JUWvJ6e+SNQapsk4bggUVcdNMxG8vS/9wyztRxamwMprEUgUJF\r\nCgGu775evm+twfyQYNPv4zuguljyh5IsieQKSq0zkGAEumCianI1ZPoQoK3G\r\nrCF5btWQFq9VygjWpwodo3bMB2R1NBSQ8fPutComYw7QeuQ1WwwjDlBq7nRk\r\nBp8QmVUw2tMmSYJQR9S4F8qxOKuZe1CYS8x/YsoiBPfIuWpSV5BCpbgLXhXV\r\n3RFlepZfMmxgN5iIUvcPVHTwPmzoYBL7iff+8LEdeRxm10zAUCNr9uCHjjRW\r\nnv9oK/rK+p35CmtORw+rxbg8Odkuotsw0u2h86XQkaIY2Uy6aRwVDgEasrsR\r\n7wHycBbDI5FoiivvsnBcwJvEEs4SEdZQQ00=\r\n=rfcO\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.11_1648656861541_0.5615894870949718"},"_hasShrinkwrap":false},"1.0.12":{"name":"@asemin/nestjs-exception-handling","version":"1.0.12","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.0","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"e60af7d803166759d22a6847336a27e117c1b927","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.12","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-zVkFDWiLlkocrn40zUFA3E6ku8HOZ6PTBmmD8HPtsVn6ZPV2zNJfPUsO9iEg+gko4aEf78TFAE03SCLFXCf2uA==","shasum":"ff754a2158631e5cf8dcb4fe2dcaef18d53bf5f4","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.12.tgz","fileCount":61,"unpackedSize":44217,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCR0mZCgPKLgwBIRDS+1+ZKdHomePVuH3LVlykDac7GCAIgDbbixcHk9NXAMarHXeavafiBAB3zOQF0LT/Z0EnkUok="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTB8sACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp+xQ//RdvRh5GN6jsb0RtieWpX3dQbsQTZGIIWFNLK1DzXxmQVgZqZ\r\n7mUA7uRHR+Xm7XPGJvizRgDtpkrPVX5+1sYkk+/akiE2uXk/1bxpJk29S9oH\r\nnXTIjnlY0hIdNo3plqxEUdzNWUMlSofLhzdXXuVeIYnOu/W7/ViAs80j8oKb\r\nK7f/yyn4hpUXzp83sDu9yVl0dHP/AdgjqL7rv/i/iIGvWzK0ahCApWuq+haH\r\nkZFs0E+D3y6QRxckGO0vEKH3WfRVUyCH6slrr6w95sQagPumcFRRJhU78dkI\r\nriRsNfBFa+zW6W4kq1ozR2Ja31uu1PuwhXjlOUnZrzMZnDqEvs3QE1UUGT4g\r\nmSQDzQqDA1SOPQFfmQr6ScvZ23Bg/H64vnWTqPr2xPaSdl7Ygh2OPsNwp0Zm\r\nSyA5HJNdhc9qBRtCwbwZI+2wGFwndv+T3oOUt4bMOJa9KVWOH3s6oyhJWJ0b\r\nUc9yA6dfbBJBB70Kh4EbXewj08x+hvbwP3apYXz42UHM0g3MaE2Juhe2LjFz\r\n/JzxIVWJ4TQZuafMMKmnpeReCRgCZPBowuxNaa9kcWFhk2WVnoIg+gPrF4UA\r\nOTLwOhU0u3reOCk0mXZBD6pXuX41YuQwUxCT80pGYPcjoSo69cJ+LaO77N0v\r\nIpZ3g9D+M8VpgKUD6kjVhhWONrXxWfmYMFg=\r\n=AGcf\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.12_1649155884199_0.9258420322009271"},"_hasShrinkwrap":false},"1.0.13":{"name":"@asemin/nestjs-exception-handling","version":"1.0.13","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.0","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"e60af7d803166759d22a6847336a27e117c1b927","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.13","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-/+ITG/Hqey4fwJggduKeTYJ9vXggB66RZQcB5FnUmDShdZYN+ai8xL/UEwK1WOptDfv9T2XQcCng3IYkwqjQIw==","shasum":"27bddcfefa9f1e55e319715e77c79a56924d6738","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.13.tgz","fileCount":61,"unpackedSize":44742,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE8WUynDRtDR9/0hzUhezACT0guyX7Hpk22k/Og7GFD1AiBW5/iMZVakhSKdDfWmJ64p4OPxicG59cvgtGohum0gdw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTCJ/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoqDg//Wc+Dydj7VOFSbZ2sSgGbfJHphGfOYU39fferxeP1M8TlwdxZ\r\nqxIn62Z+rN4zpE4YYyTOmK4dpj23qsr6k61k8VIIFCElZwpsMzkFvhEvlT3h\r\njkf9wI4tSckDx91lBiA/BSlY2yHuh9aGqa7WF4Utc3IRDdf5pMIueUQxWSJS\r\nBDhBAd9LuoybkzU9hU+btYf0Oz8m6uUJwJkAMYlm7jVCBu8R4Hhey3llzIk1\r\nFrMq3KzPQCdqW4CQbdkq9HzT4JIWPNe69YHAd8eYfabM/07kWYsUWfDVn+Ez\r\nSrlZE5CzzHXqo9TYINO3BVUWKW+Btr9CkrwrjdG0fImidrPu71KhdZ4CYw7c\r\nL0Jo7UyF6zmyyNxdvHhAZ4EXjP2XoQGFU/3ybBbsTV85Dm0bduA5wnmIyNjR\r\nQTPEka+Cjc774bMUAI0M6ZGNVnBBzV/CZv582FZlcAcyxqrhA4kjkOk2Glp5\r\nN+1QfskSl2BX07l8tt931KyX73NrW7NXemrCJxuWBeMzeXUB56sYqRHXz9pb\r\n9w5kLwh0FCuY/zwCqmi42kB5+DDrDiQJBSXfkHiSMm6/e59IMQw/waq5aI64\r\nuA7Oa8DbgzLN5Lwp1IuPlcbX/D7xNvKFSmOve/xGCbBSYpi7GYFzzUcyzWLY\r\ndg/cx1hg9I3Xg3TmKto2q2rQl11VklymNKA=\r\n=QMeE\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.13_1649156735426_0.6038037815035444"},"_hasShrinkwrap":false},"1.0.14":{"name":"@asemin/nestjs-exception-handling","version":"1.0.14","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.0","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"e60af7d803166759d22a6847336a27e117c1b927","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.14","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-Cl6NYeTs25ah1yBSnbpDD8AHexu306oujtrEIdyxfo1D2TFQchLt0PqASXgfMjyeh5MvQy7V3mjumH4pKNCfpg==","shasum":"b927ec6ca69780b594a1717b65179c21253b8399","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.14.tgz","fileCount":61,"unpackedSize":45478,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID5hCO0KF1sgHdrsfYrtSrLfzfv2XMc5Qhay8H0TSQadAiBMNMkM6o0xErybyJQhyu7/R3+0PxdT99kYxW1QGwi00A=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTCLMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpPDhAAjnRGqnjY3EoyQNi8fFPp8C734xyBgNWggu4ZXQUqlmFkK+qn\r\nqycKnwvAEe8HIizbbEsZGGtLGmJDhiuOFTUqK40QFZrmyED14v7CqTA39qxS\r\n5gvmGNuqSccq3BJKIrxp435uQ0g/z1sH+0Ory8yx4LaiIt2G748VW7P7dpK9\r\n0V0l2PWZRtHP1zQbzDHaUgXs+NQq0U8cI1iM+5mX0tlfIZVwXqThMJrew8w+\r\nIr1EH3TUVpBT170NftTHMmmNHSE5ivThu3Hwn85slLx/0719RIZ7cFaZDe/g\r\nVoApPf3S93syoXrz3o4fLeYGfB1z1B1F0N7X4JPGylWWLgvCQAimu2/aLbMf\r\nYx05weAcDbwgwun9QAIKbXAz4bawwNSrbOUCC5exZIKy4EI4deCekSPITkwL\r\n/PzrGklRYb/LLe96CcWFwcIj0hzxVZr1bGFo8VcwZloqR4EFSJLQJL0LocZ2\r\nhtxZBETxBzytT6z7NArCvaZuWoAJt6ZQb8g22w7iexpJZhUbwwRyfNzuNOGU\r\nPunp0M9v87BdmO3YqGwn95nYBZiOcOxe2pxDntA0mMCyIpw8hFyKrqH6o1DT\r\nZedJWDIRnnFJb6Xcril3IF6XbbyqRQ//4ZF02XeSjDwghINP+K8/iemQqjTS\r\npRamfV7ZS2g95P+X12B406pQhqfx5LmXtcM=\r\n=sJLD\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.14_1649156812761_0.9443923580218772"},"_hasShrinkwrap":false},"1.0.15":{"name":"@asemin/nestjs-exception-handling","version":"1.0.15","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.0","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"e60af7d803166759d22a6847336a27e117c1b927","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.15","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-FTVIzAEcR6a2OW/gpDpEmohu9nXI44Dv6xCRYdV5aB6zB1qnET1PwqtAYt+Un+DJLQn4107mZyMKpeH4tr/w2w==","shasum":"ff7241976e80c54a8b38405203266b4dfefd3050","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.15.tgz","fileCount":61,"unpackedSize":45846,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDDusK/ePWUItLabFuCJasodrK4CLU8KPsdn8vn7h3J5gIhAPlmC41z13tN9ROP5B7Cj3gmYpSXlJ7NHALTSRoxcIye"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTCRzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqqWQ/+JI1XCY1nlw/U1z5BpM21QVmDSSCy052LgLEqDddfXeDIjVSa\r\neimWn2LrZZVoD7/LhzgG+iYnnnoxx6Wyo996USSCeRkDDpIEBLGFI7EnNsJB\r\n+3jRijMVYfRchAtnBuw/1LfEuMczolgx+iFyH5+QYalkd/TnkxfxkyhtMvU/\r\nXJ6f410R+CSWIscGbw15P9wDsmKpc5xDro8375KA6cpf8iq3B8NyOeUxGp3z\r\nhTD81HgwKWh8RvMCKdNgXLD1e470gokBb2tkCSFOsqQkzysDBBUSxnsRaSiY\r\n2Q0lNorDs6PCGRNQADI7nKtB5Pao40FqzX3lkpQaSVM5qoYaeH9aChYZV4Fa\r\nIDylxa4MZacevB3IUmPYF3yJTNoEmMp0tGqxKEtY6rl7UttThA+jS+qE/1TR\r\n5xvmQZYcpu48VNvSrf4bfeTikwhorKyy2xYLf8+0/8cB8DKfC3MpEEKtyxw1\r\n3Nz+CVkVd4lhK18vt/2wpPIsGm/++AEjx4VbHIcEGS73dxApqRXvSW3uHOs9\r\n8Ex9ALf8XN6cF8FTipim1o56++lrvhHBjp8Y5J+4Ox5VgqmhJMjerQPp7ql1\r\n3BHbCzxi8EEGoPu664demgSw8roCdKjpPEn+ySoEPxggPjlIqb+K2o+NA50J\r\nv9MOf5UOpraY0fKtOsNZeymtqY0q4BOzN5A=\r\n=X2WH\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.15_1649157235047_0.7796807816752531"},"_hasShrinkwrap":false},"1.0.16":{"name":"@asemin/nestjs-exception-handling","version":"1.0.16","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.1","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"e60af7d803166759d22a6847336a27e117c1b927","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.16","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-uKJNjXDuY6jH85LLshnXt5mA4LBoKEToAOyjjPVresu47S4YpqAhg94mPxELIYN0QZM3KOkv8YbrbvBeB9Dclg==","shasum":"913d895de67570e0c93e1890bb43ebcccdfb7c39","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.16.tgz","fileCount":61,"unpackedSize":45989,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGsxevQbgoOuoxKSquwa/Y5sCceNA1QEtBbdwmnkPyoGAiEA5agf0gqeMC6bSM7wvVRBoebKTedJOo7OwAjEd70RMcg="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTCbgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmowjBAAgalbhDIo7OhYIA8ws+mBubE0cerOeWZsabxRSEcJ7+giFk+t\r\nPNogaDjwpCYYUBrNn27itVbYORCzsAWJyTIWhT9uxKIl8ROGV+O97DBT0jjN\r\nkPtO7YgJu3a2groHrKU3iN7puDm4yskReTNXGaSyEyCAXBlaTyRrqgpp7fuv\r\n/gGU5Gwj+tnWbgfPEBYXov37C4JtsANpjPa0UARGc6rYYIPJmIUgOPk7Z7zw\r\naKrVdA1VdU4REdLREpeme4cdNazY0TNW4m7CdpJxIQ2eqiZhDqOixdsUcP+H\r\nJYH2s0W4ypiFtlXbzzd/akQY/OG1OFZpl420DpYAY8+O78W5EUTryv7D0f82\r\nSnuMT3OMlyGvK6+cN0NixEaHyilwaGOSBMxNP0y/0kux2RTli+v6OrdO27pZ\r\n0By3cSEh4tm3fRYZq/zArlOKIfH+cBGUsjUPJHR9ERi5c9Ri1XvnQePhsuv0\r\n4aTcL5bsRPh7DWO4KW/Mn7YPqHCH2u0v6GbD1Detedrh63YfKjgGgMbtjFWJ\r\nWxVJ+KPT6jO/KEOwYSOH9tNSFYBWLcNjGQtgmzEeA7y3kAtgB1pXKiklIovo\r\nF291Ff/Epne7CcRpqXNE2O9SXAQ4HnR8XZ6z0+ojCs+ixYsZtGzQpeV1fVEn\r\nvNmTm2quu6HHjxvQ+Y+OU1i1DxeJ1zVyNCk=\r\n=2UW/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.16_1649157856429_0.3565924814114816"},"_hasShrinkwrap":false},"1.0.17":{"name":"@asemin/nestjs-exception-handling","version":"1.0.17","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.1","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"e60af7d803166759d22a6847336a27e117c1b927","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.17","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-kGUB99pu/OS3d2XVK9oUeEcuE7KTb8LMv4i80NxC69f1cHeoC6C7+6YpfidgkxGPiy57Q+YjEPxLI8p+suCa1A==","shasum":"09875566a706a158562dbac60c328c8770d25782","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.17.tgz","fileCount":61,"unpackedSize":45644,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBK7p81W2+y5SaKyNQF5sqi5FLM/HUWpZlMZGEONUjSXAiEAjfJYeFmesB7/slqjvM5DR24lkd/3q9AiVJc6A/hYKYA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTCcwACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqqTA/9EmzW5rBdhgh5xJHhdu+lK0iFMw7VqeDNcWG//IejFI8ykLgK\r\nM5SGdiAUxp+C9Ow/MzegcxeY+Wo4daDt7J/YXviWbT58HCmTv9uXzSCs24o1\r\n3Cwza8RWhxPbpg9JAbrlQUu32543QtVip/IQ2ZlKlFGNqMzhjCkUZBtb1Nkt\r\noZS+WKqhv1C+eU6bTO4SWoWjkV1/hV5/7zWLMiiO4OzG0oXkf7ZcnV2+HOpy\r\nk8+d+KUygY9qf6Ixow3yvbGiHBCfI7gPLLkdp+KVmCRGlIUXhM11cj7NaBta\r\nc1tR/D8JOI9cVVGK80FIhH7ZcKELMtMrBVghIFsPYpeKRS+zavHwaK8XVsl0\r\neglQE1hrak7HETOqoZ/x4/m0+5+MwTYPnsFtPjA+xPmVvcv4YV3vPdY0i/ni\r\nzIXwU1yiCg/Cfo3yQH/qlwto2mfxHQU5u+a2AjwjpfqTbDBssG+8F9j/OuSd\r\niB1dh0bxn5ZNEMnFkwgRQomfGzvKUOR8AvGoXDA3ETviSgaT+Wa6l/nKm6Mg\r\n+MiVsXhk5obB5qbq2Rf2OfpiLIlKwEWROvTsb6xUdHucDi5XoG7YMyI9fW2m\r\njH4rF2sKrBAWjhrbdVBs8TeWaI8vvVJ+UyWhMMsp8FFBCP0GotMOr1fxjinp\r\nce6Rn4u6CnDDoXyrBsoEhOXY67XHqCXOatc=\r\n=9V0U\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.17_1649157935971_0.29028088865643986"},"_hasShrinkwrap":false},"1.0.18":{"name":"@asemin/nestjs-exception-handling","version":"1.0.18","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.1","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"e60af7d803166759d22a6847336a27e117c1b927","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.18","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-/PQPO8gJgTh52srxIcjNK5LU8kx01v+3VHttRynA8TZiBHEG3GGVhqbV6pWO1zGL8SMdO3sOrnJnwr48HwVWrw==","shasum":"e6c79cd9a4b73ced2cb0beea8cd3baeebe3397d5","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.18.tgz","fileCount":61,"unpackedSize":45885,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCB91Hm6lzZoe7MGa2hPpfpQPtM5mHONIHcc/0MnVHJvwIgA1OZkXVZ44bVGPFr9cEERZTQUYx2gYRYpa13JLH4m/M="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTD9VACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr5vw//ZeTthkrXHKiNAcZLV1hdK0dcUJ5Idx7WOQFWJ6gHrH9TpKZD\r\nuEqMCQGeraiaMS3WfNU7QFPLjEQ0LOIJouhkImc7+1B39XNcPk8/UGVauwGy\r\n+mVue6hONdt/kimKjiImM7sJSCWqyLFJCgFa8cvccQc6IjyGXo75e59WU8jJ\r\nApkrSBjJTCwezEI35BWgezfhd/n9Utn9tamfBMAMgJioE8wP8fkGTpgFXw4K\r\nUn50iBoYphWjlgGg87turXFz+sWDby1ZoK0KTzRgpOuZTJrBHI0FrVNNMmsI\r\nh4QT7YK4MPVyWyxS8Rhjbe4bYx5rH3/fqRsMRSpdM33K9lzfKEenIfWc89Qt\r\nWSSu2JyRRb9HV9BTG9ofdT6f2ETuwvEDZ+AfGgenn23NudnhNOIFVlyUgn6g\r\nbfQBdu5pCDql/sazX1ZaHY570VhkvuHwGz+LiPDGyNUNPsy/zMjC/iKxkOLp\r\nCIfju57fmKnDK0juPHN+qKRvVFYk8PHsikzVFEXwGOkwZej2u0RtglPUGTkh\r\nXqAEzEqNVjobYTzQbdkUoX2ZZB4pJo0SsjTATKNtAcFSLsSExPkoK6fOBk3g\r\nA/3y5ZIDxk7maxceINWra5sysACFpKB+hMrx8iYFnfelj011lRt9qZ3nas9m\r\n9FCP8p758OOU25XC7YWFUCU0jeIKPixs9HY=\r\n=RFHs\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.18_1649164117133_0.28492631444893624"},"_hasShrinkwrap":false},"1.0.19":{"name":"@asemin/nestjs-exception-handling","version":"1.0.19","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.1","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n```\r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        title: \"Error!\",\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n```\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.19","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-WFg1HnCi95N379rrGSn19yf9Egr/hxpiTGrs8CWf12qrWTydptmeF8Ps8fB0OkiroTqjIUrVi8J/E9PD/3C7sA==","shasum":"279db978d9ecb94a3b5c5229a05b01b262fd2718","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.19.tgz","fileCount":61,"unpackedSize":46289,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDRggMUKQ4XFaVAq56B4oW7uJH8Cds3oFCZeN99wKjyYwIhAIavRCArXspbIgwviAchNx7PGCgLE7Y04vAqT/vJA9H5"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTGLGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpVMg//YOm+A2YKDARZt6176VTjTEDgbTYP01OwRTAQACM8nSUnnZ2B\r\no8WE25NstwUVzQjKpV5htrQOMLRXqBjKj26BBA/Deirs06F7r0Dvi+YUHFiE\r\nFgLbSfqyDSc1ag2jkctBsEtN9bWRJJ6FoWRLxZhVwSQ4UkrfU2gROYTIcuFJ\r\nihutEtYedHC8HlUJSweTN/kJT4u+gXRrpw4jtr+Mkcvtv1fidoUBfY+2BEtQ\r\nCHdCzGw/X47F5eB9dJcU8PGC7v/amgu6rkPOi9I4BWi6GGQ8eSSB02GoxMOu\r\nb14Dsaco6Qu9+ApCJmogrr+aK6lxRT5+gbrC0MqkvSoTLdDRycv2/4dZmgU2\r\ng2vIh50/MAoWZYKEbg+lcW/FoH3QIZtbWl5pA361VSzKm8ivLkRO3YEu7Qoq\r\n6iygSSGv9UrHePv9qjwX9GrJjp7+ORWKSlY0rvoAEPPoXx68DOhl7OrOkB6j\r\n5AgqVoBRux1/G+cLf/joaklH4fvjbiUVVWTfl0cBS7j6ZYwH7uvkjAyBMZfA\r\nnjmA/1qaSI6c714l5mM3m3NHP8boyN004IdiYgvBX/8/kwexrBrMw7xIaWC7\r\nCU4dSEZUB82RaoetqV63Q9fTRt/2UGtGkm0BubDCTzyndB42bK9AGYeQJbWW\r\nONFRvht6JDNAWVhVmjISq409nsJ2V0pM/K0=\r\n=ZjqD\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.19_1649173190749_0.33736644942690197"},"_hasShrinkwrap":false},"1.0.20":{"name":"@asemin/nestjs-exception-handling","version":"1.0.20","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.1","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.20","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-fHBaAJsqzZmoqew1TLuwcUAlyjJz6a/6BpWlhWg9XqGycaA9+DSmwhK1jQrYWzk+ZlD6FvVdc6u2g3ivGI6tAQ==","shasum":"cecb09fb027b095ee5ead03a78f7effa8d80d99c","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.20.tgz","fileCount":61,"unpackedSize":47025,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA9XtGo/YOZ3OTodtxyrspoMZi/28QV2nAaUa92lcDM/AiA+8y3FVqDSp/IW3BtzzkI+Vc8yPnxQ1xmkaKmNXXrzQg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTGL6ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrOGg/9GKaIhPC+bX3ymuz4mjBdMSA1M7KRFTX1NreEesUHm2Ui2Kao\r\nOq9dLj9nQ78yqbD1BGyopGz41WfmE7VurG0Si32afDLELK101vBQghOWiP9i\r\nH0Ms+NxwZu7+TfVGsxjxTTfMjzQLlVogqnkG4XyiJgKIHHCfUcwvJtxy8hSa\r\nGBDJ0uP7/z9TXjAu6zrbu97P5gmhKJ8Cdw8s0BUWEQWoXLfgNWdEY82e6zUw\r\nEZQ2Q9YWHseOUnaqZj2yeqPcn5QACF5ZV6+5CPBcfZErQUnIQ3nlqLuuF4j5\r\nk8Mcwnkl5aqL3qZo+93w6TbcSTLvS4HdGxReT+YMtbCs4kgD4RkzF86BQQOr\r\nYzQFvfFtRK4rj2FdT/+zDrifcmIxZaN2hRJ0j0VAKDb+stNNWe5fTuqHLo5R\r\ntOogdlUN+so92dSajdLcnFMwIiigWKhJ+xcMGBDya1ZR7ox6VcPWlGOlpLSw\r\nRKA3TXaa61m5oZPoUjTO69aLHKuGL5aeEISQOLSFB6Fk94XWQiD3lMrv+M6u\r\nvUv+gG0agwVaJxnPwp9SBXEyO5Fy5K1FpYn4S9Ce/JMpxgUoNiSpLA/oFj52\r\nzweaeDQqHSF2NL5OuZmfDIL9l7uvt/BO5zXBQxmhNP2EMNgWHZ2raOrtuQ/T\r\nYWFbEVOOcodyJ0sqG64kgqsYx9QOc7T0vqQ=\r\n=lKQx\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.20_1649173242005_0.9842890603578092"},"_hasShrinkwrap":false},"1.0.21":{"name":"@asemin/nestjs-exception-handling","version":"1.0.21","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.21","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-dgUXADCXdzitXOeQUccnvgsCfd70vX4gLFaxJ3T+tr87UzjQqoO+x9trbFIHcr20IpEoVTp31R/wrD1moFRQDA==","shasum":"aee3947bb215a6f899a394b2767115f6b3de2c35","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.21.tgz","fileCount":61,"unpackedSize":47954,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDAcUpneVI3P0rYMfrOGjLB4ce44j6OVFGRPFq95YbQigIhAPJOq8UgBjIWcepv6WzCxdfQ6JTx6VjmYE26NUzoiiq9"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTxrkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqMYg//T/AqqH4pc0Wfhhchlbm2VxhvQ4NK4Q4ivhqZyTWYDoIL2Cnp\r\nbS9r6k/DF6u+am4f63nSqikgPxfR5LkkM+K7TBMNhSsmoADG4zVzU0fDsKOu\r\nwLlLW7WBYnQLQ0k1p1X9GNrC6k4JP3XI8xI0lAY7GgOypJ3WAAMt94NgCHNN\r\n6RvCWhi0RZ2kbzj+yKxeqHWICciKZp5WBMhDaWH+mIprRSFyIGE5vKG/yPZx\r\nOG6yE4HBKyx/IKqw8NuGwsmcrD1ZYbI9SmxeUHhmGHo/vGRDt0BsfEW2ZCwW\r\nB/H8p3Bh1v2nj/oIKKjVYVlb1VW5uQN/pj8MljuJOHmQbpIz0RC0z4YoU6LU\r\nHLCxxD4icLts1vwMiMTHDkDKWJxjdWc2g6T6qXdzl0QNTDvQ3cLDSEjluhUt\r\nxkkEMUnzcrReurRgW8og+M6N+Q2fX7CHT4cwcHf9cI3Ho8R7viXHk2olYxH2\r\nuy+cPprdhE58rqZjXTmReuSfhhsU5aOFgBScV+/0RpQQ2qmYzIguOxNVGnyi\r\nXuC135t8GxRT6om2BYoNZ7+NTTNMJUS5VDl1lrjvwkiOwdvKhP4uFF3Tmjqx\r\nnp5XO4LSB9UjcyZxayjF1CLQNfjZaE29StZ5GHFEf4lR+WWHnTBTcALoFf0d\r\nQyCDMLrz8BqaKWVAtLpaE7icIOgr0/L3xZM=\r\n=z9y2\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.21_1649351395887_0.1623592296261307"},"_hasShrinkwrap":false},"1.0.22":{"name":"@asemin/nestjs-exception-handling","version":"1.0.22","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n```\r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        title: \"Error!\",\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n```\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.22","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-cLhPMrMGaxE0jacV4s/zv92hrjo0LeUrRgrHMrmQDdS2pKzTFgJyszox/N1Gm2SXMIXA00gWNrNeAEASXbPbUQ==","shasum":"892120d416540f1c1fdd519fa3fae88d9285421d","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.22.tgz","fileCount":61,"unpackedSize":48838,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCe+pjpapNHVlFgwGz6lloQ0MxW3YAYFDc/o7zx9JRG+wIhAJcolp92eA3ETh2ImetL3tYB7eYpbitGdLJKytzHzGrs"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUGZVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpwGhAAiJb8sW1ycRukGB5o80u+5oPzNtRmXYn48bbRdTxpm66dl5Zq\r\nZLzRX/VjbHQYmVklidpcMjQs/buAHivEB/TupMWarRQcvzuT+jdfJ+mxoPne\r\nEoRjdLb2rNTXNV3/eSYTR/adkpLtXrhe+Pw/IlzIWYxo4R4RcfLjgJDxYRtY\r\npUz1/YlI3Jpq+cCCz5dr5VaNRqA6WNuJJiHyagg/L05zENiuQGs6I3hgtQke\r\nuEwxj9eqwbGlYaBk65ER0jWwVVHqN8s0/91ACaNKNtuH4TRSdk7N2AlgMMWR\r\nhJYeDfLEcqotKzhl39L5eWip7XCFDQBxIKqPKnmxzb9xS4oU3mB+pWuZf328\r\nrTo844Z8Ti/tUGWxsIro+yNNWpciG+76CdA6vHSz3ubd84iubov4es5hbBJf\r\nPxnCdHnPRENwRpQd5swVjaj0zAe2UixyZHABG5be1oURnGJcjfTBoP66BaeR\r\nS8iTap1WOM/U+NZvV6hVrTG7bp1UK+UuwsHa+t8oygjAs1dC5IB1ja1OMs/P\r\nW+ew4aHGweui9CDtALQ3+BEoRPOb0P0d2eKbqQLnYjMquDWEorse971B2n2D\r\nCxqsOCdT4cE3nnNr+TFqtrL5HZ4i3wyC3YdsoE5gtqK+eVGkuOWwjlh5K1ru\r\nqe6VIfQBvbSUHz/Jj0IivqxZxhsHYD7FqFs=\r\n=tLr1\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.22_1649436244865_0.7228542184430344"},"_hasShrinkwrap":false},"1.0.23":{"name":"@asemin/nestjs-exception-handling","version":"1.0.23","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.23","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-ka7nc2AFtOTzAQRWfyE6vTSbOJhRdGtTwA0c9+P3kx2mRnNC6XNW/avyarnbaS0ofutE670ZRkk2JJXa5qJ7xA==","shasum":"b8849b4daf97d1679fc8a33e0e27ced8aabd3596","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.23.tgz","fileCount":61,"unpackedSize":48727,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICPgp/UW4/l0u///oHy2f2aEBhoOAABqwINPBY67BZUwAiEAl8QlX4C52yAhFviEKyEKNdjHnBUQiS8dLV1R81o8mmI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUGlUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr/cRAAhe5a3CG2wBOwi/aeIigjyFxDmXNJ8NTotAMgAMyxxJxYaQyR\r\nv5hTa29gcF1feUqIiNkk3BNenfr7QdTBoFaKHjZ7JD6ky+yKd9CBNG1YS9AA\r\nq15K8BXbFJjVD9H+cYHxtuh2HIE3KJmNp9axUqXCHpbr50HQC/mYL33QGU/P\r\n6VXZ8Am6aM2wYuwkpvMgEadIFYeK6+SisZdRJ/ptX14B8WrrhWOHtC1RB0+M\r\nRHlpY9uX+WtonP9buEO8cjNxPjQZIdnvwGgh2gMqjz3p8QuTXWbxA94dpICl\r\nJU+lrwxGpTWVxRrMMpZFL7vi+j1RVg8rHzMolKXB9JK6p/ujRR7iuJH7kbD8\r\nNvVpVFVyZVoFfylU4XTaHN7rbr2XDb25rfa+aUngFPLr13gWZ7v1G2/STB4X\r\nXUGFY6VPNTUI+ybR6gAfcc71sJMJ1s6fUVga3gD2gxtsTrHG76629l733/Hj\r\nGiRkWmOyleNO2/eURVOroI1DpgyOKqrDWllJ08obdTON0HCdR0R1WmdNyAGZ\r\n3UOaPdSjp7HOlv5syVbKeozrrLyCxAhR6bgQ2gl0flhKxV3s15tyEcOapYwQ\r\nHMGrpYZbW57YLhiGxJms9ICByiiZHy3Yy/hw4OfXkZL2YSMVqfFZiXcLePlQ\r\nhUlOZ7AZr3vi8t9Zlr9tsEKx+xtwPrX54PI=\r\n=nnjV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.23_1649437012195_0.48881186048446224"},"_hasShrinkwrap":false},"1.0.24":{"name":"@asemin/nestjs-exception-handling","version":"1.0.24","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.24","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-VS15F6054HbXOrvHyPxXXqF3VAlZNSs/1mQLAIgPOpVjZ4wbRLgF3aJlRbDYAWJIE3ul8k/SdUyNbmtPnVH03Q==","shasum":"0784bce49510dab9d32b2433677be0a2b609b4b9","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.24.tgz","fileCount":61,"unpackedSize":49600,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCyN0wP0+ZiNZa9sqULl+hZYMTTfZkCo28MXiFzPoIjQIgFFbE7pOGAyxvl1dgQQwJRHR3ubdRHURpzwCCSqCiOrE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUGsnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmofMQ/5AOl8LJDkUjXYLmlYZ5zxfHb50AUzJkbXjwJulTIhrjsnHd07\r\nGMOazAtlZko/GRnYeN7ifHwkIi6dxRdArrOPcigUu09vwLm4nD4CFC4KEyd8\r\nCWooQKqAQLUN1V7EzEsZb9MA0SsIHgSOpJrvNKLdsC/CgAU8aib+pgIttvK5\r\n8lZea8O+DGnLBxleRmwU+N+5K06daNb0El3eupMIWHS3xkJzB20glj55wYLP\r\n+23pRU8LwKzAWyBTw2qWMRT5paJKo1mge8b/ji4kUXgd7HYbhwRJ1CQcBbdA\r\nFUQ+cgcbzG+V3QysAZD0hiGefgIgKSaKN5w7cDPv5nVIt2YRwAnD3lVX9mvb\r\ne0PFVvI6q1tH8SN5jovOQp/jWuQgKc3YC5bc65PVCuSvUzKiztNt7shAizVq\r\n60pCyLyhE29p4+PMKtQtfarwF6FGTgZMf6+9MvvfA/Oo+i3VQuPiMxSZpcT7\r\n5g/7+T+fs2PnaJuyvTcMtX1KPRrZEfnfvhlVPxQIXycASKBu38Pk3+ZAnaUo\r\nhvqPdHLLnbdvuDNdXUYg3zXEwhSaqYH/x4x2J8XSnp2RwtjaYCRipeGfvjBj\r\nXAdSj0AxDkpFJ3TulNZSvpycwNt4KifkD4VoCS67gly5Bao5WEI55CRwWOD2\r\nTC7Sa+nUZtJNex21cL5nCrlqkyWLpiPVCk4=\r\n=pgzb\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.24_1649437479089_0.5600721806000029"},"_hasShrinkwrap":false},"1.0.25":{"name":"@asemin/nestjs-exception-handling","version":"1.0.25","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.25","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-ZkXo0qHl7u/g7CMfiTNQ89SCrLagbLOx4mTzq0+4ImGjrbTO5xxV/Uj2PeO4K4a0nTDyH/gsvxqPaGeTORtd0w==","shasum":"36d9b3eb7763c999c5c80deb959e2b15ffbe3bdd","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.25.tgz","fileCount":61,"unpackedSize":50009,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIExRMdX+X8xpfEtalDPGacB0scJu+g11z3keDH/BRHYWAiA3+T6aQ9K63786/fTlQVPo4UliHS8e3yDD+p4WW8ksvA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUGy4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrcyQ/+MuU/h1ceQyeqIxx/AmzASCLvP464EcM/j8NqEUblAzONanSJ\r\nAp7Z3t5MK/ggl5+LumoK6RG62xabMQoCpcve/YxLAYOdxTXJb/nSmzU5Uns0\r\nPv3TQrOW7X0Kf7hcuw2gsebxQpC4d0CPG1EYvT2sZMG+4dUS0/gfjPNkNjUF\r\nFiuNYIkcsYjRA4h2xeHCwTAgh4/FgzR9iWWOCnv9B+M0iYbBpikfiONXGBpX\r\nOYh+B2B4PJcBk3nD2ZHXy6Vjj5TqMLT0bZYnPZii6f2iI/3AkSOtvn+z9Txq\r\nkNAEePaN0S9bNOnWZISNMMbcot95iRq8OfZnmVKVYZ8NCxWxTTS0n4SmwJVI\r\nBsgCgJnz5ROW/5WhsKeQUQTrtjMdIxLC6W0sEyPIzX59TbBpY05u7ZYRY28+\r\ngBkN/1Ctwa5jbbPERPDlzRTWnBpECmAVKTnJyAVsqkfOFMjOimF70ub+C6Z7\r\nX3cCkQYb5/Ujy79bbaJhMW+aG27Z59KbyC4obWn5U9JM6a12qqEIl5gK9rPf\r\n7jjVcF9ien8oTsZsO5o71HJlVZpwWAshSbBj4C2r+KpyF/NskjjOF+emxOy/\r\nt9+W/g7jack+eAmDXvHvzyAEXScu3afKVk1SdxcgF8ADnNTYXOvu/1+1FRra\r\nj8gDljsmifZ8j0thsKLUKx2VqzgOkFcIybc=\r\n=b7iP\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.25_1649437880744_0.9571866275424477"},"_hasShrinkwrap":false},"1.0.26":{"name":"@asemin/nestjs-exception-handling","version":"1.0.26","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.26","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-6UT/PRut40XqB02543DWmmH9DXwXcNzoUhA4NrWkehWSpvv/VrgvSQZcKc593LsAlbSIBbTr5k7EVtlvg8snTw==","shasum":"cb6e4a3071bf74c9133cdabd1cbc6866b4f23761","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.26.tgz","fileCount":61,"unpackedSize":50387,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC1k9T34CveE+wFMssztnQ129PIpCWA5yKwNqDQZLdlQgIgJKtHeYJYV8PaK7jU34oqqEdCV5yox3ln1zhzkGikDgg="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUG3/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqzSQ/5AFkzLmgWU8E7Fcfz8Uv3vgGIWGIrYA64JEZj6jQZWMfjBIZJ\r\ntm+ebc8kj5Qc3yk1ucsGdY6+ZIMatTwFvLJ7O9UrrOD3YDfJ9Hf+ZYZva6tl\r\nWpcZO9ggtlvE6h8X74pcaMfGuVGv648tgfDPrZTn0thqSKbHp9nyDGf46V1L\r\nD3riIlzSyhs+oiRJ4q8rmVk/ovdYwiSNnhzKapdesxobsQJ4MlojFsOvUyZ0\r\nqePRCdhB0C0vpn3dJ/ci06hcyXIa7NGldNsM8VIoNGuCJ70R2G1KRJuPqZel\r\nURAOvSWtTGeFgnz3w0OUbAtQJ9hGpFiqs/dM2t4VomU3OSoOGfq6osBGb+Pi\r\nnA03NJfglji2LHl5sMGQe1dsWJMhP4Fo+ZmCpFjvRC6E+ox8SXUwjD+eR+M9\r\na3EWBcAhpvLFzoGFiGPKDzEpMjXeK/Rpa7ZdWAtJ07z2Y7tTQuKYDq/hEssh\r\nqynLek3dG70bmP99DGjMzFa5MKXwKZpzc6LBSfC/kRIXQStL4OC8osE7icW9\r\nh1ParU3MMhSDnJ+PR8VqC/0M0RybdZp77W9+2eFvRBHHIu+2F6Ut4MxqweZH\r\nXC/pb5F4szVR5HtUlxAvDmE3R3YBBV8heQWWlcAa8Zg+zXrKymqEFPEALoHd\r\npgGhiMKotLs5SVZKWZ/E9Q98cFCc1j0aF90=\r\n=E5n0\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.26_1649438207112_0.9967197243826076"},"_hasShrinkwrap":false},"1.0.27":{"name":"@asemin/nestjs-exception-handling","version":"1.0.27","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n```\r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        title: \"Error!\",\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n```\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.27","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-ADwwKYgaHQB7afwCNQ53mONQn8DNbFHxfgX0V51bGTB3SwN0fG1WUfHn35DcX5EWaa0TRZO1nXRntJ3qMihfow==","shasum":"e263540bb374f5a1448400c1e9e0b2f444cc2d25","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.27.tgz","fileCount":61,"unpackedSize":50340,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFY5V6EPSdanDQpnJt2Qq7ArkMFj4agiuBQJ332L4EBwAiAeimMB79qLG/EEoI/42VuiGfad9vNqlvbAKiBVgEGBjg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUHKLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpewA/+J44hkg7FV+qI6Mbm+evFmz40THdzdQNPyb6SVy90097R2yhm\r\naf9T2pD7RdwM5/kzMabhXbYWExT6oJTCfWewMTS8bhJm8sxX+aPGD2hN0UCl\r\n31sFHNxzSf5Z2ZZ7BaQCc3VqJ4JEcVTsGfT+CzWXCX05oc2BoTgbVrHqH0Lx\r\nCc9FJgt3LhtELGpjdM2+/P2SNThFUePqCGvLSxP88WhZxupKuGh8dPFJ/tip\r\nP09pntMkRd3MD73omli//W5guAUmSlxAJOwyU6Gy/j5NEJvD3Z2FvXEHjTF2\r\nAe5zvAhV+wpIAxOv7WZkc/YsSUezckdtQUbfwsNd5TL7FBFhnhFYyrQUEEC4\r\nRCAXZxRcFNIqPMQKAtlhI5SV+U+H0ZIevXLKjmtif85IjAU6UhLTKekYFbbZ\r\n3IspQTGD+iJlM/bbeCd50lQfGrlS7fNGCB23OKGPy6L7lmASIK6XMmmCBvgk\r\n6I5Sn1sT9jsetuVU1DQEJVTU4SslXoHXuG64RwkeQ0cuKZ127qDdpIkTJnb+\r\nf1bKmI2Q/YuuIqwxcHcnbClgM7lTE1cz/KiGFwuwGfHpf2hVEPg8/0W5ve+k\r\niqaMFabyUTDixzAeVOvNfFHu1vO/ZaLVVjda6nnQdqptygmXl5OAINXclOlT\r\nZYvlbAzimefUt0MZmfkoIhQH0wD3APseQv4=\r\n=zGQV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.27_1649439371691_0.18214853703332823"},"_hasShrinkwrap":false},"1.0.28":{"name":"@asemin/nestjs-exception-handling","version":"1.0.28","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n```\r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        title: \"Error!\",\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n```\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.28","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-23wiYIG3DosjWz7bki6AUL+eZRQjMrnbMYzlQL6Kt0NDnQmvjKCxtiRfnqh1Y7wfPQ7J236Q6S0owOACg7MudQ==","shasum":"1a616fea1d4722362e3c5d174083bdb913596b90","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.28.tgz","fileCount":61,"unpackedSize":50958,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBcZ1ay72l3+adSBzCxkSnRV5OF8vLNoLE31XDlbYRJ6AiEA7jBpW0pqjSKumk7Syxvt2D9RSlp38T82//Vil1k+acQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUH5UACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrh2A/+Orko9SDVRGaUJlLwgBMcd4D6CGyVkMcxT+/sQXogqQC/wTNd\r\n+j9x/KJcQQA32aTCDwz0HSM38wQWTucY97o0e1IjOCtgXQ4wT8sWgnfTbD4l\r\nhArLlMd/A6Tbco2C4w8yn1RMMemyNS2w2nBvwsCQfT/oh6EmFpTSW0Jil4m2\r\nfw7d5n8tGpOdr6yH8hxooN+oZjCgufCUTWY98B55Rn/U2pK3YXQ4Hn/vk8Di\r\nQiABo7qC9fpW87E7/GK5Xd3H9SOZ2noBuAwsmywZsx/2L/amYqmz9seGQ3rR\r\nMCSzw+gb0Y9MBh88+XFCrjI/bhoc94gKko0/lZkS6m2lv/830vetjySpxT95\r\nvP3HhQagzdQWAAQufVv0xP1o+TgJnJBbawpk6F1qzooidAX0W1CES3kLhDYl\r\n50L46cfxULbfz9gNL5EPiq9qEnQP9eiDapsPsHmqvsliNqPwY7dmJJjp8aCm\r\nswk4DzeSNV9VKVQdsV1PvNGdAITKXKE12lkPaM1+dEN9kz8ywwqNBTKWbSfF\r\nwX0/dF4ND4RL5PTk4TpzWJojGbbpH51z86Vc1IJgKiYJbDjim4isMqjXjYx7\r\nwU1ZgQEiH1On4Pi1DtOKjhsCVbm3ukrP/ay7eyzjJGfGz3yjyPeXh/8tLghx\r\nN3lzRiB2SNEJvV0eR5ihXfhGU0kRcpOHF/A=\r\n=lm6M\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.28_1649442388420_0.996512040636953"},"_hasShrinkwrap":false},"1.0.29":{"name":"@asemin/nestjs-exception-handling","version":"1.0.29","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n```\r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        title: \"Error!\",\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n```\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.29","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-2ZbYXKE4pRIObikzfKQuWJONTknet/jmFsfy647036JsYAjBmiwdwUKkqEQhts0raBhY1JSbn/0eWNetSzj49Q==","shasum":"37fbd6204271b9a80d3709a346ff0c52e8c9c42d","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.29.tgz","fileCount":61,"unpackedSize":51289,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC5vZyaHzJh8z4/RES23EhAhPN4dzCzfMajHa4iWFFShAiEAwye8NDnlH7o5QUimCna2AVlpE+qHgPOkxrBb2MCZU4o="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUIFYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqHJQ/9H8zK0y4zFnbAugtZXAc17HJT7xrBgDZwf8iJbidQJ6ea4sP0\r\n1FDW1Amb5ldkdFp2LVa4qKVGTESB7qaJbVkMoAv4Xq1YhdXmcXUGlaCOt0kv\r\njeMeJehJnGB0Z59kdHDrcMefkk3mYVgNHsUbnKc0ZXXgr+OgYSjAoAFMGyde\r\nTJEpNeckF22vbocL5OP6n5exawcr4+wVsbNgd56OZB9JHn6zZgYmz4WzDW7x\r\nkefx3bST/H5j926gkdZGtkJGPTzUejGQjoYze7/x9qAMHp04qoGzZJTMJ83K\r\nMp9Dc8SsmiFkLKLomDyv45cqSJQSpKujKBYUur84tG8vapDDtGRPvjjtCGBg\r\nqjLiNU+6vnuyAJ73acfmA6Ndu84ipRhXqhfFuDwvf55J6OpgMRJo0GkINotx\r\nSHopMRj56UQaEdRf9d2/boSiUJGWRu1fgGZL6xp+uFyfGlbg69FmoWuXvtGi\r\ny4lc4tfLI3Zy8v0nAJeb5wBrgbdB5e3MaempFmyx+G1SzUYQBGjkS/QcAOW8\r\nqCDRs+mBZokPtJMTbpj4tcD1xJjBJcX7dntDgaEQ/tHEC1+H0J94f6AvTUd3\r\nmcO72sFFJ6uq9pgF6dNZVOswFOCos5QlYqUept1cbIYmffpKjSQ8W9ZjP+t0\r\n4/xwVnorHfHnAzUTYLQ5NUriRjxxiRNq0BU=\r\n=jYr+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.29_1649443160220_0.4472020753661565"},"_hasShrinkwrap":false},"1.0.30":{"name":"@asemin/nestjs-exception-handling","version":"1.0.30","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n```\r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        title: \"Error!\",\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n```\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.30","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-5L2uLj30TIyZoNDk2QACaUJDu2CCK4n5ToVRpVlHw0hGwZQPV7z+qnabBAhKg1kKTWBBD13FHuP5D/jSG8fSOw==","shasum":"88b94e8a498878ab3c6788ff134e7c3100b153ce","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.30.tgz","fileCount":61,"unpackedSize":52725,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDiJ7tWz8/3Hmm+wa3aT8xwEse1Mh5PTqSrykCJI08QXAIgc9Fa2404aObTpZEQv9U1L2VxvBBzrpsaRedi/KEF/do="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUIPCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoBQw/+Mj98fhB2rmv+dXjrOWRsopYZjLqOfehgRr2KkwffpbaOFzUi\r\nQkNZ3iIS1JDgm4Bp69iw1MPtR6sDlfKQFY6xJnLWzeJHar5dbYSdkxj32Viz\r\nOZ1y7O9vCJKFpP5SMpl51TDoZr9h9KRplzKHsaJMYAzekDlUbVr5FypuoT6F\r\n7sAxHsbny31SwV/V61rvZ+0vt3igBEPsUZcpmYl7JYIHzd4XS9Ig6yLs6d/+\r\nx3k41ndUwbNy1cf52oOOqp3SbeqoqnToqE1oJuY3Q8/nWF5C7yWW0xr77a4Q\r\n7xP8+bWnypbk4C2xXXo+Qe2TgTuM+0ElBQJ0VLBMwlfGLm0+l4spLtINeCQ2\r\n/xXXaCjsm98AghyLkHKJ5bvVGgrJnODbhrCwz+c1wa++tO4QN4mwbNVrA3Oi\r\njVTKODx+Jl1LMb0hnLbKGBtotYldNDQbud+PpE1bkfBLur6MrUipVfeJiVYQ\r\nsQHtaCVsyCqPfyUEbTsHODUFjJJzF76aSC349UahuKCsuldOU3cIeUvtBrjx\r\nGJC3dh62ryjMuCTD/pabP1Hufj8UN8DJPhSTVAokjyMke/kKubXdYCu7HmUp\r\nugGT8WoLQG8qJnaCWNRLVv/qA1OW/+eSs72aV+RbabjFm5KrBiuStGRu8oWl\r\njFbeKB92PUq3C/Ho6ClHFOt2fll76fnivtI=\r\n=oHJD\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.30_1649443777828_0.10664126681212394"},"_hasShrinkwrap":false},"1.0.31":{"name":"@asemin/nestjs-exception-handling","version":"1.0.31","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.31","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-+ArHcRL+u7JXHTYTpUJosErYp2GQmYr19DEhtnFyN6JF70V2E/M78W7I++1eoZHFKmUYJ+rNix/XeFGbUOPvlA==","shasum":"800b7d9b8bbb91ebdf2a033cfb31309774c85542","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.31.tgz","fileCount":61,"unpackedSize":54634,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA6Os6B+jmXTEl2PrbjQqHf3Y6HbVOZoV/HEnyyYlsKtAiEAnX8POxH4y8Vk+a8zPZGlgjaGDSuu5dcSccMFQrV47bs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUIWTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqiwxAAjygCDXmYsQ01o6rqCtSwrLvNAw2Hzz2zsvVwgJf8NB3t7ZwP\r\njgZ1D5qER5WmWOYNLHnS+sNpEXMVCtAwj+ki+KbciDfL4dAYJo3WGAuQPPUo\r\nLJxvjf0uuy+uvRIcMHfJ9Y6J6htueJp4P6QOvf2cHKilzae1Q3vr3R2okei2\r\nyryinvPd6NEIHobR+RLr/WGfTj//G+g1jkEH7eYYD9Ma33t6HTwoQKyAoFQ8\r\nRqRzfrZ+1OKNjbVix3grxRhZYQI4L1IsCdYZRN/VNcFuLPNQH1g6Jd6uGT+E\r\nMClHaVj13kXqkMOB/JHUo549nJBMXwZeboHiPw5+9hg+W9BMg/8Jj/kzPea7\r\nhEOqsq9SWzW9JhY5WAE1I3rPYEC12xp2GYzXbw+VPjpCy5J69gDvEPaWGaEE\r\nyeYfkYj8iUHC79FV14Z6+kL17W2LibziOGjB4tVprYIWxc3rPS1c5VUjzZeJ\r\n1+Or6hq6UuY7ZjI5aB3I6s85nuF+WQ6BtKU+B1Bwj3JT6aj/jSse/6wf8MKd\r\n192/eTdZUhRtVkUwJRVueJz6+remjMhmoRyzgevgJ3fRUZ9aPphTklWHZQKG\r\n64AwFJCfebO8kLTGOjgNzgv9gAVBqXeb9KD2kH6SbMVXkDnUWYmLADNnCOfd\r\nPksBN91trvkJe2ZTeIFmgF6/rSV0cFhlyBQ=\r\n=sJ6T\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.31_1649444243212_0.1111058167246004"},"_hasShrinkwrap":false},"1.0.32":{"name":"@asemin/nestjs-exception-handling","version":"1.0.32","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.32","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-kWIYAv6LlUk4WeHprzdR6dE47KH9P0lnOzJJXTb4jtLEwDlzt736W0gwgAKHVCO/6GmHNMyYAys5UXvlA2PJjA==","shasum":"3bec79eb593a3cee3a6885639b7ad269c55f3878","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.32.tgz","fileCount":61,"unpackedSize":55488,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBb3ONL5L1hnMo6oUunfik00XH7RnpqcDXrQOtvdh42GAiBCfg4aTEBgWH3dvOMEkFFaehRbXGAZ2YHLdv7NcPY/dg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUIdUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr5lRAAjExmyXFcMySJuwQYbk53XNu8YhsIka0Pb5JSfniEmuw5b0X7\r\nLUbwiSxgke4Z7fEDS4NCI2izro+jRHqKeV3Z3kU37ssLHveRK0FEPZZVLZOB\r\nfvzUQICLyv7OGCfizxxZa6/Ne61pUM9bgiB1pLarSoZWjOayIaAngGLbJfwq\r\nzMfbYIeQUYMgGeI7nlTMoxlY9d5vrzjgMu6GSdQTfIFU2sBupS2KBpa1zNa0\r\n2kvUFd8tTBseyA5P/mMP3e7r2Rtb2qXqCdbY4Zd8b3WPlgTZzVzHj78YrNEE\r\nv2ulYFrUdw+mdF7mG5AE1CFw2b3HRl2U3wX1CTdra/CPQ8VLEJoRrfMoUvRy\r\nxB/LfzxTVpy0bcPsN3f8Jfx67WyOH3Sp6sm0kbKaQboE/JaU9eHMEWogtqUJ\r\nu+nM9qYxtYVVer5aXlnXieNtABkRFsrLkmfe1rpbocp/A1EsSZa8wbKxBujF\r\npKCMyPgSkYLzu+PLmbUoY5FOPh24342fJ5jMJixSA5hKPuXJQNHukJqQ2V5G\r\neXYK6iyJnoX6A9rsZfIDEeFPy4Wsxbdwf9XXJjuboQqgTdLZ5HQlXM0Z8l/B\r\nlmKs3ZmuCoyqi2bNbJA0U8o3znTaO7DTZ5lTtv5wPj04CCcVQIk0rGmT3hHM\r\n5lsefLaFfIi1j1vwYLh+IyrtTDGomDpGDH8=\r\n=l/5d\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.32_1649444692224_0.6870746003347785"},"_hasShrinkwrap":false},"1.0.33":{"name":"@asemin/nestjs-exception-handling","version":"1.0.33","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.33","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-PXATQsulhJm6gMJd8sngsl7UbjJsRG/40aIoidjrX2jUNiZkD11I/UKMG9dYadf9Br6Da+aFgD9i7NrHLdblPA==","shasum":"c1e79be192a434855d9e891f6e272501b498e6b0","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.33.tgz","fileCount":61,"unpackedSize":56070,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/AbRQUVkjy7RiALUxSvtDXbqRMOqqcauzLB7Po3bJKAIgEh5KKmIWTFFX0Wje+ShWKE6B1IgBVqUQ7yIcdgKUB98="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUIi6ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoW5w//WJTWaVaih4Aq+EXTi/uFs54bPjM1yBrwLWT5a1WnhQRXUu3t\r\nD7M9fbzz1UCYtuRqFTQCWgZxrtSh6pjsX0WmiW5BkNC2/0/+uvOVt3uPfTeC\r\nClKjCzY74olnxhhW6OuFROwOVQaQ5QnP+4ok2S9Tnn+zlagP7Q0cdzkCRvz8\r\niaGEpjI2Um+QDHNquotdr4Gc/23LTljSN+rwNoK3VlikdiwHLrMYfFbmsdoo\r\n+XnCM3YvzlPsMTL5j7GxSYSw5yaxilLYdOQuQzwp5bJNUok60ASJyXNE5Kqc\r\nwFi56yqmUSLEMGKFZJwBHlsiZz6ka3uvz/dRKVeYNscuFb2V1YBVud/yn7vB\r\nFDiFFODSeMPXEHItZXgi1I7cdvyaZbkMz75IVflleeLD5N3siqPDO6es0by7\r\nIJ7Q61F63PS29cDNVTfkLdVddUpkudretTU2CI4qCIV/0Z0ey7jHjDIVxNO+\r\nukLsjYmqEwGb03fP7msFAR8M8JV/Djyw41xk3w+RweARu3AVflcc05o4WZv1\r\nqwuXpFQ990bgi25ksikwAbB/YyOndBw2TVNslpCjN/56a2J21gvV2qnAxGqf\r\naItB+Fag38IRuuuHt4aeJKCBDkZUh5M9Qh5eGhvOzLZ/nHHrtbcpiIO8ozD4\r\nhDAiYpuPe0vBVYTQ0x6iHdvMowmEeQDS4N4=\r\n=VIhT\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.33_1649445050038_0.22126634200558892"},"_hasShrinkwrap":false},"1.0.34":{"name":"@asemin/nestjs-exception-handling","version":"1.0.34","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.34","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-iWBQZW0k/vTghuizUJKb8jteVl2omCtS3EMQ+uOXuObqMsq6HphJPIhB0iCUicZMq34Zo19R5ldrHNepXVH1Yw==","shasum":"6d9cd6d2b337a63a48e560c7018d4760b892a6f7","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.34.tgz","fileCount":61,"unpackedSize":56066,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBfgxnJgXdGzx0v6cGkfZaBwQ2Nl5Gdd/rLcLL+ZQrn5AiEAkO1xqe4ee0o+TtpC0pqWCXAlrgFSiS3NI88vZUABFLA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUI1uACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq7Ew/8C9l8hUXdYI28d4/qz/uLtpxjP3baTyi94/NrjrBBpmIiBK1r\r\nF1CWKwznvfaP9aVNlSUjn8fGJkQqJv+PRqfxp3Yjn///CfjYIb0AQB0Ng6rL\r\nbeIwmkEuDPBPFGi8r7Pu4ng7XXN45D5xjOE9YqrZsFhsrb7OXLKnkjvsyibR\r\nGybWCThmTFCKRTOuCZU6EfaXo/nbfuWUZ8u8fOT/3OdVusJOM9fzKROy4tkR\r\nSYTTbM49PyQfMuG2z3C1qeRnxi40u8sH4R8cdv5yGyar7IMhb3V+17rgM7Zc\r\n3dMG8dC1z963A42RgjdBklXAjQk+3aZiT8/Esd6VX9ZK5MHyj7Yze455az5f\r\nvQASExaecxDPAYN9Pi9FrBIBNbk+gfdQIQh89ATIbvwCB2HNAAFcGTqCVKE0\r\nAOoHt2/iyqJ7i0yjof63qRYKQFqHw6049lZE/9B0sTBcd+ntDxmTJDUnpccx\r\nP/DStIklGEh6t4mtQL6JFmX7kPRnHdCQUCL78QVTmk80sGSXCgj5E+/ezunK\r\nJFABOCv2EpnrhBE0A3igD2XlS2TylsnWzOj4vnWBlGC9/4WBR4xbjsaRLaDf\r\nX0oLlwIUoSIG/KUekBJbrLaFHROqi3bsdIRQekvkgk4NL2L8JO0o4A9Ro8XZ\r\nBvm5syZfjG7M1DlURwLzj5xazaDdZRj5txs=\r\n=Ks0n\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.34_1649446254282_0.9254009776028385"},"_hasShrinkwrap":false},"1.0.35":{"name":"@asemin/nestjs-exception-handling","version":"1.0.35","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.35","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-uxe6O0wfpkaksTsfMSUHhqHihXjFUGWCKM1xrrX8ipgCCla7US03beA/5U0CCSYNGfcDiYMnZ0+rmvJvLlD3aQ==","shasum":"65bd04f50c7832bfed160cda4849574a1773a44f","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.35.tgz","fileCount":61,"unpackedSize":56124,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDgvPF89bJmmPLLwvLEMJNUAwwCAhoCD+UWgTkmkPv3vAIhAKi+CZ+fg2UdI7wZmTlj6oBBggC+pnnmL2ELNFpjCghx"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUI7UACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpfUw//SJ5NO95HyJ7xANXfcISZqrmYnXtLYWFOTHq/DVkHtS7+wF2L\r\nvrWAtwOKVz6jr8JCXP31Ssx3TAl3LNF1ui0LtCX1jfrl1pj1KrJN01cSXLEv\r\nbtaYh+LPMh/0JP5hIHjHzdpy/5zGQg6coZg9fkyOhdI/gqP0uRQnjQ3EPjoN\r\ndyhYtSNGyfE9Y215Wqd9DBPZqSf+1VHJrxzJawHERP5KCn6X9yZa93uMdlRh\r\n9vjzU8lGh3n9Vqv/B3moF9/DDpR6BjfY9nICJCeq523Qp2WilmmbVvPBJt4i\r\nGN5UXHht+vcfJJ6Wry2KX4ZAoT+h+9d8P15/LQ/+Ohk3agTkj8tOuiOu0SX3\r\n89sIq4E4IHeJLV8mJylfE1TKaJNCJhhsSB/M/k+pr+zBanKXjZwm7rsaqZKw\r\ntVK2yO5cgT/HBHG96SAVn8gerLfvwNL6U9WHJ5H5VBrmX/WXc+sfiP629lRL\r\nbA7tY6jRZFFqpDizcqVHdhU8k7E/AaN6hrQIUqqJVzmDRaOdS2L8EJwov82z\r\nb9x9eChJMdL6appxCHcyK05wnYVRCEPs4WjuEZKmWnOKTCsc6BRBIxL6SAnv\r\noGtHTJH3sR0TigP0sulOmaHZX9Ll+55x+qOyHvGvyxtolddaRQcoHDec8Wxk\r\nNKhDWOtfSDikwy7xSRw3nSOv+ccWyu0WFZE=\r\n=t0XV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.35_1649446612654_0.487231769127042"},"_hasShrinkwrap":false},"1.0.36":{"name":"@asemin/nestjs-exception-handling","version":"1.0.36","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.36","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-7wFwp62kp6i76pH+poWT0f+viu+x/+EkAtPxJEDVzgbvfNAJNPFduXykvJRsTU7pWXPVb4L9uXT2PjyM9z2QmQ==","shasum":"d560bacfb40f9cd1d7d8e79b14839d0177f887a9","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.36.tgz","fileCount":61,"unpackedSize":56269,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAXuhYaK762SQJPh3HErM6ahiXHHEZID20BymHAkDU+zAiAK8ll07mm6MEbr4KjS4gudkHRUKdl3k7BFQGmp+YZSRw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUI+WACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrIww//RmufqWoQBlQgl3eZ6YulxEGKaSaQ6Zj50GxjJ9wRhIlmEoyc\r\nsKgzb7LdPTPUEoxVoCcT/t8gBMu+NovC+4T8716D7gsum6JwGcOCrR9a6p9f\r\nV3Ig7yJVfD7qdgYWY3cPCbUgN1/1OKG0DmcM/kd28Q1nu5SGpQ6j3DY0SMYI\r\ngBUHwRBunHLwLTmTSfXskvosVRQZJJ7CvJ8tsUjJE1Io+52q1ittQs+jM8Ql\r\ncE+fciTGG1wYLjPsRpieeOhup6kmoxHt7L361uVOPzSQbgjdDvyaRuyX9Yf7\r\neSmTJasG1JM08tWwOhVNEiR4pLXfBSBOG3u4/hS8vuE+0AFii1tlDNqdqRpM\r\nzhwIvgtLmaoG4+i53sF68FBGd6FPR/UnmUA8gg/7QBVem6zcbMH7amdGbU+3\r\n8lxcvXYaylU12UvccmLP2X57wfrvBVuCSC9YF6ySUGJDJHE5xXbtkTFrneba\r\nACt4athm6AbfjxKqN9L5BjFwHZF0UqOcVpLBzLpbKMZto50eFT4kfLPalRls\r\n8G4ookqK4eCeWuwfToo/oKwrWXv/P41pe5Yy4+5CZx4rsL7QQCYd1VO2gseg\r\n9sI+prKtgIFlq3ilb+Uh3KDprDQELDCWGTVmZRHIJUvcz6UCE27JaGlTmwUL\r\n63Iw0xGSiDlN2CZ5VK1mrrQk6fcdV7j7oIk=\r\n=yxq3\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.36_1649446806263_0.9580959550344459"},"_hasShrinkwrap":false},"1.0.37":{"name":"@asemin/nestjs-exception-handling","version":"1.0.37","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.37","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-2Mh/VoU8IJQcMCbi7W4x2nR6IEaWV4wX+8uptZVpUH2A/+csDLfCmkPy8XLkTAqdZtabetKyLsvIDZx3x6t5aQ==","shasum":"114d12efebd994895e29d1b00074458186961468","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.37.tgz","fileCount":61,"unpackedSize":57769,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBbFfzL/6zL/7ea1GbIcVjEjoQMettQnfj4EsmhrgwdQAiAkm3CAy4Xp+wr9/QJO/Ddpj/PLSSJFBxyrOX1oGb9Pww=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUJDJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrEKxAAmQM8wov2EcVHPELeHWC3iz5sALr9T7Ny6zrN7OZj/vKraUbD\r\nImE1wIwMgrEr285iaaqHAse+/Yf8meQoZIlsXcgGKYeO5FH0PBjZ2/fiAt+4\r\n5dA7WH1YU2hFyQZUA82583j73zv3pHZtD2teF6p6ssytylGsB68b+AHWFyAV\r\nbTuUZqbr+oafpuljTOvedbTV6qC/mtOlEAWrONrs3jQddQ8ih07cSzufyJB7\r\nYnuEdEacpIy4t5XXmaWr5vFRfDepFedfHQUsrOqpQV4vm7eEJdgoouZJQlJ5\r\n6aQeW3xuZUhMhLxCZAbVzO2BkY4sP6V3fK+WEnEo6aI8u3v2/wFCoQ9d2EGq\r\nTVj+h6HFv23oX+3EPqD97xNQX1wdLT23td8lKAU2gwIOP0kcSBcnIZ1AD/HO\r\neNq1yzWc0T5PRR/gr/eJrHHBySKbmeV3vPrPDhhDjnP08d84tSekkkB64952\r\nbc7X3AFWH1a7/L9HGf4COsW57YzGv2Lc9tDhFkAeBiAV+KBEA5m70JifoBCo\r\n1Pw78jEDOKUG/R3XBMW6VRER0fvv9A7th3E6xQqnoJRH3PIV3lAuvgFpPBGw\r\npCfIRL4Zt1FpS47t06dIy/SRRatwo9vwAfG2cdmhyPZzFUAU9PZDrS3zKgLO\r\naMHPUFU5HGgnBIvI/UvnCwaBp2qMdcrlEKs=\r\n=LMQO\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.37_1649447113353_0.03955901198167333"},"_hasShrinkwrap":false},"1.0.38":{"name":"@asemin/nestjs-exception-handling","version":"1.0.38","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.38","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-x2/wlKUerMa6WWMYLx+jHAoVrcVnNi3y5B51H8WlOtGh6KTE+dckUpIvxf9HllM8IIev60eB+ODSGkJQ9f/e+w==","shasum":"e075ce83670b090afe5aa5dfdb48662f9114c8c6","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.38.tgz","fileCount":61,"unpackedSize":56401,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHKJhVZ2KPiVUmXOyNfRry7dJQI0DIcLwazfSHZarRvFAiEA0NEptAnkKQr3OHLZBIAD0+I2vzXvisX5E/2HoqG/Q9g="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUY3ZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrbShAAi57Wlm/dHvqjkTCSUZZEg+tgjbHS1VAjSrwgHlqMdW6rnSg3\r\nc5UnyCd8UKPv749n2RYbNnM9TUFH+ScTeBNoh6zRFhusSoX3POU0u/N2aKLS\r\n6w8zytEXXwnZkCI2DLvrILoh41wK/fNhAvFQg3sdL0rf5Mn6Z6I3DvFQfRds\r\nFWwyNHE2Fue3esxWVuFc4HZ2DyOPodXGs+lkBq2j9RVWLMwjZM+UzH6YLlOT\r\n4fyun8m9EujwD3v/wf3czauV4e01Q3fN2NHYzjD7+XaucSMvAJghzJNA5Sy7\r\nxFjbvI+B/2nSdL8z3lR3pP4XQ+Rj0/0XnDI+S9l/awqfk5op/6RZHzCQXVHe\r\nb/l2lPUrR2p4Da1iVqf4x9cEGuW0+TQS0mqturWuIz4MWXGSk2ijHrBCf7ml\r\nU8crWqva5DlLfdJ0R2BUkvekUcn3px24RI2QY3Ns2bFhLZCGOTdfMycnrqw7\r\ndEgGpN8zAfoOhob6Jq9Vy8fcHBHnapVJcyvRqH4djvBXILZT0E/Wee9wDf4G\r\nhjyxQUaswLCQWhGhe2zc/ksC69OVorcNWERaFAo9qeL8lum7UZqsYsNRPge5\r\nZn/cgfIlav0oWFwvyol9aAeYjxj7qEWILaMvCDINN9pbQLMGSm13w1puVUBk\r\nqk2YqukFl6Z0Wmno2sPNEwko3eRhIQgv2bI=\r\n=hAP4\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.38_1649511897032_0.3178657884495468"},"_hasShrinkwrap":false},"1.0.39":{"name":"@asemin/nestjs-exception-handling","version":"1.0.39","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.39","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-zz4bB7AOK22/7kmEZUY7u+CWRHGdTi1JX3RTm9PnIMshBpH2U1mac1GrJrW8LBQCtv389GRLshAF0umK68rUdA==","shasum":"6e3745313d7131352a3309a316f49e44a3504c07","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.39.tgz","fileCount":61,"unpackedSize":54542,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDevZeog/9um55XNq3wQjkf8n66wDIxDMbHMaRz1+0idAiAApo5VSXgWzmir0gqdxn1+YhGkwpZ+ohzq4j+X7Mccdg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUY5eACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmocEw/9HBET85PLF/QxB9b4b1kdrtZhGmqG0FIb0obLuI25Yq/29A8v\r\n8wGf3iKQ514c1AYuGmX6DJwRza1tZJzDSB36iOceOy+RLqylL36QvOqFnue6\r\nf9wcL945BwHZszXrU77hm6i8WBMqILo7fAVyXq4r1t1wKdIb3+13agO+tTik\r\nBvKBVjoohB1FknKykvzja+0xqHMT0SX8I1IVTXAG9bxqvlTdNf2hmHC+Tor4\r\nta9yXTDFeD3BACm8x9veGVgGHdTQ6vANBk9vqrw8s7mnsDWcgj/RBPleDwTS\r\nAdWF2E0xM2LovvhRxd36w7vdOf9qELZ03ZUx7Zd9f5f+GflnIlHbdYDUWOlz\r\nGGUzLiEjtLxnqpF1OIC3OpMVJMRxgTbW72ul6BogDhAk8R+xdZQ/qyQkso/s\r\ngTUJNuzsjDru+b9j7g8sFjqdKxKXLoUFlpF7M2JrlO544Eec+0B+HXQfjo7E\r\nNUPOvIiqniyN77ocCjKQbbJt3yDQkTqKxutTIjm9PljMgXzOfF74cI3SMVqO\r\nf9h4AVgCszylBlmYCjxpp6ogeoea/sx302XFM5Bt9/W05xgdhW2NU2+7mhp2\r\nhsFnqnO6gHkKSOBU8avjcwJeZXQRfDmXSO6VkcYz3RgjlzsvdnyRwzZylWA2\r\nEQpXzVYJ/3kCnjUd4bMm5Im0Uovef2S5jTc=\r\n=+ES+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.39_1649512029830_0.9525792215036746"},"_hasShrinkwrap":false},"1.0.40":{"name":"@asemin/nestjs-exception-handling","version":"1.0.40","description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"private":false,"license":"UNLICENSED","main":"dist/main.js","scripts":{"prepublishOnly":"npm run build","build":"tsc -p tsconfig.build.json"},"publishConfig":{"cache":"cache/.npm","access":"public"},"repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"dependencies":{"@jira-killer/constants":"^1.0.3","@nestjs/common":"^8.0.0","@nestjs/platform-fastify":"^8.2.6","fastify":"^3.27.0"},"devDependencies":{"@nestjs/cli":"^8.0.0","@nestjs/schematics":"^8.0.0","@types/express":"^4.17.13","@types/node":"^16.0.0","prettier":"^2.3.2","source-map-support":"^0.5.20","ts-loader":"^9.2.3","ts-node":"^10.0.0","tsconfig-paths":"^3.10.1","typescript":"^4.3.5"},"rootDir":"src","gitHead":"0098fd3a107d66603cd19eabe25a8c2a6fe34128","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","_id":"@asemin/nestjs-exception-handling@1.0.40","_nodeVersion":"15.12.0","_npmVersion":"7.6.3","dist":{"integrity":"sha512-jR2EDGgk6HVYoBMSpTNLnKpE6q4NuYz2MkFmrKLFQJZiNIV8gKy2Hrrp2mHIZAVNDHF8YrR4LoVumnvleJs6MA==","shasum":"275c0703a8690d1c82c3be022548dc2d6f0dfb61","tarball":"https://registry.npmjs.org/@asemin/nestjs-exception-handling/-/nestjs-exception-handling-1.0.40.tgz","fileCount":61,"unpackedSize":56802,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF/fiCA7FphIqYMKOUuYaNUdPAJTH9BWeJ172znk+yDSAiBr/8GA9dL+0iQYes9aPHBBenlJIH+FAgWikkrxudi9Rg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUZFBACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoJcA//dT3kO84mOLIWGp8nZS9Lt2rCFWBzTorHXN+OsEoRLfNc/KOi\r\nKgDLNxX1Y7pXxYxCefTStmhSsPG+pb1sZykf68Q6z84TuhUJT7EJmQRsqKNJ\r\natoETHXjFyJEGWRWeweJq2gkY38IFskAsLRHyRZKvMft0BSxzIO6Z4I3quIz\r\nViUDQxLcuC/FTtUIirj3p7FHPTZEc9atpUW9kJIZBBu6NmqFtNbMuxlYRyzM\r\ngfUeFODIFq4A3H//qdE/9UejGrJw5AauOqfhzkdqRhd3No3FFGkjUz6xULXj\r\nRmcHOmszhLUNmgKHSI6q3FmrsFmqKb1ZZ/TW9e/9vYhL2+cFon3g/2XXPGvL\r\nxXtzBhY9PIbeKMDMN/liPBRlmwuV+1BsP6QZIpcD2jGMakfXQOOZhWBH8lqE\r\ngLAT3ePav4VecwMhA2/0UR1ac7o6C0ArFu9zjRTifEG5cnRW+a8N77hArlre\r\ndS0/orDgzS+WznbrahKxZonFsL7g9cNx63yEoWgLcADKQE5VPpoUri9dY9l2\r\nKpzL3T1sF1nDKWSrkzUEdeGw0wjzw2LX8T5HX7xwgu6IqmTLHBjokLTmQtb/\r\nsybTfGBO8xvOCwBEYAJIXWGYPqyt5NjdmS9zsGOSBuaZxElOqSkAtaBJz7ua\r\nFva1Kg9azufNLyeIm8QE6hgI/ocTs0rfwaM=\r\n=SiW9\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"anton.semin","email":"semin240@gmail.com"},"directories":{},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/nestjs-exception-handling_1.0.40_1649512768904_0.2561776014898016"},"_hasShrinkwrap":false}},"time":{"created":"2022-01-19T19:05:16.249Z","0.0.1":"2022-01-19T19:05:16.540Z","modified":"2022-04-09T13:59:29.249Z","0.0.2":"2022-01-19T19:10:06.473Z","0.0.3":"2022-01-19T19:18:39.531Z","0.0.4":"2022-01-20T06:58:11.488Z","0.0.5":"2022-01-27T17:42:14.356Z","0.0.6":"2022-01-27T17:45:40.166Z","0.0.7":"2022-01-27T17:51:37.998Z","0.0.8":"2022-01-27T17:56:36.219Z","0.0.9":"2022-02-03T12:46:05.830Z","0.0.10":"2022-02-03T12:50:02.622Z","0.0.11":"2022-03-07T16:56:35.873Z","0.0.12":"2022-03-07T17:02:26.295Z","0.0.13":"2022-03-07T17:57:08.241Z","0.0.14":"2022-03-07T18:11:13.523Z","0.0.15":"2022-03-07T18:24:58.295Z","0.0.16":"2022-03-07T18:30:15.547Z","0.0.17":"2022-03-21T08:51:24.531Z","0.0.18":"2022-03-22T05:56:41.591Z","0.0.19":"2022-03-22T06:08:30.428Z","0.0.20":"2022-03-22T06:12:39.054Z","0.0.21":"2022-03-22T06:58:37.238Z","0.0.22":"2022-03-24T05:50:42.328Z","0.0.23":"2022-03-24T06:46:54.867Z","0.0.24":"2022-03-24T06:51:45.243Z","0.0.25":"2022-03-24T13:23:36.415Z","0.0.26":"2022-03-24T13:59:06.931Z","0.0.27":"2022-03-24T14:09:33.837Z","0.0.28":"2022-03-24T14:42:22.943Z","0.0.29":"2022-03-25T13:06:45.535Z","1.0.0":"2022-03-27T16:56:04.331Z","1.0.1":"2022-03-27T17:11:18.679Z","1.0.2":"2022-03-28T16:07:18.321Z","1.0.3":"2022-03-28T16:15:53.248Z","1.0.4":"2022-03-29T12:37:48.184Z","1.0.5":"2022-03-29T12:47:50.125Z","1.0.6":"2022-03-29T12:52:55.234Z","1.0.7":"2022-03-29T14:33:41.642Z","1.0.8":"2022-03-30T09:11:50.905Z","1.0.9":"2022-03-30T15:58:47.541Z","1.0.10":"2022-03-30T16:11:29.536Z","1.0.11":"2022-03-30T16:14:21.766Z","1.0.12":"2022-04-05T10:51:24.362Z","1.0.13":"2022-04-05T11:05:35.570Z","1.0.14":"2022-04-05T11:06:52.978Z","1.0.15":"2022-04-05T11:13:55.173Z","1.0.16":"2022-04-05T11:24:16.577Z","1.0.17":"2022-04-05T11:25:36.130Z","1.0.18":"2022-04-05T13:08:37.268Z","1.0.19":"2022-04-05T15:39:50.912Z","1.0.20":"2022-04-05T15:40:42.127Z","1.0.21":"2022-04-07T17:09:56.047Z","1.0.22":"2022-04-08T16:44:05.026Z","1.0.23":"2022-04-08T16:56:52.387Z","1.0.24":"2022-04-08T17:04:39.226Z","1.0.25":"2022-04-08T17:11:20.925Z","1.0.26":"2022-04-08T17:16:47.274Z","1.0.27":"2022-04-08T17:36:11.823Z","1.0.28":"2022-04-08T18:26:28.612Z","1.0.29":"2022-04-08T18:39:20.622Z","1.0.30":"2022-04-08T18:49:38.003Z","1.0.31":"2022-04-08T18:57:23.373Z","1.0.32":"2022-04-08T19:04:52.360Z","1.0.33":"2022-04-08T19:10:50.243Z","1.0.34":"2022-04-08T19:30:54.462Z","1.0.35":"2022-04-08T19:36:52.810Z","1.0.36":"2022-04-08T19:40:06.461Z","1.0.37":"2022-04-08T19:45:13.585Z","1.0.38":"2022-04-09T13:44:57.182Z","1.0.39":"2022-04-09T13:47:09.984Z","1.0.40":"2022-04-09T13:59:29.145Z"},"maintainers":[{"name":"anton.semin","email":"semin240@gmail.com"}],"description":"<p align=\"center\">\r   <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r </p>","homepage":"https://github.com/AntonSeminski/NestJS_ExceptionHandling#readme","repository":{"type":"git","url":"git+https://github.com/AntonSeminski/NestJS_ExceptionHandling.git"},"author":{"name":"Anton Semin","email":"anton.siaminski@gmail.com"},"bugs":{"url":"https://github.com/AntonSeminski/NestJS_ExceptionHandling"},"license":"UNLICENSED","readme":"<p align=\"center\">\r\n  <a href=\"http://nestjs.com/\" target=\"blank\"><img src=\"https://nestjs.com/img/logo_text.svg\" width=\"320\" alt=\"Nest Logo\" /></a>\r\n</p>\r\n\r\n[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456\r\n[circleci-url]: https://circleci.com/gh/nestjs/nest\r\n\r\n  <p align=\"center\">A progressive <a href=\"http://nodejs.org\" target=\"_blank\">Node.js</a> framework for building efficient and scalable server-side applications.</p>\r\n    <p align=\"center\">\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/v/@nestjs/core.svg\" alt=\"NPM Version\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/l/@nestjs/core.svg\" alt=\"Package License\" /></a>\r\n<a href=\"https://www.npmjs.com/~nestjscore\" target=\"_blank\"><img src=\"https://img.shields.io/npm/dm/@nestjs/common.svg\" alt=\"NPM Downloads\" /></a>\r\n<a href=\"https://circleci.com/gh/nestjs/nest\" target=\"_blank\"><img src=\"https://img.shields.io/circleci/build/github/nestjs/nest/master\" alt=\"CircleCI\" /></a>\r\n<a href=\"https://coveralls.io/github/nestjs/nest?branch=master\" target=\"_blank\"><img src=\"https://coveralls.io/repos/github/nestjs/nest/badge.svg?branch=master#9\" alt=\"Coverage\" /></a>\r\n<a href=\"https://discord.gg/G7Qnnhy\" target=\"_blank\"><img src=\"https://img.shields.io/badge/discord-online-brightgreen.svg\" alt=\"Discord\"/></a>\r\n<a href=\"https://opencollective.com/nest#backer\" target=\"_blank\"><img src=\"https://opencollective.com/nest/backers/badge.svg\" alt=\"Backers on Open Collective\" /></a>\r\n<a href=\"https://opencollective.com/nest#sponsor\" target=\"_blank\"><img src=\"https://opencollective.com/nest/sponsors/badge.svg\" alt=\"Sponsors on Open Collective\" /></a>\r\n  <a href=\"https://paypal.me/kamilmysliwiec\" target=\"_blank\"><img src=\"https://img.shields.io/badge/Donate-PayPal-ff3f59.svg\"/></a>\r\n    <a href=\"https://opencollective.com/nest#sponsor\"  target=\"_blank\"><img src=\"https://img.shields.io/badge/Support%20us-Open%20Collective-41B883.svg\" alt=\"Support us\"></a>\r\n  <a href=\"https://twitter.com/nestframework\" target=\"_blank\"><img src=\"https://img.shields.io/twitter/follow/nestframework.svg?style=social&label=Follow\"></a>\r\n</p>\r\n  <!--[![Backers on Open Collective](https://opencollective.com/nest/backers/badge.svg)](https://opencollective.com/nest#backer)\r\n  [![Sponsors on Open Collective](https://opencollective.com/nest/sponsors/badge.svg)](https://opencollective.com/nest#sponsor)-->\r\n\r\n## Description\r\n\r\nNestjs Exception handling implementation.\r\nIncludes: \r\n    * Handler's chain mechanism\r\n    * Custom exception to inherit from\r\n    * Implemented Nest JS Validation Exception handler\r\n\r\nException structure: \r\n```\r\n    {\r\n        code: \"ERROR:<ENTITY>-<CODE_MESSAGE>\"\r\n        status: 500,\r\n        title: \"Error!\",\r\n        message: 'This was screwed',\r\n        body: { any info you like }\r\n    }\r\n```\r\n\r\n[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.\r\n\r\n## Use\r\n\r\n# installation\r\n```bash\r\n$ npm install @asemin/nestjs-exception-handling\r\n```\r\n\r\n# Handler creation example\r\nClass must extend ExceptionHandler and implement `handle` method. Method must return HandlerExceptionDto filled.\r\n```\r\nexport class MongoExceptionHandler extends ExceptionHandler{\r\n    handle(exception: any): HandledExceptionDto {\r\n        if ( !(exception instanceof MongoError) )\r\n            return this.next?.handle(exception);\r\n\r\n        switch (exception.code) {\r\n            case 11000:\r\n                return new HandledExceptionDto(getException(API_ERROR_CODES.DATABASE.DUPLICATE));\r\n        }\r\n\r\n        return null;\r\n    }\r\n}\r\n```\r\n\r\n# handlers chain creation\r\nEach member must extend ExceptionHandler\r\n```\r\nexport const handlersChain = [\r\n    new MongoExceptionHandler(),\r\n    new ValidationExceptionHandler(),\r\n    new CustomExceptionHandler(),\r\n    new HttpExceptionHandler()\r\n];\r\n```\r\n\r\n# Nestjs exception filter configuration. main.ts:\r\n```bash\r\n    const exceptionFilter = new ExceptionFilter(\r\n        <ExceptionHandler>createExceptionHandlersChain(handlersChain)\r\n    );\r\n\r\n    app.useGlobalFilters(exceptionFilter);\r\n```\r\n\r\n## Custom exception use\r\n\r\n# throwException\r\nUse one of the codes. Fill free to put any information to body (second param)\r\nIf there are no code suitable - throw any exception type manually.\r\n```\r\nthrowException(API_ERROR_CODES.COMMON.EMPTY_PARAM, {method: 'getByPermissionAndPermissionSets', fields: {permissionId, permissionSetIds}})\r\n```\r\n\r\n# getException info\r\n```\r\nconst {code, status, message} = getException(API_ERROR_CODES.COMMON.UNKNOWN);\r\n```","readmeFilename":"README.md"}