validlyjs
Version:
A high-performance Laravel-inspired validation library for TypeScript/JavaScript
15 lines (14 loc) • 926 B
JavaScript
const t={name:"array.unique",validate:t=>{if(!Array.isArray(t))return!1
const e=new Set
for(const r of t){const t="object"==typeof r?JSON.stringify(r):r
if(e.has(t))return!1
e.add(t)}return!0},message:"The {field} must contain unique items.",priority:2},e={name:"array.contains",validate:(t,e)=>{if(!Array.isArray(t))return!1
const[r]=e
return t.includes(r)},message:"The {field} must contain {0}.",priority:2},r={name:"array.notContains",validate:(t,e)=>{if(!Array.isArray(t))return!1
const[r]=e
return!t.includes(r)},message:"The {field} must not contain {0}.",priority:2},n={name:"array.distinct",validate:t=>{if(!Array.isArray(t))return!1
const e=new Set
for(const r of t){const t="object"==typeof r?JSON.stringify(r):r
if(e.has(t))return!1
e.add(t)}return!0},message:"The {field} must contain unique items.",priority:2}
export{e as arrayContainsRule,n as arrayDistinctRule,r as arrayNotContainsRule,t as arrayUniqueRule}