UNPKG

e-lado

Version:

[![CircleCI](https://circleci.com/gh/sharetribe/sharetribe/tree/master.svg?style=svg)](https://circleci.com/gh/sharetribe/sharetribe/tree/master) [![Dependency Status](https://gemnasium.com/sharetribe/sharetribe.png)](https://gemnasium.com/sharetribe/shar

43 lines (32 loc) 994 B
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _lodash = require('lodash/'); var _lodash2 = _interopRequireDefault(_lodash); var _utilities = require('./../utilities'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.default = function (context) { var report = function report(node) { context.report({ loc: node.loc, message: 'Duplicate property.', node: node }); }; var checkForDuplicates = function checkForDuplicates(node) { var haystack = []; _lodash2.default.forEach(node.properties, function (identifierNode) { var needle = (0, _utilities.getParameterName)(identifierNode, context); if (_lodash2.default.includes(haystack, needle)) { report(identifierNode); } else { haystack.push(needle); } }); }; return { ObjectTypeAnnotation: checkForDuplicates }; }; module.exports = exports['default'];