{"_id":"@serviceup/prisma-generator-class-validator","_rev":"6-7e9bc67be3ba2790de946fe1179fa5f4","name":"@serviceup/prisma-generator-class-validator","dist-tags":{"latest":"7.0.0"},"versions":{"6.5.0":{"name":"@serviceup/prisma-generator-class-validator","version":"6.5.0","keywords":["prisma","prisma-client","prisma-schema","class-validator","prisma-generator","prisma-generator-class-validator"],"license":"MIT","_id":"@serviceup/prisma-generator-class-validator@6.5.0","maintainers":[{"name":"benweatherman","email":"ben@serviceup.com"},{"name":"dvanfleet","email":"dvanfleet@serviceup.com"}],"homepage":"https://github.com/ServiceUpAuto/prisma-class-validator-generator#readme","bugs":{"url":"https://github.com/ServiceUpAuto/prisma-class-validator-generator/issues"},"bin":{"prisma-generator-class-validator":"lib/generator.js"},"dist":{"shasum":"e74891ef3118d7ad75d3f1cc2b8a92662ec82f6f","tarball":"https://registry.npmjs.org/@serviceup/prisma-generator-class-validator/-/prisma-generator-class-validator-6.5.0.tgz","fileCount":33,"integrity":"sha512-jfl9p5XCmZNKnQS0CvOrucgh6NrX18x8H7RqAypEpVxZQ+iBvEF5zmbMXeEdawiJBiiN/lSeTePFsCXyISCd/w==","signatures":[{"sig":"MEYCIQDlgqjszqZMWM2394Pbpn+2M5TLVgIRMXmKPTqSBn9r0wIhAI/d+Om6dDcLuLXt2CxWyl6S/3OkUCTn122yylK9FIr+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33461},"gitHead":"c1ba8290c423ed588723fb8160ab9a142823d43e","scripts":{"start":"tsc && npx prisma generate","package:publish":"./package.sh && cd package && npm publish"},"_npmUser":{"name":"dvanfleet","email":"dvanfleet@serviceup.com"},"repository":{"url":"git+https://github.com/ServiceUpAuto/prisma-class-validator-generator.git","type":"git"},"_npmVersion":"10.9.0","description":"Prisma 2+ generator to emit typescript models of your database with class validator","directories":{},"_nodeVersion":"22.11.0","dependencies":{"tslib":"^2.6.2","prettier":"^2.8.8","ts-morph":"^25.0.0","pluralize":"^8.0.0","@prisma/client":"^6.3.1","class-validator":"^0.13.2","@prisma/internals":"^6.3.1","@prisma/generator-helper":"^6.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"prisma":"^6.3.1","typescript":"^5.4.5","@types/node":"^18.19.31","@types/prettier":"^2.7.3","class-validator":"^0.14.1","@types/pluralize":"0.0.33"},"peerDependencies":{"class-validator":"^0.14.1"},"_npmOperationalInternal":{"tmp":"tmp/prisma-generator-class-validator_6.5.0_1743539411690_0.9542754947314194","host":"s3://npm-registry-packages-npm-production"}},"6.6.0":{"name":"@serviceup/prisma-generator-class-validator","version":"6.6.0","keywords":["prisma","prisma-client","prisma-schema","class-validator","prisma-generator","prisma-generator-class-validator"],"license":"MIT","_id":"@serviceup/prisma-generator-class-validator@6.6.0","maintainers":[{"name":"benweatherman","email":"ben@serviceup.com"},{"name":"dvanfleet","email":"dvanfleet@serviceup.com"}],"homepage":"https://github.com/ServiceUpAuto/prisma-class-validator-generator#readme","bugs":{"url":"https://github.com/ServiceUpAuto/prisma-class-validator-generator/issues"},"bin":{"prisma-generator-class-validator":"lib/generator.js"},"dist":{"shasum":"3fc15ab1e43ab348f7252643b09dc01ca56ab663","tarball":"https://registry.npmjs.org/@serviceup/prisma-generator-class-validator/-/prisma-generator-class-validator-6.6.0.tgz","fileCount":51,"integrity":"sha512-ceg/xouutXVc3+xpzjiHaXbdN/YTA3vZwyDMh/Ts8HsMYoloFt9aWUEawwzFkK9RXpz+b56x9mzLCyETyNWINQ==","signatures":[{"sig":"MEQCIFFlfWZ5Iy6hv1Fj/LZ+wF/GiC3VmPwmRgOmd7ftTm9sAiBXQSxSQAWid6+ApNx6so/M2btZ9nkzfh3YwGoke4/+bw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83114},"gitHead":"2923226db3ac5b1dd1b569693bf94057dbc626b4","scripts":{"test":"jest test/unit/helpers.test.ts","build":"tsc -p tsconfig.build.json","start":"tsc -p tsconfig.build.json && npx prisma generate","test:all":"jest","build:test":"tsc -p tsconfig.build.json && jest","test:watch":"jest --watch","test:coverage":"jest --coverage","package:publish":"./package.sh && cd package && npm publish"},"_npmUser":{"name":"dvanfleet","email":"dvanfleet@serviceup.com"},"repository":{"url":"git+https://github.com/ServiceUpAuto/prisma-class-validator-generator.git","type":"git"},"_npmVersion":"10.9.0","description":"Prisma 2+ generator to emit typescript models of your database with class validator","directories":{},"_nodeVersion":"22.11.0","dependencies":{"tslib":"^2.6.2","prettier":"^2.8.8","ts-morph":"^25.0.0","pluralize":"^8.0.0","@prisma/client":"^6.3.1","@prisma/internals":"^6.3.1","@prisma/generator-helper":"^6.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","prisma":"^6.3.1","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/node":"^18.19.31","@types/prettier":"^2.7.3","class-validator":"^0.14.1","@types/pluralize":"0.0.33"},"peerDependencies":{"class-validator":"^0.14.0"},"_npmOperationalInternal":{"tmp":"tmp/prisma-generator-class-validator_6.6.0_1744036804130_0.4423572991470861","host":"s3://npm-registry-packages-npm-production"}},"6.6.1-rc.1":{"name":"@serviceup/prisma-generator-class-validator","version":"6.6.1-rc.1","keywords":["prisma","prisma-client","prisma-schema","class-validator","prisma-generator","prisma-generator-class-validator"],"license":"MIT","_id":"@serviceup/prisma-generator-class-validator@6.6.1-rc.1","maintainers":[{"name":"benweatherman","email":"ben@serviceup.com"},{"name":"dvanfleet","email":"dvanfleet@serviceup.com"}],"homepage":"https://github.com/ServiceUpAuto/prisma-class-validator-generator#readme","bugs":{"url":"https://github.com/ServiceUpAuto/prisma-class-validator-generator/issues"},"bin":{"prisma-generator-class-validator":"lib/generator.js"},"dist":{"shasum":"f2a03d1189e093ad28b77e37572e64c422083d1f","tarball":"https://registry.npmjs.org/@serviceup/prisma-generator-class-validator/-/prisma-generator-class-validator-6.6.1-rc.1.tgz","fileCount":36,"integrity":"sha512-DCAxdc8KfLr0V2hVWkmxCE72NpPGuheOzH2C74s0fDp/efVRcCS52+GXyI5d1pAT/IFaPeNcmaGy2uy+PSXpCQ==","signatures":[{"sig":"MEUCIDQ5ouzFWhYRZiGtybtTV8qGJYb+SYtynZ7W4QktK8ZaAiEAwB2u0pbNdgSauuH100pKASHngBo0lCb0gzavA9f+kIc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33392},"scripts":{"test":"jest test/unit/helpers.test.ts","build":"tsc -p tsconfig.build.json","start":"tsc -p tsconfig.build.json && npx prisma generate","test:all":"jest","build:test":"tsc -p tsconfig.build.json && jest","test:watch":"jest --watch","test:coverage":"jest --coverage","package:publish":"./package.sh && cd package && npm publish"},"_npmUser":{"name":"benweatherman","email":"ben@serviceup.com"},"repository":{"url":"https://github.com/ServiceUpAuto/prisma-class-validator-generator","type":"git"},"description":"Prisma 2+ generator to emit typescript models of your database with class validator","directories":{},"licenseText":"MIT License\n\nCopyright (c) 2022 omar-dulaimi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","dependencies":{"tslib":"^2.6.2","prettier":"^2.8.8","ts-morph":"^25.0.0","pluralize":"^8.0.0","@prisma/client":"^6.3.1","@prisma/internals":"^6.3.1","@prisma/generator-helper":"^6.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","prisma":"^6.3.1","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/node":"^18.19.31","@types/prettier":"^2.7.3","class-validator":"^0.14.1","@types/pluralize":"0.0.33"},"peerDependencies":{"class-validator":"^0.14.0"},"_npmOperationalInternal":{"tmp":"tmp/prisma-generator-class-validator_6.6.1-rc.1_1747423149561_0.3087833196740468","host":"s3://npm-registry-packages-npm-production"}},"6.6.1":{"name":"@serviceup/prisma-generator-class-validator","version":"6.6.1","keywords":["prisma","prisma-client","prisma-schema","class-validator","prisma-generator","prisma-generator-class-validator"],"license":"MIT","_id":"@serviceup/prisma-generator-class-validator@6.6.1","maintainers":[{"name":"benweatherman","email":"ben@serviceup.com"},{"name":"dvanfleet","email":"dvanfleet@serviceup.com"}],"homepage":"https://github.com/ServiceUpAuto/prisma-class-validator-generator#readme","bugs":{"url":"https://github.com/ServiceUpAuto/prisma-class-validator-generator/issues"},"bin":{"prisma-generator-class-validator":"lib/generator.js"},"dist":{"shasum":"11a0a3ace8304c67e16bf2ad8a8714023ab604bd","tarball":"https://registry.npmjs.org/@serviceup/prisma-generator-class-validator/-/prisma-generator-class-validator-6.6.1.tgz","fileCount":36,"integrity":"sha512-Es2boRAeXghql0ee+/JonSWkPTeXyqqZrIz9daLBkf0yLnfP1oi1i9eorxa2PP1e2kNjj5XbtPMaAcdZIFj0lw==","signatures":[{"sig":"MEUCIQDKgn6VpuNaUKF0zR9Z+//7c+hpin+U1UxqI2gZqWeDmAIgMlQtPgDMJnO4UgCswkk36G5yeVonnzr7khuhxJvFULE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33387},"scripts":{"test":"jest test/unit/helpers.test.ts","build":"tsc -p tsconfig.build.json","start":"tsc -p tsconfig.build.json && npx prisma generate","test:all":"jest","build:test":"tsc -p tsconfig.build.json && jest","test:watch":"jest --watch","test:coverage":"jest --coverage","package:publish":"./package.sh && cd package && npm publish"},"_npmUser":{"name":"benweatherman","email":"ben@serviceup.com"},"repository":{"url":"https://github.com/ServiceUpAuto/prisma-class-validator-generator","type":"git"},"description":"Prisma 2+ generator to emit typescript models of your database with class validator","directories":{},"licenseText":"MIT License\n\nCopyright (c) 2022 omar-dulaimi\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","dependencies":{"tslib":"^2.6.2","prettier":"^2.8.8","ts-morph":"^25.0.0","pluralize":"^8.0.0","@prisma/client":"^6.3.1","@prisma/internals":"^6.3.1","@prisma/generator-helper":"^6.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","prisma":"^6.3.1","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/node":"^18.19.31","@types/prettier":"^2.7.3","class-validator":"^0.14.1","@types/pluralize":"0.0.33"},"peerDependencies":{"class-validator":"^0.14.0"},"_npmOperationalInternal":{"tmp":"tmp/prisma-generator-class-validator_6.6.1_1747833021121_0.21210603430058983","host":"s3://npm-registry-packages-npm-production"}},"6.6.3":{"name":"@serviceup/prisma-generator-class-validator","version":"6.6.3","keywords":["prisma","prisma-client","prisma-schema","class-validator","prisma-generator","prisma-generator-class-validator"],"license":"MIT","_id":"@serviceup/prisma-generator-class-validator@6.6.3","maintainers":[{"name":"benweatherman","email":"ben@serviceup.com"},{"name":"dvanfleet","email":"dvanfleet@serviceup.com"}],"homepage":"https://github.com/ServiceUpAuto/prisma-class-validator-generator#readme","bugs":{"url":"https://github.com/ServiceUpAuto/prisma-class-validator-generator/issues"},"bin":{"prisma-generator-class-validator":"lib/generator.js"},"dist":{"shasum":"ce683906bea86944149450b109bfd83f09ef168b","tarball":"https://registry.npmjs.org/@serviceup/prisma-generator-class-validator/-/prisma-generator-class-validator-6.6.3.tgz","fileCount":33,"integrity":"sha512-jmhE9ETl+UnANwDjezCw2Pc/i1bn0quKe2CfrmG0H24CNN2kCY8Q27sj1jMSla10TcWzQdFGA3nkuRYEf8Vt/w==","signatures":[{"sig":"MEUCIFzZ1EY3DPgt1+qJYejjp2nlb0/tlRpzQJiAS2lZ+TTFAiEAuBFbP6hiCYf9jST13Or8zo8u3swdIMuvNlmLwOEnISk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":35053},"gitHead":"f59d2804e37334f76db18b1909da44cbf73bb9ab","scripts":{"test":"jest test/unit/helpers.test.ts","build":"tsc -p tsconfig.build.json","start":"tsc -p tsconfig.build.json && npx prisma generate","test:all":"jest","build:test":"tsc -p tsconfig.build.json && jest","test:watch":"jest --watch","test:coverage":"jest --coverage","package:publish":"./package.sh && cd package && npm publish"},"_npmUser":{"name":"benweatherman","email":"ben@serviceup.com"},"repository":{"url":"git+https://github.com/ServiceUpAuto/prisma-class-validator-generator.git","type":"git"},"_npmVersion":"11.8.0","description":"Prisma 2+ generator to emit typescript models of your database with class validator","directories":{},"_nodeVersion":"24.13.1","dependencies":{"tslib":"^2.6.2","prettier":"^2.8.8","ts-morph":"^25.0.0","pluralize":"^8.0.0","@prisma/client":"^6.3.1","@prisma/internals":"^6.3.1","@prisma/generator-helper":"^6.3.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","prisma":"^6.3.1","ts-jest":"^29.1.2","typescript":"^5.4.5","@types/jest":"^29.5.12","@types/node":"^18.19.31","@types/prettier":"^2.7.3","class-validator":"^0.14.1","@types/pluralize":"0.0.33"},"peerDependencies":{"class-validator":"^0.14.0"},"_npmOperationalInternal":{"tmp":"tmp/prisma-generator-class-validator_6.6.3_1776717028301_0.8742801773934963","host":"s3://npm-registry-packages-npm-production"}},"7.0.0":{"name":"@serviceup/prisma-generator-class-validator","version":"7.0.0","description":"Prisma 2+ generator to emit typescript models of your database with class validator","repository":{"type":"git","url":"git+https://github.com/ServiceUpAuto/prisma-class-validator-generator.git"},"bin":{"prisma-generator-class-validator":"lib/generator.js"},"scripts":{"start":"tsc -p tsconfig.build.json && npx prisma generate","package:publish":"./package.sh && cd package && npm publish","test":"jest test/unit/helpers.test.ts","test:all":"jest","test:watch":"jest --watch","test:coverage":"jest --coverage","build":"tsc -p tsconfig.build.json","build:test":"tsc -p tsconfig.build.json && jest"},"keywords":["prisma","prisma-client","prisma-schema","class-validator","prisma-generator","prisma-generator-class-validator"],"license":"MIT","dependencies":{"@prisma/client":"^7.0.0","@prisma/generator-helper":"^7.0.0","@prisma/internals":"^7.0.0","pluralize":"^8.0.0","prettier":"^2.8.8","ts-morph":"^25.0.0","tslib":"^2.6.2"},"devDependencies":{"@types/jest":"^29.5.12","@types/node":"^18.19.31","@types/pluralize":"0.0.33","@types/prettier":"^2.7.3","class-validator":"^0.14.1","jest":"^29.7.0","prisma":"^7.0.0","ts-jest":"^29.1.2","typescript":"^5.4.5"},"peerDependencies":{"class-validator":"^0.14.0","prisma":"^7.0.0"},"publishConfig":{"access":"public"},"bugs":{"url":"https://github.com/ServiceUpAuto/prisma-class-validator-generator/issues"},"homepage":"https://github.com/ServiceUpAuto/prisma-class-validator-generator#readme","gitHead":"6f8330898c6a3de36ddf504c1027cd2aeb74cbbf","_id":"@serviceup/prisma-generator-class-validator@7.0.0","_nodeVersion":"24.15.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-5C9M6drxgRF5OPYXtDVQDWwTDJ3Zgvf082bXFKy7Ccd0xPhg10iTnMu3jxy/kZ1yQ+SUXI0fo7GRZ6ZC8yYBOw==","shasum":"add39aeefcd89f58698f45185f7814408014c0cc","tarball":"https://registry.npmjs.org/@serviceup/prisma-generator-class-validator/-/prisma-generator-class-validator-7.0.0.tgz","fileCount":33,"unpackedSize":34768,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIEKAtRfVkXV+UC/yZJEutj3vsB5Z/poEDdh5/3eArsmsAiEAw86oQC7B6gCuZpXjWhvN1gGIlVZ1onuqZoYHqTnNhOA="}]},"_npmUser":{"name":"benweatherman","email":"ben@serviceup.com"},"directories":{},"maintainers":[{"name":"benweatherman","email":"ben@serviceup.com"},{"name":"dvanfleet","email":"dvanfleet@serviceup.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/prisma-generator-class-validator_7.0.0_1778606092734_0.708321135810233"},"_hasShrinkwrap":false}},"time":{"created":"2025-04-01T20:30:11.575Z","modified":"2026-05-12T17:14:53.021Z","6.5.0":"2025-04-01T20:30:11.938Z","6.6.0":"2025-04-07T14:40:04.321Z","6.6.1-rc.1":"2025-05-16T19:19:09.743Z","6.6.1":"2025-05-21T13:10:21.301Z","6.6.3":"2026-04-20T20:30:28.451Z","7.0.0":"2026-05-12T17:14:52.892Z"},"bugs":{"url":"https://github.com/ServiceUpAuto/prisma-class-validator-generator/issues"},"license":"MIT","homepage":"https://github.com/ServiceUpAuto/prisma-class-validator-generator#readme","keywords":["prisma","prisma-client","prisma-schema","class-validator","prisma-generator","prisma-generator-class-validator"],"repository":{"type":"git","url":"git+https://github.com/ServiceUpAuto/prisma-class-validator-generator.git"},"description":"Prisma 2+ generator to emit typescript models of your database with class validator","maintainers":[{"name":"benweatherman","email":"ben@serviceup.com"},{"name":"dvanfleet","email":"dvanfleet@serviceup.com"}],"readme":"# Prisma Class Validator Generator\n\nAutomatically generate typescript models of your database with class validator validations ready, from your [Prisma](https://github.com/prisma/prisma) Schema. Updates every time `npx prisma generate` runs.\n\n## Table of Contents\n\n- [Supported Prisma Versions](#supported-prisma-versions)\n- [Installation](#installing)\n- [Usage](#usage)\n- [Additional Options](#additional-options)\n- [Development](#development)\n- [Running Tests](#running-tests)\n\n## Installation\n\n```bash\n npm install prisma-generator-class-validator\n```\n\n# Usage\n\n1- Add the generator to your Prisma schema\n\n```prisma\ngenerator class_validator {\n  provider = \"prisma-generator-class-validator\"\n}\n```\n\n3- Running `npx prisma generate` for the following schema.prisma\n\n```prisma\nmodel User {\n  id    Int     @id @default(autoincrement())\n  email String  @unique\n  name  String?\n  posts Post[]\n}\n\nmodel Post {\n  id        Int      @id @default(autoincrement())\n  createdAt DateTime @default(now())\n  updatedAt DateTime @updatedAt\n  title     String\n  content   String?\n  published Boolean  @default(false)\n  viewCount Int      @default(0)\n  author    User?    @relation(fields: [authorId], references: [id])\n  authorId  Int?\n  rating    Float\n}\n```\n\nwill generate classes as follows:\n\n`User`:\n\n```ts\nimport { IsInt, IsDefined, IsString, IsOptional } from 'class-validator';\nimport { Post } from './';\n\nexport class User {\n  @IsDefined()\n  @IsInt()\n  id!: number;\n\n  @IsDefined()\n  @IsString()\n  email!: string;\n\n  @IsOptional()\n  @IsString()\n  name?: string | null;\n\n  @IsDefined()\n  posts!: Post[];\n}\n```\n\n## Additional Options\n\n| Option   |  Description                              | Type     |  Default      |\n| -------- | ----------------------------------------- | -------- | ------------- |\n| `output` | Output directory for the generated models | `string` | `./generated` |\n\nUse additional options in the `schema.prisma`\n\n```prisma\ngenerator class_validator {\n  provider   = \"prisma-generator-class-validator\"\n  output     = \"./generated-models\"\n}\n```\n\n## Development\n\nThis is a Prisma generator that creates TypeScript class models with class-validator decorators based on your Prisma schema.\n\n1. Clone the repository\n2. Install dependencies: `npm install`\n3. Build the project: `npm run build`\n4. Test the generator: `npm test`\n\n## Running Tests\n\nThe project includes tests for the helper functions:\n\n```bash\n# Run helper function tests (most reliable)\nnpm test\n\n# Run all tests (including integration tests - may require a valid Prisma schema) \nnpm run test:all\n\n# Run tests with watch mode during development\nnpm run test:watch\n\n# Run tests with coverage report\nnpm run test:coverage\n\n# Build and run tests\nnpm run build:test\n```\n\n### Testing Notes\n\nIntegration tests require a valid Prisma schema and can be more fragile. They're best run in a controlled environment where all dependencies are properly set up.\n\nFor regular development, stick to the helper tests (`npm test`) which are faster and more reliable.","readmeFilename":"README.md"}