eslint-plugin-jsdoc 52.0.3 → 53.0.0
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/index.cjs +2 -425
- package/dist/index.d.cts +2 -22
- package/dist/index.d.ts +2 -22
- package/dist/index.js +2 -424
- package/dist/iterateJsdoc.d.cts +15 -15
- package/dist/iterateJsdoc.d.ts +15 -15
- package/dist/plugin.cjs +427 -0
- package/dist/plugin.cjs.map +1 -0
- package/dist/plugin.js +427 -0
- package/dist/plugin.js.map +1 -0
- package/package.json +2 -2
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
package/dist/plugin.cjs
ADDED
|
@@ -0,0 +1,427 @@
|
|
|
1
|
+
const require_getJsdocProcessorPlugin = require('./getJsdocProcessorPlugin.cjs');
|
|
2
|
+
const require_checkAccess = require('./rules/checkAccess.cjs');
|
|
3
|
+
const require_checkAlignment = require('./rules/checkAlignment.cjs');
|
|
4
|
+
const require_checkExamples = require('./rules/checkExamples.cjs');
|
|
5
|
+
const require_checkIndentation = require('./rules/checkIndentation.cjs');
|
|
6
|
+
const require_checkLineAlignment = require('./rules/checkLineAlignment.cjs');
|
|
7
|
+
const require_checkParamNames = require('./rules/checkParamNames.cjs');
|
|
8
|
+
const require_checkPropertyNames = require('./rules/checkPropertyNames.cjs');
|
|
9
|
+
const require_checkSyntax = require('./rules/checkSyntax.cjs');
|
|
10
|
+
const require_checkTagNames = require('./rules/checkTagNames.cjs');
|
|
11
|
+
const require_checkTemplateNames = require('./rules/checkTemplateNames.cjs');
|
|
12
|
+
const require_checkTypes = require('./rules/checkTypes.cjs');
|
|
13
|
+
const require_checkValues = require('./rules/checkValues.cjs');
|
|
14
|
+
const require_convertToJsdocComments = require('./rules/convertToJsdocComments.cjs');
|
|
15
|
+
const require_emptyTags = require('./rules/emptyTags.cjs');
|
|
16
|
+
const require_implementsOnClasses = require('./rules/implementsOnClasses.cjs');
|
|
17
|
+
const require_importsAsDependencies = require('./rules/importsAsDependencies.cjs');
|
|
18
|
+
const require_informativeDocs = require('./rules/informativeDocs.cjs');
|
|
19
|
+
const require_linesBeforeBlock = require('./rules/linesBeforeBlock.cjs');
|
|
20
|
+
const require_matchDescription = require('./rules/matchDescription.cjs');
|
|
21
|
+
const require_matchName = require('./rules/matchName.cjs');
|
|
22
|
+
const require_multilineBlocks = require('./rules/multilineBlocks.cjs');
|
|
23
|
+
const require_noBadBlocks = require('./rules/noBadBlocks.cjs');
|
|
24
|
+
const require_noBlankBlockDescriptions = require('./rules/noBlankBlockDescriptions.cjs');
|
|
25
|
+
const require_noBlankBlocks = require('./rules/noBlankBlocks.cjs');
|
|
26
|
+
const require_noDefaults = require('./rules/noDefaults.cjs');
|
|
27
|
+
const require_noMissingSyntax = require('./rules/noMissingSyntax.cjs');
|
|
28
|
+
const require_noMultiAsterisks = require('./rules/noMultiAsterisks.cjs');
|
|
29
|
+
const require_noRestrictedSyntax = require('./rules/noRestrictedSyntax.cjs');
|
|
30
|
+
const require_noTypes = require('./rules/noTypes.cjs');
|
|
31
|
+
const require_noUndefinedTypes = require('./rules/noUndefinedTypes.cjs');
|
|
32
|
+
const require_requireAsteriskPrefix = require('./rules/requireAsteriskPrefix.cjs');
|
|
33
|
+
const require_requireDescription = require('./rules/requireDescription.cjs');
|
|
34
|
+
const require_requireDescriptionCompleteSentence = require('./rules/requireDescriptionCompleteSentence.cjs');
|
|
35
|
+
const require_requireExample = require('./rules/requireExample.cjs');
|
|
36
|
+
const require_requireFileOverview = require('./rules/requireFileOverview.cjs');
|
|
37
|
+
const require_requireHyphenBeforeParamDescription = require('./rules/requireHyphenBeforeParamDescription.cjs');
|
|
38
|
+
const require_requireJsdoc = require('./rules/requireJsdoc.cjs');
|
|
39
|
+
const require_requireParam = require('./rules/requireParam.cjs');
|
|
40
|
+
const require_requireParamDescription = require('./rules/requireParamDescription.cjs');
|
|
41
|
+
const require_requireParamName = require('./rules/requireParamName.cjs');
|
|
42
|
+
const require_requireParamType = require('./rules/requireParamType.cjs');
|
|
43
|
+
const require_requireProperty = require('./rules/requireProperty.cjs');
|
|
44
|
+
const require_requirePropertyDescription = require('./rules/requirePropertyDescription.cjs');
|
|
45
|
+
const require_requirePropertyName = require('./rules/requirePropertyName.cjs');
|
|
46
|
+
const require_requirePropertyType = require('./rules/requirePropertyType.cjs');
|
|
47
|
+
const require_requireReturns = require('./rules/requireReturns.cjs');
|
|
48
|
+
const require_requireReturnsCheck = require('./rules/requireReturnsCheck.cjs');
|
|
49
|
+
const require_requireReturnsDescription = require('./rules/requireReturnsDescription.cjs');
|
|
50
|
+
const require_requireReturnsType = require('./rules/requireReturnsType.cjs');
|
|
51
|
+
const require_requireTemplate = require('./rules/requireTemplate.cjs');
|
|
52
|
+
const require_requireThrows = require('./rules/requireThrows.cjs');
|
|
53
|
+
const require_requireYields = require('./rules/requireYields.cjs');
|
|
54
|
+
const require_requireYieldsCheck = require('./rules/requireYieldsCheck.cjs');
|
|
55
|
+
const require_sortTags = require('./rules/sortTags.cjs');
|
|
56
|
+
const require_tagLines = require('./rules/tagLines.cjs');
|
|
57
|
+
const require_textEscaping = require('./rules/textEscaping.cjs');
|
|
58
|
+
const require_validTypes = require('./rules/validTypes.cjs');
|
|
59
|
+
|
|
60
|
+
//#region src/plugin.js
|
|
61
|
+
/**
|
|
62
|
+
* @typedef {"recommended" | "stylistic" | "contents" | "logical" | "requirements"} ConfigGroups
|
|
63
|
+
* @typedef {"" | "-typescript" | "-typescript-flavor"} ConfigVariants
|
|
64
|
+
* @typedef {"" | "-error"} ErrorLevelVariants
|
|
65
|
+
*/
|
|
66
|
+
/**
|
|
67
|
+
* @type {import('eslint').ESLint.Plugin & {
|
|
68
|
+
* configs: Record<`flat/${ConfigGroups}${ConfigVariants}${ErrorLevelVariants}`,
|
|
69
|
+
* import('eslint').Linter.Config>
|
|
70
|
+
* }}
|
|
71
|
+
*/
|
|
72
|
+
const plugin = {
|
|
73
|
+
configs: {},
|
|
74
|
+
rules: {
|
|
75
|
+
"check-access": require_checkAccess.default,
|
|
76
|
+
"check-alignment": require_checkAlignment.default,
|
|
77
|
+
"check-examples": require_checkExamples.default,
|
|
78
|
+
"check-indentation": require_checkIndentation.default,
|
|
79
|
+
"check-line-alignment": require_checkLineAlignment.default,
|
|
80
|
+
"check-param-names": require_checkParamNames.default,
|
|
81
|
+
"check-property-names": require_checkPropertyNames.default,
|
|
82
|
+
"check-syntax": require_checkSyntax.default,
|
|
83
|
+
"check-tag-names": require_checkTagNames.default,
|
|
84
|
+
"check-template-names": require_checkTemplateNames.default,
|
|
85
|
+
"check-types": require_checkTypes.default,
|
|
86
|
+
"check-values": require_checkValues.default,
|
|
87
|
+
"convert-to-jsdoc-comments": require_convertToJsdocComments.default,
|
|
88
|
+
"empty-tags": require_emptyTags.default,
|
|
89
|
+
"implements-on-classes": require_implementsOnClasses.default,
|
|
90
|
+
"imports-as-dependencies": require_importsAsDependencies.default,
|
|
91
|
+
"informative-docs": require_informativeDocs.default,
|
|
92
|
+
"lines-before-block": require_linesBeforeBlock.default,
|
|
93
|
+
"match-description": require_matchDescription.default,
|
|
94
|
+
"match-name": require_matchName.default,
|
|
95
|
+
"multiline-blocks": require_multilineBlocks.default,
|
|
96
|
+
"no-bad-blocks": require_noBadBlocks.default,
|
|
97
|
+
"no-blank-block-descriptions": require_noBlankBlockDescriptions.default,
|
|
98
|
+
"no-blank-blocks": require_noBlankBlocks.default,
|
|
99
|
+
"no-defaults": require_noDefaults.default,
|
|
100
|
+
"no-missing-syntax": require_noMissingSyntax.default,
|
|
101
|
+
"no-multi-asterisks": require_noMultiAsterisks.default,
|
|
102
|
+
"no-restricted-syntax": require_noRestrictedSyntax.default,
|
|
103
|
+
"no-types": require_noTypes.default,
|
|
104
|
+
"no-undefined-types": require_noUndefinedTypes.default,
|
|
105
|
+
"require-asterisk-prefix": require_requireAsteriskPrefix.default,
|
|
106
|
+
"require-description": require_requireDescription.default,
|
|
107
|
+
"require-description-complete-sentence": require_requireDescriptionCompleteSentence.default,
|
|
108
|
+
"require-example": require_requireExample.default,
|
|
109
|
+
"require-file-overview": require_requireFileOverview.default,
|
|
110
|
+
"require-hyphen-before-param-description": require_requireHyphenBeforeParamDescription.default,
|
|
111
|
+
"require-jsdoc": require_requireJsdoc.default,
|
|
112
|
+
"require-param": require_requireParam.default,
|
|
113
|
+
"require-param-description": require_requireParamDescription.default,
|
|
114
|
+
"require-param-name": require_requireParamName.default,
|
|
115
|
+
"require-param-type": require_requireParamType.default,
|
|
116
|
+
"require-property": require_requireProperty.default,
|
|
117
|
+
"require-property-description": require_requirePropertyDescription.default,
|
|
118
|
+
"require-property-name": require_requirePropertyName.default,
|
|
119
|
+
"require-property-type": require_requirePropertyType.default,
|
|
120
|
+
"require-returns": require_requireReturns.default,
|
|
121
|
+
"require-returns-check": require_requireReturnsCheck.default,
|
|
122
|
+
"require-returns-description": require_requireReturnsDescription.default,
|
|
123
|
+
"require-returns-type": require_requireReturnsType.default,
|
|
124
|
+
"require-template": require_requireTemplate.default,
|
|
125
|
+
"require-throws": require_requireThrows.default,
|
|
126
|
+
"require-yields": require_requireYields.default,
|
|
127
|
+
"require-yields-check": require_requireYieldsCheck.default,
|
|
128
|
+
"sort-tags": require_sortTags.default,
|
|
129
|
+
"tag-lines": require_tagLines.default,
|
|
130
|
+
"text-escaping": require_textEscaping.default,
|
|
131
|
+
"valid-types": require_validTypes.default
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
/**
|
|
135
|
+
* @param {"warn"|"error"} warnOrError
|
|
136
|
+
* @param {string} [flatName]
|
|
137
|
+
* @returns {import('eslint').Linter.FlatConfig}
|
|
138
|
+
*/
|
|
139
|
+
const createRecommendedRuleset = (warnOrError, flatName) => {
|
|
140
|
+
return {
|
|
141
|
+
...flatName ? { name: "jsdoc/" + flatName } : {},
|
|
142
|
+
plugins: flatName ? { jsdoc: plugin } : ["jsdoc"],
|
|
143
|
+
rules: {
|
|
144
|
+
"jsdoc/check-access": warnOrError,
|
|
145
|
+
"jsdoc/check-alignment": warnOrError,
|
|
146
|
+
"jsdoc/check-examples": "off",
|
|
147
|
+
"jsdoc/check-indentation": "off",
|
|
148
|
+
"jsdoc/check-line-alignment": "off",
|
|
149
|
+
"jsdoc/check-param-names": warnOrError,
|
|
150
|
+
"jsdoc/check-property-names": warnOrError,
|
|
151
|
+
"jsdoc/check-syntax": "off",
|
|
152
|
+
"jsdoc/check-tag-names": warnOrError,
|
|
153
|
+
"jsdoc/check-template-names": "off",
|
|
154
|
+
"jsdoc/check-types": warnOrError,
|
|
155
|
+
"jsdoc/check-values": warnOrError,
|
|
156
|
+
"jsdoc/convert-to-jsdoc-comments": "off",
|
|
157
|
+
"jsdoc/empty-tags": warnOrError,
|
|
158
|
+
"jsdoc/implements-on-classes": warnOrError,
|
|
159
|
+
"jsdoc/imports-as-dependencies": "off",
|
|
160
|
+
"jsdoc/informative-docs": "off",
|
|
161
|
+
"jsdoc/lines-before-block": "off",
|
|
162
|
+
"jsdoc/match-description": "off",
|
|
163
|
+
"jsdoc/match-name": "off",
|
|
164
|
+
"jsdoc/multiline-blocks": warnOrError,
|
|
165
|
+
"jsdoc/no-bad-blocks": "off",
|
|
166
|
+
"jsdoc/no-blank-block-descriptions": "off",
|
|
167
|
+
"jsdoc/no-blank-blocks": "off",
|
|
168
|
+
"jsdoc/no-defaults": warnOrError,
|
|
169
|
+
"jsdoc/no-missing-syntax": "off",
|
|
170
|
+
"jsdoc/no-multi-asterisks": warnOrError,
|
|
171
|
+
"jsdoc/no-restricted-syntax": "off",
|
|
172
|
+
"jsdoc/no-types": "off",
|
|
173
|
+
"jsdoc/no-undefined-types": warnOrError,
|
|
174
|
+
"jsdoc/require-asterisk-prefix": "off",
|
|
175
|
+
"jsdoc/require-description": "off",
|
|
176
|
+
"jsdoc/require-description-complete-sentence": "off",
|
|
177
|
+
"jsdoc/require-example": "off",
|
|
178
|
+
"jsdoc/require-file-overview": "off",
|
|
179
|
+
"jsdoc/require-hyphen-before-param-description": "off",
|
|
180
|
+
"jsdoc/require-jsdoc": warnOrError,
|
|
181
|
+
"jsdoc/require-param": warnOrError,
|
|
182
|
+
"jsdoc/require-param-description": warnOrError,
|
|
183
|
+
"jsdoc/require-param-name": warnOrError,
|
|
184
|
+
"jsdoc/require-param-type": warnOrError,
|
|
185
|
+
"jsdoc/require-property": warnOrError,
|
|
186
|
+
"jsdoc/require-property-description": warnOrError,
|
|
187
|
+
"jsdoc/require-property-name": warnOrError,
|
|
188
|
+
"jsdoc/require-property-type": warnOrError,
|
|
189
|
+
"jsdoc/require-returns": warnOrError,
|
|
190
|
+
"jsdoc/require-returns-check": warnOrError,
|
|
191
|
+
"jsdoc/require-returns-description": warnOrError,
|
|
192
|
+
"jsdoc/require-returns-type": warnOrError,
|
|
193
|
+
"jsdoc/require-template": "off",
|
|
194
|
+
"jsdoc/require-throws": "off",
|
|
195
|
+
"jsdoc/require-yields": warnOrError,
|
|
196
|
+
"jsdoc/require-yields-check": warnOrError,
|
|
197
|
+
"jsdoc/sort-tags": "off",
|
|
198
|
+
"jsdoc/tag-lines": warnOrError,
|
|
199
|
+
"jsdoc/text-escaping": "off",
|
|
200
|
+
"jsdoc/valid-types": warnOrError
|
|
201
|
+
}
|
|
202
|
+
};
|
|
203
|
+
};
|
|
204
|
+
/**
|
|
205
|
+
* @param {"warn"|"error"} warnOrError
|
|
206
|
+
* @param {string} [flatName]
|
|
207
|
+
* @returns {import('eslint').Linter.FlatConfig}
|
|
208
|
+
*/
|
|
209
|
+
const createRecommendedTypeScriptRuleset = (warnOrError, flatName) => {
|
|
210
|
+
const ruleset = createRecommendedRuleset(warnOrError, flatName);
|
|
211
|
+
return {
|
|
212
|
+
...ruleset,
|
|
213
|
+
rules: {
|
|
214
|
+
...ruleset.rules,
|
|
215
|
+
"jsdoc/check-tag-names": [warnOrError, { typed: true }],
|
|
216
|
+
"jsdoc/no-types": warnOrError,
|
|
217
|
+
"jsdoc/no-undefined-types": "off",
|
|
218
|
+
"jsdoc/require-param-type": "off",
|
|
219
|
+
"jsdoc/require-property-type": "off",
|
|
220
|
+
"jsdoc/require-returns-type": "off"
|
|
221
|
+
}
|
|
222
|
+
};
|
|
223
|
+
};
|
|
224
|
+
/**
|
|
225
|
+
* @param {"warn"|"error"} warnOrError
|
|
226
|
+
* @param {string} [flatName]
|
|
227
|
+
* @returns {import('eslint').Linter.FlatConfig}
|
|
228
|
+
*/
|
|
229
|
+
const createRecommendedTypeScriptFlavorRuleset = (warnOrError, flatName) => {
|
|
230
|
+
const ruleset = createRecommendedRuleset(warnOrError, flatName);
|
|
231
|
+
return {
|
|
232
|
+
...ruleset,
|
|
233
|
+
rules: {
|
|
234
|
+
...ruleset.rules,
|
|
235
|
+
"jsdoc/no-undefined-types": "off"
|
|
236
|
+
}
|
|
237
|
+
};
|
|
238
|
+
};
|
|
239
|
+
/**
|
|
240
|
+
* @param {(string | unknown[])[]} ruleNames
|
|
241
|
+
*/
|
|
242
|
+
const createStandaloneRulesetFactory = (ruleNames) => {
|
|
243
|
+
/**
|
|
244
|
+
* @param {"warn"|"error"} warnOrError
|
|
245
|
+
* @param {string} [flatName]
|
|
246
|
+
* @returns {import('eslint').Linter.FlatConfig}
|
|
247
|
+
*/
|
|
248
|
+
return (warnOrError, flatName) => {
|
|
249
|
+
return {
|
|
250
|
+
name: "jsdoc/" + flatName,
|
|
251
|
+
plugins: { jsdoc: plugin },
|
|
252
|
+
rules: Object.fromEntries(ruleNames.map((ruleName) => {
|
|
253
|
+
return typeof ruleName === "string" ? [ruleName, warnOrError] : [ruleName[0], [warnOrError, ...ruleName.slice(1)]];
|
|
254
|
+
}))
|
|
255
|
+
};
|
|
256
|
+
};
|
|
257
|
+
};
|
|
258
|
+
const contentsRules = [
|
|
259
|
+
"jsdoc/informative-docs",
|
|
260
|
+
"jsdoc/match-description",
|
|
261
|
+
"jsdoc/no-blank-block-descriptions",
|
|
262
|
+
"jsdoc/no-blank-blocks",
|
|
263
|
+
["jsdoc/text-escaping", { escapeHTML: true }]
|
|
264
|
+
];
|
|
265
|
+
const createContentsTypescriptRuleset = createStandaloneRulesetFactory(contentsRules);
|
|
266
|
+
const createContentsTypescriptFlavorRuleset = createStandaloneRulesetFactory(contentsRules);
|
|
267
|
+
const logicalRules = [
|
|
268
|
+
"jsdoc/check-access",
|
|
269
|
+
"jsdoc/check-param-names",
|
|
270
|
+
"jsdoc/check-property-names",
|
|
271
|
+
"jsdoc/check-syntax",
|
|
272
|
+
"jsdoc/check-tag-names",
|
|
273
|
+
"jsdoc/check-template-names",
|
|
274
|
+
"jsdoc/check-types",
|
|
275
|
+
"jsdoc/check-values",
|
|
276
|
+
"jsdoc/empty-tags",
|
|
277
|
+
"jsdoc/implements-on-classes",
|
|
278
|
+
"jsdoc/require-returns-check",
|
|
279
|
+
"jsdoc/require-yields-check",
|
|
280
|
+
"jsdoc/no-bad-blocks",
|
|
281
|
+
"jsdoc/no-defaults",
|
|
282
|
+
"jsdoc/no-types",
|
|
283
|
+
"jsdoc/no-undefined-types",
|
|
284
|
+
"jsdoc/valid-types"
|
|
285
|
+
];
|
|
286
|
+
const createLogicalTypescriptRuleset = createStandaloneRulesetFactory(logicalRules);
|
|
287
|
+
const createLogicalTypescriptFlavorRuleset = createStandaloneRulesetFactory(logicalRules);
|
|
288
|
+
const requirementsRules = [
|
|
289
|
+
"jsdoc/require-example",
|
|
290
|
+
"jsdoc/require-jsdoc",
|
|
291
|
+
"jsdoc/require-param",
|
|
292
|
+
"jsdoc/require-param-description",
|
|
293
|
+
"jsdoc/require-param-name",
|
|
294
|
+
"jsdoc/require-property",
|
|
295
|
+
"jsdoc/require-property-description",
|
|
296
|
+
"jsdoc/require-property-name",
|
|
297
|
+
"jsdoc/require-returns",
|
|
298
|
+
"jsdoc/require-returns-description",
|
|
299
|
+
"jsdoc/require-yields"
|
|
300
|
+
];
|
|
301
|
+
const createRequirementsTypeScriptRuleset = createStandaloneRulesetFactory(requirementsRules);
|
|
302
|
+
const createRequirementsTypeScriptFlavorRuleset = createStandaloneRulesetFactory([
|
|
303
|
+
...requirementsRules,
|
|
304
|
+
"jsdoc/require-param-type",
|
|
305
|
+
"jsdoc/require-property-type",
|
|
306
|
+
"jsdoc/require-returns-type",
|
|
307
|
+
"jsdoc/require-template"
|
|
308
|
+
]);
|
|
309
|
+
const stylisticRules = [
|
|
310
|
+
"jsdoc/check-alignment",
|
|
311
|
+
"jsdoc/check-line-alignment",
|
|
312
|
+
"jsdoc/lines-before-block",
|
|
313
|
+
"jsdoc/multiline-blocks",
|
|
314
|
+
"jsdoc/no-multi-asterisks",
|
|
315
|
+
"jsdoc/require-asterisk-prefix",
|
|
316
|
+
["jsdoc/require-hyphen-before-param-description", "never"],
|
|
317
|
+
"jsdoc/tag-lines"
|
|
318
|
+
];
|
|
319
|
+
const createStylisticTypeScriptRuleset = createStandaloneRulesetFactory(stylisticRules);
|
|
320
|
+
const createStylisticTypeScriptFlavorRuleset = createStandaloneRulesetFactory(stylisticRules);
|
|
321
|
+
/* c8 ignore next 3 -- TS */
|
|
322
|
+
if (!plugin.configs) throw new Error("TypeScript guard");
|
|
323
|
+
plugin.configs.recommended = createRecommendedRuleset("warn");
|
|
324
|
+
plugin.configs["recommended-error"] = createRecommendedRuleset("error");
|
|
325
|
+
plugin.configs["recommended-typescript"] = createRecommendedTypeScriptRuleset("warn");
|
|
326
|
+
plugin.configs["recommended-typescript-error"] = createRecommendedTypeScriptRuleset("error");
|
|
327
|
+
plugin.configs["recommended-typescript-flavor"] = createRecommendedTypeScriptFlavorRuleset("warn");
|
|
328
|
+
plugin.configs["recommended-typescript-flavor-error"] = createRecommendedTypeScriptFlavorRuleset("error");
|
|
329
|
+
plugin.configs["flat/recommended"] = createRecommendedRuleset("warn", "flat/recommended");
|
|
330
|
+
plugin.configs["flat/recommended-error"] = createRecommendedRuleset("error", "flat/recommended-error");
|
|
331
|
+
plugin.configs["flat/recommended-typescript"] = createRecommendedTypeScriptRuleset("warn", "flat/recommended-typescript");
|
|
332
|
+
plugin.configs["flat/recommended-typescript-error"] = createRecommendedTypeScriptRuleset("error", "flat/recommended-typescript-error");
|
|
333
|
+
plugin.configs["flat/recommended-typescript-flavor"] = createRecommendedTypeScriptFlavorRuleset("warn", "flat/recommended-typescript-flavor");
|
|
334
|
+
plugin.configs["flat/recommended-typescript-flavor-error"] = createRecommendedTypeScriptFlavorRuleset("error", "flat/recommended-typescript-flavor-error");
|
|
335
|
+
plugin.configs["flat/contents-typescript"] = createContentsTypescriptRuleset("warn", "flat/contents-typescript");
|
|
336
|
+
plugin.configs["flat/contents-typescript-error"] = createContentsTypescriptRuleset("error", "flat/contents-typescript-error");
|
|
337
|
+
plugin.configs["flat/contents-typescript-flavor"] = createContentsTypescriptFlavorRuleset("warn", "flat/contents-typescript-flavor");
|
|
338
|
+
plugin.configs["flat/contents-typescript-flavor-error"] = createContentsTypescriptFlavorRuleset("error", "flat/contents-typescript-error-flavor");
|
|
339
|
+
plugin.configs["flat/logical-typescript"] = createLogicalTypescriptRuleset("warn", "flat/logical-typescript");
|
|
340
|
+
plugin.configs["flat/logical-typescript-error"] = createLogicalTypescriptRuleset("error", "flat/logical-typescript-error");
|
|
341
|
+
plugin.configs["flat/logical-typescript-flavor"] = createLogicalTypescriptFlavorRuleset("warn", "flat/logical-typescript-flavor");
|
|
342
|
+
plugin.configs["flat/logical-typescript-flavor-error"] = createLogicalTypescriptFlavorRuleset("error", "flat/logical-typescript-error-flavor");
|
|
343
|
+
plugin.configs["flat/requirements-typescript"] = createRequirementsTypeScriptRuleset("warn", "flat/requirements-typescript");
|
|
344
|
+
plugin.configs["flat/requirements-typescript-error"] = createRequirementsTypeScriptRuleset("error", "flat/requirements-typescript-error");
|
|
345
|
+
plugin.configs["flat/requirements-typescript-flavor"] = createRequirementsTypeScriptFlavorRuleset("warn", "flat/requirements-typescript-flavor");
|
|
346
|
+
plugin.configs["flat/requirements-typescript-flavor-error"] = createRequirementsTypeScriptFlavorRuleset("error", "flat/requirements-typescript-error-flavor");
|
|
347
|
+
plugin.configs["flat/stylistic-typescript"] = createStylisticTypeScriptRuleset("warn", "flat/stylistic-typescript");
|
|
348
|
+
plugin.configs["flat/stylistic-typescript-error"] = createStylisticTypeScriptRuleset("error", "flat/stylistic-typescript-error");
|
|
349
|
+
plugin.configs["flat/stylistic-typescript-flavor"] = createStylisticTypeScriptFlavorRuleset("warn", "flat/stylistic-typescript-flavor");
|
|
350
|
+
plugin.configs["flat/stylistic-typescript-flavor-error"] = createStylisticTypeScriptFlavorRuleset("error", "flat/stylistic-typescript-error-flavor");
|
|
351
|
+
plugin.configs.examples = [{
|
|
352
|
+
files: ["**/*.js"],
|
|
353
|
+
name: "jsdoc/examples/processor",
|
|
354
|
+
plugins: { examples: require_getJsdocProcessorPlugin.getJsdocProcessorPlugin() },
|
|
355
|
+
processor: "examples/examples"
|
|
356
|
+
}, {
|
|
357
|
+
files: ["**/*.md/*.js"],
|
|
358
|
+
name: "jsdoc/examples/rules",
|
|
359
|
+
rules: {
|
|
360
|
+
"eol-last": 0,
|
|
361
|
+
"import/no-unresolved": 0,
|
|
362
|
+
"import/unambiguous": 0,
|
|
363
|
+
"jsdoc/require-file-overview": 0,
|
|
364
|
+
"jsdoc/require-jsdoc": 0,
|
|
365
|
+
"no-console": 0,
|
|
366
|
+
"no-multiple-empty-lines": 0,
|
|
367
|
+
"no-undef": 0,
|
|
368
|
+
"no-unused-vars": 0,
|
|
369
|
+
"node/no-missing-import": 0,
|
|
370
|
+
"node/no-missing-require": 0,
|
|
371
|
+
"padded-blocks": 0
|
|
372
|
+
}
|
|
373
|
+
}];
|
|
374
|
+
plugin.configs["default-expressions"] = [{
|
|
375
|
+
files: ["**/*.js"],
|
|
376
|
+
name: "jsdoc/default-expressions/processor",
|
|
377
|
+
plugins: { examples: require_getJsdocProcessorPlugin.getJsdocProcessorPlugin({
|
|
378
|
+
checkDefaults: true,
|
|
379
|
+
checkParams: true,
|
|
380
|
+
checkProperties: true
|
|
381
|
+
}) },
|
|
382
|
+
processor: "examples/examples"
|
|
383
|
+
}, {
|
|
384
|
+
files: [
|
|
385
|
+
"**/*.jsdoc-defaults",
|
|
386
|
+
"**/*.jsdoc-params",
|
|
387
|
+
"**/*.jsdoc-properties"
|
|
388
|
+
],
|
|
389
|
+
name: "jsdoc/default-expressions/rules",
|
|
390
|
+
rules: {
|
|
391
|
+
...plugin.configs.examples[1].rules,
|
|
392
|
+
"chai-friendly/no-unused-expressions": 0,
|
|
393
|
+
"no-empty-function": 0,
|
|
394
|
+
"no-new": 0,
|
|
395
|
+
"no-unused-expressions": 0,
|
|
396
|
+
quotes: ["error", "double"],
|
|
397
|
+
semi: ["error", "never"],
|
|
398
|
+
strict: 0
|
|
399
|
+
}
|
|
400
|
+
}];
|
|
401
|
+
plugin.configs["examples-and-default-expressions"] = [
|
|
402
|
+
{
|
|
403
|
+
name: "jsdoc/examples-and-default-expressions",
|
|
404
|
+
plugins: { examples: require_getJsdocProcessorPlugin.getJsdocProcessorPlugin({
|
|
405
|
+
checkDefaults: true,
|
|
406
|
+
checkParams: true,
|
|
407
|
+
checkProperties: true
|
|
408
|
+
}) }
|
|
409
|
+
},
|
|
410
|
+
...plugin.configs.examples.map((config) => {
|
|
411
|
+
return {
|
|
412
|
+
...config,
|
|
413
|
+
plugins: {}
|
|
414
|
+
};
|
|
415
|
+
}),
|
|
416
|
+
...plugin.configs["default-expressions"].map((config) => {
|
|
417
|
+
return {
|
|
418
|
+
...config,
|
|
419
|
+
plugins: {}
|
|
420
|
+
};
|
|
421
|
+
})
|
|
422
|
+
];
|
|
423
|
+
var plugin_default = plugin;
|
|
424
|
+
|
|
425
|
+
//#endregion
|
|
426
|
+
exports.default = plugin_default;
|
|
427
|
+
//# sourceMappingURL=plugin.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin.cjs","names":["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","validTypes","getJsdocProcessorPlugin"],"sources":["../src/plugin.js"],"sourcesContent":["import {\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 validTypes from './rules/validTypes.js';\n\n/**\n * @typedef {\"recommended\" | \"stylistic\" | \"contents\" | \"logical\" | \"requirements\"} ConfigGroups\n * @typedef {\"\" | \"-typescript\" | \"-typescript-flavor\"} ConfigVariants\n * @typedef {\"\" | \"-error\"} ErrorLevelVariants\n */\n\n/* eslint-disable jsdoc/valid-types -- Bug */\n/**\n * @type {import('eslint').ESLint.Plugin & {\n * configs: Record<`flat/${ConfigGroups}${ConfigVariants}${ErrorLevelVariants}`,\n * import('eslint').Linter.Config>\n * }}\n */\n/* eslint-enable jsdoc/valid-types -- Bug */\nconst plugin = {\n // @ts-expect-error Ok\n configs: {},\n 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-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-yields': requireYields,\n 'require-yields-check': requireYieldsCheck,\n 'sort-tags': sortTags,\n 'tag-lines': tagLines,\n 'text-escaping': textEscaping,\n 'valid-types': validTypes,\n },\n};\n\n/**\n * @param {\"warn\"|\"error\"} warnOrError\n * @param {string} [flatName]\n * @returns {import('eslint').Linter.FlatConfig}\n */\nconst createRecommendedRuleset = (warnOrError, flatName) => {\n return {\n ...(flatName ? {\n name: 'jsdoc/' + flatName,\n } : {}),\n // @ts-expect-error Ok\n plugins:\n flatName ? {\n jsdoc: plugin,\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-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-yields': warnOrError,\n 'jsdoc/require-yields-check': warnOrError,\n 'jsdoc/sort-tags': 'off',\n 'jsdoc/tag-lines': warnOrError,\n 'jsdoc/text-escaping': '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.FlatConfig}\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.FlatConfig}\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.FlatConfig}\n */\n return (warnOrError, flatName) => {\n return {\n name: 'jsdoc/' + flatName,\n plugins: {\n jsdoc: plugin,\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-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-yields',\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 (!plugin.configs) {\n throw new Error('TypeScript guard');\n}\n\nplugin.configs.recommended = createRecommendedRuleset('warn');\nplugin.configs['recommended-error'] = createRecommendedRuleset('error');\nplugin.configs['recommended-typescript'] = createRecommendedTypeScriptRuleset('warn');\nplugin.configs['recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error');\nplugin.configs['recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn');\nplugin.configs['recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error');\n\nplugin.configs['flat/recommended'] = createRecommendedRuleset('warn', 'flat/recommended');\nplugin.configs['flat/recommended-error'] = createRecommendedRuleset('error', 'flat/recommended-error');\nplugin.configs['flat/recommended-typescript'] = createRecommendedTypeScriptRuleset('warn', 'flat/recommended-typescript');\nplugin.configs['flat/recommended-typescript-error'] = createRecommendedTypeScriptRuleset('error', 'flat/recommended-typescript-error');\nplugin.configs['flat/recommended-typescript-flavor'] = createRecommendedTypeScriptFlavorRuleset('warn', 'flat/recommended-typescript-flavor');\nplugin.configs['flat/recommended-typescript-flavor-error'] = createRecommendedTypeScriptFlavorRuleset('error', 'flat/recommended-typescript-flavor-error');\n\nplugin.configs['flat/contents-typescript'] = createContentsTypescriptRuleset('warn', 'flat/contents-typescript');\nplugin.configs['flat/contents-typescript-error'] = createContentsTypescriptRuleset('error', 'flat/contents-typescript-error');\nplugin.configs['flat/contents-typescript-flavor'] = createContentsTypescriptFlavorRuleset('warn', 'flat/contents-typescript-flavor');\nplugin.configs['flat/contents-typescript-flavor-error'] = createContentsTypescriptFlavorRuleset('error', 'flat/contents-typescript-error-flavor');\nplugin.configs['flat/logical-typescript'] = createLogicalTypescriptRuleset('warn', 'flat/logical-typescript');\nplugin.configs['flat/logical-typescript-error'] = createLogicalTypescriptRuleset('error', 'flat/logical-typescript-error');\nplugin.configs['flat/logical-typescript-flavor'] = createLogicalTypescriptFlavorRuleset('warn', 'flat/logical-typescript-flavor');\nplugin.configs['flat/logical-typescript-flavor-error'] = createLogicalTypescriptFlavorRuleset('error', 'flat/logical-typescript-error-flavor');\nplugin.configs['flat/requirements-typescript'] = createRequirementsTypeScriptRuleset('warn', 'flat/requirements-typescript');\nplugin.configs['flat/requirements-typescript-error'] = createRequirementsTypeScriptRuleset('error', 'flat/requirements-typescript-error');\nplugin.configs['flat/requirements-typescript-flavor'] = createRequirementsTypeScriptFlavorRuleset('warn', 'flat/requirements-typescript-flavor');\nplugin.configs['flat/requirements-typescript-flavor-error'] = createRequirementsTypeScriptFlavorRuleset('error', 'flat/requirements-typescript-error-flavor');\nplugin.configs['flat/stylistic-typescript'] = createStylisticTypeScriptRuleset('warn', 'flat/stylistic-typescript');\nplugin.configs['flat/stylistic-typescript-error'] = createStylisticTypeScriptRuleset('error', 'flat/stylistic-typescript-error');\nplugin.configs['flat/stylistic-typescript-flavor'] = createStylisticTypeScriptFlavorRuleset('warn', 'flat/stylistic-typescript-flavor');\nplugin.configs['flat/stylistic-typescript-flavor-error'] = createStylisticTypeScriptFlavorRuleset('error', 'flat/stylistic-typescript-error-flavor');\n\nplugin.configs.examples = /** @type {import('eslint').Linter.FlatConfig[]} */ ([\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 '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 // 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\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\nplugin.configs['default-expressions'] = /** @type {import('eslint').Linter.FlatConfig[]} */ ([\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 ...plugin.configs.examples[1].rules,\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\nplugin.configs['examples-and-default-expressions'] = /** @type {import('eslint').Linter.FlatConfig[]} */ ([\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 ...plugin.configs.examples.map((config) => {\n return {\n ...config,\n plugins: {},\n };\n }),\n ...plugin.configs['default-expressions'].map((config) => {\n return {\n ...config,\n plugins: {},\n };\n }),\n]);\n\nexport default plugin;\n"],"mappings":"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"}
|