From da39a8be104e7252f8367591a9c841fca9a98ece Mon Sep 17 00:00:00 2001 From: Ryan Cavanaugh Date: Tue, 28 Jul 2015 15:31:39 -0700 Subject: [PATCH] Don't forget about spread attributes --- src/compiler/emitter.ts | 1 + tests/baselines/reference/tsxExternalModuleEmit2.js | 7 ++++++- .../baselines/reference/tsxExternalModuleEmit2.symbols | 7 ++++++- tests/baselines/reference/tsxExternalModuleEmit2.types | 10 +++++++++- tests/cases/conformance/jsx/tsxExternalModuleEmit2.tsx | 5 ++++- 5 files changed, 26 insertions(+), 4 deletions(-) diff --git a/src/compiler/emitter.ts b/src/compiler/emitter.ts index e97ece5bf00..d55e5ec9464 100644 --- a/src/compiler/emitter.ts +++ b/src/compiler/emitter.ts @@ -1425,6 +1425,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, Promi case SyntaxKind.IfStatement: case SyntaxKind.JsxSelfClosingElement: case SyntaxKind.JsxOpeningElement: + case SyntaxKind.JsxSpreadAttribute: case SyntaxKind.JsxExpression: case SyntaxKind.NewExpression: case SyntaxKind.ParenthesizedExpression: diff --git a/tests/baselines/reference/tsxExternalModuleEmit2.js b/tests/baselines/reference/tsxExternalModuleEmit2.js index 0a76a3c3f4c..f8fe6096090 100644 --- a/tests/baselines/reference/tsxExternalModuleEmit2.js +++ b/tests/baselines/reference/tsxExternalModuleEmit2.js @@ -11,10 +11,15 @@ declare module 'mod' { import Main from 'mod'; declare var Foo, React; // Should see mod_1['default'] in emit here - +; +// Should see mod_1['default'] in emit here +; + //// [app.js] var mod_1 = require('mod'); // Should see mod_1['default'] in emit here React.createElement(Foo, {"handler": mod_1["default"]}); +// Should see mod_1['default'] in emit here +React.createElement(Foo, React.__spread({}, mod_1["default"])); diff --git a/tests/baselines/reference/tsxExternalModuleEmit2.symbols b/tests/baselines/reference/tsxExternalModuleEmit2.symbols index 78dd1760570..6d1c5aaebb8 100644 --- a/tests/baselines/reference/tsxExternalModuleEmit2.symbols +++ b/tests/baselines/reference/tsxExternalModuleEmit2.symbols @@ -17,7 +17,12 @@ declare var Foo, React; >React : Symbol(React, Decl(app.tsx, 1, 16)) // Should see mod_1['default'] in emit here - +; >Foo : Symbol(Foo, Decl(app.tsx, 1, 11)) >handler : Symbol(unknown) +// Should see mod_1['default'] in emit here +; +>Foo : Symbol(Foo, Decl(app.tsx, 1, 11)) + + diff --git a/tests/baselines/reference/tsxExternalModuleEmit2.types b/tests/baselines/reference/tsxExternalModuleEmit2.types index f10345cccdc..b4746fe46c7 100644 --- a/tests/baselines/reference/tsxExternalModuleEmit2.types +++ b/tests/baselines/reference/tsxExternalModuleEmit2.types @@ -17,10 +17,18 @@ declare var Foo, React; >React : any // Should see mod_1['default'] in emit here - +; > : any >Foo : any >handler : any >Main : any >Foo : any +// Should see mod_1['default'] in emit here +; +> : any +>Foo : any +>Main : any +>Foo : any + + diff --git a/tests/cases/conformance/jsx/tsxExternalModuleEmit2.tsx b/tests/cases/conformance/jsx/tsxExternalModuleEmit2.tsx index e1e91f678ca..fa14d14d699 100644 --- a/tests/cases/conformance/jsx/tsxExternalModuleEmit2.tsx +++ b/tests/cases/conformance/jsx/tsxExternalModuleEmit2.tsx @@ -11,4 +11,7 @@ declare module 'mod' { import Main from 'mod'; declare var Foo, React; // Should see mod_1['default'] in emit here - +; +// Should see mod_1['default'] in emit here +; +