{
- "requireCurlyBraces": [
- "if",
- "else",
- "for",
- "while",
- "do",
- "try",
- "catch"
- ],
- "requireSpaceAfterKeywords": [
- "if",
- "else",
- "for",
- "while",
- "do",
- "switch",
- "return",
- "try",
- "catch",
- "function"
- ],
- "requireSpaceBeforeBlockStatements": true,
- "requireParenthesesAroundIIFE": true,
- "requireSpacesInConditionalExpression": true,
- "disallowSpacesInNamedFunctionExpression": {
- "beforeOpeningRoundBrace": true
- },
- "disallowSpacesInFunctionDeclaration": {
- "beforeOpeningRoundBrace": true
- },
- "requireMultipleVarDecl": "onevar",
- "requireBlocksOnNewline": 1,
- "disallowEmptyBlocks": true,
- "requireSpacesInsideObjectBrackets": "all",
- "disallowSpaceAfterObjectKeys": true,
- "requireCommaBeforeLineBreak": true,
- "disallowSpaceAfterPrefixUnaryOperators": [
- "++",
- "--",
- "+",
- "-",
- "~",
- "!"
- ],
- "disallowSpaceBeforePostfixUnaryOperators": [
- "++",
- "--"
- ],
- "disallowSpaceBeforeBinaryOperators": [
- ","
- ],
- "requireSpaceBeforeBinaryOperators": [
- "=",
- "+",
- "-",
- "/",
- "*",
- "==",
- "===",
- "!=",
- "!==",
- ">",
- ">=",
- "<",
- "<="
- ],
- "requireSpaceAfterBinaryOperators": [
- "=",
- "+",
- "-",
- "/",
- "*",
- "==",
- "===",
- "!=",
- "!==",
- ">",
- ">=",
- "<",
- "<="
- ],
- "disallowKeywords": [ "with" ],
- "disallowMultipleLineBreaks": true,
- "validateLineBreaks": "LF",
- "validateQuoteMarks": "'",
- "disallowMixedSpacesAndTabs": true,
- "disallowTrailingWhitespace": true,
- "disallowTrailingComma": true,
- "requireLineFeedAtFileEnd": true,
- "requireCapitalizedConstructors": true,
- "requireDotNotation": true,
- "disallowYodaConditions": true
+ "preset": "wikimedia",
+ "es3": true,
+
+ "requireVarDeclFirst": null,
+
+ "disallowQuotedKeysInObjects": "allButReserved",
+ "requireDotNotation": { "allExcept": [ "keywords" ] },
+ "jsDoc": {
+ "checkParamNames": true,
+ "checkRedundantReturns": true,
+ "checkTypes": "strictNativeCase",
+ "requireNewlineAfterDescription": true,
+ "requireParamTypes": true,
+ "requireReturnTypes": true
+ },
+
+ "excludeFiles": [
+ "docs/**",
+ "extensions/**",
+ "node_modules/**",
+ "resources/lib/**",
+ "resources/src/jquery.tipsy/**",
+ "resources/src/jquery/jquery.farbtastic.js",
+ "resources/src/mediawiki.libs/**",
+ "skins/**",
+ "vendor/**"
+ ]
}