JsModule { bom_token: missing (optional), interpreter_token: missing (optional), directives: JsDirectiveList [], items: JsModuleItemList [ JsExpressionStatement { expression: JsxTagExpression { tag: JsxFragment { opening_fragment: JsxOpeningFragment { l_angle_token: L_ANGLE@0..1 "<" [] [], r_angle_token: R_ANGLE@1..2 ">" [] [], }, children: JsxChildList [ JsxElement { opening_element: JsxOpeningElement { l_angle_token: L_ANGLE@2..3 "<" [] [], name: JsxName { value_token: JSX_IDENT@3..7 "test" [] [], }, type_arguments: missing (optional), attributes: JsxAttributeList [], r_angle_token: R_ANGLE@7..8 ">" [] [], }, children: JsxChildList [ JsxText { value_token: JSX_TEXT_LITERAL@8..12 "abcd" [] [], }, ], closing_element: JsxClosingElement { l_angle_token: L_ANGLE@12..13 "<" [] [], slash_token: SLASH@13..14 "/" [] [], name: JsxName { value_token: JSX_IDENT@14..19 "test" [] [Whitespace(" ")], }, r_angle_token: missing (required), }, }, JsxText { value_token: JSX_TEXT_LITERAL@19..44 "more content follows here" [] [], }, ], closing_fragment: JsxClosingFragment { l_angle_token: L_ANGLE@44..45 "<" [] [], slash_token: SLASH@45..46 "/" [] [], r_angle_token: R_ANGLE@46..47 ">" [] [], }, }, }, semicolon_token: missing (optional), }, ], eof_token: EOF@47..48 "" [Newline("\n")] [], } 0: JS_MODULE@0..48 0: (empty) 1: (empty) 2: JS_DIRECTIVE_LIST@0..0 3: JS_MODULE_ITEM_LIST@0..47 0: JS_EXPRESSION_STATEMENT@0..47 0: JSX_TAG_EXPRESSION@0..47 0: JSX_FRAGMENT@0..47 0: JSX_OPENING_FRAGMENT@0..2 0: L_ANGLE@0..1 "<" [] [] 1: R_ANGLE@1..2 ">" [] [] 1: JSX_CHILD_LIST@2..44 0: JSX_ELEMENT@2..19 0: JSX_OPENING_ELEMENT@2..8 0: L_ANGLE@2..3 "<" [] [] 1: JSX_NAME@3..7 0: JSX_IDENT@3..7 "test" [] [] 2: (empty) 3: JSX_ATTRIBUTE_LIST@7..7 4: R_ANGLE@7..8 ">" [] [] 1: JSX_CHILD_LIST@8..12 0: JSX_TEXT@8..12 0: JSX_TEXT_LITERAL@8..12 "abcd" [] [] 2: JSX_CLOSING_ELEMENT@12..19 0: L_ANGLE@12..13 "<" [] [] 1: SLASH@13..14 "/" [] [] 2: JSX_NAME@14..19 0: JSX_IDENT@14..19 "test" [] [Whitespace(" ")] 3: (empty) 1: JSX_TEXT@19..44 0: JSX_TEXT_LITERAL@19..44 "more content follows here" [] [] 2: JSX_CLOSING_FRAGMENT@44..47 0: L_ANGLE@44..45 "<" [] [] 1: SLASH@45..46 "/" [] [] 2: R_ANGLE@46..47 ">" [] [] 1: (empty) 4: EOF@47..48 "" [Newline("\n")] [] -- jsx_closing_missing_r_angle.jsx:1:20 parse ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ × expected `>` but instead found `more` > 1 │ <>abcd │ ^^^^ 2 │ i Remove more -- <>abcd