{"id":20678602,"url":"https://github.com/v-core9/v_rifier","last_synced_at":"2025-03-10T19:26:17.710Z","repository":{"id":42574126,"uuid":"428241060","full_name":"V-core9/v_rifier","owner":"V-core9","description":"Flexible Data Validation Module with Built in default Types.","archived":false,"fork":false,"pushed_at":"2024-01-27T19:42:09.000Z","size":1050,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-17T23:16:51.698Z","etag":null,"topics":["array","function","integer","name","nodejs","null","object","string","undefined","validation","verify"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/v_rifier","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/V-core9.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-11-15T11:45:03.000Z","updated_at":"2022-05-03T16:40:33.000Z","dependencies_parsed_at":"2025-01-17T15:15:28.842Z","dependency_job_id":"8ecfb73e-4510-4cfc-8fa3-e8f5905e22bb","html_url":"https://github.com/V-core9/v_rifier","commit_stats":{"total_commits":58,"total_committers":2,"mean_commits":29.0,"dds":"0.017241379310344862","last_synced_commit":"5519e96735adc3ff476bb6090d82e204aa718c0c"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/V-core9%2Fv_rifier","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/V-core9%2Fv_rifier/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/V-core9%2Fv_rifier/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/V-core9%2Fv_rifier/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/V-core9","download_url":"https://codeload.github.com/V-core9/v_rifier/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242911227,"owners_count":20205455,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["array","function","integer","name","nodejs","null","object","string","undefined","validation","verify"],"created_at":"2024-11-16T21:21:08.769Z","updated_at":"2025-03-10T19:26:17.675Z","avatar_url":"https://github.com/V-core9.png","language":"JavaScript","readme":"# v_rifier\n\nData V[a]rifier =\u003e v_rifier 😁\n\n## 📚 How to use\n\n    const v_rifier = require('v_rifier');\n    let myVerifier = v_rifier();\n\n### or use import\n\n    import v_rifier from 'v_rifier';\n    let myVerifier = v_rifier();\n\n## Built-in functions\n\n\u003e NOTE: Don't forget to add **await** before any of the following verification methods are called.\n\n1. **array**  \nArray Checker\n\n        myVerifier.isArray([1,2,3]) //\u003e true\n\n2. **bool**  \nBoolean Checker\n\n        myVerifier.isBool(true) //\u003e true\n        myVerifier.isBool(false) //\u003e true\n\n        myVerifier('bool', true) //\u003e true\n        myVerifier('bool', false) //\u003e true\n\n        myVerifier.isBool(112) //\u003e false\n        myVerifier('bool', 0) //\u003e false\n        myVerifier.isBool(\"true\") //\u003e false\n        myVerifier('bool', \"true\") //\u003e false\n\n3. **color**  \nColor Checker that will verify if provided string is valid color in RGB, RGBA and hex format.\n\n        // RGB\n        myVerifier.isColor(\"25,25,25\") //\u003e true\n        // RGBA\n        myVerifier.isColor(\"25,25,25,.58\") //\u003e true\n        \n        // Hex\n        myVerifier.isColor(\"#CBA\") //\u003e true\n        myVerifier.isColor(\"#CBA5\") //\u003e true\n        myVerifier.isColor(\"#FF00CC\") //\u003e true\n        myVerifier.isColor(\"#FF00CC50\") //\u003e true\n        \n        // Invalid Colors\n        myVerifier.isColor(\"0,0,0,-.58\") //\u003e true\n        myVerifier.isColor(\"FF00CC50\") //\u003e false\n\n4. **email**  \nEmail Checker\n\n        myVerifier.isEmail('slavko.vuletic92@gmail.com') //\u003e true\n        myVerifier('email','slavko.vuletic92@gmail.com') //\u003e true\n\n5. **function**  \nFunction Checker\n\n        const sampleFunc = async () =\u003e {\n          return console.log('yea');\n        };\n\n        myVerifier.isFunction(sampleFunc) //\u003e true\n        myVerifier('function', sampleFunc ) //\u003e true\n\n6. **hexadecimal**  \nHexadecimal Checker - returns true if provided string is a hexadecimal number.\n\n        myVerifier.isHexadecimal( 'FAc0516' ) //\u003e true\n        myVerifier('hexadecimal', 1561313 ) //\u003e false\n\n7. **integer**  \nInteger Checker\n\n        myVerifier.isInteger( 123 ) //\u003e true\n        myVerifier('integer', 984351 ) //\u003e true\n\n8. **name**  \nName Checker\n\n        myVerifier.isName( \"Slavko Vuletic\" ) //\u003e true\n        myVerifier('name', 123 ) //\u003e false\n\n9. **npmVersion**  \nnpmVersion Checker\n\n        myVerifier.isNull( \"1.2.1\" ) //\u003e true\n        myVerifier('null', \"55.798.15\" ) //\u003e true\n\n        myVerifier.isNull( 123 ) //\u003e false\n        myVerifier('null', \"55.-798.15\" ) //\u003e false\n        myVerifier('null', \"55.-798.15-\" ) //\u003e false\n\n10. **null**  \nNull Checker\n\n        myVerifier.isNull( null ) //\u003e true\n        myVerifier('null', null ) //\u003e true\n\n11. **number**  \nNumber Checker\n\n        myVerifier.isNumber( 123 ) //\u003e true\n        myVerifier('number', 123 ) //\u003e true\n\n12. **object**  \nobject Checker\n\n        myVerifier.isObject( { name: \"yea\" } ) //\u003e true\n        myVerifier('object', 123 ) //\u003e false\n\n13. **password**  \npassword Checker - Verify password with confirmation password and returns true if password is valid [length \u0026 characters].\n\n        myVerifier.isPassword( 'MyPassword123', 'MyPassword123' ) //\u003e true\n        myVerifier('password', 'MyPassword123', 'MyPassword123' ) //\u003e true\n\n        myVerifier.isPassword( 'MyPassword123', 123 ) //\u003e false\n        myVerifier('password', 'MyPassword123' ) //\u003e false\n\n14. **port**  \nPORT Checker\n\n        myVerifier.isPort( 8000 ) //\u003e true\n        myVerifier('port', 8000 ) //\u003e true\n\n        myVerifier.isPort( -8000 ) //\u003e false\n        myVerifier('port', 8000000 ) //\u003e false\n\n15. **string**  \nstring Checker\n\n        myVerifier.isString( \"random String\" ) //\u003e true\n        myVerifier('string', \"random String\" ) //\u003e true\n\n        myVerifier.isString( 123 ) //\u003e false\n        myVerifier('string', 123 ) //\u003e false\n\n16. **undefined**  \nundefined Checker\n\n        myVerifier.isUndefined(  ) //\u003e true\n        myVerifier('undefined', undefined ) //\u003e true\n\n        myVerifier.isUndefined( 11 ) //\u003e false\n        myVerifier('undefined', \"undefined\" ) //\u003e false\n\n17. **username**  \nusername Checker\n\n        myVerifier.isUsername( 123 ) //\u003e true\n        myVerifier('username', 123 ) //\u003e true\n\n## 🚀 Advanced Usage\n\n### 1. Register Custom Type\n\n        await myVerifier.register(\"myType\", (value) =\u003e  value \u003e 100 );\n\n    So now you can use myVerifier.**isMyType**(val) to check if value is greater than 100.\n\n        await myVerifier.isMyType(200) //\u003e true\n\n    Or you can use myVerifier(\"**myType**\", val) to check if value is greater than 100.\n\n        await myVerifier('myType', 200) //\u003e true\n\n### 2. Unregister Custom Type\n\n    await myVerifier.unregister(\"myType\");\n\n### 3. Disable Loading of the Built-in Verification Functions\n\n    let myEmptyVerifier = await v_rifier({ builtIns: false });\n\n### 4. Only Custom Types\n\nAfter loading module, you can create your custom validation type without even loading built-ins. This provides the ability to create and use only your own custom types.\n\n    const v_rifier = require('..');\n\n    (async () =\u003e {\n      let sampleVerifier = await v_rifier({ builtIns: false });\n\n      console.log(await sampleVerifier.listTypes()); //\u003e []\n\n      // Create a custom type\n      console.log(await sampleVerifier.register('customType', async (value) =\u003e (!isNaN(value) \u0026\u0026 value \u003e 0))); //\u003e true\n\n      console.log(await sampleVerifier.listTypes()); //\u003e [ 'customtype' ]\n\n      // Use it\n\n      // One way...\n      console.log(await sampleVerifier('customType', 123)); //\u003e true\n      console.log(await sampleVerifier('customType', -123)); //\u003e false\n\n      // Or other way...\n      console.log(await sampleVerifier.isCustomType(123)); //\u003e true\n      console.log(await sampleVerifier.isCustomType(-123)); //\u003e false\n\n      // Or Unregister It (if you want)\n      console.log(await sampleVerifier.unregister('customType')); //\u003e true\n\n      console.log(await sampleVerifier.listTypes()); //\u003e []\n\n    })();\n\n\u003e Example Location: Example is located in **/**tests**/_README.advanced.js**\n\n### 5. Or a combination of built-ins and custom types\n\nMain usecase basically, where you would want to check on something like a value being a number and also greather than some other value...while not caring about it being empty/undefined/anything else.\n\n    const v_rifier = require('..');\n\n    (async () =\u003e {\n      let demoVerifier = await v_rifier();\n\n      // Create a custom type\n      console.log(await demoVerifier.register('customType', async (value) =\u003e (await demoVerifier('number', value) \u0026\u0026 value \u003e 0))); //\u003e true\n\n      // Or other way...\n      console.log(await demoVerifier.isCustomType(123)); //\u003e true\n      console.log(await demoVerifier.isCustomType(-123)); //\u003e false\n\n      console.log(await demoVerifier.isCustomType(\"-123\")); //\u003e false\n\n    })();\n\n\u003e Example Location: Example is located in **/**tests**/_README.advanced-combined.js**\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fv-core9%2Fv_rifier","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fv-core9%2Fv_rifier","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fv-core9%2Fv_rifier/lists"}