@@ -30,7 +30,7 @@ const ts = require("typescript"),
30
30
* @private
31
31
*/
32
32
function convertTypeScriptCommentToEsprimaComment ( block , text , start , end , startLoc , endLoc ) {
33
- var comment = {
33
+ const comment = {
34
34
type : block ? "Block" : "Line" ,
35
35
value : text
36
36
} ;
@@ -58,19 +58,19 @@ function convertTypeScriptCommentToEsprimaComment(block, text, start, end, start
58
58
* @private
59
59
*/
60
60
function getCommentFromTriviaScanner ( triviaScanner , ast , code ) {
61
- var kind = triviaScanner . getToken ( ) ;
62
- var isBlock = ( kind === ts . SyntaxKind . MultiLineCommentTrivia ) ;
63
- var range = {
61
+ const kind = triviaScanner . getToken ( ) ;
62
+ const isBlock = ( kind === ts . SyntaxKind . MultiLineCommentTrivia ) ;
63
+ const range = {
64
64
pos : triviaScanner . getTokenPos ( ) ,
65
65
end : triviaScanner . getTextPos ( ) ,
66
66
kind : triviaScanner . getToken ( )
67
67
} ;
68
68
69
- var comment = code . substring ( range . pos , range . end ) ;
70
- var text = comment . replace ( "//" , "" ) . replace ( "/*" , "" ) . replace ( "*/" , "" ) ;
71
- var loc = nodeUtils . getLocFor ( range . pos , range . end , ast ) ;
69
+ const comment = code . substring ( range . pos , range . end ) ;
70
+ const text = ( isBlock ) ? comment . replace ( / ^ \/ \* / , "" ) . replace ( / \* \/ $ / , "" ) : comment . replace ( / ^ \/ \/ / , "" ) ;
71
+ const loc = nodeUtils . getLocFor ( range . pos , range . end , ast ) ;
72
72
73
- var esprimaComment = convertTypeScriptCommentToEsprimaComment ( isBlock , text , range . pos , range . end , loc . start , loc . end ) ;
73
+ const esprimaComment = convertTypeScriptCommentToEsprimaComment ( isBlock , text , range . pos , range . end , loc . start , loc . end ) ;
74
74
75
75
return esprimaComment ;
76
76
}
@@ -93,33 +93,34 @@ module.exports = {
93
93
* @private
94
94
*/
95
95
function convertComments ( ast , code ) {
96
- var comments = [ ] ;
96
+ const comments = [ ] ;
97
97
98
98
/**
99
99
* Create a TypeScript Scanner, with skipTrivia set to false so that
100
100
* we can parse the comments
101
101
*/
102
- var triviaScanner = ts . createScanner ( ast . languageVersion , false , 0 , code ) ;
102
+ const triviaScanner = ts . createScanner ( ast . languageVersion , false , 0 , code ) ;
103
103
104
- var kind = triviaScanner . scan ( ) ;
104
+ let kind = triviaScanner . scan ( ) ;
105
105
while ( kind !== ts . SyntaxKind . EndOfFileToken ) {
106
- var start = triviaScanner . getTokenPos ( ) ;
107
- var end = triviaScanner . getTextPos ( ) ;
106
+ const start = triviaScanner . getTokenPos ( ) ;
107
+ const end = triviaScanner . getTextPos ( ) ;
108
108
109
- var container = null ;
109
+ let container = null ;
110
110
switch ( kind ) {
111
111
case ts . SyntaxKind . SingleLineCommentTrivia :
112
- case ts . SyntaxKind . MultiLineCommentTrivia :
113
- var comment = getCommentFromTriviaScanner ( triviaScanner , ast , code ) ;
112
+ case ts . SyntaxKind . MultiLineCommentTrivia : {
113
+ const comment = getCommentFromTriviaScanner ( triviaScanner , ast , code ) ;
114
114
115
115
comments . push ( comment ) ;
116
116
break ;
117
+ }
117
118
case ts . SyntaxKind . CloseBraceToken :
118
119
container = nodeUtils . getNodeContainer ( ast , start , end ) ;
119
120
120
121
if (
121
- container . kind === ts . SyntaxKind . TemplateMiddle
122
- || container . kind === ts . SyntaxKind . TemplateTail
122
+ container . kind === ts . SyntaxKind . TemplateMiddle ||
123
+ container . kind === ts . SyntaxKind . TemplateTail
123
124
) {
124
125
kind = triviaScanner . reScanTemplateToken ( ) ;
125
126
continue ;
0 commit comments