1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.default = void 0;
- var _lodash = _interopRequireDefault(require("lodash"));
- var _iterateJsdoc = _interopRequireDefault(require("../iterateJsdoc"));
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- var validateParameterNames = function validateParameterNames(targetTagName, functionParameterNames, jsdocParameterNames, report) {
- return _lodash.default.some(jsdocParameterNames, function (jsdocParameterName, index) {
- var functionParameterName = functionParameterNames[index];
- if (!functionParameterName) {
- report('@' + targetTagName + ' "' + jsdocParameterName + '" does not match an existing function parameter.');
- return true;
- }
- if (functionParameterName === '<ObjectPattern>' || functionParameterName === '<ArrayPattern>') {
- return false;
- }
- if (functionParameterName !== jsdocParameterName) {
- report('Expected @' + targetTagName + ' names to be "' + functionParameterNames.join(', ') + '". Got "' + jsdocParameterNames.join(', ') + '".');
- return true;
- }
- return false;
- });
- };
- var validateParameterNamesDeep = function validateParameterNamesDeep(targetTagName, jsdocParameterNames, report) {
- var lastRealParameter;
- return _lodash.default.some(jsdocParameterNames, function (jsdocParameterName) {
- var isPropertyPath = _lodash.default.includes(jsdocParameterName, '.');
- if (isPropertyPath) {
- if (!lastRealParameter) {
- report('@' + targetTagName + ' path declaration ("' + jsdocParameterName + '") appears before any real parameter.');
- return true;
- }
- var pathRootNodeName = jsdocParameterName.slice(0, jsdocParameterName.indexOf('.'));
- if (pathRootNodeName.endsWith('[]')) {
- pathRootNodeName = pathRootNodeName.slice(0, -2);
- }
- if (pathRootNodeName !== lastRealParameter) {
- report('@' + targetTagName + ' path declaration ("' + jsdocParameterName + '") root node name ("' + pathRootNodeName + '") does not match previous real parameter name ("' + lastRealParameter + '").');
- return true;
- }
- } else {
- lastRealParameter = jsdocParameterName;
- }
- return false;
- });
- };
- var _default = (0, _iterateJsdoc.default)(function (_ref) {
- var report = _ref.report,
- utils = _ref.utils;
- var functionParameterNames = utils.getFunctionParameterNames();
- var jsdocParameterNames = utils.getJsdocParameterNames();
- var jsdocParameterNamesDeep = utils.getJsdocParameterNamesDeep();
- var targetTagName = utils.getPreferredTagName('param');
- var isError = validateParameterNames(targetTagName, functionParameterNames, jsdocParameterNames, report);
- if (isError) {
- return;
- }
- validateParameterNamesDeep(targetTagName, jsdocParameterNamesDeep, report);
- });
- exports.default = _default;
- module.exports = exports.default;
- //# sourceMappingURL=checkParamNames.js.map
|