Sha256: 959a14987d25e50938a2ee67a7e0da89f893e29dd9a34f332754886b107f986e

Contents?: true

Size: 1.02 KB

Versions: 99

Compression:

Stored size: 1.02 KB

Contents

'use strict';

var KEYWORDS = [
  'multipleOf',
  'maximum',
  'exclusiveMaximum',
  'minimum',
  'exclusiveMinimum',
  'maxLength',
  'minLength',
  'pattern',
  'additionalItems',
  'maxItems',
  'minItems',
  'uniqueItems',
  'maxProperties',
  'minProperties',
  'required',
  'additionalProperties',
  'enum',
  'format',
  'const'
];

module.exports = function (metaSchema, keywordsJsonPointers) {
  for (var i=0; i<keywordsJsonPointers.length; i++) {
    metaSchema = JSON.parse(JSON.stringify(metaSchema));
    var segments = keywordsJsonPointers[i].split('/');
    var keywords = metaSchema;
    var j;
    for (j=1; j<segments.length; j++)
      keywords = keywords[segments[j]];

    for (j=0; j<KEYWORDS.length; j++) {
      var key = KEYWORDS[j];
      var schema = keywords[key];
      if (schema) {
        keywords[key] = {
          anyOf: [
            schema,
            { $ref: 'https://raw.githubusercontent.com/epoberezkin/ajv/master/lib/refs/data.json#' }
          ]
        };
      }
    }
  }

  return metaSchema;
};

Version data entries

99 entries across 92 versions & 12 rubygems

Version Path
disco_app-0.18.0 test/dummy/node_modules/ajv/lib/data.js
disco_app-0.18.2 test/dummy/node_modules/ajv/lib/data.js
trusty-cms-5.0.6 node_modules/ajv/lib/data.js
trusty-cms-5.0.5 node_modules/ajv/lib/data.js
trusty-cms-5.0.4 node_modules/ajv/lib/data.js
disco_app-0.16.1 test/dummy/node_modules/ajv/lib/data.js
disco_app-0.15.2 test/dummy/node_modules/ajv/lib/data.js
trusty-cms-5.0.3 node_modules/ajv/lib/data.js
trusty-cms-5.0.2 node_modules/ajv/lib/data.js
disco_app-0.18.4 test/dummy/node_modules/ajv/lib/data.js
disco_app-0.18.1 test/dummy/node_modules/ajv/lib/data.js
disco_app-0.12.7.pre.puma.pre.3 test/dummy/node_modules/ajv/lib/data.js
disco_app-0.14.0 test/dummy/node_modules/ajv/lib/data.js
disco_app-0.13.6.pre.puma.pre.3 test/dummy/node_modules/ajv/lib/data.js
trusty-cms-5.0.1 node_modules/ajv/lib/data.js
trusty-cms-4.3.5 node_modules/ajv/lib/data.js
trusty-cms-5.0.0 node_modules/ajv/lib/data.js
trusty-cms-4.3.4 node_modules/ajv/lib/data.js
trusty-cms-4.3.3 node_modules/ajv/lib/data.js
trusty-cms-4.3.2 node_modules/ajv/lib/data.js