Skip to content

Commit df2f108

Browse files
committed
refactor: use skipTrivia instead of getTokenPosOfNode
per PR review
1 parent 90f16db commit df2f108

1 file changed

Lines changed: 7 additions & 4 deletions

File tree

  • src/compiler/transformers

src/compiler/transformers/jsx.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ import {
2121
getLineAndCharacterOfPosition,
2222
getOriginalNode,
2323
getSemanticJsxChildren,
24-
getTokenPosOfNode,
2524
Identifier,
2625
idText,
2726
ImportSpecifier,
@@ -72,6 +71,7 @@ import {
7271
setParentRecursive,
7372
setTextRange,
7473
singleOrUndefined,
74+
skipTrivia,
7575
SourceFile,
7676
spanMap,
7777
startOnNewLine,
@@ -285,17 +285,20 @@ export function transformJsx(context: TransformationContext): (x: SourceFile | B
285285

286286
function visitJsxElement(node: JsxElement, isChild: boolean) {
287287
const tagTransform = shouldUseCreateElement(node.openingElement) ? visitJsxOpeningLikeElementCreateElement : visitJsxOpeningLikeElementJSX;
288-
return tagTransform(node.openingElement, node.children, isChild, /*location*/ createRange(getTokenPosOfNode(node, currentSourceFile), node.end));
288+
const triviaSkippedPosition = skipTrivia(currentSourceFile.text, node.pos, /*stopAfterLineBreak*/ false, /*stopAtComments*/ false);
289+
return tagTransform(node.openingElement, node.children, isChild, /*location*/ createRange(triviaSkippedPosition, node.end));
289290
}
290291

291292
function visitJsxSelfClosingElement(node: JsxSelfClosingElement, isChild: boolean) {
292293
const tagTransform = shouldUseCreateElement(node) ? visitJsxOpeningLikeElementCreateElement : visitJsxOpeningLikeElementJSX;
293-
return tagTransform(node, /*children*/ undefined, isChild, /*location*/ createRange(getTokenPosOfNode(node, currentSourceFile), node.end));
294+
const triviaSkippedPosition = skipTrivia(currentSourceFile.text, node.pos, /*stopAfterLineBreak*/ false, /*stopAtComments*/ false);
295+
return tagTransform(node, /*children*/ undefined, isChild, /*location*/ createRange(triviaSkippedPosition, node.end));
294296
}
295297

296298
function visitJsxFragment(node: JsxFragment, isChild: boolean) {
297299
const tagTransform = currentFileState.importSpecifier === undefined ? visitJsxOpeningFragmentCreateElement : visitJsxOpeningFragmentJSX;
298-
return tagTransform(node.openingFragment, node.children, isChild, /*location*/ createRange(getTokenPosOfNode(node, currentSourceFile), node.end));
300+
const triviaSkippedPosition = skipTrivia(currentSourceFile.text, node.pos, /*stopAfterLineBreak*/ false, /*stopAtComments*/ false);
301+
return tagTransform(node.openingFragment, node.children, isChild, /*location*/ createRange(triviaSkippedPosition, node.end));
299302
}
300303

301304
function convertJsxChildrenToChildrenPropObject(children: readonly JsxChild[]) {

0 commit comments

Comments
 (0)