Security News
PyPI Introduces Digital Attestations to Strengthen Python Package Security
PyPI now supports digital attestations, enhancing security and trust by allowing package maintainers to verify the authenticity of Python packages.
@es-joy/jsdoccomment
Advanced tools
Maintained replacement for ESLint's deprecated SourceCode#getJSDocComment
This project aims to preserve and expand upon the
SourceCode#getJSDocComment
functionality of the deprecated ESLint method.
It also exports a number of functions currently for working with JSDoc:
parseComment
- For parsing comment-parser
in a JSDoc-specific manner.commentHandler
- Used by eslint-plugin-jsdoc
. Might be removed in future.commentParserToESTree
- Converts comment-parser
AST to ESTree/ESLint/Babel friendly ASTjsdoctypeparserToESTree
- Converts jsdoctypeparser
AST to ESTree/ESLint/Babel friendly ASTjsdocVisitorKeys
- The VisitorKeys
for JSDocBlock
, JSDocDescriptionLine
, and JSDocTag
. Might change.jsdocTypeVisitorKeys
- VisitorKeys
for jsdoctypeparser. More likely to be subject to change.getTokenizers
- A utility. Might be removed in future.toCamelCase
- A utility. Might be removed in future.comment-parser
nodes (JSDocBlock
, JSDocTag
, and JSDocDescriptionLine
)Note: Although not added in this package, @es-joy/jsdoc-eslint-parser
adds
a jsdoc
property to other ES nodes (using this project's getJSDocComment
to determine the specific comment-block that will be attached as AST).
JSDocBlock
Has two visitable properties:
tags
(an array of JSDocTag
; see below)descriptionLines
(an array of JSDocDescriptionLine
for multiline
descriptions).Has the following custom non-visitable property:
lastDescriptionLine
- A numberMay also have the following non-visitable properties from comment-parser
:
description
- Same as descriptionLines
but as a string with newlines.delimiter
postDelimiter
end
JSDocTag
Has three visitable properties:
parsedType
(the jsdoctypeparser
AST representaiton of the tag's
type (see the jsdoctypeparser
section below)).descriptionLines
' (an array of JSDocDescriptionLine
for multiline
descriptions)typeLines
(an array of JSDocTypeLine
for multiline type strings)May also have the following non-visitable properties from comment-parser
(note that all are included from comment-parser
except end
as that is only
for JSDoc blocks and note that type
is renamed to rawType
):
description
- Same as descriptionLines
but as a string with newlines.rawType
- comment-parser
has this named as type
, but because of a
conflict with ESTree using type
for Node type, we renamed it to
rawType
. It is otherwise the same as in comment-parser
, i.e., a string
with newlines, though with the initial {
and final }
stripped out.
See typeLines
for the array version of this property.start
delimiter
postDelimiter
tag
postTag
name
postName
type
postType
JSDocDescriptionLine
No visitable properties.
May also have the following non-visitable properties from comment-parser
:
delimiter
postDelimiter
start
description
JSDocTypeLine
No visitable properties.
May also have the following non-visitable properties from comment-parser
:
delimiter
postDelimiter
start
rawType
- Renamed from comment-parser
to avoid a conflict. See
explanation under JSDocTag
jsdoctypeparser
The type
has been changed for the type AST. Relative to jsdoctypeparser
nodes, the type will have a JSDocType
prefix added plus a camel-casing of the
old type name, so, e.g., INSTANCE_MEMBER
will become
JSDocTypeInstanceMember
.
See jsdoctypeparser
for the current list of node types which are transformed in this manner.
Otherwise, the node properties are as in jsdoctypeparser
.
The jsdoctypeparser
visitor keys are also modified accordingly.
npm i @es-joy/jsdoccomment
The changelog can be found on the CHANGES.md.
Brett Zamir and contributors.
MIT License, see the included LICENSE-MIT.txt file.
comment-parser
(and jsdoctypeparser
) are not exporting proper
ESLint AST, then provide simple utilities to convert their ASTFAQs
Maintained replacement for ESLint's deprecated SourceCode#getJSDocComment along with other jsdoc utilities
We found that @es-joy/jsdoccomment demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
PyPI now supports digital attestations, enhancing security and trust by allowing package maintainers to verify the authenticity of Python packages.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.