eslint-plugin-jsdoc 44.1.0 → 44.2.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.
@@ -16,7 +16,7 @@ const getDefaultTagStructureForMode = mode => {
16
16
  const isJsdocTypescriptOrPermissive = isJsdocOrTypescript || isPermissive;
17
17
 
18
18
  // Properties:
19
- // `nameContents` - 'namepath-referencing'|'namepath-defining'|'text'|false
19
+ // `namepathRole` - 'namepath-referencing'|'namepath-defining'|'namepath-or-url-referencing'|'text'|false
20
20
  // `typeAllowed` - boolean
21
21
  // `nameRequired` - boolean
22
22
  // `typeRequired` - boolean
@@ -28,7 +28,7 @@ const getDefaultTagStructureForMode = mode => {
28
28
  // `property`/`prop` (no signature)
29
29
  // `modifies` (undocumented)
30
30
 
31
- // None of the `nameContents: 'namepath-defining'` show as having curly
31
+ // None of the `namepathRole: 'namepath-defining'` show as having curly
32
32
  // brackets for their name/namepath
33
33
 
34
34
  // Among `namepath-defining` and `namepath-referencing`, these do not seem
@@ -40,57 +40,55 @@ const getDefaultTagStructureForMode = mode => {
40
40
  // "namepath" (e.g., param can't define a namepath)
41
41
 
42
42
  // Once checking inline tags:
43
- // Todo: Re: `typeOrNameRequired`, `@link` (or @linkcode/@linkplain) seems
44
- // to require a namepath OR URL and might be checked as such.
45
43
  // Todo: Should support a `tutorialID` type (for `@tutorial` block and
46
44
  // inline)
47
45
 
48
46
  return new Map([['alias', new Map([
49
47
  // Signature seems to require a "namepath" (and no counter-examples)
50
- ['nameContents', 'namepath-referencing'],
48
+ ['namepathRole', 'namepath-referencing'],
51
49
  // "namepath"
52
- ['typeOrNameRequired', true]])], ['arg', new Map([['nameContents', 'namepath-defining'],
50
+ ['typeOrNameRequired', true]])], ['arg', new Map([['namepathRole', 'namepath-defining'],
53
51
  // See `param`
54
52
  ['nameRequired', true],
55
53
  // Has no formal signature in the docs but shows curly brackets
56
54
  // in the examples
57
- ['typeAllowed', true]])], ['argument', new Map([['nameContents', 'namepath-defining'],
55
+ ['typeAllowed', true]])], ['argument', new Map([['namepathRole', 'namepath-defining'],
58
56
  // See `param`
59
57
  ['nameRequired', true],
60
58
  // Has no formal signature in the docs but shows curly brackets
61
59
  // in the examples
62
60
  ['typeAllowed', true]])], ['augments', new Map([
63
61
  // Signature seems to require a "namepath" (and no counter-examples)
64
- ['nameContents', 'namepath-referencing'],
62
+ ['namepathRole', 'namepath-referencing'],
65
63
  // Does not show curly brackets in either the signature or examples
66
64
  ['typeAllowed', true],
67
65
  // "namepath"
68
66
  ['typeOrNameRequired', true]])], ['borrows', new Map([
69
67
  // `borrows` has a different format, however, so needs special parsing;
70
68
  // seems to require both, and as "namepath"'s
71
- ['nameContents', 'namepath-referencing'],
69
+ ['namepathRole', 'namepath-referencing'],
72
70
  // "namepath"
73
71
  ['typeOrNameRequired', true]])], ['callback', new Map([
74
72
  // Seems to require a "namepath" in the signature (with no
75
73
  // counter-examples); TypeScript does not enforce but seems
76
74
  // problematic as not attached so presumably not useable without it
77
- ['nameContents', 'namepath-defining'],
75
+ ['namepathRole', 'namepath-defining'],
78
76
  // "namepath"
79
77
  ['nameRequired', true]])], ['class', new Map([
80
78
  // Allows for "name"'s in signature, but indicated as optional
81
- ['nameContents', 'namepath-defining'],
79
+ ['namepathRole', 'namepath-defining'],
82
80
  // Not in use, but should be this value if using to power `empty-tags`
83
81
  ['nameAllowed', true], ['typeAllowed', true]])], ['const', new Map([
84
82
  // Allows for "name"'s in signature, but indicated as optional
85
- ['nameContents', 'namepath-defining'], ['typeAllowed', true]])], ['constant', new Map([
83
+ ['namepathRole', 'namepath-defining'], ['typeAllowed', true]])], ['constant', new Map([
86
84
  // Allows for "name"'s in signature, but indicated as optional
87
- ['nameContents', 'namepath-defining'], ['typeAllowed', true]])], ['constructor', new Map([
85
+ ['namepathRole', 'namepath-defining'], ['typeAllowed', true]])], ['constructor', new Map([
88
86
  // Allows for "name"'s in signature, but indicated as optional
89
- ['nameContents', 'namepath-defining'], ['typeAllowed', true]])], ['constructs', new Map([
87
+ ['namepathRole', 'namepath-defining'], ['typeAllowed', true]])], ['constructs', new Map([
90
88
  // Allows for "name"'s in signature, but indicated as optional
91
- ['nameContents', 'namepath-defining'], ['nameRequired', false], ['typeAllowed', false]])], ['define', new Map([['typeRequired', isClosure]])], ['emits', new Map([
89
+ ['namepathRole', 'namepath-defining'], ['nameRequired', false], ['typeAllowed', false]])], ['define', new Map([['typeRequired', isClosure]])], ['emits', new Map([
92
90
  // Signature seems to require a "name" (of an event) and no counter-examples
93
- ['nameContents', 'namepath-referencing'], ['nameRequired', true], ['typeAllowed', false]])], ['enum', new Map([
91
+ ['namepathRole', 'namepath-referencing'], ['nameRequired', true], ['typeAllowed', false]])], ['enum', new Map([
94
92
  // Has example showing curly brackets but not in doc signature
95
93
  ['typeAllowed', true]])], ['event', new Map([
96
94
  // The doc signature of `event` seems to require a "name"
@@ -98,13 +96,13 @@ const getDefaultTagStructureForMode = mode => {
98
96
  // Appears to require a "name" in its signature, albeit somewhat
99
97
  // different from other "name"'s (including as described
100
98
  // at https://jsdoc.app/about-namepaths.html )
101
- ['nameContents', 'namepath-defining']])], ['exception', new Map([
99
+ ['namepathRole', 'namepath-defining']])], ['exception', new Map([
102
100
  // Shows curly brackets in the signature and in the examples
103
101
  ['typeAllowed', true]])],
104
102
  // Closure
105
- ['export', new Map([['typeAllowed', isClosureOrPermissive]])], ['exports', new Map([['nameContents', 'namepath-defining'], ['nameRequired', isJsdoc], ['typeAllowed', isClosureOrPermissive]])], ['extends', new Map([
103
+ ['export', new Map([['typeAllowed', isClosureOrPermissive]])], ['exports', new Map([['namepathRole', 'namepath-defining'], ['nameRequired', isJsdoc], ['typeAllowed', isClosureOrPermissive]])], ['extends', new Map([
106
104
  // Signature seems to require a "namepath" (and no counter-examples)
107
- ['nameContents', 'namepath-referencing'],
105
+ ['namepathRole', 'namepath-referencing'],
108
106
  // Does not show curly brackets in either the signature or examples
109
107
  ['typeAllowed', isTypescriptOrClosure || isPermissive], ['nameRequired', isJsdoc],
110
108
  // "namepath"
@@ -112,63 +110,71 @@ const getDefaultTagStructureForMode = mode => {
112
110
  // Appears to require a "name" in its signature, albeit somewhat
113
111
  // different from other "name"'s (including as described
114
112
  // at https://jsdoc.app/about-namepaths.html )
115
- ['nameContents', 'namepath-defining'],
113
+ ['namepathRole', 'namepath-defining'],
116
114
  // "name" (and a special syntax for the `external` name)
117
115
  ['nameRequired', true], ['typeAllowed', false]])], ['fires', new Map([
118
116
  // Signature seems to require a "name" (of an event) and no
119
117
  // counter-examples
120
- ['nameContents', 'namepath-referencing'], ['nameRequired', true], ['typeAllowed', false]])], ['function', new Map([
118
+ ['namepathRole', 'namepath-referencing'], ['nameRequired', true], ['typeAllowed', false]])], ['function', new Map([
121
119
  // Allows for "name"'s in signature, but indicated as optional
122
- ['nameContents', 'namepath-defining'], ['nameRequired', false], ['typeAllowed', false]])], ['func', new Map([
120
+ ['namepathRole', 'namepath-defining'], ['nameRequired', false], ['typeAllowed', false]])], ['func', new Map([
123
121
  // Allows for "name"'s in signature, but indicated as optional
124
- ['nameContents', 'namepath-defining']])], ['host', new Map([
122
+ ['namepathRole', 'namepath-defining']])], ['host', new Map([
125
123
  // Appears to require a "name" in its signature, albeit somewhat
126
124
  // different from other "name"'s (including as described
127
125
  // at https://jsdoc.app/about-namepaths.html )
128
- ['nameContents', 'namepath-defining'],
126
+ ['namepathRole', 'namepath-defining'],
129
127
  // See `external`
130
128
  ['nameRequired', true], ['typeAllowed', false]])], ['interface', new Map([
131
129
  // Allows for "name" in signature, but indicates as optional
132
- ['nameContents', isJsdocTypescriptOrPermissive ? 'namepath-defining' : false],
130
+ ['namepathRole', isJsdocTypescriptOrPermissive ? 'namepath-defining' : false],
133
131
  // Not in use, but should be this value if using to power `empty-tags`
134
132
  ['nameAllowed', isClosure], ['typeAllowed', false]])], ['internal', new Map([
135
133
  // https://www.typescriptlang.org/tsconfig/#stripInternal
136
- ['nameContents', false],
134
+ ['namepathRole', false],
137
135
  // Not in use, but should be this value if using to power `empty-tags`
138
136
  ['nameAllowed', false]])], ['implements', new Map([
139
137
  // Shows curly brackets in the doc signature and examples
140
138
  // "typeExpression"
141
139
  ['typeRequired', true]])], ['lends', new Map([
142
140
  // Signature seems to require a "namepath" (and no counter-examples)
143
- ['nameContents', 'namepath-referencing'],
141
+ ['namepathRole', 'namepath-referencing'],
144
142
  // "namepath"
145
- ['typeOrNameRequired', true]])], ['listens', new Map([
143
+ ['typeOrNameRequired', true]])], ['link', new Map([
144
+ // Signature seems to require a namepath OR URL and might be checked as such.
145
+ ['namepathRole', 'namepath-or-url-referencing']])], ['linkcode', new Map([
146
+ // Synonym for "link"
147
+ // Signature seems to require a namepath OR URL and might be checked as such.
148
+ ['namepathRole', 'namepath-or-url-referencing']])], ['linkplain', new Map([
149
+ // Synonym for "link"
150
+ // Signature seems to require a namepath OR URL and might be checked as such.
151
+ ['namepathRole', 'namepath-or-url-referencing']])], ['listens', new Map([
146
152
  // Signature seems to require a "name" (of an event) and no
147
153
  // counter-examples
148
- ['nameContents', 'namepath-referencing'], ['nameRequired', true], ['typeAllowed', false]])], ['member', new Map([
154
+ ['namepathRole', 'namepath-referencing'], ['nameRequired', true], ['typeAllowed', false]])], ['member', new Map([
149
155
  // Allows for "name"'s in signature, but indicated as optional
150
- ['nameContents', 'namepath-defining'],
156
+ ['namepathRole', 'namepath-defining'],
151
157
  // Has example showing curly brackets but not in doc signature
152
158
  ['typeAllowed', true]])], ['memberof', new Map([
153
159
  // Signature seems to require a "namepath" (and no counter-examples),
154
160
  // though it allows an incomplete namepath ending with connecting symbol
155
- ['nameContents', 'namepath-referencing'],
161
+ ['namepathRole', 'namepath-referencing'],
156
162
  // "namepath"
157
163
  ['typeOrNameRequired', true]])], ['memberof!', new Map([
158
164
  // Signature seems to require a "namepath" (and no counter-examples),
159
165
  // though it allows an incomplete namepath ending with connecting symbol
160
- ['nameContents', 'namepath-referencing'],
166
+ ['namepathRole', 'namepath-referencing'],
161
167
  // "namepath"
162
168
  ['typeOrNameRequired', true]])], ['method', new Map([
163
169
  // Allows for "name"'s in signature, but indicated as optional
164
- ['nameContents', 'namepath-defining']])], ['mixes', new Map([
170
+ ['namepathRole', 'namepath-defining']])], ['mixes', new Map([
165
171
  // Signature seems to require a "OtherObjectPath" with no
166
172
  // counter-examples
167
- ['nameContents', 'namepath-referencing'],
173
+ ['namepathRole', 'namepath-referencing'],
168
174
  // "OtherObjectPath"
169
175
  ['typeOrNameRequired', true]])], ['mixin', new Map([
170
176
  // Allows for "name"'s in signature, but indicated as optional
171
- ['nameContents', 'namepath-defining'], ['nameRequired', false], ['typeAllowed', false]])], ['modifies', new Map([
177
+ ['namepathRole', 'namepath-defining'], ['nameRequired', false], ['typeAllowed', false]])], ['modifies', new Map([
172
178
  // Has no documentation, but test example has curly brackets, and
173
179
  // "name" would be suggested rather than "namepath" based on example;
174
180
  // not sure if name is required
@@ -176,23 +182,23 @@ const getDefaultTagStructureForMode = mode => {
176
182
  // Optional "name" and no curly brackets
177
183
  // this block impacts `no-undefined-types` and `valid-types` (search for
178
184
  // "isNamepathDefiningTag|tagMightHaveNamepath|tagMightHaveEitherTypeOrNamePosition")
179
- ['nameContents', isJsdoc ? 'namepath-defining' : 'text'],
185
+ ['namepathRole', isJsdoc ? 'namepath-defining' : 'text'],
180
186
  // Shows the signature with curly brackets but not in the example
181
187
  ['typeAllowed', true]])], ['name', new Map([
182
188
  // Seems to require a "namepath" in the signature (with no
183
189
  // counter-examples)
184
- ['nameContents', 'namepath-defining'],
190
+ ['namepathRole', 'namepath-defining'],
185
191
  // "namepath"
186
192
  ['nameRequired', true],
187
193
  // "namepath"
188
194
  ['typeOrNameRequired', true]])], ['namespace', new Map([
189
195
  // Allows for "name"'s in signature, but indicated as optional
190
- ['nameContents', 'namepath-defining'],
196
+ ['namepathRole', 'namepath-defining'],
191
197
  // Shows the signature with curly brackets but not in the example
192
198
  ['typeAllowed', true]])], ['package', new Map([
193
199
  // Shows the signature with curly brackets but not in the example
194
200
  // "typeExpression"
195
- ['typeAllowed', isClosureOrPermissive]])], ['param', new Map([['nameContents', 'namepath-defining'],
201
+ ['typeAllowed', isClosureOrPermissive]])], ['param', new Map([['namepathRole', 'namepath-defining'],
196
202
  // Though no signature provided requiring, per
197
203
  // https://jsdoc.app/tags-param.html:
198
204
  // "The @param tag requires you to specify the name of the parameter you
@@ -203,12 +209,12 @@ const getDefaultTagStructureForMode = mode => {
203
209
  ['typeAllowed', true]])], ['private', new Map([
204
210
  // Shows the signature with curly brackets but not in the example
205
211
  // "typeExpression"
206
- ['typeAllowed', isClosureOrPermissive]])], ['prop', new Map([['nameContents', 'namepath-defining'],
212
+ ['typeAllowed', isClosureOrPermissive]])], ['prop', new Map([['namepathRole', 'namepath-defining'],
207
213
  // See `property`
208
214
  ['nameRequired', true],
209
215
  // Has no formal signature in the docs but shows curly brackets
210
216
  // in the examples
211
- ['typeAllowed', true]])], ['property', new Map([['nameContents', 'namepath-defining'],
217
+ ['typeAllowed', true]])], ['property', new Map([['namepathRole', 'namepath-defining'],
212
218
  // No docs indicate required, but since parallel to `param`, we treat as
213
219
  // such:
214
220
  ['nameRequired', true],
@@ -221,7 +227,7 @@ const getDefaultTagStructureForMode = mode => {
221
227
  // Does not show a signature nor show curly brackets in the example
222
228
  ['typeAllowed', isClosureOrPermissive]])], ['requires', new Map([
223
229
  // <someModuleName>
224
- ['nameContents', 'namepath-referencing'], ['nameRequired', true], ['typeAllowed', false]])], ['returns', new Map([
230
+ ['namepathRole', 'namepath-referencing'], ['nameRequired', true], ['typeAllowed', false]])], ['returns', new Map([
225
231
  // Shows curly brackets in the signature and in the examples
226
232
  ['typeAllowed', true]])], ['return', new Map([
227
233
  // Shows curly brackets in the signature and in the examples
@@ -230,16 +236,16 @@ const getDefaultTagStructureForMode = mode => {
230
236
  ['typeRequired', true]])], ['see', new Map([
231
237
  // Signature allows for "namepath" or text, so user must configure to
232
238
  // 'namepath-referencing' to enforce checks
233
- ['nameContents', 'text']])], ['static', new Map([
239
+ ['namepathRole', 'text']])], ['static', new Map([
234
240
  // Does not show a signature nor show curly brackets in the example
235
- ['typeAllowed', isClosureOrPermissive]])], ['suppress', new Map([['nameContents', !isClosure], ['typeRequired', isClosure]])], ['template', new Map([['nameContents', isJsdoc ? 'text' : 'namepath-referencing'],
236
- // Though defines `nameContents: 'namepath-defining'` in a sense, it is
241
+ ['typeAllowed', isClosureOrPermissive]])], ['suppress', new Map([['namepathRole', !isClosure], ['typeRequired', isClosure]])], ['template', new Map([['namepathRole', isJsdoc ? 'text' : 'namepath-referencing'],
242
+ // Though defines `namepathRole: 'namepath-defining'` in a sense, it is
237
243
  // not parseable in the same way for template (e.g., allowing commas),
238
244
  // so not adding
239
245
  ['typeAllowed', isTypescriptOrClosure || isPermissive]])], ['this', new Map([
240
246
  // Signature seems to require a "namepath" (and no counter-examples)
241
247
  // Not used with namepath in Closure/TypeScript, however
242
- ['nameContents', isJsdoc ? 'namepath-referencing' : false], ['typeRequired', isTypescriptOrClosure],
248
+ ['namepathRole', isJsdoc ? 'namepath-referencing' : false], ['typeRequired', isTypescriptOrClosure],
243
249
  // namepath
244
250
  ['typeOrNameRequired', isJsdoc]])], ['throws', new Map([
245
251
  // Shows curly brackets in the signature and in the examples
@@ -251,7 +257,7 @@ const getDefaultTagStructureForMode = mode => {
251
257
  ['typeRequired', true]])], ['typedef', new Map([
252
258
  // Seems to require a "namepath" in the signature (with no
253
259
  // counter-examples)
254
- ['nameContents', 'namepath-defining'],
260
+ ['namepathRole', 'namepath-defining'],
255
261
  // TypeScript may allow it to be dropped if followed by @property or @member;
256
262
  // also shown as missing in Closure
257
263
  // "namepath"
@@ -265,7 +271,7 @@ const getDefaultTagStructureForMode = mode => {
265
271
  // "namepath"
266
272
  ['typeOrNameRequired', !isTypescript]])], ['var', new Map([
267
273
  // Allows for "name"'s in signature, but indicated as optional
268
- ['nameContents', 'namepath-defining'],
274
+ ['namepathRole', 'namepath-defining'],
269
275
  // Has example showing curly brackets but not in doc signature
270
276
  ['typeAllowed', true]])], ['yields', new Map([
271
277
  // Shows curly brackets in the signature and in the examples
@@ -1 +1 @@
1
- {"version":3,"file":"getDefaultTagStructureForMode.js","names":["getDefaultTagStructureForMode","mode","isJsdoc","isClosure","isTypescript","isPermissive","isJsdocOrPermissive","isJsdocOrTypescript","isTypescriptOrClosure","isClosureOrPermissive","isJsdocTypescriptOrPermissive","Map","_default","exports","default","module"],"sources":["../src/getDefaultTagStructureForMode.js"],"sourcesContent":["const getDefaultTagStructureForMode = (mode) => {\n const isJsdoc = mode === 'jsdoc';\n const isClosure = mode === 'closure';\n const isTypescript = mode === 'typescript';\n const isPermissive = mode === 'permissive';\n\n const isJsdocOrPermissive = isJsdoc || isPermissive;\n const isJsdocOrTypescript = isJsdoc || isTypescript;\n const isTypescriptOrClosure = isTypescript || isClosure;\n const isClosureOrPermissive = isClosure || isPermissive;\n const isJsdocTypescriptOrPermissive = isJsdocOrTypescript || isPermissive;\n\n // Properties:\n // `nameContents` - 'namepath-referencing'|'namepath-defining'|'text'|false\n // `typeAllowed` - boolean\n // `nameRequired` - boolean\n // `typeRequired` - boolean\n // `typeOrNameRequired` - boolean\n\n // All of `typeAllowed` have a signature with \"type\" except for\n // `augments`/`extends` (\"namepath\")\n // `param`/`arg`/`argument` (no signature)\n // `property`/`prop` (no signature)\n // `modifies` (undocumented)\n\n // None of the `nameContents: 'namepath-defining'` show as having curly\n // brackets for their name/namepath\n\n // Among `namepath-defining` and `namepath-referencing`, these do not seem\n // to allow curly brackets in their doc signature or examples (`modifies`\n // references namepaths within its type brackets and `param` is\n // name-defining but not namepath-defining, so not part of these groups)\n\n // Todo: Should support special processing for \"name\" as distinct from\n // \"namepath\" (e.g., param can't define a namepath)\n\n // Once checking inline tags:\n // Todo: Re: `typeOrNameRequired`, `@link` (or @linkcode/@linkplain) seems\n // to require a namepath OR URL and might be checked as such.\n // Todo: Should support a `tutorialID` type (for `@tutorial` block and\n // inline)\n\n return new Map([\n [\n 'alias', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples)\n [\n 'nameContents', 'namepath-referencing',\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'arg', new Map([\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // See `param`\n [\n 'nameRequired', true,\n ],\n\n // Has no formal signature in the docs but shows curly brackets\n // in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'argument', new Map([\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // See `param`\n [\n 'nameRequired', true,\n ],\n\n // Has no formal signature in the docs but shows curly brackets\n // in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'augments', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples)\n [\n 'nameContents', 'namepath-referencing',\n ],\n\n // Does not show curly brackets in either the signature or examples\n [\n 'typeAllowed', true,\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'borrows', new Map([\n // `borrows` has a different format, however, so needs special parsing;\n // seems to require both, and as \"namepath\"'s\n [\n 'nameContents', 'namepath-referencing',\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'callback', new Map([\n // Seems to require a \"namepath\" in the signature (with no\n // counter-examples); TypeScript does not enforce but seems\n // problematic as not attached so presumably not useable without it\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // \"namepath\"\n [\n 'nameRequired', true,\n ],\n ]),\n ],\n\n [\n 'class', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // Not in use, but should be this value if using to power `empty-tags`\n [\n 'nameAllowed', true,\n ],\n\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'const', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'nameContents', 'namepath-defining',\n ],\n\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n [\n 'constant', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'nameContents', 'namepath-defining',\n ],\n\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n [\n 'constructor', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'nameContents', 'namepath-defining',\n ],\n\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'constructs', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'nameContents', 'namepath-defining',\n ],\n\n [\n 'nameRequired', false,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'define', new Map([\n [\n 'typeRequired', isClosure,\n ],\n ]),\n ],\n\n [\n 'emits', new Map([\n // Signature seems to require a \"name\" (of an event) and no counter-examples\n [\n 'nameContents', 'namepath-referencing',\n ],\n\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'enum', new Map([\n // Has example showing curly brackets but not in doc signature\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'event', new Map([\n // The doc signature of `event` seems to require a \"name\"\n [\n 'nameRequired', true,\n ],\n\n // Appears to require a \"name\" in its signature, albeit somewhat\n // different from other \"name\"'s (including as described\n // at https://jsdoc.app/about-namepaths.html )\n [\n 'nameContents', 'namepath-defining',\n ],\n ]),\n ],\n\n [\n 'exception', new Map([\n // Shows curly brackets in the signature and in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n // Closure\n [\n 'export', new Map([\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'exports', new Map([\n [\n 'nameContents', 'namepath-defining',\n ],\n\n [\n 'nameRequired', isJsdoc,\n ],\n\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'extends', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples)\n [\n 'nameContents', 'namepath-referencing',\n ],\n\n // Does not show curly brackets in either the signature or examples\n [\n 'typeAllowed', isTypescriptOrClosure || isPermissive,\n ],\n\n [\n 'nameRequired', isJsdoc,\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', isTypescriptOrClosure || isPermissive,\n ],\n ]),\n ],\n\n [\n 'external', new Map([\n // Appears to require a \"name\" in its signature, albeit somewhat\n // different from other \"name\"'s (including as described\n // at https://jsdoc.app/about-namepaths.html )\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // \"name\" (and a special syntax for the `external` name)\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'fires', new Map([\n // Signature seems to require a \"name\" (of an event) and no\n // counter-examples\n [\n 'nameContents', 'namepath-referencing',\n ],\n\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'function', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'nameContents', 'namepath-defining',\n ],\n\n [\n 'nameRequired', false,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n [\n 'func', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'nameContents', 'namepath-defining',\n ],\n ]),\n ],\n\n [\n 'host', new Map([\n // Appears to require a \"name\" in its signature, albeit somewhat\n // different from other \"name\"'s (including as described\n // at https://jsdoc.app/about-namepaths.html )\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // See `external`\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'interface', new Map([\n // Allows for \"name\" in signature, but indicates as optional\n [\n 'nameContents',\n isJsdocTypescriptOrPermissive ? 'namepath-defining' : false,\n ],\n\n // Not in use, but should be this value if using to power `empty-tags`\n [\n 'nameAllowed', isClosure,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'internal', new Map([\n // https://www.typescriptlang.org/tsconfig/#stripInternal\n [\n 'nameContents', false,\n ],\n // Not in use, but should be this value if using to power `empty-tags`\n [\n 'nameAllowed', false,\n ],\n ]),\n ],\n\n [\n 'implements', new Map([\n // Shows curly brackets in the doc signature and examples\n // \"typeExpression\"\n [\n 'typeRequired', true,\n ],\n ]),\n ],\n\n [\n 'lends', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples)\n [\n 'nameContents', 'namepath-referencing',\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'listens', new Map([\n // Signature seems to require a \"name\" (of an event) and no\n // counter-examples\n [\n 'nameContents', 'namepath-referencing',\n ],\n\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'member', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // Has example showing curly brackets but not in doc signature\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'memberof', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples),\n // though it allows an incomplete namepath ending with connecting symbol\n [\n 'nameContents', 'namepath-referencing',\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n [\n 'memberof!', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples),\n // though it allows an incomplete namepath ending with connecting symbol\n [\n 'nameContents', 'namepath-referencing',\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'method', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'nameContents', 'namepath-defining',\n ],\n ]),\n ],\n [\n 'mixes', new Map([\n // Signature seems to require a \"OtherObjectPath\" with no\n // counter-examples\n [\n 'nameContents', 'namepath-referencing',\n ],\n\n // \"OtherObjectPath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'mixin', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'nameContents', 'namepath-defining',\n ],\n\n [\n 'nameRequired', false,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'modifies', new Map([\n // Has no documentation, but test example has curly brackets, and\n // \"name\" would be suggested rather than \"namepath\" based on example;\n // not sure if name is required\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'module', new Map([\n // Optional \"name\" and no curly brackets\n // this block impacts `no-undefined-types` and `valid-types` (search for\n // \"isNamepathDefiningTag|tagMightHaveNamepath|tagMightHaveEitherTypeOrNamePosition\")\n [\n 'nameContents', isJsdoc ? 'namepath-defining' : 'text',\n ],\n\n // Shows the signature with curly brackets but not in the example\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'name', new Map([\n // Seems to require a \"namepath\" in the signature (with no\n // counter-examples)\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // \"namepath\"\n [\n 'nameRequired', true,\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'namespace', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // Shows the signature with curly brackets but not in the example\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n [\n 'package', new Map([\n // Shows the signature with curly brackets but not in the example\n // \"typeExpression\"\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'param', new Map([\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // Though no signature provided requiring, per\n // https://jsdoc.app/tags-param.html:\n // \"The @param tag requires you to specify the name of the parameter you\n // are documenting.\"\n [\n 'nameRequired', true,\n ],\n\n // Has no formal signature in the docs but shows curly brackets\n // in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'private', new Map([\n // Shows the signature with curly brackets but not in the example\n // \"typeExpression\"\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'prop', new Map([\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // See `property`\n [\n 'nameRequired', true,\n ],\n\n // Has no formal signature in the docs but shows curly brackets\n // in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'property', new Map([\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // No docs indicate required, but since parallel to `param`, we treat as\n // such:\n [\n 'nameRequired', true,\n ],\n\n // Has no formal signature in the docs but shows curly brackets\n // in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'protected', new Map([\n // Shows the signature with curly brackets but not in the example\n // \"typeExpression\"\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'public', new Map([\n // Does not show a signature nor show curly brackets in the example\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'requires', new Map([\n // <someModuleName>\n [\n 'nameContents', 'namepath-referencing',\n ],\n\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'returns', new Map([\n // Shows curly brackets in the signature and in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n [\n 'return', new Map([\n // Shows curly brackets in the signature and in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'satisfies', new Map([\n // Shows curly brackets in the doc signature and examples\n [\n 'typeRequired', true,\n ],\n ]),\n ],\n\n [\n 'see', new Map([\n // Signature allows for \"namepath\" or text, so user must configure to\n // 'namepath-referencing' to enforce checks\n [\n 'nameContents', 'text',\n ],\n ]),\n ],\n\n [\n 'static', new Map([\n // Does not show a signature nor show curly brackets in the example\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'suppress', new Map([\n [\n 'nameContents', !isClosure,\n ],\n [\n 'typeRequired', isClosure,\n ],\n ]),\n ],\n\n [\n 'template', new Map([\n [\n 'nameContents', isJsdoc ? 'text' : 'namepath-referencing',\n ],\n\n // Though defines `nameContents: 'namepath-defining'` in a sense, it is\n // not parseable in the same way for template (e.g., allowing commas),\n // so not adding\n [\n 'typeAllowed', isTypescriptOrClosure || isPermissive,\n ],\n ]),\n ],\n\n [\n 'this', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples)\n // Not used with namepath in Closure/TypeScript, however\n [\n 'nameContents', isJsdoc ? 'namepath-referencing' : false,\n ],\n\n [\n 'typeRequired', isTypescriptOrClosure,\n ],\n\n // namepath\n [\n 'typeOrNameRequired', isJsdoc,\n ],\n ]),\n ],\n\n [\n 'throws', new Map([\n // Shows curly brackets in the signature and in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'tutorial', new Map([\n // (a tutorial ID)\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'type', new Map([\n // Shows curly brackets in the doc signature and examples\n // \"typeName\"\n [\n 'typeRequired', true,\n ],\n ]),\n ],\n\n [\n 'typedef', new Map([\n // Seems to require a \"namepath\" in the signature (with no\n // counter-examples)\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // TypeScript may allow it to be dropped if followed by @property or @member;\n // also shown as missing in Closure\n // \"namepath\"\n [\n 'nameRequired', isJsdocOrPermissive,\n ],\n\n // Is not `typeRequired` for TypeScript because it gives an error:\n // JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags.\n\n // Has example showing curly brackets but not in doc signature\n [\n 'typeAllowed', true,\n ],\n\n // TypeScript may allow it to be dropped if followed by @property or @member\n // \"namepath\"\n [\n 'typeOrNameRequired', !isTypescript,\n ],\n ]),\n ],\n\n [\n 'var', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'nameContents', 'namepath-defining',\n ],\n\n // Has example showing curly brackets but not in doc signature\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'yields', new Map([\n // Shows curly brackets in the signature and in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n [\n 'yield', new Map([\n // Shows curly brackets in the signature and in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n ]);\n};\n\nexport default getDefaultTagStructureForMode;\n"],"mappings":";;;;;;AAAA,MAAMA,6BAA6B,GAAIC,IAAI,IAAK;EAC9C,MAAMC,OAAO,GAAGD,IAAI,KAAK,OAAO;EAChC,MAAME,SAAS,GAAGF,IAAI,KAAK,SAAS;EACpC,MAAMG,YAAY,GAAGH,IAAI,KAAK,YAAY;EAC1C,MAAMI,YAAY,GAAGJ,IAAI,KAAK,YAAY;EAE1C,MAAMK,mBAAmB,GAAGJ,OAAO,IAAIG,YAAY;EACnD,MAAME,mBAAmB,GAAGL,OAAO,IAAIE,YAAY;EACnD,MAAMI,qBAAqB,GAAGJ,YAAY,IAAID,SAAS;EACvD,MAAMM,qBAAqB,GAAGN,SAAS,IAAIE,YAAY;EACvD,MAAMK,6BAA6B,GAAGH,mBAAmB,IAAIF,YAAY;;EAEzE;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;;EAEA;EACA;;EAEA;EACA;EACA;EACA;;EAEA;EACA;;EAEA;EACA;EACA;EACA;EACA;;EAEA,OAAO,IAAIM,GAAG,CAAC,CACb,CACE,OAAO,EAAE,IAAIA,GAAG,CAAC;EACf;EACA,CACE,cAAc,EAAE,sBAAsB,CACvC;EAED;EACA,CACE,oBAAoB,EAAE,IAAI,CAC3B,CACF,CAAC,CACH,EAED,CACE,KAAK,EAAE,IAAIA,GAAG,CAAC,CACb,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA,CACE,cAAc,EAAE,IAAI,CACrB;EAED;EACA;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIA,GAAG,CAAC,CAClB,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA,CACE,cAAc,EAAE,IAAI,CACrB;EAED;EACA;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIA,GAAG,CAAC;EAClB;EACA,CACE,cAAc,EAAE,sBAAsB,CACvC;EAED;EACA,CACE,aAAa,EAAE,IAAI,CACpB;EAED;EACA,CACE,oBAAoB,EAAE,IAAI,CAC3B,CACF,CAAC,CACH,EAED,CACE,SAAS,EAAE,IAAIA,GAAG,CAAC;EACjB;EACA;EACA,CACE,cAAc,EAAE,sBAAsB,CACvC;EAED;EACA,CACE,oBAAoB,EAAE,IAAI,CAC3B,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIA,GAAG,CAAC;EAClB;EACA;EACA;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA,CACE,cAAc,EAAE,IAAI,CACrB,CACF,CAAC,CACH,EAED,CACE,OAAO,EAAE,IAAIA,GAAG,CAAC;EACf;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA,CACE,aAAa,EAAE,IAAI,CACpB,EAED,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,OAAO,EAAE,IAAIA,GAAG,CAAC;EACf;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC,EAED,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EACD,CACE,UAAU,EAAE,IAAIA,GAAG,CAAC;EAClB;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC,EAED,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EACD,CACE,aAAa,EAAE,IAAIA,GAAG,CAAC;EACrB;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC,EAED,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,YAAY,EAAE,IAAIA,GAAG,CAAC;EACpB;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC,EAED,CACE,cAAc,EAAE,KAAK,CACtB,EAED,CACE,aAAa,EAAE,KAAK,CACrB,CACF,CAAC,CACH,EAED,CACE,QAAQ,EAAE,IAAIA,GAAG,CAAC,CAChB,CACE,cAAc,EAAER,SAAS,CAC1B,CACF,CAAC,CACH,EAED,CACE,OAAO,EAAE,IAAIQ,GAAG,CAAC;EACf;EACA,CACE,cAAc,EAAE,sBAAsB,CACvC,EAED,CACE,cAAc,EAAE,IAAI,CACrB,EAED,CACE,aAAa,EAAE,KAAK,CACrB,CACF,CAAC,CACH,EAED,CACE,MAAM,EAAE,IAAIA,GAAG,CAAC;EACd;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,OAAO,EAAE,IAAIA,GAAG,CAAC;EACf;EACA,CACE,cAAc,EAAE,IAAI,CACrB;EAED;EACA;EACA;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC,CACF,CAAC,CACH,EAED,CACE,WAAW,EAAE,IAAIA,GAAG,CAAC;EACnB;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH;EAED;EACA,CACE,QAAQ,EAAE,IAAIA,GAAG,CAAC,CAChB,CACE,aAAa,EAAEF,qBAAqB,CACrC,CACF,CAAC,CACH,EAED,CACE,SAAS,EAAE,IAAIE,GAAG,CAAC,CACjB,CACE,cAAc,EAAE,mBAAmB,CACpC,EAED,CACE,cAAc,EAAET,OAAO,CACxB,EAED,CACE,aAAa,EAAEO,qBAAqB,CACrC,CACF,CAAC,CACH,EAED,CACE,SAAS,EAAE,IAAIE,GAAG,CAAC;EACjB;EACA,CACE,cAAc,EAAE,sBAAsB,CACvC;EAED;EACA,CACE,aAAa,EAAEH,qBAAqB,IAAIH,YAAY,CACrD,EAED,CACE,cAAc,EAAEH,OAAO,CACxB;EAED;EACA,CACE,oBAAoB,EAAEM,qBAAqB,IAAIH,YAAY,CAC5D,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIM,GAAG,CAAC;EAClB;EACA;EACA;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA,CACE,cAAc,EAAE,IAAI,CACrB,EAED,CACE,aAAa,EAAE,KAAK,CACrB,CACF,CAAC,CACH,EAED,CACE,OAAO,EAAE,IAAIA,GAAG,CAAC;EACf;EACA;EACA,CACE,cAAc,EAAE,sBAAsB,CACvC,EAED,CACE,cAAc,EAAE,IAAI,CACrB,EAED,CACE,aAAa,EAAE,KAAK,CACrB,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIA,GAAG,CAAC;EAClB;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC,EAED,CACE,cAAc,EAAE,KAAK,CACtB,EAED,CACE,aAAa,EAAE,KAAK,CACrB,CACF,CAAC,CACH,EACD,CAC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B,CACpC;EAED;EACA;EACA;EACA;EACA,CACE,cAAc,EAAE,IAAI,CACrB;EAED;EACA;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,SAAS,EAAE,IAAIA,GAAG,CAAC;EACjB;EACA;EACA,CACE,aAAa,EAAEF,qBAAqB,CACrC,CACF,CAAC,CACH,EAED,CACE,MAAM,EAAE,IAAIE,GAAG,CAAC,CACd,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA,CACE,cAAc,EAAE,IAAI,CACrB;EAED;EACA;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIA,GAAG,CAAC,CAClB,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA;EACA,CACE,cAAc,EAAE,IAAI,CACrB;EAED;EACA;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,WAAW,EAAE,IAAIA,GAAG,CAAC;EACnB;EACA;EACA,CACE,aAAa,EAAEF,qBAAqB,CACrC,CACF,CAAC,CACH,EAED,CACE,QAAQ,EAAE,IAAIE,GAAG,CAAC;EAChB;EACA,CACE,aAAa,EAAEF,qBAAqB,CACrC,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIE,GAAG,CAAC;EAClB;EACA,CACE,cAAc,EAAE,sBAAsB,CACvC,EAED,CACE,cAAc,EAAE,IAAI,CACrB,EAED,CACE,aAAa,EAAE,KAAK,CACrB,CACF,CAAC,CACH,EAED,CACE,SAAS,EAAE,IAAIA,GAAG,CAAC;EACjB;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EACD,CACE,QAAQ,EAAE,IAAIA,GAAG,CAAC;EAChB;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,WAAW,EAAE,IAAIA,GAAG,CAAC;EACnB;EACA,CACE,cAAc,EAAE,IAAI,CACrB,CACF,CAAC,CACH,EAED,CACE,KAAK,EAAE,IAAIA,GAAG,CAAC;EACb;EACA;EACA,CACE,cAAc,EAAE,MAAM,CACvB,CACF,CAAC,CACH,EAED,CACE,QAAQ,EAAE,IAAIA,GAAG,CAAC;EAChB;EACA,CACE,aAAa,EAAEF,qBAAqB,CACrC,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIE,GAAG,CAAC,CAClB,CACE,cAAc,EAAE,CAACR,SAAS,CAC3B,EACD,CACE,cAAc,EAAEA,SAAS,CAC1B,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIQ,GAAG,CAAC,CAClB,CACE,cAAc,EAAET,OAAO,GAAG,MAAM,GAAG,sBAAsB,CAC1D;EAED;EACA;EACA;EACA,CACE,aAAa,EAAEM,qBAAqB,IAAIH,YAAY,CACrD,CACF,CAAC,CACH,EAED,CACE,MAAM,EAAE,IAAIM,GAAG,CAAC;EACd;EACA;EACA,CACE,cAAc,EAAET,OAAO,GAAG,sBAAsB,GAAG,KAAK,CACzD,EAED,CACE,cAAc,EAAEM,qBAAqB,CACtC;EAED;EACA,CACE,oBAAoB,EAAEN,OAAO,CAC9B,CACF,CAAC,CACH,EAED,CACE,QAAQ,EAAE,IAAIS,GAAG,CAAC;EAChB;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIA,GAAG,CAAC;EAClB;EACA,CACE,cAAc,EAAE,IAAI,CACrB,EAED,CACE,aAAa,EAAE,KAAK,CACrB,CACF,CAAC,CACH,EAED,CACE,MAAM,EAAE,IAAIA,GAAG,CAAC;EACd;EACA;EACA,CACE,cAAc,EAAE,IAAI,CACrB,CACF,CAAC,CACH,EAED,CACE,SAAS,EAAE,IAAIA,GAAG,CAAC;EACjB;EACA;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA;EACA;EACA,CACE,cAAc,EAAEL,mBAAmB,CACpC;EAED;EACA;;EAEA;EACA,CACE,aAAa,EAAE,IAAI,CACpB;EAED;EACA;EACA,CACE,oBAAoB,EAAE,CAACF,YAAY,CACpC,CACF,CAAC,CACH,EAED,CACE,KAAK,EAAE,IAAIO,GAAG,CAAC;EACb;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,QAAQ,EAAE,IAAIA,GAAG,CAAC;EAChB;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EACD,CACE,OAAO,EAAE,IAAIA,GAAG,CAAC;EACf;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,CACF,CAAC;AACJ,CAAC;AAAC,IAAAC,QAAA,GAEaZ,6BAA6B;AAAAa,OAAA,CAAAC,OAAA,GAAAF,QAAA;AAAAG,MAAA,CAAAF,OAAA,GAAAA,OAAA,CAAAC,OAAA"}
1
+ {"version":3,"file":"getDefaultTagStructureForMode.js","names":["getDefaultTagStructureForMode","mode","isJsdoc","isClosure","isTypescript","isPermissive","isJsdocOrPermissive","isJsdocOrTypescript","isTypescriptOrClosure","isClosureOrPermissive","isJsdocTypescriptOrPermissive","Map","_default","exports","default","module"],"sources":["../src/getDefaultTagStructureForMode.js"],"sourcesContent":["const getDefaultTagStructureForMode = (mode) => {\n const isJsdoc = mode === 'jsdoc';\n const isClosure = mode === 'closure';\n const isTypescript = mode === 'typescript';\n const isPermissive = mode === 'permissive';\n\n const isJsdocOrPermissive = isJsdoc || isPermissive;\n const isJsdocOrTypescript = isJsdoc || isTypescript;\n const isTypescriptOrClosure = isTypescript || isClosure;\n const isClosureOrPermissive = isClosure || isPermissive;\n const isJsdocTypescriptOrPermissive = isJsdocOrTypescript || isPermissive;\n\n // Properties:\n // `namepathRole` - 'namepath-referencing'|'namepath-defining'|'namepath-or-url-referencing'|'text'|false\n // `typeAllowed` - boolean\n // `nameRequired` - boolean\n // `typeRequired` - boolean\n // `typeOrNameRequired` - boolean\n\n // All of `typeAllowed` have a signature with \"type\" except for\n // `augments`/`extends` (\"namepath\")\n // `param`/`arg`/`argument` (no signature)\n // `property`/`prop` (no signature)\n // `modifies` (undocumented)\n\n // None of the `namepathRole: 'namepath-defining'` show as having curly\n // brackets for their name/namepath\n\n // Among `namepath-defining` and `namepath-referencing`, these do not seem\n // to allow curly brackets in their doc signature or examples (`modifies`\n // references namepaths within its type brackets and `param` is\n // name-defining but not namepath-defining, so not part of these groups)\n\n // Todo: Should support special processing for \"name\" as distinct from\n // \"namepath\" (e.g., param can't define a namepath)\n\n // Once checking inline tags:\n // Todo: Should support a `tutorialID` type (for `@tutorial` block and\n // inline)\n\n return new Map([\n [\n 'alias', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples)\n [\n 'namepathRole', 'namepath-referencing',\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'arg', new Map([\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // See `param`\n [\n 'nameRequired', true,\n ],\n\n // Has no formal signature in the docs but shows curly brackets\n // in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'argument', new Map([\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // See `param`\n [\n 'nameRequired', true,\n ],\n\n // Has no formal signature in the docs but shows curly brackets\n // in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'augments', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples)\n [\n 'namepathRole', 'namepath-referencing',\n ],\n\n // Does not show curly brackets in either the signature or examples\n [\n 'typeAllowed', true,\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'borrows', new Map([\n // `borrows` has a different format, however, so needs special parsing;\n // seems to require both, and as \"namepath\"'s\n [\n 'namepathRole', 'namepath-referencing',\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'callback', new Map([\n // Seems to require a \"namepath\" in the signature (with no\n // counter-examples); TypeScript does not enforce but seems\n // problematic as not attached so presumably not useable without it\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // \"namepath\"\n [\n 'nameRequired', true,\n ],\n ]),\n ],\n\n [\n 'class', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // Not in use, but should be this value if using to power `empty-tags`\n [\n 'nameAllowed', true,\n ],\n\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'const', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n [\n 'constant', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n [\n 'constructor', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'constructs', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n [\n 'nameRequired', false,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'define', new Map([\n [\n 'typeRequired', isClosure,\n ],\n ]),\n ],\n\n [\n 'emits', new Map([\n // Signature seems to require a \"name\" (of an event) and no counter-examples\n [\n 'namepathRole', 'namepath-referencing',\n ],\n\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'enum', new Map([\n // Has example showing curly brackets but not in doc signature\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'event', new Map([\n // The doc signature of `event` seems to require a \"name\"\n [\n 'nameRequired', true,\n ],\n\n // Appears to require a \"name\" in its signature, albeit somewhat\n // different from other \"name\"'s (including as described\n // at https://jsdoc.app/about-namepaths.html )\n [\n 'namepathRole', 'namepath-defining',\n ],\n ]),\n ],\n\n [\n 'exception', new Map([\n // Shows curly brackets in the signature and in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n // Closure\n [\n 'export', new Map([\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'exports', new Map([\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n [\n 'nameRequired', isJsdoc,\n ],\n\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'extends', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples)\n [\n 'namepathRole', 'namepath-referencing',\n ],\n\n // Does not show curly brackets in either the signature or examples\n [\n 'typeAllowed', isTypescriptOrClosure || isPermissive,\n ],\n\n [\n 'nameRequired', isJsdoc,\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', isTypescriptOrClosure || isPermissive,\n ],\n ]),\n ],\n\n [\n 'external', new Map([\n // Appears to require a \"name\" in its signature, albeit somewhat\n // different from other \"name\"'s (including as described\n // at https://jsdoc.app/about-namepaths.html )\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // \"name\" (and a special syntax for the `external` name)\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'fires', new Map([\n // Signature seems to require a \"name\" (of an event) and no\n // counter-examples\n [\n 'namepathRole', 'namepath-referencing',\n ],\n\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'function', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n [\n 'nameRequired', false,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n [\n 'func', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'namepathRole', 'namepath-defining',\n ],\n ]),\n ],\n\n [\n 'host', new Map([\n // Appears to require a \"name\" in its signature, albeit somewhat\n // different from other \"name\"'s (including as described\n // at https://jsdoc.app/about-namepaths.html )\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // See `external`\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'interface', new Map([\n // Allows for \"name\" in signature, but indicates as optional\n [\n 'namepathRole',\n isJsdocTypescriptOrPermissive ? 'namepath-defining' : false,\n ],\n\n // Not in use, but should be this value if using to power `empty-tags`\n [\n 'nameAllowed', isClosure,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'internal', new Map([\n // https://www.typescriptlang.org/tsconfig/#stripInternal\n [\n 'namepathRole', false,\n ],\n // Not in use, but should be this value if using to power `empty-tags`\n [\n 'nameAllowed', false,\n ],\n ]),\n ],\n\n [\n 'implements', new Map([\n // Shows curly brackets in the doc signature and examples\n // \"typeExpression\"\n [\n 'typeRequired', true,\n ],\n ]),\n ],\n\n [\n 'lends', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples)\n [\n 'namepathRole', 'namepath-referencing',\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'link', new Map([\n // Signature seems to require a namepath OR URL and might be checked as such.\n [\n 'namepathRole', 'namepath-or-url-referencing',\n ],\n\n ]),\n ],\n\n [\n 'linkcode', new Map([\n // Synonym for \"link\"\n // Signature seems to require a namepath OR URL and might be checked as such.\n [\n 'namepathRole', 'namepath-or-url-referencing',\n ],\n ]),\n ],\n\n [\n 'linkplain', new Map([\n // Synonym for \"link\"\n // Signature seems to require a namepath OR URL and might be checked as such.\n [\n 'namepathRole', 'namepath-or-url-referencing',\n ],\n ]),\n ],\n\n [\n 'listens', new Map([\n // Signature seems to require a \"name\" (of an event) and no\n // counter-examples\n [\n 'namepathRole', 'namepath-referencing',\n ],\n\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'member', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // Has example showing curly brackets but not in doc signature\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'memberof', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples),\n // though it allows an incomplete namepath ending with connecting symbol\n [\n 'namepathRole', 'namepath-referencing',\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n [\n 'memberof!', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples),\n // though it allows an incomplete namepath ending with connecting symbol\n [\n 'namepathRole', 'namepath-referencing',\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'method', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'namepathRole', 'namepath-defining',\n ],\n ]),\n ],\n [\n 'mixes', new Map([\n // Signature seems to require a \"OtherObjectPath\" with no\n // counter-examples\n [\n 'namepathRole', 'namepath-referencing',\n ],\n\n // \"OtherObjectPath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'mixin', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n [\n 'nameRequired', false,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'modifies', new Map([\n // Has no documentation, but test example has curly brackets, and\n // \"name\" would be suggested rather than \"namepath\" based on example;\n // not sure if name is required\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'module', new Map([\n // Optional \"name\" and no curly brackets\n // this block impacts `no-undefined-types` and `valid-types` (search for\n // \"isNamepathDefiningTag|tagMightHaveNamepath|tagMightHaveEitherTypeOrNamePosition\")\n [\n 'namepathRole', isJsdoc ? 'namepath-defining' : 'text',\n ],\n\n // Shows the signature with curly brackets but not in the example\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'name', new Map([\n // Seems to require a \"namepath\" in the signature (with no\n // counter-examples)\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // \"namepath\"\n [\n 'nameRequired', true,\n ],\n\n // \"namepath\"\n [\n 'typeOrNameRequired', true,\n ],\n ]),\n ],\n\n [\n 'namespace', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // Shows the signature with curly brackets but not in the example\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n [\n 'package', new Map([\n // Shows the signature with curly brackets but not in the example\n // \"typeExpression\"\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'param', new Map([\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // Though no signature provided requiring, per\n // https://jsdoc.app/tags-param.html:\n // \"The @param tag requires you to specify the name of the parameter you\n // are documenting.\"\n [\n 'nameRequired', true,\n ],\n\n // Has no formal signature in the docs but shows curly brackets\n // in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'private', new Map([\n // Shows the signature with curly brackets but not in the example\n // \"typeExpression\"\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'prop', new Map([\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // See `property`\n [\n 'nameRequired', true,\n ],\n\n // Has no formal signature in the docs but shows curly brackets\n // in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'property', new Map([\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // No docs indicate required, but since parallel to `param`, we treat as\n // such:\n [\n 'nameRequired', true,\n ],\n\n // Has no formal signature in the docs but shows curly brackets\n // in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'protected', new Map([\n // Shows the signature with curly brackets but not in the example\n // \"typeExpression\"\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'public', new Map([\n // Does not show a signature nor show curly brackets in the example\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'requires', new Map([\n // <someModuleName>\n [\n 'namepathRole', 'namepath-referencing',\n ],\n\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'returns', new Map([\n // Shows curly brackets in the signature and in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n [\n 'return', new Map([\n // Shows curly brackets in the signature and in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'satisfies', new Map([\n // Shows curly brackets in the doc signature and examples\n [\n 'typeRequired', true,\n ],\n ]),\n ],\n\n [\n 'see', new Map([\n // Signature allows for \"namepath\" or text, so user must configure to\n // 'namepath-referencing' to enforce checks\n [\n 'namepathRole', 'text',\n ],\n ]),\n ],\n\n [\n 'static', new Map([\n // Does not show a signature nor show curly brackets in the example\n [\n 'typeAllowed', isClosureOrPermissive,\n ],\n ]),\n ],\n\n [\n 'suppress', new Map([\n [\n 'namepathRole', !isClosure,\n ],\n [\n 'typeRequired', isClosure,\n ],\n ]),\n ],\n\n [\n 'template', new Map([\n [\n 'namepathRole', isJsdoc ? 'text' : 'namepath-referencing',\n ],\n\n // Though defines `namepathRole: 'namepath-defining'` in a sense, it is\n // not parseable in the same way for template (e.g., allowing commas),\n // so not adding\n [\n 'typeAllowed', isTypescriptOrClosure || isPermissive,\n ],\n ]),\n ],\n\n [\n 'this', new Map([\n // Signature seems to require a \"namepath\" (and no counter-examples)\n // Not used with namepath in Closure/TypeScript, however\n [\n 'namepathRole', isJsdoc ? 'namepath-referencing' : false,\n ],\n\n [\n 'typeRequired', isTypescriptOrClosure,\n ],\n\n // namepath\n [\n 'typeOrNameRequired', isJsdoc,\n ],\n ]),\n ],\n\n [\n 'throws', new Map([\n // Shows curly brackets in the signature and in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'tutorial', new Map([\n // (a tutorial ID)\n [\n 'nameRequired', true,\n ],\n\n [\n 'typeAllowed', false,\n ],\n ]),\n ],\n\n [\n 'type', new Map([\n // Shows curly brackets in the doc signature and examples\n // \"typeName\"\n [\n 'typeRequired', true,\n ],\n ]),\n ],\n\n [\n 'typedef', new Map([\n // Seems to require a \"namepath\" in the signature (with no\n // counter-examples)\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // TypeScript may allow it to be dropped if followed by @property or @member;\n // also shown as missing in Closure\n // \"namepath\"\n [\n 'nameRequired', isJsdocOrPermissive,\n ],\n\n // Is not `typeRequired` for TypeScript because it gives an error:\n // JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags.\n\n // Has example showing curly brackets but not in doc signature\n [\n 'typeAllowed', true,\n ],\n\n // TypeScript may allow it to be dropped if followed by @property or @member\n // \"namepath\"\n [\n 'typeOrNameRequired', !isTypescript,\n ],\n ]),\n ],\n\n [\n 'var', new Map([\n // Allows for \"name\"'s in signature, but indicated as optional\n [\n 'namepathRole', 'namepath-defining',\n ],\n\n // Has example showing curly brackets but not in doc signature\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n\n [\n 'yields', new Map([\n // Shows curly brackets in the signature and in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n [\n 'yield', new Map([\n // Shows curly brackets in the signature and in the examples\n [\n 'typeAllowed', true,\n ],\n ]),\n ],\n ]);\n};\n\nexport default getDefaultTagStructureForMode;\n"],"mappings":"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pB,CACF,CAAC,CACH,EAED,CACE,OAAO,EAAE,IAAIA,GAAG,CAAC;EACf;EACA,CACE,cAAc,EAAE,IAAI,CACrB;EAED;EACA;EACA;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC,CACF,CAAC,CACH,EAED,CACE,WAAW,EAAE,IAAIA,GAAG,CAAC;EACnB;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH;EAED;EACA,CACE,QAAQ,EAAE,IAAIA,GAAG,CAAC,CAChB,CACE,aAAa,EAAEF,qBAAqB,CACrC,CACF,CAAC,CACH,EAED,CACE,SAAS,EAAE,IAAIE,GAAG,CAAC,CACjB,CACE,cAAc,EAAE,mBAAmB,CACpC,EAED,CACE,cAAc,EAAET,OAAO,CACxB,EAED,CACE,aAAa,EAAEO,qBAAqB,CACrC,CACF,CAAC,CACH,EAED,CACE,SAAS,EAAE,IAAIE,GAAG,CAAC;EACjB;EACA,CACE,cAAc,EAAE,sBAAsB,CACvC;EAED;EACA,CACE,aAAa,EAAEH,qBAAqB,IAAIH,YAAY,CACrD,EAED,CACE,cAAc,EAAEH,OAAO,CACxB;EAED;EACA,CACE,oBAAoB,EAAEM,qBAAqB,IAAIH,YAAY,CAC5D,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIM,GAAG,CAAC;EAClB;EACA;EACA;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA,CACE,cAAc,EAAE,IAAI,CACrB,EAED,CACE,aAAa,EAAE,KAAK,CACrB,CACF,CAAC,CACH,EAED,CACE,OAAO,EAAE,IAAIA,GAAG,CAAC;EACf;EACA;EACA,CACE,cAAc,EAAE,sBAAsB,CACvC,EAED,CACE,cAAc,EAAE,IAAI,CACrB,EAED,CACE,aAAa,EAAE,KAAK,CACrB,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIA,GAAG,CAAC;EAClB;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC,EAED,CACE,cAAc,EAAE,KAAK,CACtB,EAED,CACE,aAAa,EAAE,KAAK,CACrB,CACF,CAAC,CACH,EACD,CACE,MAAM,EAA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,EAAE,IAAIA,GAAG,CAAC;EACnB;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EACD,CACE,SAAS,EAAE,IAAIA,GAAG,CAAC;EACjB;EACA;EACA,CACE,aAAa,EAAEF,qBAAqB,CACrC,CACF,CAAC,CACH,EAED,CACE,OAAO,EAAE,IAAIE,GAAG,CAAC,CACf,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA;EACA;EACA;EACA,CACE,cAAc,EAAE,IAAI,CACrB;EAED;EACA;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,SAAS,EAAE,IAAIA,GAAG,CAAC;EACjB;EACA;EACA,CACE,aAAa,EAAEF,qBAAqB,CACrC,CACF,CAAC,CACH,EAED,CACE,MAAM,EAAE,IAAIE,GAAG,CAAC,CACd,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA,CACE,cAAc,EAAE,IAAI,CACrB;EAED;EACA;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIA,GAAG,CAAC,CAClB,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA;EACA,CACE,cAAc,EAAE,IAAI,CACrB;EAED;EACA;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,WAAW,EAAE,IAAIA,GAAG,CAAC;EACnB;EACA;EACA,CACE,aAAa,EAAEF,qBAAqB,CACrC,CACF,CAAC,CACH,EAED,CACE,QAAQ,EAAE,IAAIE,GAAG,CAAC;EAChB;EACA,CACE,aAAa,EAAEF,qBAAqB,CACrC,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIE,GAAG,CAAC;EAClB;EACA,CACE,cAAc,EAAE,sBAAsB,CACvC,EAED,CACE,cAAc,EAAE,IAAI,CACrB,EAED,CACE,aAAa,EAAE,KAAK,CACrB,CACF,CAAC,CACH,EAED,CACE,SAAS,EAAE,IAAIA,GAAG,CAAC;EACjB;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EACD,CACE,QAAQ,EAAE,IAAIA,GAAG,CAAC;EAChB;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,WAAW,EAAE,IAAIA,GAAG,CAAC;EACnB;EACA,CACE,cAAc,EAAE,IAAI,CACrB,CACF,CAAC,CACH,EAED,CACE,KAAK,EAAE,IAAIA,GAAG,CAAC;EACb;EACA;EACA,CACE,cAAc,EAAE,MAAM,CACvB,CACF,CAAC,CACH,EAED,CACE,QAAQ,EAAE,IAAIA,GAAG,CAAC;EAChB;EACA,CACE,aAAa,EAAEF,qBAAqB,CACrC,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIE,GAAG,CAAC,CAClB,CACE,cAAc,EAAE,CAACR,SAAS,CAC3B,EACD,CACE,cAAc,EAAEA,SAAS,CAC1B,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIQ,GAAG,CAAC,CAClB,CACE,cAAc,EAAET,OAAO,GAAG,MAAM,GAAG,sBAAsB,CAC1D;EAED;EACA;EACA;EACA,CACE,aAAa,EAAEM,qBAAqB,IAAIH,YAAY,CACrD,CACF,CAAC,CACH,EAED,CACE,MAAM,EAAE,IAAIM,GAAG,CAAC;EACd;EACA;EACA,CACE,cAAc,EAAET,OAAO,GAAG,sBAAsB,GAAG,KAAK,CACzD,EAED,CACE,cAAc,EAAEM,qBAAqB,CACtC;EAED;EACA,CACE,oBAAoB,EAAEN,OAAO,CAC9B,CACF,CAAC,CACH,EAED,CACE,QAAQ,EAAE,IAAIS,GAAG,CAAC;EAChB;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,UAAU,EAAE,IAAIA,GAAG,CAAC;EAClB;EACA,CACE,cAAc,EAAE,IAAI,CACrB,EAED,CACE,aAAa,EAAE,KAAK,CACrB,CACF,CAAC,CACH,EAED,CACE,MAAM,EAAE,IAAIA,GAAG,CAAC;EACd;EACA;EACA,CACE,cAAc,EAAE,IAAI,CACrB,CACF,CAAC,CACH,EAED,CACE,SAAS,EAAE,IAAIA,GAAG,CAAC;EACjB;EACA;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA;EACA;EACA,CACE,cAAc,EAAEL,mBAAmB,CACpC;EAED;EACA;;EAEA;EACA,CACE,aAAa,EAAE,IAAI,CACpB;EAED;EACA;EACA,CACE,oBAAoB,EAAE,CAACF,YAAY,CACpC,CACF,CAAC,CACH,EAED,CACE,KAAK,EAAE,IAAIO,GAAG,CAAC;EACb;EACA,CACE,cAAc,EAAE,mBAAmB,CACpC;EAED;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EAED,CACE,QAAQ,EAAE,IAAIA,GAAG,CAAC;EAChB;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,EACD,CACE,OAAO,EAAE,IAAIA,GAAG,CAAC;EACf;EACA,CACE,aAAa,EAAE,IAAI,CACpB,CACF,CAAC,CACH,CACF,CAAC;AACJ,CAAC;AAAC,IAAAC,QAAA,GAEaZ,6BAA6B;AAAAa,OAAA,CAAAC,OAAA,GAAAF,QAAA;AAAAG,MAAA,CAAAF,OAAA,GAAAA,OAAA,CAAAC,OAAA"}
@@ -625,7 +625,7 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, iteratingAl
625
625
  };
626
626
  };
627
627
  }
628
- for (const method of ['isNamepathDefiningTag', 'tagMightHaveNamepath']) {
628
+ for (const method of ['isNamepathDefiningTag', 'isNamepathReferencingTag', 'isNamepathOrUrlReferencingTag', 'tagMightHaveNamepath']) {
629
629
  utils[method] = tagName => {
630
630
  return _jsdocUtils.default[method](tagName);
631
631
  };
@@ -664,8 +664,9 @@ const getUtils = (node, jsdoc, jsdocNode, settings, report, context, iteratingAl
664
664
  return tagList.includes(tag.tag);
665
665
  });
666
666
  };
667
- utils.filterTags = filter => {
668
- return _jsdocUtils.default.filterTags(jsdoc.tags, filter);
667
+ utils.filterTags = (filter, includeInlineTags = false) => {
668
+ const tags = _jsdocUtils.default.getAllTags(jsdoc, includeInlineTags);
669
+ return _jsdocUtils.default.filterTags(tags, filter);
669
670
  };
670
671
  utils.getTagsByType = tags => {
671
672
  return _jsdocUtils.default.getTagsByType(context, mode, tags, tagNamePreference);