summaryrefslogtreecommitdiff
path: root/deps/node/deps/npm/node_modules/ajv/lib/dot/uniqueItems.jst
blob: dfc42b03b2c8a36818b0c8bf313c7947008c281c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
{{# 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 {{=$valid}} = true;
  if ({{=$data}}.length > 1) {
    var i = {{=$data}}.length, j;
    outer:
    for (;i--;) {
      for (j = i; j--;) {
        if (equal({{=$data}}[i], {{=$data}}[j])) {
          {{=$valid}} = false;
          break outer;
        }
      }
    }
  }

  {{? $isData }}  }  {{?}}

  if (!{{=$valid}}) {
    {{# def.error:'uniqueItems' }}
  } {{? $breakOnError }} else { {{?}}
{{??}}
  {{? $breakOnError }} if (true) { {{?}}
{{?}}