{"_id":"@alaa_moustafa/formvalidation","_rev":"2-a99311add20440e0be0b7e767d62592b","name":"@alaa_moustafa/formvalidation","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@alaa_moustafa/formvalidation","version":"1.0.0","author":"","license":"ISC","_id":"@alaa_moustafa/formvalidation@1.0.0","maintainers":[{"name":"alaa_moustafa","email":"alaa.moustafa18891@gmail.com"}],"dist":{"shasum":"8b0280504d57deceb181ba0b2607c50d86da38bb","tarball":"https://registry.npmjs.org/@alaa_moustafa/formvalidation/-/formvalidation-1.0.0.tgz","fileCount":6,"integrity":"sha512-wK4vL5UBtxSbRxgZWQfVBSXjbS4mbsHD9AqgRTQVy9JADQzOaDbJsfkZryISvx1+hHTeYCJD/CqGPJveYJVfJA==","signatures":[{"sig":"MEQCH03AAqkFm2SSqZcsgVJJjo7AzM5j/Tugn5rhk46Aj34CIQDk9NdheugWXQ+4Up1IzMKqQU5D7VvWBZ24ewhoapWcJQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3632},"main":"formValidation.js","gitHead":"72c510bbe8b1dc9a1a5fb3e0678f5f672acb1d37","_npmUser":{"name":"alaa_moustafa","email":"alaa.moustafa18891@gmail.com"},"_npmVersion":"10.8.2","description":"this is simple form validation package -- NOT FOR PRODUCTION USE -- ## Installation","directories":{},"_nodeVersion":"20.20.2","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/formvalidation_1.0.0_1777415526970_0.1345514144897495","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@alaa_moustafa/formvalidation","version":"1.0.1","description":"this is simple form validation package -- NOT FOR PRODUCTION USE -- ## Installation","main":"formValidation.js","author":"","license":"ISC","_id":"@alaa_moustafa/formvalidation@1.0.1","gitHead":"f8aebc5dd79cec5f52a5f8edb414efeb185fe8bd","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-9/po/CMAgauRCFLkxLrB69gasxmGFiE8CrcizbfEItb6tmlHE0PvXkysgZlC8HzOrp2xJJiPE0wzyiTvkofTtg==","shasum":"2a7823cde5da890596d0d72be2b681228af8367e","tarball":"https://registry.npmjs.org/@alaa_moustafa/formvalidation/-/formvalidation-1.0.1.tgz","fileCount":6,"unpackedSize":3625,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICq75lFpx9AucA/DU3gIAS4+w6ZinES+paxi5ON7VIDQAiEA23emD+znkeMxaY+boXzzwcrSPUx+tawz9FtRcnjY2wo="}]},"_npmUser":{"name":"alaa_moustafa","email":"alaa.moustafa18891@gmail.com"},"directories":{},"maintainers":[{"name":"alaa_moustafa","email":"alaa.moustafa18891@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/formvalidation_1.0.1_1777420234161_0.5111097606339181"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-28T22:32:06.838Z","modified":"2026-04-28T23:50:34.434Z","1.0.0":"2026-04-28T22:32:07.161Z","1.0.1":"2026-04-28T23:50:34.321Z"},"license":"ISC","description":"this is simple form validation package -- NOT FOR PRODUCTION USE -- ## Installation","maintainers":[{"name":"alaa_moustafa","email":"alaa.moustafa18891@gmail.com"}],"readme":"# FormValidation package\n\nthis is simple form validation package -- NOT FOR PRODUCTION USE --\n## Installation\n\nusing npm\n\n```bash\nnpm i @alaa_moustafa/formvalidation\n```\n\n## Usage\n\nindex.html\n\n```html\n    <form>\n      <label>Username</label>\n      <input type=\"text\" name=\"username\" />\n      <br />\n      <label>Password</label>\n      <input type=\"text\" name=\"password\" />\n      <br />\n      <button type=\"submit\" id=\"submitForm\">Submit</button>\n    </form>\n```\n\napp.js\n\n```javascript\nimport { myFormValidation } from \"./formValidation\";\n\ndocument.querySelector(\"#submitForm\").addEventListener(\"click\", (e) => {\n  e.preventDefault();\n  const myFrom = FormValidation([\n    {\n      name: \"username\",\n      rules: [\n        { name: \"required\", value: true, errMsg: \"this input is required\" },\n        { name: \"maxLength\", value: 10, errMsg: \"maxlength error\" }\n      ]\n    },\n    {\n      name: \"password\",\n      rules: [\n        { name: \"required\", value: true, errMsg: \"this input is required\" },\n        { name: \"minLength\", value: 5, errMsg: \"minlength error\" }\n      ]\n    }\n  ]);\n});\n\n```\n\n## PARAMETERS\n\n```javascript\n\nFormValidation([\n  {\n      name: \"Input name that assigned to name property eg: username\",\n      rules: [\n        { name: \"required\", value: true, errMsg: \"this input is required\" },\n        { name: \"maxLength\", value: 10, errMsg: \"maxlength error\" },\n        { name: \"minLength\", value: 3, errMsg: \"minlength error\" },\n        { name: \"pattern\", value: /\\$.js/, errMsg: \"Pattern error\" },\n\n      ] // array of validation rules\n    },\n]);\n\n// validation rule object \n{name: 'required | maxLength | minLength | pattern', value: \"\", errMsg: 'provided error msg'}\n```","readmeFilename":"README.md"}