Sha256: d074a62a88d020df4b40dd9bc81d745afe4efbdbb4c5e4fe8d23d025b7d109dc
Contents?: true
Size: 1.63 KB
Versions: 99
Compression:
Stored size: 1.63 KB
Contents
{{# def.definitions }} {{# def.errors }} {{# def.setupKeyword }} {{# def.$data }} {{? ($schema || $isData) && it.opts.uniqueItems !== false }} {{? $isData }} var {{=$valid}}; if ({{=$schemaValue}} === false || {{=$schemaValue}} === undefined) {{=$valid}} = true; else if (typeof {{=$schemaValue}} != 'boolean') {{=$valid}} = false; else { {{?}} var i = {{=$data}}.length , {{=$valid}} = true , j; if (i > 1) { {{ var $itemType = it.schema.items && it.schema.items.type , $typeIsArray = Array.isArray($itemType); }} {{? !$itemType || $itemType == 'object' || $itemType == 'array' || ($typeIsArray && ($itemType.indexOf('object') >= 0 || $itemType.indexOf('array') >= 0)) }} outer: for (;i--;) { for (j = i; j--;) { if (equal({{=$data}}[i], {{=$data}}[j])) { {{=$valid}} = false; break outer; } } } {{??}} var itemIndices = {}, item; for (;i--;) { var item = {{=$data}}[i]; {{ var $method = 'checkDataType' + ($typeIsArray ? 's' : ''); }} if ({{= it.util[$method]($itemType, 'item', true) }}) continue; {{? $typeIsArray}} if (typeof item == 'string') item = '"' + item; {{?}} if (typeof itemIndices[item] == 'number') { {{=$valid}} = false; j = itemIndices[item]; break; } itemIndices[item] = i; } {{?}} } {{? $isData }} } {{?}} if (!{{=$valid}}) { {{# def.error:'uniqueItems' }} } {{? $breakOnError }} else { {{?}} {{??}} {{? $breakOnError }} if (true) { {{?}} {{?}}
Version data entries
99 entries across 92 versions & 12 rubygems