@@ -459,10 +459,10 @@ namespace ts.formatting {
459459 this . NoSpaceBeforeCloseBracket = new Rule ( RuleDescriptor . create2 ( Shared . TokenRange . Any , SyntaxKind . CloseBracketToken ) , RuleOperation . create2 ( new RuleOperationContext ( Rules . IsOptionDisabledOrUndefined ( "insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets" ) , Rules . IsNonJsxSameLineTokenContext ) , RuleAction . Delete ) ) ;
460460
461461 // Insert space after opening and before closing template string braces
462- this . NoSpaceAfterTemplateHeadAndMiddle = new Rule ( RuleDescriptor . create4 ( Shared . TokenRange . FromTokens ( [ SyntaxKind . TemplateHead , SyntaxKind . TemplateMiddle ] ) , Shared . TokenRange . Any ) , RuleOperation . create2 ( new RuleOperationContext ( Rules . IsOptionDisabledOrUndefined ( "insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces" ) , Rules . IsNonJsxSameLineTokenContext ) , RuleAction . Delete ) ) ;
463- this . SpaceAfterTemplateHeadAndMiddle = new Rule ( RuleDescriptor . create4 ( Shared . TokenRange . FromTokens ( [ SyntaxKind . TemplateHead , SyntaxKind . TemplateMiddle ] ) , Shared . TokenRange . Any ) , RuleOperation . create2 ( new RuleOperationContext ( Rules . IsOptionEnabled ( "insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces" ) , Rules . IsNonJsxSameLineTokenContext ) , RuleAction . Space ) ) ;
464- this . NoSpaceBeforeTemplateMiddleAndTail = new Rule ( RuleDescriptor . create4 ( Shared . TokenRange . Any , Shared . TokenRange . FromTokens ( [ SyntaxKind . TemplateMiddle , SyntaxKind . TemplateTail ] ) ) , RuleOperation . create2 ( new RuleOperationContext ( Rules . IsOptionDisabledOrUndefined ( "insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces" ) , Rules . IsNonJsxSameLineTokenContext ) , RuleAction . Delete ) ) ;
465- this . SpaceBeforeTemplateMiddleAndTail = new Rule ( RuleDescriptor . create4 ( Shared . TokenRange . Any , Shared . TokenRange . FromTokens ( [ SyntaxKind . TemplateMiddle , SyntaxKind . TemplateTail ] ) ) , RuleOperation . create2 ( new RuleOperationContext ( Rules . IsOptionEnabled ( "insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces" ) , Rules . IsNonJsxSameLineTokenContext ) , RuleAction . Space ) ) ;
462+ this . NoSpaceAfterTemplateHeadAndMiddle = new Rule ( RuleDescriptor . create4 ( Shared . TokenRange . FromTokens ( [ SyntaxKind . TemplateHead , SyntaxKind . TemplateMiddle ] ) , Shared . TokenRange . Any ) , RuleOperation . create2 ( new RuleOperationContext ( Rules . IsOptionDisabledOrUndefined ( "insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces" ) , Rules . IsNonJsxAndSpanBetweenIsSingleLineTokenContext ) , RuleAction . Delete ) ) ;
463+ this . SpaceAfterTemplateHeadAndMiddle = new Rule ( RuleDescriptor . create4 ( Shared . TokenRange . FromTokens ( [ SyntaxKind . TemplateHead , SyntaxKind . TemplateMiddle ] ) , Shared . TokenRange . Any ) , RuleOperation . create2 ( new RuleOperationContext ( Rules . IsOptionEnabled ( "insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces" ) , Rules . IsNonJsxAndSpanBetweenIsSingleLineTokenContext ) , RuleAction . Space ) ) ;
464+ this . NoSpaceBeforeTemplateMiddleAndTail = new Rule ( RuleDescriptor . create4 ( Shared . TokenRange . Any , Shared . TokenRange . FromTokens ( [ SyntaxKind . TemplateMiddle , SyntaxKind . TemplateTail ] ) ) , RuleOperation . create2 ( new RuleOperationContext ( Rules . IsOptionDisabledOrUndefined ( "insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces" ) , Rules . IsNonJsxAndSpanBetweenIsSingleLineTokenContext ) , RuleAction . Delete ) ) ;
465+ this . SpaceBeforeTemplateMiddleAndTail = new Rule ( RuleDescriptor . create4 ( Shared . TokenRange . Any , Shared . TokenRange . FromTokens ( [ SyntaxKind . TemplateMiddle , SyntaxKind . TemplateTail ] ) ) , RuleOperation . create2 ( new RuleOperationContext ( Rules . IsOptionEnabled ( "insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces" ) , Rules . IsNonJsxAndSpanBetweenIsSingleLineTokenContext ) , RuleAction . Space ) ) ;
466466
467467 // No space after { and before } in JSX expression
468468 this . NoSpaceAfterOpenBraceInJsxExpression = new Rule ( RuleDescriptor . create3 ( SyntaxKind . OpenBraceToken , Shared . TokenRange . Any ) , RuleOperation . create2 ( new RuleOperationContext ( Rules . IsOptionDisabledOrUndefined ( "insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces" ) , Rules . IsNonJsxSameLineTokenContext , Rules . IsJsxExpressionContext ) , RuleAction . Delete ) ) ;
@@ -817,6 +817,10 @@ namespace ts.formatting {
817817 return context . TokensAreOnSameLine ( ) && context . contextNode . kind !== SyntaxKind . JsxText ;
818818 }
819819
820+ static IsNonJsxAndSpanBetweenIsSingleLineTokenContext ( context : FormattingContext ) : boolean {
821+ return context . SpanBetweenTokensIsOnSingleLine ( ) && context . contextNode . kind !== SyntaxKind . JsxText ;
822+ }
823+
820824 static IsNonJsxElementContext ( context : FormattingContext ) : boolean {
821825 return context . contextNode . kind !== SyntaxKind . JsxElement ;
822826 }
0 commit comments