diff --git a/Jakefile.js b/Jakefile.js index 5dfbcc26d74..7cd36aaa8bd 100644 --- a/Jakefile.js +++ b/Jakefile.js @@ -106,6 +106,16 @@ var serverCoreSources = [ return path.join(serverDirectory, f); }); +var scriptSources = [ + "tslint/booleanTriviaRule.ts", + "tslint/nextLineRule.ts", + "tslint/noNullRule.ts", + "tslint/preferConstRule.ts", + "tslint/typeOperatorSpacingRule.ts" +].map(function (f) { + return path.join(scriptsDirectory, f); +}); + var serverSources = serverCoreSources.concat(servicesSources); var languageServiceLibrarySources = [ @@ -365,7 +375,6 @@ file(builtGeneratedDiagnosticMessagesJSON,[generatedDiagnosticMessagesJSON], fun desc("Generates a diagnostic file in TypeScript based on an input JSON file"); task("generate-diagnostics", [diagnosticInfoMapTs]); - // Publish nightly var configureNightlyJs = path.join(scriptsDirectory, "configureNightly.js"); var configureNightlyTs = path.join(scriptsDirectory, "configureNightly.ts"); @@ -909,7 +918,8 @@ function lintFileAsync(options, path, cb) { var lintTargets = compilerSources .concat(harnessCoreSources) - .concat(serverCoreSources); + .concat(serverCoreSources) + .concat(scriptSources); desc("Runs tslint on the compiler sources"); task("lint", ["build-rules"], function() { diff --git a/scripts/tslint/typeOperatorSpacingRule.ts b/scripts/tslint/typeOperatorSpacingRule.ts index 4196d024768..7ceef2372bf 100644 --- a/scripts/tslint/typeOperatorSpacingRule.ts +++ b/scripts/tslint/typeOperatorSpacingRule.ts @@ -13,10 +13,10 @@ export class Rule extends Lint.Rules.AbstractRule { class TypeOperatorSpacingWalker extends Lint.RuleWalker { public visitNode(node: ts.Node) { if (node.kind === ts.SyntaxKind.UnionType || node.kind === ts.SyntaxKind.IntersectionType) { - let types = (node).types; + const types = (node).types; let expectedStart = types[0].end + 2; // space, | or & for (let i = 1; i < types.length; i++) { - let currentType = types[i]; + const currentType = types[i]; if (expectedStart !== currentType.pos || currentType.getLeadingTriviaWidth() !== 1) { const failure = this.createFailure(currentType.pos, currentType.getWidth(), Rule.FAILURE_STRING); this.addFailure(failure); diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index de68f4f2173..d4cdd50180d 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -46,6 +46,7 @@ namespace ts { const compilerOptions = host.getCompilerOptions(); const languageVersion = compilerOptions.target || ScriptTarget.ES3; const modulekind = compilerOptions.module ? compilerOptions.module : languageVersion === ScriptTarget.ES6 ? ModuleKind.ES6 : ModuleKind.None; + const allowSyntheticDefaultImports = typeof compilerOptions.allowSyntheticDefaultImports !== "undefined" ? compilerOptions.allowSyntheticDefaultImports : modulekind === ModuleKind.System; const emitResolver = createResolver(); @@ -768,9 +769,12 @@ namespace ts { const moduleSymbol = resolveExternalModuleName(node, (node.parent).moduleSpecifier); if (moduleSymbol) { const exportDefaultSymbol = resolveSymbol(moduleSymbol.exports["default"]); - if (!exportDefaultSymbol) { + if (!exportDefaultSymbol && !allowSyntheticDefaultImports) { error(node.name, Diagnostics.Module_0_has_no_default_export, symbolToString(moduleSymbol)); } + else if (!exportDefaultSymbol && allowSyntheticDefaultImports) { + return resolveSymbol(moduleSymbol.exports["export="]) || resolveSymbol(moduleSymbol); + } return exportDefaultSymbol; } } diff --git a/src/compiler/commandLineParser.ts b/src/compiler/commandLineParser.ts index 6ed27aeb3bf..8066aff32d3 100644 --- a/src/compiler/commandLineParser.ts +++ b/src/compiler/commandLineParser.ts @@ -311,7 +311,12 @@ namespace ts { { name: "allowJs", type: "boolean", - description: Diagnostics.Allow_javascript_files_to_be_compiled, + description: Diagnostics.Allow_javascript_files_to_be_compiled + }, + { + name: "allowSyntheticDefaultImports", + type: "boolean", + description: Diagnostics.Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking } ]; diff --git a/src/compiler/declarationEmitter.ts b/src/compiler/declarationEmitter.ts index 0250f97ba1c..0e0b121bf3c 100644 --- a/src/compiler/declarationEmitter.ts +++ b/src/compiler/declarationEmitter.ts @@ -658,7 +658,7 @@ namespace ts { } else { write("require("); - writeTextOfNode(currentText, getExternalModuleImportEqualsDeclarationExpression(node)); + emitExternalModuleSpecifier(node); write(");"); } writer.writeLine(); @@ -715,14 +715,23 @@ namespace ts { } write(" from "); } - emitExternalModuleSpecifier(node.moduleSpecifier); + emitExternalModuleSpecifier(node); write(";"); writer.writeLine(); } - function emitExternalModuleSpecifier(moduleSpecifier: Expression) { - if (moduleSpecifier.kind === SyntaxKind.StringLiteral && isBundledEmit) { - const moduleName = getExternalModuleNameFromDeclaration(host, resolver, moduleSpecifier.parent as (ImportEqualsDeclaration | ImportDeclaration | ExportDeclaration)); + function emitExternalModuleSpecifier(parent: ImportEqualsDeclaration | ImportDeclaration | ExportDeclaration) { + let moduleSpecifier: Node; + if (parent.kind === SyntaxKind.ImportEqualsDeclaration) { + const node = parent as ImportEqualsDeclaration; + moduleSpecifier = getExternalModuleImportEqualsDeclarationExpression(node); + } + else { + const node = parent as (ImportDeclaration | ExportDeclaration); + moduleSpecifier = node.moduleSpecifier; + } + if (moduleSpecifier.kind === SyntaxKind.StringLiteral && isBundledEmit && (compilerOptions.out || compilerOptions.outFile)) { + const moduleName = getExternalModuleNameFromDeclaration(host, resolver, parent); if (moduleName) { write("\""); write(moduleName); @@ -765,7 +774,7 @@ namespace ts { } if (node.moduleSpecifier) { write(" from "); - emitExternalModuleSpecifier(node.moduleSpecifier); + emitExternalModuleSpecifier(node); } write(";"); writer.writeLine(); diff --git a/src/compiler/diagnosticMessages.json b/src/compiler/diagnosticMessages.json index 331ada0cbe0..673f0bf7682 100644 --- a/src/compiler/diagnosticMessages.json +++ b/src/compiler/diagnosticMessages.json @@ -2136,6 +2136,10 @@ "category": "Message", "code": 6010 }, + "Allow default imports from modules with no default export. This does not affect code emit, just typechecking.": { + "category": "Message", + "code": 6011 + }, "Specify ECMAScript target version: 'ES3' (default), 'ES5', or 'ES2015' (experimental)": { "category": "Message", "code": 6015 diff --git a/src/compiler/emitter.ts b/src/compiler/emitter.ts index db3d63050fd..b4d2e02e4f0 100644 --- a/src/compiler/emitter.ts +++ b/src/compiler/emitter.ts @@ -5571,9 +5571,31 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, Promi emitDecoratorsOfClass(node); } + if (!(node.flags & NodeFlags.Export)) { + return; + } // If this is an exported class, but not on the top level (i.e. on an internal // module), export it - if (!isES6ExportedDeclaration(node) && (node.flags & NodeFlags.Export)) { + if (node.flags & NodeFlags.Default) { + // if this is a top level default export of decorated class, write the export after the declaration. + writeLine(); + if (thisNodeIsDecorated && modulekind === ModuleKind.ES6) { + write("export default "); + emitDeclarationName(node); + write(";"); + } + else if (modulekind === ModuleKind.System) { + write(`${exportFunctionForFile}("default", `); + emitDeclarationName(node); + write(");"); + } + else if (modulekind !== ModuleKind.ES6) { + write(`exports.default = `); + emitDeclarationName(node); + write(";"); + } + } + else if (node.parent.kind !== SyntaxKind.SourceFile || (modulekind !== ModuleKind.ES6 && !(node.flags & NodeFlags.Default))) { writeLine(); emitStart(node); emitModuleMemberName(node); @@ -5582,13 +5604,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, Promi emitEnd(node); write(";"); } - else if (isES6ExportedDeclaration(node) && (node.flags & NodeFlags.Default) && thisNodeIsDecorated) { - // if this is a top level default export of decorated class, write the export after the declaration. - writeLine(); - write("export default "); - emitDeclarationName(node); - write(";"); - } } function emitClassLikeDeclarationBelowES6(node: ClassLikeDeclaration) { @@ -6795,7 +6810,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, Promi } } - function getExternalModuleNameText(importNode: ImportDeclaration | ExportDeclaration | ImportEqualsDeclaration): string { + function getExternalModuleNameText(importNode: ImportDeclaration | ExportDeclaration | ImportEqualsDeclaration, emitRelativePathAsModuleName: boolean): string { + if (emitRelativePathAsModuleName) { + const name = getExternalModuleNameFromDeclaration(host, resolver, importNode); + if (name) { + return `"${name}"`; + } + } const moduleName = getExternalModuleName(importNode); if (moduleName.kind === SyntaxKind.StringLiteral) { return tryRenameExternalModule(moduleName) || getLiteralText(moduleName); @@ -7355,7 +7376,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, Promi const dependencyGroups: DependencyGroup[] = []; for (let i = 0; i < externalImports.length; ++i) { - let text = getExternalModuleNameText(externalImports[i]); + const text = getExternalModuleNameText(externalImports[i], emitRelativePathAsModuleName); if (hasProperty(groupIndices, text)) { // deduplicate/group entries in dependency list by the dependency name const groupIndex = groupIndices[text]; @@ -7371,12 +7392,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, Promi write(", "); } - if (emitRelativePathAsModuleName) { - const name = getExternalModuleNameFromDeclaration(host, resolver, externalImports[i]); - if (name) { - text = `"${name}"`; - } - } write(text); } write(`], function(${exportFunctionForFile}) {`); @@ -7419,14 +7434,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, Promi for (const importNode of externalImports) { // Find the name of the external module - let externalModuleName = getExternalModuleNameText(importNode); - - if (emitRelativePathAsModuleName) { - const name = getExternalModuleNameFromDeclaration(host, resolver, importNode); - if (name) { - externalModuleName = `"${name}"`; - } - } + const externalModuleName = getExternalModuleNameText(importNode, emitRelativePathAsModuleName); // Find the name of the module alias, if there is one const importAliasName = getLocalNameForExternalImport(importNode); diff --git a/src/compiler/program.ts b/src/compiler/program.ts index 50c6b05963d..a190ea0aa27 100644 --- a/src/compiler/program.ts +++ b/src/compiler/program.ts @@ -764,7 +764,7 @@ namespace ts { getTypeChecker, getClassifiableNames, getDiagnosticsProducingTypeChecker, - getCommonSourceDirectory: () => commonSourceDirectory, + getCommonSourceDirectory, emit, getCurrentDirectory: () => currentDirectory, getNodeCount: () => getDiagnosticsProducingTypeChecker().getNodeCount(), @@ -780,6 +780,25 @@ namespace ts { return program; + function getCommonSourceDirectory() { + if (typeof commonSourceDirectory === "undefined") { + if (options.rootDir && checkSourceFilesBelongToPath(files, options.rootDir)) { + // If a rootDir is specified and is valid use it as the commonSourceDirectory + commonSourceDirectory = getNormalizedAbsolutePath(options.rootDir, currentDirectory); + } + else { + commonSourceDirectory = computeCommonSourceDirectory(files); + } + if (commonSourceDirectory && commonSourceDirectory[commonSourceDirectory.length - 1] !== directorySeparator) { + // Make sure directory path ends with directory separator so this string can directly + // used to replace with "" to get the relative path of the source file and the relative path doesn't + // start with / making it rooted path + commonSourceDirectory += directorySeparator; + } + } + return commonSourceDirectory; + } + function getClassifiableNames() { if (!classifiableNames) { // Initialize a checker so that all our files are bound. @@ -1644,24 +1663,12 @@ namespace ts { options.sourceRoot || // there is --sourceRoot specified options.mapRoot) { // there is --mapRoot specified - if (options.rootDir && checkSourceFilesBelongToPath(files, options.rootDir)) { - // If a rootDir is specified and is valid use it as the commonSourceDirectory - commonSourceDirectory = getNormalizedAbsolutePath(options.rootDir, currentDirectory); - } - else { - // Compute the commonSourceDirectory from the input files - commonSourceDirectory = computeCommonSourceDirectory(files); - // If we failed to find a good common directory, but outDir is specified and at least one of our files is on a windows drive/URL/other resource, add a failure - if (options.outDir && commonSourceDirectory === "" && forEach(files, file => getRootLength(file.fileName) > 1)) { - programDiagnostics.add(createCompilerDiagnostic(Diagnostics.Cannot_find_the_common_subdirectory_path_for_the_input_files)); - } - } + // Precalculate and cache the common source directory + const dir = getCommonSourceDirectory(); - if (commonSourceDirectory && commonSourceDirectory[commonSourceDirectory.length - 1] !== directorySeparator) { - // Make sure directory path ends with directory separator so this string can directly - // used to replace with "" to get the relative path of the source file and the relative path doesn't - // start with / making it rooted path - commonSourceDirectory += directorySeparator; + // If we failed to find a good common directory, but outDir is specified and at least one of our files is on a windows drive/URL/other resource, add a failure + if (options.outDir && dir === "" && forEach(files, file => getRootLength(file.fileName) > 1)) { + programDiagnostics.add(createCompilerDiagnostic(Diagnostics.Cannot_find_the_common_subdirectory_path_for_the_input_files)); } } diff --git a/src/compiler/types.ts b/src/compiler/types.ts index a7a0746e14e..acc1a6ea02f 100644 --- a/src/compiler/types.ts +++ b/src/compiler/types.ts @@ -2381,6 +2381,7 @@ namespace ts { paths?: PathSubstitutions; rootDirs?: RootPaths; traceModuleResolution?: boolean; + allowSyntheticDefaultImports?: boolean; allowJs?: boolean; /* @internal */ stripInternal?: boolean; diff --git a/src/compiler/utilities.ts b/src/compiler/utilities.ts index abef7706aa1..66daf4cf311 100644 --- a/src/compiler/utilities.ts +++ b/src/compiler/utilities.ts @@ -1906,7 +1906,7 @@ namespace ts { * Resolves a local path to a path which is absolute to the base of the emit */ export function getExternalModuleNameFromPath(host: EmitHost, fileName: string): string { - const dir = host.getCurrentDirectory(); + const dir = toPath(host.getCommonSourceDirectory(), host.getCurrentDirectory(), f => host.getCanonicalFileName(f)); const relativePath = getRelativePathToDirectoryOrUrl(dir, fileName, dir, f => host.getCanonicalFileName(f), /*isAbsolutePathAnUrl*/ false); return removeFileExtension(relativePath); } diff --git a/tests/baselines/reference/allowSyntheticDefaultImports1.js b/tests/baselines/reference/allowSyntheticDefaultImports1.js new file mode 100644 index 00000000000..699880f930c --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports1.js @@ -0,0 +1,24 @@ +//// [tests/cases/compiler/allowSyntheticDefaultImports1.ts] //// + +//// [a.ts] +import Namespace from "./b"; +export var x = new Namespace.Foo(); + +//// [b.ts] +export class Foo { + member: string; +} + + +//// [b.js] +"use strict"; +var Foo = (function () { + function Foo() { + } + return Foo; +})(); +exports.Foo = Foo; +//// [a.js] +"use strict"; +var b_1 = require("./b"); +exports.x = new b_1["default"].Foo(); diff --git a/tests/baselines/reference/allowSyntheticDefaultImports1.symbols b/tests/baselines/reference/allowSyntheticDefaultImports1.symbols new file mode 100644 index 00000000000..d88a79e1bf2 --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports1.symbols @@ -0,0 +1,18 @@ +=== tests/cases/compiler/a.ts === +import Namespace from "./b"; +>Namespace : Symbol(Namespace, Decl(a.ts, 0, 6)) + +export var x = new Namespace.Foo(); +>x : Symbol(x, Decl(a.ts, 1, 10)) +>Namespace.Foo : Symbol(Namespace.Foo, Decl(b.ts, 0, 0)) +>Namespace : Symbol(Namespace, Decl(a.ts, 0, 6)) +>Foo : Symbol(Namespace.Foo, Decl(b.ts, 0, 0)) + +=== tests/cases/compiler/b.ts === +export class Foo { +>Foo : Symbol(Foo, Decl(b.ts, 0, 0)) + + member: string; +>member : Symbol(member, Decl(b.ts, 0, 18)) +} + diff --git a/tests/baselines/reference/allowSyntheticDefaultImports1.types b/tests/baselines/reference/allowSyntheticDefaultImports1.types new file mode 100644 index 00000000000..c2265d7611b --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports1.types @@ -0,0 +1,19 @@ +=== tests/cases/compiler/a.ts === +import Namespace from "./b"; +>Namespace : typeof Namespace + +export var x = new Namespace.Foo(); +>x : Namespace.Foo +>new Namespace.Foo() : Namespace.Foo +>Namespace.Foo : typeof Namespace.Foo +>Namespace : typeof Namespace +>Foo : typeof Namespace.Foo + +=== tests/cases/compiler/b.ts === +export class Foo { +>Foo : Foo + + member: string; +>member : string +} + diff --git a/tests/baselines/reference/allowSyntheticDefaultImports2.js b/tests/baselines/reference/allowSyntheticDefaultImports2.js new file mode 100644 index 00000000000..d21750c65fc --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports2.js @@ -0,0 +1,42 @@ +//// [tests/cases/compiler/allowSyntheticDefaultImports2.ts] //// + +//// [a.ts] +import Namespace from "./b"; +export var x = new Namespace.Foo(); + +//// [b.ts] +export class Foo { + member: string; +} + +//// [b.js] +System.register([], function(exports_1) { + "use strict"; + var Foo; + return { + setters:[], + execute: function() { + Foo = (function () { + function Foo() { + } + return Foo; + })(); + exports_1("Foo", Foo); + } + } +}); +//// [a.js] +System.register(["./b"], function(exports_1) { + "use strict"; + var b_1; + var x; + return { + setters:[ + function (b_1_1) { + b_1 = b_1_1; + }], + execute: function() { + exports_1("x", x = new b_1["default"].Foo()); + } + } +}); diff --git a/tests/baselines/reference/allowSyntheticDefaultImports2.symbols b/tests/baselines/reference/allowSyntheticDefaultImports2.symbols new file mode 100644 index 00000000000..cea6145fbd6 --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports2.symbols @@ -0,0 +1,17 @@ +=== tests/cases/compiler/a.ts === +import Namespace from "./b"; +>Namespace : Symbol(Namespace, Decl(a.ts, 0, 6)) + +export var x = new Namespace.Foo(); +>x : Symbol(x, Decl(a.ts, 1, 10)) +>Namespace.Foo : Symbol(Namespace.Foo, Decl(b.ts, 0, 0)) +>Namespace : Symbol(Namespace, Decl(a.ts, 0, 6)) +>Foo : Symbol(Namespace.Foo, Decl(b.ts, 0, 0)) + +=== tests/cases/compiler/b.ts === +export class Foo { +>Foo : Symbol(Foo, Decl(b.ts, 0, 0)) + + member: string; +>member : Symbol(member, Decl(b.ts, 0, 18)) +} diff --git a/tests/baselines/reference/allowSyntheticDefaultImports2.types b/tests/baselines/reference/allowSyntheticDefaultImports2.types new file mode 100644 index 00000000000..c40fbc7e988 --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports2.types @@ -0,0 +1,18 @@ +=== tests/cases/compiler/a.ts === +import Namespace from "./b"; +>Namespace : typeof Namespace + +export var x = new Namespace.Foo(); +>x : Namespace.Foo +>new Namespace.Foo() : Namespace.Foo +>Namespace.Foo : typeof Namespace.Foo +>Namespace : typeof Namespace +>Foo : typeof Namespace.Foo + +=== tests/cases/compiler/b.ts === +export class Foo { +>Foo : Foo + + member: string; +>member : string +} diff --git a/tests/baselines/reference/allowSyntheticDefaultImports3.errors.txt b/tests/baselines/reference/allowSyntheticDefaultImports3.errors.txt new file mode 100644 index 00000000000..551355e5cce --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports3.errors.txt @@ -0,0 +1,14 @@ +tests/cases/compiler/a.ts(1,8): error TS1192: Module '"tests/cases/compiler/b"' has no default export. + + +==== tests/cases/compiler/a.ts (1 errors) ==== + import Namespace from "./b"; + ~~~~~~~~~ +!!! error TS1192: Module '"tests/cases/compiler/b"' has no default export. + export var x = new Namespace.Foo(); + +==== tests/cases/compiler/b.ts (0 errors) ==== + export class Foo { + member: string; + } + \ No newline at end of file diff --git a/tests/baselines/reference/allowSyntheticDefaultImports3.js b/tests/baselines/reference/allowSyntheticDefaultImports3.js new file mode 100644 index 00000000000..8864a28e796 --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports3.js @@ -0,0 +1,43 @@ +//// [tests/cases/compiler/allowSyntheticDefaultImports3.ts] //// + +//// [a.ts] +import Namespace from "./b"; +export var x = new Namespace.Foo(); + +//// [b.ts] +export class Foo { + member: string; +} + + +//// [b.js] +System.register([], function(exports_1) { + "use strict"; + var Foo; + return { + setters:[], + execute: function() { + Foo = (function () { + function Foo() { + } + return Foo; + })(); + exports_1("Foo", Foo); + } + } +}); +//// [a.js] +System.register(["./b"], function(exports_1) { + "use strict"; + var b_1; + var x; + return { + setters:[ + function (b_1_1) { + b_1 = b_1_1; + }], + execute: function() { + exports_1("x", x = new b_1["default"].Foo()); + } + } +}); diff --git a/tests/baselines/reference/allowSyntheticDefaultImports4.js b/tests/baselines/reference/allowSyntheticDefaultImports4.js new file mode 100644 index 00000000000..747f59dc904 --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports4.js @@ -0,0 +1,17 @@ +//// [tests/cases/compiler/allowSyntheticDefaultImports4.ts] //// + +//// [b.d.ts] +declare class Foo { + member: string; +} +export = Foo; + +//// [a.ts] +import Foo from "./b"; +export var x = new Foo(); + + +//// [a.js] +"use strict"; +var b_1 = require("./b"); +exports.x = new b_1["default"](); diff --git a/tests/baselines/reference/allowSyntheticDefaultImports4.symbols b/tests/baselines/reference/allowSyntheticDefaultImports4.symbols new file mode 100644 index 00000000000..8edad006c2d --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports4.symbols @@ -0,0 +1,18 @@ +=== tests/cases/compiler/b.d.ts === +declare class Foo { +>Foo : Symbol(Foo, Decl(b.d.ts, 0, 0)) + + member: string; +>member : Symbol(member, Decl(b.d.ts, 0, 19)) +} +export = Foo; +>Foo : Symbol(Foo, Decl(b.d.ts, 0, 0)) + +=== tests/cases/compiler/a.ts === +import Foo from "./b"; +>Foo : Symbol(Foo, Decl(a.ts, 0, 6)) + +export var x = new Foo(); +>x : Symbol(x, Decl(a.ts, 1, 10)) +>Foo : Symbol(Foo, Decl(a.ts, 0, 6)) + diff --git a/tests/baselines/reference/allowSyntheticDefaultImports4.types b/tests/baselines/reference/allowSyntheticDefaultImports4.types new file mode 100644 index 00000000000..5922abeb43f --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports4.types @@ -0,0 +1,19 @@ +=== tests/cases/compiler/b.d.ts === +declare class Foo { +>Foo : Foo + + member: string; +>member : string +} +export = Foo; +>Foo : Foo + +=== tests/cases/compiler/a.ts === +import Foo from "./b"; +>Foo : typeof Foo + +export var x = new Foo(); +>x : Foo +>new Foo() : Foo +>Foo : typeof Foo + diff --git a/tests/baselines/reference/allowSyntheticDefaultImports5.js b/tests/baselines/reference/allowSyntheticDefaultImports5.js new file mode 100644 index 00000000000..c9121512b61 --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports5.js @@ -0,0 +1,28 @@ +//// [tests/cases/compiler/allowSyntheticDefaultImports5.ts] //// + +//// [b.d.ts] +declare class Foo { + member: string; +} +export = Foo; + +//// [a.ts] +import Foo from "./b"; +export var x = new Foo(); + + +//// [a.js] +System.register(["./b"], function(exports_1) { + "use strict"; + var b_1; + var x; + return { + setters:[ + function (b_1_1) { + b_1 = b_1_1; + }], + execute: function() { + exports_1("x", x = new b_1["default"]()); + } + } +}); diff --git a/tests/baselines/reference/allowSyntheticDefaultImports5.symbols b/tests/baselines/reference/allowSyntheticDefaultImports5.symbols new file mode 100644 index 00000000000..8edad006c2d --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports5.symbols @@ -0,0 +1,18 @@ +=== tests/cases/compiler/b.d.ts === +declare class Foo { +>Foo : Symbol(Foo, Decl(b.d.ts, 0, 0)) + + member: string; +>member : Symbol(member, Decl(b.d.ts, 0, 19)) +} +export = Foo; +>Foo : Symbol(Foo, Decl(b.d.ts, 0, 0)) + +=== tests/cases/compiler/a.ts === +import Foo from "./b"; +>Foo : Symbol(Foo, Decl(a.ts, 0, 6)) + +export var x = new Foo(); +>x : Symbol(x, Decl(a.ts, 1, 10)) +>Foo : Symbol(Foo, Decl(a.ts, 0, 6)) + diff --git a/tests/baselines/reference/allowSyntheticDefaultImports5.types b/tests/baselines/reference/allowSyntheticDefaultImports5.types new file mode 100644 index 00000000000..5922abeb43f --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports5.types @@ -0,0 +1,19 @@ +=== tests/cases/compiler/b.d.ts === +declare class Foo { +>Foo : Foo + + member: string; +>member : string +} +export = Foo; +>Foo : Foo + +=== tests/cases/compiler/a.ts === +import Foo from "./b"; +>Foo : typeof Foo + +export var x = new Foo(); +>x : Foo +>new Foo() : Foo +>Foo : typeof Foo + diff --git a/tests/baselines/reference/allowSyntheticDefaultImports6.errors.txt b/tests/baselines/reference/allowSyntheticDefaultImports6.errors.txt new file mode 100644 index 00000000000..80b9cf8d074 --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports6.errors.txt @@ -0,0 +1,15 @@ +tests/cases/compiler/a.ts(1,8): error TS1192: Module '"tests/cases/compiler/b"' has no default export. + + +==== tests/cases/compiler/b.d.ts (0 errors) ==== + declare class Foo { + member: string; + } + export = Foo; + +==== tests/cases/compiler/a.ts (1 errors) ==== + import Foo from "./b"; + ~~~ +!!! error TS1192: Module '"tests/cases/compiler/b"' has no default export. + export var x = new Foo(); + \ No newline at end of file diff --git a/tests/baselines/reference/allowSyntheticDefaultImports6.js b/tests/baselines/reference/allowSyntheticDefaultImports6.js new file mode 100644 index 00000000000..64d52e70af9 --- /dev/null +++ b/tests/baselines/reference/allowSyntheticDefaultImports6.js @@ -0,0 +1,28 @@ +//// [tests/cases/compiler/allowSyntheticDefaultImports6.ts] //// + +//// [b.d.ts] +declare class Foo { + member: string; +} +export = Foo; + +//// [a.ts] +import Foo from "./b"; +export var x = new Foo(); + + +//// [a.js] +System.register(["./b"], function(exports_1) { + "use strict"; + var b_1; + var x; + return { + setters:[ + function (b_1_1) { + b_1 = b_1_1; + }], + execute: function() { + exports_1("x", x = new b_1["default"]()); + } + } +}); diff --git a/tests/baselines/reference/commonSourceDir5.js b/tests/baselines/reference/commonSourceDir5.js new file mode 100644 index 00000000000..7a43aba254e --- /dev/null +++ b/tests/baselines/reference/commonSourceDir5.js @@ -0,0 +1,32 @@ +//// [tests/cases/compiler/commonSourceDir5.ts] //// + +//// [bar.ts] +import {z} from "./foo"; +export var x = z + z; + +//// [foo.ts] +import {pi} from "B:/baz"; +export var i = Math.sqrt(-1); +export var z = pi * pi; + +//// [baz.ts] +import {x} from "A:/bar"; +import {i} from "A:/foo"; +export var pi = Math.PI; +export var y = x * i; + +//// [concat.js] +define("B:/baz", ["require", "exports", "A:/bar", "A:/foo"], function (require, exports, bar_1, foo_1) { + "use strict"; + exports.pi = Math.PI; + exports.y = bar_1.x * foo_1.i; +}); +define("A:/foo", ["require", "exports", "B:/baz"], function (require, exports, baz_1) { + "use strict"; + exports.i = Math.sqrt(-1); + exports.z = baz_1.pi * baz_1.pi; +}); +define("A:/bar", ["require", "exports", "A:/foo"], function (require, exports, foo_2) { + "use strict"; + exports.x = foo_2.z + foo_2.z; +}); diff --git a/tests/baselines/reference/commonSourceDir5.symbols b/tests/baselines/reference/commonSourceDir5.symbols new file mode 100644 index 00000000000..6426ac39de3 --- /dev/null +++ b/tests/baselines/reference/commonSourceDir5.symbols @@ -0,0 +1,42 @@ +=== A:/bar.ts === +import {z} from "./foo"; +>z : Symbol(z, Decl(bar.ts, 0, 8)) + +export var x = z + z; +>x : Symbol(x, Decl(bar.ts, 1, 10)) +>z : Symbol(z, Decl(bar.ts, 0, 8)) +>z : Symbol(z, Decl(bar.ts, 0, 8)) + +=== A:/foo.ts === +import {pi} from "B:/baz"; +>pi : Symbol(pi, Decl(foo.ts, 0, 8)) + +export var i = Math.sqrt(-1); +>i : Symbol(i, Decl(foo.ts, 1, 10)) +>Math.sqrt : Symbol(Math.sqrt, Decl(lib.d.ts, --, --)) +>Math : Symbol(Math, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --)) +>sqrt : Symbol(Math.sqrt, Decl(lib.d.ts, --, --)) + +export var z = pi * pi; +>z : Symbol(z, Decl(foo.ts, 2, 10)) +>pi : Symbol(pi, Decl(foo.ts, 0, 8)) +>pi : Symbol(pi, Decl(foo.ts, 0, 8)) + +=== B:/baz.ts === +import {x} from "A:/bar"; +>x : Symbol(x, Decl(baz.ts, 0, 8)) + +import {i} from "A:/foo"; +>i : Symbol(i, Decl(baz.ts, 1, 8)) + +export var pi = Math.PI; +>pi : Symbol(pi, Decl(baz.ts, 2, 10)) +>Math.PI : Symbol(Math.PI, Decl(lib.d.ts, --, --)) +>Math : Symbol(Math, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --)) +>PI : Symbol(Math.PI, Decl(lib.d.ts, --, --)) + +export var y = x * i; +>y : Symbol(y, Decl(baz.ts, 3, 10)) +>x : Symbol(x, Decl(baz.ts, 0, 8)) +>i : Symbol(i, Decl(baz.ts, 1, 8)) + diff --git a/tests/baselines/reference/commonSourceDir5.types b/tests/baselines/reference/commonSourceDir5.types new file mode 100644 index 00000000000..ff13bb20215 --- /dev/null +++ b/tests/baselines/reference/commonSourceDir5.types @@ -0,0 +1,48 @@ +=== A:/bar.ts === +import {z} from "./foo"; +>z : number + +export var x = z + z; +>x : number +>z + z : number +>z : number +>z : number + +=== A:/foo.ts === +import {pi} from "B:/baz"; +>pi : number + +export var i = Math.sqrt(-1); +>i : number +>Math.sqrt(-1) : number +>Math.sqrt : (x: number) => number +>Math : Math +>sqrt : (x: number) => number +>-1 : number +>1 : number + +export var z = pi * pi; +>z : number +>pi * pi : number +>pi : number +>pi : number + +=== B:/baz.ts === +import {x} from "A:/bar"; +>x : number + +import {i} from "A:/foo"; +>i : number + +export var pi = Math.PI; +>pi : number +>Math.PI : number +>Math : Math +>PI : number + +export var y = x * i; +>y : number +>x * i : number +>x : number +>i : number + diff --git a/tests/baselines/reference/commonSourceDir6.js b/tests/baselines/reference/commonSourceDir6.js new file mode 100644 index 00000000000..6fe0b4a1b8f --- /dev/null +++ b/tests/baselines/reference/commonSourceDir6.js @@ -0,0 +1,32 @@ +//// [tests/cases/compiler/commonSourceDir6.ts] //// + +//// [bar.ts] +import {z} from "./foo"; +export var x = z + z; + +//// [foo.ts] +import {pi} from "../baz"; +export var i = Math.sqrt(-1); +export var z = pi * pi; + +//// [baz.ts] +import {x} from "a/bar"; +import {i} from "a/foo"; +export var pi = Math.PI; +export var y = x * i; + +//// [concat.js] +define("tests/cases/compiler/baz", ["require", "exports", "tests/cases/compiler/a/bar", "tests/cases/compiler/a/foo"], function (require, exports, bar_1, foo_1) { + "use strict"; + exports.pi = Math.PI; + exports.y = bar_1.x * foo_1.i; +}); +define("tests/cases/compiler/a/foo", ["require", "exports", "tests/cases/compiler/baz"], function (require, exports, baz_1) { + "use strict"; + exports.i = Math.sqrt(-1); + exports.z = baz_1.pi * baz_1.pi; +}); +define("tests/cases/compiler/a/bar", ["require", "exports", "tests/cases/compiler/a/foo"], function (require, exports, foo_2) { + "use strict"; + exports.x = foo_2.z + foo_2.z; +}); diff --git a/tests/baselines/reference/commonSourceDir6.symbols b/tests/baselines/reference/commonSourceDir6.symbols new file mode 100644 index 00000000000..e9d5edb28b2 --- /dev/null +++ b/tests/baselines/reference/commonSourceDir6.symbols @@ -0,0 +1,42 @@ +=== tests/cases/compiler/a/bar.ts === +import {z} from "./foo"; +>z : Symbol(z, Decl(bar.ts, 0, 8)) + +export var x = z + z; +>x : Symbol(x, Decl(bar.ts, 1, 10)) +>z : Symbol(z, Decl(bar.ts, 0, 8)) +>z : Symbol(z, Decl(bar.ts, 0, 8)) + +=== tests/cases/compiler/a/foo.ts === +import {pi} from "../baz"; +>pi : Symbol(pi, Decl(foo.ts, 0, 8)) + +export var i = Math.sqrt(-1); +>i : Symbol(i, Decl(foo.ts, 1, 10)) +>Math.sqrt : Symbol(Math.sqrt, Decl(lib.d.ts, --, --)) +>Math : Symbol(Math, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --)) +>sqrt : Symbol(Math.sqrt, Decl(lib.d.ts, --, --)) + +export var z = pi * pi; +>z : Symbol(z, Decl(foo.ts, 2, 10)) +>pi : Symbol(pi, Decl(foo.ts, 0, 8)) +>pi : Symbol(pi, Decl(foo.ts, 0, 8)) + +=== tests/cases/compiler/baz.ts === +import {x} from "a/bar"; +>x : Symbol(x, Decl(baz.ts, 0, 8)) + +import {i} from "a/foo"; +>i : Symbol(i, Decl(baz.ts, 1, 8)) + +export var pi = Math.PI; +>pi : Symbol(pi, Decl(baz.ts, 2, 10)) +>Math.PI : Symbol(Math.PI, Decl(lib.d.ts, --, --)) +>Math : Symbol(Math, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --)) +>PI : Symbol(Math.PI, Decl(lib.d.ts, --, --)) + +export var y = x * i; +>y : Symbol(y, Decl(baz.ts, 3, 10)) +>x : Symbol(x, Decl(baz.ts, 0, 8)) +>i : Symbol(i, Decl(baz.ts, 1, 8)) + diff --git a/tests/baselines/reference/commonSourceDir6.types b/tests/baselines/reference/commonSourceDir6.types new file mode 100644 index 00000000000..e30cdd2deee --- /dev/null +++ b/tests/baselines/reference/commonSourceDir6.types @@ -0,0 +1,48 @@ +=== tests/cases/compiler/a/bar.ts === +import {z} from "./foo"; +>z : number + +export var x = z + z; +>x : number +>z + z : number +>z : number +>z : number + +=== tests/cases/compiler/a/foo.ts === +import {pi} from "../baz"; +>pi : number + +export var i = Math.sqrt(-1); +>i : number +>Math.sqrt(-1) : number +>Math.sqrt : (x: number) => number +>Math : Math +>sqrt : (x: number) => number +>-1 : number +>1 : number + +export var z = pi * pi; +>z : number +>pi * pi : number +>pi : number +>pi : number + +=== tests/cases/compiler/baz.ts === +import {x} from "a/bar"; +>x : number + +import {i} from "a/foo"; +>i : number + +export var pi = Math.PI; +>pi : number +>Math.PI : number +>Math : Math +>PI : number + +export var y = x * i; +>y : number +>x * i : number +>x : number +>i : number + diff --git a/tests/baselines/reference/decoratedDefaultExportsGetExportedAmd.js b/tests/baselines/reference/decoratedDefaultExportsGetExportedAmd.js new file mode 100644 index 00000000000..3fb23375f02 --- /dev/null +++ b/tests/baselines/reference/decoratedDefaultExportsGetExportedAmd.js @@ -0,0 +1,25 @@ +//// [decoratedDefaultExportsGetExportedAmd.ts] + +var decorator: ClassDecorator; + +@decorator +export default class Foo {} + + +//// [decoratedDefaultExportsGetExportedAmd.js] +var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); + else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; +}; +define(["require", "exports"], function (require, exports) { + "use strict"; + var decorator; + let Foo = class { + }; + Foo = __decorate([ + decorator + ], Foo); + exports.default = Foo; +}); diff --git a/tests/baselines/reference/decoratedDefaultExportsGetExportedAmd.symbols b/tests/baselines/reference/decoratedDefaultExportsGetExportedAmd.symbols new file mode 100644 index 00000000000..d8ff6716c38 --- /dev/null +++ b/tests/baselines/reference/decoratedDefaultExportsGetExportedAmd.symbols @@ -0,0 +1,12 @@ +=== tests/cases/conformance/es6/moduleExportsAmd/decoratedDefaultExportsGetExportedAmd.ts === + +var decorator: ClassDecorator; +>decorator : Symbol(decorator, Decl(decoratedDefaultExportsGetExportedAmd.ts, 1, 3)) +>ClassDecorator : Symbol(ClassDecorator, Decl(lib.d.ts, --, --)) + +@decorator +>decorator : Symbol(decorator, Decl(decoratedDefaultExportsGetExportedAmd.ts, 1, 3)) + +export default class Foo {} +>Foo : Symbol(Foo, Decl(decoratedDefaultExportsGetExportedAmd.ts, 1, 30)) + diff --git a/tests/baselines/reference/decoratedDefaultExportsGetExportedAmd.types b/tests/baselines/reference/decoratedDefaultExportsGetExportedAmd.types new file mode 100644 index 00000000000..89df83ce76d --- /dev/null +++ b/tests/baselines/reference/decoratedDefaultExportsGetExportedAmd.types @@ -0,0 +1,12 @@ +=== tests/cases/conformance/es6/moduleExportsAmd/decoratedDefaultExportsGetExportedAmd.ts === + +var decorator: ClassDecorator; +>decorator : (target: TFunction) => TFunction | void +>ClassDecorator : (target: TFunction) => TFunction | void + +@decorator +>decorator : (target: TFunction) => TFunction | void + +export default class Foo {} +>Foo : Foo + diff --git a/tests/baselines/reference/decoratedDefaultExportsGetExportedCommonjs.js b/tests/baselines/reference/decoratedDefaultExportsGetExportedCommonjs.js new file mode 100644 index 00000000000..32acfbbea39 --- /dev/null +++ b/tests/baselines/reference/decoratedDefaultExportsGetExportedCommonjs.js @@ -0,0 +1,23 @@ +//// [decoratedDefaultExportsGetExportedCommonjs.ts] + +var decorator: ClassDecorator; + +@decorator +export default class Foo {} + + +//// [decoratedDefaultExportsGetExportedCommonjs.js] +"use strict"; +var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); + else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; +}; +var decorator; +let Foo = class { +}; +Foo = __decorate([ + decorator +], Foo); +exports.default = Foo; diff --git a/tests/baselines/reference/decoratedDefaultExportsGetExportedCommonjs.symbols b/tests/baselines/reference/decoratedDefaultExportsGetExportedCommonjs.symbols new file mode 100644 index 00000000000..35131c1244e --- /dev/null +++ b/tests/baselines/reference/decoratedDefaultExportsGetExportedCommonjs.symbols @@ -0,0 +1,12 @@ +=== tests/cases/conformance/es6/moduleExportsCommonjs/decoratedDefaultExportsGetExportedCommonjs.ts === + +var decorator: ClassDecorator; +>decorator : Symbol(decorator, Decl(decoratedDefaultExportsGetExportedCommonjs.ts, 1, 3)) +>ClassDecorator : Symbol(ClassDecorator, Decl(lib.d.ts, --, --)) + +@decorator +>decorator : Symbol(decorator, Decl(decoratedDefaultExportsGetExportedCommonjs.ts, 1, 3)) + +export default class Foo {} +>Foo : Symbol(Foo, Decl(decoratedDefaultExportsGetExportedCommonjs.ts, 1, 30)) + diff --git a/tests/baselines/reference/decoratedDefaultExportsGetExportedCommonjs.types b/tests/baselines/reference/decoratedDefaultExportsGetExportedCommonjs.types new file mode 100644 index 00000000000..56c8926342a --- /dev/null +++ b/tests/baselines/reference/decoratedDefaultExportsGetExportedCommonjs.types @@ -0,0 +1,12 @@ +=== tests/cases/conformance/es6/moduleExportsCommonjs/decoratedDefaultExportsGetExportedCommonjs.ts === + +var decorator: ClassDecorator; +>decorator : (target: TFunction) => TFunction | void +>ClassDecorator : (target: TFunction) => TFunction | void + +@decorator +>decorator : (target: TFunction) => TFunction | void + +export default class Foo {} +>Foo : Foo + diff --git a/tests/baselines/reference/decoratedDefaultExportsGetExportedSystem.js b/tests/baselines/reference/decoratedDefaultExportsGetExportedSystem.js new file mode 100644 index 00000000000..a2b22e4ccdb --- /dev/null +++ b/tests/baselines/reference/decoratedDefaultExportsGetExportedSystem.js @@ -0,0 +1,30 @@ +//// [decoratedDefaultExportsGetExportedSystem.ts] + +var decorator: ClassDecorator; + +@decorator +export default class Foo {} + + +//// [decoratedDefaultExportsGetExportedSystem.js] +System.register([], function(exports_1) { + "use strict"; + var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); + else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; + }; + var decorator, Foo; + return { + setters:[], + execute: function() { + let Foo = class { + }; + Foo = __decorate([ + decorator + ], Foo); + exports_1("default", Foo); + } + } +}); diff --git a/tests/baselines/reference/decoratedDefaultExportsGetExportedSystem.symbols b/tests/baselines/reference/decoratedDefaultExportsGetExportedSystem.symbols new file mode 100644 index 00000000000..106ea3cacd8 --- /dev/null +++ b/tests/baselines/reference/decoratedDefaultExportsGetExportedSystem.symbols @@ -0,0 +1,12 @@ +=== tests/cases/conformance/es6/moduleExportsSystem/decoratedDefaultExportsGetExportedSystem.ts === + +var decorator: ClassDecorator; +>decorator : Symbol(decorator, Decl(decoratedDefaultExportsGetExportedSystem.ts, 1, 3)) +>ClassDecorator : Symbol(ClassDecorator, Decl(lib.d.ts, --, --)) + +@decorator +>decorator : Symbol(decorator, Decl(decoratedDefaultExportsGetExportedSystem.ts, 1, 3)) + +export default class Foo {} +>Foo : Symbol(Foo, Decl(decoratedDefaultExportsGetExportedSystem.ts, 1, 30)) + diff --git a/tests/baselines/reference/decoratedDefaultExportsGetExportedSystem.types b/tests/baselines/reference/decoratedDefaultExportsGetExportedSystem.types new file mode 100644 index 00000000000..c180f5fcf09 --- /dev/null +++ b/tests/baselines/reference/decoratedDefaultExportsGetExportedSystem.types @@ -0,0 +1,12 @@ +=== tests/cases/conformance/es6/moduleExportsSystem/decoratedDefaultExportsGetExportedSystem.ts === + +var decorator: ClassDecorator; +>decorator : (target: TFunction) => TFunction | void +>ClassDecorator : (target: TFunction) => TFunction | void + +@decorator +>decorator : (target: TFunction) => TFunction | void + +export default class Foo {} +>Foo : Foo + diff --git a/tests/baselines/reference/decoratedDefaultExportsGetExportedUmd.js b/tests/baselines/reference/decoratedDefaultExportsGetExportedUmd.js new file mode 100644 index 00000000000..06cee476b57 --- /dev/null +++ b/tests/baselines/reference/decoratedDefaultExportsGetExportedUmd.js @@ -0,0 +1,32 @@ +//// [decoratedDefaultExportsGetExportedUmd.ts] + +var decorator: ClassDecorator; + +@decorator +export default class Foo {} + + +//// [decoratedDefaultExportsGetExportedUmd.js] +var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); + else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; + return c > 3 && r && Object.defineProperty(target, key, r), r; +}; +(function (factory) { + if (typeof module === 'object' && typeof module.exports === 'object') { + var v = factory(require, exports); if (v !== undefined) module.exports = v; + } + else if (typeof define === 'function' && define.amd) { + define(["require", "exports"], factory); + } +})(function (require, exports) { + "use strict"; + var decorator; + let Foo = class { + }; + Foo = __decorate([ + decorator + ], Foo); + exports.default = Foo; +}); diff --git a/tests/baselines/reference/decoratedDefaultExportsGetExportedUmd.symbols b/tests/baselines/reference/decoratedDefaultExportsGetExportedUmd.symbols new file mode 100644 index 00000000000..f4a8266cfa1 --- /dev/null +++ b/tests/baselines/reference/decoratedDefaultExportsGetExportedUmd.symbols @@ -0,0 +1,12 @@ +=== tests/cases/conformance/es6/moduleExportsUmd/decoratedDefaultExportsGetExportedUmd.ts === + +var decorator: ClassDecorator; +>decorator : Symbol(decorator, Decl(decoratedDefaultExportsGetExportedUmd.ts, 1, 3)) +>ClassDecorator : Symbol(ClassDecorator, Decl(lib.d.ts, --, --)) + +@decorator +>decorator : Symbol(decorator, Decl(decoratedDefaultExportsGetExportedUmd.ts, 1, 3)) + +export default class Foo {} +>Foo : Symbol(Foo, Decl(decoratedDefaultExportsGetExportedUmd.ts, 1, 30)) + diff --git a/tests/baselines/reference/decoratedDefaultExportsGetExportedUmd.types b/tests/baselines/reference/decoratedDefaultExportsGetExportedUmd.types new file mode 100644 index 00000000000..a258a600ba0 --- /dev/null +++ b/tests/baselines/reference/decoratedDefaultExportsGetExportedUmd.types @@ -0,0 +1,12 @@ +=== tests/cases/conformance/es6/moduleExportsUmd/decoratedDefaultExportsGetExportedUmd.ts === + +var decorator: ClassDecorator; +>decorator : (target: TFunction) => TFunction | void +>ClassDecorator : (target: TFunction) => TFunction | void + +@decorator +>decorator : (target: TFunction) => TFunction | void + +export default class Foo {} +>Foo : Foo + diff --git a/tests/baselines/reference/defaultExportsGetExportedAmd.js b/tests/baselines/reference/defaultExportsGetExportedAmd.js new file mode 100644 index 00000000000..b9387a2cc84 --- /dev/null +++ b/tests/baselines/reference/defaultExportsGetExportedAmd.js @@ -0,0 +1,11 @@ +//// [defaultExportsGetExportedAmd.ts] +export default class Foo {} + + +//// [defaultExportsGetExportedAmd.js] +define(["require", "exports"], function (require, exports) { + "use strict"; + class Foo { + } + exports.default = Foo; +}); diff --git a/tests/baselines/reference/defaultExportsGetExportedAmd.symbols b/tests/baselines/reference/defaultExportsGetExportedAmd.symbols new file mode 100644 index 00000000000..22376f91b08 --- /dev/null +++ b/tests/baselines/reference/defaultExportsGetExportedAmd.symbols @@ -0,0 +1,4 @@ +=== tests/cases/conformance/es6/moduleExportsAmd/defaultExportsGetExportedAmd.ts === +export default class Foo {} +>Foo : Symbol(Foo, Decl(defaultExportsGetExportedAmd.ts, 0, 0)) + diff --git a/tests/baselines/reference/defaultExportsGetExportedAmd.types b/tests/baselines/reference/defaultExportsGetExportedAmd.types new file mode 100644 index 00000000000..94e511dbef6 --- /dev/null +++ b/tests/baselines/reference/defaultExportsGetExportedAmd.types @@ -0,0 +1,4 @@ +=== tests/cases/conformance/es6/moduleExportsAmd/defaultExportsGetExportedAmd.ts === +export default class Foo {} +>Foo : Foo + diff --git a/tests/baselines/reference/defaultExportsGetExportedCommonjs.js b/tests/baselines/reference/defaultExportsGetExportedCommonjs.js new file mode 100644 index 00000000000..28301251efc --- /dev/null +++ b/tests/baselines/reference/defaultExportsGetExportedCommonjs.js @@ -0,0 +1,9 @@ +//// [defaultExportsGetExportedCommonjs.ts] +export default class Foo {} + + +//// [defaultExportsGetExportedCommonjs.js] +"use strict"; +class Foo { +} +exports.default = Foo; diff --git a/tests/baselines/reference/defaultExportsGetExportedCommonjs.symbols b/tests/baselines/reference/defaultExportsGetExportedCommonjs.symbols new file mode 100644 index 00000000000..a5be95f1787 --- /dev/null +++ b/tests/baselines/reference/defaultExportsGetExportedCommonjs.symbols @@ -0,0 +1,4 @@ +=== tests/cases/conformance/es6/moduleExportsCommonjs/defaultExportsGetExportedCommonjs.ts === +export default class Foo {} +>Foo : Symbol(Foo, Decl(defaultExportsGetExportedCommonjs.ts, 0, 0)) + diff --git a/tests/baselines/reference/defaultExportsGetExportedCommonjs.types b/tests/baselines/reference/defaultExportsGetExportedCommonjs.types new file mode 100644 index 00000000000..d7034ffa03d --- /dev/null +++ b/tests/baselines/reference/defaultExportsGetExportedCommonjs.types @@ -0,0 +1,4 @@ +=== tests/cases/conformance/es6/moduleExportsCommonjs/defaultExportsGetExportedCommonjs.ts === +export default class Foo {} +>Foo : Foo + diff --git a/tests/baselines/reference/defaultExportsGetExportedSystem.js b/tests/baselines/reference/defaultExportsGetExportedSystem.js new file mode 100644 index 00000000000..7d5c6ee2854 --- /dev/null +++ b/tests/baselines/reference/defaultExportsGetExportedSystem.js @@ -0,0 +1,17 @@ +//// [defaultExportsGetExportedSystem.ts] +export default class Foo {} + + +//// [defaultExportsGetExportedSystem.js] +System.register([], function(exports_1) { + "use strict"; + var Foo; + return { + setters:[], + execute: function() { + class Foo { + } + exports_1("default", Foo); + } + } +}); diff --git a/tests/baselines/reference/defaultExportsGetExportedSystem.symbols b/tests/baselines/reference/defaultExportsGetExportedSystem.symbols new file mode 100644 index 00000000000..9050833680e --- /dev/null +++ b/tests/baselines/reference/defaultExportsGetExportedSystem.symbols @@ -0,0 +1,4 @@ +=== tests/cases/conformance/es6/moduleExportsSystem/defaultExportsGetExportedSystem.ts === +export default class Foo {} +>Foo : Symbol(Foo, Decl(defaultExportsGetExportedSystem.ts, 0, 0)) + diff --git a/tests/baselines/reference/defaultExportsGetExportedSystem.types b/tests/baselines/reference/defaultExportsGetExportedSystem.types new file mode 100644 index 00000000000..d1439f0f99d --- /dev/null +++ b/tests/baselines/reference/defaultExportsGetExportedSystem.types @@ -0,0 +1,4 @@ +=== tests/cases/conformance/es6/moduleExportsSystem/defaultExportsGetExportedSystem.ts === +export default class Foo {} +>Foo : Foo + diff --git a/tests/baselines/reference/defaultExportsGetExportedUmd.js b/tests/baselines/reference/defaultExportsGetExportedUmd.js new file mode 100644 index 00000000000..902fc89c1d4 --- /dev/null +++ b/tests/baselines/reference/defaultExportsGetExportedUmd.js @@ -0,0 +1,18 @@ +//// [defaultExportsGetExportedUmd.ts] +export default class Foo {} + + +//// [defaultExportsGetExportedUmd.js] +(function (factory) { + if (typeof module === 'object' && typeof module.exports === 'object') { + var v = factory(require, exports); if (v !== undefined) module.exports = v; + } + else if (typeof define === 'function' && define.amd) { + define(["require", "exports"], factory); + } +})(function (require, exports) { + "use strict"; + class Foo { + } + exports.default = Foo; +}); diff --git a/tests/baselines/reference/defaultExportsGetExportedUmd.symbols b/tests/baselines/reference/defaultExportsGetExportedUmd.symbols new file mode 100644 index 00000000000..9c59f10e6e0 --- /dev/null +++ b/tests/baselines/reference/defaultExportsGetExportedUmd.symbols @@ -0,0 +1,4 @@ +=== tests/cases/conformance/es6/moduleExportsUmd/defaultExportsGetExportedUmd.ts === +export default class Foo {} +>Foo : Symbol(Foo, Decl(defaultExportsGetExportedUmd.ts, 0, 0)) + diff --git a/tests/baselines/reference/defaultExportsGetExportedUmd.types b/tests/baselines/reference/defaultExportsGetExportedUmd.types new file mode 100644 index 00000000000..ed5f4b7f709 --- /dev/null +++ b/tests/baselines/reference/defaultExportsGetExportedUmd.types @@ -0,0 +1,4 @@ +=== tests/cases/conformance/es6/moduleExportsUmd/defaultExportsGetExportedUmd.ts === +export default class Foo {} +>Foo : Foo + diff --git a/tests/baselines/reference/getEmitOutputSingleFile2.baseline b/tests/baselines/reference/getEmitOutputSingleFile2.baseline index 3022dcf68d8..21e28eb7feb 100644 --- a/tests/baselines/reference/getEmitOutputSingleFile2.baseline +++ b/tests/baselines/reference/getEmitOutputSingleFile2.baseline @@ -23,7 +23,7 @@ declare class Foo { x: string; y: number; } -declare module "tests/cases/fourslash/inputFile3" { +declare module "inputFile3" { export var foo: number; export var bar: string; } diff --git a/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts b/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts +++ b/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js b/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js index 6b8c22a03b8..6c9bb7e5029 100644 --- a/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js +++ b/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js @@ -1,4 +1,4 @@ -define("ref/m1", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { "use strict"; exports.m1_a1 = 10; var m1_c1 = (function () { @@ -13,7 +13,7 @@ define("ref/m1", ["require", "exports"], function (require, exports) { } exports.m1_f1 = m1_f1; }); -define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { "use strict"; exports.m2_a1 = 10; var m2_c1 = (function () { @@ -28,7 +28,7 @@ define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], functio } exports.m2_f1 = m2_f1; }); -define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { "use strict"; exports.a1 = 10; var c1 = (function () { diff --git a/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile.dts.errors.txt b/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile.dts.errors.txt deleted file mode 100644 index d827a2492f8..00000000000 --- a/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile.dts.errors.txt +++ /dev/null @@ -1,41 +0,0 @@ -bin/test.d.ts(9,16): error TS2436: Ambient module declaration cannot specify relative module name. -bin/test.d.ts(19,5): error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. -bin/test.d.ts(19,25): error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - - -==== bin/test.d.ts (3 errors) ==== - declare module "ref/m1" { - export var m1_a1: number; - export class m1_c1 { - m1_c1_p1: number; - } - export var m1_instance1: m1_c1; - export function m1_f1(): m1_c1; - } - declare module "../outputdir_module_multifolder_ref/m2" { - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2436: Ambient module declaration cannot specify relative module name. - export var m2_a1: number; - export class m2_c1 { - m2_c1_p1: number; - } - export var m2_instance1: m2_c1; - export function m2_f1(): m2_c1; - } - declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - export var a1: number; - export class c1 { - p1: number; - } - export var instance1: c1; - export function f1(): c1; - export var a2: typeof m1.m1_c1; - export var a3: typeof m2.m2_c1; - } - \ No newline at end of file diff --git a/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile.sourcemap.txt b/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile.sourcemap.txt index 9cf0b9a026c..f5d2c1a8625 100644 --- a/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile.sourcemap.txt +++ b/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile.sourcemap.txt @@ -8,7 +8,7 @@ sources: ../ref/m1.ts,../../outputdir_module_multifolder_ref/m2.ts,../test.ts emittedFile:bin/test.js sourceFile:../ref/m1.ts ------------------------------------------------------------------- ->>>define("ref/m1", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m1_a1 = 10; 1 >^^^^ @@ -175,7 +175,7 @@ emittedFile:bin/test.js sourceFile:../../outputdir_module_multifolder_ref/m2.ts ------------------------------------------------------------------- >>>}); ->>>define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m2_a1 = 10; 1 >^^^^ @@ -342,7 +342,7 @@ emittedFile:bin/test.js sourceFile:../test.ts ------------------------------------------------------------------- >>>}); ->>>define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +>>>define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { >>> "use strict"; >>> exports.a1 = 10; 1 >^^^^ diff --git a/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts b/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts +++ b/tests/baselines/reference/project/mapRootAbsolutePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts b/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts +++ b/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js b/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js index 59da8e01e6c..e39147c6ae1 100644 --- a/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js +++ b/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js @@ -1,4 +1,4 @@ -define("ref/m1", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { "use strict"; exports.m1_a1 = 10; var m1_c1 = (function () { @@ -13,7 +13,7 @@ define("ref/m1", ["require", "exports"], function (require, exports) { } exports.m1_f1 = m1_f1; }); -define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { "use strict"; exports.m2_a1 = 10; var m2_c1 = (function () { @@ -28,7 +28,7 @@ define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], functio } exports.m2_f1 = m2_f1; }); -define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { "use strict"; exports.a1 = 10; var c1 = (function () { diff --git a/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/mapRootRelativePathModuleMultifolderSpecifyOutputFile.dts.errors.txt b/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/mapRootRelativePathModuleMultifolderSpecifyOutputFile.dts.errors.txt deleted file mode 100644 index d827a2492f8..00000000000 --- a/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/mapRootRelativePathModuleMultifolderSpecifyOutputFile.dts.errors.txt +++ /dev/null @@ -1,41 +0,0 @@ -bin/test.d.ts(9,16): error TS2436: Ambient module declaration cannot specify relative module name. -bin/test.d.ts(19,5): error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. -bin/test.d.ts(19,25): error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - - -==== bin/test.d.ts (3 errors) ==== - declare module "ref/m1" { - export var m1_a1: number; - export class m1_c1 { - m1_c1_p1: number; - } - export var m1_instance1: m1_c1; - export function m1_f1(): m1_c1; - } - declare module "../outputdir_module_multifolder_ref/m2" { - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2436: Ambient module declaration cannot specify relative module name. - export var m2_a1: number; - export class m2_c1 { - m2_c1_p1: number; - } - export var m2_instance1: m2_c1; - export function m2_f1(): m2_c1; - } - declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - export var a1: number; - export class c1 { - p1: number; - } - export var instance1: c1; - export function f1(): c1; - export var a2: typeof m1.m1_c1; - export var a3: typeof m2.m2_c1; - } - \ No newline at end of file diff --git a/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/mapRootRelativePathModuleMultifolderSpecifyOutputFile.sourcemap.txt b/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/mapRootRelativePathModuleMultifolderSpecifyOutputFile.sourcemap.txt index b71034c5017..9ba9ed1055a 100644 --- a/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/mapRootRelativePathModuleMultifolderSpecifyOutputFile.sourcemap.txt +++ b/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/amd/mapRootRelativePathModuleMultifolderSpecifyOutputFile.sourcemap.txt @@ -8,7 +8,7 @@ sources: ../projects/outputdir_module_multifolder/ref/m1.ts,../projects/outputdi emittedFile:bin/test.js sourceFile:../projects/outputdir_module_multifolder/ref/m1.ts ------------------------------------------------------------------- ->>>define("ref/m1", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m1_a1 = 10; 1 >^^^^ @@ -175,7 +175,7 @@ emittedFile:bin/test.js sourceFile:../projects/outputdir_module_multifolder_ref/m2.ts ------------------------------------------------------------------- >>>}); ->>>define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m2_a1 = 10; 1 >^^^^ @@ -342,7 +342,7 @@ emittedFile:bin/test.js sourceFile:../projects/outputdir_module_multifolder/test.ts ------------------------------------------------------------------- >>>}); ->>>define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +>>>define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { >>> "use strict"; >>> exports.a1 = 10; 1 >^^^^ diff --git a/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts b/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts +++ b/tests/baselines/reference/project/mapRootRelativePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts b/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts +++ b/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.js b/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.js index 2b606c4d42a..621d7634ee1 100644 --- a/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.js +++ b/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.js @@ -1,4 +1,4 @@ -define("ref/m1", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { "use strict"; exports.m1_a1 = 10; var m1_c1 = (function () { @@ -13,7 +13,7 @@ define("ref/m1", ["require", "exports"], function (require, exports) { } exports.m1_f1 = m1_f1; }); -define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { "use strict"; exports.m2_a1 = 10; var m2_c1 = (function () { @@ -28,7 +28,7 @@ define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], functio } exports.m2_f1 = m2_f1; }); -define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { "use strict"; exports.a1 = 10; var c1 = (function () { diff --git a/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlModuleMultifolderSpecifyOutputFile.dts.errors.txt b/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlModuleMultifolderSpecifyOutputFile.dts.errors.txt deleted file mode 100644 index d827a2492f8..00000000000 --- a/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlModuleMultifolderSpecifyOutputFile.dts.errors.txt +++ /dev/null @@ -1,41 +0,0 @@ -bin/test.d.ts(9,16): error TS2436: Ambient module declaration cannot specify relative module name. -bin/test.d.ts(19,5): error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. -bin/test.d.ts(19,25): error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - - -==== bin/test.d.ts (3 errors) ==== - declare module "ref/m1" { - export var m1_a1: number; - export class m1_c1 { - m1_c1_p1: number; - } - export var m1_instance1: m1_c1; - export function m1_f1(): m1_c1; - } - declare module "../outputdir_module_multifolder_ref/m2" { - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2436: Ambient module declaration cannot specify relative module name. - export var m2_a1: number; - export class m2_c1 { - m2_c1_p1: number; - } - export var m2_instance1: m2_c1; - export function m2_f1(): m2_c1; - } - declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - export var a1: number; - export class c1 { - p1: number; - } - export var instance1: c1; - export function f1(): c1; - export var a2: typeof m1.m1_c1; - export var a3: typeof m2.m2_c1; - } - \ No newline at end of file diff --git a/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlModuleMultifolderSpecifyOutputFile.sourcemap.txt b/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlModuleMultifolderSpecifyOutputFile.sourcemap.txt index 07d59c79c59..87ecee2d007 100644 --- a/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlModuleMultifolderSpecifyOutputFile.sourcemap.txt +++ b/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlModuleMultifolderSpecifyOutputFile.sourcemap.txt @@ -8,7 +8,7 @@ sources: file:///tests/cases/projects/outputdir_module_multifolder/ref/m1.ts,fil emittedFile:bin/test.js sourceFile:file:///tests/cases/projects/outputdir_module_multifolder/ref/m1.ts ------------------------------------------------------------------- ->>>define("ref/m1", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m1_a1 = 10; 1 >^^^^ @@ -175,7 +175,7 @@ emittedFile:bin/test.js sourceFile:file:///tests/cases/projects/outputdir_module_multifolder_ref/m2.ts ------------------------------------------------------------------- >>>}); ->>>define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m2_a1 = 10; 1 >^^^^ @@ -342,7 +342,7 @@ emittedFile:bin/test.js sourceFile:file:///tests/cases/projects/outputdir_module_multifolder/test.ts ------------------------------------------------------------------- >>>}); ->>>define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +>>>define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { >>> "use strict"; >>> exports.a1 = 10; 1 >^^^^ diff --git a/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts b/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts +++ b/tests/baselines/reference/project/maprootUrlModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts b/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts +++ b/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.js b/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.js index 2b606c4d42a..621d7634ee1 100644 --- a/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.js +++ b/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.js @@ -1,4 +1,4 @@ -define("ref/m1", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { "use strict"; exports.m1_a1 = 10; var m1_c1 = (function () { @@ -13,7 +13,7 @@ define("ref/m1", ["require", "exports"], function (require, exports) { } exports.m1_f1 = m1_f1; }); -define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { "use strict"; exports.m2_a1 = 10; var m2_c1 = (function () { @@ -28,7 +28,7 @@ define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], functio } exports.m2_f1 = m2_f1; }); -define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { "use strict"; exports.a1 = 10; var c1 = (function () { diff --git a/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile.dts.errors.txt b/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile.dts.errors.txt deleted file mode 100644 index d827a2492f8..00000000000 --- a/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile.dts.errors.txt +++ /dev/null @@ -1,41 +0,0 @@ -bin/test.d.ts(9,16): error TS2436: Ambient module declaration cannot specify relative module name. -bin/test.d.ts(19,5): error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. -bin/test.d.ts(19,25): error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - - -==== bin/test.d.ts (3 errors) ==== - declare module "ref/m1" { - export var m1_a1: number; - export class m1_c1 { - m1_c1_p1: number; - } - export var m1_instance1: m1_c1; - export function m1_f1(): m1_c1; - } - declare module "../outputdir_module_multifolder_ref/m2" { - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2436: Ambient module declaration cannot specify relative module name. - export var m2_a1: number; - export class m2_c1 { - m2_c1_p1: number; - } - export var m2_instance1: m2_c1; - export function m2_f1(): m2_c1; - } - declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - export var a1: number; - export class c1 { - p1: number; - } - export var instance1: c1; - export function f1(): c1; - export var a2: typeof m1.m1_c1; - export var a3: typeof m2.m2_c1; - } - \ No newline at end of file diff --git a/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile.sourcemap.txt b/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile.sourcemap.txt index 4131a828e0b..4b4904130d7 100644 --- a/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile.sourcemap.txt +++ b/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/amd/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile.sourcemap.txt @@ -8,7 +8,7 @@ sources: outputdir_module_multifolder/ref/m1.ts,outputdir_module_multifolder_ref emittedFile:bin/test.js sourceFile:outputdir_module_multifolder/ref/m1.ts ------------------------------------------------------------------- ->>>define("ref/m1", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m1_a1 = 10; 1 >^^^^ @@ -175,7 +175,7 @@ emittedFile:bin/test.js sourceFile:outputdir_module_multifolder_ref/m2.ts ------------------------------------------------------------------- >>>}); ->>>define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m2_a1 = 10; 1 >^^^^ @@ -342,7 +342,7 @@ emittedFile:bin/test.js sourceFile:outputdir_module_multifolder/test.ts ------------------------------------------------------------------- >>>}); ->>>define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +>>>define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { >>> "use strict"; >>> exports.a1 = 10; 1 >^^^^ diff --git a/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts b/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts +++ b/tests/baselines/reference/project/maprootUrlsourcerootUrlModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts b/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts +++ b/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/amd/bin/test.js b/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/amd/bin/test.js index e489fc1e964..132e408c648 100644 --- a/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/amd/bin/test.js +++ b/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/amd/bin/test.js @@ -1,4 +1,4 @@ -define("ref/m1", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { "use strict"; exports.m1_a1 = 10; var m1_c1 = (function () { @@ -13,7 +13,7 @@ define("ref/m1", ["require", "exports"], function (require, exports) { } exports.m1_f1 = m1_f1; }); -define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { "use strict"; exports.m2_a1 = 10; var m2_c1 = (function () { @@ -28,7 +28,7 @@ define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], functio } exports.m2_f1 = m2_f1; }); -define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { "use strict"; exports.a1 = 10; var c1 = (function () { diff --git a/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/amd/outModuleMultifolderSpecifyOutputFile.dts.errors.txt b/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/amd/outModuleMultifolderSpecifyOutputFile.dts.errors.txt deleted file mode 100644 index d827a2492f8..00000000000 --- a/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/amd/outModuleMultifolderSpecifyOutputFile.dts.errors.txt +++ /dev/null @@ -1,41 +0,0 @@ -bin/test.d.ts(9,16): error TS2436: Ambient module declaration cannot specify relative module name. -bin/test.d.ts(19,5): error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. -bin/test.d.ts(19,25): error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - - -==== bin/test.d.ts (3 errors) ==== - declare module "ref/m1" { - export var m1_a1: number; - export class m1_c1 { - m1_c1_p1: number; - } - export var m1_instance1: m1_c1; - export function m1_f1(): m1_c1; - } - declare module "../outputdir_module_multifolder_ref/m2" { - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2436: Ambient module declaration cannot specify relative module name. - export var m2_a1: number; - export class m2_c1 { - m2_c1_p1: number; - } - export var m2_instance1: m2_c1; - export function m2_f1(): m2_c1; - } - declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - export var a1: number; - export class c1 { - p1: number; - } - export var instance1: c1; - export function f1(): c1; - export var a2: typeof m1.m1_c1; - export var a3: typeof m2.m2_c1; - } - \ No newline at end of file diff --git a/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts b/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts +++ b/tests/baselines/reference/project/outModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts b/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts +++ b/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js b/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js index bbc1d035f36..aa75fa33169 100644 --- a/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js +++ b/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js @@ -1,4 +1,4 @@ -define("ref/m1", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { "use strict"; exports.m1_a1 = 10; var m1_c1 = (function () { @@ -13,7 +13,7 @@ define("ref/m1", ["require", "exports"], function (require, exports) { } exports.m1_f1 = m1_f1; }); -define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { "use strict"; exports.m2_a1 = 10; var m2_c1 = (function () { @@ -28,7 +28,7 @@ define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], functio } exports.m2_f1 = m2_f1; }); -define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { "use strict"; exports.a1 = 10; var c1 = (function () { diff --git a/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile.dts.errors.txt b/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile.dts.errors.txt deleted file mode 100644 index d827a2492f8..00000000000 --- a/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile.dts.errors.txt +++ /dev/null @@ -1,41 +0,0 @@ -bin/test.d.ts(9,16): error TS2436: Ambient module declaration cannot specify relative module name. -bin/test.d.ts(19,5): error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. -bin/test.d.ts(19,25): error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - - -==== bin/test.d.ts (3 errors) ==== - declare module "ref/m1" { - export var m1_a1: number; - export class m1_c1 { - m1_c1_p1: number; - } - export var m1_instance1: m1_c1; - export function m1_f1(): m1_c1; - } - declare module "../outputdir_module_multifolder_ref/m2" { - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2436: Ambient module declaration cannot specify relative module name. - export var m2_a1: number; - export class m2_c1 { - m2_c1_p1: number; - } - export var m2_instance1: m2_c1; - export function m2_f1(): m2_c1; - } - declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - export var a1: number; - export class c1 { - p1: number; - } - export var instance1: c1; - export function f1(): c1; - export var a2: typeof m1.m1_c1; - export var a3: typeof m2.m2_c1; - } - \ No newline at end of file diff --git a/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile.sourcemap.txt b/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile.sourcemap.txt index b417e2fbcca..2d50a37cd8f 100644 --- a/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile.sourcemap.txt +++ b/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/amd/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile.sourcemap.txt @@ -8,7 +8,7 @@ sources: outputdir_module_multifolder/ref/m1.ts,outputdir_module_multifolder_ref emittedFile:bin/test.js sourceFile:outputdir_module_multifolder/ref/m1.ts ------------------------------------------------------------------- ->>>define("ref/m1", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m1_a1 = 10; 1 >^^^^ @@ -175,7 +175,7 @@ emittedFile:bin/test.js sourceFile:outputdir_module_multifolder_ref/m2.ts ------------------------------------------------------------------- >>>}); ->>>define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m2_a1 = 10; 1 >^^^^ @@ -342,7 +342,7 @@ emittedFile:bin/test.js sourceFile:outputdir_module_multifolder/test.ts ------------------------------------------------------------------- >>>}); ->>>define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +>>>define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { >>> "use strict"; >>> exports.a1 = 10; 1 >^^^^ diff --git a/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts b/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts +++ b/tests/baselines/reference/project/sourceRootAbsolutePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts b/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts +++ b/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js b/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js index bbc1d035f36..aa75fa33169 100644 --- a/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js +++ b/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/bin/test.js @@ -1,4 +1,4 @@ -define("ref/m1", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { "use strict"; exports.m1_a1 = 10; var m1_c1 = (function () { @@ -13,7 +13,7 @@ define("ref/m1", ["require", "exports"], function (require, exports) { } exports.m1_f1 = m1_f1; }); -define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { "use strict"; exports.m2_a1 = 10; var m2_c1 = (function () { @@ -28,7 +28,7 @@ define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], functio } exports.m2_f1 = m2_f1; }); -define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { "use strict"; exports.a1 = 10; var c1 = (function () { diff --git a/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/sourceRootRelativePathModuleMultifolderSpecifyOutputFile.dts.errors.txt b/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/sourceRootRelativePathModuleMultifolderSpecifyOutputFile.dts.errors.txt deleted file mode 100644 index d827a2492f8..00000000000 --- a/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/sourceRootRelativePathModuleMultifolderSpecifyOutputFile.dts.errors.txt +++ /dev/null @@ -1,41 +0,0 @@ -bin/test.d.ts(9,16): error TS2436: Ambient module declaration cannot specify relative module name. -bin/test.d.ts(19,5): error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. -bin/test.d.ts(19,25): error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - - -==== bin/test.d.ts (3 errors) ==== - declare module "ref/m1" { - export var m1_a1: number; - export class m1_c1 { - m1_c1_p1: number; - } - export var m1_instance1: m1_c1; - export function m1_f1(): m1_c1; - } - declare module "../outputdir_module_multifolder_ref/m2" { - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2436: Ambient module declaration cannot specify relative module name. - export var m2_a1: number; - export class m2_c1 { - m2_c1_p1: number; - } - export var m2_instance1: m2_c1; - export function m2_f1(): m2_c1; - } - declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - export var a1: number; - export class c1 { - p1: number; - } - export var instance1: c1; - export function f1(): c1; - export var a2: typeof m1.m1_c1; - export var a3: typeof m2.m2_c1; - } - \ No newline at end of file diff --git a/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/sourceRootRelativePathModuleMultifolderSpecifyOutputFile.sourcemap.txt b/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/sourceRootRelativePathModuleMultifolderSpecifyOutputFile.sourcemap.txt index c659566b4e8..3b3fc39eeb7 100644 --- a/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/sourceRootRelativePathModuleMultifolderSpecifyOutputFile.sourcemap.txt +++ b/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/amd/sourceRootRelativePathModuleMultifolderSpecifyOutputFile.sourcemap.txt @@ -8,7 +8,7 @@ sources: outputdir_module_multifolder/ref/m1.ts,outputdir_module_multifolder_ref emittedFile:bin/test.js sourceFile:outputdir_module_multifolder/ref/m1.ts ------------------------------------------------------------------- ->>>define("ref/m1", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m1_a1 = 10; 1 >^^^^ @@ -175,7 +175,7 @@ emittedFile:bin/test.js sourceFile:outputdir_module_multifolder_ref/m2.ts ------------------------------------------------------------------- >>>}); ->>>define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m2_a1 = 10; 1 >^^^^ @@ -342,7 +342,7 @@ emittedFile:bin/test.js sourceFile:outputdir_module_multifolder/test.ts ------------------------------------------------------------------- >>>}); ->>>define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +>>>define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { >>> "use strict"; >>> exports.a1 = 10; 1 >^^^^ diff --git a/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts b/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts +++ b/tests/baselines/reference/project/sourceRootRelativePathModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts b/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts +++ b/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/bin/test.js b/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/bin/test.js index bbc1d035f36..aa75fa33169 100644 --- a/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/bin/test.js +++ b/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/bin/test.js @@ -1,4 +1,4 @@ -define("ref/m1", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { "use strict"; exports.m1_a1 = 10; var m1_c1 = (function () { @@ -13,7 +13,7 @@ define("ref/m1", ["require", "exports"], function (require, exports) { } exports.m1_f1 = m1_f1; }); -define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { "use strict"; exports.m2_a1 = 10; var m2_c1 = (function () { @@ -28,7 +28,7 @@ define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], functio } exports.m2_f1 = m2_f1; }); -define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { "use strict"; exports.a1 = 10; var c1 = (function () { diff --git a/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/sourcemapModuleMultifolderSpecifyOutputFile.dts.errors.txt b/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/sourcemapModuleMultifolderSpecifyOutputFile.dts.errors.txt deleted file mode 100644 index d827a2492f8..00000000000 --- a/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/sourcemapModuleMultifolderSpecifyOutputFile.dts.errors.txt +++ /dev/null @@ -1,41 +0,0 @@ -bin/test.d.ts(9,16): error TS2436: Ambient module declaration cannot specify relative module name. -bin/test.d.ts(19,5): error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. -bin/test.d.ts(19,25): error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - - -==== bin/test.d.ts (3 errors) ==== - declare module "ref/m1" { - export var m1_a1: number; - export class m1_c1 { - m1_c1_p1: number; - } - export var m1_instance1: m1_c1; - export function m1_f1(): m1_c1; - } - declare module "../outputdir_module_multifolder_ref/m2" { - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2436: Ambient module declaration cannot specify relative module name. - export var m2_a1: number; - export class m2_c1 { - m2_c1_p1: number; - } - export var m2_instance1: m2_c1; - export function m2_f1(): m2_c1; - } - declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - export var a1: number; - export class c1 { - p1: number; - } - export var instance1: c1; - export function f1(): c1; - export var a2: typeof m1.m1_c1; - export var a3: typeof m2.m2_c1; - } - \ No newline at end of file diff --git a/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/sourcemapModuleMultifolderSpecifyOutputFile.sourcemap.txt b/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/sourcemapModuleMultifolderSpecifyOutputFile.sourcemap.txt index 47a5c776cb2..f6f039906b9 100644 --- a/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/sourcemapModuleMultifolderSpecifyOutputFile.sourcemap.txt +++ b/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/amd/sourcemapModuleMultifolderSpecifyOutputFile.sourcemap.txt @@ -8,7 +8,7 @@ sources: ../ref/m1.ts,../../outputdir_module_multifolder_ref/m2.ts,../test.ts emittedFile:bin/test.js sourceFile:../ref/m1.ts ------------------------------------------------------------------- ->>>define("ref/m1", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m1_a1 = 10; 1 >^^^^ @@ -175,7 +175,7 @@ emittedFile:bin/test.js sourceFile:../../outputdir_module_multifolder_ref/m2.ts ------------------------------------------------------------------- >>>}); ->>>define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m2_a1 = 10; 1 >^^^^ @@ -342,7 +342,7 @@ emittedFile:bin/test.js sourceFile:../test.ts ------------------------------------------------------------------- >>>}); ->>>define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +>>>define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { >>> "use strict"; >>> exports.a1 = 10; 1 >^^^^ diff --git a/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts b/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts +++ b/tests/baselines/reference/project/sourcemapModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts b/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts +++ b/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.js b/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.js index bbc1d035f36..aa75fa33169 100644 --- a/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.js +++ b/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/bin/test.js @@ -1,4 +1,4 @@ -define("ref/m1", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { "use strict"; exports.m1_a1 = 10; var m1_c1 = (function () { @@ -13,7 +13,7 @@ define("ref/m1", ["require", "exports"], function (require, exports) { } exports.m1_f1 = m1_f1; }); -define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { "use strict"; exports.m2_a1 = 10; var m2_c1 = (function () { @@ -28,7 +28,7 @@ define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], functio } exports.m2_f1 = m2_f1; }); -define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { "use strict"; exports.a1 = 10; var c1 = (function () { diff --git a/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/sourcerootUrlModuleMultifolderSpecifyOutputFile.dts.errors.txt b/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/sourcerootUrlModuleMultifolderSpecifyOutputFile.dts.errors.txt deleted file mode 100644 index d827a2492f8..00000000000 --- a/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/sourcerootUrlModuleMultifolderSpecifyOutputFile.dts.errors.txt +++ /dev/null @@ -1,41 +0,0 @@ -bin/test.d.ts(9,16): error TS2436: Ambient module declaration cannot specify relative module name. -bin/test.d.ts(19,5): error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. -bin/test.d.ts(19,25): error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - - -==== bin/test.d.ts (3 errors) ==== - declare module "ref/m1" { - export var m1_a1: number; - export class m1_c1 { - m1_c1_p1: number; - } - export var m1_instance1: m1_c1; - export function m1_f1(): m1_c1; - } - declare module "../outputdir_module_multifolder_ref/m2" { - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2436: Ambient module declaration cannot specify relative module name. - export var m2_a1: number; - export class m2_c1 { - m2_c1_p1: number; - } - export var m2_instance1: m2_c1; - export function m2_f1(): m2_c1; - } - declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2439: Import or export declaration in an ambient module declaration cannot reference module through relative module name. - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -!!! error TS2307: Cannot find module '../outputdir_module_multifolder_ref/m2'. - export var a1: number; - export class c1 { - p1: number; - } - export var instance1: c1; - export function f1(): c1; - export var a2: typeof m1.m1_c1; - export var a3: typeof m2.m2_c1; - } - \ No newline at end of file diff --git a/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/sourcerootUrlModuleMultifolderSpecifyOutputFile.sourcemap.txt b/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/sourcerootUrlModuleMultifolderSpecifyOutputFile.sourcemap.txt index 44aaf229c7e..eb7aaf08a13 100644 --- a/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/sourcerootUrlModuleMultifolderSpecifyOutputFile.sourcemap.txt +++ b/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/amd/sourcerootUrlModuleMultifolderSpecifyOutputFile.sourcemap.txt @@ -8,7 +8,7 @@ sources: outputdir_module_multifolder/ref/m1.ts,outputdir_module_multifolder_ref emittedFile:bin/test.js sourceFile:outputdir_module_multifolder/ref/m1.ts ------------------------------------------------------------------- ->>>define("ref/m1", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder/ref/m1", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m1_a1 = 10; 1 >^^^^ @@ -175,7 +175,7 @@ emittedFile:bin/test.js sourceFile:outputdir_module_multifolder_ref/m2.ts ------------------------------------------------------------------- >>>}); ->>>define("../outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { +>>>define("outputdir_module_multifolder_ref/m2", ["require", "exports"], function (require, exports) { >>> "use strict"; >>> exports.m2_a1 = 10; 1 >^^^^ @@ -342,7 +342,7 @@ emittedFile:bin/test.js sourceFile:outputdir_module_multifolder/test.ts ------------------------------------------------------------------- >>>}); ->>>define("test", ["require", "exports", "ref/m1", "../outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { +>>>define("test", ["require", "exports", "outputdir_module_multifolder/ref/m1", "outputdir_module_multifolder_ref/m2"], function (require, exports, m1, m2) { >>> "use strict"; >>> exports.a1 = 10; 1 >^^^^ diff --git a/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts b/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts index 9b6af66589a..d42fc1cd136 100644 --- a/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts +++ b/tests/baselines/reference/project/sourcerootUrlModuleMultifolderSpecifyOutputFile/node/bin/test.d.ts @@ -1,4 +1,4 @@ -declare module "ref/m1" { +declare module "outputdir_module_multifolder/ref/m1" { export var m1_a1: number; export class m1_c1 { m1_c1_p1: number; @@ -6,7 +6,7 @@ declare module "ref/m1" { export var m1_instance1: m1_c1; export function m1_f1(): m1_c1; } -declare module "../outputdir_module_multifolder_ref/m2" { +declare module "outputdir_module_multifolder_ref/m2" { export var m2_a1: number; export class m2_c1 { m2_c1_p1: number; @@ -15,8 +15,8 @@ declare module "../outputdir_module_multifolder_ref/m2" { export function m2_f1(): m2_c1; } declare module "test" { - import m1 = require("ref/m1"); - import m2 = require("../outputdir_module_multifolder_ref/m2"); + import m1 = require("outputdir_module_multifolder/ref/m1"); + import m2 = require("outputdir_module_multifolder_ref/m2"); export var a1: number; export class c1 { p1: number; diff --git a/tests/cases/compiler/allowSyntheticDefaultImports1.ts b/tests/cases/compiler/allowSyntheticDefaultImports1.ts new file mode 100644 index 00000000000..4793da79136 --- /dev/null +++ b/tests/cases/compiler/allowSyntheticDefaultImports1.ts @@ -0,0 +1,10 @@ +// @allowSyntheticDefaultImports: true +// @module: commonjs +// @Filename: a.ts +import Namespace from "./b"; +export var x = new Namespace.Foo(); + +// @Filename: b.ts +export class Foo { + member: string; +} diff --git a/tests/cases/compiler/allowSyntheticDefaultImports2.ts b/tests/cases/compiler/allowSyntheticDefaultImports2.ts new file mode 100644 index 00000000000..8fa004be387 --- /dev/null +++ b/tests/cases/compiler/allowSyntheticDefaultImports2.ts @@ -0,0 +1,9 @@ +// @module: system +// @Filename: a.ts +import Namespace from "./b"; +export var x = new Namespace.Foo(); + +// @Filename: b.ts +export class Foo { + member: string; +} \ No newline at end of file diff --git a/tests/cases/compiler/allowSyntheticDefaultImports3.ts b/tests/cases/compiler/allowSyntheticDefaultImports3.ts new file mode 100644 index 00000000000..65d11c892c9 --- /dev/null +++ b/tests/cases/compiler/allowSyntheticDefaultImports3.ts @@ -0,0 +1,10 @@ +// @allowSyntheticDefaultImports: false +// @module: system +// @Filename: a.ts +import Namespace from "./b"; +export var x = new Namespace.Foo(); + +// @Filename: b.ts +export class Foo { + member: string; +} diff --git a/tests/cases/compiler/allowSyntheticDefaultImports4.ts b/tests/cases/compiler/allowSyntheticDefaultImports4.ts new file mode 100644 index 00000000000..1d26c6277c1 --- /dev/null +++ b/tests/cases/compiler/allowSyntheticDefaultImports4.ts @@ -0,0 +1,11 @@ +// @allowSyntheticDefaultImports: true +// @module: commonjs +// @Filename: b.d.ts +declare class Foo { + member: string; +} +export = Foo; + +// @Filename: a.ts +import Foo from "./b"; +export var x = new Foo(); diff --git a/tests/cases/compiler/allowSyntheticDefaultImports5.ts b/tests/cases/compiler/allowSyntheticDefaultImports5.ts new file mode 100644 index 00000000000..30ebba67144 --- /dev/null +++ b/tests/cases/compiler/allowSyntheticDefaultImports5.ts @@ -0,0 +1,10 @@ +// @module: system +// @Filename: b.d.ts +declare class Foo { + member: string; +} +export = Foo; + +// @Filename: a.ts +import Foo from "./b"; +export var x = new Foo(); diff --git a/tests/cases/compiler/allowSyntheticDefaultImports6.ts b/tests/cases/compiler/allowSyntheticDefaultImports6.ts new file mode 100644 index 00000000000..ff0300e30b4 --- /dev/null +++ b/tests/cases/compiler/allowSyntheticDefaultImports6.ts @@ -0,0 +1,11 @@ +// @allowSyntheticDefaultImports: false +// @module: system +// @Filename: b.d.ts +declare class Foo { + member: string; +} +export = Foo; + +// @Filename: a.ts +import Foo from "./b"; +export var x = new Foo(); diff --git a/tests/cases/compiler/commonSourceDir5.ts b/tests/cases/compiler/commonSourceDir5.ts new file mode 100644 index 00000000000..d181bef68fe --- /dev/null +++ b/tests/cases/compiler/commonSourceDir5.ts @@ -0,0 +1,17 @@ +// @outFile: concat.js +// @module: amd +// @moduleResolution: node +// @Filename: A:/bar.ts +import {z} from "./foo"; +export var x = z + z; + +// @Filename: A:/foo.ts +import {pi} from "B:/baz"; +export var i = Math.sqrt(-1); +export var z = pi * pi; + +// @Filename: B:/baz.ts +import {x} from "A:/bar"; +import {i} from "A:/foo"; +export var pi = Math.PI; +export var y = x * i; \ No newline at end of file diff --git a/tests/cases/compiler/commonSourceDir6.ts b/tests/cases/compiler/commonSourceDir6.ts new file mode 100644 index 00000000000..ff2b1309035 --- /dev/null +++ b/tests/cases/compiler/commonSourceDir6.ts @@ -0,0 +1,17 @@ +// @outFile: concat.js +// @outDir: a +// @module: amd +// @Filename: a/bar.ts +import {z} from "./foo"; +export var x = z + z; + +// @Filename: a/foo.ts +import {pi} from "../baz"; +export var i = Math.sqrt(-1); +export var z = pi * pi; + +// @Filename: baz.ts +import {x} from "a/bar"; +import {i} from "a/foo"; +export var pi = Math.PI; +export var y = x * i; \ No newline at end of file diff --git a/tests/cases/conformance/es6/moduleExportsAmd/decoratedDefaultExportsGetExportedAmd.ts b/tests/cases/conformance/es6/moduleExportsAmd/decoratedDefaultExportsGetExportedAmd.ts new file mode 100644 index 00000000000..87fc8afd263 --- /dev/null +++ b/tests/cases/conformance/es6/moduleExportsAmd/decoratedDefaultExportsGetExportedAmd.ts @@ -0,0 +1,8 @@ +// @target: ES6 +// @experimentalDecorators: true +// @module: amd + +var decorator: ClassDecorator; + +@decorator +export default class Foo {} diff --git a/tests/cases/conformance/es6/moduleExportsAmd/defaultExportsGetExportedAmd.ts b/tests/cases/conformance/es6/moduleExportsAmd/defaultExportsGetExportedAmd.ts new file mode 100644 index 00000000000..ef0f2ffde17 --- /dev/null +++ b/tests/cases/conformance/es6/moduleExportsAmd/defaultExportsGetExportedAmd.ts @@ -0,0 +1,3 @@ +// @target: ES6 +// @module: amd +export default class Foo {} diff --git a/tests/cases/conformance/es6/moduleExportsCommonjs/decoratedDefaultExportsGetExportedCommonjs.ts b/tests/cases/conformance/es6/moduleExportsCommonjs/decoratedDefaultExportsGetExportedCommonjs.ts new file mode 100644 index 00000000000..aefd07ffdb9 --- /dev/null +++ b/tests/cases/conformance/es6/moduleExportsCommonjs/decoratedDefaultExportsGetExportedCommonjs.ts @@ -0,0 +1,8 @@ +// @target: ES6 +// @experimentalDecorators: true +// @module: commonjs + +var decorator: ClassDecorator; + +@decorator +export default class Foo {} diff --git a/tests/cases/conformance/es6/moduleExportsCommonjs/defaultExportsGetExportedCommonjs.ts b/tests/cases/conformance/es6/moduleExportsCommonjs/defaultExportsGetExportedCommonjs.ts new file mode 100644 index 00000000000..994f24df658 --- /dev/null +++ b/tests/cases/conformance/es6/moduleExportsCommonjs/defaultExportsGetExportedCommonjs.ts @@ -0,0 +1,3 @@ +// @target: ES6 +// @module: commonjs +export default class Foo {} diff --git a/tests/cases/conformance/es6/moduleExportsSystem/decoratedDefaultExportsGetExportedSystem.ts b/tests/cases/conformance/es6/moduleExportsSystem/decoratedDefaultExportsGetExportedSystem.ts new file mode 100644 index 00000000000..b871b3c7b35 --- /dev/null +++ b/tests/cases/conformance/es6/moduleExportsSystem/decoratedDefaultExportsGetExportedSystem.ts @@ -0,0 +1,8 @@ +// @target: ES6 +// @experimentalDecorators: true +// @module: system + +var decorator: ClassDecorator; + +@decorator +export default class Foo {} diff --git a/tests/cases/conformance/es6/moduleExportsSystem/defaultExportsGetExportedSystem.ts b/tests/cases/conformance/es6/moduleExportsSystem/defaultExportsGetExportedSystem.ts new file mode 100644 index 00000000000..3764f2ec36c --- /dev/null +++ b/tests/cases/conformance/es6/moduleExportsSystem/defaultExportsGetExportedSystem.ts @@ -0,0 +1,3 @@ +// @target: ES6 +// @module: system +export default class Foo {} diff --git a/tests/cases/conformance/es6/moduleExportsUmd/decoratedDefaultExportsGetExportedUmd.ts b/tests/cases/conformance/es6/moduleExportsUmd/decoratedDefaultExportsGetExportedUmd.ts new file mode 100644 index 00000000000..9b0a7d773ef --- /dev/null +++ b/tests/cases/conformance/es6/moduleExportsUmd/decoratedDefaultExportsGetExportedUmd.ts @@ -0,0 +1,8 @@ +// @target: ES6 +// @experimentalDecorators: true +// @module: umd + +var decorator: ClassDecorator; + +@decorator +export default class Foo {} diff --git a/tests/cases/conformance/es6/moduleExportsUmd/defaultExportsGetExportedUmd.ts b/tests/cases/conformance/es6/moduleExportsUmd/defaultExportsGetExportedUmd.ts new file mode 100644 index 00000000000..39784fc7188 --- /dev/null +++ b/tests/cases/conformance/es6/moduleExportsUmd/defaultExportsGetExportedUmd.ts @@ -0,0 +1,3 @@ +// @target: ES6 +// @module: umd +export default class Foo {}