Sha256: e0f50b837e6a182f96733ab1f20ca296235217761159f1cd453559bf6b0c9874

Contents?: true

Size: 1.02 KB

Versions: 16

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

16 entries across 11 versions & 5 rubygems

Version Path
optimacms-0.4.3 spec/dummy/node_modules/ajv/lib/$data.js
optimacms-0.4.3 spec/dummy/node_modules/@rails/webpacker/node_modules/webpack/node_modules/webpack/node_modules/ajv/lib/$data.js
optimacms-0.4.2 spec/dummy/node_modules/ajv/lib/$data.js
optimacms-0.4.2 spec/dummy/node_modules/@rails/webpacker/node_modules/webpack/node_modules/webpack/node_modules/ajv/lib/$data.js
locomotivecms-4.0.0.alpha1 app/javascript/node_modules/har-validator/node_modules/ajv/lib/$data.js
locomotivecms-4.0.0.alpha1 app/javascript/node_modules/node-sass/node_modules/ajv/lib/$data.js
lux_assets-0.2.11 ./node_modules/ajv/lib/$data.js
lux_assets-0.2.9 ./node_modules/ajv/lib/$data.js
lux_assets-0.2.4 ./node_modules/ajv/lib/$data.js
lux_assets-0.2.2 ./node_modules/ajv/lib/$data.js
lux_assets-0.2.1 ./node_modules/ajv/lib/$data.js
locomotivecms-3.4.0 app/javascript/node_modules/jest-environment-jsdom/node_modules/ajv/lib/$data.js
locomotivecms-3.4.0 app/javascript/node_modules/har-validator/node_modules/ajv/lib/$data.js
cortex-0.1.3 spec/dummy/node_modules/har-validator/node_modules/ajv/lib/$data.js
cortex-0.1.3 spec/dummy/node_modules/schema-utils/node_modules/ajv/lib/$data.js
dragonfly_puppeteer-0.1.0 node_modules/har-validator/node_modules/ajv/lib/$data.js