{"_id":"@elxxx/nestjs-class-validator","_rev":"5-8e3d629ca0911d8763f93d599974de28","name":"@elxxx/nestjs-class-validator","dist-tags":{"latest":"1.0.4"},"versions":{"1.0.0":{"name":"@elxxx/nestjs-class-validator","version":"1.0.0","keywords":["nestjs","class-validator","validation","i18n","internationalization","localization","accept-language","nestjs-pipe","nestjs-filter","error-messages","multilingual","multi-language","validator-i18n"],"author":{"name":"Elxxx"},"license":"MIT","_id":"@elxxx/nestjs-class-validator@1.0.0","maintainers":[{"name":"elxxx","email":"eliasalmarza20@gmail.com"}],"homepage":"https://github.com/Elxxx/elxxx-nestjs-class-validator-i18n-1.0.0#readme","bugs":{"url":"https://github.com/Elxxx/elxxx-nestjs-class-validator-i18n-1.0.0/issues"},"dist":{"shasum":"6496bd952befb2e37a08ed9af26725c75db9fbc0","tarball":"https://registry.npmjs.org/@elxxx/nestjs-class-validator/-/nestjs-class-validator-1.0.0.tgz","fileCount":22,"integrity":"sha512-dhP2WhFV8evaIJKUFkZhNeWBMhSEo2g+zaJzi8qVAyFV3uOlofhhb38uigjhOH1XGL+qN7fNWpaJtA5YgnuSLA==","signatures":[{"sig":"MEQCHydmahoQ+lQ9sPjn+NOXGAY+ysx5VYddDVeKwMC5cYECIQCxSgi2qREUpON9qCYUW0QR0CCyJmtPoOAJT80HiW/Biw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":184303},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"4f60c11ff6450557bade858f4271d4b7e9035bf4","private":false,"scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\" --fix","test":"jest","build":"rm -rf dist && nest build && cp -r src/messages dist/messages","format":"prettier --write \"src/**/*.ts\" \"test/**/*.ts\"","prepare":"husky","test:cov":"jest --coverage","test:e2e":"jest --config ./test/jest-e2e.json","start:dev":"nodemon test/main.ts","test:debug":"node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand","test:watch":"jest --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"elxxx","email":"eliasalmarza20@gmail.com"},"repository":{"url":"git+https://github.com/Elxxx/elxxx-nestjs-class-validator-i18n-1.0.0.git","type":"git"},"_npmVersion":"11.6.0","description":"Integración de NestJS para class-validator con soporte i18n utilizando encabezados Accept-Language y archivos de locales personalizables.","directories":{},"_nodeVersion":"20.19.5","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rxjs":"^7.8.2","husky":"^9.1.7","eslint":"^9.18.0","globals":"^16.0.0","nodemon":"^3.1.9","ts-jest":"^29.2.5","ts-node":"^10.9.2","@swc/cli":"^0.6.0","prettier":"^3.4.2","@swc/core":"^1.10.7","supertest":"^7.0.0","ts-loader":"^9.5.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@nestjs/cli":"^11.0.0","@types/jest":"^29.5.14","@types/node":"^22.10.7","@nestjs/core":"^11.0.11","@nestjs/common":"^11.0.11","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@commitlint/cli":"^19.8.0","@nestjs/testing":"^11.0.1","class-validator":"^0.14.1","@eslint/eslintrc":"^3.2.0","@types/supertest":"^6.0.2","reflect-metadata":"^0.2.2","class-transformer":"^0.5.1","typescript-eslint":"^8.20.0","@nestjs/schematics":"^11.0.0","source-map-support":"^0.5.21","@nestjs/mapped-types":"^2.1.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2","@nestjs/platform-express":"^11.0.11","@nestjs/platform-fastify":"^11.0.11","@commitlint/config-angular":"^19.8.0","eslint-plugin-simple-import-sort":"^12.1.1"},"peerDependencies":{"@nestjs/core":"^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0","@nestjs/common":"^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-class-validator_1.0.0_1758383209995_0.22004783630353386","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@elxxx/nestjs-class-validator","version":"1.0.1","keywords":["nestjs","class-validator","validation","i18n","internationalization","localization","accept-language","nestjs-pipe","nestjs-filter","error-messages","multilingual","multi-language","validator-i18n"],"author":{"name":"Elxxx"},"license":"MIT","_id":"@elxxx/nestjs-class-validator@1.0.1","maintainers":[{"name":"elxxx","email":"eliasalmarza20@gmail.com"}],"homepage":"https://github.com/Elxxx/elxxx-nestjs-class-validator-i18n-1.0.0#readme","bugs":{"url":"https://github.com/Elxxx/elxxx-nestjs-class-validator-i18n-1.0.0/issues"},"dist":{"shasum":"90253eab168d60b5f027757ed9202dceb1045847","tarball":"https://registry.npmjs.org/@elxxx/nestjs-class-validator/-/nestjs-class-validator-1.0.1.tgz","fileCount":22,"integrity":"sha512-iOZg/JaUDH2mSdeBu3bFKZi6vjHWGpWHarwikNK73FFCb7Itj/9wzwDtRxYUPxHavWgnTL1qa9BW8dNgJhEbZg==","signatures":[{"sig":"MEUCIQCspl/RNl8EKTYBfLEVLARdY1o6Iuy2fSNK8eHxJTgn1QIgcnopiXRjusVcoasz4rVIQbfEQusbeduS4xHswHoOQy8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":184303},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"f36abe5baff90da6df1de8e646929b5657a13b48","private":false,"scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\" --fix","test":"jest","build":"rm -rf dist && nest build && cp -r src/messages dist/messages","format":"prettier --write \"src/**/*.ts\" \"test/**/*.ts\"","prepare":"husky","test:cov":"jest --coverage","test:e2e":"jest --config ./test/jest-e2e.json","start:dev":"nodemon test/main.ts","test:debug":"node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand","test:watch":"jest --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"elxxx","email":"eliasalmarza20@gmail.com"},"repository":{"url":"git+https://github.com/Elxxx/elxxx-nestjs-class-validator-i18n-1.0.0.git","type":"git"},"_npmVersion":"11.6.0","description":"Integración de NestJS para class-validator con soporte i18n utilizando encabezados Accept-Language y archivos de locales personalizables.","directories":{},"_nodeVersion":"20.19.5","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rxjs":"^7.8.2","husky":"^9.1.7","eslint":"^9.18.0","globals":"^16.0.0","nodemon":"^3.1.9","ts-jest":"^29.2.5","ts-node":"^10.9.2","@swc/cli":"^0.6.0","prettier":"^3.4.2","@swc/core":"^1.10.7","supertest":"^7.0.0","ts-loader":"^9.5.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@nestjs/cli":"^11.0.0","@types/jest":"^29.5.14","@types/node":"^22.10.7","@nestjs/core":"^11.0.11","@nestjs/common":"^11.0.11","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@commitlint/cli":"^19.8.0","@nestjs/testing":"^11.0.1","class-validator":"^0.14.1","@eslint/eslintrc":"^3.2.0","@types/supertest":"^6.0.2","reflect-metadata":"^0.2.2","class-transformer":"^0.5.1","typescript-eslint":"^8.20.0","@nestjs/schematics":"^11.0.0","source-map-support":"^0.5.21","@nestjs/mapped-types":"^2.1.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2","@nestjs/platform-express":"^11.0.11","@nestjs/platform-fastify":"^11.0.11","@commitlint/config-angular":"^19.8.0","eslint-plugin-simple-import-sort":"^12.1.1"},"peerDependencies":{"@nestjs/core":"^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0","@nestjs/common":"^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-class-validator_1.0.1_1758383710461_0.7741880266956971","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@elxxx/nestjs-class-validator","version":"1.0.2","keywords":["nestjs","class-validator","validation","i18n","internationalization","localization","accept-language","nestjs-pipe","nestjs-filter","error-messages","multilingual","multi-language","validator-i18n"],"author":{"name":"Elxxx"},"license":"MIT","_id":"@elxxx/nestjs-class-validator@1.0.2","maintainers":[{"name":"elxxx","email":"eliasalmarza20@gmail.com"}],"homepage":"https://github.com/Elxxx/elxxx-nestjs-class-validator-i18n-1.0.0#readme","bugs":{"url":"https://github.com/Elxxx/elxxx-nestjs-class-validator-i18n-1.0.0/issues"},"dist":{"shasum":"6b67c67138eb9890c1583d2e67029de25537a991","tarball":"https://registry.npmjs.org/@elxxx/nestjs-class-validator/-/nestjs-class-validator-1.0.2.tgz","fileCount":22,"integrity":"sha512-rxlyJvybh7gSpVJ7Hmeh0FVkjoTBTHFAEcWSJji+cT0OFTuH+jzOz91SnpD+Pgtts4lc+dE+kds7Q3lyl/iyUQ==","signatures":[{"sig":"MEUCIQD7Vs3AqEIKttiiCkkw4i9+tJnfWB/BB/AUDROoLQvsXAIgSUX4lX6TgYv6dlUovznihBFIVU/fKwStETXMewjOO3A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":184268},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"9a5f9a165f4d0e0f20eeccf4d70aecb541b86f4e","private":false,"scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\" --fix","test":"jest","build":"rm -rf dist && nest build && cp -r src/messages dist/messages","format":"prettier --write \"src/**/*.ts\" \"test/**/*.ts\"","prepare":"husky","test:cov":"jest --coverage","test:e2e":"jest --config ./test/jest-e2e.json","start:dev":"nodemon test/main.ts","test:debug":"node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand","test:watch":"jest --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"elxxx","email":"eliasalmarza20@gmail.com"},"repository":{"url":"git+https://github.com/Elxxx/elxxx-nestjs-class-validator-i18n-1.0.0.git","type":"git"},"_npmVersion":"11.6.0","description":"Integración de NestJS para class-validator con soporte i18n utilizando encabezados Accept-Language y archivos de locales personalizables.","directories":{},"_nodeVersion":"20.19.5","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rxjs":"^7.8.2","husky":"^9.1.7","eslint":"^9.18.0","globals":"^16.0.0","nodemon":"^3.1.9","ts-jest":"^29.2.5","ts-node":"^10.9.2","@swc/cli":"^0.6.0","prettier":"^3.4.2","@swc/core":"^1.10.7","supertest":"^7.0.0","ts-loader":"^9.5.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@nestjs/cli":"^11.0.0","@types/jest":"^29.5.14","@types/node":"^22.10.7","@nestjs/core":"^11.0.11","@nestjs/common":"^11.0.11","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@commitlint/cli":"^19.8.0","@nestjs/testing":"^11.0.1","class-validator":"^0.14.1","@eslint/eslintrc":"^3.2.0","@types/supertest":"^6.0.2","reflect-metadata":"^0.2.2","class-transformer":"^0.5.1","typescript-eslint":"^8.20.0","@nestjs/schematics":"^11.0.0","source-map-support":"^0.5.21","@nestjs/mapped-types":"^2.1.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2","@nestjs/platform-express":"^11.0.11","@nestjs/platform-fastify":"^11.0.11","@commitlint/config-angular":"^19.8.0","eslint-plugin-simple-import-sort":"^12.1.1"},"peerDependencies":{"@nestjs/core":"^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0","@nestjs/common":"^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-class-validator_1.0.2_1758417027155_0.413768142052106","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@elxxx/nestjs-class-validator","version":"1.0.3","keywords":["nestjs","class-validator","validation","i18n","internationalization","localization","accept-language","nestjs-pipe","nestjs-filter","error-messages","multilingual","multi-language","validator-i18n"],"author":{"name":"Elxxx"},"license":"MIT","_id":"@elxxx/nestjs-class-validator@1.0.3","maintainers":[{"name":"elxxx","email":"eliasalmarza20@gmail.com"}],"homepage":"https://github.com/Elxxx/elxxx-nestjs-class-validator#readme","bugs":{"url":"https://github.com/Elxxx/elxxx-nestjs-class-validator/issues"},"dist":{"shasum":"8d1692d5cfe48631f444b6bdbfdd3a8941726511","tarball":"https://registry.npmjs.org/@elxxx/nestjs-class-validator/-/nestjs-class-validator-1.0.3.tgz","fileCount":25,"integrity":"sha512-eDwA0bS9GffFPzzG+pV52hn5iN4x552fFkHPIFrvOX9S4PzIWEXI3jnqZcBKVgO5YLWMV5j0qLM6FJxUX3zAGg==","signatures":[{"sig":"MEYCIQDosktEYjBsOqJyVxKIiMEGxqo21HIPDr6NjRexje+JGAIhAIy6MrcSIrPyrg3kE46abmqmTFL4rnh+8cOG07VtLiqB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":201174},"jest":{"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"testEnvironment":"node","coverageDirectory":"../coverage","collectCoverageFrom":["**/*.(t|j)s"],"moduleFileExtensions":["js","json","ts"]},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"ab1d9c5259281884d9b3438d9eccac917fa8b69c","private":false,"scripts":{"lint":"eslint \"{src,apps,libs,test}/**/*.ts\" --fix","test":"jest","build":"rm -rf dist && nest build && cp -r src/messages dist/messages","format":"prettier --write \"src/**/*.ts\" \"test/**/*.ts\"","prepare":"husky","test:cov":"jest --coverage","test:e2e":"jest --config ./test/jest-e2e.json","start:dev":"nodemon test/main.ts","test:debug":"node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand","test:watch":"jest --watch","prepublishOnly":"npm run build"},"_npmUser":{"name":"elxxx","email":"eliasalmarza20@gmail.com"},"repository":{"url":"git+https://github.com/Elxxx/elxxx-nestjs-class-validator.git","type":"git"},"_npmVersion":"11.6.0","description":"Integración de NestJS para class-validator con soporte i18n utilizando encabezados Accept-Language y archivos de locales personalizables.","directories":{},"_nodeVersion":"20.19.5","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","rxjs":"^7.8.2","husky":"^9.1.7","eslint":"^9.18.0","globals":"^16.0.0","nodemon":"^3.1.9","ts-jest":"^29.2.5","ts-node":"^10.9.2","@swc/cli":"^0.6.0","prettier":"^3.4.2","@swc/core":"^1.10.7","supertest":"^7.0.0","ts-loader":"^9.5.2","@eslint/js":"^9.18.0","typescript":"^5.7.3","@nestjs/cli":"^11.0.0","@types/jest":"^29.5.14","@types/node":"^22.10.7","@nestjs/core":"^11.0.11","@nestjs/common":"^11.0.11","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@commitlint/cli":"^19.8.0","@nestjs/testing":"^11.0.1","class-validator":"^0.14.1","@eslint/eslintrc":"^3.2.0","@types/supertest":"^6.0.2","reflect-metadata":"^0.2.2","class-transformer":"^0.5.1","typescript-eslint":"^8.20.0","@nestjs/schematics":"^11.0.0","source-map-support":"^0.5.21","@nestjs/mapped-types":"^2.1.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2","@nestjs/platform-express":"^11.0.11","@nestjs/platform-fastify":"^11.0.11","@commitlint/config-angular":"^19.8.0","eslint-plugin-simple-import-sort":"^12.1.1"},"peerDependencies":{"@nestjs/core":"^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0","@nestjs/common":"^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0"},"_npmOperationalInternal":{"tmp":"tmp/nestjs-class-validator_1.0.3_1758417445059_0.20658567703500386","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@elxxx/nestjs-class-validator","version":"1.0.4","publishConfig":{"access":"public"},"description":"Integración de NestJS para class-validator con soporte i18n utilizando encabezados Accept-Language y archivos de locales personalizables.","author":{"name":"Elxxx"},"private":false,"license":"MIT","main":"dist/index.js","types":"dist/index.d.ts","keywords":["nestjs","class-validator","validation","i18n","internationalization","localization","accept-language","nestjs-pipe","nestjs-filter","error-messages","multilingual","multi-language","validator-i18n"],"scripts":{"build":"rm -rf dist && nest build && cp -r src/messages dist/messages","prepublishOnly":"npm run build","format":"prettier --write \"src/**/*.ts\" \"test/**/*.ts\"","start:dev":"nodemon test/main.ts","lint":"eslint \"{src,apps,libs,test}/**/*.ts\" --fix","test":"jest","test:watch":"jest --watch","test:cov":"jest --coverage","test:debug":"node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand","test:e2e":"jest --config ./test/jest-e2e.json","prepare":"husky"},"peerDependencies":{"@nestjs/common":"^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0","@nestjs/core":"^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0"},"devDependencies":{"@commitlint/cli":"^19.8.0","@commitlint/config-angular":"^19.8.0","@eslint/eslintrc":"^3.2.0","@eslint/js":"^9.18.0","@nestjs/cli":"^11.0.0","@nestjs/common":"^11.0.11","@nestjs/core":"^11.0.11","@nestjs/mapped-types":"^2.1.0","@nestjs/platform-express":"^11.0.11","@nestjs/platform-fastify":"^11.0.11","@nestjs/schematics":"^11.0.0","@nestjs/testing":"^11.0.1","@swc/cli":"^0.6.0","@swc/core":"^1.10.7","@types/express":"^5.0.0","@types/jest":"^29.5.14","@types/node":"^22.10.7","@types/supertest":"^6.0.2","class-transformer":"^0.5.1","class-validator":"^0.14.1","eslint":"^9.18.0","eslint-config-prettier":"^10.0.1","eslint-plugin-prettier":"^5.2.2","eslint-plugin-simple-import-sort":"^12.1.1","globals":"^16.0.0","husky":"^9.1.7","jest":"^29.7.0","nodemon":"^3.1.9","prettier":"^3.4.2","reflect-metadata":"^0.2.2","rxjs":"^7.8.2","source-map-support":"^0.5.21","supertest":"^7.0.0","ts-jest":"^29.2.5","ts-loader":"^9.5.2","ts-node":"^10.9.2","tsconfig-paths":"^4.2.0","typescript":"^5.7.3","typescript-eslint":"^8.20.0"},"jest":{"moduleFileExtensions":["js","json","ts"],"rootDir":"src","testRegex":".*\\.spec\\.ts$","transform":{"^.+\\.(t|j)s$":"ts-jest"},"collectCoverageFrom":["**/*.(t|j)s"],"coverageDirectory":"../coverage","testEnvironment":"node"},"repository":{"type":"git","url":"git+https://github.com/Elxxx/elxxx-nestjs-class-validator.git"},"bugs":{"url":"https://github.com/Elxxx/elxxx-nestjs-class-validator/issues"},"homepage":"https://github.com/Elxxx/elxxx-nestjs-class-validator#readme","_id":"@elxxx/nestjs-class-validator@1.0.4","gitHead":"ef93a586fa96ec2927d1f15685fd02f44c8cfbb1","_nodeVersion":"20.19.5","_npmVersion":"11.6.0","dist":{"integrity":"sha512-Rf0hk5vb3NxNnSe2heN5eDDoHPCGk/IhW3/rBmk8W0eOOXQZaX6h45G6+yjhLGlqliLDZG0HYipxwczO3hLbrw==","shasum":"3d866f49ab83f0b6bf8646567584f50deceea118","tarball":"https://registry.npmjs.org/@elxxx/nestjs-class-validator/-/nestjs-class-validator-1.0.4.tgz","fileCount":25,"unpackedSize":201405,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBEMvbXPoaFXMwjcT3QdAzV7X+WIp/PsR4ulNjMdkQItAiEAhi8b/Iy6u1As52JGgLjNWfiWOimR8nzFNcN68mx5XI0="}]},"_npmUser":{"name":"elxxx","email":"eliasalmarza20@gmail.com"},"directories":{},"maintainers":[{"name":"elxxx","email":"eliasalmarza20@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/nestjs-class-validator_1.0.4_1758417600577_0.07036661548543277"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-20T15:46:49.906Z","modified":"2025-09-21T01:20:01.001Z","1.0.0":"2025-09-20T15:46:50.192Z","1.0.1":"2025-09-20T15:55:10.657Z","1.0.2":"2025-09-21T01:10:27.337Z","1.0.3":"2025-09-21T01:17:25.245Z","1.0.4":"2025-09-21T01:20:00.795Z"},"bugs":{"url":"https://github.com/Elxxx/elxxx-nestjs-class-validator/issues"},"author":{"name":"Elxxx"},"license":"MIT","homepage":"https://github.com/Elxxx/elxxx-nestjs-class-validator#readme","keywords":["nestjs","class-validator","validation","i18n","internationalization","localization","accept-language","nestjs-pipe","nestjs-filter","error-messages","multilingual","multi-language","validator-i18n"],"repository":{"type":"git","url":"git+https://github.com/Elxxx/elxxx-nestjs-class-validator.git"},"description":"Integración de NestJS para class-validator con soporte i18n utilizando encabezados Accept-Language y archivos de locales personalizables.","maintainers":[{"name":"elxxx","email":"eliasalmarza20@gmail.com"}],"readme":"# @elxxx/nestjs-class-validator\n\n**@elxxx/nestjs-class-validator** @elxxx/nestjs-class-validator es una extensión ligera para NestJS que provee mensajes de error localizados para class-validator sin necesidad de personalizar cada decorador.\nPermite manejar errores de validación en múltiples idiomas mediante archivos JSON estándar e integra directamente con ValidationPipe y ExceptionFilter.\n\n## ✨ Características principales\n\n- 🌍 Soporta múltiples idiomas (en , vi, fr, cn, hi, es)\n- 📥 Lee la cabecera Accept-Language para determinar el idioma dinámicamente\n- 📦 Integración lista para usar con el ValidationPipe de NestJS\n- 🧩 Archivos de mensajes personalizables para cada locale\n- ⚡ Cero configuración necesaria en cada decorador\n\n## 📦 Instalación\n\n**npm:**\n\n```bash\nnpm @elxxx/nestjs-class-validator\n```\n\n**yarn:**\n\n```bash\nyarn add @elxxx/nestjs-class-validator\n```\n\n**pnpm:**\n\n```bash\npnpm add @elxxx/nestjs-class-validator\n```\n\n## 🚀 Uso\n\n### 1. Registrar Pipes y Filtros globales\n\nUtiliza las clases de excepción y filtro provistas para aplicar validación localizada en toda la aplicación.\n\n```ts\n// main.ts\nimport {\n  I18nValidationException,\n  I18nValidationFilter,\n} from '@elxxx/nestjs-class-validator';\nimport { ValidationPipe } from '@nestjs/common';\nimport { HttpAdapterHost, NestFactory } from '@nestjs/core';\nimport { AppModule } from './app.module';\n\nasync function bootstrap() {\n  const app = await NestFactory.create(AppModule);\n\n  app.useGlobalPipes(\n    new ValidationPipe({\n      whitelist: true,\n      transform: true,\n      forbidNonWhitelisted: true,\n      exceptionFactory: (errors) => new I18nValidationException(errors),\n    }),\n  );\n\n  const adapterHost = app.get(HttpAdapterHost);\n  app.useGlobalFilters(\n    new I18nValidationFilter(adapterHost, { fallbackLanguage: 'es' }),\n  );\n\n  await app.listen(3000);\n}\n\nbootstrap();\n```\n\n### 2. Crear DTO con class-validator\n\n```ts\nimport { IsEmail, IsNotEmpty, MinLength, IsStrongPassword } from 'class-validator';\n\nexport class RegisterUserDto {\n  @IsEmail()\n  email: string;\n\n  @IsNotEmpty()\n  username: string;\n\n  @MinLength(8)\n  @IsStrongPassword()\n  password: string;\n}\n```\n\n### 3. Enviar una petición con cabecera `Accept-Language`\n\n```http\nPOST /register\nAccept-Language: es\nContent-Type: application/json\n\n{\n  \"email\": \"usuario@example.com\",\n  \"username\": \"elias\",\n  \"password\": \"123\"\n}\n```\n\nRespuesta:\n\n```json\n{\n  \"statusCode\": 400,\n  \"message\": [\n    \"El campo password debe tener al menos 8 caracteres\",\n    \"El campo password debe ser una contraseña segura\"\n  ],\n  \"error\": \"Bad Request\"\n}\n```\n\n## 🛠️ Issues y Contribuciones\n\nSiéntete libre de abrir [issues](https://github.com/Elxxx/elxxx-nestjs-class-validator-i18n-1.0.0/issues) o enviar pull requests para mejoras, correcciones de errores o soporte de nuevos idiomas.\n\n## 📄 License\n\nLicencia MIT © [elxxx](https://github.com/Elxxx)\n","readmeFilename":"README.md"}