{"_id":"@apiel/json-schema-decorator","_rev":"5-017af2abcef3ef2c6802c6c2fc6fc9d9","name":"@apiel/json-schema-decorator","dist-tags":{"latest":"1.0.1"},"versions":{"0.0.1":{"name":"@apiel/json-schema-decorator","version":"0.0.1","description":"JSON schema decorator","repository":{"type":"git","url":"git+https://github.com/apiel/json-schema-decorator.git"},"main":"dist/index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev":"ts-node-dev --respawn src/example/demo.ts","start":"tsc && node dist/example/demo.js"},"author":{"name":"Alexandre Piel"},"license":"ISC","dependencies":{"ajv":"^8.12.0","reflect-metadata":"^0.1.13"},"devDependencies":{"ts-node-dev":"^2.0.0","typescript":"^4.9.5"},"types":"./dist/index.d.ts","gitHead":"3cd18e5cfefbc30677010f3e4bfd1e2b650e1c94","bugs":{"url":"https://github.com/apiel/json-schema-decorator/issues"},"homepage":"https://github.com/apiel/json-schema-decorator#readme","_id":"@apiel/json-schema-decorator@0.0.1","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-LFJUdqMYVdg9lAh4VdHrO7aNeJ9w1/GekrxVRq2Fz2J6+1vfmCRR8Brx9evabsOQfwvpLQXJXDKfLBkTjZh8Ew==","shasum":"21614bfbf42f6c931eaa37e76bd9da96a23127dc","tarball":"https://registry.npmjs.org/@apiel/json-schema-decorator/-/json-schema-decorator-0.0.1.tgz","fileCount":13,"unpackedSize":19490,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAyoZqnwNtRZs90FVZCaBb+F9XKrP+4AGt+TeTIpi0P9AiBjD3HVp8HS6wpoJQEnCHCiSspVaIYRhSJloBwEqntTLA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj4OWzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpVXQ//XM5+hzeknoPcUoHrSNS/P/YqaAEzXIj7KvHkrclON3YrHHzd\r\n6J1bWE4/4i9J+tiZrxRk7cPYixTtUkOgyPRd+w34z4O+qJZsAgwSlFN8zpsk\r\nys7R09DY4RGr4+aTZc7Ebx2p4iycApIMx6WXrDZ08AtRdgzR6vCYeU3mQ559\r\ne0+5EEKAXClWCI3uhJJKI2cgYGcAu0XQKhadAYh3BzTwDLR7UCFNwx5qPlD/\r\n7+ismCxZVpPLiDqrk0QZUZ1eP4IYBsfwESWphYmIHcCrn2uPecut6RtA10S3\r\n4Gp0AqCUhcn7cUp9N9y8umMW6lu6BuELuqrTrKCvHIbcZWKxtZmJoJt5kJ8x\r\nArm7712BZs8TVrCdrCht9pq1eXd0Oh0iGxgWwSJF1O3iPVWA9ExOMDB6heBJ\r\nqavRItk+a2S9RCub+kWwr8jZy+oNUzFLXUYp+tdL+KlUlVZ6E0t0JMpwwaR4\r\nQnM/sVnUU/2DFSroNdkZEkYHBbogWMG6IqWxDKKz654LQp5qsXamm9ClDFah\r\niQdqnqUHVIMvmT77FohwUyoVHrGBqM74t7hDLB20IK2u1yo6G8S/nwNP0faq\r\nUQ+DG0MVz6yW6KwFi7981ES7Iz/v3zEn8Ka3ugvIGK4s9RxbuiZOesxkHyRp\r\nTGiKyHlirgNfewozsaiP90B62T2ysCoZboE=\r\n=zZ4/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"apiel","email":"alexandre.piel@gmail.com"},"directories":{},"maintainers":[{"name":"apiel","email":"alexandre.piel@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-schema-decorator_0.0.1_1675683251712_0.5225190267001885"},"_hasShrinkwrap":false},"0.0.2":{"name":"@apiel/json-schema-decorator","version":"0.0.2","description":"JSON schema decorator","repository":{"type":"git","url":"git+https://github.com/apiel/json-schema-decorator.git"},"main":"dist/index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev":"ts-node-dev --respawn src/example/demo.ts","start":"tsc && node dist/example/demo.js"},"author":{"name":"Alexandre Piel"},"license":"ISC","dependencies":{"ajv":"^8.12.0","reflect-metadata":"^0.1.13"},"devDependencies":{"ts-node-dev":"^2.0.0","typescript":"^4.9.5"},"types":"./dist/index.d.ts","gitHead":"2b9bd3baab745deb7d195eec30d02153946f3bb3","bugs":{"url":"https://github.com/apiel/json-schema-decorator/issues"},"homepage":"https://github.com/apiel/json-schema-decorator#readme","_id":"@apiel/json-schema-decorator@0.0.2","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-Nv8SX2RKsaXNVeZDJx185PEEy+H34MYvQHWeyBgaJCme08abru6U8qP9D1z1F5YPJ2H4DLLu5dX7rVq0Nwq7lg==","shasum":"b9740d16ca2ce764579e546d613d780c99a1da32","tarball":"https://registry.npmjs.org/@apiel/json-schema-decorator/-/json-schema-decorator-0.0.2.tgz","fileCount":13,"unpackedSize":19511,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCrvL9A7ShuEAKWNqJe6gZjoWJAEVKgrF/1rB0ufdLp6QIhALIvzu3dsDloikyx1c5xX9T6qkhtcY66quwI6+J4yssT"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj4ObeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqCaxAAiCy3XnHfT1Rf09FKacWsGCGg256/qTV3VzHYJSrnqDal8mfP\r\nwqMnosabbjFgIz8T0d15Lxm0K8aOU6XNICviRaPMRuHOGkTcPTMTDuv7FUKE\r\njmvurcsl5LpP5ZqJJZm4ov4h4VjssKrxXPqXG8NLORMqwu6z759oUIn0ZmfH\r\n4r6pp8le6ZJdXmG2h3hkun61tQOc/hpY7zlbRStqbbUGepEAOQHowIofFCUV\r\n7aZXPoLhOIy1HBvIe67f1/TgyW3U6/Or3ACKfeZiGcJlzpCfspj2KxqtWzFE\r\nxAhLr2QeOf8EwJkcJ+l5RRV8qC5AdZoOXq1Kmtwby2Kgb4IaZBh4sCB+LDni\r\npRqeY5onN78c+Jr86rUa5u7a5+XgcYVe8AyhuK3CzP/CPwcU7rhoZhFBE4TS\r\nN1eGooxoytXErgWcPcUlgJDndmMye5OmDrW6VbwMvWNlFqP3HZmCmH5gafbX\r\nFZ4GFGU+jLaXFtcaWxq/AaMGn0TOWMTqDaHNeK5KXKropZylWRtbPoZOEehL\r\nbDicjmbP9YdBpFUxV1KgU+AFmEENuoLCdlELu9oA2b0GZNOA8NWx/sC5EmXj\r\ncFHXU3GyaC+V7Ly84ZM6jHkZ0ImmqkTgyWyFt4Uy2rtgWUxB0+jCzp5tD7Vq\r\nsKYc9nz/Eu2XcTJEmpkbdZRtr+lav2kIHQA=\r\n=/0Km\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"apiel","email":"alexandre.piel@gmail.com"},"directories":{},"maintainers":[{"name":"apiel","email":"alexandre.piel@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-schema-decorator_0.0.2_1675683550237_0.7800229285376419"},"_hasShrinkwrap":false},"0.0.3":{"name":"@apiel/json-schema-decorator","version":"0.0.3","description":"JSON schema decorator","repository":{"type":"git","url":"git+https://github.com/apiel/json-schema-decorator.git"},"main":"dist/index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev":"ts-node-dev --respawn src/example/demo.ts","start":"tsc && node dist/example/demo.js"},"author":{"name":"Alexandre Piel"},"license":"ISC","dependencies":{"ajv":"^8.12.0","reflect-metadata":"^0.1.13"},"devDependencies":{"ts-node-dev":"^2.0.0","typescript":"^4.9.5"},"types":"./dist/index.d.ts","gitHead":"a3a26bed71d3b20a38bc8d506f3f43ec1f5ca48a","bugs":{"url":"https://github.com/apiel/json-schema-decorator/issues"},"homepage":"https://github.com/apiel/json-schema-decorator#readme","_id":"@apiel/json-schema-decorator@0.0.3","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-jmFn9fBqwpihOq1qwXHpho+a3jReNcM4OlTGgl+fwGgivHpzrMUmkb6ld+CG/KvIadILduzIwS48OtZjELFBCA==","shasum":"1b650f7dbb75b2b7734880d507c58c5bf129462c","tarball":"https://registry.npmjs.org/@apiel/json-schema-decorator/-/json-schema-decorator-0.0.3.tgz","fileCount":13,"unpackedSize":19525,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC6ToJcu32Ljyi470QbkG0bGB3y43HWchxEWYJoxeU4SgIhAJGduJadiM3CKZcV6QxJ2BU1XOfPhZDG9I6/uN25pN/5"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj4OddACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpOFw/+KgRSKbo+tf3v8WBeTCMvvUJyaMwSCtkTHcWDPwIZv92jUDxS\r\nYbt4V68k6jPwds6kd8ZWiqKvWHr5I2tWUdfn90bRIzBkHpM5ptlDylRCLksx\r\nVBwCZKS8T6msDHyO8iGe9ZYSyit3p9n/urDfK/KpmfWRkt7EFbsFyhxsHpn0\r\n26k9LZmQBoJkNgDS9vLE09J+b4m3bcUya53U3H/sUaDlxaaNOyT+HOP0J12n\r\nu5D+zZkj/Nrd/iPZiyEfDT7wGI+glYYeuD7HY1MMdS/M4qGHTCXJXlrdlF0k\r\nyBESEo35leczsNEv0o65uvirjVng9bbDeEmdBeui99prqrZlt1jQgRQ/69f1\r\nvFLIrIs5Ldqk0dpFWcvF33jxyxsT9taVWsBDkrzVaSIh4+xAHpAZdj8Gmfjc\r\nT9omKn7v5m9izovRAhx1L5qtBtKuA9eTWCFvm3T4YhFm9VPqUCmMU50uEP12\r\nuf/sXzchg45wtj00Va1aOW7BvOTxGFw1IsaTLMsy9St9A0XtOcnpXDq6Juiw\r\njO0iVzeuZLvvH8coSJN0LMsoQAIxR1VRUXPPbkJB7Kq909RwFDJtDAO4G+7n\r\nc/+5x8YCxabqyfdH9K07pvjhXTmnf4fuUAYytDgwrXgWIYYqv/4+yWEBMW7q\r\nCG6uORnlq9SN341QIuXZPEnoBz2fpcoOtEo=\r\n=XV5p\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"apiel","email":"alexandre.piel@gmail.com"},"directories":{},"maintainers":[{"name":"apiel","email":"alexandre.piel@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-schema-decorator_0.0.3_1675683677607_0.13156718163144032"},"_hasShrinkwrap":false},"0.0.4":{"name":"@apiel/json-schema-decorator","version":"0.0.4","description":"JSON schema decorator","repository":{"type":"git","url":"git+https://github.com/apiel/json-schema-decorator.git"},"main":"dist/index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","dev":"ts-node-dev --respawn src/example/demo.ts","dev2":"ts-node-dev --respawn src/example/demo2.ts","start":"tsc && node dist/example/demo.js"},"author":{"name":"Alexandre Piel"},"license":"ISC","dependencies":{"ajv":"^8.12.0","reflect-metadata":"^0.1.13"},"devDependencies":{"ts-node-dev":"^2.0.0","typescript":"^4.9.5"},"types":"./dist/index.d.ts","gitHead":"411566044f5629f7d4e02118ba95e05c28307021","bugs":{"url":"https://github.com/apiel/json-schema-decorator/issues"},"homepage":"https://github.com/apiel/json-schema-decorator#readme","_id":"@apiel/json-schema-decorator@0.0.4","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-zulVwwVvcAINtRsUSdV26u0j8evNKfNJxsb5jHLAOgfbnrloImxb7kJf3JpRXiDMtf8P2ND7gujzq8rAUVDnJw==","shasum":"3ca421f10b849b646f7ae8946e37e6f1a86ed9e5","tarball":"https://registry.npmjs.org/@apiel/json-schema-decorator/-/json-schema-decorator-0.0.4.tgz","fileCount":14,"unpackedSize":20613,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCZ7VFE9LOHLMeFgn7yLS3pG0iAbox5gBQIhATmUzEr+QIhALK2Z98NNaq3qazrYYA3WDH6rDkNRMJOWsxcVhnnbt4w"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkBbX+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmptXw/+OLyJmcPMbwfrQzQQ+G2pGiFIGY3hc5g8Y2gmAm2xQiKX87Zt\r\nNYiEXuIdVbLwHTFcHlSMWvaemx5Dwaxtg1QitzKv05xVEPzvr8FMHkCEv6XE\r\n3RmOYNuLvK8J/PCwmOzZO/JdCuq1FdsuD9wzKtDGbOtwtHFIaXKz+nfRvUAt\r\n8RoGy8TQokgjLAJ1KmxSkkGPicSYGzioaj381jk5DtzYNpa2IDouDS+DqL7y\r\nKNpwzPGpMi/nq6C6VS/lJXf/usJlg40tDDrQeeCGC60LhpQESi9lEeRpBd/p\r\nsxLrzwqqmEa7Z1+1c7JRwYtnQad50y59oZc5VWXUaPXl8qkv0tmfhUycPodp\r\nFf8Wt+d76NZIo2FymW2XLGwFT08kwhS5NLnqdopZxqbR5KsYZr5A/5uie7/M\r\nTclvZMXS/oDuh1hB0F9lG9QVwgmEUOHaZTvv/+UfgbwGVtuB9Ix9tfayCX5t\r\nILxVxahBbFUyBfyBqcVsAalw7CckzYUwX5/oW1JlJ9Zv8HL4chh5EFjsn2QE\r\nkZoqRUtl6Ve/jNSkPSdm6oPUfaB26XGNlZwlDoci7xgnNrCTWlH3bZuZQiGn\r\nZnCQzbu4iAqc1VvZevRixwuCDRA0RKvhtrQDwJWPA1gv3PrJkF+/TqaR3+/P\r\nIy4yc/qisC401HARWXQ3kaS2z9dZV3ljMAE=\r\n=D9Db\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"apiel","email":"alexandre.piel@gmail.com"},"directories":{},"maintainers":[{"name":"apiel","email":"alexandre.piel@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-schema-decorator_0.0.4_1678095870479_0.40204338234708903"},"_hasShrinkwrap":false},"1.0.0":{"name":"@apiel/json-schema-decorator","version":"1.0.0","description":"JSON schema decorator","repository":{"type":"git","url":"git+https://github.com/apiel/json-schema-decorator.git"},"main":"dist/index.js","scripts":{"build":"rimraf dist && tsc","test":"echo \"Error: no test specified\" && exit 1","dev":"ts-node-dev --respawn example/demo.ts","start":"ts-node example/demo.ts"},"author":{"name":"Alexandre Piel"},"license":"ISC","dependencies":{"reflect-metadata":"^0.1.13"},"devDependencies":{"ajv":"^8.12.0","rimraf":"^4.3.0","ts-node-dev":"^2.0.0","typescript":"^4.9.5"},"gitHead":"04f476049c20859472e1691ad3afab7760d42a28","bugs":{"url":"https://github.com/apiel/json-schema-decorator/issues"},"homepage":"https://github.com/apiel/json-schema-decorator#readme","_id":"@apiel/json-schema-decorator@1.0.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-nZ4uJEtQknlHMN5c47+389XzONUHfxJnrYlRa0yi/mhdHFuZR+tJwPu4pcJtelDOd81Qlf/yidBw6dUsAGFgHw==","shasum":"e62dec9478e6bb467a51f627ce8b23727ec98e07","tarball":"https://registry.npmjs.org/@apiel/json-schema-decorator/-/json-schema-decorator-1.0.0.tgz","fileCount":7,"unpackedSize":7275,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGMyoqVN//boP36kaV81dWaIXgz9fwWWHruxBQIgdRJWAiBDdayBnT6xNPPQXyy4Xs+OANtTafgp/4xlmS/5HcLQHg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCEv+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr4FQ/7BSr2J+9XPTPwFYJmBllYt2BellFYtFJNkuyPjn1MMNyXa6Wr\r\nJmsHIfNL54fY+2EAgePL3ZVmwawAhaK2+sPZrTXES0Zc49Rzukj+jSHEIVFy\r\nZPnyH0WMaPUXb9w9NiGItDdlEhk1PCpvNG0vTwbcWovPQL+M0h3aq6Evlc1I\r\nnOBJaZAeKkiOTzrO5b4M7+iN+W3oc6COQVQyrEcASCbwcSgbXidML46PNGuo\r\nE0mw1kyDtE2zAiuIuSZnh8KfG3iXty9KTmuOQo/4vHWCgE0oa8myAt4geSGs\r\nwF8re7VdD0V7ZEFelKgPmFPMfFHXYjRgNtpXz+bQ2tdbL10NIfEl6zzfslOv\r\nc1v0AEgNou8w9qfd/GTg0Ur07lUHqg3/pXPWzk9VW9IK8BB1NMGHS1vxxZpu\r\nP3qiQlqTB8F5ilPZSjGZIhwcune/1S+CNCXT+4P0sKfyFxwgvhOokkSxkCkz\r\ntHAFeFaLuG5FH0TBzUIpD1QE8I9nHqy4pzzdI34PU6VtiCrUolQBd0p+42rL\r\nRRh0LEKKRN5l1EJXFCAE1x+mQUQn6OMzcT3ojMO1YzbzU2aQ/aplfGJ6bkrm\r\n3sQ+XPXqMl7aQnRLNULeyxamytWPhrJZ0whcdBgp66h99JAKj43RC1jKUOWk\r\nc2QTcq7sEvP5vL1XDghntGLkw/rVuulYP3E=\r\n=Rdp4\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"apiel","email":"alexandre.piel@gmail.com"},"directories":{},"maintainers":[{"name":"apiel","email":"alexandre.piel@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-schema-decorator_1.0.0_1678265342467_0.4662404016719881"},"_hasShrinkwrap":false},"1.0.1":{"name":"@apiel/json-schema-decorator","version":"1.0.1","description":"JSON schema decorator","repository":{"type":"git","url":"git+https://github.com/apiel/json-schema-decorator.git"},"main":"dist/index.js","scripts":{"build":"rimraf dist && tsc","test":"echo \"Error: no test specified\" && exit 1","dev":"ts-node-dev --respawn example/demo.ts","start":"ts-node example/demo.ts"},"author":{"name":"Alexandre Piel"},"license":"ISC","dependencies":{"reflect-metadata":"^0.1.13"},"devDependencies":{"ajv":"^8.12.0","rimraf":"^4.3.0","ts-node-dev":"^2.0.0","typescript":"^4.9.5"},"gitHead":"c909677106d2656456eeeda42da524ffb98727c7","bugs":{"url":"https://github.com/apiel/json-schema-decorator/issues"},"homepage":"https://github.com/apiel/json-schema-decorator#readme","_id":"@apiel/json-schema-decorator@1.0.1","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-1grj0rsrS/9J4/6ndZMPcFl4ACevOdIc18EsCpKR8zAPnMBGn8Au6z9dztIleUqWnRK1ai3+Bcc7CfXzGPltgg==","shasum":"ee38fe7ce6b70f721b9c7fb2569ce32982aab18c","tarball":"https://registry.npmjs.org/@apiel/json-schema-decorator/-/json-schema-decorator-1.0.1.tgz","fileCount":7,"unpackedSize":7167,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDD+G0CLIPq21wP4TN5D7GLTo5i8/2PanShMk3TT4qMbQIhAOFjerfcBKldeK8mDobDLJ5SMJlkEtGaZlzpsGpsq7Ep"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkECdbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoE4xAAkXOy7Q7GBAbCIqfZaJOE3Dp2UHt1cq5lquN2w2xV9JDXaeAC\r\nbUIEdVHLS72Q/mJOIK5YyoiyfTVlSnhf0KzPMD3WXAVoM5aPkki74b/3eXhm\r\nSLkTEQqtDXY1tMlxG2vficR091rlucCeehQhRV+YWUyJaacgwAA91TRL2YBR\r\nOKMiWsJSryrUGOzFksu51+7bpBNCx3NC0Alb+1hUCZcSeGD4SdHepBGRj1T8\r\n/+taGa6ZoobSOjw1V1rU5hbyU0eG4PIauatat+8bSHi29EYC8O0sgqSj2mMZ\r\n+65Ky9TT3VXwSmuEFTTBWz1Nye99Bb1eRYRMqzDEfjqwSV9gqHhT1jKX94Sy\r\nx3vYxPrxoS+Og1+ybsEMoe0PLxC/a9Xkhay36QTQTGInxznv8zTsVbhneHYB\r\nGKxTxjCqGGPQHzYG1mncRe7q40o06+wzI5w+kcNZdt04f9oJH66/C7aqk7Jt\r\ne8VY1SAldPluXt/Zvz4fxcENjdPwhHO7FTXYKIO9SqXUzBu+2iCa/IVrm14b\r\nR704c+qnp60kWAmSm94ywdlVdsvSHzK5XtWIYnfdmRRej/jHGgmaRTiK81Wu\r\nGYqvgyO1FUE9NLFFVD1F8Wo0fUTVnq5X33ccuzZmFd0tSkTYjfIvknNJ8A4/\r\nMnmOUSt6GBOa5A583DWiMiv9dWY54iU7R/Q=\r\n=qvcg\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"apiel","email":"alexandre.piel@gmail.com"},"directories":{},"maintainers":[{"name":"apiel","email":"alexandre.piel@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/json-schema-decorator_1.0.1_1678780251686_0.5553900225226498"},"_hasShrinkwrap":false}},"time":{"created":"2023-02-06T11:34:11.616Z","0.0.1":"2023-02-06T11:34:11.891Z","modified":"2023-03-14T07:50:51.940Z","0.0.2":"2023-02-06T11:39:10.434Z","0.0.3":"2023-02-06T11:41:17.794Z","0.0.4":"2023-03-06T09:44:30.668Z","1.0.0":"2023-03-08T08:49:02.615Z","1.0.1":"2023-03-14T07:50:51.847Z"},"maintainers":[{"name":"apiel","email":"alexandre.piel@gmail.com"}],"description":"JSON schema decorator","homepage":"https://github.com/apiel/json-schema-decorator#readme","repository":{"type":"git","url":"git+https://github.com/apiel/json-schema-decorator.git"},"author":{"name":"Alexandre Piel"},"bugs":{"url":"https://github.com/apiel/json-schema-decorator/issues"},"license":"ISC","readme":"# @apiel/json-schema-decorator\n\nMinimal library to merge JSON schema properties decorator into a JSON schema object.\n\n```ts\nimport { generateJsonSchema, schema } from '@apiel/json-schema-decorator';\n\nclass Person {\n  @schema({ maximum: 40, optional: true })\n  age: number = 20;\n\n  @schema({ maximum: 200 })\n  height!: number;\n}\n\nconst p = new Person();\nconsole.log('This is the generated JSON schema', generateJsonSchema(p));\n```\n\nJSON schema output:\n\n```json\n{\n  type: 'object',\n  required: [ 'height' ],\n  properties: {\n    age: { maximum: 40, type: 'number' },\n    height: { maximum: 200, type: 'number' }\n  }\n}\n```\n\nTo define a property schema, use the decorator `@schema({})`. The type of the property is inferred automatically and can still be overwritten if `type` is defined as parameter, e.g.: `@schema({type: 'number'})`. By default, properties are optional, to make them required, set the parameter `optional` to `false`, e.g.: `@schema({optional: false})`.\n\nGenerate the json schema by calling `generateJsonSchema(the_target_object)`\n\n## Validation\n\n**Validation is not include in this library**, as the goal is simply to generate JSON schema. It's up to you to use the library of your choice for validation.\n\nIn our example, we will use AJV:\n\n```sh\nnpm install ajv\n```\n\n```ts\nimport { generateJsonSchema, schema } from '@apiel/json-schema-decorator';\nimport Ajv from 'ajv';\n\nclass Person {\n  @schema({ maximum: 40 })\n  age: number = 20;\n\n  @schema({ maximum: 200 })\n  height: number = 223;\n}\n\nconst p = new Person();\nconst jsonSchema = generateJsonSchema(p);\n\nconst ajv = new Ajv();\nconst validator = ajv.compile(jsonSchema);\nconst validation = validator(p);\n\n// It should fail because height is over maximum limit\nconsole.log('AJV validation result:', validation);\nif (!validation) {\n  console.error('Your object does not respect your JSON schema definition', validator.errors);\n}\n```\n\n## tsconfig\n\n`experimentalDecorators` and `emitDecoratorMetadata` must be enable in your tsconfig.json.\n\n```json\n{\n  // ...\n  \"compilerOptions\": {\n    // ...\n    \"experimentalDecorators\": true,\n    \"emitDecoratorMetadata\": true\n  }\n}\n```\n","readmeFilename":"README.md"}