diff --git a/src/compiler/transformers/module/module.ts b/src/compiler/transformers/module/module.ts index ac8af49d3e278..f73acdbe35bc9 100644 --- a/src/compiler/transformers/module/module.ts +++ b/src/compiler/transformers/module/module.ts @@ -264,14 +264,14 @@ export function transformModule(context: TransformationContext): (x: SourceFile if (shouldEmitUnderscoreUnderscoreESModule()) { append(statements, createUnderscoreUnderscoreESModule()); } - if (length(currentModuleInfo.exportedNames)) { + if (some(currentModuleInfo.exportedNames)) { const chunkSize = 50; - for (let i = 0; i < currentModuleInfo.exportedNames!.length; i += chunkSize) { + for (let i = 0; i < currentModuleInfo.exportedNames.length; i += chunkSize) { append( statements, factory.createExpressionStatement( reduceLeft( - currentModuleInfo.exportedNames!.slice(i, i + chunkSize), + currentModuleInfo.exportedNames.slice(i, i + chunkSize), (prev, nextId) => factory.createAssignment(factory.createPropertyAccessExpression(factory.createIdentifier("exports"), factory.createIdentifier(idText(nextId))), prev), factory.createVoidZero() as Expression, ), @@ -279,6 +279,11 @@ export function transformModule(context: TransformationContext): (x: SourceFile ); } } + if (some(currentModuleInfo.exportedFunctions)) { + for (const f of currentModuleInfo.exportedFunctions) { + appendExportsOfHoistedDeclaration(statements, f); + } + } append(statements, visitNode(currentModuleInfo.externalHelpersImportDeclaration, topLevelVisitor, isStatement)); addRange(statements, visitNodes(node.statements, topLevelVisitor, isStatement, statementOffset)); @@ -601,9 +606,14 @@ export function transformModule(context: TransformationContext): (x: SourceFile if (shouldEmitUnderscoreUnderscoreESModule()) { append(statements, createUnderscoreUnderscoreESModule()); } - if (length(currentModuleInfo.exportedNames)) { + if (some(currentModuleInfo.exportedNames)) { append(statements, factory.createExpressionStatement(reduceLeft(currentModuleInfo.exportedNames, (prev, nextId) => factory.createAssignment(factory.createPropertyAccessExpression(factory.createIdentifier("exports"), factory.createIdentifier(idText(nextId))), prev), factory.createVoidZero() as Expression))); } + if (some(currentModuleInfo.exportedFunctions)) { + for (const f of currentModuleInfo.exportedFunctions) { + appendExportsOfHoistedDeclaration(statements, f); + } + } // Visit each statement of the module body. append(statements, visitNode(currentModuleInfo.externalHelpersImportDeclaration, topLevelVisitor, isStatement)); @@ -1704,7 +1714,7 @@ export function transformModule(context: TransformationContext): (x: SourceFile statements = append(statements, visitEachChild(node, visitor, context)); } - statements = appendExportsOfHoistedDeclaration(statements, node); + // NOTE: CommonJS/AMD/UMD exports are hoisted to the top of the module body and do not need to be added here. return singleOrMany(statements); } diff --git a/src/compiler/transformers/module/system.ts b/src/compiler/transformers/module/system.ts index 7f4f7e0759366..10d6b7047ed74 100644 --- a/src/compiler/transformers/module/system.ts +++ b/src/compiler/transformers/module/system.ts @@ -433,7 +433,7 @@ export function transformSystemModule(context: TransformationContext): (x: Sourc // this set is used to filter names brought by star expors. // local names set should only be added if we have anything exported - if (!moduleInfo.exportedNames && moduleInfo.exportSpecifiers.size === 0) { + if (!some(moduleInfo.exportedNames) && !some(moduleInfo.exportedFunctions) && moduleInfo.exportSpecifiers.size === 0) { // no exported declarations (export var ...) or export specifiers (export {x}) // check if we have any non star export declarations. let hasExportDeclarationWithExportClause = false; @@ -469,6 +469,23 @@ export function transformSystemModule(context: TransformationContext): (x: Sourc } } + if (moduleInfo.exportedFunctions) { + for (const f of moduleInfo.exportedFunctions) { + if (hasSyntacticModifier(f, ModifierFlags.Default)) { + continue; + } + Debug.assert(!!f.name); + + // write name of exported declaration, i.e 'export var x...' + exportedNames.push( + factory.createPropertyAssignment( + factory.createStringLiteralFromNode(f.name), + factory.createTrue(), + ), + ); + } + } + const exportedNamesStorageRef = factory.createUniqueName("exportedNames"); statements.push( factory.createVariableStatement( diff --git a/src/compiler/transformers/utilities.ts b/src/compiler/transformers/utilities.ts index e585557b48a18..4cfd79778818f 100644 --- a/src/compiler/transformers/utilities.ts +++ b/src/compiler/transformers/utilities.ts @@ -103,7 +103,8 @@ export interface ExternalModuleInfo { externalHelpersImportDeclaration: ImportDeclaration | undefined; // import of external helpers exportSpecifiers: IdentifierNameMap; // file-local export specifiers by name (no reexports) exportedBindings: Identifier[][]; // exported names of local declarations - exportedNames: Identifier[] | undefined; // all exported names in the module, both local and reexported + exportedNames: Identifier[] | undefined; // all exported names in the module, both local and reexported, excluding the names of locally exported function declarations + exportedFunctions: FunctionDeclaration[] | undefined; // all of the top-level exported function declarations exportEquals: ExportAssignment | undefined; // an export= declaration if one was present hasExportStarsToExportValues: boolean; // whether this module contains export* } @@ -171,6 +172,7 @@ export function collectExternalModuleInfo(context: TransformationContext, source const exportedBindings: Identifier[][] = []; const uniqueExports = new Map(); let exportedNames: Identifier[] | undefined; + let exportedFunctions: FunctionDeclaration[] | undefined; let hasExportDefault = false; let exportEquals: ExportAssignment | undefined; let hasExportStarsToExportValues = false; @@ -250,6 +252,7 @@ export function collectExternalModuleInfo(context: TransformationContext, source case SyntaxKind.FunctionDeclaration: if (hasSyntacticModifier(node, ModifierFlags.Export)) { + exportedFunctions = append(exportedFunctions, node as FunctionDeclaration); if (hasSyntacticModifier(node, ModifierFlags.Default)) { // export default function() { } if (!hasExportDefault) { @@ -263,7 +266,6 @@ export function collectExternalModuleInfo(context: TransformationContext, source if (!uniqueExports.get(idText(name))) { multiMapSparseArrayAdd(exportedBindings, getOriginalNodeId(node), name); uniqueExports.set(idText(name), true); - exportedNames = append(exportedNames, name); } } } @@ -297,7 +299,7 @@ export function collectExternalModuleInfo(context: TransformationContext, source externalImports.unshift(externalHelpersImportDeclaration); } - return { externalImports, exportSpecifiers, exportEquals, hasExportStarsToExportValues, exportedBindings, exportedNames, externalHelpersImportDeclaration }; + return { externalImports, exportSpecifiers, exportEquals, hasExportStarsToExportValues, exportedBindings, exportedNames, exportedFunctions, externalHelpersImportDeclaration }; function addExportedNamesForExportDeclaration(node: ExportDeclaration) { for (const specifier of cast(node.exportClause, isNamedExports).elements) { diff --git a/tests/baselines/reference/APISample_compile.js b/tests/baselines/reference/APISample_compile.js index 047fc659b0e21..5cee7192e3ef6 100644 --- a/tests/baselines/reference/APISample_compile.js +++ b/tests/baselines/reference/APISample_compile.js @@ -54,7 +54,7 @@ compile(process.argv.slice(2), { * Please log a "breaking change" issue for any API breaking change affecting this issue */ Object.defineProperty(exports, "__esModule", { value: true }); -exports.compile = void 0; +exports.compile = compile; var ts = require("typescript"); function compile(fileNames, options) { var program = ts.createProgram(fileNames, options); @@ -73,7 +73,6 @@ function compile(fileNames, options) { console.log("Process exiting with code '".concat(exitCode, "'.")); process.exit(exitCode); } -exports.compile = compile; compile(process.argv.slice(2), { noEmitOnError: true, noImplicitAny: true, target: ts.ScriptTarget.ES5, module: ts.ModuleKind.CommonJS diff --git a/tests/baselines/reference/APISample_linter.js b/tests/baselines/reference/APISample_linter.js index 31e64f2c542ce..520c9b5845878 100644 --- a/tests/baselines/reference/APISample_linter.js +++ b/tests/baselines/reference/APISample_linter.js @@ -80,7 +80,7 @@ fileNames.forEach(fileName => { * Please log a "breaking change" issue for any API breaking change affecting this issue */ Object.defineProperty(exports, "__esModule", { value: true }); -exports.delint = void 0; +exports.delint = delint; var ts = require("typescript"); function delint(sourceFile) { delintNode(sourceFile); @@ -119,7 +119,6 @@ function delint(sourceFile) { console.log("".concat(sourceFile.fileName, " (").concat(line + 1, ",").concat(character + 1, "): ").concat(message)); } } -exports.delint = delint; var fileNames = process.argv.slice(2); fileNames.forEach(function (fileName) { // Parse a file diff --git a/tests/baselines/reference/APISample_parseConfig.js b/tests/baselines/reference/APISample_parseConfig.js index b7b038d6d7cd5..ed8e2c3f2bb1c 100644 --- a/tests/baselines/reference/APISample_parseConfig.js +++ b/tests/baselines/reference/APISample_parseConfig.js @@ -52,7 +52,7 @@ export function createProgram(rootFiles: string[], compilerOptionsJson: string): * Please log a "breaking change" issue for any API breaking change affecting this issue */ Object.defineProperty(exports, "__esModule", { value: true }); -exports.createProgram = void 0; +exports.createProgram = createProgram; var ts = require("typescript"); function printError(error) { if (!error) { @@ -77,4 +77,3 @@ function createProgram(rootFiles, compilerOptionsJson) { } return ts.createProgram(rootFiles, settings.options); } -exports.createProgram = createProgram; diff --git a/tests/baselines/reference/aliasUsedAsNameValue.js b/tests/baselines/reference/aliasUsedAsNameValue.js index b41023ed8f1d3..4f40c1a91a058 100644 --- a/tests/baselines/reference/aliasUsedAsNameValue.js +++ b/tests/baselines/reference/aliasUsedAsNameValue.js @@ -25,9 +25,8 @@ exports.id = void 0; //// [aliasUsedAsNameValue_1.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.b = void 0; -function b(a) { return null; } exports.b = b; +function b(a) { return null; } //// [aliasUsedAsNameValue_2.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/tests/baselines/reference/amdDeclarationEmitNoExtraDeclare.js b/tests/baselines/reference/amdDeclarationEmitNoExtraDeclare.js index 992821fbd5ac5..ad02552328f0e 100644 --- a/tests/baselines/reference/amdDeclarationEmitNoExtraDeclare.js +++ b/tests/baselines/reference/amdDeclarationEmitNoExtraDeclare.js @@ -40,7 +40,7 @@ var __extends = (this && this.__extends) || (function () { define("Configurable", ["require", "exports"], function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - exports.Configurable = void 0; + exports.Configurable = Configurable; function Configurable(base) { return /** @class */ (function (_super) { __extends(class_1, _super); @@ -54,7 +54,6 @@ define("Configurable", ["require", "exports"], function (require, exports) { return class_1; }(base)); } - exports.Configurable = Configurable; }); define("Class", ["require", "exports", "Configurable"], function (require, exports, Configurable_1) { "use strict"; diff --git a/tests/baselines/reference/anonClassDeclarationEmitIsAnon.js b/tests/baselines/reference/anonClassDeclarationEmitIsAnon.js index 361b5db4e32ed..2c0dc04e17776 100644 --- a/tests/baselines/reference/anonClassDeclarationEmitIsAnon.js +++ b/tests/baselines/reference/anonClassDeclarationEmitIsAnon.js @@ -52,7 +52,8 @@ var __extends = (this && this.__extends) || (function () { }; })(); Object.defineProperty(exports, "__esModule", { value: true }); -exports.Timestamped = exports.wrapClass = void 0; +exports.wrapClass = wrapClass; +exports.Timestamped = Timestamped; function wrapClass(param) { return /** @class */ (function () { function Wrapped() { @@ -63,7 +64,6 @@ function wrapClass(param) { return Wrapped; }()); } -exports.wrapClass = wrapClass; function Timestamped(Base) { return /** @class */ (function (_super) { __extends(class_1, _super); @@ -75,7 +75,6 @@ function Timestamped(Base) { return class_1; }(Base)); } -exports.Timestamped = Timestamped; //// [index.js] "use strict"; var __extends = (this && this.__extends) || (function () { diff --git a/tests/baselines/reference/anonymousClassDeclarationDoesntPrintWithReadonly.js b/tests/baselines/reference/anonymousClassDeclarationDoesntPrintWithReadonly.js index c9f5abde58580..ad6dafad14c7f 100644 --- a/tests/baselines/reference/anonymousClassDeclarationDoesntPrintWithReadonly.js +++ b/tests/baselines/reference/anonymousClassDeclarationDoesntPrintWithReadonly.js @@ -27,7 +27,8 @@ var __extends = (this && this.__extends) || (function () { }; })(); Object.defineProperty(exports, "__esModule", { value: true }); -exports.y = exports.X = void 0; +exports.X = void 0; +exports.y = y; var X = /** @class */ (function () { function X(a) { this.a = a; @@ -44,7 +45,6 @@ function y() { return class_1; }(X)); } -exports.y = y; //// [anonymousClassDeclarationDoesntPrintWithReadonly.d.ts] diff --git a/tests/baselines/reference/anonymousDefaultExportsAmd.js b/tests/baselines/reference/anonymousDefaultExportsAmd.js index 24e833b7542ee..7175085e34325 100644 --- a/tests/baselines/reference/anonymousDefaultExportsAmd.js +++ b/tests/baselines/reference/anonymousDefaultExportsAmd.js @@ -18,6 +18,6 @@ define(["require", "exports"], function (require, exports) { define(["require", "exports"], function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - function default_1() { } exports.default = default_1; + function default_1() { } }); diff --git a/tests/baselines/reference/anonymousDefaultExportsCommonjs.js b/tests/baselines/reference/anonymousDefaultExportsCommonjs.js index e22000856d686..5b8639087fff2 100644 --- a/tests/baselines/reference/anonymousDefaultExportsCommonjs.js +++ b/tests/baselines/reference/anonymousDefaultExportsCommonjs.js @@ -15,5 +15,5 @@ exports.default = default_1; //// [b.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -function default_1() { } exports.default = default_1; +function default_1() { } diff --git a/tests/baselines/reference/anonymousDefaultExportsUmd.js b/tests/baselines/reference/anonymousDefaultExportsUmd.js index 484238b8722cf..d2cb7c7eaf350 100644 --- a/tests/baselines/reference/anonymousDefaultExportsUmd.js +++ b/tests/baselines/reference/anonymousDefaultExportsUmd.js @@ -34,6 +34,6 @@ export default function() {} })(function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - function default_1() { } exports.default = default_1; + function default_1() { } }); diff --git a/tests/baselines/reference/arrayDestructuringInSwitch1.js b/tests/baselines/reference/arrayDestructuringInSwitch1.js index 90959d9a8152c..4608b0a569c2f 100644 --- a/tests/baselines/reference/arrayDestructuringInSwitch1.js +++ b/tests/baselines/reference/arrayDestructuringInSwitch1.js @@ -26,7 +26,7 @@ export function evaluate(expression: Expression): boolean { //// [arrayDestructuringInSwitch1.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.evaluate = void 0; +exports.evaluate = evaluate; function evaluate(expression) { if (Array.isArray(expression)) { var operator = expression[0], operands = expression.slice(1); @@ -46,4 +46,3 @@ function evaluate(expression) { return expression === 'true'; } } -exports.evaluate = evaluate; diff --git a/tests/baselines/reference/asOperator4.js b/tests/baselines/reference/asOperator4.js index 27937cd3486ed..6d8b39830440b 100644 --- a/tests/baselines/reference/asOperator4.js +++ b/tests/baselines/reference/asOperator4.js @@ -14,9 +14,8 @@ import { foo } from './foo'; //// [foo.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.foo = void 0; -function foo() { } exports.foo = foo; +function foo() { } //// [bar.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/tests/baselines/reference/assertionFunctionWildcardImport2.js b/tests/baselines/reference/assertionFunctionWildcardImport2.js index 248c838f0b21e..ddc8713a11fd5 100644 --- a/tests/baselines/reference/assertionFunctionWildcardImport2.js +++ b/tests/baselines/reference/assertionFunctionWildcardImport2.js @@ -29,7 +29,6 @@ function isNonNullable(obj) { throw new Error("Must not be a nullable value"); } } -exports.isNonNullable = isNonNullable; //// [test.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/tests/baselines/reference/baseConstraintOfDecorator.js b/tests/baselines/reference/baseConstraintOfDecorator.js index 0c8cd497d129b..48a2eec64ff83 100644 --- a/tests/baselines/reference/baseConstraintOfDecorator.js +++ b/tests/baselines/reference/baseConstraintOfDecorator.js @@ -39,7 +39,8 @@ var __extends = (this && this.__extends) || (function () { }; })(); Object.defineProperty(exports, "__esModule", { value: true }); -exports.classExtender2 = exports.classExtender = void 0; +exports.classExtender = classExtender; +exports.classExtender2 = classExtender2; function classExtender(superClass, _instanceModifier) { return /** @class */ (function (_super) { __extends(decoratorFunc, _super); @@ -55,7 +56,6 @@ function classExtender(superClass, _instanceModifier) { return decoratorFunc; }(superClass)); } -exports.classExtender = classExtender; var MyClass = /** @class */ (function () { function MyClass() { } @@ -76,4 +76,3 @@ function classExtender2(superClass, _instanceModifier) { return decoratorFunc; }(superClass)); } -exports.classExtender2 = classExtender2; diff --git a/tests/baselines/reference/checkJsxUnionSFXContextualTypeInferredCorrectly.js b/tests/baselines/reference/checkJsxUnionSFXContextualTypeInferredCorrectly.js index 49eb8705499d6..c8d4ceef37710 100644 --- a/tests/baselines/reference/checkJsxUnionSFXContextualTypeInferredCorrectly.js +++ b/tests/baselines/reference/checkJsxUnionSFXContextualTypeInferredCorrectly.js @@ -47,17 +47,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.HereIsTheError = exports.ComponentWithUnion = void 0; +exports.ComponentWithUnion = ComponentWithUnion; +exports.HereIsTheError = HereIsTheError; var react_1 = __importDefault(require("react")); function ComponentWithUnion(props) { return react_1.default.createElement("h1", null); } -exports.ComponentWithUnion = ComponentWithUnion; // Usage with React tsx function HereIsTheError() { return (react_1.default.createElement(ComponentWithUnion, { multi: false, value: 's', onChange: function (val) { return console.log(val); } })); } -exports.HereIsTheError = HereIsTheError; // Usage with pure TypeScript ComponentWithUnion({ multi: false, diff --git a/tests/baselines/reference/circularReferenceInImport.js b/tests/baselines/reference/circularReferenceInImport.js index a056749873e32..0ce96da309901 100644 --- a/tests/baselines/reference/circularReferenceInImport.js +++ b/tests/baselines/reference/circularReferenceInImport.js @@ -17,11 +17,10 @@ export function foo() { //// [app.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.foo = void 0; +exports.foo = foo; function foo() { return new Object(); } -exports.foo = foo; //// [app.d.ts] diff --git a/tests/baselines/reference/circularResolvedSignature.js b/tests/baselines/reference/circularResolvedSignature.js index a7d67877584c2..bb688a85b7606 100644 --- a/tests/baselines/reference/circularResolvedSignature.js +++ b/tests/baselines/reference/circularResolvedSignature.js @@ -21,7 +21,7 @@ export function Component() { //// [circularResolvedSignature.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.Component = void 0; +exports.Component = Component; function Component() { var _a = useState(function () { return ({ value: "string", // this should be a number @@ -29,4 +29,3 @@ function Component() { bar: function (arg) { return setState(arg); }, }); }), state = _a[0], setState = _a[1]; } -exports.Component = Component; diff --git a/tests/baselines/reference/collisionExportsRequireAndAlias.js b/tests/baselines/reference/collisionExportsRequireAndAlias.js index 25fd9eb32915a..68c8ae98fb99c 100644 --- a/tests/baselines/reference/collisionExportsRequireAndAlias.js +++ b/tests/baselines/reference/collisionExportsRequireAndAlias.js @@ -21,31 +21,28 @@ export function foo2() { define(["require", "exports"], function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - exports.bar = void 0; + exports.bar = bar; function bar() { } - exports.bar = bar; }); //// [collisionExportsRequireAndAlias_file3333.js] define(["require", "exports"], function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - exports.bar2 = void 0; + exports.bar2 = bar2; function bar2() { } - exports.bar2 = bar2; }); //// [collisionExportsRequireAndAlias_file2.js] define(["require", "exports", "collisionExportsRequireAndAlias_file1", "collisionExportsRequireAndAlias_file3333"], function (require, exports, require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - exports.foo2 = exports.foo = void 0; + exports.foo = foo; + exports.foo2 = foo2; function foo() { require.bar(); } - exports.foo = foo; function foo2() { exports.bar2(); } - exports.foo2 = foo2; }); diff --git a/tests/baselines/reference/collisionExportsRequireAndAmbientModule.js b/tests/baselines/reference/collisionExportsRequireAndAmbientModule.js index d6868bfa8a931..39a1451e2f747 100644 --- a/tests/baselines/reference/collisionExportsRequireAndAmbientModule.js +++ b/tests/baselines/reference/collisionExportsRequireAndAmbientModule.js @@ -98,15 +98,14 @@ module m4 { define(["require", "exports"], function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - exports.foo2 = exports.foo = void 0; + exports.foo = foo; + exports.foo2 = foo2; function foo() { return null; } - exports.foo = foo; function foo2() { return null; } - exports.foo2 = foo2; var m2; (function (m2) { var a = 10; diff --git a/tests/baselines/reference/collisionExportsRequireAndFunction.js b/tests/baselines/reference/collisionExportsRequireAndFunction.js index 4ab7ae414e064..0281aa2e03ac2 100644 --- a/tests/baselines/reference/collisionExportsRequireAndFunction.js +++ b/tests/baselines/reference/collisionExportsRequireAndFunction.js @@ -28,15 +28,14 @@ module m2 { define(["require", "exports"], function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - exports.require = exports.exports = void 0; + exports.exports = exports; + exports.require = require; function exports() { return 1; } - exports.exports = exports; function require() { return "require"; } - exports.require = require; var m1; (function (m1) { function exports() { diff --git a/tests/baselines/reference/collisionExportsRequireAndModule.js b/tests/baselines/reference/collisionExportsRequireAndModule.js index bc0f5936ad3b3..2db6711d8b7ad 100644 --- a/tests/baselines/reference/collisionExportsRequireAndModule.js +++ b/tests/baselines/reference/collisionExportsRequireAndModule.js @@ -95,7 +95,9 @@ module m4 { define(["require", "exports"], function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - exports.foo2 = exports.exports = exports.foo = exports.require = void 0; + exports.exports = exports.require = void 0; + exports.foo = foo; + exports.foo2 = foo2; var require; (function (require) { var C = /** @class */ (function () { @@ -108,7 +110,6 @@ define(["require", "exports"], function (require, exports) { function foo() { return null; } - exports.foo = foo; var exports; (function (exports) { var C = /** @class */ (function () { @@ -121,7 +122,6 @@ define(["require", "exports"], function (require, exports) { function foo2() { return null; } - exports.foo2 = foo2; var m1; (function (m1) { var require; diff --git a/tests/baselines/reference/collisionExportsRequireAndUninstantiatedModule.js b/tests/baselines/reference/collisionExportsRequireAndUninstantiatedModule.js index bbf45b748dbdc..9d6a43341f1d4 100644 --- a/tests/baselines/reference/collisionExportsRequireAndUninstantiatedModule.js +++ b/tests/baselines/reference/collisionExportsRequireAndUninstantiatedModule.js @@ -20,13 +20,12 @@ export function foo2(): exports.I { define(["require", "exports"], function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - exports.foo2 = exports.foo = void 0; + exports.foo = foo; + exports.foo2 = foo2; function foo() { return null; } - exports.foo = foo; function foo2() { return null; } - exports.foo2 = foo2; }); diff --git a/tests/baselines/reference/collisionExportsRequireAndVar.js b/tests/baselines/reference/collisionExportsRequireAndVar.js index 5ce60fefd5198..d8d30f2641897 100644 --- a/tests/baselines/reference/collisionExportsRequireAndVar.js +++ b/tests/baselines/reference/collisionExportsRequireAndVar.js @@ -30,10 +30,9 @@ module m4 { define(["require", "exports"], function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - exports.foo = void 0; + exports.foo = foo; function foo() { } - exports.foo = foo; var exports = 1; var require = "require"; var m1; diff --git a/tests/baselines/reference/commonjsSafeImport.js b/tests/baselines/reference/commonjsSafeImport.js index 9df802827e2bc..05ac7e1c667cb 100644 --- a/tests/baselines/reference/commonjsSafeImport.js +++ b/tests/baselines/reference/commonjsSafeImport.js @@ -12,9 +12,8 @@ Foo(); //// [10_lib.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.Foo = void 0; -function Foo() { } exports.Foo = Foo; +function Foo() { } //// [main.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/tests/baselines/reference/complexNarrowingWithAny.js b/tests/baselines/reference/complexNarrowingWithAny.js index bd3b6befbeb65..5e75972cba9c8 100644 --- a/tests/baselines/reference/complexNarrowingWithAny.js +++ b/tests/baselines/reference/complexNarrowingWithAny.js @@ -565,7 +565,7 @@ export function viewFactory_AppComponent0(viewUtils:any,parentInjector:any,decla "use strict"; // Repro from #10869 Object.defineProperty(exports, "__esModule", { value: true }); -exports.viewFactory_AppComponent0 = void 0; +exports.viewFactory_AppComponent0 = viewFactory_AppComponent0; /** * This file is generated by the Angular 2 template compiler. * Do not edit. @@ -1028,4 +1028,3 @@ var _View_AppComponent0 = /** @class */ (function () { function viewFactory_AppComponent0(viewUtils, parentInjector, declarationEl) { return new _View_AppComponent0(viewUtils, parentInjector, declarationEl); } -exports.viewFactory_AppComponent0 = viewFactory_AppComponent0; diff --git a/tests/baselines/reference/complicatedIndexedAccessKeyofReliesOnKeyofNeverUpperBound.js b/tests/baselines/reference/complicatedIndexedAccessKeyofReliesOnKeyofNeverUpperBound.js index e1d3fbcb8ad4b..793b85742a782 100644 --- a/tests/baselines/reference/complicatedIndexedAccessKeyofReliesOnKeyofNeverUpperBound.js +++ b/tests/baselines/reference/complicatedIndexedAccessKeyofReliesOnKeyofNeverUpperBound.js @@ -48,12 +48,11 @@ newTextChannel2.phoneNumber = '613-555-1234'; //// [complicatedIndexedAccessKeyofReliesOnKeyofNeverUpperBound.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.makeNewChannel = void 0; +exports.makeNewChannel = makeNewChannel; function makeNewChannel(type) { var localChannelId = "blahblahblah"; return { type: type, localChannelId: localChannelId }; } -exports.makeNewChannel = makeNewChannel; var newTextChannel = makeNewChannel('text'); // This should work newTextChannel.phoneNumber = '613-555-1234'; diff --git a/tests/baselines/reference/computedPropertyNameWithImportedKey.js b/tests/baselines/reference/computedPropertyNameWithImportedKey.js index 7854938f7c522..d8b5d6a7c1a5b 100644 --- a/tests/baselines/reference/computedPropertyNameWithImportedKey.js +++ b/tests/baselines/reference/computedPropertyNameWithImportedKey.js @@ -18,13 +18,12 @@ exports.a = Symbol(); //// [b.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.fn = void 0; +exports.fn = fn; var a_1 = require("./a"); function fn(_a) { var _b = a_1.a, value = _a[_b]; return value; } -exports.fn = fn; //// [a.d.ts] diff --git a/tests/baselines/reference/conditionalTypeAssignabilityWhenDeferred.js b/tests/baselines/reference/conditionalTypeAssignabilityWhenDeferred.js index 76db0668954eb..68d75b2f5785c 100644 --- a/tests/baselines/reference/conditionalTypeAssignabilityWhenDeferred.js +++ b/tests/baselines/reference/conditionalTypeAssignabilityWhenDeferred.js @@ -123,12 +123,11 @@ function f4 any>( //// [conditionalTypeAssignabilityWhenDeferred.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.func = void 0; +exports.func = func; function select(property, list, valueProp) { } function func(x, tipos) { select(x, tipos, "value"); } -exports.func = func; onlyNullablePlease(z); // works as expected onlyNullablePlease2(z); // works as expected onlyNullablePlease(y); // error as expected diff --git a/tests/baselines/reference/conditionalTypeDiscriminatingLargeUnionRegularTypeFetchingSpeedReasonable.js b/tests/baselines/reference/conditionalTypeDiscriminatingLargeUnionRegularTypeFetchingSpeedReasonable.js index 3000fa813fafc..4e2bd6ef91e33 100644 --- a/tests/baselines/reference/conditionalTypeDiscriminatingLargeUnionRegularTypeFetchingSpeedReasonable.js +++ b/tests/baselines/reference/conditionalTypeDiscriminatingLargeUnionRegularTypeFetchingSpeedReasonable.js @@ -8017,8 +8017,7 @@ export function makeThing( //// [conditionalTypeDiscriminatingLargeUnionRegularTypeFetchingSpeedReasonable.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.makeThing = void 0; +exports.makeThing = makeThing; function makeThing(name, children) { if (children === void 0) { children = []; } } -exports.makeThing = makeThing; diff --git a/tests/baselines/reference/constEnumNamespaceReferenceCausesNoImport(isolatedmodules=false).js b/tests/baselines/reference/constEnumNamespaceReferenceCausesNoImport(isolatedmodules=false).js index 1455e52f219ad..1b8b6c344ad91 100644 --- a/tests/baselines/reference/constEnumNamespaceReferenceCausesNoImport(isolatedmodules=false).js +++ b/tests/baselines/reference/constEnumNamespaceReferenceCausesNoImport(isolatedmodules=false).js @@ -20,10 +20,9 @@ function check(x: Foo.ConstFooEnum): void { //// [foo.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.fooFunc = void 0; +exports.fooFunc = fooFunc; ; function fooFunc() { } -exports.fooFunc = fooFunc; //// [index.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/tests/baselines/reference/constEnumNamespaceReferenceCausesNoImport(isolatedmodules=true).js b/tests/baselines/reference/constEnumNamespaceReferenceCausesNoImport(isolatedmodules=true).js index 8561b558dfb3e..cdec1c13c760a 100644 --- a/tests/baselines/reference/constEnumNamespaceReferenceCausesNoImport(isolatedmodules=true).js +++ b/tests/baselines/reference/constEnumNamespaceReferenceCausesNoImport(isolatedmodules=true).js @@ -20,7 +20,8 @@ function check(x: Foo.ConstFooEnum): void { //// [foo.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.fooFunc = exports.ConstFooEnum = void 0; +exports.ConstFooEnum = void 0; +exports.fooFunc = fooFunc; var ConstFooEnum; (function (ConstFooEnum) { ConstFooEnum[ConstFooEnum["Some"] = 0] = "Some"; @@ -29,7 +30,6 @@ var ConstFooEnum; })(ConstFooEnum || (exports.ConstFooEnum = ConstFooEnum = {})); ; function fooFunc() { } -exports.fooFunc = fooFunc; //// [index.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/tests/baselines/reference/contextuallyTypedParametersWithInitializers1.js b/tests/baselines/reference/contextuallyTypedParametersWithInitializers1.js index 975f8af6aba26..0cbc719a412ba 100644 --- a/tests/baselines/reference/contextuallyTypedParametersWithInitializers1.js +++ b/tests/baselines/reference/contextuallyTypedParametersWithInitializers1.js @@ -89,7 +89,7 @@ const fz2: Function = (debug = true) => false; //// [contextuallyTypedParametersWithInitializers1.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.executeSomething = void 0; +exports.executeSomething = executeSomething; var f10 = function (_a) { var _b = _a.foo, foo = _b === void 0 ? 42 : _b; return foo; @@ -223,7 +223,6 @@ function executeSomething() { } }); } -exports.executeSomething = executeSomething; var fz1 = function (debug) { if (debug === void 0) { debug = true; } return false; diff --git a/tests/baselines/reference/contextuallyTypedStringLiteralsInJsxAttributes02.js b/tests/baselines/reference/contextuallyTypedStringLiteralsInJsxAttributes02.js index 4719437565535..fe35e91819fa6 100644 --- a/tests/baselines/reference/contextuallyTypedStringLiteralsInJsxAttributes02.js +++ b/tests/baselines/reference/contextuallyTypedStringLiteralsInJsxAttributes02.js @@ -43,7 +43,9 @@ const d1 = ; // goTo has type "home" | define(["require", "exports", "react"], function (require, exports, React) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - exports.NoOverload1 = exports.NoOverload = exports.MainButton = void 0; + exports.MainButton = MainButton; + exports.NoOverload = NoOverload; + exports.NoOverload1 = NoOverload1; function MainButton(props) { var linkProps = props; if (linkProps.goTo) { @@ -51,15 +53,12 @@ define(["require", "exports", "react"], function (require, exports, React) { } return this._buildMainButton(props); } - exports.MainButton = MainButton; var b0 = ; // k has type "left" | "right" var b2 = ; // k has type "left" | "right" var b3 = ; // goTo has type"home" | "contact" var b4 = ; // goTo has type "home" | "contact" function NoOverload(buttonProps) { return undefined; } - exports.NoOverload = NoOverload; var c1 = ; // k has type any function NoOverload1(linkProps) { return undefined; } - exports.NoOverload1 = NoOverload1; var d1 = ; // goTo has type "home" | "contact" }); diff --git a/tests/baselines/reference/controlFlowGenericTypes.js b/tests/baselines/reference/controlFlowGenericTypes.js index b62fe0ebd194c..d22dd7421ed0c 100644 --- a/tests/baselines/reference/controlFlowGenericTypes.js +++ b/tests/baselines/reference/controlFlowGenericTypes.js @@ -225,7 +225,7 @@ function getColumnProperty(column: Column, key: keyof Column) { //// [controlFlowGenericTypes.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.bounceAndTakeIfA = void 0; +exports.bounceAndTakeIfA = bounceAndTakeIfA; function f1(x, y, z) { if (x) { x; @@ -279,7 +279,6 @@ function bounceAndTakeIfA(value) { return value; } } -exports.bounceAndTakeIfA = bounceAndTakeIfA; var fn = function (value) { value.foo; // Error if ('foo' in value) { diff --git a/tests/baselines/reference/declFileAliasUseBeforeDeclaration.js b/tests/baselines/reference/declFileAliasUseBeforeDeclaration.js index 6ab1760842b6c..4d444250be137 100644 --- a/tests/baselines/reference/declFileAliasUseBeforeDeclaration.js +++ b/tests/baselines/reference/declFileAliasUseBeforeDeclaration.js @@ -20,9 +20,8 @@ exports.Foo = Foo; //// [declFileAliasUseBeforeDeclaration_test.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.bar = void 0; -function bar(a) { } exports.bar = bar; +function bar(a) { } //// [declFileAliasUseBeforeDeclaration_foo.d.ts] diff --git a/tests/baselines/reference/declFileFunctions.js b/tests/baselines/reference/declFileFunctions.js index 4924f15b080ae..0f9c7e00450c5 100644 --- a/tests/baselines/reference/declFileFunctions.js +++ b/tests/baselines/reference/declFileFunctions.js @@ -79,18 +79,24 @@ function globalfooWithOverloads(a: any): any { //// [declFileFunctions_0.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.fooWithTypeTypePredicateAndRestParam = exports.fooWithTypeTypePredicateAndGeneric = exports.fooWithTypePredicateAndMulitpleParams = exports.fooWithTypePredicate = exports.fooWithSingleOverload = exports.fooWithOverloads = exports.fooWithRestParameters = exports.fooWithParameters = exports.foo = void 0; +exports.foo = foo; +exports.fooWithParameters = fooWithParameters; +exports.fooWithRestParameters = fooWithRestParameters; +exports.fooWithOverloads = fooWithOverloads; +exports.fooWithSingleOverload = fooWithSingleOverload; +exports.fooWithTypePredicate = fooWithTypePredicate; +exports.fooWithTypePredicateAndMulitpleParams = fooWithTypePredicateAndMulitpleParams; +exports.fooWithTypeTypePredicateAndGeneric = fooWithTypeTypePredicateAndGeneric; +exports.fooWithTypeTypePredicateAndRestParam = fooWithTypeTypePredicateAndRestParam; /** This comment should appear for foo*/ function foo() { } -exports.foo = foo; /** This is comment for function signature*/ function fooWithParameters(/** this is comment about a*/ a, /** this is comment for b*/ b) { var d = a; } -exports.fooWithParameters = fooWithParameters; function fooWithRestParameters(a) { var rests = []; for (var _i = 1; _i < arguments.length; _i++) { @@ -98,27 +104,21 @@ function fooWithRestParameters(a) { } return a + rests.join(""); } -exports.fooWithRestParameters = fooWithRestParameters; function fooWithOverloads(a) { return a; } -exports.fooWithOverloads = fooWithOverloads; function fooWithSingleOverload(a) { return a; } -exports.fooWithSingleOverload = fooWithSingleOverload; function fooWithTypePredicate(a) { return true; } -exports.fooWithTypePredicate = fooWithTypePredicate; function fooWithTypePredicateAndMulitpleParams(a, b, c) { return true; } -exports.fooWithTypePredicateAndMulitpleParams = fooWithTypePredicateAndMulitpleParams; function fooWithTypeTypePredicateAndGeneric(a) { return true; } -exports.fooWithTypeTypePredicateAndGeneric = fooWithTypeTypePredicateAndGeneric; function fooWithTypeTypePredicateAndRestParam(a) { var rest = []; for (var _i = 1; _i < arguments.length; _i++) { @@ -126,7 +126,6 @@ function fooWithTypeTypePredicateAndRestParam(a) { } return true; } -exports.fooWithTypeTypePredicateAndRestParam = fooWithTypeTypePredicateAndRestParam; /** This comment should appear for nonExportedFoo*/ function nonExportedFoo() { } diff --git a/tests/baselines/reference/declFileGenericType.js b/tests/baselines/reference/declFileGenericType.js index 560c67f31b586..e3d6fec029517 100644 --- a/tests/baselines/reference/declFileGenericType.js +++ b/tests/baselines/reference/declFileGenericType.js @@ -59,7 +59,8 @@ var __extends = (this && this.__extends) || (function () { }; })(); Object.defineProperty(exports, "__esModule", { value: true }); -exports.j = exports.h = exports.g = exports.f = exports.x = exports.e = exports.d = exports.c = exports.b = exports.a = exports.C = void 0; +exports.j = exports.h = exports.g = exports.x = exports.e = exports.d = exports.c = exports.b = exports.a = exports.C = void 0; +exports.f = f; var C; (function (C) { var A = /** @class */ (function () { @@ -100,7 +101,6 @@ exports.d = C.F3; exports.e = C.F4; exports.x = (new C.D(new C.A())).val; function f() { } -exports.f = f; exports.g = C.F5(); var h = /** @class */ (function (_super) { __extends(h, _super); diff --git a/tests/baselines/reference/declarationEmitDefaultExportWithStaticAssignment.js b/tests/baselines/reference/declarationEmitDefaultExportWithStaticAssignment.js index 20b69e072b611..6fa7ce8a2b174 100644 --- a/tests/baselines/reference/declarationEmitDefaultExportWithStaticAssignment.js +++ b/tests/baselines/reference/declarationEmitDefaultExportWithStaticAssignment.js @@ -45,23 +45,24 @@ exports.Foo = Foo; //// [index1.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); +exports.default = Example; var foo_1 = require("./foo"); function Example() { } -exports.default = Example; Example.Foo = foo_1.Foo; //// [index2.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Foo = void 0; +exports.default = Example; var foo_1 = require("./foo"); Object.defineProperty(exports, "Foo", { enumerable: true, get: function () { return foo_1.Foo; } }); function Example() { } -exports.default = Example; Example.Foo = foo_1.Foo; //// [index3.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Bar = void 0; +exports.default = Example; var Bar = /** @class */ (function () { function Bar() { } @@ -69,18 +70,16 @@ var Bar = /** @class */ (function () { }()); exports.Bar = Bar; function Example() { } -exports.default = Example; Example.Bar = Bar; //// [index4.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.C = void 0; +exports.C = C; function A() { } function B() { } function C() { return null; } -exports.C = C; C.A = A; C.B = B; diff --git a/tests/baselines/reference/declarationEmitExpandoPropertyPrivateName.js b/tests/baselines/reference/declarationEmitExpandoPropertyPrivateName.js index 2ca4cf7e1c2d2..630c5f598b607 100644 --- a/tests/baselines/reference/declarationEmitExpandoPropertyPrivateName.js +++ b/tests/baselines/reference/declarationEmitExpandoPropertyPrivateName.js @@ -13,16 +13,14 @@ q.val = f(); //// [a.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.f = void 0; -function f() { return null; } exports.f = f; +function f() { return null; } //// [b.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.q = void 0; +exports.q = q; var a_1 = require("./a"); function q() { } -exports.q = q; q.val = (0, a_1.f)(); diff --git a/tests/baselines/reference/declarationEmitExportAssignedNamespaceNoTripleSlashTypesReference.js b/tests/baselines/reference/declarationEmitExportAssignedNamespaceNoTripleSlashTypesReference.js index 4157f352368b9..1f08efb9e7258 100644 --- a/tests/baselines/reference/declarationEmitExportAssignedNamespaceNoTripleSlashTypesReference.js +++ b/tests/baselines/reference/declarationEmitExportAssignedNamespaceNoTripleSlashTypesReference.js @@ -40,11 +40,10 @@ export * from '@emotion/core'; //// [get-comp.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.getComp = void 0; +exports.getComp = getComp; function getComp() { return {}; } -exports.getComp = getComp; //// [inferred-comp-export.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/tests/baselines/reference/declarationEmitExportAssignment.js b/tests/baselines/reference/declarationEmitExportAssignment.js index bcd5933cd045a..2ae769ae770a8 100644 --- a/tests/baselines/reference/declarationEmitExportAssignment.js +++ b/tests/baselines/reference/declarationEmitExportAssignment.js @@ -12,11 +12,10 @@ export = foo; //// [utils.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.bar = exports.foo = void 0; -function foo() { } exports.foo = foo; -function bar() { } exports.bar = bar; +function foo() { } +function bar() { } //// [index.js] "use strict"; var utils_1 = require("./utils"); diff --git a/tests/baselines/reference/declarationEmitExportDeclaration.js b/tests/baselines/reference/declarationEmitExportDeclaration.js index 5917ac41d08fd..bc42de33123a8 100644 --- a/tests/baselines/reference/declarationEmitExportDeclaration.js +++ b/tests/baselines/reference/declarationEmitExportDeclaration.js @@ -15,11 +15,10 @@ export {bar}; //// [utils.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.bar = exports.foo = void 0; -function foo() { } exports.foo = foo; -function bar() { } exports.bar = bar; +function foo() { } +function bar() { } //// [index.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/tests/baselines/reference/declarationEmitForModuleImportingModuleAugmentationRetainsImport.js b/tests/baselines/reference/declarationEmitForModuleImportingModuleAugmentationRetainsImport.js index 81949cf8ec8e3..b007a525ab6b8 100644 --- a/tests/baselines/reference/declarationEmitForModuleImportingModuleAugmentationRetainsImport.js +++ b/tests/baselines/reference/declarationEmitForModuleImportingModuleAugmentationRetainsImport.js @@ -35,11 +35,10 @@ exports.ParentThing = ParentThing; //// [child1.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.child1 = void 0; +exports.child1 = child1; function child1(prototype) { prototype.add = function (a, b) { return a + b; }; } -exports.child1 = child1; //// [parent.d.ts] diff --git a/tests/baselines/reference/declarationEmitForTypesWhichNeedImportTypes.js b/tests/baselines/reference/declarationEmitForTypesWhichNeedImportTypes.js index f986d323853b4..b79696241faeb 100644 --- a/tests/baselines/reference/declarationEmitForTypesWhichNeedImportTypes.js +++ b/tests/baselines/reference/declarationEmitForTypesWhichNeedImportTypes.js @@ -15,11 +15,10 @@ export const Value = createNamed(); //// [b.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.createNamed = void 0; +exports.createNamed = createNamed; function createNamed() { return {}; } -exports.createNamed = createNamed; //// [a.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/tests/baselines/reference/declarationEmitIdentifierPredicates01.js b/tests/baselines/reference/declarationEmitIdentifierPredicates01.js index e21cc382a7bfe..d69c571936b4e 100644 --- a/tests/baselines/reference/declarationEmitIdentifierPredicates01.js +++ b/tests/baselines/reference/declarationEmitIdentifierPredicates01.js @@ -8,11 +8,10 @@ export function f(x: any): x is number { //// [declarationEmitIdentifierPredicates01.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.f = void 0; +exports.f = f; function f(x) { return typeof x === "number"; } -exports.f = f; //// [declarationEmitIdentifierPredicates01.d.ts] diff --git a/tests/baselines/reference/declarationEmitIdentifierPredicatesWithPrivateName01.js b/tests/baselines/reference/declarationEmitIdentifierPredicatesWithPrivateName01.js index 2a24276f93683..bfc8e010dd69c 100644 --- a/tests/baselines/reference/declarationEmitIdentifierPredicatesWithPrivateName01.js +++ b/tests/baselines/reference/declarationEmitIdentifierPredicatesWithPrivateName01.js @@ -12,11 +12,10 @@ export function f(x: any): x is I { //// [declarationEmitIdentifierPredicatesWithPrivateName01.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.f = void 0; +exports.f = f; function f(x) { return typeof x.a === "number"; } -exports.f = f; //// [declarationEmitIdentifierPredicatesWithPrivateName01.d.ts] diff --git a/tests/baselines/reference/declarationEmitInferredTypeAlias2.js b/tests/baselines/reference/declarationEmitInferredTypeAlias2.js index d218b170591e8..2b4273dda315b 100644 --- a/tests/baselines/reference/declarationEmitInferredTypeAlias2.js +++ b/tests/baselines/reference/declarationEmitInferredTypeAlias2.js @@ -29,7 +29,6 @@ exports.v = v; function bar() { return v; } -exports.bar = bar; //// [0.d.ts] diff --git a/tests/baselines/reference/declarationEmitInferredTypeAlias9.js b/tests/baselines/reference/declarationEmitInferredTypeAlias9.js index b45fffca43a3b..837062490d570 100644 --- a/tests/baselines/reference/declarationEmitInferredTypeAlias9.js +++ b/tests/baselines/reference/declarationEmitInferredTypeAlias9.js @@ -11,12 +11,11 @@ export function returnSomeGlobalValue() { //// [declarationEmitInferredTypeAlias9.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.returnSomeGlobalValue = void 0; +exports.returnSomeGlobalValue = returnSomeGlobalValue; var x; function returnSomeGlobalValue() { return x; } -exports.returnSomeGlobalValue = returnSomeGlobalValue; //// [declarationEmitInferredTypeAlias9.d.ts] diff --git a/tests/baselines/reference/declarationEmitMonorepoBaseUrl.js b/tests/baselines/reference/declarationEmitMonorepoBaseUrl.js index 55e699fc7a2ff..de71b6c1713b8 100644 --- a/tests/baselines/reference/declarationEmitMonorepoBaseUrl.js +++ b/tests/baselines/reference/declarationEmitMonorepoBaseUrl.js @@ -49,12 +49,11 @@ Object.defineProperty(exports, "__esModule", { value: true }); //// [index.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.resolveParserPlugins = void 0; +exports.resolveParserPlugins = resolveParserPlugins; const parser_1 = require("@babel/parser"); function resolveParserPlugins() { return [(0, parser_1.createPlugin)()]; } -exports.resolveParserPlugins = resolveParserPlugins; //// [index.d.ts] diff --git a/tests/baselines/reference/declarationEmitNestedAnonymousMappedType.js b/tests/baselines/reference/declarationEmitNestedAnonymousMappedType.js index 990be7d639417..f75e2cc1490bf 100644 --- a/tests/baselines/reference/declarationEmitNestedAnonymousMappedType.js +++ b/tests/baselines/reference/declarationEmitNestedAnonymousMappedType.js @@ -15,11 +15,10 @@ export function enumFromStrings() { //// [declarationEmitNestedAnonymousMappedType.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.enumFromStrings = void 0; +exports.enumFromStrings = enumFromStrings; function enumFromStrings() { return Object.create(null); } -exports.enumFromStrings = enumFromStrings; //// [declarationEmitNestedAnonymousMappedType.d.ts] diff --git a/tests/baselines/reference/declarationEmitPathMappingMonorepo.js b/tests/baselines/reference/declarationEmitPathMappingMonorepo.js index dbc3ac66c6d21..ba7bc512b5984 100644 --- a/tests/baselines/reference/declarationEmitPathMappingMonorepo.js +++ b/tests/baselines/reference/declarationEmitPathMappingMonorepo.js @@ -18,12 +18,11 @@ export function b(text: string) { //// [index.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.b = void 0; +exports.b = b; var a_1 = require("@ts-bug/a"); function b(text) { return (0, a_1.a)(text); } -exports.b = b; //// [index.d.ts] diff --git a/tests/baselines/reference/declarationEmitPrefersPathKindBasedOnBundling.js b/tests/baselines/reference/declarationEmitPrefersPathKindBasedOnBundling.js index f00670c6dae5b..0829cd3d97b1f 100644 --- a/tests/baselines/reference/declarationEmitPrefersPathKindBasedOnBundling.js +++ b/tests/baselines/reference/declarationEmitPrefersPathKindBasedOnBundling.js @@ -22,11 +22,10 @@ export default { //// [scalar.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.scalar = void 0; +exports.scalar = scalar; function scalar(value) { return null; } -exports.scalar = scalar; //// [spacing.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/tests/baselines/reference/declarationEmitPrefersPathKindBasedOnBundling2.js b/tests/baselines/reference/declarationEmitPrefersPathKindBasedOnBundling2.js index 5913414cc2807..21a1167f0bad7 100644 --- a/tests/baselines/reference/declarationEmitPrefersPathKindBasedOnBundling2.js +++ b/tests/baselines/reference/declarationEmitPrefersPathKindBasedOnBundling2.js @@ -23,11 +23,10 @@ export default { define("lib/operators/scalar", ["require", "exports"], function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); - exports.scalar = void 0; + exports.scalar = scalar; function scalar(value) { return null; } - exports.scalar = scalar; }); define("settings/spacing", ["require", "exports", "lib/operators/scalar"], function (require, exports, scalar_1) { "use strict"; diff --git a/tests/baselines/reference/declarationEmitPrivateNameCausesError.js b/tests/baselines/reference/declarationEmitPrivateNameCausesError.js index 2603b12438e14..50bb73fb28809 100644 --- a/tests/baselines/reference/declarationEmitPrivateNameCausesError.js +++ b/tests/baselines/reference/declarationEmitPrivateNameCausesError.js @@ -28,7 +28,7 @@ var __extends = (this && this.__extends) || (function () { }; })(); Object.defineProperty(exports, "__esModule", { value: true }); -exports.ignoreExtraVariables = void 0; +exports.ignoreExtraVariables = ignoreExtraVariables; var IGNORE_EXTRA_VARIABLES = Symbol(); //Notice how this is unexported //This is exported function ignoreExtraVariables(ctor) { @@ -45,7 +45,6 @@ function ignoreExtraVariables(ctor) { _a = IGNORE_EXTRA_VARIABLES, _b; } -exports.ignoreExtraVariables = ignoreExtraVariables; //// [file.d.ts] diff --git a/tests/baselines/reference/declarationEmitPromise.js b/tests/baselines/reference/declarationEmitPromise.js index 399e811092792..a43c328c00216 100644 --- a/tests/baselines/reference/declarationEmitPromise.js +++ b/tests/baselines/reference/declarationEmitPromise.js @@ -35,7 +35,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge }); }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.runSampleBreaks = exports.runSampleWorks = exports.bluebird = void 0; +exports.bluebird = void 0; +exports.runSampleWorks = runSampleWorks; +exports.runSampleBreaks = runSampleBreaks; class bluebird { } exports.bluebird = bluebird; @@ -47,7 +49,6 @@ function runSampleWorks(a, b, c, d, e) { return rfunc; }); } -exports.runSampleWorks = runSampleWorks; function runSampleBreaks(a, b, c, d, e) { return __awaiter(this, void 0, void 0, function* () { let result = yield bluebird.all([a, b, c, d, e].filter(el => !!el)); @@ -56,7 +57,6 @@ function runSampleBreaks(a, b, c, d, e) { return rfunc; }); } -exports.runSampleBreaks = runSampleBreaks; //// [declarationEmitPromise.d.ts] diff --git a/tests/baselines/reference/declarationEmitReadonlyComputedProperty.js b/tests/baselines/reference/declarationEmitReadonlyComputedProperty.js index 38e1c72b974c1..af14e06d8a448 100644 --- a/tests/baselines/reference/declarationEmitReadonlyComputedProperty.js +++ b/tests/baselines/reference/declarationEmitReadonlyComputedProperty.js @@ -23,7 +23,8 @@ export const spread = { //// [bug.js] "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.createInstance = exports.SYMBOL = void 0; +exports.SYMBOL = void 0; +exports.createInstance = createInstance; exports.SYMBOL = Symbol(); function createInstance() { var _a; @@ -31,7 +32,6 @@ function createInstance() { _a[exports.SYMBOL] = '', _a; } -exports.createInstance = createInstance; //// [index.js] "use strict"; var __assign = (this && this.__assign) || function () { diff --git a/tests/baselines/reference/declarationEmitReusesLambdaParameterNodes.js b/tests/baselines/reference/declarationEmitReusesLambdaParameterNodes.js index 6590bfb26d17c..bdc001a6ab0a6 100644 --- a/tests/baselines/reference/declarationEmitReusesLambdaParameterNodes.js +++ b/tests/baselines/reference/declarationEmitReusesLambdaParameterNodes.js @@ -14,11 +14,11 @@ export function CustomSelect2(x: Props