eslint-plugin-jsdoc
Advanced tools
Comparing version
@@ -37,2 +37,6 @@ 'use strict'; | ||
var isCapitalized = function isCapitalized(str) { | ||
return str[0] === str[0].toUpperCase(); | ||
}; | ||
var validateDescription = function validateDescription(description, report) { | ||
@@ -46,3 +50,3 @@ if (!description) { | ||
return _lodash2.default.some(paragraphs, function (paragraph, index) { | ||
if (!/^[A-Z]/.test(paragraph)) { | ||
if (!isCapitalized(paragraph)) { | ||
if (index === 0) { | ||
@@ -49,0 +53,0 @@ report('Description must start with an uppercase character.'); |
@@ -17,2 +17,3 @@ { | ||
"babel-preset-env": "^1.2.2", | ||
"babel-preset-es2015": "^6.24.1", | ||
"babel-register": "^6.18.0", | ||
@@ -50,5 +51,5 @@ "chai": "^3.5.0", | ||
"lint": "eslint ./src ./test", | ||
"test": "mocha --compilers js:babel-register" | ||
"test": "mocha --recursive --compilers js:babel-register" | ||
}, | ||
"version": "3.1.0" | ||
"version": "3.1.1" | ||
} |
@@ -23,2 +23,3 @@ <a name="eslint-plugin-jsdoc"></a> | ||
* [`require-description-complete-sentence`](#eslint-plugin-jsdoc-rules-require-description-complete-sentence) | ||
* [`require-example`](#eslint-plugin-jsdoc-rules-require-example) | ||
* [`require-hyphen-before-param-description`](#eslint-plugin-jsdoc-rules-require-hyphen-before-param-description) | ||
@@ -44,2 +45,3 @@ * [`require-param`](#eslint-plugin-jsdoc-rules-require-param) | ||
| [`require-description-complete-sentence`](https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-description-complete-sentence) | [`requireDescriptionCompleteSentence`](https://github.com/jscs-dev/jscs-jsdoc#requiredescriptioncompletesentence) | | ||
| [`require-example`](https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-example) | N/A | | ||
| [`require-hyphen-before-param-description`](https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-hyphen-before-param-description) | [`requireHyphenBeforeDescription`](https://github.com/jscs-dev/jscs-jsdoc#requirehyphenbeforedescription) | | ||
@@ -96,2 +98,3 @@ | [`require-param`](https://github.com/gajus/eslint-plugin-jsdoc#eslint-plugin-jsdoc-rules-require-param) | [`checkParamExistence`](https://github.com/jscs-dev/jscs-jsdoc#checkparamexistence) | | ||
"jsdoc/require-description-complete-sentence": 1, | ||
"jsdoc/require-example": 1, | ||
"jsdoc/require-hyphen-before-param-description": 1, | ||
@@ -841,2 +844,67 @@ "jsdoc/require-param": 1, | ||
<a name="eslint-plugin-jsdoc-rules-require-example"></a> | ||
### <code>require-example</code> | ||
Requires that all functions have examples. | ||
* All functions must have one or more `@example` tags. | ||
* Every example tag must have a non-empty description that explains the method's usage. | ||
||| | ||
|---|---| | ||
|Context|`ArrowFunctionExpression`, `FunctionDeclaration`, `FunctionExpression`| | ||
|Tags|`example`| | ||
The following patterns are considered problems: | ||
```js | ||
/** | ||
* | ||
*/ | ||
function quux () { | ||
} | ||
// Message: Missing JSDoc @example declaration. | ||
/** | ||
* @example | ||
*/ | ||
function quux () { | ||
} | ||
// Message: Missing JSDoc @example description. | ||
``` | ||
The following patterns are not considered problems: | ||
```js | ||
/** | ||
* @example | ||
* // arbitrary example content | ||
*/ | ||
function quux () { | ||
} | ||
/** | ||
* @example | ||
* quux(); // does something useful | ||
*/ | ||
function quux () { | ||
} | ||
/** | ||
* @example <caption>Valid usage</caption> | ||
* quux(); // does something useful | ||
* | ||
* @example <caption>Invalid usage</caption> | ||
* quux('random unwanted arg'); // results in an error | ||
*/ | ||
function quux () { | ||
} | ||
``` | ||
<a name="eslint-plugin-jsdoc-rules-require-hyphen-before-param-description"></a> | ||
@@ -843,0 +911,0 @@ ### <code>require-hyphen-before-param-description</code> |
Sorry, the diff of this file is not supported yet
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
Found 1 instance in 1 package
95883
1.75%733
0.41%1201
6%13
8.33%