diff --git a/src/compiler/commandLineParser.ts b/src/compiler/commandLineParser.ts index b62fb3b638f..cd354820ad3 100644 --- a/src/compiler/commandLineParser.ts +++ b/src/compiler/commandLineParser.ts @@ -522,7 +522,7 @@ export const targetOptionDeclaration: CommandLineOptionOfCustomType = { showInSimplifiedHelpView: true, category: Diagnostics.Language_and_Environment, description: Diagnostics.Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations, - defaultValueDescription: ScriptTarget.ES3, + defaultValueDescription: ScriptTarget.ES5, }; /** @internal */ diff --git a/src/compiler/utilities.ts b/src/compiler/utilities.ts index 05cc9775a36..d2bb79697a4 100644 --- a/src/compiler/utilities.ts +++ b/src/compiler/utilities.ts @@ -7515,10 +7515,10 @@ export function getSetExternalModuleIndicator(options: CompilerOptions): (file: /** @internal */ export function getEmitScriptTarget(compilerOptions: {module?: CompilerOptions["module"], target?: CompilerOptions["target"]}): ScriptTarget { - return compilerOptions.target || - (compilerOptions.module === ModuleKind.Node16 && ScriptTarget.ES2022) || + return compilerOptions.target ?? + ((compilerOptions.module === ModuleKind.Node16 && ScriptTarget.ES2022) || (compilerOptions.module === ModuleKind.NodeNext && ScriptTarget.ESNext) || - ScriptTarget.ES5; + ScriptTarget.ES5); } /** @internal */ diff --git a/tests/baselines/reference/ES3For-ofTypeCheck1.errors.txt b/tests/baselines/reference/ES3For-ofTypeCheck1.errors.txt new file mode 100644 index 00000000000..6437cfbc73d --- /dev/null +++ b/tests/baselines/reference/ES3For-ofTypeCheck1.errors.txt @@ -0,0 +1,7 @@ +tests/cases/conformance/statements/for-ofStatements/ES3For-ofTypeCheck1.ts(1,15): error TS2494: Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher. + + +==== tests/cases/conformance/statements/for-ofStatements/ES3For-ofTypeCheck1.ts (1 errors) ==== + for (var v of "") { } + ~~ +!!! error TS2494: Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher. \ No newline at end of file diff --git a/tests/baselines/reference/ES3For-ofTypeCheck4.errors.txt b/tests/baselines/reference/ES3For-ofTypeCheck4.errors.txt new file mode 100644 index 00000000000..80e60008da4 --- /dev/null +++ b/tests/baselines/reference/ES3For-ofTypeCheck4.errors.txt @@ -0,0 +1,8 @@ +tests/cases/conformance/statements/for-ofStatements/ES3For-ofTypeCheck4.ts(2,17): error TS2494: Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher. + + +==== tests/cases/conformance/statements/for-ofStatements/ES3For-ofTypeCheck4.ts (1 errors) ==== + var union: string | string[]; + for (const v of union) { } + ~~~~~ +!!! error TS2494: Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher. \ No newline at end of file diff --git a/tests/baselines/reference/accessorWithES3.errors.txt b/tests/baselines/reference/accessorWithES3.errors.txt new file mode 100644 index 00000000000..0a2219d85a4 --- /dev/null +++ b/tests/baselines/reference/accessorWithES3.errors.txt @@ -0,0 +1,35 @@ +tests/cases/conformance/classes/propertyMemberDeclarations/memberAccessorDeclarations/accessorWithES3.ts(4,9): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. +tests/cases/conformance/classes/propertyMemberDeclarations/memberAccessorDeclarations/accessorWithES3.ts(10,9): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. +tests/cases/conformance/classes/propertyMemberDeclarations/memberAccessorDeclarations/accessorWithES3.ts(15,9): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. +tests/cases/conformance/classes/propertyMemberDeclarations/memberAccessorDeclarations/accessorWithES3.ts(19,9): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. + + +==== tests/cases/conformance/classes/propertyMemberDeclarations/memberAccessorDeclarations/accessorWithES3.ts (4 errors) ==== + // error to use accessors in ES3 mode + + class C { + get x() { + ~ +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. + return 1; + } + } + + class D { + set x(v) { + ~ +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. + } + } + + var x = { + get a() { return 1 } + ~ +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. + } + + var y = { + set b(v) { } + ~ +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. + } \ No newline at end of file diff --git a/tests/baselines/reference/accessorsNotAllowedInES3.errors.txt b/tests/baselines/reference/accessorsNotAllowedInES3.errors.txt new file mode 100644 index 00000000000..cee1c8fd537 --- /dev/null +++ b/tests/baselines/reference/accessorsNotAllowedInES3.errors.txt @@ -0,0 +1,14 @@ +tests/cases/compiler/accessorsNotAllowedInES3.ts(2,9): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. +tests/cases/compiler/accessorsNotAllowedInES3.ts(4,15): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. + + +==== tests/cases/compiler/accessorsNotAllowedInES3.ts (2 errors) ==== + class C { + get x(): number { return 1; } + ~ +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. + } + var y = { get foo() { return 3; } }; + ~~~ +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. + \ No newline at end of file diff --git a/tests/baselines/reference/definePropertyOutputES3.errors.txt b/tests/baselines/reference/definePropertyOutputES3.errors.txt new file mode 100644 index 00000000000..c5274779225 --- /dev/null +++ b/tests/baselines/reference/definePropertyOutputES3.errors.txt @@ -0,0 +1,9 @@ +error TS5048: Option 'useDefineForClassFields' cannot be specified when option 'target' is 'ES3'. + + +!!! error TS5048: Option 'useDefineForClassFields' cannot be specified when option 'target' is 'ES3'. +==== tests/cases/conformance/classes/propertyMemberDeclarations/definePropertyOutputES3.ts (0 errors) ==== + class A { + a = 12 + } + \ No newline at end of file diff --git a/tests/baselines/reference/es3-oldStyleOctalLiteralInEnums.errors.txt b/tests/baselines/reference/es3-oldStyleOctalLiteralInEnums.errors.txt index 1faa57d122d..137b76f660d 100644 --- a/tests/baselines/reference/es3-oldStyleOctalLiteralInEnums.errors.txt +++ b/tests/baselines/reference/es3-oldStyleOctalLiteralInEnums.errors.txt @@ -1,13 +1,13 @@ -tests/cases/compiler/es3-oldStyleOctalLiteralInEnums.ts(2,7): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '-0o1'. -tests/cases/compiler/es3-oldStyleOctalLiteralInEnums.ts(3,7): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o2'. +tests/cases/compiler/es3-oldStyleOctalLiteralInEnums.ts(2,7): error TS8018: Octal literals are not allowed in enums members initializer. Use the syntax '-0o1'. +tests/cases/compiler/es3-oldStyleOctalLiteralInEnums.ts(3,7): error TS8018: Octal literals are not allowed in enums members initializer. Use the syntax '0o2'. ==== tests/cases/compiler/es3-oldStyleOctalLiteralInEnums.ts (2 errors) ==== enum E { x = -01, ~~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '-0o1'. +!!! error TS8018: Octal literals are not allowed in enums members initializer. Use the syntax '-0o1'. y = 02, ~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o2'. +!!! error TS8018: Octal literals are not allowed in enums members initializer. Use the syntax '0o2'. } \ No newline at end of file diff --git a/tests/baselines/reference/es3-oldStyleOctalLiteralTypes.errors.txt b/tests/baselines/reference/es3-oldStyleOctalLiteralTypes.errors.txt index a628ec16f64..5fc9843989c 100644 --- a/tests/baselines/reference/es3-oldStyleOctalLiteralTypes.errors.txt +++ b/tests/baselines/reference/es3-oldStyleOctalLiteralTypes.errors.txt @@ -1,12 +1,12 @@ -tests/cases/compiler/es3-oldStyleOctalLiteralTypes.ts(1,8): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o10'. -tests/cases/compiler/es3-oldStyleOctalLiteralTypes.ts(2,8): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '-0o20'. +tests/cases/compiler/es3-oldStyleOctalLiteralTypes.ts(1,8): error TS8017: Octal literal types must use ES2015 syntax. Use the syntax '0o10'. +tests/cases/compiler/es3-oldStyleOctalLiteralTypes.ts(2,8): error TS8017: Octal literal types must use ES2015 syntax. Use the syntax '-0o20'. ==== tests/cases/compiler/es3-oldStyleOctalLiteralTypes.ts (2 errors) ==== let x: 010; ~~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o10'. +!!! error TS8017: Octal literal types must use ES2015 syntax. Use the syntax '0o10'. let y: -020; ~~~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '-0o20'. +!!! error TS8017: Octal literal types must use ES2015 syntax. Use the syntax '-0o20'. \ No newline at end of file diff --git a/tests/baselines/reference/es3defaultAliasIsQuoted.js b/tests/baselines/reference/es3defaultAliasIsQuoted.js index f1838019c08..a486ad61404 100644 --- a/tests/baselines/reference/es3defaultAliasIsQuoted.js +++ b/tests/baselines/reference/es3defaultAliasIsQuoted.js @@ -15,7 +15,7 @@ assert(Foo.CONSTANT === "Foo"); //// [es3defaultAliasQuoted_file0.js] "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; exports.Foo = void 0; var Foo = /** @class */ (function () { function Foo() { @@ -28,9 +28,9 @@ function assert(value) { if (!value) throw new Error("Assertion failed!"); } -exports.default = assert; +exports["default"] = assert; //// [es3defaultAliasQuoted_file1.js] "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; var es3defaultAliasQuoted_file0_1 = require("./es3defaultAliasQuoted_file0"); -(0, es3defaultAliasQuoted_file0_1.default)(es3defaultAliasQuoted_file0_1.Foo.CONSTANT === "Foo"); +(0, es3defaultAliasQuoted_file0_1["default"])(es3defaultAliasQuoted_file0_1.Foo.CONSTANT === "Foo"); diff --git a/tests/baselines/reference/esModuleInteropWithExportStar(target=es3).js b/tests/baselines/reference/esModuleInteropWithExportStar(target=es3).js index b52b84ecbf4..01f196c4382 100644 --- a/tests/baselines/reference/esModuleInteropWithExportStar(target=es3).js +++ b/tests/baselines/reference/esModuleInteropWithExportStar(target=es3).js @@ -40,12 +40,12 @@ var __importStar = (this && this.__importStar) || function (mod) { var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; exports.y = exports.x = void 0; var fs = __importStar(require("./fs")); fs; __exportStar(require("./fs"), exports); var fs_1 = require("./fs"); -Object.defineProperty(exports, "x", { enumerable: true, get: function () { return fs_1.x; } }); +__createBinding(exports, fs_1, "x"); var fs_2 = require("./fs"); -Object.defineProperty(exports, "y", { enumerable: true, get: function () { return fs_2.x; } }); +__createBinding(exports, fs_2, "x", "y"); diff --git a/tests/baselines/reference/exportAndImport-es3-amd.js b/tests/baselines/reference/exportAndImport-es3-amd.js index 1212ac96206..6f7de5ee871 100644 --- a/tests/baselines/reference/exportAndImport-es3-amd.js +++ b/tests/baselines/reference/exportAndImport-es3-amd.js @@ -14,17 +14,17 @@ export default function f2() { //// [m1.js] define(["require", "exports"], function (require, exports) { "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); + exports.__esModule = true; function f1() { } - exports.default = f1; + exports["default"] = f1; }); //// [m2.js] define(["require", "exports", "./m1"], function (require, exports, m1_1) { "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); + exports.__esModule = true; function f2() { - (0, m1_1.default)(); + (0, m1_1["default"])(); } - exports.default = f2; + exports["default"] = f2; }); diff --git a/tests/baselines/reference/exportAndImport-es3.js b/tests/baselines/reference/exportAndImport-es3.js index 23b48424e29..de49050ff93 100644 --- a/tests/baselines/reference/exportAndImport-es3.js +++ b/tests/baselines/reference/exportAndImport-es3.js @@ -13,15 +13,15 @@ export default function f2() { //// [m1.js] "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; function f1() { } -exports.default = f1; +exports["default"] = f1; //// [m2.js] "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; var m1_1 = require("./m1"); function f2() { - (0, m1_1.default)(); + (0, m1_1["default"])(); } -exports.default = f2; +exports["default"] = f2; diff --git a/tests/baselines/reference/exportsAndImportsWithUnderscores1.js b/tests/baselines/reference/exportsAndImportsWithUnderscores1.js index 4a79981889d..284537252fe 100644 --- a/tests/baselines/reference/exportsAndImportsWithUnderscores1.js +++ b/tests/baselines/reference/exportsAndImportsWithUnderscores1.js @@ -15,15 +15,15 @@ const { __, _, ___ } = R; //// [m1.js] "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; var R; -exports.default = R = { +exports["default"] = R = { "__": 20, "_": 10, "___": 30 }; //// [m2.js] "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; var m1_1 = require("./m1"); -var __ = m1_1.default.__, _ = m1_1.default._, ___ = m1_1.default.___; +var __ = m1_1["default"].__, _ = m1_1["default"]._, ___ = m1_1["default"].___; diff --git a/tests/baselines/reference/exportsAndImportsWithUnderscores2.js b/tests/baselines/reference/exportsAndImportsWithUnderscores2.js index 4d4f0e53c16..90cbc11b95b 100644 --- a/tests/baselines/reference/exportsAndImportsWithUnderscores2.js +++ b/tests/baselines/reference/exportsAndImportsWithUnderscores2.js @@ -14,14 +14,14 @@ const { __esmodule, __proto__ } = R; //// [m1.js] "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; var R; -exports.default = R = { +exports["default"] = R = { "__esmodule": true, "__proto__": {} }; //// [m2.js] "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; var m1_1 = require("./m1"); -var __esmodule = m1_1.default.__esmodule, __proto__ = m1_1.default.__proto__; +var __esmodule = m1_1["default"].__esmodule, __proto__ = m1_1["default"].__proto__; diff --git a/tests/baselines/reference/exportsAndImportsWithUnderscores3.js b/tests/baselines/reference/exportsAndImportsWithUnderscores3.js index 66d8c70e4cb..0aead5f1f8b 100644 --- a/tests/baselines/reference/exportsAndImportsWithUnderscores3.js +++ b/tests/baselines/reference/exportsAndImportsWithUnderscores3.js @@ -15,15 +15,15 @@ const { ___, ___hello, _hi } = R; //// [m1.js] "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; var R; -exports.default = R = { +exports["default"] = R = { "___": 30, "___hello": 21, - "_hi": 40, + "_hi": 40 }; //// [m2.js] "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; var m1_1 = require("./m1"); -var ___ = m1_1.default.___, ___hello = m1_1.default.___hello, _hi = m1_1.default._hi; +var ___ = m1_1["default"].___, ___hello = m1_1["default"].___hello, _hi = m1_1["default"]._hi; diff --git a/tests/baselines/reference/exportsAndImportsWithUnderscores4.js b/tests/baselines/reference/exportsAndImportsWithUnderscores4.js index 860a60f2620..1fa3b3fd5e1 100644 --- a/tests/baselines/reference/exportsAndImportsWithUnderscores4.js +++ b/tests/baselines/reference/exportsAndImportsWithUnderscores4.js @@ -35,7 +35,7 @@ _hi(); //// [m1.js] "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; exports.___hello = exports.__esmodule = exports.__proto = exports._hi = exports.___ = exports.__ = exports._ = void 0; function _() { console.log("_"); @@ -67,7 +67,7 @@ function ___hello() { exports.___hello = ___hello; //// [m2.js] "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; var m1_1 = require("./m1"); (0, m1_1._)(); (0, m1_1.__)(); diff --git a/tests/baselines/reference/importCallExpressionAsyncES3AMD.js b/tests/baselines/reference/importCallExpressionAsyncES3AMD.js index 696b44e012e..c4d58cd0805 100644 --- a/tests/baselines/reference/importCallExpressionAsyncES3AMD.js +++ b/tests/baselines/reference/importCallExpressionAsyncES3AMD.js @@ -67,7 +67,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) { }; define(["require", "exports"], function (require, exports) { "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); + exports.__esModule = true; exports.l = exports.cl2 = exports.obj = exports.cl1 = exports.fn = void 0; function fn() { return __awaiter(this, void 0, void 0, function () { diff --git a/tests/baselines/reference/importCallExpressionAsyncES3CJS.js b/tests/baselines/reference/importCallExpressionAsyncES3CJS.js index 59bb76e9ac2..777f8fc651c 100644 --- a/tests/baselines/reference/importCallExpressionAsyncES3CJS.js +++ b/tests/baselines/reference/importCallExpressionAsyncES3CJS.js @@ -66,7 +66,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) { if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } }; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; exports.l = exports.cl2 = exports.obj = exports.cl1 = exports.fn = void 0; function fn() { return __awaiter(this, void 0, void 0, function () { diff --git a/tests/baselines/reference/importCallExpressionAsyncES3System.js b/tests/baselines/reference/importCallExpressionAsyncES3System.js index a7e9ef33ee0..2c4fa8bb5cc 100644 --- a/tests/baselines/reference/importCallExpressionAsyncES3System.js +++ b/tests/baselines/reference/importCallExpressionAsyncES3System.js @@ -74,7 +74,7 @@ System.register([], function (exports_1, context_1) { var req; return __generator(this, function (_a) { switch (_a.label) { - case 0: return [4 /*yield*/, context_1.import('./test')]; // ONE + case 0: return [4 /*yield*/, context_1["import"]('./test')]; // ONE case 1: req = _a.sent() // ONE ; @@ -95,7 +95,7 @@ System.register([], function (exports_1, context_1) { var req; return __generator(this, function (_a) { switch (_a.label) { - case 0: return [4 /*yield*/, context_1.import('./test')]; // TWO + case 0: return [4 /*yield*/, context_1["import"]('./test')]; // TWO case 1: req = _a.sent() // TWO ; @@ -112,7 +112,7 @@ System.register([], function (exports_1, context_1) { var req; return __generator(this, function (_a) { switch (_a.label) { - case 0: return [4 /*yield*/, context_1.import('./test')]; // THREE + case 0: return [4 /*yield*/, context_1["import"]('./test')]; // THREE case 1: req = _a.sent() // THREE ; @@ -129,7 +129,7 @@ System.register([], function (exports_1, context_1) { var req; return __generator(this, function (_a) { switch (_a.label) { - case 0: return [4 /*yield*/, context_1.import('./test')]; // FOUR + case 0: return [4 /*yield*/, context_1["import"]('./test')]; // FOUR case 1: req = _a.sent() // FOUR ; @@ -146,7 +146,7 @@ System.register([], function (exports_1, context_1) { var req; return __generator(this, function (_a) { switch (_a.label) { - case 0: return [4 /*yield*/, context_1.import('./test')]; // FIVE + case 0: return [4 /*yield*/, context_1["import"]('./test')]; // FIVE case 1: req = _a.sent() // FIVE ; diff --git a/tests/baselines/reference/importCallExpressionAsyncES3UMD.js b/tests/baselines/reference/importCallExpressionAsyncES3UMD.js index 893a1ebb6d3..f6ebad67764 100644 --- a/tests/baselines/reference/importCallExpressionAsyncES3UMD.js +++ b/tests/baselines/reference/importCallExpressionAsyncES3UMD.js @@ -76,7 +76,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) { })(function (require, exports) { "use strict"; var __syncRequire = typeof module === "object" && typeof module.exports === "object"; - Object.defineProperty(exports, "__esModule", { value: true }); + exports.__esModule = true; exports.l = exports.cl2 = exports.obj = exports.cl1 = exports.fn = void 0; function fn() { return __awaiter(this, void 0, void 0, function () { diff --git a/tests/baselines/reference/isLiteral2.errors.txt b/tests/baselines/reference/isLiteral2.errors.txt deleted file mode 100644 index dbf9a60bffd..00000000000 --- a/tests/baselines/reference/isLiteral2.errors.txt +++ /dev/null @@ -1,7 +0,0 @@ -tests/cases/compiler/isLiteral2.ts(1,17): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o2343'. - - -==== tests/cases/compiler/isLiteral2.ts (1 errors) ==== - var x: number = 02343 - ~~~~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o2343'. \ No newline at end of file diff --git a/tests/baselines/reference/objectLiteralErrorsES3.errors.txt b/tests/baselines/reference/objectLiteralErrorsES3.errors.txt new file mode 100644 index 00000000000..99b4f5c4ae0 --- /dev/null +++ b/tests/baselines/reference/objectLiteralErrorsES3.errors.txt @@ -0,0 +1,20 @@ +tests/cases/conformance/expressions/objectLiterals/objectLiteralErrorsES3.ts(1,16): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. +tests/cases/conformance/expressions/objectLiterals/objectLiteralErrorsES3.ts(2,16): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. +tests/cases/conformance/expressions/objectLiterals/objectLiteralErrorsES3.ts(3,16): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. +tests/cases/conformance/expressions/objectLiterals/objectLiteralErrorsES3.ts(3,40): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. + + +==== tests/cases/conformance/expressions/objectLiterals/objectLiteralErrorsES3.ts (4 errors) ==== + var e1 = { get a() { return 4; } }; + ~ +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. + var e2 = { set a(n) { } }; + ~ +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. + var e3 = { get a() { return ''; }, set a(n) { } }; + ~ +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. + ~ +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. + + \ No newline at end of file diff --git a/tests/baselines/reference/objectTypeWithStringNamedNumericProperty.errors.txt b/tests/baselines/reference/objectTypeWithStringNamedNumericProperty.errors.txt deleted file mode 100644 index d357fc6e1cb..00000000000 --- a/tests/baselines/reference/objectTypeWithStringNamedNumericProperty.errors.txt +++ /dev/null @@ -1,153 +0,0 @@ -tests/cases/conformance/types/members/objectTypeWithStringNamedNumericProperty.ts(33,13): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o1'. -tests/cases/conformance/types/members/objectTypeWithStringNamedNumericProperty.ts(34,13): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '-0o1'. -tests/cases/conformance/types/members/objectTypeWithStringNamedNumericProperty.ts(64,13): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o1'. -tests/cases/conformance/types/members/objectTypeWithStringNamedNumericProperty.ts(65,13): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '-0o1'. -tests/cases/conformance/types/members/objectTypeWithStringNamedNumericProperty.ts(94,13): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o1'. -tests/cases/conformance/types/members/objectTypeWithStringNamedNumericProperty.ts(95,13): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '-0o1'. -tests/cases/conformance/types/members/objectTypeWithStringNamedNumericProperty.ts(124,13): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o1'. -tests/cases/conformance/types/members/objectTypeWithStringNamedNumericProperty.ts(125,13): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '-0o1'. - - -==== tests/cases/conformance/types/members/objectTypeWithStringNamedNumericProperty.ts (8 errors) ==== - // string named numeric properties are legal and distinct when indexed by string values - // indexed numerically the value is converted to a number - // no errors expected below - - class C { - "0.1": void; - ".1": Object; - "1": number; - "1.": string; - "1..": boolean; - "1.0": Date; - "-1.0": RegExp; - "-1": Date; - } - - var c: C; - var r1 = c['0.1']; - var r2 = c['.1']; - var r3 = c['1']; - var r3 = c[1]; - var r4 = c['1.']; - var r3 = c[1.]; // same as indexing by 1 when done numerically - var r5 = c['1..']; - var r6 = c['1.0']; - var r3 = c[1.0]; // same as indexing by 1 when done numerically - // BUG 823822 - var r7 = i[-1]; - var r7 = i[-1.0]; - var r8 = i["-1.0"]; - var r9 = i["-1"]; - var r10 = i[0x1] - var r11 = i[-0x1] - var r12 = i[01] - ~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o1'. - var r13 = i[-01] - ~~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '-0o1'. - - interface I { - "0.1": void; - ".1": Object; - "1": number; - "1.": string; - "1..": boolean; - "1.0": Date; - "-1.0": RegExp; - "-1": Date; - } - - var i: I; - var r1 = i['0.1']; - var r2 = i['.1']; - var r3 = i['1']; - var r3 = c[1]; - var r4 = i['1.']; - var r3 = c[1.]; // same as indexing by 1 when done numerically - var r5 = i['1..']; - var r6 = i['1.0']; - var r3 = c[1.0]; // same as indexing by 1 when done numerically - // BUG 823822 - var r7 = i[-1]; - var r7 = i[-1.0]; - var r8 = i["-1.0"]; - var r9 = i["-1"]; - var r10 = i[0x1] - var r11 = i[-0x1] - var r12 = i[01] - ~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o1'. - var r13 = i[-01] - ~~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '-0o1'. - - var a: { - "0.1": void; - ".1": Object; - "1": number; - "1.": string; - "1..": boolean; - "1.0": Date; - "-1.0": RegExp; - "-1": Date; - } - - var r1 = a['0.1']; - var r2 = a['.1']; - var r3 = a['1']; - var r3 = c[1]; - var r4 = a['1.']; - var r3 = c[1.]; // same as indexing by 1 when done numerically - var r5 = a['1..']; - var r6 = a['1.0']; - var r3 = c[1.0]; // same as indexing by 1 when done numerically - // BUG 823822 - var r7 = i[-1]; - var r7 = i[-1.0]; - var r8 = i["-1.0"]; - var r9 = i["-1"]; - var r10 = i[0x1] - var r11 = i[-0x1] - var r12 = i[01] - ~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o1'. - var r13 = i[-01] - ~~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '-0o1'. - - var b = { - "0.1": null, - ".1": new Object(), - "1": 1, - "1.": "", - "1..": true, - "1.0": new Date(), - "-1.0": /123/, - "-1": Date - }; - - var r1 = b['0.1']; - var r2 = b['.1']; - var r3 = b['1']; - var r3 = c[1]; - var r4 = b['1.']; - var r3 = c[1.]; // same as indexing by 1 when done numerically - var r5 = b['1..']; - var r6 = b['1.0']; - var r3 = c[1.0]; // same as indexing by 1 when done numerically - // BUG 823822 - var r7 = i[-1]; - var r7 = i[-1.0]; - var r8 = i["-1.0"]; - var r9 = i["-1"]; - var r10 = i[0x1] - var r11 = i[-0x1] - var r12 = i[01] - ~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o1'. - var r13 = i[-01] - ~~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '-0o1'. - \ No newline at end of file diff --git a/tests/baselines/reference/privateNameES5Ban(target=es3).errors.txt b/tests/baselines/reference/privateNameES5Ban(target=es3).errors.txt index 76ab55e14f7..7d7cc6e006d 100644 --- a/tests/baselines/reference/privateNameES5Ban(target=es3).errors.txt +++ b/tests/baselines/reference/privateNameES5Ban(target=es3).errors.txt @@ -2,10 +2,10 @@ tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts(3,5): tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts(4,5): error TS18028: Private identifiers are only available when targeting ECMAScript 2015 and higher. tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts(5,12): error TS18028: Private identifiers are only available when targeting ECMAScript 2015 and higher. tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts(6,12): error TS18028: Private identifiers are only available when targeting ECMAScript 2015 and higher. -tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts(7,9): error TS18028: Private identifiers are only available when targeting ECMAScript 2015 and higher. -tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts(8,9): error TS18028: Private identifiers are only available when targeting ECMAScript 2015 and higher. -tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts(9,16): error TS18028: Private identifiers are only available when targeting ECMAScript 2015 and higher. -tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts(10,16): error TS18028: Private identifiers are only available when targeting ECMAScript 2015 and higher. +tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts(7,9): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. +tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts(8,9): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. +tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts(9,16): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. +tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts(10,16): error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. ==== tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts (8 errors) ==== @@ -25,16 +25,16 @@ tests/cases/conformance/classes/members/privateNames/privateNameES5Ban.ts(10,16) !!! error TS18028: Private identifiers are only available when targeting ECMAScript 2015 and higher. get #acc() { return ""; } ~~~~ -!!! error TS18028: Private identifiers are only available when targeting ECMAScript 2015 and higher. +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. set #acc(x: string) {} ~~~~ -!!! error TS18028: Private identifiers are only available when targeting ECMAScript 2015 and higher. +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. static get #sAcc() { return 0; } ~~~~~ -!!! error TS18028: Private identifiers are only available when targeting ECMAScript 2015 and higher. +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. static set #sAcc(x: number) {} ~~~~~ -!!! error TS18028: Private identifiers are only available when targeting ECMAScript 2015 and higher. +!!! error TS1056: Accessors are only available when targeting ECMAScript 5 and higher. } \ No newline at end of file diff --git a/tests/baselines/reference/propertyAccessNumericLiterals.errors.txt b/tests/baselines/reference/propertyAccessNumericLiterals.errors.txt deleted file mode 100644 index d5bffbb1d27..00000000000 --- a/tests/baselines/reference/propertyAccessNumericLiterals.errors.txt +++ /dev/null @@ -1,12 +0,0 @@ -tests/cases/conformance/expressions/propertyAccess/propertyAccessNumericLiterals.ts(6,1): error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o0'. - - -==== tests/cases/conformance/expressions/propertyAccess/propertyAccessNumericLiterals.ts (1 errors) ==== - 0xffffffff.toString(); - 0o01234.toString(); - 0b01101101.toString(); - 1234..toString(); - 1e0.toString(); - 000.toString(); - ~~~ -!!! error TS1085: Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '0o0'. \ No newline at end of file diff --git a/tests/baselines/reference/trailingCommasES3.js b/tests/baselines/reference/trailingCommasES3.js index bfc983d04ef..dba0ec31ad7 100644 --- a/tests/baselines/reference/trailingCommasES3.js +++ b/tests/baselines/reference/trailingCommasES3.js @@ -13,8 +13,8 @@ var a6 = [, , ]; //// [trailingCommasES3.js] var o1 = { a: 1, b: 2 }; -var o2 = { a: 1, b: 2, }; -var o3 = { a: 1, }; +var o2 = { a: 1, b: 2 }; +var o3 = { a: 1 }; var o4 = {}; var a1 = [1, 2]; var a2 = [1, 2,]; diff --git a/tests/baselines/reference/transpile/Elides import equals referenced only by export type.js b/tests/baselines/reference/transpile/Elides import equals referenced only by export type.js index 61215bc876f..e9493d9d591 100644 --- a/tests/baselines/reference/transpile/Elides import equals referenced only by export type.js +++ b/tests/baselines/reference/transpile/Elides import equals referenced only by export type.js @@ -1,3 +1,3 @@ "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; //# sourceMappingURL=file.js.map \ No newline at end of file diff --git a/tests/baselines/reference/transpile/Elides import equals referenced only by export type.oldTranspile.js b/tests/baselines/reference/transpile/Elides import equals referenced only by export type.oldTranspile.js index 61215bc876f..e9493d9d591 100644 --- a/tests/baselines/reference/transpile/Elides import equals referenced only by export type.oldTranspile.js +++ b/tests/baselines/reference/transpile/Elides import equals referenced only by export type.oldTranspile.js @@ -1,3 +1,3 @@ "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; //# sourceMappingURL=file.js.map \ No newline at end of file diff --git a/tests/baselines/reference/transpile/Elides import equals referenced only by type only export specifier.js b/tests/baselines/reference/transpile/Elides import equals referenced only by type only export specifier.js index 61215bc876f..e9493d9d591 100644 --- a/tests/baselines/reference/transpile/Elides import equals referenced only by type only export specifier.js +++ b/tests/baselines/reference/transpile/Elides import equals referenced only by type only export specifier.js @@ -1,3 +1,3 @@ "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; //# sourceMappingURL=file.js.map \ No newline at end of file diff --git a/tests/baselines/reference/transpile/Elides import equals referenced only by type only export specifier.oldTranspile.js b/tests/baselines/reference/transpile/Elides import equals referenced only by type only export specifier.oldTranspile.js index 61215bc876f..e9493d9d591 100644 --- a/tests/baselines/reference/transpile/Elides import equals referenced only by type only export specifier.oldTranspile.js +++ b/tests/baselines/reference/transpile/Elides import equals referenced only by type only export specifier.oldTranspile.js @@ -1,3 +1,3 @@ "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; //# sourceMappingURL=file.js.map \ No newline at end of file diff --git a/tests/baselines/reference/transpile/Export star as ns conflict does not crash.js b/tests/baselines/reference/transpile/Export star as ns conflict does not crash.js index cb7ba433738..e0f6c0cc4dd 100644 --- a/tests/baselines/reference/transpile/Export star as ns conflict does not crash.js +++ b/tests/baselines/reference/transpile/Export star as ns conflict does not crash.js @@ -1,5 +1,5 @@ "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; exports.alias = void 0; var a; exports.alias = a; diff --git a/tests/baselines/reference/transpile/Export star as ns conflict does not crash.oldTranspile.js b/tests/baselines/reference/transpile/Export star as ns conflict does not crash.oldTranspile.js index cb7ba433738..e0f6c0cc4dd 100644 --- a/tests/baselines/reference/transpile/Export star as ns conflict does not crash.oldTranspile.js +++ b/tests/baselines/reference/transpile/Export star as ns conflict does not crash.oldTranspile.js @@ -1,5 +1,5 @@ "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; exports.alias = void 0; var a; exports.alias = a; diff --git a/tests/baselines/reference/transpile/Generates no diagnostics for missing module imports.js b/tests/baselines/reference/transpile/Generates no diagnostics for missing module imports.js index 61215bc876f..e9493d9d591 100644 --- a/tests/baselines/reference/transpile/Generates no diagnostics for missing module imports.js +++ b/tests/baselines/reference/transpile/Generates no diagnostics for missing module imports.js @@ -1,3 +1,3 @@ "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; //# sourceMappingURL=file.js.map \ No newline at end of file diff --git a/tests/baselines/reference/transpile/Generates no diagnostics for missing module imports.oldTranspile.js b/tests/baselines/reference/transpile/Generates no diagnostics for missing module imports.oldTranspile.js index 61215bc876f..e9493d9d591 100644 --- a/tests/baselines/reference/transpile/Generates no diagnostics for missing module imports.oldTranspile.js +++ b/tests/baselines/reference/transpile/Generates no diagnostics for missing module imports.oldTranspile.js @@ -1,3 +1,3 @@ "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; //# sourceMappingURL=file.js.map \ No newline at end of file diff --git a/tests/baselines/reference/transpile/Rename dependencies - AMD.js b/tests/baselines/reference/transpile/Rename dependencies - AMD.js index 5874219d5bd..c5ffb86a1aa 100644 --- a/tests/baselines/reference/transpile/Rename dependencies - AMD.js +++ b/tests/baselines/reference/transpile/Rename dependencies - AMD.js @@ -1,6 +1,6 @@ define(["require", "exports", "SomeOtherName"], function (require, exports, SomeName_1) { "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); + exports.__esModule = true; use(SomeName_1.foo); }); //# sourceMappingURL=file.js.map \ No newline at end of file diff --git a/tests/baselines/reference/transpile/Rename dependencies - UMD.js b/tests/baselines/reference/transpile/Rename dependencies - UMD.js index d8b8cf43986..0ecfbce2397 100644 --- a/tests/baselines/reference/transpile/Rename dependencies - UMD.js +++ b/tests/baselines/reference/transpile/Rename dependencies - UMD.js @@ -8,7 +8,7 @@ } })(function (require, exports) { "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); + exports.__esModule = true; var SomeName_1 = require("SomeOtherName"); use(SomeName_1.foo); }); diff --git a/tests/baselines/reference/tsbuild/sample1/rebuilds-when-extended-config-file-changes.js b/tests/baselines/reference/tsbuild/sample1/rebuilds-when-extended-config-file-changes.js index ada2153245c..4f1b4ec02d3 100644 --- a/tests/baselines/reference/tsbuild/sample1/rebuilds-when-extended-config-file-changes.js +++ b/tests/baselines/reference/tsbuild/sample1/rebuilds-when-extended-config-file-changes.js @@ -342,7 +342,7 @@ export declare const m: typeof mod; //// [/src/tests/index.js] "use strict"; -Object.defineProperty(exports, "__esModule", { value: true }); +exports.__esModule = true; exports.m = void 0; var c = require("../core/index"); var logic = require("../logic/index"); @@ -470,7 +470,18 @@ Output:: exitCode:: ExitStatus.Success -//// [/src/tests/index.js] file written with same contents +//// [/src/tests/index.js] +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.m = void 0; +var c = require("../core/index"); +var logic = require("../logic/index"); +c.leftPad("", 10); +logic.getSecondsInDay(); +var mod = require("../core/anotherModule"); +exports.m = mod; + + //// [/src/tests/tsconfig.tsbuildinfo] {"program":{"fileNames":["../../lib/lib.d.ts","../core/index.d.ts","../core/anothermodule.d.ts","../logic/index.d.ts","./index.ts"],"fileInfos":[{"version":"3858781397-/// \ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array { length: number; [n: number]: T; }\ninterface ReadonlyArray {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true},"1874987148-export declare const someString: string;\r\nexport declare function leftPad(s: string, n: number): string;\r\nexport declare function multiply(a: number, b: number): number;\r\n","-8396256275-export declare const World = \"hello\";\r\n","-6548680073-export declare function getSecondsInDay(): number;\r\nimport * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n",{"version":"12336236525-import * as c from '../core/index';\r\nimport * as logic from '../logic/index';\r\n\r\nc.leftPad(\"\", 10);\r\nlogic.getSecondsInDay();\r\n\r\nimport * as mod from '../core/anotherModule';\r\nexport const m = mod;\r\n","signature":"-9209611-import * as mod from '../core/anotherModule';\r\nexport declare const m: typeof mod;\r\n"}],"options":{"composite":true,"declaration":true,"skipDefaultLibCheck":true},"fileIdsList":[[3],[2,3,4]],"referencedMap":[[4,1],[5,2]],"exportedModulesMap":[[4,1],[5,1]],"semanticDiagnosticsPerFile":[1,3,2,4,5],"latestChangedDtsFile":"./index.d.ts"},"version":"FakeTSVersion"} diff --git a/tests/baselines/reference/tsc/runWithoutArgs/does-not-add-color-when-NO_COLOR-is-set.js b/tests/baselines/reference/tsc/runWithoutArgs/does-not-add-color-when-NO_COLOR-is-set.js index c4b8eb6881b..61f0520bcb3 100644 --- a/tests/baselines/reference/tsc/runWithoutArgs/does-not-add-color-when-NO_COLOR-is-set.js +++ b/tests/baselines/reference/tsc/runWithoutArgs/does-not-add-color-when-NO_COLOR-is-set.js @@ -101,7 +101,7 @@ default: false --target, -t Set the JavaScript language version for emitted JavaScript and include compatible library declarations. one of: es3, es5, es6/es2015, es2016, es2017, es2018, es2019, es2020, es2021, es2022, esnext -default: es3 +default: es5 --module, -m Specify what module code is generated. diff --git a/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped-when-host-can't-provide-terminal-width.js b/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped-when-host-can't-provide-terminal-width.js index a11632569ef..8d6bac948d2 100644 --- a/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped-when-host-can't-provide-terminal-width.js +++ b/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped-when-host-can't-provide-terminal-width.js @@ -101,7 +101,7 @@ default: false --target, -t Set the JavaScript language version for emitted JavaScript and include compatible library declarations. one of: es3, es5, es6/es2015, es2016, es2017, es2018, es2019, es2020, es2021, es2022, esnext -default: es3 +default: es5 --module, -m Specify what module code is generated. diff --git a/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped.js b/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped.js index a11632569ef..8d6bac948d2 100644 --- a/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped.js +++ b/tests/baselines/reference/tsc/runWithoutArgs/show-help-with-ExitStatus.DiagnosticsPresent_OutputsSkipped.js @@ -101,7 +101,7 @@ default: false --target, -t Set the JavaScript language version for emitted JavaScript and include compatible library declarations. one of: es3, es5, es6/es2015, es2016, es2017, es2018, es2019, es2020, es2021, es2022, esnext -default: es3 +default: es5 --module, -m Specify what module code is generated.