eslint-plugin-jsdoc 57.0.6 → 57.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/buildForbidRuleDefinition.cjs +83 -0
- package/dist/buildForbidRuleDefinition.cjs.map +1 -0
- package/dist/buildForbidRuleDefinition.d.ts +11 -0
- package/dist/cjs/buildForbidRuleDefinition.d.ts +10 -0
- package/dist/cjs/index-cjs.d.ts +0 -10
- package/dist/index-cjs.cjs +6 -80
- package/dist/index-cjs.cjs.map +1 -1
- package/dist/index-cjs.d.ts +0 -10
- package/dist/index-esm.cjs +4 -3
- package/dist/index-esm.cjs.map +1 -1
- package/dist/index.cjs +6 -81
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +0 -10
- package/package.json +1 -1
- package/src/buildForbidRuleDefinition.js +86 -0
- package/src/index-cjs.js +3 -86
- package/src/index-esm.js +3 -2
- package/src/index.js +3 -86
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.buildForbidRuleDefinition = void 0;
|
|
7
|
+
var _iterateJsdoc = _interopRequireDefault(require("./iterateJsdoc.cjs"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
/**
|
|
10
|
+
* @param {{
|
|
11
|
+
* contexts: (string|{
|
|
12
|
+
* comment: string,
|
|
13
|
+
* context: string,
|
|
14
|
+
* message: string
|
|
15
|
+
* })[],
|
|
16
|
+
* description?: string,
|
|
17
|
+
* contextName?: string
|
|
18
|
+
* url?: string,
|
|
19
|
+
* }} cfg
|
|
20
|
+
* @returns {import('@eslint/core').RuleDefinition<
|
|
21
|
+
* import('@eslint/core').RuleDefinitionTypeOptions
|
|
22
|
+
* >}
|
|
23
|
+
*/
|
|
24
|
+
const buildForbidRuleDefinition = ({
|
|
25
|
+
contextName,
|
|
26
|
+
contexts,
|
|
27
|
+
description,
|
|
28
|
+
url
|
|
29
|
+
}) => {
|
|
30
|
+
return (0, _iterateJsdoc.default)(({
|
|
31
|
+
// context,
|
|
32
|
+
info: {
|
|
33
|
+
comment
|
|
34
|
+
},
|
|
35
|
+
report,
|
|
36
|
+
utils
|
|
37
|
+
}) => {
|
|
38
|
+
const {
|
|
39
|
+
contextStr,
|
|
40
|
+
foundContext
|
|
41
|
+
} = utils.findContext(contexts, comment);
|
|
42
|
+
|
|
43
|
+
// We are not on the *particular* matching context/comment, so don't assume
|
|
44
|
+
// we need reporting
|
|
45
|
+
if (!foundContext) {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
const message = /** @type {import('./iterateJsdoc.js').ContextObject} */foundContext?.message ?? 'Syntax is restricted: {{context}}' + (comment ? ' with {{comment}}' : '');
|
|
49
|
+
report(message, null, null, comment ? {
|
|
50
|
+
comment,
|
|
51
|
+
context: contextStr
|
|
52
|
+
} : {
|
|
53
|
+
context: contextStr
|
|
54
|
+
});
|
|
55
|
+
}, {
|
|
56
|
+
contextSelected: true,
|
|
57
|
+
meta: {
|
|
58
|
+
docs: {
|
|
59
|
+
description: description ?? contextName ?? 'Reports when certain comment structures are present.',
|
|
60
|
+
url: url ?? 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/advanced.md#user-content-advanced-creating-your-own-rules'
|
|
61
|
+
},
|
|
62
|
+
fixable: 'code',
|
|
63
|
+
schema: [],
|
|
64
|
+
type: 'suggestion'
|
|
65
|
+
},
|
|
66
|
+
modifyContext: context => {
|
|
67
|
+
// Reproduce context object with our own `contexts`
|
|
68
|
+
const propertyDescriptors = Object.getOwnPropertyDescriptors(context);
|
|
69
|
+
return Object.create(Object.getPrototypeOf(context), {
|
|
70
|
+
...propertyDescriptors,
|
|
71
|
+
options: {
|
|
72
|
+
...propertyDescriptors.options,
|
|
73
|
+
value: [{
|
|
74
|
+
contexts
|
|
75
|
+
}]
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
},
|
|
79
|
+
nonGlobalSettings: true
|
|
80
|
+
});
|
|
81
|
+
};
|
|
82
|
+
exports.buildForbidRuleDefinition = buildForbidRuleDefinition;
|
|
83
|
+
//# sourceMappingURL=buildForbidRuleDefinition.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildForbidRuleDefinition.cjs","names":["_iterateJsdoc","_interopRequireDefault","require","e","__esModule","default","buildForbidRuleDefinition","contextName","contexts","description","url","iterateJsdoc","info","comment","report","utils","contextStr","foundContext","findContext","message","context","contextSelected","meta","docs","fixable","schema","type","modifyContext","propertyDescriptors","Object","getOwnPropertyDescriptors","create","getPrototypeOf","options","value","nonGlobalSettings","exports"],"sources":["../src/buildForbidRuleDefinition.js"],"sourcesContent":["import iterateJsdoc from './iterateJsdoc.js';\n\n/**\n * @param {{\n * contexts: (string|{\n * comment: string,\n * context: string,\n * message: string\n * })[],\n * description?: string,\n * contextName?: string\n * url?: string,\n * }} cfg\n * @returns {import('@eslint/core').RuleDefinition<\n * import('@eslint/core').RuleDefinitionTypeOptions\n * >}\n */\nexport const buildForbidRuleDefinition = ({\n contextName,\n contexts,\n description,\n url,\n}) => {\n return iterateJsdoc(({\n // context,\n info: {\n comment,\n },\n report,\n utils,\n }) => {\n const {\n contextStr,\n foundContext,\n } = utils.findContext(contexts, comment);\n\n // We are not on the *particular* matching context/comment, so don't assume\n // we need reporting\n if (!foundContext) {\n return;\n }\n\n const message = /** @type {import('./iterateJsdoc.js').ContextObject} */ (\n foundContext\n )?.message ??\n 'Syntax is restricted: {{context}}' +\n (comment ? ' with {{comment}}' : '');\n\n report(message, null, null, comment ? {\n comment,\n context: contextStr,\n } : {\n context: contextStr,\n });\n }, {\n contextSelected: true,\n meta: {\n docs: {\n description: description ?? contextName ?? 'Reports when certain comment structures are present.',\n url: url ?? 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/advanced.md#user-content-advanced-creating-your-own-rules',\n },\n fixable: 'code',\n schema: [],\n type: 'suggestion',\n },\n modifyContext: (context) => {\n // Reproduce context object with our own `contexts`\n const propertyDescriptors = Object.getOwnPropertyDescriptors(context);\n return Object.create(\n Object.getPrototypeOf(context),\n {\n ...propertyDescriptors,\n options: {\n ...propertyDescriptors.options,\n value: [\n {\n contexts,\n },\n ],\n },\n },\n );\n },\n nonGlobalSettings: true,\n });\n};\n"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA6C,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMG,yBAAyB,GAAGA,CAAC;EACxCC,WAAW;EACXC,QAAQ;EACRC,WAAW;EACXC;AACF,CAAC,KAAK;EACJ,OAAO,IAAAC,qBAAY,EAAC,CAAC;IACnB;IACAC,IAAI,EAAE;MACJC;IACF,CAAC;IACDC,MAAM;IACNC;EACF,CAAC,KAAK;IACJ,MAAM;MACJC,UAAU;MACVC;IACF,CAAC,GAAGF,KAAK,CAACG,WAAW,CAACV,QAAQ,EAAEK,OAAO,CAAC;;IAExC;IACA;IACA,IAAI,CAACI,YAAY,EAAE;MACjB;IACF;IAEA,MAAME,OAAO,GAAG,wDACdF,YAAY,EACXE,OAAO,IACR,mCAAmC,IAChCN,OAAO,GAAG,mBAAmB,GAAG,EAAE,CAAC;IAExCC,MAAM,CAACK,OAAO,EAAE,IAAI,EAAE,IAAI,EAAEN,OAAO,GAAG;MACpCA,OAAO;MACPO,OAAO,EAAEJ;IACX,CAAC,GAAG;MACFI,OAAO,EAAEJ;IACX,CAAC,CAAC;EACJ,CAAC,EAAE;IACDK,eAAe,EAAE,IAAI;IACrBC,IAAI,EAAE;MACJC,IAAI,EAAE;QACJd,WAAW,EAAEA,WAAW,IAAIF,WAAW,IAAI,sDAAsD;QACjGG,GAAG,EAAEA,GAAG,IAAI;MACd,CAAC;MACDc,OAAO,EAAE,MAAM;MACfC,MAAM,EAAE,EAAE;MACVC,IAAI,EAAE;IACR,CAAC;IACDC,aAAa,EAAGP,OAAO,IAAK;MAC1B;MACA,MAAMQ,mBAAmB,GAAGC,MAAM,CAACC,yBAAyB,CAACV,OAAO,CAAC;MACrE,OAAOS,MAAM,CAACE,MAAM,CAClBF,MAAM,CAACG,cAAc,CAACZ,OAAO,CAAC,EAC9B;QACE,GAAGQ,mBAAmB;QACtBK,OAAO,EAAE;UACP,GAAGL,mBAAmB,CAACK,OAAO;UAC9BC,KAAK,EAAE,CACL;YACE1B;UACF,CAAC;QAEL;MACF,CACF,CAAC;IACH,CAAC;IACD2B,iBAAiB,EAAE;EACrB,CAAC,CAAC;AACJ,CAAC;AAACC,OAAA,CAAA9B,yBAAA,GAAAA,yBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export function buildForbidRuleDefinition({ contextName, contexts, description, url, }: {
|
|
2
|
+
contexts: (string | {
|
|
3
|
+
comment: string;
|
|
4
|
+
context: string;
|
|
5
|
+
message: string;
|
|
6
|
+
})[];
|
|
7
|
+
description?: string;
|
|
8
|
+
contextName?: string;
|
|
9
|
+
url?: string;
|
|
10
|
+
}): import("@eslint/core").RuleDefinition<import("@eslint/core").RuleDefinitionTypeOptions>;
|
|
11
|
+
//# sourceMappingURL=buildForbidRuleDefinition.d.ts.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export function buildForbidRuleDefinition({ contextName, contexts, description, url, }: {
|
|
2
|
+
contexts: (string | {
|
|
3
|
+
comment: string;
|
|
4
|
+
context: string;
|
|
5
|
+
message: string;
|
|
6
|
+
})[];
|
|
7
|
+
description?: string;
|
|
8
|
+
contextName?: string;
|
|
9
|
+
url?: string;
|
|
10
|
+
}): import("@eslint/core").RuleDefinition<import("@eslint/core").RuleDefinitionTypeOptions>;
|
package/dist/cjs/index-cjs.d.ts
CHANGED
|
@@ -1,13 +1,3 @@
|
|
|
1
|
-
export function buildForbidRuleDefinition({ contextName, contexts, description, url, }: {
|
|
2
|
-
contexts: (string | {
|
|
3
|
-
comment: string;
|
|
4
|
-
context: string;
|
|
5
|
-
message: string;
|
|
6
|
-
})[];
|
|
7
|
-
description?: string;
|
|
8
|
-
contextName?: string;
|
|
9
|
-
url?: string;
|
|
10
|
-
}): import("@eslint/core").RuleDefinition<import("@eslint/core").RuleDefinitionTypeOptions>;
|
|
11
1
|
export default index;
|
|
12
2
|
export type ConfigGroups = "recommended" | "stylistic" | "contents" | "logical" | "requirements";
|
|
13
3
|
export type ConfigVariants = "" | "-typescript" | "-typescript-flavor";
|
package/dist/index-cjs.cjs
CHANGED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default =
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _buildForbidRuleDefinition = require("./buildForbidRuleDefinition.cjs");
|
|
7
8
|
var _getJsdocProcessorPlugin = require("./getJsdocProcessorPlugin.cjs");
|
|
8
|
-
var _iterateJsdoc = _interopRequireDefault(require("./iterateJsdoc.cjs"));
|
|
9
9
|
var _checkAccess = _interopRequireDefault(require("./rules/checkAccess.cjs"));
|
|
10
10
|
var _checkAlignment = _interopRequireDefault(require("./rules/checkAlignment.cjs"));
|
|
11
11
|
var _checkExamples = _interopRequireDefault(require("./rules/checkExamples.cjs"));
|
|
@@ -65,80 +65,6 @@ var _textEscaping = _interopRequireDefault(require("./rules/textEscaping.cjs"));
|
|
|
65
65
|
var _typeFormatting = _interopRequireDefault(require("./rules/typeFormatting.cjs"));
|
|
66
66
|
var _validTypes = _interopRequireDefault(require("./rules/validTypes.cjs"));
|
|
67
67
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
68
|
-
/**
|
|
69
|
-
* @param {{
|
|
70
|
-
* contexts: (string|{
|
|
71
|
-
* comment: string,
|
|
72
|
-
* context: string,
|
|
73
|
-
* message: string
|
|
74
|
-
* })[],
|
|
75
|
-
* description?: string,
|
|
76
|
-
* contextName?: string
|
|
77
|
-
* url?: string,
|
|
78
|
-
* }} cfg
|
|
79
|
-
* @returns {import('@eslint/core').RuleDefinition<
|
|
80
|
-
* import('@eslint/core').RuleDefinitionTypeOptions
|
|
81
|
-
* >}
|
|
82
|
-
*/
|
|
83
|
-
const buildForbidRuleDefinition = ({
|
|
84
|
-
contextName,
|
|
85
|
-
contexts,
|
|
86
|
-
description,
|
|
87
|
-
url
|
|
88
|
-
}) => {
|
|
89
|
-
return (0, _iterateJsdoc.default)(({
|
|
90
|
-
// context,
|
|
91
|
-
info: {
|
|
92
|
-
comment
|
|
93
|
-
},
|
|
94
|
-
report,
|
|
95
|
-
utils
|
|
96
|
-
}) => {
|
|
97
|
-
const {
|
|
98
|
-
contextStr,
|
|
99
|
-
foundContext
|
|
100
|
-
} = utils.findContext(contexts, comment);
|
|
101
|
-
|
|
102
|
-
// We are not on the *particular* matching context/comment, so don't assume
|
|
103
|
-
// we need reporting
|
|
104
|
-
if (!foundContext) {
|
|
105
|
-
return;
|
|
106
|
-
}
|
|
107
|
-
const message = /** @type {import('./iterateJsdoc.js').ContextObject} */foundContext?.message ?? 'Syntax is restricted: {{context}}' + (comment ? ' with {{comment}}' : '');
|
|
108
|
-
report(message, null, null, comment ? {
|
|
109
|
-
comment,
|
|
110
|
-
context: contextStr
|
|
111
|
-
} : {
|
|
112
|
-
context: contextStr
|
|
113
|
-
});
|
|
114
|
-
}, {
|
|
115
|
-
contextSelected: true,
|
|
116
|
-
meta: {
|
|
117
|
-
docs: {
|
|
118
|
-
description: description ?? contextName ?? 'Reports when certain comment structures are present.',
|
|
119
|
-
url: url ?? 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/advanced.md#user-content-advanced-creating-your-own-rules'
|
|
120
|
-
},
|
|
121
|
-
fixable: 'code',
|
|
122
|
-
schema: [],
|
|
123
|
-
type: 'suggestion'
|
|
124
|
-
},
|
|
125
|
-
modifyContext: context => {
|
|
126
|
-
// Reproduce context object with our own `contexts`
|
|
127
|
-
const propertyDescriptors = Object.getOwnPropertyDescriptors(context);
|
|
128
|
-
return Object.create(Object.getPrototypeOf(context), {
|
|
129
|
-
...propertyDescriptors,
|
|
130
|
-
options: {
|
|
131
|
-
...propertyDescriptors.options,
|
|
132
|
-
value: [{
|
|
133
|
-
contexts
|
|
134
|
-
}]
|
|
135
|
-
}
|
|
136
|
-
});
|
|
137
|
-
},
|
|
138
|
-
nonGlobalSettings: true
|
|
139
|
-
});
|
|
140
|
-
};
|
|
141
|
-
|
|
142
68
|
/* eslint-disable jsdoc/valid-types -- Bug */
|
|
143
69
|
/**
|
|
144
70
|
* @typedef {"recommended" | "stylistic" | "contents" | "logical" | "requirements"} ConfigGroups
|
|
@@ -149,7 +75,6 @@ const buildForbidRuleDefinition = ({
|
|
|
149
75
|
* import('eslint').Linter.Config>|Record<"examples"|"default-expressions"|"examples-and-default-expressions", import('eslint').Linter.Config[]>
|
|
150
76
|
* }}
|
|
151
77
|
*/
|
|
152
|
-
exports.buildForbidRuleDefinition = buildForbidRuleDefinition;
|
|
153
78
|
const index = {};
|
|
154
79
|
/* eslint-enable jsdoc/valid-types -- Bug */
|
|
155
80
|
index.configs = {};
|
|
@@ -191,7 +116,7 @@ index.rules = {
|
|
|
191
116
|
'require-file-overview': _requireFileOverview.default,
|
|
192
117
|
'require-hyphen-before-param-description': _requireHyphenBeforeParamDescription.default,
|
|
193
118
|
'require-jsdoc': _requireJsdoc.default,
|
|
194
|
-
'require-next-type': buildForbidRuleDefinition({
|
|
119
|
+
'require-next-type': (0, _buildForbidRuleDefinition.buildForbidRuleDefinition)({
|
|
195
120
|
contexts: [{
|
|
196
121
|
comment: 'JsdocBlock:has(JsdocTag[tag=next]:not([parsedType.type]))',
|
|
197
122
|
context: 'any',
|
|
@@ -214,7 +139,7 @@ index.rules = {
|
|
|
214
139
|
'require-returns-type': _requireReturnsType.default,
|
|
215
140
|
'require-template': _requireTemplate.default,
|
|
216
141
|
'require-throws': _requireThrows.default,
|
|
217
|
-
'require-throws-type': buildForbidRuleDefinition({
|
|
142
|
+
'require-throws-type': (0, _buildForbidRuleDefinition.buildForbidRuleDefinition)({
|
|
218
143
|
contexts: [{
|
|
219
144
|
comment: 'JsdocBlock:has(JsdocTag[tag=throws]:not([parsedType.type]))',
|
|
220
145
|
context: 'any',
|
|
@@ -225,7 +150,7 @@ index.rules = {
|
|
|
225
150
|
}),
|
|
226
151
|
'require-yields': _requireYields.default,
|
|
227
152
|
'require-yields-check': _requireYieldsCheck.default,
|
|
228
|
-
'require-yields-type': buildForbidRuleDefinition({
|
|
153
|
+
'require-yields-type': (0, _buildForbidRuleDefinition.buildForbidRuleDefinition)({
|
|
229
154
|
contexts: [{
|
|
230
155
|
comment: 'JsdocBlock:has(JsdocTag[tag=yields]:not([parsedType.type]))',
|
|
231
156
|
context: 'any',
|
|
@@ -528,4 +453,5 @@ index.configs['examples-and-default-expressions'] = /** @type {import('eslint').
|
|
|
528
453
|
};
|
|
529
454
|
})];
|
|
530
455
|
var _default = exports.default = index;
|
|
456
|
+
module.exports = exports.default;
|
|
531
457
|
//# sourceMappingURL=index-cjs.cjs.map
|
package/dist/index-cjs.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-cjs.cjs","names":["_getJsdocProcessorPlugin","require","_iterateJsdoc","_interopRequireDefault","_checkAccess","_checkAlignment","_checkExamples","_checkIndentation","_checkLineAlignment","_checkParamNames","_checkPropertyNames","_checkSyntax","_checkTagNames","_checkTemplateNames","_checkTypes","_checkValues","_convertToJsdocComments","_emptyTags","_implementsOnClasses","_importsAsDependencies","_informativeDocs","_linesBeforeBlock","_matchDescription","_matchName","_multilineBlocks","_noBadBlocks","_noBlankBlockDescriptions","_noBlankBlocks","_noDefaults","_noMissingSyntax","_noMultiAsterisks","_noRestrictedSyntax","_noTypes","_noUndefinedTypes","_requireAsteriskPrefix","_requireDescription","_requireDescriptionCompleteSentence","_requireExample","_requireFileOverview","_requireHyphenBeforeParamDescription","_requireJsdoc","_requireParam","_requireParamDescription","_requireParamName","_requireParamType","_requireProperty","_requirePropertyDescription","_requirePropertyName","_requirePropertyType","_requireReturns","_requireReturnsCheck","_requireReturnsDescription","_requireReturnsType","_requireTemplate","_requireThrows","_requireYields","_requireYieldsCheck","_sortTags","_tagLines","_textEscaping","_typeFormatting","_validTypes","e","__esModule","default","buildForbidRuleDefinition","contextName","contexts","description","url","iterateJsdoc","info","comment","report","utils","contextStr","foundContext","findContext","message","context","contextSelected","meta","docs","fixable","schema","type","modifyContext","propertyDescriptors","Object","getOwnPropertyDescriptors","create","getPrototypeOf","options","value","nonGlobalSettings","exports","index","configs","rules","checkAccess","checkAlignment","checkExamples","checkIndentation","checkLineAlignment","checkParamNames","checkPropertyNames","checkSyntax","checkTagNames","checkTemplateNames","checkTypes","checkValues","convertToJsdocComments","emptyTags","implementsOnClasses","importsAsDependencies","informativeDocs","linesBeforeBlock","matchDescription","matchName","multilineBlocks","noBadBlocks","noBlankBlockDescriptions","noBlankBlocks","noDefaults","noMissingSyntax","noMultiAsterisks","noRestrictedSyntax","noTypes","noUndefinedTypes","requireAsteriskPrefix","requireDescription","requireDescriptionCompleteSentence","requireExample","requireFileOverview","requireHyphenBeforeParamDescription","requireJsdoc","requireParam","requireParamDescription","requireParamName","requireParamType","requireProperty","requirePropertyDescription","requirePropertyName","requirePropertyType","requireReturns","requireReturnsCheck","requireReturnsDescription","requireReturnsType","requireTemplate","requireThrows","requireYields","requireYieldsCheck","sortTags","tagLines","textEscaping","typeFormatting","validTypes","createRecommendedRuleset","warnOrError","flatName","name","plugins","jsdoc","createRecommendedTypeScriptRuleset","ruleset","typed","createRecommendedTypeScriptFlavorRuleset","createStandaloneRulesetFactory","ruleNames","fromEntries","map","ruleName","slice","contentsRules","escapeHTML","createContentsTypescriptRuleset","createContentsTypescriptFlavorRuleset","logicalRules","createLogicalTypescriptRuleset","createLogicalTypescriptFlavorRuleset","requirementsRules","createRequirementsTypeScriptRuleset","createRequirementsTypeScriptFlavorRuleset","stylisticRules","createStylisticTypeScriptRuleset","createStylisticTypeScriptFlavorRuleset","Error","recommended","examples","files","getJsdocProcessorPlugin","processor","checkDefaults","checkParams","checkProperties","quotes","semi","strict","config","_default"],"sources":["../src/index-cjs.js"],"sourcesContent":["import {\n getJsdocProcessorPlugin,\n} from './getJsdocProcessorPlugin.js';\nimport iterateJsdoc from './iterateJsdoc.js';\nimport checkAccess from './rules/checkAccess.js';\nimport checkAlignment from './rules/checkAlignment.js';\nimport checkExamples from './rules/checkExamples.js';\nimport checkIndentation from './rules/checkIndentation.js';\nimport checkLineAlignment from './rules/checkLineAlignment.js';\nimport checkParamNames from './rules/checkParamNames.js';\nimport checkPropertyNames from './rules/checkPropertyNames.js';\nimport checkSyntax from './rules/checkSyntax.js';\nimport checkTagNames from './rules/checkTagNames.js';\nimport checkTemplateNames from './rules/checkTemplateNames.js';\nimport checkTypes from './rules/checkTypes.js';\nimport checkValues from './rules/checkValues.js';\nimport convertToJsdocComments from './rules/convertToJsdocComments.js';\nimport emptyTags from './rules/emptyTags.js';\nimport implementsOnClasses from './rules/implementsOnClasses.js';\nimport importsAsDependencies from './rules/importsAsDependencies.js';\nimport informativeDocs from './rules/informativeDocs.js';\nimport linesBeforeBlock from './rules/linesBeforeBlock.js';\nimport matchDescription from './rules/matchDescription.js';\nimport matchName from './rules/matchName.js';\nimport multilineBlocks from './rules/multilineBlocks.js';\nimport noBadBlocks from './rules/noBadBlocks.js';\nimport noBlankBlockDescriptions from './rules/noBlankBlockDescriptions.js';\nimport noBlankBlocks from './rules/noBlankBlocks.js';\nimport noDefaults from './rules/noDefaults.js';\nimport noMissingSyntax from './rules/noMissingSyntax.js';\nimport noMultiAsterisks from './rules/noMultiAsterisks.js';\nimport noRestrictedSyntax from './rules/noRestrictedSyntax.js';\nimport noTypes from './rules/noTypes.js';\nimport noUndefinedTypes from './rules/noUndefinedTypes.js';\nimport requireAsteriskPrefix from './rules/requireAsteriskPrefix.js';\nimport requireDescription from './rules/requireDescription.js';\nimport requireDescriptionCompleteSentence from './rules/requireDescriptionCompleteSentence.js';\nimport requireExample from './rules/requireExample.js';\nimport requireFileOverview from './rules/requireFileOverview.js';\nimport requireHyphenBeforeParamDescription from './rules/requireHyphenBeforeParamDescription.js';\nimport requireJsdoc from './rules/requireJsdoc.js';\nimport requireParam from './rules/requireParam.js';\nimport requireParamDescription from './rules/requireParamDescription.js';\nimport requireParamName from './rules/requireParamName.js';\nimport requireParamType from './rules/requireParamType.js';\nimport requireProperty from './rules/requireProperty.js';\nimport requirePropertyDescription from './rules/requirePropertyDescription.js';\nimport requirePropertyName from './rules/requirePropertyName.js';\nimport requirePropertyType from './rules/requirePropertyType.js';\nimport requireReturns from './rules/requireReturns.js';\nimport requireReturnsCheck from './rules/requireReturnsCheck.js';\nimport requireReturnsDescription from './rules/requireReturnsDescription.js';\nimport requireReturnsType from './rules/requireReturnsType.js';\nimport requireTemplate from './rules/requireTemplate.js';\nimport requireThrows from './rules/requireThrows.js';\nimport requireYields from './rules/requireYields.js';\nimport requireYieldsCheck from './rules/requireYieldsCheck.js';\nimport sortTags from './rules/sortTags.js';\nimport tagLines from './rules/tagLines.js';\nimport textEscaping from './rules/textEscaping.js';\nimport typeFormatting from './rules/typeFormatting.js';\nimport validTypes from './rules/validTypes.js';\n\n/**\n * @param {{\n * contexts: (string|{\n * comment: string,\n * context: string,\n * message: string\n * })[],\n * description?: string,\n * contextName?: string\n * url?: string,\n * }} cfg\n * @returns {import('@eslint/core').RuleDefinition<\n * import('@eslint/core').RuleDefinitionTypeOptions\n * >}\n */\nexport const buildForbidRuleDefinition = ({\n contextName,\n contexts,\n description,\n url,\n}) => {\n return iterateJsdoc(({\n // context,\n info: {\n comment,\n },\n report,\n utils,\n }) => {\n const {\n contextStr,\n foundContext,\n } = utils.findContext(contexts, comment);\n\n // We are not on the *particular* matching context/comment, so don't assume\n // we need reporting\n if (!foundContext) {\n return;\n }\n\n const message = /** @type {import('./iterateJsdoc.js').ContextObject} */ (\n foundContext\n )?.message ??\n 'Syntax is restricted: {{context}}' +\n (comment ? ' with {{comment}}' : '');\n\n report(message, null, null, comment ? {\n comment,\n context: contextStr,\n } : {\n context: contextStr,\n });\n }, {\n contextSelected: true,\n meta: {\n docs: {\n description: description ?? contextName ?? 'Reports when certain comment structures are present.',\n url: url ?? 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/advanced.md#user-content-advanced-creating-your-own-rules',\n },\n fixable: 'code',\n schema: [],\n type: 'suggestion',\n },\n modifyContext: (context) => {\n // Reproduce context object with our own `contexts`\n const propertyDescriptors = Object.getOwnPropertyDescriptors(context);\n return Object.create(\n Object.getPrototypeOf(context),\n {\n ...propertyDescriptors,\n options: {\n ...propertyDescriptors.options,\n value: [\n {\n contexts,\n },\n ],\n },\n },\n );\n },\n nonGlobalSettings: true,\n });\n};\n\n/* eslint-disable jsdoc/valid-types -- Bug */\n/**\n * @typedef {\"recommended\" | \"stylistic\" | \"contents\" | \"logical\" | \"requirements\"} ConfigGroups\n * @typedef {\"\" | \"-typescript\" | \"-typescript-flavor\"} ConfigVariants\n * @typedef {\"\" | \"-error\"} ErrorLevelVariants\n * @type {import('eslint').ESLint.Plugin & {\n * configs: Record<`flat/${ConfigGroups}${ConfigVariants}${ErrorLevelVariants}`,\n * import('eslint').Linter.Config>|Record<\"examples\"|\"default-expressions\"|\"examples-and-default-expressions\", import('eslint').Linter.Config[]>\n * }}\n */\nconst index = {};\n/* eslint-enable jsdoc/valid-types -- Bug */\nindex.configs = {};\nindex.rules = {\n 'check-access': checkAccess,\n 'check-alignment': checkAlignment,\n 'check-examples': checkExamples,\n 'check-indentation': checkIndentation,\n 'check-line-alignment': checkLineAlignment,\n 'check-param-names': checkParamNames,\n 'check-property-names': checkPropertyNames,\n 'check-syntax': checkSyntax,\n 'check-tag-names': checkTagNames,\n 'check-template-names': checkTemplateNames,\n 'check-types': checkTypes,\n 'check-values': checkValues,\n 'convert-to-jsdoc-comments': convertToJsdocComments,\n 'empty-tags': emptyTags,\n 'implements-on-classes': implementsOnClasses,\n 'imports-as-dependencies': importsAsDependencies,\n 'informative-docs': informativeDocs,\n 'lines-before-block': linesBeforeBlock,\n 'match-description': matchDescription,\n 'match-name': matchName,\n 'multiline-blocks': multilineBlocks,\n 'no-bad-blocks': noBadBlocks,\n 'no-blank-block-descriptions': noBlankBlockDescriptions,\n 'no-blank-blocks': noBlankBlocks,\n 'no-defaults': noDefaults,\n 'no-missing-syntax': noMissingSyntax,\n 'no-multi-asterisks': noMultiAsterisks,\n 'no-restricted-syntax': noRestrictedSyntax,\n 'no-types': noTypes,\n 'no-undefined-types': noUndefinedTypes,\n 'require-asterisk-prefix': requireAsteriskPrefix,\n 'require-description': requireDescription,\n 'require-description-complete-sentence': requireDescriptionCompleteSentence,\n 'require-example': requireExample,\n 'require-file-overview': requireFileOverview,\n 'require-hyphen-before-param-description': requireHyphenBeforeParamDescription,\n 'require-jsdoc': requireJsdoc,\n 'require-next-type': buildForbidRuleDefinition({\n contexts: [\n {\n comment: 'JsdocBlock:has(JsdocTag[tag=next]:not([parsedType.type]))',\n context: 'any',\n message: '@next should have a type',\n },\n ],\n description: 'Requires a type for @next tags',\n url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-next-type.md#repos-sticky-header',\n }),\n 'require-param': requireParam,\n 'require-param-description': requireParamDescription,\n 'require-param-name': requireParamName,\n 'require-param-type': requireParamType,\n 'require-property': requireProperty,\n 'require-property-description': requirePropertyDescription,\n 'require-property-name': requirePropertyName,\n 'require-property-type': requirePropertyType,\n 'require-returns': requireReturns,\n 'require-returns-check': requireReturnsCheck,\n 'require-returns-description': requireReturnsDescription,\n 'require-returns-type': requireReturnsType,\n 'require-template': requireTemplate,\n 'require-throws': requireThrows,\n 'require-throws-type': buildForbidRuleDefinition({\n contexts: [\n {\n comment: 'JsdocBlock:has(JsdocTag[tag=throws]:not([parsedType.type]))',\n context: 'any',\n message: '@throws should have a type',\n },\n ],\n description: 'Requires a type for @throws tags',\n url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws-type.md#repos-sticky-header',\n }),\n 'require-yields': requireYields,\n 'require-yields-check': requireYieldsCheck,\n 'require-yields-type': buildForbidRuleDefinition({\n contexts: [\n {\n comment: 'JsdocBlock:has(JsdocTag[tag=yields]:not([parsedType.type]))',\n context: 'any',\n message: '@yields should have a type',\n },\n ],\n description: 'Requires a type for @yields tags',\n url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-type.md#repos-sticky-header',\n }),\n 'sort-tags': sortTags,\n 'tag-lines': tagLines,\n 'text-escaping': textEscaping,\n 'type-formatting': typeFormatting,\n 'valid-types': validTypes,\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.Config}\n */\nconst createRecommendedRuleset = (warnOrError, flatName) => {\n return {\n ...(flatName ? {\n name: 'jsdoc/' + flatName,\n } : {}),\n // @ts-expect-error ESLint 8 plugins\n plugins:\n flatName ? {\n jsdoc: index,\n } : [\n 'jsdoc',\n ],\n rules: {\n 'jsdoc/check-access': warnOrError,\n 'jsdoc/check-alignment': warnOrError,\n 'jsdoc/check-examples': 'off',\n 'jsdoc/check-indentation': 'off',\n 'jsdoc/check-line-alignment': 'off',\n 'jsdoc/check-param-names': warnOrError,\n 'jsdoc/check-property-names': warnOrError,\n 'jsdoc/check-syntax': 'off',\n 'jsdoc/check-tag-names': warnOrError,\n 'jsdoc/check-template-names': 'off',\n 'jsdoc/check-types': warnOrError,\n 'jsdoc/check-values': warnOrError,\n 'jsdoc/convert-to-jsdoc-comments': 'off',\n 'jsdoc/empty-tags': warnOrError,\n 'jsdoc/implements-on-classes': warnOrError,\n 'jsdoc/imports-as-dependencies': 'off',\n 'jsdoc/informative-docs': 'off',\n 'jsdoc/lines-before-block': 'off',\n 'jsdoc/match-description': 'off',\n 'jsdoc/match-name': 'off',\n 'jsdoc/multiline-blocks': warnOrError,\n 'jsdoc/no-bad-blocks': 'off',\n 'jsdoc/no-blank-block-descriptions': 'off',\n 'jsdoc/no-blank-blocks': 'off',\n 'jsdoc/no-defaults': warnOrError,\n 'jsdoc/no-missing-syntax': 'off',\n 'jsdoc/no-multi-asterisks': warnOrError,\n 'jsdoc/no-restricted-syntax': 'off',\n 'jsdoc/no-types': 'off',\n 'jsdoc/no-undefined-types': warnOrError,\n 'jsdoc/require-asterisk-prefix': 'off',\n 'jsdoc/require-description': 'off',\n 'jsdoc/require-description-complete-sentence': 'off',\n 'jsdoc/require-example': 'off',\n 'jsdoc/require-file-overview': 'off',\n 'jsdoc/require-hyphen-before-param-description': 'off',\n 'jsdoc/require-jsdoc': warnOrError,\n 'jsdoc/require-next-type': warnOrError,\n 'jsdoc/require-param': warnOrError,\n 'jsdoc/require-param-description': warnOrError,\n 'jsdoc/require-param-name': warnOrError,\n 'jsdoc/require-param-type': warnOrError,\n 'jsdoc/require-property': warnOrError,\n 'jsdoc/require-property-description': warnOrError,\n 'jsdoc/require-property-name': warnOrError,\n 'jsdoc/require-property-type': warnOrError,\n 'jsdoc/require-returns': warnOrError,\n 'jsdoc/require-returns-check': warnOrError,\n 'jsdoc/require-returns-description': warnOrError,\n 'jsdoc/require-returns-type': warnOrError,\n 'jsdoc/require-template': 'off',\n 'jsdoc/require-throws': 'off',\n 'jsdoc/require-throws-type': warnOrError,\n 'jsdoc/require-yields': warnOrError,\n 'jsdoc/require-yields-check': warnOrError,\n 'jsdoc/require-yields-type': warnOrError,\n 'jsdoc/sort-tags': 'off',\n 'jsdoc/tag-lines': warnOrError,\n 'jsdoc/text-escaping': 'off',\n 'jsdoc/type-formatting': 'off',\n 'jsdoc/valid-types': warnOrError,\n },\n };\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.Config}\n */\nconst createRecommendedTypeScriptRuleset = (warnOrError, flatName) => {\n const ruleset = createRecommendedRuleset(warnOrError, flatName);\n\n return {\n ...ruleset,\n rules: {\n ...ruleset.rules,\n /* eslint-disable @stylistic/indent -- Extra indent to avoid use by auto-rule-editing */\n 'jsdoc/check-tag-names': [\n warnOrError, {\n typed: true,\n },\n ],\n 'jsdoc/no-types': warnOrError,\n 'jsdoc/no-undefined-types': 'off',\n 'jsdoc/require-param-type': 'off',\n 'jsdoc/require-property-type': 'off',\n 'jsdoc/require-returns-type': 'off',\n /* eslint-enable @stylistic/indent */\n },\n };\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.Config}\n */\nconst createRecommendedTypeScriptFlavorRuleset = (warnOrError, flatName) => {\n const ruleset = createRecommendedRuleset(warnOrError, flatName);\n\n return {\n ...ruleset,\n rules: {\n ...ruleset.rules,\n /* eslint-disable @stylistic/indent -- Extra indent to avoid use by auto-rule-editing */\n 'jsdoc/no-undefined-types': 'off',\n /* eslint-enable @stylistic/indent */\n },\n };\n};\n\n/**\n * @param {(string | unknown[])[]} ruleNames\n */\nconst createStandaloneRulesetFactory = (ruleNames) => {\n /**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.Config}\n */\n return (warnOrError, flatName) => {\n return {\n name: 'jsdoc/' + flatName,\n plugins: {\n jsdoc: index,\n },\n rules: Object.fromEntries(\n ruleNames.map(\n (ruleName) => {\n return (typeof ruleName === 'string' ?\n [\n ruleName, warnOrError,\n ] :\n [\n ruleName[0], [\n warnOrError, ...ruleName.slice(1),\n ],\n ]);\n },\n ),\n ),\n };\n };\n};\n\nconst contentsRules = [\n 'jsdoc/informative-docs',\n 'jsdoc/match-description',\n 'jsdoc/no-blank-block-descriptions',\n 'jsdoc/no-blank-blocks',\n [\n 'jsdoc/text-escaping', {\n escapeHTML: true,\n },\n ],\n];\n\nconst createContentsTypescriptRuleset = createStandaloneRulesetFactory(contentsRules);\n\nconst createContentsTypescriptFlavorRuleset = createStandaloneRulesetFactory(contentsRules);\n\nconst logicalRules = [\n 'jsdoc/check-access',\n 'jsdoc/check-param-names',\n 'jsdoc/check-property-names',\n 'jsdoc/check-syntax',\n 'jsdoc/check-tag-names',\n 'jsdoc/check-template-names',\n 'jsdoc/check-types',\n 'jsdoc/check-values',\n 'jsdoc/empty-tags',\n 'jsdoc/implements-on-classes',\n 'jsdoc/require-returns-check',\n 'jsdoc/require-yields-check',\n 'jsdoc/no-bad-blocks',\n 'jsdoc/no-defaults',\n 'jsdoc/no-types',\n 'jsdoc/no-undefined-types',\n 'jsdoc/valid-types',\n];\n\nconst createLogicalTypescriptRuleset = createStandaloneRulesetFactory(logicalRules);\n\nconst createLogicalTypescriptFlavorRuleset = createStandaloneRulesetFactory(logicalRules);\n\nconst requirementsRules = [\n 'jsdoc/require-example',\n 'jsdoc/require-jsdoc',\n 'jsdoc/require-next-type',\n 'jsdoc/require-param',\n 'jsdoc/require-param-description',\n 'jsdoc/require-param-name',\n 'jsdoc/require-property',\n 'jsdoc/require-property-description',\n 'jsdoc/require-property-name',\n 'jsdoc/require-returns',\n 'jsdoc/require-returns-description',\n 'jsdoc/require-throws-type',\n 'jsdoc/require-yields',\n 'jsdoc/require-yields-type',\n];\n\nconst createRequirementsTypeScriptRuleset = createStandaloneRulesetFactory(requirementsRules);\n\nconst createRequirementsTypeScriptFlavorRuleset = createStandaloneRulesetFactory([\n ...requirementsRules,\n 'jsdoc/require-param-type',\n 'jsdoc/require-property-type',\n 'jsdoc/require-returns-type',\n 'jsdoc/require-template',\n]);\n\nconst stylisticRules = [\n 'jsdoc/check-alignment',\n 'jsdoc/check-line-alignment',\n 'jsdoc/lines-before-block',\n 'jsdoc/multiline-blocks',\n 'jsdoc/no-multi-asterisks',\n 'jsdoc/require-asterisk-prefix',\n [\n 'jsdoc/require-hyphen-before-param-description', 'never',\n ],\n 'jsdoc/tag-lines',\n];\n\nconst createStylisticTypeScriptRuleset = createStandaloneRulesetFactory(stylisticRules);\n\nconst createStylisticTypeScriptFlavorRuleset = createStandaloneRulesetFactory(stylisticRules);\n\n/* c8 ignore next 3 -- TS */\nif (!index.configs) {\n throw new Error('TypeScript guard');\n}\n\nindex.configs.recommended = createRecommendedRuleset('warn');\nindex.configs['recommended-error'] = createRecommendedRuleset('error');\nindex.configs['recommended-typescript'] = createRecommendedTypeScriptRuleset('warn');\nindex.configs['recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error');\nindex.configs['recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn');\nindex.configs['recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error');\n\nindex.configs['flat/recommended'] = createRecommendedRuleset('warn', 'flat/recommended');\nindex.configs['flat/recommended-error'] = createRecommendedRuleset('error', 'flat/recommended-error');\nindex.configs['flat/recommended-typescript'] = createRecommendedTypeScriptRuleset('warn', 'flat/recommended-typescript');\nindex.configs['flat/recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error', 'flat/recommended-typescript-error');\nindex.configs['flat/recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn', 'flat/recommended-typescript-flavor');\nindex.configs['flat/recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error', 'flat/recommended-typescript-flavor-error');\n\nindex.configs['flat/contents-typescript'] = createContentsTypescriptRuleset('warn', 'flat/contents-typescript');\nindex.configs['flat/contents-typescript-error'] = createContentsTypescriptRuleset('error', 'flat/contents-typescript-error');\nindex.configs['flat/contents-typescript-flavor'] = createContentsTypescriptFlavorRuleset('warn', 'flat/contents-typescript-flavor');\nindex.configs['flat/contents-typescript-flavor-error'] = createContentsTypescriptFlavorRuleset('error', 'flat/contents-typescript-error-flavor');\nindex.configs['flat/logical-typescript'] = createLogicalTypescriptRuleset('warn', 'flat/logical-typescript');\nindex.configs['flat/logical-typescript-error'] = createLogicalTypescriptRuleset('error', 'flat/logical-typescript-error');\nindex.configs['flat/logical-typescript-flavor'] = createLogicalTypescriptFlavorRuleset('warn', 'flat/logical-typescript-flavor');\nindex.configs['flat/logical-typescript-flavor-error'] = createLogicalTypescriptFlavorRuleset('error', 'flat/logical-typescript-error-flavor');\nindex.configs['flat/requirements-typescript'] = createRequirementsTypeScriptRuleset('warn', 'flat/requirements-typescript');\nindex.configs['flat/requirements-typescript-error'] = createRequirementsTypeScriptRuleset('error', 'flat/requirements-typescript-error');\nindex.configs['flat/requirements-typescript-flavor'] = createRequirementsTypeScriptFlavorRuleset('warn', 'flat/requirements-typescript-flavor');\nindex.configs['flat/requirements-typescript-flavor-error'] = createRequirementsTypeScriptFlavorRuleset('error', 'flat/requirements-typescript-error-flavor');\nindex.configs['flat/stylistic-typescript'] = createStylisticTypeScriptRuleset('warn', 'flat/stylistic-typescript');\nindex.configs['flat/stylistic-typescript-error'] = createStylisticTypeScriptRuleset('error', 'flat/stylistic-typescript-error');\nindex.configs['flat/stylistic-typescript-flavor'] = createStylisticTypeScriptFlavorRuleset('warn', 'flat/stylistic-typescript-flavor');\nindex.configs['flat/stylistic-typescript-flavor-error'] = createStylisticTypeScriptFlavorRuleset('error', 'flat/stylistic-typescript-error-flavor');\n\nindex.configs.examples = /** @type {import('eslint').Linter.Config[]} */ ([\n {\n files: [\n '**/*.js',\n ],\n name: 'jsdoc/examples/processor',\n plugins: {\n examples: getJsdocProcessorPlugin(),\n },\n processor: 'examples/examples',\n },\n {\n files: [\n '**/*.md/*.js',\n ],\n name: 'jsdoc/examples/rules',\n rules: {\n // \"always\" newline rule at end unlikely in sample code\n '@stylistic/eol-last': 0,\n // Often wish to start `@example` code after newline; also may use\n // empty lines for spacing\n '@stylistic/no-multiple-empty-lines': 0,\n\n // Can generally look nicer to pad a little even if code imposes more stringency\n '@stylistic/padded-blocks': 0,\n\n '@typescript-eslint/no-unused-vars': 0,\n\n // \"always\" newline rule at end unlikely in sample code\n 'eol-last': 0,\n\n // Wouldn't generally expect example paths to resolve relative to JS file\n 'import/no-unresolved': 0,\n\n // Snippets likely too short to always include import/export info\n 'import/unambiguous': 0,\n\n 'jsdoc/require-file-overview': 0,\n\n // The end of a multiline comment would end the comment the example is in.\n 'jsdoc/require-jsdoc': 0,\n\n // See import/no-unresolved\n 'n/no-missing-import': 0,\n\n 'n/no-missing-require': 0,\n\n // Unlikely to have inadvertent debugging within examples\n 'no-console': 0,\n\n // Often wish to start `@example` code after newline; also may use\n // empty lines for spacing\n 'no-multiple-empty-lines': 0,\n\n // Many variables in examples will be `undefined`\n 'no-undef': 0,\n // Common to define variables for clarity without always using them\n 'no-unused-vars': 0,\n\n // See import/no-unresolved\n 'node/no-missing-import': 0,\n 'node/no-missing-require': 0,\n\n // Can generally look nicer to pad a little even if code imposes more stringency\n 'padded-blocks': 0,\n },\n },\n]);\n\nindex.configs['default-expressions'] = /** @type {import('eslint').Linter.Config[]} */ ([\n {\n files: [\n '**/*.js',\n ],\n name: 'jsdoc/default-expressions/processor',\n plugins: {\n examples: getJsdocProcessorPlugin({\n checkDefaults: true,\n checkParams: true,\n checkProperties: true,\n }),\n },\n processor: 'examples/examples',\n },\n {\n files: [\n '**/*.jsdoc-defaults', '**/*.jsdoc-params', '**/*.jsdoc-properties',\n ],\n name: 'jsdoc/default-expressions/rules',\n rules: {\n ...index.configs.examples[1].rules,\n '@stylistic/quotes': [\n 'error', 'double',\n ],\n '@stylistic/semi': [\n 'error', 'never',\n ],\n '@typescript-eslint/no-unused-expressions': 0,\n 'chai-friendly/no-unused-expressions': 0,\n 'no-empty-function': 0,\n 'no-new': 0,\n 'no-unused-expressions': 0,\n quotes: [\n 'error', 'double',\n ],\n semi: [\n 'error', 'never',\n ],\n strict: 0,\n },\n },\n]);\n\nindex.configs['examples-and-default-expressions'] = /** @type {import('eslint').Linter.Config[]} */ ([\n {\n name: 'jsdoc/examples-and-default-expressions',\n plugins: {\n examples: getJsdocProcessorPlugin({\n checkDefaults: true,\n checkParams: true,\n checkProperties: true,\n }),\n },\n },\n ...index.configs.examples.map((config) => {\n return {\n ...config,\n plugins: {},\n };\n }),\n ...index.configs['default-expressions'].map((config) => {\n return {\n ...config,\n plugins: {},\n };\n }),\n]);\n\nexport default index;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index-cjs.cjs","names":["_buildForbidRuleDefinition","require","_getJsdocProcessorPlugin","_checkAccess","_interopRequireDefault","_checkAlignment","_checkExamples","_checkIndentation","_checkLineAlignment","_checkParamNames","_checkPropertyNames","_checkSyntax","_checkTagNames","_checkTemplateNames","_checkTypes","_checkValues","_convertToJsdocComments","_emptyTags","_implementsOnClasses","_importsAsDependencies","_informativeDocs","_linesBeforeBlock","_matchDescription","_matchName","_multilineBlocks","_noBadBlocks","_noBlankBlockDescriptions","_noBlankBlocks","_noDefaults","_noMissingSyntax","_noMultiAsterisks","_noRestrictedSyntax","_noTypes","_noUndefinedTypes","_requireAsteriskPrefix","_requireDescription","_requireDescriptionCompleteSentence","_requireExample","_requireFileOverview","_requireHyphenBeforeParamDescription","_requireJsdoc","_requireParam","_requireParamDescription","_requireParamName","_requireParamType","_requireProperty","_requirePropertyDescription","_requirePropertyName","_requirePropertyType","_requireReturns","_requireReturnsCheck","_requireReturnsDescription","_requireReturnsType","_requireTemplate","_requireThrows","_requireYields","_requireYieldsCheck","_sortTags","_tagLines","_textEscaping","_typeFormatting","_validTypes","e","__esModule","default","index","configs","rules","checkAccess","checkAlignment","checkExamples","checkIndentation","checkLineAlignment","checkParamNames","checkPropertyNames","checkSyntax","checkTagNames","checkTemplateNames","checkTypes","checkValues","convertToJsdocComments","emptyTags","implementsOnClasses","importsAsDependencies","informativeDocs","linesBeforeBlock","matchDescription","matchName","multilineBlocks","noBadBlocks","noBlankBlockDescriptions","noBlankBlocks","noDefaults","noMissingSyntax","noMultiAsterisks","noRestrictedSyntax","noTypes","noUndefinedTypes","requireAsteriskPrefix","requireDescription","requireDescriptionCompleteSentence","requireExample","requireFileOverview","requireHyphenBeforeParamDescription","requireJsdoc","buildForbidRuleDefinition","contexts","comment","context","message","description","url","requireParam","requireParamDescription","requireParamName","requireParamType","requireProperty","requirePropertyDescription","requirePropertyName","requirePropertyType","requireReturns","requireReturnsCheck","requireReturnsDescription","requireReturnsType","requireTemplate","requireThrows","requireYields","requireYieldsCheck","sortTags","tagLines","textEscaping","typeFormatting","validTypes","createRecommendedRuleset","warnOrError","flatName","name","plugins","jsdoc","createRecommendedTypeScriptRuleset","ruleset","typed","createRecommendedTypeScriptFlavorRuleset","createStandaloneRulesetFactory","ruleNames","Object","fromEntries","map","ruleName","slice","contentsRules","escapeHTML","createContentsTypescriptRuleset","createContentsTypescriptFlavorRuleset","logicalRules","createLogicalTypescriptRuleset","createLogicalTypescriptFlavorRuleset","requirementsRules","createRequirementsTypeScriptRuleset","createRequirementsTypeScriptFlavorRuleset","stylisticRules","createStylisticTypeScriptRuleset","createStylisticTypeScriptFlavorRuleset","Error","recommended","examples","files","getJsdocProcessorPlugin","processor","checkDefaults","checkParams","checkProperties","quotes","semi","strict","config","_default","exports","module"],"sources":["../src/index-cjs.js"],"sourcesContent":["import {\n buildForbidRuleDefinition,\n} from './buildForbidRuleDefinition.js';\nimport {\n getJsdocProcessorPlugin,\n} from './getJsdocProcessorPlugin.js';\nimport checkAccess from './rules/checkAccess.js';\nimport checkAlignment from './rules/checkAlignment.js';\nimport checkExamples from './rules/checkExamples.js';\nimport checkIndentation from './rules/checkIndentation.js';\nimport checkLineAlignment from './rules/checkLineAlignment.js';\nimport checkParamNames from './rules/checkParamNames.js';\nimport checkPropertyNames from './rules/checkPropertyNames.js';\nimport checkSyntax from './rules/checkSyntax.js';\nimport checkTagNames from './rules/checkTagNames.js';\nimport checkTemplateNames from './rules/checkTemplateNames.js';\nimport checkTypes from './rules/checkTypes.js';\nimport checkValues from './rules/checkValues.js';\nimport convertToJsdocComments from './rules/convertToJsdocComments.js';\nimport emptyTags from './rules/emptyTags.js';\nimport implementsOnClasses from './rules/implementsOnClasses.js';\nimport importsAsDependencies from './rules/importsAsDependencies.js';\nimport informativeDocs from './rules/informativeDocs.js';\nimport linesBeforeBlock from './rules/linesBeforeBlock.js';\nimport matchDescription from './rules/matchDescription.js';\nimport matchName from './rules/matchName.js';\nimport multilineBlocks from './rules/multilineBlocks.js';\nimport noBadBlocks from './rules/noBadBlocks.js';\nimport noBlankBlockDescriptions from './rules/noBlankBlockDescriptions.js';\nimport noBlankBlocks from './rules/noBlankBlocks.js';\nimport noDefaults from './rules/noDefaults.js';\nimport noMissingSyntax from './rules/noMissingSyntax.js';\nimport noMultiAsterisks from './rules/noMultiAsterisks.js';\nimport noRestrictedSyntax from './rules/noRestrictedSyntax.js';\nimport noTypes from './rules/noTypes.js';\nimport noUndefinedTypes from './rules/noUndefinedTypes.js';\nimport requireAsteriskPrefix from './rules/requireAsteriskPrefix.js';\nimport requireDescription from './rules/requireDescription.js';\nimport requireDescriptionCompleteSentence from './rules/requireDescriptionCompleteSentence.js';\nimport requireExample from './rules/requireExample.js';\nimport requireFileOverview from './rules/requireFileOverview.js';\nimport requireHyphenBeforeParamDescription from './rules/requireHyphenBeforeParamDescription.js';\nimport requireJsdoc from './rules/requireJsdoc.js';\nimport requireParam from './rules/requireParam.js';\nimport requireParamDescription from './rules/requireParamDescription.js';\nimport requireParamName from './rules/requireParamName.js';\nimport requireParamType from './rules/requireParamType.js';\nimport requireProperty from './rules/requireProperty.js';\nimport requirePropertyDescription from './rules/requirePropertyDescription.js';\nimport requirePropertyName from './rules/requirePropertyName.js';\nimport requirePropertyType from './rules/requirePropertyType.js';\nimport requireReturns from './rules/requireReturns.js';\nimport requireReturnsCheck from './rules/requireReturnsCheck.js';\nimport requireReturnsDescription from './rules/requireReturnsDescription.js';\nimport requireReturnsType from './rules/requireReturnsType.js';\nimport requireTemplate from './rules/requireTemplate.js';\nimport requireThrows from './rules/requireThrows.js';\nimport requireYields from './rules/requireYields.js';\nimport requireYieldsCheck from './rules/requireYieldsCheck.js';\nimport sortTags from './rules/sortTags.js';\nimport tagLines from './rules/tagLines.js';\nimport textEscaping from './rules/textEscaping.js';\nimport typeFormatting from './rules/typeFormatting.js';\nimport validTypes from './rules/validTypes.js';\n\n/* eslint-disable jsdoc/valid-types -- Bug */\n/**\n * @typedef {\"recommended\" | \"stylistic\" | \"contents\" | \"logical\" | \"requirements\"} ConfigGroups\n * @typedef {\"\" | \"-typescript\" | \"-typescript-flavor\"} ConfigVariants\n * @typedef {\"\" | \"-error\"} ErrorLevelVariants\n * @type {import('eslint').ESLint.Plugin & {\n * configs: Record<`flat/${ConfigGroups}${ConfigVariants}${ErrorLevelVariants}`,\n * import('eslint').Linter.Config>|Record<\"examples\"|\"default-expressions\"|\"examples-and-default-expressions\", import('eslint').Linter.Config[]>\n * }}\n */\nconst index = {};\n/* eslint-enable jsdoc/valid-types -- Bug */\nindex.configs = {};\nindex.rules = {\n 'check-access': checkAccess,\n 'check-alignment': checkAlignment,\n 'check-examples': checkExamples,\n 'check-indentation': checkIndentation,\n 'check-line-alignment': checkLineAlignment,\n 'check-param-names': checkParamNames,\n 'check-property-names': checkPropertyNames,\n 'check-syntax': checkSyntax,\n 'check-tag-names': checkTagNames,\n 'check-template-names': checkTemplateNames,\n 'check-types': checkTypes,\n 'check-values': checkValues,\n 'convert-to-jsdoc-comments': convertToJsdocComments,\n 'empty-tags': emptyTags,\n 'implements-on-classes': implementsOnClasses,\n 'imports-as-dependencies': importsAsDependencies,\n 'informative-docs': informativeDocs,\n 'lines-before-block': linesBeforeBlock,\n 'match-description': matchDescription,\n 'match-name': matchName,\n 'multiline-blocks': multilineBlocks,\n 'no-bad-blocks': noBadBlocks,\n 'no-blank-block-descriptions': noBlankBlockDescriptions,\n 'no-blank-blocks': noBlankBlocks,\n 'no-defaults': noDefaults,\n 'no-missing-syntax': noMissingSyntax,\n 'no-multi-asterisks': noMultiAsterisks,\n 'no-restricted-syntax': noRestrictedSyntax,\n 'no-types': noTypes,\n 'no-undefined-types': noUndefinedTypes,\n 'require-asterisk-prefix': requireAsteriskPrefix,\n 'require-description': requireDescription,\n 'require-description-complete-sentence': requireDescriptionCompleteSentence,\n 'require-example': requireExample,\n 'require-file-overview': requireFileOverview,\n 'require-hyphen-before-param-description': requireHyphenBeforeParamDescription,\n 'require-jsdoc': requireJsdoc,\n 'require-next-type': buildForbidRuleDefinition({\n contexts: [\n {\n comment: 'JsdocBlock:has(JsdocTag[tag=next]:not([parsedType.type]))',\n context: 'any',\n message: '@next should have a type',\n },\n ],\n description: 'Requires a type for @next tags',\n url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-next-type.md#repos-sticky-header',\n }),\n 'require-param': requireParam,\n 'require-param-description': requireParamDescription,\n 'require-param-name': requireParamName,\n 'require-param-type': requireParamType,\n 'require-property': requireProperty,\n 'require-property-description': requirePropertyDescription,\n 'require-property-name': requirePropertyName,\n 'require-property-type': requirePropertyType,\n 'require-returns': requireReturns,\n 'require-returns-check': requireReturnsCheck,\n 'require-returns-description': requireReturnsDescription,\n 'require-returns-type': requireReturnsType,\n 'require-template': requireTemplate,\n 'require-throws': requireThrows,\n 'require-throws-type': buildForbidRuleDefinition({\n contexts: [\n {\n comment: 'JsdocBlock:has(JsdocTag[tag=throws]:not([parsedType.type]))',\n context: 'any',\n message: '@throws should have a type',\n },\n ],\n description: 'Requires a type for @throws tags',\n url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws-type.md#repos-sticky-header',\n }),\n 'require-yields': requireYields,\n 'require-yields-check': requireYieldsCheck,\n 'require-yields-type': buildForbidRuleDefinition({\n contexts: [\n {\n comment: 'JsdocBlock:has(JsdocTag[tag=yields]:not([parsedType.type]))',\n context: 'any',\n message: '@yields should have a type',\n },\n ],\n description: 'Requires a type for @yields tags',\n url: 'https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-type.md#repos-sticky-header',\n }),\n 'sort-tags': sortTags,\n 'tag-lines': tagLines,\n 'text-escaping': textEscaping,\n 'type-formatting': typeFormatting,\n 'valid-types': validTypes,\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.Config}\n */\nconst createRecommendedRuleset = (warnOrError, flatName) => {\n return {\n ...(flatName ? {\n name: 'jsdoc/' + flatName,\n } : {}),\n // @ts-expect-error ESLint 8 plugins\n plugins:\n flatName ? {\n jsdoc: index,\n } : [\n 'jsdoc',\n ],\n rules: {\n 'jsdoc/check-access': warnOrError,\n 'jsdoc/check-alignment': warnOrError,\n 'jsdoc/check-examples': 'off',\n 'jsdoc/check-indentation': 'off',\n 'jsdoc/check-line-alignment': 'off',\n 'jsdoc/check-param-names': warnOrError,\n 'jsdoc/check-property-names': warnOrError,\n 'jsdoc/check-syntax': 'off',\n 'jsdoc/check-tag-names': warnOrError,\n 'jsdoc/check-template-names': 'off',\n 'jsdoc/check-types': warnOrError,\n 'jsdoc/check-values': warnOrError,\n 'jsdoc/convert-to-jsdoc-comments': 'off',\n 'jsdoc/empty-tags': warnOrError,\n 'jsdoc/implements-on-classes': warnOrError,\n 'jsdoc/imports-as-dependencies': 'off',\n 'jsdoc/informative-docs': 'off',\n 'jsdoc/lines-before-block': 'off',\n 'jsdoc/match-description': 'off',\n 'jsdoc/match-name': 'off',\n 'jsdoc/multiline-blocks': warnOrError,\n 'jsdoc/no-bad-blocks': 'off',\n 'jsdoc/no-blank-block-descriptions': 'off',\n 'jsdoc/no-blank-blocks': 'off',\n 'jsdoc/no-defaults': warnOrError,\n 'jsdoc/no-missing-syntax': 'off',\n 'jsdoc/no-multi-asterisks': warnOrError,\n 'jsdoc/no-restricted-syntax': 'off',\n 'jsdoc/no-types': 'off',\n 'jsdoc/no-undefined-types': warnOrError,\n 'jsdoc/require-asterisk-prefix': 'off',\n 'jsdoc/require-description': 'off',\n 'jsdoc/require-description-complete-sentence': 'off',\n 'jsdoc/require-example': 'off',\n 'jsdoc/require-file-overview': 'off',\n 'jsdoc/require-hyphen-before-param-description': 'off',\n 'jsdoc/require-jsdoc': warnOrError,\n 'jsdoc/require-next-type': warnOrError,\n 'jsdoc/require-param': warnOrError,\n 'jsdoc/require-param-description': warnOrError,\n 'jsdoc/require-param-name': warnOrError,\n 'jsdoc/require-param-type': warnOrError,\n 'jsdoc/require-property': warnOrError,\n 'jsdoc/require-property-description': warnOrError,\n 'jsdoc/require-property-name': warnOrError,\n 'jsdoc/require-property-type': warnOrError,\n 'jsdoc/require-returns': warnOrError,\n 'jsdoc/require-returns-check': warnOrError,\n 'jsdoc/require-returns-description': warnOrError,\n 'jsdoc/require-returns-type': warnOrError,\n 'jsdoc/require-template': 'off',\n 'jsdoc/require-throws': 'off',\n 'jsdoc/require-throws-type': warnOrError,\n 'jsdoc/require-yields': warnOrError,\n 'jsdoc/require-yields-check': warnOrError,\n 'jsdoc/require-yields-type': warnOrError,\n 'jsdoc/sort-tags': 'off',\n 'jsdoc/tag-lines': warnOrError,\n 'jsdoc/text-escaping': 'off',\n 'jsdoc/type-formatting': 'off',\n 'jsdoc/valid-types': warnOrError,\n },\n };\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.Config}\n */\nconst createRecommendedTypeScriptRuleset = (warnOrError, flatName) => {\n const ruleset = createRecommendedRuleset(warnOrError, flatName);\n\n return {\n ...ruleset,\n rules: {\n ...ruleset.rules,\n /* eslint-disable @stylistic/indent -- Extra indent to avoid use by auto-rule-editing */\n 'jsdoc/check-tag-names': [\n warnOrError, {\n typed: true,\n },\n ],\n 'jsdoc/no-types': warnOrError,\n 'jsdoc/no-undefined-types': 'off',\n 'jsdoc/require-param-type': 'off',\n 'jsdoc/require-property-type': 'off',\n 'jsdoc/require-returns-type': 'off',\n /* eslint-enable @stylistic/indent */\n },\n };\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.Config}\n */\nconst createRecommendedTypeScriptFlavorRuleset = (warnOrError, flatName) => {\n const ruleset = createRecommendedRuleset(warnOrError, flatName);\n\n return {\n ...ruleset,\n rules: {\n ...ruleset.rules,\n /* eslint-disable @stylistic/indent -- Extra indent to avoid use by auto-rule-editing */\n 'jsdoc/no-undefined-types': 'off',\n /* eslint-enable @stylistic/indent */\n },\n };\n};\n\n/**\n * @param {(string | unknown[])[]} ruleNames\n */\nconst createStandaloneRulesetFactory = (ruleNames) => {\n /**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.Config}\n */\n return (warnOrError, flatName) => {\n return {\n name: 'jsdoc/' + flatName,\n plugins: {\n jsdoc: index,\n },\n rules: Object.fromEntries(\n ruleNames.map(\n (ruleName) => {\n return (typeof ruleName === 'string' ?\n [\n ruleName, warnOrError,\n ] :\n [\n ruleName[0], [\n warnOrError, ...ruleName.slice(1),\n ],\n ]);\n },\n ),\n ),\n };\n };\n};\n\nconst contentsRules = [\n 'jsdoc/informative-docs',\n 'jsdoc/match-description',\n 'jsdoc/no-blank-block-descriptions',\n 'jsdoc/no-blank-blocks',\n [\n 'jsdoc/text-escaping', {\n escapeHTML: true,\n },\n ],\n];\n\nconst createContentsTypescriptRuleset = createStandaloneRulesetFactory(contentsRules);\n\nconst createContentsTypescriptFlavorRuleset = createStandaloneRulesetFactory(contentsRules);\n\nconst logicalRules = [\n 'jsdoc/check-access',\n 'jsdoc/check-param-names',\n 'jsdoc/check-property-names',\n 'jsdoc/check-syntax',\n 'jsdoc/check-tag-names',\n 'jsdoc/check-template-names',\n 'jsdoc/check-types',\n 'jsdoc/check-values',\n 'jsdoc/empty-tags',\n 'jsdoc/implements-on-classes',\n 'jsdoc/require-returns-check',\n 'jsdoc/require-yields-check',\n 'jsdoc/no-bad-blocks',\n 'jsdoc/no-defaults',\n 'jsdoc/no-types',\n 'jsdoc/no-undefined-types',\n 'jsdoc/valid-types',\n];\n\nconst createLogicalTypescriptRuleset = createStandaloneRulesetFactory(logicalRules);\n\nconst createLogicalTypescriptFlavorRuleset = createStandaloneRulesetFactory(logicalRules);\n\nconst requirementsRules = [\n 'jsdoc/require-example',\n 'jsdoc/require-jsdoc',\n 'jsdoc/require-next-type',\n 'jsdoc/require-param',\n 'jsdoc/require-param-description',\n 'jsdoc/require-param-name',\n 'jsdoc/require-property',\n 'jsdoc/require-property-description',\n 'jsdoc/require-property-name',\n 'jsdoc/require-returns',\n 'jsdoc/require-returns-description',\n 'jsdoc/require-throws-type',\n 'jsdoc/require-yields',\n 'jsdoc/require-yields-type',\n];\n\nconst createRequirementsTypeScriptRuleset = createStandaloneRulesetFactory(requirementsRules);\n\nconst createRequirementsTypeScriptFlavorRuleset = createStandaloneRulesetFactory([\n ...requirementsRules,\n 'jsdoc/require-param-type',\n 'jsdoc/require-property-type',\n 'jsdoc/require-returns-type',\n 'jsdoc/require-template',\n]);\n\nconst stylisticRules = [\n 'jsdoc/check-alignment',\n 'jsdoc/check-line-alignment',\n 'jsdoc/lines-before-block',\n 'jsdoc/multiline-blocks',\n 'jsdoc/no-multi-asterisks',\n 'jsdoc/require-asterisk-prefix',\n [\n 'jsdoc/require-hyphen-before-param-description', 'never',\n ],\n 'jsdoc/tag-lines',\n];\n\nconst createStylisticTypeScriptRuleset = createStandaloneRulesetFactory(stylisticRules);\n\nconst createStylisticTypeScriptFlavorRuleset = createStandaloneRulesetFactory(stylisticRules);\n\n/* c8 ignore next 3 -- TS */\nif (!index.configs) {\n throw new Error('TypeScript guard');\n}\n\nindex.configs.recommended = createRecommendedRuleset('warn');\nindex.configs['recommended-error'] = createRecommendedRuleset('error');\nindex.configs['recommended-typescript'] = createRecommendedTypeScriptRuleset('warn');\nindex.configs['recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error');\nindex.configs['recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn');\nindex.configs['recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error');\n\nindex.configs['flat/recommended'] = createRecommendedRuleset('warn', 'flat/recommended');\nindex.configs['flat/recommended-error'] = createRecommendedRuleset('error', 'flat/recommended-error');\nindex.configs['flat/recommended-typescript'] = createRecommendedTypeScriptRuleset('warn', 'flat/recommended-typescript');\nindex.configs['flat/recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error', 'flat/recommended-typescript-error');\nindex.configs['flat/recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn', 'flat/recommended-typescript-flavor');\nindex.configs['flat/recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error', 'flat/recommended-typescript-flavor-error');\n\nindex.configs['flat/contents-typescript'] = createContentsTypescriptRuleset('warn', 'flat/contents-typescript');\nindex.configs['flat/contents-typescript-error'] = createContentsTypescriptRuleset('error', 'flat/contents-typescript-error');\nindex.configs['flat/contents-typescript-flavor'] = createContentsTypescriptFlavorRuleset('warn', 'flat/contents-typescript-flavor');\nindex.configs['flat/contents-typescript-flavor-error'] = createContentsTypescriptFlavorRuleset('error', 'flat/contents-typescript-error-flavor');\nindex.configs['flat/logical-typescript'] = createLogicalTypescriptRuleset('warn', 'flat/logical-typescript');\nindex.configs['flat/logical-typescript-error'] = createLogicalTypescriptRuleset('error', 'flat/logical-typescript-error');\nindex.configs['flat/logical-typescript-flavor'] = createLogicalTypescriptFlavorRuleset('warn', 'flat/logical-typescript-flavor');\nindex.configs['flat/logical-typescript-flavor-error'] = createLogicalTypescriptFlavorRuleset('error', 'flat/logical-typescript-error-flavor');\nindex.configs['flat/requirements-typescript'] = createRequirementsTypeScriptRuleset('warn', 'flat/requirements-typescript');\nindex.configs['flat/requirements-typescript-error'] = createRequirementsTypeScriptRuleset('error', 'flat/requirements-typescript-error');\nindex.configs['flat/requirements-typescript-flavor'] = createRequirementsTypeScriptFlavorRuleset('warn', 'flat/requirements-typescript-flavor');\nindex.configs['flat/requirements-typescript-flavor-error'] = createRequirementsTypeScriptFlavorRuleset('error', 'flat/requirements-typescript-error-flavor');\nindex.configs['flat/stylistic-typescript'] = createStylisticTypeScriptRuleset('warn', 'flat/stylistic-typescript');\nindex.configs['flat/stylistic-typescript-error'] = createStylisticTypeScriptRuleset('error', 'flat/stylistic-typescript-error');\nindex.configs['flat/stylistic-typescript-flavor'] = createStylisticTypeScriptFlavorRuleset('warn', 'flat/stylistic-typescript-flavor');\nindex.configs['flat/stylistic-typescript-flavor-error'] = createStylisticTypeScriptFlavorRuleset('error', 'flat/stylistic-typescript-error-flavor');\n\nindex.configs.examples = /** @type {import('eslint').Linter.Config[]} */ ([\n {\n files: [\n '**/*.js',\n ],\n name: 'jsdoc/examples/processor',\n plugins: {\n examples: getJsdocProcessorPlugin(),\n },\n processor: 'examples/examples',\n },\n {\n files: [\n '**/*.md/*.js',\n ],\n name: 'jsdoc/examples/rules',\n rules: {\n // \"always\" newline rule at end unlikely in sample code\n '@stylistic/eol-last': 0,\n // Often wish to start `@example` code after newline; also may use\n // empty lines for spacing\n '@stylistic/no-multiple-empty-lines': 0,\n\n // Can generally look nicer to pad a little even if code imposes more stringency\n '@stylistic/padded-blocks': 0,\n\n '@typescript-eslint/no-unused-vars': 0,\n\n // \"always\" newline rule at end unlikely in sample code\n 'eol-last': 0,\n\n // Wouldn't generally expect example paths to resolve relative to JS file\n 'import/no-unresolved': 0,\n\n // Snippets likely too short to always include import/export info\n 'import/unambiguous': 0,\n\n 'jsdoc/require-file-overview': 0,\n\n // The end of a multiline comment would end the comment the example is in.\n 'jsdoc/require-jsdoc': 0,\n\n // See import/no-unresolved\n 'n/no-missing-import': 0,\n\n 'n/no-missing-require': 0,\n\n // Unlikely to have inadvertent debugging within examples\n 'no-console': 0,\n\n // Often wish to start `@example` code after newline; also may use\n // empty lines for spacing\n 'no-multiple-empty-lines': 0,\n\n // Many variables in examples will be `undefined`\n 'no-undef': 0,\n // Common to define variables for clarity without always using them\n 'no-unused-vars': 0,\n\n // See import/no-unresolved\n 'node/no-missing-import': 0,\n 'node/no-missing-require': 0,\n\n // Can generally look nicer to pad a little even if code imposes more stringency\n 'padded-blocks': 0,\n },\n },\n]);\n\nindex.configs['default-expressions'] = /** @type {import('eslint').Linter.Config[]} */ ([\n {\n files: [\n '**/*.js',\n ],\n name: 'jsdoc/default-expressions/processor',\n plugins: {\n examples: getJsdocProcessorPlugin({\n checkDefaults: true,\n checkParams: true,\n checkProperties: true,\n }),\n },\n processor: 'examples/examples',\n },\n {\n files: [\n '**/*.jsdoc-defaults', '**/*.jsdoc-params', '**/*.jsdoc-properties',\n ],\n name: 'jsdoc/default-expressions/rules',\n rules: {\n ...index.configs.examples[1].rules,\n '@stylistic/quotes': [\n 'error', 'double',\n ],\n '@stylistic/semi': [\n 'error', 'never',\n ],\n '@typescript-eslint/no-unused-expressions': 0,\n 'chai-friendly/no-unused-expressions': 0,\n 'no-empty-function': 0,\n 'no-new': 0,\n 'no-unused-expressions': 0,\n quotes: [\n 'error', 'double',\n ],\n semi: [\n 'error', 'never',\n ],\n strict: 0,\n },\n },\n]);\n\nindex.configs['examples-and-default-expressions'] = /** @type {import('eslint').Linter.Config[]} */ ([\n {\n name: 'jsdoc/examples-and-default-expressions',\n plugins: {\n examples: getJsdocProcessorPlugin({\n checkDefaults: true,\n checkParams: true,\n checkProperties: true,\n }),\n },\n },\n ...index.configs.examples.map((config) => {\n return {\n ...config,\n plugins: {},\n };\n }),\n ...index.configs['default-expressions'].map((config) => {\n return {\n ...config,\n plugins: {},\n };\n }),\n]);\n\nexport default index;\n"],"mappings":"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","ignoreList":[]}
|
package/dist/index-cjs.d.ts
CHANGED
|
@@ -1,13 +1,3 @@
|
|
|
1
|
-
export function buildForbidRuleDefinition({ contextName, contexts, description, url, }: {
|
|
2
|
-
contexts: (string | {
|
|
3
|
-
comment: string;
|
|
4
|
-
context: string;
|
|
5
|
-
message: string;
|
|
6
|
-
})[];
|
|
7
|
-
description?: string;
|
|
8
|
-
contextName?: string;
|
|
9
|
-
url?: string;
|
|
10
|
-
}): import("@eslint/core").RuleDefinition<import("@eslint/core").RuleDefinitionTypeOptions>;
|
|
11
1
|
export default index;
|
|
12
2
|
export type ConfigGroups = "recommended" | "stylistic" | "contents" | "logical" | "requirements";
|
|
13
3
|
export type ConfigVariants = "" | "-typescript" | "-typescript-flavor";
|
package/dist/index-esm.cjs
CHANGED
|
@@ -12,9 +12,10 @@ Object.defineProperty(exports, "getJsdocProcessorPlugin", {
|
|
|
12
12
|
});
|
|
13
13
|
exports.jsdoc = void 0;
|
|
14
14
|
var _objectDeepMerge = require("object-deep-merge");
|
|
15
|
-
var _indexCjs =
|
|
15
|
+
var _indexCjs = _interopRequireDefault(require("./index-cjs.cjs"));
|
|
16
|
+
var _buildForbidRuleDefinition = require("./buildForbidRuleDefinition.cjs");
|
|
16
17
|
var _getJsdocProcessorPlugin = require("./getJsdocProcessorPlugin.cjs");
|
|
17
|
-
function
|
|
18
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
18
19
|
/* eslint-disable perfectionist/sort-imports -- For auto-generate; Do not remove */
|
|
19
20
|
// BEGIN REPLACE
|
|
20
21
|
// eslint-disable-next-line unicorn/prefer-export-from --- Reusing `index`
|
|
@@ -105,7 +106,7 @@ const jsdoc = function (cfg) {
|
|
|
105
106
|
description,
|
|
106
107
|
url
|
|
107
108
|
}] of Object.entries(cfg.extraRuleDefinitions.forbid)) {
|
|
108
|
-
outputConfig.plugins.jsdoc.rules[`forbid-${contextName}`] = (0,
|
|
109
|
+
outputConfig.plugins.jsdoc.rules[`forbid-${contextName}`] = (0, _buildForbidRuleDefinition.buildForbidRuleDefinition)({
|
|
109
110
|
contextName,
|
|
110
111
|
contexts,
|
|
111
112
|
description,
|
package/dist/index-esm.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-esm.cjs","names":["_objectDeepMerge","require","_indexCjs","
|
|
1
|
+
{"version":3,"file":"index-esm.cjs","names":["_objectDeepMerge","require","_indexCjs","_interopRequireDefault","_buildForbidRuleDefinition","_getJsdocProcessorPlugin","e","__esModule","default","_default","exports","index","jsdoc","cfg","outputConfig","plugins","config","TypeError","configs","rules","name","basePath","files","ignores","language","languageOptions","linterOptions","processor","extraRuleDefinitions","Error","forbid","contextName","contexts","description","url","Object","entries","buildForbidRuleDefinition","settings","mergeSettings","merge","includes","structuredTags","next","required"],"sources":["../src/index-esm.js"],"sourcesContent":["/* eslint-disable perfectionist/sort-imports -- For auto-generate; Do not remove */\nimport {\n merge,\n} from 'object-deep-merge';\n\n// BEGIN REPLACE\nimport index from './index-cjs.js';\nimport {\n buildForbidRuleDefinition,\n} from './buildForbidRuleDefinition.js';\n\n// eslint-disable-next-line unicorn/prefer-export-from --- Reusing `index`\nexport default index;\n// END REPLACE\n\n/* eslint-disable jsdoc/valid-types -- Bug */\n/**\n * @type {((\n * cfg?: import('eslint').Linter.Config & {\n * config?: `flat/${import('./index-cjs.js').ConfigGroups}${import('./index-cjs.js').ConfigVariants}${import('./index-cjs.js').ErrorLevelVariants}`,\n * mergeSettings?: boolean,\n * settings?: Partial<import('./iterateJsdoc.js').Settings>,\n * rules?: {[key in keyof import('./rules.d.ts').Rules]?: import('eslint').Linter.RuleEntry<import('./rules.d.ts').Rules[key]>},\n * extraRuleDefinitions?: {\n * forbid: {\n * [contextName: string]: {\n * description?: string,\n * url?: string,\n * contexts: (string|{\n * message: string,\n * context: string,\n * comment: string\n * })[]\n * }\n * }\n * }\n * }\n * ) => import('eslint').Linter.Config)}\n */\nexport const jsdoc = function (cfg) {\n /* eslint-enable jsdoc/valid-types -- Bug */\n /** @type {import('eslint').Linter.Config} */\n let outputConfig = {\n plugins: {\n jsdoc: index,\n },\n };\n\n if (cfg) {\n if (cfg.config) {\n // @ts-expect-error Security check\n if (cfg.config === '__proto__') {\n throw new TypeError('Disallowed config value');\n }\n\n outputConfig = /** @type {import('eslint').Linter.Config} */ (index.configs[cfg.config]);\n }\n\n if (cfg.rules) {\n outputConfig.rules = {\n ...outputConfig.rules,\n ...cfg.rules,\n };\n }\n\n if (cfg.plugins) {\n outputConfig.plugins = {\n ...outputConfig.plugins,\n ...cfg.plugins,\n };\n }\n\n if (cfg.name) {\n outputConfig.name = cfg.name;\n }\n\n if (cfg.basePath) {\n outputConfig.basePath = cfg.basePath;\n }\n\n if (cfg.files) {\n outputConfig.files = cfg.files;\n }\n\n if (cfg.ignores) {\n outputConfig.ignores = cfg.ignores;\n }\n\n if (cfg.language) {\n outputConfig.language = cfg.language;\n }\n\n if (cfg.languageOptions) {\n outputConfig.languageOptions = cfg.languageOptions;\n }\n\n if (cfg.linterOptions) {\n outputConfig.linterOptions = cfg.linterOptions;\n }\n\n if (cfg.processor) {\n outputConfig.processor = cfg.processor;\n }\n\n if (cfg.extraRuleDefinitions) {\n if (!outputConfig.plugins?.jsdoc?.rules) {\n throw new Error('JSDoc plugin required for `extraRuleDefinitions`');\n }\n\n if (cfg.extraRuleDefinitions.forbid) {\n for (const [\n contextName,\n {\n contexts,\n description,\n url,\n },\n ] of Object.entries(cfg.extraRuleDefinitions.forbid)) {\n outputConfig.plugins.jsdoc.rules[`forbid-${contextName}`] =\n buildForbidRuleDefinition({\n contextName,\n contexts,\n description,\n url,\n });\n }\n }\n }\n }\n\n outputConfig.settings = {\n jsdoc: cfg?.mergeSettings === false ?\n cfg.settings :\n merge(\n {},\n cfg?.settings ?? {},\n cfg?.config?.includes('recommended') ?\n {\n // We may need to drop these for \"typescript\" (non-\"flavor\") configs,\n // if support is later added: https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html\n structuredTags: {\n next: {\n required: [\n 'type',\n ],\n },\n },\n } :\n {},\n ),\n };\n\n return outputConfig;\n};\n\nexport {\n getJsdocProcessorPlugin,\n} from './getJsdocProcessorPlugin.js';\n"],"mappings":"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","ignoreList":[]}
|