Nav apraksta

util-map-includes.js 558B

1234567891011121314151617181920
  1. 'use strict';
  2. var Node = require('../nodes/Node.js');
  3. function mapIncludes(ctx, items, search) {
  4. const { uniqueKeys } = ctx.options;
  5. if (uniqueKeys === false)
  6. return false;
  7. const isEqual = typeof uniqueKeys === 'function'
  8. ? uniqueKeys
  9. : (a, b) => a === b ||
  10. (Node.isScalar(a) &&
  11. Node.isScalar(b) &&
  12. a.value === b.value &&
  13. !(a.value === '<<' && ctx.schema.merge));
  14. return items.some(pair => isEqual(pair.key, search));
  15. }
  16. exports.mapIncludes = mapIncludes;