{"_id":"vue-validus","_rev":"27-4fda5d4244f3264b5378a010a48de2f2","name":"vue-validus","dist-tags":{"latest":"1.0.8"},"versions":{"1.0.0-beta.1":{"name":"vue-validus","version":"1.0.0-beta.1","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","browser":"dist/vue-validus.umd.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"gitHead":"58fd01be4466c1fc5d87a294ea6ece575a78f777","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.0-beta.1","_nodeVersion":"14.15.1","_npmVersion":"6.14.2","dist":{"integrity":"sha512-PCRG/4APBMvbdJev/KRlWCPct2ecOSoNutCE2b2eedeVvd5huYSkNNUudxlo0R5x+UIOGBHR6kwnBInGiOxbug==","shasum":"0c3f6461c04f28ab08a8b994001ac366aa1cacc7","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.0-beta.1.tgz","fileCount":12,"unpackedSize":49308,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgDN3JCRA9TVsSAnZWagAA/mAP/1mQLXs9bObWxLNc+YdX\nk7JGRYauJxOjUkNErV+U96jOqyPISIk7RATq1URqFhnAr2S0i6ohJnmW4OML\nKmvPfVwVuBenx4Xl0DKhiUQJIvnjCCEdIBymRBAFQoGHmJtS4Bi/pdouwjPB\nJ4/eoXx6VhIokbwFYg053QFoC4YPzJox7fJYoQIWGeXbXEY+kgrIhkMKzCcS\ns3q1o7AiLuBi/FtLqBG+NRTlCwSU/s+SS1GTnVsUUz0nzf2I4VaWCNo/Fsyr\nfvrq4VlBSxe3sWOF7hKAz8St7cUj1y9WII/7+aP9f/J0G00gwHLsu6a7H8dp\n8D92vuvE85ARGTtGXgTBLdfzIX30YfGb/Uas9NaeS8OCsNA4gzxl/zjdESFE\nAPxdySO1qDoxfq8vzxCCaeA8KigWkBHAVKUppALQyFSHq/oDpRgFH7PBqYCD\nj4zlLF4GObn/hzTYR6rLseK43CMfIP1nofGqJnLjUxGQa7F07TylfNfns0za\n57HFBkh0kj3Myb0Ab+YVBgJMl9Svtqi62yEWKDWlKRxj9MqkqKfbvXvIs8qS\n0VSBOqpO8DDma7iJRBGH+hNQrO2uMxBA4DKpFyl8hhE87gp96uBiYM3IAgBd\nipj99zNofNqHqeWQBSi02sC0+LtCcO060jpAk6CUAV06kDmasU9w94/70Sjf\nPgTb\r\n=GmhQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHYrqW2g79wB+3mpZEML3YhUQ+LxeSF2b8BsMqzFp9UBAiBt3S5aAHQRzvLPvwMK1xD6CBYxbSiouvEPwJkHpq9TwQ=="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.0-beta.1_1611455944846_0.801676109038783"},"_hasShrinkwrap":false},"1.0.0-beta.2":{"name":"vue-validus","version":"1.0.0-beta.2","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"readme":"# vue-validus\r\n\r\n[![License][license-image]][license-url]\r\n[![NPM][npm-image]][npm-url]\r\n[![codecov][codecov-image]][codecov-url]\r\n[![circleci][circleci-image]][circleci-url]\r\n\r\n> Extensible, lightweight validation library for Vue 3\r\n\r\n## Get Started\r\n\r\nView the [documentation](https://vue-validus.devtavern.com) for a complete guide, including examples and API reference.\r\n\r\n### Install\r\n```bash\r\n# install with npm\r\nnpm install vue-validus --save\r\n# install with yarn\r\nyarn add vue-validus --save\r\n```\r\n\r\n### Usage\r\n\r\nBelow is a simple example of one approach for leveraging vue-validus for validation, for more detailed examples and additional approaches, please visit the [documentation](https://vue-validus.devtavern.com).  This example will use Vue refs as the source for the field values, though you could also use a reactive object or just the fields themselves without separate value properties.\r\n\r\n#### Composition API\r\n\r\n```typescript\r\nimport { defineComponent, ref } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  setup() {\r\n    // example: field group containing fields with values sourced from refs\r\n    const username = ref('')\r\n    const password = ref('')\r\n    const form = fieldGroup({\r\n      username: field([required()], username),\r\n      password: field([required()], password)\r\n    })\r\n    // example: validate entire group at once and check result\r\n    const handleSubmit = () => {\r\n      form.validate()\r\n      if (!form.invalid) {\r\n        // submit...\r\n      }\r\n    }\r\n    return { username, password, form, handleSubmit }\r\n  }\r\n})\r\n```\r\nAt this point, since our field values are backed by refs, you could set an input's v-model attribute to either `username` or `form.username.value`, both will maintain the same value between them.\r\n```html\r\n<input type=\"text\"\r\n  v-model=\"username\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n#### Options API\r\n\r\nIt is recommended to define your validation field & field groups within the component's `setup` function as demonstrated in the above Composition API example.  However, if needed, you can define these within the Options API's `data` structure.\r\n\r\n```typescript\r\nimport { defineComponent } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  data() {\r\n    return {\r\n      form: fieldGroup({\r\n        username: field([required()], '<optional initial value>'),\r\n        password: field([required()])\r\n      })\r\n    }\r\n  }\r\n})\r\n```\r\n```html\r\n<input type=\"text\"\r\n  v-model=\"form.username.value\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n## Changelog\r\n\r\nChanges for each release are documented in the [CHANGELOG](CHANGELOG.md) file.\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n\r\n[npm-image]: https://img.shields.io/npm/v/vue-validus.svg\r\n[npm-url]: https://npmjs.org/package/vue-validus\r\n[license-image]: https://img.shields.io/badge/license-MIT-blue.svg\r\n[license-url]: LICENSE\r\n[codecov-image]: https://codecov.io/gh/dev-tavern/vue-validus/branch/main/graph/badge.svg?token=IFCU4CBZWR\r\n[codecov-url]: https://codecov.io/gh/dev-tavern/vue-validus\r\n[circleci-image]: https://circleci.com/gh/dev-tavern/vue-validus.svg?style=svg\r\n[circleci-url]: https://circleci.com/gh/dev-tavern/vue-validus","readmeFilename":"README.md","gitHead":"f0bdaa75a09fb7a4b751568186b2595aa0e5487b","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.0-beta.2","_nodeVersion":"14.15.1","_npmVersion":"6.14.2","dist":{"integrity":"sha512-l2XVhsaJ6ReKBMSYoHidEXyf8jzd8W8amR9o1qqjIvFjLZoKK4w/JK9mgsOU44dUUo2ao6seSbCDPfB4pUVYIQ==","shasum":"22c92ec36f03f6c9d87ba243c082d3b879cb25a9","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.0-beta.2.tgz","fileCount":12,"unpackedSize":49267,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgDORaCRA9TVsSAnZWagAAxlEP/j7tIkaQlfqKaM6uWKSb\num2EDuoWf0bzZAdBZjiyOxAcaVanYY2xJzNRTsK7wRkl050CO2rC0HmHTMCn\nCjkqaB0jtwLm/+0VCcRR1D8+4pFuZtSyR0fRhPN7UF9APtnY8hiCIvp1eBDm\nH+NolDb6SZybQ1qvM4JRskItpDcESKF69O46S9RI0CEltKEDKeeu6jnLdTxI\nL8pdlmR0gNnkn3VYUOX9qGYXzr8XkKgN07ifmvjCKuMA57/bSqoxEsj/9pqc\n6scWlZFF7EQ3xFx+cYat0vuKmXqiJC8KmCFeHZ1wYzA8aKW7AFugGPO5HU6W\ngHpJppCRqPhcgBJ2dAPDXepayFvMDQrfWvS4J4l0Y0rmtGP6ppt/tUMg7P7u\nYyLkwGLnDWXvFEAJ2A+E4zksTXNsdGIs5IMAsYTC0jTlLbxCiVAeGrpxtc8x\njEeoY2OzMVemTG5WQShIjBvAXhq1PR1jNmgKWhrhoiLXQPoSS/FoEQ+NOPPg\nNhqWBrt0k0EdNP3Pzfm0ShD83B/W8+o7Og2N0uZrJOQncMhoEkT30YC3ZLoP\n+tNOP1INJrWEOkD1BWsEXnRz0fr6ZOXFk6yKLJiGiLIVyB4Kmgm9hZDN5/5d\noR3fFzVh3ExLfVomZuVytQsGdm50pu7ukjwItMYH7CzClI0I+qrgB5SRWsi+\nN/Ax\r\n=b/Xa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAOx2bgPVy1dS7pesqr7kqiFFlYPZKkcg9r4spsQV9TfAiA6a6/d0cJ5pDKFsGafHq6k6z7azTv9pH9zk04P6jhEVA=="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.0-beta.2_1611457626098_0.6384901538465109"},"_hasShrinkwrap":false},"1.0.0-beta.3":{"name":"vue-validus","version":"1.0.0-beta.3","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"readme":"# vue-validus\r\n\r\n[![License][license-image]][license-url]\r\n[![NPM][npm-image]][npm-url]\r\n[![codecov][codecov-image]][codecov-url]\r\n[![circleci][circleci-image]][circleci-url]\r\n\r\n> Extensible, lightweight validation library for Vue 3\r\n\r\n## Get Started\r\n\r\nView the [documentation](https://vue-validus.devtavern.com) for a complete guide, including examples and API reference.\r\n\r\n### Install\r\n```bash\r\n# install with npm\r\nnpm install vue-validus --save\r\n# install with yarn\r\nyarn add vue-validus --save\r\n```\r\n\r\n### Usage\r\n\r\nBelow is a simple example of one approach for leveraging vue-validus for validation, for more detailed examples and additional approaches, please visit the [documentation](https://vue-validus.devtavern.com).  This example will use Vue refs as the source for the field values, though you could also use a reactive object or just the fields themselves without separate value properties.\r\n\r\n#### Composition API\r\n\r\n```typescript\r\nimport { defineComponent, ref } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  setup() {\r\n    // example: field group containing fields with values sourced from refs\r\n    const username = ref('')\r\n    const password = ref('')\r\n    const form = fieldGroup({\r\n      username: field([required()], username),\r\n      password: field([required()], password)\r\n    })\r\n    // example: validate entire group at once and check result\r\n    const handleSubmit = () => {\r\n      form.validate()\r\n      if (!form.invalid) {\r\n        // submit...\r\n      }\r\n    }\r\n    return { username, password, form, handleSubmit }\r\n  }\r\n})\r\n```\r\nAt this point, since our field values are backed by refs, you could set an input's v-model attribute to either `username` or `form.username.value`, both will maintain the same value between them.\r\n```html\r\n<input type=\"text\"\r\n  v-model=\"username\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n#### Options API\r\n\r\nIt is recommended to define your validation field & field groups within the component's `setup` function as demonstrated in the above Composition API example.  However, if needed, you can define these within the Options API's `data` structure.\r\n\r\n```typescript\r\nimport { defineComponent } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  data() {\r\n    return {\r\n      form: fieldGroup({\r\n        username: field([required()], '<optional initial value>'),\r\n        password: field([required()])\r\n      })\r\n    }\r\n  }\r\n})\r\n```\r\n```html\r\n<input type=\"text\"\r\n  v-model=\"form.username.value\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n## Changelog\r\n\r\nChanges for each release are documented in the [CHANGELOG](CHANGELOG.md) file.\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n\r\n[npm-image]: https://img.shields.io/npm/v/vue-validus.svg\r\n[npm-url]: https://npmjs.org/package/vue-validus\r\n[license-image]: https://img.shields.io/badge/license-MIT-blue.svg\r\n[license-url]: LICENSE\r\n[codecov-image]: https://codecov.io/gh/dev-tavern/vue-validus/branch/main/graph/badge.svg?token=IFCU4CBZWR\r\n[codecov-url]: https://codecov.io/gh/dev-tavern/vue-validus\r\n[circleci-image]: https://circleci.com/gh/dev-tavern/vue-validus.svg?style=svg\r\n[circleci-url]: https://circleci.com/gh/dev-tavern/vue-validus","readmeFilename":"README.md","gitHead":"36b96c6c942d75fd0e6126e6f02856dde08e63dc","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.0-beta.3","_nodeVersion":"14.15.1","_npmVersion":"6.14.2","dist":{"integrity":"sha512-tgFryQmGPmt1v33ADjv0tuGGe22RO9J6uhLNS35ftjDLFlrcw5HsjHRLQK2SUnMXUzSKLC+hNOmwfbuS5vdlVg==","shasum":"a6b909b36d5a92737adac0fe5ec1f150b1a85702","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.0-beta.3.tgz","fileCount":11,"unpackedSize":36534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgDO0RCRA9TVsSAnZWagAAfHQP/0b32vdIlDteB0cnkbQT\nftagqFLNdaZyksm6DE2L0ajU2CtG32qVS+H8gqNf3KztcybjsJxKZIs28Vkj\nyFuCmWl29INqwJaV4q60zTITEaA1eKvWf111We0E+cHZPZM/Tql8YRsbnvGN\nCAS+NlbckzyTT638lHW4RmRcdGWsY98hFvATWYgpRTQNbdsvoOrQy/7En6Bq\n866Kzp3Nz9wXxgsAuAotHW2raGgZEzqy+5EMmc6TCzXY0mfAD4B1fB4M4E2h\nlguxjiEIIzKSBrEhEI3EN4J/7KZEQoUWbIDPR2zYf/padqvOeX5oLC4hW1Fh\n7DxauAHrPVPUF6b4Xq8ewp8iBoaXOXQjP6GQOzNG17FfBJnUMpGCeNPjAcLA\nsI3uy6mSvuEOS1la33EdvChSm5TJ7DjdkBL86NwpydFBn0keYQ8/STO1BVRB\nH6WBzoMJV11PcMEjppzA0E3SAp9Zp7lLBia76BrWnqTCtCY+QgPDGkd6nhaj\n5v9ImN0mAZaQpDq18X8rm/oumXklyowL9FA8ncT8Fiem9eERIHfxk31rRrDz\nAh5LTjSMcPLOSqFrtoIT9/V8jeZbpXD0pk1oQOOT42jV+M1DPvwwlL0USswY\nrH6LmnOSj7XCPSWSmxuQ1egYXZ6CzXZb2plZ5G/guagh1c5zWKrApBwCNSsV\n8Ski\r\n=4foU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEfLBcsDFJyReV+9+n3An4AhRbDrZh0Q0s4/i36jpDBcAiAU4Sa+SZpKePHQpY6+6cPuU0pfXHjWcknXf2/9lFaHeQ=="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.0-beta.3_1611459857132_0.3673253697821566"},"_hasShrinkwrap":false},"1.0.0-beta.4":{"name":"vue-validus","version":"1.0.0-beta.4","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"gitHead":"78095f30ec07a5f13a2e50dcad42845b4dfb20d4","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.0-beta.4","_nodeVersion":"14.15.1","_npmVersion":"6.14.2","dist":{"integrity":"sha512-ECpsAxM5Kkf2uW2j0jjvW9oG7VpkTt6TeJ4jTp1Ytbq0jB2MBiMU1EGXhIFUibNnpnaGBb1p0UgnvylAxOyKrg==","shasum":"c210dfe33def0becbbe1ec6a48526476834ec013","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.0-beta.4.tgz","fileCount":11,"unpackedSize":36534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgDO8qCRA9TVsSAnZWagAAcc4P/309yDc/i7Ny0k4wFaKH\n4r9PwBjZSuP44ymMku4b0WQ7VbNtiP3wII3mpL82pm/B9/wN/1BZwPgnDHXJ\nh7dFzsuQTy0rWIBEIsxw8Mujp5nkFyQspl/N3W4YHeqmtS3NEgYnB3HNDl28\nkJ51hMy/O9rQZsu59lG7dUZVyoF6gusWFg7gsnWADL62dRABQN70meDFIAsm\nV1KDlw6+MCdKdxtYNDHxK/uJtuQ85MJPzqWiiFYPyz52Apz+Ourni3cBhRgH\noP6Q5Fd1k5fQ/0LZPfUsezKmkYym50QRd3QZaBet3/Q5tACuf85w3IpCv7hk\nwtsH2m1Ijlg3P8ogdPHPhl3I6jRAgc+11An60Py5n490rSiSJWe+Mp7qcC4S\nMByJF1Jp0wMJmO5zKzHL5/pnDBGqk8Yt+q5ubeqkxfgvuS7TA6wdpD7QoQcI\ngt4/hDCGR4+SrY+jZbvhVxSvo07QGsiJGzlQU1L/X4iOg9DU7d/3Yu081ryQ\nZUjrKvWQVD9Ftg68+HVwNt3YmcJUDgjjLfEapJkpqs15TIcdCIdRBKoWGvjy\nGQENiu9Hi0VVsjI9GJjFwAaJiEoJNlWKAG9CDRSgERuK2QW7ciSHdwWY4pHt\ng9JzYDoVYaUK+hJxziNDE74Y6cVQHZfBG3gK4umOtqQmLaO6PMMvtwOiN2bo\nW0io\r\n=2gME\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHKKH00ZHaPPGGfSO22o8eYropMTVGad2VAb7r5VeuqoAiA1ggrbheGHcpWbyxzmmHMgT4p19ozmn+puHUAfKExFXA=="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.0-beta.4_1611460393901_0.19876574730062813"},"_hasShrinkwrap":false},"1.0.0-beta.5":{"name":"vue-validus","version":"1.0.0-beta.5","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","browser":"dist/vue-validus.umd.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"gitHead":"3a9215db5fe266fa28bea6278bc139bdcac3ad84","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.0-beta.5","_nodeVersion":"14.15.1","_npmVersion":"6.14.2","dist":{"integrity":"sha512-pLw+tBZbDOvpHrOCMg2Hp7uA7P7eswn/oKt7YpjfP6zTN0PjtvGaStekwFZ3Hpx4BdpaYrhzEgR6rXKGXksULA==","shasum":"473d4c7655886b3124fcfe215ca26293389c7fdf","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.0-beta.5.tgz","fileCount":12,"unpackedSize":49647,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgEjoRCRA9TVsSAnZWagAAptEP/1HP2hjnVuR/rJY+eQe0\n9/+HjhFyvkX2X+2uHCmuc3jof5/8WJ1rfL2aXILBnks6QMZOg4RgFJUvdihA\nm7RZV+aaqjobJJkk3cpFA7kFTdXCZwWvTXENHKQWmijpxKYo6bivqVyM3z8T\nWo35gIjXH0MNB+IDq4BNaEAsVk1hTC6D+i80xasF/j3qynDpoaWbhIgu4/cg\n1JRkXlpvRQZ5GJOBWQyz39FT7VnofHPxCt3oTsj/a/ADqPBmlQUE0HSd7XHQ\nXrtQ0zT5kCCs20v53z/yL2gAqZU+h/PGFIoEGhL9fd0JDA0B6RbEsKT14MNL\nI0GUNMd7gEwtC/X4wERA7gbPd5yJ3GXo/WrBQR8xaaf4uOvAXkIZ4aBXjWAg\nIADe+iD8nlycsTB2oBfZv15GaAlcYHsZv4xduunT1mtNLpZwvunj4hzRosbf\nVsWgHxkd52Tn90hlsVgD1ts6k3O4bdl1rF7vGxGd+ROV+6F9cP+/e/cTRcnf\nUaRMQx5TCPm5wqEsRPaKgVXGjmrlUsGUMyjYc3d/hm2O7ZGvKm7mtninDLol\nWUHIobiVAg0bdtB8BbYdXC/nYEbdmCrtXy5CvbyDZsu8V2G9+SuCm9qVQK/b\nXjdLqYjw57gKhC/KG4Dh64eDzUP9kGORqwHA1rWdo/eUU58rBI8xzXRNgRRi\nx0Mk\r\n=S0vj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHmqI+myFGOoIivXilPVZbeiCCXxi93i/xNpVhEOtutHAiAPIyqr0OjmtWXIcoUjK4r3Zk1wehKZRospCBniMBYslQ=="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.0-beta.5_1611807249331_0.9694093116081341"},"_hasShrinkwrap":false},"1.0.0-beta.6":{"name":"vue-validus","version":"1.0.0-beta.6","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"gitHead":"f7b509bad04002ddbef086a0a8240a8060585fb0","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.0-beta.6","_nodeVersion":"14.15.1","_npmVersion":"6.14.2","dist":{"integrity":"sha512-3bxZiDU0PuE92BMeaK5KW7HeO72n2yD+HxLpEbtlZoLBWLQU8EhUS6eMhkA4vJJ3J7TsJLYygzRoRZoHOUdPwQ==","shasum":"c73c89ae67bde20baedf91b3270786d8e2d67ebc","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.0-beta.6.tgz","fileCount":11,"unpackedSize":36879,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgFkHwCRA9TVsSAnZWagAACrQP/3ajYW/lqgDc/QRindv2\nkWRVzMMWLQLtr6upzp6g1igaXaAlc3aCvVk6MmD1dYlw+cHBlAlVMEH2zC6h\nMq1RJoKVbLgxxIhlDayWQr/FZBG9ZaQxCy3aIOxnRCu/zI/vehm1+tlvbbCO\nphAyEFDgai4UFswMOhIdCd65RyF+XOsPqzgmjTkkkqDkM5IvDGTXkvV9+HoP\n6rCpZhkBmiTb0HVuYyueHOwF+G/QpT7oSZtUQH0aT4JyDq/+R+fdb3Fx2GWJ\nxsPkfl4bIR3Fz/xsZUQIbsVjsTJfurV2ziqPOoznHkNTf7zEZfpT8thzg+Vt\nePRv+++BTvYlPSM77lMDK9o9PJFnQwr0s0yvhA/Wh2N+ijHGqWthnvZ7YKr8\nnva61iQcd1ECS0ruA+nT2kvSPJTnU6TlLjIfF3/bidCa1ncwwZbZUVxk79Q7\nC3Y3YWxGR9kbrzFy3E1+raqLtBO5iNwa//Z3BUmyDjxSFrG6IQe3Qo9hOm2+\nM46HA+QTmtvNGhMUKc3h0ftNnBB0sTHyI80kN4IMuHmel7wT2RI7dDBsoFXE\nBKtCCOerZc6Q2NLZ5Ttg7zUIVbGEuT6sCNGgllRFhbhoE0Q2CCNdG/AV6oCm\nlkKLld5g5NqYElmnYP8V9+PT+asJ/Td+rGGfJQdCPwleQH2w+1fA1NKM9Sj/\n72ln\r\n=0F7F\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCyaXmgq5u+F0yhxD0BdBLz2hZzklRhuhI84s1vPEuhiAIgdV/cOjdZ3qyOIW6HnHWFylrXMk+jkJR/AP89Qh+Tq3o="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.0-beta.6_1612071407838_0.6674057777317348"},"_hasShrinkwrap":false},"1.0.0-beta.7":{"name":"vue-validus","version":"1.0.0-beta.7","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"readme":"# vue-validus\r\n\r\n[![License][license-image]][license-url]\r\n[![NPM][npm-image]][npm-url]\r\n[![codecov][codecov-image]][codecov-url]\r\n[![circleci][circleci-image]][circleci-url]\r\n![minified][minified-image]\r\n![minzipped][minzipped-image]\r\n![tree-shaking][tree-shaking-image]\r\n\r\n> Extensible, lightweight validation library for Vue 3\r\n\r\n## Get Started\r\n\r\nView the [documentation](https://vue-validus.devtavern.com) for a complete guide, including examples and API reference.\r\n\r\nFor support with Vue 2 Composition API, use [vue2-validus](https://github.com/dev-tavern/vue2-validus).\r\n\r\n### Install\r\n```bash\r\n# install with npm\r\nnpm install vue-validus --save\r\n# install with yarn\r\nyarn add vue-validus --save\r\n```\r\n\r\n### Usage\r\n\r\nBelow is a simple example of one approach for leveraging vue-validus for validation, for more detailed examples and additional approaches, please visit the [documentation](https://vue-validus.devtavern.com).  This example will use Vue refs as the source for the field values, though you could also use a reactive object or just the fields themselves without separate value properties.\r\n\r\n#### Composition API\r\n\r\n```typescript\r\nimport { defineComponent, ref } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  setup() {\r\n    // example: field group containing fields with values sourced from refs\r\n    const username = ref('')\r\n    const password = ref('')\r\n    const form = fieldGroup({\r\n      username: field([required()], username),\r\n      password: field([required()], password)\r\n    })\r\n    // example: validate entire group at once and check result\r\n    const handleSubmit = () => {\r\n      form.validate()\r\n      if (!form.invalid) {\r\n        // submit...\r\n      }\r\n    }\r\n    return { username, password, form, handleSubmit }\r\n  }\r\n})\r\n```\r\nAt this point, since our field values are backed by refs, you could set an input's v-model attribute to either `username` or `form.username.value`, both will maintain the same value between them.\r\n```html\r\n<input type=\"text\"\r\n  v-model=\"username\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n#### Options API\r\n\r\nIt is recommended to define your validation field & field groups within the component's `setup` function as demonstrated in the above Composition API example.  However, if needed, you can define these within the Options API's `data` structure.\r\n\r\n```typescript\r\nimport { defineComponent } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  data() {\r\n    return {\r\n      form: fieldGroup({\r\n        username: field([required()], '<optional initial value>'),\r\n        password: field([required()])\r\n      })\r\n    }\r\n  }\r\n})\r\n```\r\n```html\r\n<input type=\"text\"\r\n  v-model=\"form.username.value\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n## Changelog\r\n\r\nChanges for each release are documented in the [CHANGELOG](CHANGELOG.md) file.\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n\r\n[npm-image]: https://img.shields.io/npm/v/vue-validus.svg\r\n[npm-url]: https://npmjs.org/package/vue-validus\r\n[license-image]: https://img.shields.io/badge/license-MIT-blue.svg\r\n[license-url]: LICENSE\r\n[codecov-image]: https://codecov.io/gh/dev-tavern/vue-validus/branch/main/graph/badge.svg?token=IFCU4CBZWR\r\n[codecov-url]: https://codecov.io/gh/dev-tavern/vue-validus\r\n[circleci-image]: https://circleci.com/gh/dev-tavern/vue-validus.svg?style=svg\r\n[circleci-url]: https://circleci.com/gh/dev-tavern/vue-validus\r\n[minified-image]: https://badgen.net/bundlephobia/min/vue-validus\r\n[minzipped-image]: https://badgen.net/bundlephobia/minzip/vue-validus\r\n[tree-shaking-image]: https://badgen.net/bundlephobia/tree-shaking/vue-validus","readmeFilename":"README.md","gitHead":"1bf6dab1241a6c17c67a53428d61c27aafc93a1b","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.0-beta.7","_nodeVersion":"14.15.1","_npmVersion":"6.14.2","dist":{"integrity":"sha512-M2mWuw/SmlDNBiBvT8ivyWAXnjaTiQmklNZUd+6frV8PL2wgwEIZfrWg8VfyJetLEjtHx9SxKIFVZN+76a/vcA==","shasum":"555d9ca71e99c09a51ded33ff1b67efbd30b0ffd","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.0-beta.7.tgz","fileCount":11,"unpackedSize":37965,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgMdC9CRA9TVsSAnZWagAAepEP/3aHnsMW2sZ8W2tqI1up\nOGraAZ4vldLfRw35Q/8qrEWT0i9du+yX2S8RBN2mRh3DGtIIbkPCskgF2LT3\nRc77xorb1DvXRpxjwEUIEBC7S022AgQ8rCNejfAaYzYFg3X1/wlZWtR5R1VA\nAe4gGY8iNu08EscyFRcHfzeCeaXAFhC5FFat7ve/DeNoKXKYODMFXlAtph5i\neYKf/vP7kpDnZK1TIZKGCPjwl5QqgeVWMh+IMsDlcJ9EoHt47q2H6fwRtK5M\nMO1EnFouv2d9oipToOtljZfUUmXfLisfum8EWIYYSsW2dWQZ0mh42U3AkBbB\nqMP50ITb6wCvbQiZmuMU9306RsT2rbq3DRH6z73FD4X013k2jjTCHZYy7T/A\n673BfkeRpx2cujFwxeNpuXd0hX/VA/BmjxsAOqcEarwg+nkCoT31c08TpSRe\nsIMjr52W2BrPBVvnanISkeDbb888qSOu4o8ZK2z2ZW1ZTuV75qtTBw7PwqMz\nVuio4kkDWCq8+YocyJ/G7YzZZRsX5kdYgiyX7eOyBHEateKBJH82XxxNw7ng\n214k3nmnsX1PSn4hDRvu2eFZ7C6pxcnVCBqUpXDKbJ3r7fScrtR+6vJgfvzV\nP4hJDvc7SHRP0shducAm6Vj7UpCqfEhqn6mZOlRwfb1AVC7TjRGCdgV4g4g2\nlt1u\r\n=LKnZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA3t6rEMlwJVYNSfEE2H9zV6J67IBVulK1emg3LqtKwxAiAjFRpkdwNPvT975yiZNN/BDRRDas8CtDz6xuNFnQfmrQ=="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.0-beta.7_1613877437168_0.9195351730546275"},"_hasShrinkwrap":false},"1.0.0":{"name":"vue-validus","version":"1.0.0","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"gitHead":"1fd34250e654a41883b6ec7e3a04659a6b9d5fa3","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.0","_nodeVersion":"14.15.1","_npmVersion":"6.14.2","dist":{"integrity":"sha512-xUlBAvixGYmceKSKh1T3hPj8aLSiYBbJZM8AdKFsTEbz0lLz43X94OZi+aAqppS02iQBENNitpXU8/d9eTj72g==","shasum":"7e13b88891de030a2877f75db51b6d416ee17a90","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.0.tgz","fileCount":11,"unpackedSize":37951,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgMdkbCRA9TVsSAnZWagAAl0UP/0ljcApLB/wpG0mU6TdP\njQ5VxHuS10qLfttYOcDwS3nMfWDMvWZqqI88Rd78TY6N+kZbHQQi5ZVu4M5g\n1agVm2lNE0U/H6O5rwM121A2BxjMFu9mRHfdNKGBmmDEx9HcOID5VbrDvIJi\nfhW9+qWqVIPX0jCOsS+xntBl7Ow3qDc+qarmrcCmRmP15Nifa3N+5X2mL5uK\nTdirPFlMsLKMfJimIkluV0RS8kWLnVbmsuqOmDpOz+svXltVE2f87hwHa3Ne\nK7fm/7gdBt/4nNvOADPG6XhREV8niQCAvH4qjhVxi+YjzotXrUGs7NF0isCF\nJqhea01clDHubeJdfJOY03z1bKNGghgpIwIUxwO6vEstjTo3z4M86Gx/wbuJ\nMfH5Efe4haTdJudtrJIc0q8oHnn4QBdUx6KpaNuLANQH+M3g3gJzUBXiuLUB\nuBJp5wRMovW2bWLCBphIXK8IHY1Ajd3DPrCqNZ+oy1PVjtNJqwNsHK5WwUD+\nxuru7c1NG7E3uh15DGGoG+64bPObmEmk+bnZ/+CwuX/6BpX2dsEjfNgPbsVB\nHRuoo+oNcSc/ckw/Dl952rRLsjB6CH7+ilVrCj8Uf81aYWSirWdNcZ8MbfWX\nrHd7hlKPDX4q1JusZH8jPRXmRDwIm3zeDSfhufZQ2Zq03VtAyQYmCGJsdufJ\nYd5o\r\n=eYSP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHb18OdAzvYhnV1jPhOuRBEVh64gntiUdgSCSows4d8CAiBzKhYSBxh9NNOY/DfbZjvSXAEPzYosxhM06ZB4ozZzPA=="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.0_1613879578497_0.08791769902325508"},"_hasShrinkwrap":false},"1.0.1-beta.1":{"name":"vue-validus","version":"1.0.1-beta.1","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@babel/core":"^7.13.1","@babel/preset-env":"^7.13.5","@rollup/plugin-babel":"^5.3.0","@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"readme":"# vue-validus\r\n\r\n[![License][license-image]][license-url]\r\n[![NPM][npm-image]][npm-url]\r\n[![codecov][codecov-image]][codecov-url]\r\n[![circleci][circleci-image]][circleci-url]\r\n![minified][minified-image]\r\n![minzipped][minzipped-image]\r\n![tree-shaking][tree-shaking-image]\r\n\r\n> Extensible, lightweight validation library for Vue 3\r\n\r\n## Get Started\r\n\r\nView the [documentation](https://vue-validus.devtavern.com) for a complete guide, including examples and API reference.\r\n\r\nFor support with Vue 2 Composition API, use [vue2-validus](https://github.com/dev-tavern/vue2-validus).\r\n\r\n### Install\r\n```bash\r\n# install with npm\r\nnpm install vue-validus --save\r\n# install with yarn\r\nyarn add vue-validus --save\r\n```\r\n\r\n### Usage\r\n\r\nBelow is a simple example of one approach for leveraging vue-validus for validation, for more detailed examples and additional approaches, please visit the [documentation](https://vue-validus.devtavern.com).  This example will use Vue refs as the source for the field values, though you could also use a reactive object or just the fields themselves without separate value properties.\r\n\r\n#### Composition API\r\n\r\n```typescript\r\nimport { defineComponent, ref } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  setup() {\r\n    // example: field group containing fields with values sourced from refs\r\n    const username = ref('')\r\n    const password = ref('')\r\n    const form = fieldGroup({\r\n      username: field([required()], username),\r\n      password: field([required()], password)\r\n    })\r\n    // example: validate entire group at once and check result\r\n    const handleSubmit = () => {\r\n      form.validate()\r\n      if (!form.invalid) {\r\n        // submit...\r\n      }\r\n    }\r\n    return { username, password, form, handleSubmit }\r\n  }\r\n})\r\n```\r\nAt this point, since our field values are backed by refs, you could set an input's v-model attribute to either `username` or `form.username.value`, both will maintain the same value between them.\r\n```html\r\n<input type=\"text\"\r\n  v-model=\"username\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n#### Options API\r\n\r\nIt is recommended to define your validation field & field groups within the component's `setup` function as demonstrated in the above Composition API example.  However, if needed, you can define these within the Options API's `data` structure.\r\n\r\n```typescript\r\nimport { defineComponent } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  data() {\r\n    return {\r\n      form: fieldGroup({\r\n        username: field([required()], '<optional initial value>'),\r\n        password: field([required()])\r\n      })\r\n    }\r\n  }\r\n})\r\n```\r\n```html\r\n<input type=\"text\"\r\n  v-model=\"form.username.value\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n## Changelog\r\n\r\nChanges for each release are documented in the [CHANGELOG](CHANGELOG.md) file.\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n\r\n[npm-image]: https://img.shields.io/npm/v/vue-validus.svg\r\n[npm-url]: https://npmjs.org/package/vue-validus\r\n[license-image]: https://img.shields.io/badge/license-MIT-blue.svg\r\n[license-url]: LICENSE\r\n[codecov-image]: https://codecov.io/gh/dev-tavern/vue-validus/branch/main/graph/badge.svg?token=IFCU4CBZWR\r\n[codecov-url]: https://codecov.io/gh/dev-tavern/vue-validus\r\n[circleci-image]: https://circleci.com/gh/dev-tavern/vue-validus.svg?style=svg\r\n[circleci-url]: https://circleci.com/gh/dev-tavern/vue-validus\r\n[minified-image]: https://badgen.net/bundlephobia/min/vue-validus\r\n[minzipped-image]: https://badgen.net/bundlephobia/minzip/vue-validus\r\n[tree-shaking-image]: https://badgen.net/bundlephobia/tree-shaking/vue-validus","readmeFilename":"README.md","gitHead":"c23658795764c2144b1943241c853e8aa2851d0d","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.1-beta.1","_nodeVersion":"14.15.1","_npmVersion":"6.14.2","dist":{"integrity":"sha512-IipJQPPs856E82cXekFCrxqU43EmIbHOPz22qB0QVcWXaKl+SdR/yxC263m5W4HSas639I4b3BQU/3oTqhx/EQ==","shasum":"efcbd0b64bfadb30c28814c04d45e6e9c630e11d","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.1-beta.1.tgz","fileCount":11,"unpackedSize":42249,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgOV+MCRA9TVsSAnZWagAAJWwP+wZaXvzIDzifL9Z1OqNQ\nUojocF2kJwPyxYZP67IW6Xo1RAX8+O7G5p2SWPLx24+bv1fCqNO8jSttkrit\n1TvMBdyYM4Et7s10r3pCRJJBn2Rfcih6uHvAdLtj3c9agEpHjVNmI71Y2mNY\n9sL6qUxKgWYM2Ccj7G49ScDQ2PrFBX65laj8PlLJKZeATRow/+66yUuTpfM3\niXvDP8i3QBw9aPTgThnp2GYFco00bQB0tBLf0SD1aEypOACjNyTrBQW4xYN+\nRJbOqhX3P4SNvH3AZ1OgnNSA+IMf8M9doQRZS27qclF/hUF0L2ypZUSyiRT7\nS9LL6prpeFAoiX4JxNTvUKKD65E2swqUY2zgIWwXi4XsPWdp59wL92vnb1XZ\nyqvIskrXRMAgnKxHwqNFmQZVrIGvJ8vLL3p7/0GjlwaEDYwYqiDLhe/4GuVJ\nmGRy+fnM/ZpdtC7FKx8RejigBXEITonascuYbhb9VkdQ5vz8VWLANHUDbdd8\nc9LOPhIaan1hT4ORrz/TJOII3PeWY4X5sgs4ChCVfpkXtIEfQb04kyFSLe1Z\nObHYQFURV8OaumrV4zs1JzoAea0y7cBJkd84+hhdKZhcTHD9JDfE8PvO0B/W\nX2OLU7axAS5lZD10SCRN+HaXz6aH+NDnbqYaAupO9FkOLyKqO+cy99ULTTsu\nRpeF\r\n=8uhS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC6C58P90vp2JhKDoo04MuxdKFvb008EthdVRvu2aXRVAIgciBGuVwQHI4md75FT6GHNtSnVwlAcZWraRyl/Y9htbc="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.1-beta.1_1614372747980_0.9692694396179407"},"_hasShrinkwrap":false},"1.0.1-beta.2":{"name":"vue-validus","version":"1.0.1-beta.2","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@babel/core":"^7.13.1","@babel/preset-env":"^7.13.5","@rollup/plugin-babel":"^5.3.0","@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","babel-plugin-array-includes":"^2.0.3","babel-plugin-transform-es2017-object-entries":"0.0.5","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"readme":"# vue-validus\r\n\r\n[![License][license-image]][license-url]\r\n[![NPM][npm-image]][npm-url]\r\n[![codecov][codecov-image]][codecov-url]\r\n[![circleci][circleci-image]][circleci-url]\r\n![minified][minified-image]\r\n![minzipped][minzipped-image]\r\n![tree-shaking][tree-shaking-image]\r\n\r\n> Extensible, lightweight validation library for Vue 3\r\n\r\n## Get Started\r\n\r\nView the [documentation](https://vue-validus.devtavern.com) for a complete guide, including examples and API reference.\r\n\r\nFor support with Vue 2 Composition API, use [vue2-validus](https://github.com/dev-tavern/vue2-validus).\r\n\r\n### Install\r\n```bash\r\n# install with npm\r\nnpm install vue-validus --save\r\n# install with yarn\r\nyarn add vue-validus --save\r\n```\r\n\r\n### Usage\r\n\r\nBelow is a simple example of one approach for leveraging vue-validus for validation, for more detailed examples and additional approaches, please visit the [documentation](https://vue-validus.devtavern.com).  This example will use Vue refs as the source for the field values, though you could also use a reactive object or just the fields themselves without separate value properties.\r\n\r\n#### Composition API\r\n\r\n```typescript\r\nimport { defineComponent, ref } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  setup() {\r\n    // example: field group containing fields with values sourced from refs\r\n    const username = ref('')\r\n    const password = ref('')\r\n    const form = fieldGroup({\r\n      username: field([required()], username),\r\n      password: field([required()], password)\r\n    })\r\n    // example: validate entire group at once and check result\r\n    const handleSubmit = () => {\r\n      form.validate()\r\n      if (!form.invalid) {\r\n        // submit...\r\n      }\r\n    }\r\n    return { username, password, form, handleSubmit }\r\n  }\r\n})\r\n```\r\nAt this point, since our field values are backed by refs, you could set an input's v-model attribute to either `username` or `form.username.value`, both will maintain the same value between them.\r\n```html\r\n<input type=\"text\"\r\n  v-model=\"username\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n#### Options API\r\n\r\nIt is recommended to define your validation field & field groups within the component's `setup` function as demonstrated in the above Composition API example.  However, if needed, you can define these within the Options API's `data` structure.\r\n\r\n```typescript\r\nimport { defineComponent } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  data() {\r\n    return {\r\n      form: fieldGroup({\r\n        username: field([required()], '<optional initial value>'),\r\n        password: field([required()])\r\n      })\r\n    }\r\n  }\r\n})\r\n```\r\n```html\r\n<input type=\"text\"\r\n  v-model=\"form.username.value\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n## Changelog\r\n\r\nChanges for each release are documented in the [CHANGELOG](CHANGELOG.md) file.\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n\r\n[npm-image]: https://img.shields.io/npm/v/vue-validus.svg\r\n[npm-url]: https://npmjs.org/package/vue-validus\r\n[license-image]: https://img.shields.io/badge/license-MIT-blue.svg\r\n[license-url]: LICENSE\r\n[codecov-image]: https://codecov.io/gh/dev-tavern/vue-validus/branch/main/graph/badge.svg?token=IFCU4CBZWR\r\n[codecov-url]: https://codecov.io/gh/dev-tavern/vue-validus\r\n[circleci-image]: https://circleci.com/gh/dev-tavern/vue-validus.svg?style=svg\r\n[circleci-url]: https://circleci.com/gh/dev-tavern/vue-validus\r\n[minified-image]: https://badgen.net/bundlephobia/min/vue-validus\r\n[minzipped-image]: https://badgen.net/bundlephobia/minzip/vue-validus\r\n[tree-shaking-image]: https://badgen.net/bundlephobia/tree-shaking/vue-validus","readmeFilename":"README.md","gitHead":"bad5f98297eb328d9efc3203efbd31a783314128","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.1-beta.2","_nodeVersion":"14.15.1","_npmVersion":"6.14.2","dist":{"integrity":"sha512-GQznelApM/Y/Ew850YP+cy64d8yMek/l341Q63rnBt94PtT8G8hbGdIEFqbMLDflrVLc+QxXtqa/tgmFSXwuwg==","shasum":"ce0a8c989ac4effe636505711c52259868d9f2a9","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.1-beta.2.tgz","fileCount":11,"unpackedSize":43181,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgOWm6CRA9TVsSAnZWagAAqcoP/14Y2n/70jjLXNoUTXRo\nKhBOH3KNwt/1rpyXfkewrxPE0yeVbfJhW32VlT+7QHJQ4U2X8hZEzQ4VgiP7\nVIFph6Do5H2GKfehzaw7GqheEp593EHPppjSMbd7tdyzLbnhbbhkOFumEUPs\n3/gsRySyttRaTFbFjFQBQ70sFC3gKSeOUvIZHISctoX7w7ur+FwgbcYpqpT3\nZ/RC1UKqhNVmcxP9T9s9UEjiZ8VOFI61YI3taIjLitxuU1kY30Ocz38Bzj1G\nxYAh0051dH+vjoe+giRAlrMgIwkZMwvJ7nb19wASwUGtsJTkeRvtvsQk/9FD\nlYZi+TW+qcn/LHFhEM/5G2P3djpcEAW7pWTqWs9TnkPEhfxhjW/5eJpLeVZ8\ndDTaZ9VguhQiXMhX3SMz02RfaeKl8XjTCvxoq9M24oEPhmWAaXSP/64V0Yg2\n3BBNax1PvDNq8IzTdWsxDN6jgR+E5zqxYksTNKLIlZwzQ6QkRYHOLL3i9FJw\nPEJjR2QiBHCxj7Julu/2NIb6j6Ves67XSxghDuTT6YiDvEcdyeTXUQ5SlHWE\naAQ+KoHGF8wQUhdsUVpX+y9tUiMTTiB44pzdOeWRoaXS3v/gFVjPuqjlKoGI\nKUivsIqjrIhNqJqOwvhk3vZYdEMXEZl/XjHN9R7GWyJU3Grve2s1UH8wLtOL\nxNZS\r\n=0XbY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCN4Lzf2fZhYqylvUgGFTH7SkJdHf3JR3lK77bgvvDkQwIgSyGxRREila9981Oxd6v0JmnbV+UBDo/KIHHjGOcERN0="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.1-beta.2_1614375354115_0.9850471101992946"},"_hasShrinkwrap":false},"1.0.1":{"name":"vue-validus","version":"1.0.1","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@babel/core":"^7.13.1","@babel/preset-env":"^7.13.5","@rollup/plugin-babel":"^5.3.0","@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","babel-plugin-array-includes":"^2.0.3","babel-plugin-transform-es2017-object-entries":"0.0.5","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"gitHead":"d6ab023b2d945754b1ad89dcf41894d264939b56","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.1","_nodeVersion":"14.15.1","_npmVersion":"6.14.2","dist":{"integrity":"sha512-JHGn4ilRm3VEVX/wP0y+Qs7bZiwafFyQpuQ+bRBHZgVHnDwu06YlkbPk/JPi/e4Xudrb4avlApHcvOrOh2KmZw==","shasum":"4cfd4c17f515da0fbbeb15e54f577b3c2e9c521c","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.1.tgz","fileCount":11,"unpackedSize":43461,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgOXKXCRA9TVsSAnZWagAA0YsP/iHrJfy3MYCSayG2h2PJ\nbSgqVVqstOQN5CO6Ahvs3PVdneEwVnJv2uy9jXfSVnj00LqkPbDubeT1Ql/P\nmpcci1hJ4qL1Pof5FOqkYdwh3WACUS5Pdvj6NFUOCpr+d2XbEXAbSPjB6eH9\nyOyGR4nBR5d2H3p8m8mVRzbF13agSrP89b03bJoP5qeOs923Fr88cYATY4+g\nTa/GwHOyx2+nia4s+60NkrV+oXEciZdYJuxzvRk9wyY10VE82sGAW02Tl5ap\nypSGIdsX/KpRlWCUrjc2yDjUn2eF/oZdFQS+i+bkPh6NSfiG7Bx+uPiv3cZS\nU8K5xOgMB+ECJ0Eg3wZrZMgDLYhtctptD6euNbflTWc983e8e7BWxrRhzBHl\nF9/1OLJdaGbNN1fRbQMVCY5Lhwy2Dlxfp5K7Y+GKRvlRZ9tTWQc0UthfTHag\nHbI0X/2UqTLQUrVF4n7vMb1x1YHYUadmkmqn1lyMCMe5dL+C3y6tD3fAZOb7\niff4Gwpoj0wcfKtTyiBwhIUcU6mybzaKInjcnhk9BGENeQmJMw9FeNb4PQg+\nNsZ5PDrr0aLvqfdW46rXSC2FYqSFg/IEhwkWtd7H4QSEHX/2lSX1p7W2ZAo2\n45vp7sBwKsVxHTqPe9CVcLcmflIyLrNDid9PQXpEFp+unrYxqjt/GDjCqboh\nyM7D\r\n=psNf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCoRG66k31a24blQYm4q6H53W42uMCDqZ4DlejgIxAS/AIhALB04qvykDgJ4yfy9Pk2WvsHZrVAQPxuQ2ef4C5F8V37"}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.1_1614377623330_0.4772278050398173"},"_hasShrinkwrap":false},"1.0.2":{"name":"vue-validus","version":"1.0.2","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@babel/core":"^7.13.1","@babel/preset-env":"^7.13.5","@rollup/plugin-babel":"^5.3.0","@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","babel-plugin-array-includes":"^2.0.3","babel-plugin-transform-es2017-object-entries":"0.0.5","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"gitHead":"6fc467bde523ddd3e060ac9c4459768ddee4a7b4","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.2","_nodeVersion":"14.15.1","_npmVersion":"6.14.2","dist":{"integrity":"sha512-JIWGd05b+LQsY5HqrNMLQUX/5lb3+7rqZh57awqNPeDM5t31G6Mk10F9+H3kDsLejrCLK1Fs4NM+dx5y5nDyxQ==","shasum":"f7c56d87efd67c7234eb80accfb48fc008aa7c65","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.2.tgz","fileCount":11,"unpackedSize":43719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtCMCCRA9TVsSAnZWagAA86wP+QHCYUAdfp8i2UrtaksW\nJPsZyi3gf8B53rIntX2o1xObOvLLUesj/CcFWCLgTfxRED7+mO8qt0eQEjDj\nKedGr35zG2daxInnf/Tz4u787x+P9L0venH18UZl0I3dyQxy1sB8Ghc+147R\nm6bi4TWognmqC0vAghScsFgNHjdr1yywiT1LpOwBZ2dSpI+mjspuUeg2xgYx\n1znayorMCi+rmgDgG/BdfqxOyix5ajivAzDDHntUqrsp29hkB+jlccmXjsnn\ncI02K14WMy/8guJEVEFhOl4gG/rHiWr8W2nt17UNfFxqezGpFQiqD2e+IikO\nVlkZ9WOlrC+eL+xDOjHEk+Px4i2sRzUy1i2fvBLZQ30FB3pYmaE+6mBDARnO\ngCZUpFHhCBu6synf+JgnlxJJJibW5KuzUXMaibX5ZMd358QDWuCMGyK/bOkx\n13KqzH9M/hQG5Z1dA7OaRarq8Kq1qM6TdaUgc5g/LsEO7FelcX3q5jqOoRVk\n3IagD8psjS3xufABYMKHfeBj2r2nbrkWE3VH/btILSdUP6NO1fbAsXq167PY\ntz8tSQsH2Eggc+9O6Gpp2Wlnr4A5ZmAIMJa9gT8ERiAL4TdGLZ1pggpyQ1Ye\nkxUwRM9iClZmlryxu4DSHuYK9ZMKMcMJ5mWrn1LR2PtjxXgAznunx5BVFFw8\nhtpZ\r\n=mm7f\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG3tspriPiyK+Wo0oBWVsbDcAJn+9RvUNTpx6RcwphFuAiAyI4PPJ0jS+0QV4FmaVtBEtSPstVaI7uf0LbS2t2S/Rg=="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.2_1622418177843_0.013817246473875278"},"_hasShrinkwrap":false},"1.0.3":{"name":"vue-validus","version":"1.0.3","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@babel/core":"^7.13.1","@babel/preset-env":"^7.13.5","@rollup/plugin-babel":"^5.3.0","@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","babel-plugin-array-includes":"^2.0.3","babel-plugin-transform-es2017-object-entries":"0.0.5","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"readme":"# vue-validus\r\n\r\n[![License][license-image]][license-url]\r\n[![NPM][npm-image]][npm-url]\r\n[![codecov][codecov-image]][codecov-url]\r\n[![circleci][circleci-image]][circleci-url]\r\n![minified][minified-image]\r\n![minzipped][minzipped-image]\r\n![tree-shaking][tree-shaking-image]\r\n\r\n> Extensible, lightweight validation library for Vue 3\r\n\r\n## Get Started\r\n\r\nView the [documentation](https://vue-validus.devtavern.com) for a complete guide, including examples and API reference.\r\n\r\nFor support with Vue 2 Composition API, use [vue2-validus](https://github.com/dev-tavern/vue2-validus).\r\n\r\n### Install\r\n```bash\r\n# install with npm\r\nnpm install vue-validus --save\r\n# install with yarn\r\nyarn add vue-validus --save\r\n```\r\n\r\n### Usage\r\n\r\nBelow is a simple example of one approach for leveraging vue-validus for validation, for more detailed examples and additional approaches, please visit the [documentation](https://vue-validus.devtavern.com).  This example will use Vue refs as the source for the field values, though you could also use a reactive object or just the fields themselves without separate value properties.\r\n\r\n#### Composition API\r\n\r\n```typescript\r\nimport { defineComponent, ref } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  setup() {\r\n    // example: field group containing fields with values sourced from refs\r\n    const username = ref('')\r\n    const password = ref('')\r\n    const form = fieldGroup({\r\n      username: field([required()], username),\r\n      password: field([required()], password)\r\n    })\r\n    // example: validate entire group at once and check result\r\n    const handleSubmit = () => {\r\n      form.validate()\r\n      if (!form.invalid) {\r\n        // submit...\r\n      }\r\n    }\r\n    return { username, password, form, handleSubmit }\r\n  }\r\n})\r\n```\r\nAt this point, since our field values are backed by refs, you could set an input's v-model attribute to either `username` or `form.username.value`, both will maintain the same value between them.\r\n```html\r\n<input type=\"text\"\r\n  v-model=\"username\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n#### Options API\r\n\r\nIt is recommended to define your validation field & field groups within the component's `setup` function as demonstrated in the above Composition API example.  However, if needed, you can define these within the Options API's `data` structure.\r\n\r\n```typescript\r\nimport { defineComponent } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  data() {\r\n    return {\r\n      form: fieldGroup({\r\n        username: field([required()], '<optional initial value>'),\r\n        password: field([required()])\r\n      })\r\n    }\r\n  }\r\n})\r\n```\r\n```html\r\n<input type=\"text\"\r\n  v-model=\"form.username.value\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n## Changelog\r\n\r\nChanges for each release are documented in the [CHANGELOG](CHANGELOG.md) file.\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n\r\n[npm-image]: https://img.shields.io/npm/v/vue-validus.svg\r\n[npm-url]: https://npmjs.org/package/vue-validus\r\n[license-image]: https://img.shields.io/badge/license-MIT-blue.svg\r\n[license-url]: LICENSE\r\n[codecov-image]: https://codecov.io/gh/dev-tavern/vue-validus/branch/main/graph/badge.svg?token=IFCU4CBZWR\r\n[codecov-url]: https://codecov.io/gh/dev-tavern/vue-validus\r\n[circleci-image]: https://circleci.com/gh/dev-tavern/vue-validus.svg?style=svg\r\n[circleci-url]: https://circleci.com/gh/dev-tavern/vue-validus\r\n[minified-image]: https://badgen.net/bundlephobia/min/vue-validus\r\n[minzipped-image]: https://badgen.net/bundlephobia/minzip/vue-validus\r\n[tree-shaking-image]: https://badgen.net/bundlephobia/tree-shaking/vue-validus","readmeFilename":"README.md","gitHead":"fdf342bef52591859a6746e97418099c28a58e42","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.3","_nodeVersion":"14.15.1","_npmVersion":"6.14.2","dist":{"integrity":"sha512-miUuhTomm1sp29xYaJxiQwPD/iNyQY8JznS980pQDma+KrndrFCR3L5p1xJrtvb5RGYkjz4mbXZcAjzz7xfxxw==","shasum":"5feae2f6b4dd9d4eb3482619633e3070d44e2a86","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.3.tgz","fileCount":11,"unpackedSize":43975,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGV0GCRA9TVsSAnZWagAAYpsP/2Q6GzJ+n1Peg3M2qEeP\nLm08Uez1qUrpOvuY8ranmDvH9tToF4MUDWmyPESgv2R2us+A9MWLWU8DdfXd\n5jfOiD+jN+uclRWEmBs6ZyM7TggxUa+v8Jc7tbLSCn1Ar2e1Xv6Hseuj8jVZ\nA2pQExjboeyDnQ39IUZxUwB+Kt9HFsqTArCkGbTWrZ6pC/FfFhKhfcHnHO2l\nGBmMysHiCqz3BqER7scVoGK2sYEKkVOq4IWwajEHixzciKrjnX4hjjwxGfsb\nXsW/WVBrXt4rEZJLl4uQDzu1PjxPgQOeMBFkeEPhZzkp/Wn+ZHbrTK6bUG4C\nS03B4T0ekAnfs6o1D/qi3Hn728OnvnhXednPl85sCDFFojNLwxGFka9LNYVn\n8cZ8/TBwdbPL3Ur8PpXCHLaKApLMp3Ig58HE/17lk5cg0RSRc+zEXIf+E6Gw\nR5nqaVHYH8VGAzKF5c7ANJY0h09WpdwNOjIpvSmPK70D0aBeyeQywmMMHHXa\nI9B1oyLU5xIWBKKqNU4zl0r1MV9c99/qYgBfuh3f8YJAKaTLZCgErd4Iq2vo\naf/Fk6qtoHgWW+lnM04CaQc7afWWnZeWP66EI/Vc1ul9quS6kvm8QKsOmH8V\nc2GHQqcJVqS1Yy3tbfSIRsLU+BS+hteeg8DC33zGRSy/TStd6boQQ9ZLd1ua\nVx77\r\n=bgss\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCqunmHRz2A6k6wYerEEG9N0E0JH4YoQfdwVQBlKIcdOwIgAjmH88ieDDzkGQ3QYdYkQ4uV16rR9Sxpf65Yuer1NXU="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.3_1629052166134_0.593635271620659"},"_hasShrinkwrap":false},"1.0.4":{"name":"vue-validus","version":"1.0.4","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@babel/core":"^7.13.1","@babel/preset-env":"^7.13.5","@rollup/plugin-babel":"^5.3.0","@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","babel-plugin-array-includes":"^2.0.3","babel-plugin-transform-es2017-object-entries":"0.0.5","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"gitHead":"aa12b636e3d412fb0e97fb2d0fe4600bf5918b50","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.4","_nodeVersion":"14.19.0","_npmVersion":"6.14.16","dist":{"integrity":"sha512-voQLYYiXPFtCrbbn/7K+dhFBvnSh87HYMVh8S+XUbJrLf/Lo2bcoGAoFbFPPuL9sx71CqYoqONvEL8yCurjkFA==","shasum":"cf5332dc2ad3a29f27c15c24ef48a6dfc27c3ed7","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.4.tgz","fileCount":11,"unpackedSize":44194,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiCyEkCRA9TVsSAnZWagAAFZgP/0XBhb3Z2lOIy/gkTmh6\n3GgBghvQaHDbRNcOBiuDBAVm9MVWkKSE0BfiJy7atjyYSYtgRd3PAhpSPigY\napx+RzUSKpoF/Nxfo/NY3rIqLyUClDYjGZJuWQqkS85M7Pv7UoxCF2eK6J9I\n8ijJ4caNWH6ouo8MXO/nXCJTINkNBSVgF+33VbmeG0WROc+87UF+W5iCXHYD\nFANRe8E7/kaMfOCNQqhUjCy70JYzVu0HqoTz82ziuO0JC1tgc4jyRuICgPJv\n9U61F8uuujKzXN9LtgMcxH2wqAwfcBjeItoyirKg0iyNoAwJ6KN+OAu2Cece\ndX4vWg2OYBxuRXcqf+opo1B1e5xAJkcaTBVZX0PGn/4VYQHgQC50MeH+KG5U\n+8rkI28b/OfwKb39aIWwjFE22BHrHs/yCbCpsDZUdow05MFdlIhjsZivz/Ij\nt0ylDQFtgPHfdA+Qr8+06kD84ILzHCmiV4nDWTlKh6VQR1mOGAET9zrvvRRV\nG3BBur8Nyu6znW2DxrVMLFDbbMFEJcdUALpWsKNZYrfyQJNImaBzU985Pcg2\ng0k6ERzQ+tMmz/+w8RjeWvJ+3ArpjQCI/bUTjDYFlQCmN1X0jPyEyfGLjFoD\nMGGCkgh4CXqrz6zeKfZ94jJOe2VBzIx8lXBAbPR3OXbaqovVspCh/zlAq0ee\nWO42\r\n=6WwC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8V5bAcHlZWqFIY4eo+K3+xloM2UQHQa7qIe55+X+9QgIgVWpwj9Pz1VsN74tDTeSLyzCysXp7F5FLUf4pAD74yLY="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.4_1644896548601_0.9804629229329782"},"_hasShrinkwrap":false},"1.0.5":{"name":"vue-validus","version":"1.0.5","description":"Extensible lightweight validation library for Vue 3","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"peerDependencies":{"vue":"^3.0.0"},"devDependencies":{"@babel/core":"^7.13.1","@babel/preset-env":"^7.13.5","@rollup/plugin-babel":"^5.3.0","@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","babel-plugin-array-includes":"^2.0.3","babel-plugin-transform-es2017-object-entries":"0.0.5","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.9.1","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"gitHead":"0fbc8d3c8f055f2fe3a1436190817e2cbb08a611","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.5","_nodeVersion":"14.19.0","_npmVersion":"6.14.16","dist":{"integrity":"sha512-fEX+j6XDzCgrTCF4pVi+n4v0YTYcOvuxX+rSBcN3PEdpJwDmh22LV28YjZ1wradskz88dcMlQ4WYFTieNuBkmw==","shasum":"2655351a6e3b01e54d19381fed66b16ca1d8383f","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.5.tgz","fileCount":11,"unpackedSize":44348,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiKBeOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmprYw/+PZmEveHqcAzdP873jH6pJgCwLWUsh0YMjd7nczdrugsg3/YY\r\nFlYEkQtahyncCEUgcB2t26866XClyKoCt7Uu2kOuen1Ym7RH9BullQfXfqLq\r\nk5WFn9KPLquf28hX7aEHsQXF5lWgon890hd+hrKsA89b+vgloJWTl7I/GndJ\r\nIYntkFAHmYKW3hhMkOWNdZEZDTBD/ezABEtraYNFk/QMt6dCv+FnBpwcDTn/\r\nD9US43fyhV2UW36aNT6MFPfLRsZFs7uO21/JucfnipHwatvPaJhdxTOWaSM/\r\nCvxWlcCEEryJwQPRpw3ELV5NMi65i0f2ATyJaJr6JOjgSph37B+WXw3/8X4l\r\nWmqC24sy+SmaE86sglz8UihTMoMtEiiqBfvSZlqoCHzmbunOTRuAx3TzOw2x\r\nTx7+bCWi3/BqvmInHtPtt1XYAKqaxlOYVXivUrODpymHK5mHKKb2GAMznHUm\r\nz09FuVJyHPBsuts0ugPVoMnBeue/cnNsmXZCNzR8fW/ozVfz+kLVqEk32wQH\r\nDgwpZsNwjrqVYIQiC1REyH5/WWIPsmiRg9x4N2fOFOb1c6RNNqX/a6UH9/W8\r\n978tJYUtGMy3m9Br/1S3AwSoxLoVRQYPNQ8ut8pYzJQmDRx1bbYZ/Q5CNSmD\r\nQKRGTFPnUPwGadvveZfCg1ygcVzSNSqkp44=\r\n=koP7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHvz6IB6PEjCZD51H7a83aQ6b3HQnTG23a2j8QPRKZgGAiEAq6s2nzwSUi3foa8vpgUhV6d2tP9a3Ql2ileA8LxvqxI="}]},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.5_1646794637949_0.5601699827008337"},"_hasShrinkwrap":false},"1.0.6":{"name":"vue-validus","version":"1.0.6","description":"Extensible lightweight validation library for Vue","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:serve":"vitepress serve docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"dependencies":{"vue-demi":"^0.13.11"},"peerDependencies":{"@vue/composition-api":"^1.0.0-rc.1","vue":"^2.0.0 || >=3.0.0"},"peerDependenciesMeta":{"@vue/composition-api":{"optional":true}},"devDependencies":{"@babel/core":"^7.13.1","@babel/preset-env":"^7.13.5","@rollup/plugin-babel":"^5.3.0","@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","babel-plugin-array-includes":"^2.0.3","babel-plugin-transform-es2017-object-entries":"0.0.5","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^0.22.4","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"gitHead":"2bf56b2a55f9a79c705dac8cc85433be459b31bf","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.6","_nodeVersion":"14.19.0","_npmVersion":"6.14.16","dist":{"integrity":"sha512-itCMrpJggGdsk6CscY062gvBMYEsHkCDJhl3n8+pxTZAsfVbHl2uiiLBJ0lPaSqd59afB8rkettOtu/ncqSSLQ==","shasum":"5f7743517d8fc2615dbba6c2b8651c96e6493018","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.6.tgz","fileCount":11,"unpackedSize":45851,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHq+n/XogzJR3dtQjYlOpBbbBpe8a4N2EwpKDHRgCMx/AiEAkTnjnL9HI+qBfrK6Ob3A0d2JmQJrAfdQ394VDqHeMMk="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjxIVZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqGbw/+JoFNYmuRQNSVAT0xzdas8tFE44sl7Hdst3PObjYhjTJDhXUX\r\nHOnX1u8axeH0LyNlvw1xm8iwPisirdKeTn8hoX484hTdM8p9MxdOGl6zhuzY\r\nmGuRoSeiuJi2X4ueOdJM0zwt/s1xAs/qW580BYU/qe64khT6KvoaRZL7sw6I\r\n3KsyuKKomy5DUgENd73cNtbXwCofyG12SbhKGLQPhWYh4FEc3EWh5lg6waNE\r\nR80TXfnNC2irW+mI7GVulIZ0YcKBPetDMsaf1uJ0Qr+n3d1iugf35CYOw5tg\r\nFvKaZXxp7s2AZ0AojhqJycLoy0bdWMWHb4paNnJNIVLq73GiW3TFPhkvdUXk\r\nNpvBj4S+4PVggNJVlLtk26HGPwzRg5GVDjvwuz7ITnY1idFCvkTZV1A6saOR\r\nNY7HiPFZZKbXOwkv2xSQhTTnRtIelybtY41etUxKqDM16RjzmUvKCHpzpTiF\r\nlBjz6eEZPFBiIfQ9+DtwCzr7Er/ZDrNGeGyOZWn3TwChtMvycIKYo5J6z5ES\r\n1jaHty9Rv9QrSAXubPyXFBg8Ckfd5qKoTLlisCFkaLNeE8YHZDh+RD3mG8Mx\r\nZHiVnmV7N7ShTSytkE+vyrBAKz7vuPRnOJeEfguDaIIllHaZ9S4BXcbfhzNf\r\nayrADjh5CLzMgKKvp4Wk5O9b4J0YbTahRBg=\r\n=IlrS\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.6_1673823577009_0.40601977201178463"},"_hasShrinkwrap":false},"1.0.7":{"name":"vue-validus","version":"1.0.7","description":"Extensible lightweight validation library for Vue","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:preview":"vitepress preview docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"dependencies":{"vue-demi":"^0.13.11"},"peerDependencies":{"@vue/composition-api":"^1.0.0-rc.1","vue":"^2.0.0 || >=3.0.0"},"peerDependenciesMeta":{"@vue/composition-api":{"optional":true}},"devDependencies":{"@babel/core":"^7.13.1","@babel/preset-env":"^7.13.5","@rollup/plugin-babel":"^5.3.0","@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","babel-plugin-array-includes":"^2.0.3","babel-plugin-transform-es2017-object-entries":"0.0.5","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^1.0.0-alpha.52","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"readme":"# vue-validus\r\n\r\n[![License][license-image]][license-url]\r\n[![NPM][npm-image]][npm-url]\r\n[![codecov][codecov-image]][codecov-url]\r\n[![circleci][circleci-image]][circleci-url]\r\n![minified][minified-image]\r\n![minzipped][minzipped-image]\r\n![tree-shaking][tree-shaking-image]\r\n\r\n> Extensible, lightweight validation library for Vue\r\n\r\n## Get Started\r\n\r\nView the [documentation](https://vue-validus.devtavern.com) for a complete guide, including examples and API reference.\r\n\r\nStarting from version 1.0.6, this library supports both Vue 3 and Vue 2 + Composition API. Earlier versions support only Vue 3.\r\n\r\n### Install\r\n\r\n```bash\r\n# install with npm\r\nnpm install vue-validus --save\r\n# install with yarn\r\nyarn add vue-validus --save\r\n```\r\n\r\n### Usage\r\n\r\nBelow is a simple example of one approach for leveraging vue-validus for validation, for more detailed examples and additional approaches, please visit the [documentation](https://vue-validus.devtavern.com). This example will use Vue refs as the source for the field values, though you could also use a reactive object or just the fields themselves without separate value properties.\r\n\r\n#### Composition API\r\n\r\n```typescript\r\nimport { defineComponent, ref } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  setup() {\r\n    // example: field group containing fields with values sourced from refs\r\n    const username = ref('')\r\n    const password = ref('')\r\n    const form = fieldGroup({\r\n      username: field([required()], username),\r\n      password: field([required()], password)\r\n    })\r\n    // example: validate entire group at once and check result\r\n    const handleSubmit = () => {\r\n      form.validate()\r\n      if (!form.invalid) {\r\n        // submit...\r\n      }\r\n    }\r\n    return { username, password, form, handleSubmit }\r\n  }\r\n})\r\n```\r\n\r\nAt this point, since our field values are backed by refs, you could set an input's v-model attribute to either `username` or `form.username.value`, both will maintain the same value between them.\r\n\r\n```html\r\n<input type=\"text\" v-model=\"username\" @blur=\"form.username.validate()\" />\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n#### Options API\r\n\r\nIt is recommended to define your validation field & field groups within the component's `setup` function as demonstrated in the above Composition API example. However, if needed, you can define these within the Options API's `data` structure.\r\n\r\n```typescript\r\nimport { defineComponent } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  data() {\r\n    return {\r\n      form: fieldGroup({\r\n        username: field([required()], '<optional initial value>'),\r\n        password: field([required()])\r\n      })\r\n    }\r\n  }\r\n})\r\n```\r\n\r\n```html\r\n<input\r\n  type=\"text\"\r\n  v-model=\"form.username.value\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n## Changelog\r\n\r\nChanges for each release are documented in the [CHANGELOG](CHANGELOG.md) file.\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n\r\n[npm-image]: https://img.shields.io/npm/v/vue-validus.svg\r\n[npm-url]: https://npmjs.org/package/vue-validus\r\n[license-image]: https://img.shields.io/badge/license-MIT-blue.svg\r\n[license-url]: LICENSE\r\n[codecov-image]: https://codecov.io/gh/dev-tavern/vue-validus/branch/main/graph/badge.svg?token=IFCU4CBZWR\r\n[codecov-url]: https://codecov.io/gh/dev-tavern/vue-validus\r\n[circleci-image]: https://circleci.com/gh/dev-tavern/vue-validus.svg?style=svg\r\n[circleci-url]: https://circleci.com/gh/dev-tavern/vue-validus\r\n[minified-image]: https://badgen.net/bundlephobia/min/vue-validus\r\n[minzipped-image]: https://badgen.net/bundlephobia/minzip/vue-validus\r\n[tree-shaking-image]: https://badgen.net/bundlephobia/tree-shaking/vue-validus\r\n","readmeFilename":"README.md","gitHead":"292b3976396cc24857b981a015d9aacf06db11dd","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.7","_nodeVersion":"18.12.1","_npmVersion":"9.2.0","dist":{"integrity":"sha512-MDsg0Sy4CTkT72Rv5SI4mFHK7H1brIjxRKlj2znvQAiVf/FYohEmiMMUDj5GKsMcLxt1JTVubts0L191LPb6MA==","shasum":"82c95d6f094f309af373f57725e5108e48f07790","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.7.tgz","fileCount":10,"unpackedSize":43692,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHIKR9b/aF9ocuZwHibyW1YIqZ+1+cD34CQwHmp2DGB3AiEAoOhyI+5wYZEhZ0XGeL7c+e1TKIdcUAHDk9PKxlcgcZc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkDqGQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoDuRAAjzmpraaqlQ88V2A7xywodKOO6HOQo1z2qZfRLKildYKZ67wB\r\n6XSLtwEjgx7CuKx9nPnngvLjC45GPxAfx9QDUfstATQC5/xRJKzO5ECB0AnT\r\nMBqiRmtdcGFPETS8WymsXyNcU1BYjRpJ5O7cwyG+QR4kyO4mOTmUjiGift5e\r\n6Iu/8wB6cE1WGkuYHrc85DL4XkfjHS+Tfd/nIaYRCAq2N7OmfqdYLBzt9mI3\r\nn54241xhDyNFRPtwuXglch7IkPvYOgKWfVdFLdq+ndKSMP6lxeAVtyxl7mTI\r\nndvkRhypNbg3QlUb3xhneOodTdPJxJ/UIRqU+a8U855nC3qRptyzvYxDesni\r\nARz+gjNO8lmGkywYC+uypFZWCkthiO4wA4YPZzUp1Ut4TTn3BVBBcCj3dJxN\r\nrFNDKV7v/FOt4PJbn8zKMF4b8eY+HIWNvwv1IVBuC2f6a3dRpLhXW/Sc0ORF\r\nJqJZJVJmjWFyFXDHhcWcHEz+V/ZBUzeMjs/mIDxUgqjrcoWLmhXotVBor0Hx\r\nLFkp0zZhzcyDaq2wu8rU+ba0Q5tDJv8mqGgrnyUAzav42du/A852Wh3Fw+xn\r\nIYdoHbiOkRtoOGQvlzSmLLvB269WzzUyvDU36bCv5Iiv2GJNP0vvDA5iquEM\r\nLZcYUOu8Socsibv7HA0KW/+Di9A+mR+THLU=\r\n=vYwk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.7_1678680464017_0.8883883151033298"},"_hasShrinkwrap":false},"1.0.8":{"name":"vue-validus","version":"1.0.8","description":"Extensible lightweight validation library for Vue","author":{"name":"Josh Gamble"},"license":"MIT","main":"dist/vue-validus.cjs.js","module":"dist/vue-validus.esm.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"homepage":"https://vue-validus.devtavern.com","scripts":{"build":"rollup -c","build:types":"tsc --emitDeclarationOnly true --removeComments false","postbuild":"npm run build:types","test":"jest --coverage","lint":"eslint .","lint:fix":"eslint . --fix","prepare":"npm run build","prepublishOnly":"npm run test && npm run lint","preversion":"npm run lint && npm run test","version":"npm run lint:fix && git add -A src","postversion":"git push && git push --tags","docs:dev":"vitepress dev docs","docs:build":"vitepress build docs","docs:preview":"vitepress preview docs","ci:test":"jest --coverage --ci --maxWorkers=2"},"dependencies":{"vue-demi":"^0.13.11"},"peerDependencies":{"@vue/composition-api":"^1.0.0-rc.1","vue":"^2.0.0 || >=3.0.0"},"peerDependenciesMeta":{"@vue/composition-api":{"optional":true}},"devDependencies":{"@babel/core":"^7.13.1","@babel/preset-env":"^7.13.5","@rollup/plugin-babel":"^5.3.0","@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"^4.9.1","@typescript-eslint/parser":"^4.9.1","@vue/test-utils":"^2.0.0-beta.13","babel-plugin-array-includes":"^2.0.3","babel-plugin-transform-es2017-object-entries":"0.0.5","eslint":"^7.15.0","jest":"^26.6.3","rollup":"^2.35.1","rollup-plugin-commonjs":"^10.1.0","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-terser":"^7.0.2","rollup-plugin-typescript2":"^0.29.0","ts-jest":"^26.4.4","typescript":"^4.1.2","vitepress":"^1.0.0-alpha.52","vue":"^3.0.0"},"keywords":["validus","vue","vue 3","validation","validate","form","fields"],"readme":"# vue-validus\r\n\r\n[![License][license-image]][license-url]\r\n[![NPM][npm-image]][npm-url]\r\n[![codecov][codecov-image]][codecov-url]\r\n[![circleci][circleci-image]][circleci-url]\r\n![minified][minified-image]\r\n![minzipped][minzipped-image]\r\n![tree-shaking][tree-shaking-image]\r\n\r\n> Extensible, lightweight validation library for Vue\r\n\r\n## Get Started\r\n\r\nView the [documentation](https://vue-validus.devtavern.com) for a complete guide, including examples and API reference.\r\n\r\nStarting from version 1.0.6, this library supports both Vue 3 and Vue 2 + Composition API. Earlier versions support only Vue 3.\r\n\r\n### Install\r\n\r\n```bash\r\n# install with npm\r\nnpm install vue-validus --save\r\n# install with yarn\r\nyarn add vue-validus --save\r\n```\r\n\r\n### Usage\r\n\r\nBelow is a simple example of one approach for leveraging vue-validus for validation, for more detailed examples and additional approaches, please visit the [documentation](https://vue-validus.devtavern.com). This example will use Vue refs as the source for the field values, though you could also use a reactive object or just the fields themselves without separate value properties.\r\n\r\n#### Composition API\r\n\r\n```typescript\r\nimport { defineComponent, ref } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  setup() {\r\n    // example: field group containing fields with values sourced from refs\r\n    const username = ref('')\r\n    const password = ref('')\r\n    const form = fieldGroup({\r\n      username: field([required()], username),\r\n      password: field([required()], password)\r\n    })\r\n    // example: validate entire group at once and check result\r\n    const handleSubmit = () => {\r\n      form.validate()\r\n      if (!form.invalid) {\r\n        // submit...\r\n      }\r\n    }\r\n    return { username, password, form, handleSubmit }\r\n  }\r\n})\r\n```\r\n\r\nAt this point, since our field values are backed by refs, you could set an input's v-model attribute to either `username` or `form.username.value`, both will maintain the same value between them.\r\n\r\n```html\r\n<input type=\"text\" v-model=\"username\" @blur=\"form.username.validate()\" />\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n#### Options API\r\n\r\nIt is recommended to define your validation field & field groups within the component's `setup` function as demonstrated in the above Composition API example. However, if needed, you can define these within the Options API's `data` structure.\r\n\r\n```typescript\r\nimport { defineComponent } from 'vue'\r\nimport { field, fieldGroup, required } from 'vue-validus'\r\nexport default defineComponent({\r\n  data() {\r\n    return {\r\n      form: fieldGroup({\r\n        username: field([required()], '<optional initial value>'),\r\n        password: field([required()])\r\n      })\r\n    }\r\n  }\r\n})\r\n```\r\n\r\n```html\r\n<input\r\n  type=\"text\"\r\n  v-model=\"form.username.value\"\r\n  @blur=\"form.username.validate()\"\r\n/>\r\n<!-- check if field is invalid and display error messages -->\r\n<span v-if=\"form.username.invalid\">{{ form.username.errorMessages }}</span>\r\n<!-- or check if field has specific error -->\r\n<span v-if=\"form.username.hasError('required')\">Username is required</span>\r\n\r\n<!-- password input omitted for brevity, works the same as username input -->\r\n```\r\n\r\n## Changelog\r\n\r\nChanges for each release are documented in the [CHANGELOG](CHANGELOG.md) file.\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n\r\n[npm-image]: https://img.shields.io/npm/v/vue-validus.svg\r\n[npm-url]: https://npmjs.org/package/vue-validus\r\n[license-image]: https://img.shields.io/badge/license-MIT-blue.svg\r\n[license-url]: LICENSE\r\n[codecov-image]: https://codecov.io/gh/dev-tavern/vue-validus/branch/main/graph/badge.svg?token=IFCU4CBZWR\r\n[codecov-url]: https://codecov.io/gh/dev-tavern/vue-validus\r\n[circleci-image]: https://circleci.com/gh/dev-tavern/vue-validus.svg?style=svg\r\n[circleci-url]: https://circleci.com/gh/dev-tavern/vue-validus\r\n[minified-image]: https://badgen.net/bundlephobia/min/vue-validus\r\n[minzipped-image]: https://badgen.net/bundlephobia/minzip/vue-validus\r\n[tree-shaking-image]: https://badgen.net/bundlephobia/tree-shaking/vue-validus\r\n","readmeFilename":"README.md","gitHead":"cb3bdc82c0fa6c5310c38896ff3ad96125e8a4be","bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"_id":"vue-validus@1.0.8","_nodeVersion":"18.12.1","_npmVersion":"9.2.0","dist":{"integrity":"sha512-mHnS2+HG0Q8axe21A9ZO29yTlq//yjbvj4Hvr8hPBTFx75H5SorA6MYzGzAYq+BnBDHm1vZltvf1H0/mGY7w1g==","shasum":"84173aed8f366c3a36d7fab88b6fdda2e0bb3581","tarball":"https://registry.npmjs.org/vue-validus/-/vue-validus-1.0.8.tgz","fileCount":10,"unpackedSize":43664,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIClLlf6xZmTjednHaTi/1pcmQPh+MFE/VMg41HsFbcYNAiBrfamvdfCaItmxfXsbOra2OxpfjKmEqCdt8wW5ptJ9wg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkDrqTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpBahAAi3eF+s/AayW03j/BHa8gndnICqyNhaxUliywcvWRTL/mr/ib\r\n8nYE2WJjNgcSZ64N/TiDL9+hOjHf8R5Y/w77Ima0OZfYOJR+AHxKWDUUuurj\r\nccDCkCINBwCi/imEUO8bsvVqlpquxc6oEtb9QGzLYfxObzgtduJ1W1iEDitR\r\nFioH39uxtj811MVDI+7u4cHbckQFYihlxiOjcPz4hY9nrwrPoEhkEDgu9uxm\r\n7n/KwZgAMSiRMDSpoVu3ssx1aAqPTfF+k/pSXTQjXiO7evhuJI3i78jx+pSu\r\nzr983Tk0nYZmufAOtw1GVPTa4Y7hzAzABPxLNcNpWZjdPIPckajfqbWPoQvW\r\nADUYfFDVKbHJAANya6nMtL+zu9+X0MloJvcnXhzyIXIir1gHNNEiCaUVVDKl\r\n2akOUI3qwNHNdc9UtDOXZfVKNAXY9z2aJnNlHPD/iY1NWXHbKZVm7nv8rYt3\r\n3pLVy9oXSsJpqfT2+1ROQBVAh6s7HYew93LvNgIKh2zbcsNH0EiJeA3Kh5kf\r\nq5GS5P3WseCwvmDOpNtZjdm1iQE+UJ+c4wZcnwrPVk2bZngF9I5dUtg8B7cq\r\nBIbwiMkR8ZTYfc1hulg7F2BIbMjkAZjPxKbblYetuVfoi0RHZX6feJiv4HAB\r\nW0RvKZzHytZhwABmfvD+LXeYzxSbn8Iil7k=\r\n=ipN9\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"joshgamble","email":"jogamble07@gmail.com"},"directories":{},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-validus_1.0.8_1678686867509_0.6611016573840012"},"_hasShrinkwrap":false}},"time":{"created":"2021-01-24T02:39:04.845Z","1.0.0-beta.1":"2021-01-24T02:39:04.995Z","modified":"2023-03-18T15:08:46.424Z","1.0.0-beta.2":"2021-01-24T03:07:06.238Z","1.0.0-beta.3":"2021-01-24T03:44:17.277Z","1.0.0-beta.4":"2021-01-24T03:53:14.072Z","1.0.0-beta.5":"2021-01-28T04:14:09.625Z","1.0.0-beta.6":"2021-01-31T05:36:48.012Z","1.0.0-beta.7":"2021-02-21T03:17:17.293Z","1.0.0":"2021-02-21T03:52:58.660Z","1.0.1-beta.1":"2021-02-26T20:52:28.112Z","1.0.1-beta.2":"2021-02-26T21:35:54.304Z","1.0.1":"2021-02-26T22:13:43.493Z","1.0.2":"2021-05-30T23:42:58.001Z","1.0.3":"2021-08-15T18:29:26.306Z","1.0.4":"2022-02-15T03:42:28.777Z","1.0.5":"2022-03-09T02:57:18.158Z","1.0.6":"2023-01-15T22:59:37.172Z","1.0.7":"2023-03-13T04:07:44.223Z","1.0.8":"2023-03-13T05:54:27.738Z"},"maintainers":[{"name":"joshgamble","email":"jogamble07@gmail.com"}],"description":"Extensible lightweight validation library for Vue","homepage":"https://vue-validus.devtavern.com","keywords":["validus","vue","vue 3","validation","validate","form","fields"],"repository":{"type":"git","url":"git+https://github.com/dev-tavern/vue-validus.git"},"author":{"name":"Josh Gamble"},"bugs":{"url":"https://github.com/dev-tavern/vue-validus/issues"},"license":"MIT","readme":"","readmeFilename":""}