{"_id":"@typeschema/class-validator","_rev":"4-ec1124425483c1b2a0852c5b622ff610","name":"@typeschema/class-validator","dist-tags":{"latest":"0.3.0"},"versions":{"0.1.0":{"name":"@typeschema/class-validator","version":"0.1.0","keywords":["typescript","type","schema","adapter","validation","inference","assert"],"author":{"name":"André Costa","email":"andrefonsecacosta@gmail.com"},"license":"MIT","_id":"@typeschema/class-validator@0.1.0","maintainers":[{"name":"decs","email":"andrefonsecacosta@gmail.com"}],"homepage":"https://typeschema.com","bugs":{"url":"https://github.com/decs/typeschema/issues"},"//":"This file is partially generated. Only some fields can be modified manually!","dist":{"shasum":"76efca2543cd6de248f43dfdfd7d9d5a83520f1a","tarball":"https://registry.npmjs.org/@typeschema/class-validator/-/class-validator-0.1.0.tgz","fileCount":7,"integrity":"sha512-dpinekQTR7tp2+DJUvPetgbji0WEYuXgQQ/dU4A/MlHF0w/C/0R0OJ0ygGS7Sy6aTdDVuo8HctmNQgBuYQYF5g==","signatures":[{"sig":"MEQCIB6Uox7ZzHxPdNTHRd78FfWLLXn1g6qm+7QKssgD9b6NAiA2j5IEEgr5RsV5g7eUKE13PvGNkMNcGAXRIG1pXVttPw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11132},"main":"dist/index.js","_from":"file:typeschema-class-validator-0.1.0.tgz","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"scripts":{"lint":"eslint src --fix","test":"vitest --config ../../vitest.config.ts","build":"tsup --config ../../tsup.config.ts","lint:package":"publint && attw --pack"},"_npmUser":{"name":"decs","email":"andrefonsecacosta@gmail.com"},"//version":"This field is manually maintained.","_resolved":"/tmp/394a3bca516cae366f844bb2f5caa3e5/typeschema-class-validator-0.1.0.tgz","_integrity":"sha512-dpinekQTR7tp2+DJUvPetgbji0WEYuXgQQ/dU4A/MlHF0w/C/0R0OJ0ygGS7Sy6aTdDVuo8HctmNQgBuYQYF5g==","repository":{"url":"git+https://github.com/decs/typeschema.git","type":"git"},"_npmVersion":"10.2.4","description":"Reusable adapter for class-validator classes","directories":{},"sideEffects":false,"_nodeVersion":"20.11.1","dependencies":{"@typeschema/core":"0.13.1"},"//description":"This field is manually maintained.","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"class-validator":"^0.14.1"},"peerDependencies":{"class-validator":"^0.14.1"},"//devDependencies":"This field is manually maintained.","//peerDependencies":"This field is manually maintained.","peerDependenciesMeta":{"class-validator":{"optional":true}},"//peerDependenciesMeta":"This field is manually maintained.","_npmOperationalInternal":{"tmp":"tmp/class-validator_0.1.0_1708854741521_0.5381868312587392","host":"s3://npm-registry-packages"}},"0.1.1":{"name":"@typeschema/class-validator","version":"0.1.1","keywords":["typescript","type","schema","adapter","validation","inference","assert"],"author":{"name":"André Costa","email":"andrefonsecacosta@gmail.com"},"license":"MIT","_id":"@typeschema/class-validator@0.1.1","maintainers":[{"name":"decs","email":"andrefonsecacosta@gmail.com"}],"homepage":"https://typeschema.com","bugs":{"url":"https://github.com/decs/typeschema/issues"},"//":"This file is partially generated. Only some fields can be modified manually!","dist":{"shasum":"4564663bedff5c1a003964c93dc4050ac2cd5992","tarball":"https://registry.npmjs.org/@typeschema/class-validator/-/class-validator-0.1.1.tgz","fileCount":7,"integrity":"sha512-lyIIHEBmlbK0W1bwI9S9L3znD7HSLqASNKAL3o5tr/whOQHdq6laJJnaujalla+F6ealMzDYGiun+luqmjwQyg==","signatures":[{"sig":"MEQCIBD4mikzMQaQje4XaJtfHpO2EJdC1PR/V55ANGZsjiVVAiAKnaysYx9mafxwZvZmBO4zKfe02wyKbzYKBruQ69Xtxw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11132},"main":"dist/index.js","_from":"file:typeschema-class-validator-0.1.1.tgz","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"scripts":{"lint":"eslint src --fix","test":"vitest --config ../../vitest.config.ts","build":"tsup --config ../../tsup.config.ts","lint:package":"publint && attw --pack"},"_npmUser":{"name":"decs","email":"andrefonsecacosta@gmail.com"},"//version":"This field is manually maintained.","_resolved":"/tmp/b83dc1fbe0d5bc947896de393b573d76/typeschema-class-validator-0.1.1.tgz","_integrity":"sha512-lyIIHEBmlbK0W1bwI9S9L3znD7HSLqASNKAL3o5tr/whOQHdq6laJJnaujalla+F6ealMzDYGiun+luqmjwQyg==","repository":{"url":"git+https://github.com/decs/typeschema.git","type":"git"},"_npmVersion":"10.2.4","description":"Reusable adapter for class-validator classes","directories":{},"sideEffects":false,"_nodeVersion":"20.11.1","dependencies":{"@typeschema/core":"0.13.2"},"//description":"This field is manually maintained.","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"class-validator":"^0.14.1"},"peerDependencies":{"class-validator":"^0.14.1"},"//devDependencies":"This field is manually maintained.","//peerDependencies":"This field is manually maintained.","peerDependenciesMeta":{"class-validator":{"optional":true}},"//peerDependenciesMeta":"This field is manually maintained.","_npmOperationalInternal":{"tmp":"tmp/class-validator_0.1.1_1709024739052_0.683019370111724","host":"s3://npm-registry-packages"}},"0.1.2":{"name":"@typeschema/class-validator","version":"0.1.2","keywords":["typescript","type","schema","adapter","validation","inference","assert"],"author":{"name":"André Costa","email":"andrefonsecacosta@gmail.com"},"license":"MIT","_id":"@typeschema/class-validator@0.1.2","maintainers":[{"name":"decs","email":"andrefonsecacosta@gmail.com"}],"homepage":"https://typeschema.com","bugs":{"url":"https://github.com/decs/typeschema/issues"},"//":"This file is partially generated. Only some fields can be modified manually!","dist":{"shasum":"2c49bed6fb17205c85495bf2e96461b09289c566","tarball":"https://registry.npmjs.org/@typeschema/class-validator/-/class-validator-0.1.2.tgz","fileCount":7,"integrity":"sha512-7k7c27NmWcXxM66jmn3Sot4OGbd+ZXxAQ3Yd4YnOUfcEWI9YYay3WBy2y41sgneSORJ2BrSOxdXGLk3GtdMgaQ==","signatures":[{"sig":"MEUCIQDh1Kqbs0ddBOGJfgvR3LAvAhW1uJX3uwuSKw5za1AVJwIgR00Q2Vty0UvA3vL4akNlE6TXNGk1HYpa1s7981NGVC8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":11876},"main":"dist/index.js","_from":"file:typeschema-class-validator-0.1.2.tgz","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"scripts":{"lint":"eslint src --fix","test":"vitest --config ../../vitest.config.ts","build":"tsup --config ../../tsup.config.ts","lint:package":"publint && attw --pack"},"_npmUser":{"name":"decs","email":"andrefonsecacosta@gmail.com"},"//version":"This field is manually maintained.","_resolved":"/tmp/8831aab9460789f45eb3363f630886e3/typeschema-class-validator-0.1.2.tgz","_integrity":"sha512-7k7c27NmWcXxM66jmn3Sot4OGbd+ZXxAQ3Yd4YnOUfcEWI9YYay3WBy2y41sgneSORJ2BrSOxdXGLk3GtdMgaQ==","repository":{"url":"git+https://github.com/decs/typeschema.git","type":"git"},"_npmVersion":"10.2.4","description":"Reusable adapter for class-validator classes","directories":{},"sideEffects":false,"_nodeVersion":"20.11.1","dependencies":{"@typeschema/core":"0.13.2"},"//description":"This field is manually maintained.","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"class-validator":"^0.14.1"},"peerDependencies":{"class-validator":"^0.14.1"},"//devDependencies":"This field is manually maintained.","//peerDependencies":{"//":"This field is manually maintained.","class-validator":"Required for inference and validation"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"//peerDependenciesMeta":"This field is manually maintained.","_npmOperationalInternal":{"tmp":"tmp/class-validator_0.1.2_1709278972574_0.6606615076157243","host":"s3://npm-registry-packages"}},"0.2.0":{"name":"@typeschema/class-validator","version":"0.2.0","keywords":["typescript","type","schema","adapter","validation","inference","assert"],"author":{"name":"André Costa","email":"andrefonsecacosta@gmail.com"},"license":"MIT","_id":"@typeschema/class-validator@0.2.0","maintainers":[{"name":"decs","email":"andrefonsecacosta@gmail.com"}],"homepage":"https://typeschema.com","bugs":{"url":"https://github.com/decs/typeschema/issues"},"//":"This file is partially generated. Only some fields can be modified manually!","dist":{"shasum":"9a568c7421a59f926a33bcf2bb46ec32e92ead71","tarball":"https://registry.npmjs.org/@typeschema/class-validator/-/class-validator-0.2.0.tgz","fileCount":7,"integrity":"sha512-zq0qeflVu1Z6D0ttkqAWZMtxJeNEQ70yo/025sV0jujiOOgQx38JXrky77nSWWPp2E1KIMtgkToQbkzkXyW5yg==","signatures":[{"sig":"MEQCIGlAFlghsGKKpsINeq7zYwpSlwTqDkBo1Cqd6j/jjLGTAiBf5fe8VhzUxomNEDCGot8pT6QJI8Oxpmt+wjIJFjb+ew==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":12094},"main":"dist/index.js","_from":"file:typeschema-class-validator-0.2.0.tgz","types":"dist/index.d.ts","module":"dist/index.mjs","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"scripts":{"lint":"eslint src --fix","test":"vitest --config ../../vitest.config.ts","build":"tsup --config ../../tsup.config.ts","lint:package":"publint && attw --pack","upgrade:deps":"ncu -u --dep=dev,peer --reject ow"},"_npmUser":{"name":"decs","email":"andrefonsecacosta@gmail.com"},"//version":"This field is manually maintained.","_resolved":"/tmp/935b582c952c4552fe19443ad271aa30/typeschema-class-validator-0.2.0.tgz","_integrity":"sha512-zq0qeflVu1Z6D0ttkqAWZMtxJeNEQ70yo/025sV0jujiOOgQx38JXrky77nSWWPp2E1KIMtgkToQbkzkXyW5yg==","repository":{"url":"git+https://github.com/decs/typeschema.git","type":"git"},"_npmVersion":"10.8.1","description":"Reusable adapter for class-validator classes","directories":{},"sideEffects":false,"_nodeVersion":"20.16.0","dependencies":{"@typeschema/core":"0.14.0"},"//description":"This field is manually maintained.","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"class-validator":"^0.14.1"},"peerDependencies":{"class-validator":"^0.14.1"},"//devDependencies":"This field is manually maintained.","//peerDependencies":{"//":"This field is manually maintained.","class-validator":"Required for inference and validation"},"peerDependenciesMeta":{"class-validator":{"optional":true}},"//peerDependenciesMeta":"This field is manually maintained.","_npmOperationalInternal":{"tmp":"tmp/class-validator_0.2.0_1724625235513_0.5175153973182798","host":"s3://npm-registry-packages"}},"0.3.0":{"//":"This file is partially generated. Only some fields can be modified manually!","name":"@typeschema/class-validator","//version":"This field is manually maintained.","version":"0.3.0","//description":"This field is manually maintained.","description":"Reusable adapter for class-validator classes","keywords":["typescript","type","schema","adapter","validation","inference","assert"],"homepage":"https://typeschema.com","license":"MIT","author":{"name":"André Costa","email":"andrefonsecacosta@gmail.com"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"main":"dist/index.js","module":"dist/index.mjs","types":"dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.mts","default":"./dist/index.mjs"},"require":{"types":"./dist/index.d.ts","default":"./dist/index.js"}}},"sideEffects":false,"repository":{"type":"git","url":"git+https://github.com/decs/typeschema.git"},"dependencies":{"@typeschema/core":"0.14.0"},"//devDependencies":"This field is manually maintained.","devDependencies":{"class-validator":"^0.14.1"},"//peerDependencies":{"//":"This field is manually maintained.","class-validator":"Required for inference and validation"},"peerDependencies":{"class-validator":"^0.14.1"},"//peerDependenciesMeta":"This field is manually maintained.","peerDependenciesMeta":{"class-validator":{"optional":true}},"scripts":{"build":"tsup --config ../../tsup.config.ts","lint":"eslint src --fix","lint:package":"publint && attw --pack","test":"vitest --config ../../vitest.config.ts","upgrade:deps":"ncu -u --dep=dev,peer --reject ow"},"_id":"@typeschema/class-validator@0.3.0","bugs":{"url":"https://github.com/decs/typeschema/issues"},"_integrity":"sha512-OJSFeZDIQ8EK1HTljKLT5CItM2wsbgczLN8tMEfz3I1Lmhc5TBfkZ0eikFzUC16tI3d1Nag7um6TfCgp2I2Bww==","_resolved":"/tmp/bbc2b62fc397b80b49b8adec4b156ae5/typeschema-class-validator-0.3.0.tgz","_from":"file:typeschema-class-validator-0.3.0.tgz","_nodeVersion":"20.17.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-OJSFeZDIQ8EK1HTljKLT5CItM2wsbgczLN8tMEfz3I1Lmhc5TBfkZ0eikFzUC16tI3d1Nag7um6TfCgp2I2Bww==","shasum":"d7a5305bce26538b8e81b72c1d3263fc872f94da","tarball":"https://registry.npmjs.org/@typeschema/class-validator/-/class-validator-0.3.0.tgz","fileCount":7,"unpackedSize":12662,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDapuklq+F+UPCUtDykjyL0ZOG13GrgpbQJ8H3pbkDXkwIhAPgk+z/uNm7t/24qX7mQaMwOw88dK8lp21Uwtj6iu9fX"}]},"_npmUser":{"name":"decs","email":"andrefonsecacosta@gmail.com"},"directories":{},"maintainers":[{"name":"decs","email":"andrefonsecacosta@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/class-validator_0.3.0_1728850291637_0.256380833927337"},"_hasShrinkwrap":false}},"time":{"created":"2024-02-25T09:52:21.427Z","modified":"2024-10-13T20:11:32.044Z","0.1.0":"2024-02-25T09:52:21.671Z","0.1.1":"2024-02-27T09:05:39.228Z","0.1.2":"2024-03-01T07:42:52.732Z","0.2.0":"2024-08-25T22:33:55.655Z","0.3.0":"2024-10-13T20:11:31.858Z"},"bugs":{"url":"https://github.com/decs/typeschema/issues"},"author":{"name":"André Costa","email":"andrefonsecacosta@gmail.com"},"license":"MIT","homepage":"https://typeschema.com","keywords":["typescript","type","schema","adapter","validation","inference","assert"],"repository":{"type":"git","url":"git+https://github.com/decs/typeschema.git"},"description":"Reusable adapter for class-validator classes","maintainers":[{"name":"decs","email":"andrefonsecacosta@gmail.com"}],"readme":"<!-- This file is generated. Do not modify it manually! -->\n\n<img src=\"https://typeschema.com/assets/logo.png\" width=\"64px\" alt=\"TypeSchema\" />\n<h1>@typeschema/class-validator</h1>\n<p>\n  <a href=\"https://opensource.org/licenses/MIT\" rel=\"nofollow\"><img src=\"https://img.shields.io/github/license/decs/typeschema\" alt=\"License\"></a>\n  <a href=\"https://bundlephobia.com/package/@typeschema/class-validator\" rel=\"nofollow\"><img src=\"https://img.shields.io/bundlephobia/minzip/%40typeschema%2Fclass-validator\" alt=\"Bundle size\"></a>\n  <a href=\"https://www.npmjs.com/package/@typeschema/class-validator\" rel=\"nofollow\"><img src=\"https://img.shields.io/npm/dw/@typeschema/class-validator.svg\" alt=\"npm downloads\"></a>\n  <a href=\"https://github.com/decs/typeschema/stargazers\" rel=\"nofollow\"><img src=\"https://img.shields.io/github/stars/decs/typeschema\" alt=\"GitHub stars\"></a>\n</p>\n<p>\n  Reusable adapter for class-validator classes\n  <br />\n  <a href=\"https://typeschema.com\">https://typeschema.com</a> ✨\n</p>\n\n```ts\nimport {initTRPC} from '@trpc/server';\nimport {IsNotEmpty} from 'class-validator';\n\nimport {wrap} from '@typeschema/class-validator';\n\nclass Schema {\n  @IsNotEmpty()\n  name!: string;\n}\nconst schema = Schema;\n\nconst t = initTRPC.create();\nconst appRouter = t.router({\n  hello: t.procedure\n    .input(wrap(schema))\n    .query(({input}) => `Hello, ${input.name}!`),\n  //         ^? {name: string}\n});\n\n```\n\nUse it directly or through [`@typeschema/main`](https://github.com/decs/typeschema/tree/main/packages/main)\n\n## Dependencies\n- [`class-validator`](https://www.npmjs.com/package/class-validator): Required for inference and validation (`^0.14.1`)\n\n## API\n\n### Inference\n- `Infer<TSchema>`: Extracts the output type of a schema\n- `InferIn<TSchema>`: Extracts the input type of a schema\n\n### Validation\n- `wrap(schema)`: Returns the wrapped schema with access to its operations\n- `validate(schema, data)`: Returns the validated data or a list of validation issues\n- `assert(schema, data)`: Returns the validated data or throws an `AggregateError`\n","readmeFilename":"README.md"}